/* ============================================================================
   Homeboss Theme — TYPOGRAPHY (the type scale applied)
   ----------------------------------------------------------------------------
   Consumes tokens.css. This is the type layer only — no page layout, no
   components. THEME_BUILD_SPEC.md §2 is the source of truth for the scale.
   ============================================================================ */

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  margin: 0;
  font-family: var(--font-body);
  font-weight: var(--fw-body);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  color: var(--text-body);
  background-color: var(--surface-base);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

h1, h2, h3 {
  font-family: var(--font-heading);
  color: var(--text-heading);
  line-height: var(--lh-heading);
  margin: 0 0 0.5em;
}

h1 { font-size: var(--fs-h1); font-weight: var(--fw-heading); }
h2 { font-size: var(--fs-h2); font-weight: var(--fw-heading); }
h3 { font-size: var(--fs-h3); font-weight: var(--fw-h3); }

/* Uppercase eyebrow — Outfit 600, tracked. Small text, so it still clears the
   4.5:1 body threshold on every surface (see the recorded contrast table). */
.eyebrow {
  font-family: var(--font-heading);
  font-size: var(--fs-eyebrow);
  font-weight: var(--fw-eyebrow);
  line-height: var(--lh-heading);
  text-transform: uppercase;
  letter-spacing: var(--tracking-eyebrow);
  color: var(--action);
}

small,
.caption,
.compliance {
  font-size: var(--fs-small);
}

a {
  color: var(--action);
  text-decoration: underline;
}
a:hover,
a:focus {
  color: var(--action-hover);
}

/* Body measure cap ~70 characters — apply to long-form prose (area guides,
   blog, About). An unconstrained line on a desktop monitor undoes Inter. */
.prose,
.measure {
  max-width: var(--measure);
}
