/* Base typography & shared text patterns (light theme) */
body {
  font-family: var(--font-body);
  font-size: var(--fz-body);
  font-weight: 500;
  line-height: var(--lh-body);
  color: var(--c-text);
  background: var(--c-bg);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: var(--lh-heading);
  color: var(--c-text);
}
h1 { font-size: var(--fz-h1); line-height: var(--lh-tight); letter-spacing: -0.02em; }
h2 { font-size: var(--fz-h2); line-height: var(--lh-tight); letter-spacing: -0.015em; }
h3 { font-size: var(--fz-h3); }
h4 { font-size: var(--fz-h4); }
h5 { font-size: var(--fz-h5); }

p { color: var(--c-text-2); }
strong { color: var(--c-text); font-weight: 700; }

a { color: var(--c-accent); text-decoration: none; transition: color var(--t-fast) var(--ease); }
a:hover { color: var(--c-link-hover); }

/* Original pattern: orange highlighted words inside black headings
   (wdt-heading-colored-elements) */
.hl { color: var(--c-primary); }

/* Section eyebrow: small orange subtitle above headings
   (wdt-heading-subtitle) */
.eyebrow {
  display: inline-block;
  font-family: var(--font-heading);
  font-size: var(--fz-sm);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--c-accent);
  margin-bottom: var(--sp-2);
}

/* Centered section heading block (wdt-heading wrapper) */
.section-head { max-width: 720px; margin: 0 auto var(--sp-6); text-align: center; }
.section-head p { margin-top: var(--sp-2); }

.skip-link {
  position: absolute; left: -9999px; top: 0;
  background: var(--c-dark); color: #fff;
  padding: 10px 16px; z-index: 100; border-radius: 0 0 var(--r-sm) 0;
}
.skip-link:focus { left: 0; color: #fff; }

::selection { background: var(--c-primary); color: #fff; }
