/* ============================================================
   THE SOURCE — TYPOGRAPHY
   Clean, modern, highly legible. Serious + accessible.
   - Display / Headers:  Montserrat (Black) — ALL CAPS, commanding
   - Working / Body:      Hanken Grotesk    — Area Normal substitute
   Headlines are set in ALL CAPS with tight tracking for an
   authoritative, editorial posture.
   ============================================================ */
:root {
  /* ---- Families ---- */
  --font-display: "Montserrat", "Arial Black", system-ui, sans-serif; /* H — Montserrat Black, all caps */
  --font-sans:    "Hanken Grotesk", system-ui, -apple-system, sans-serif; /* body + alt headings (Area Normal) */
  --font-mono:    ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace; /* data / figures */

  /* ---- Weights ---- */
  --fw-hairline: 200;   /* @kind font */
  --fw-light:    300; /* @kind font */
  --fw-regular:  400; /* @kind font */
  --fw-medium:   500;   /* @kind font */
  --fw-semibold: 600; /* @kind font */
  --fw-bold:     700;   /* @kind font */
  --fw-black:    900;   /* @kind font */

  /* ---- Type scale (rem, 16px base) ---- */
  --fs-display:  4.5rem;   /* 72 — hero statements */
  --fs-h1:       3rem;     /* 48 */
  --fs-h2:       2.25rem;  /* 36 */
  --fs-h3:       1.5rem;   /* 24 */
  --fs-h4:       1.25rem;  /* 20 */
  --fs-lg:       1.125rem; /* 18 */
  --fs-body:     1rem;     /* 16 */
  --fs-sm:       0.875rem; /* 14 */
  --fs-xs:       0.75rem;  /* 12 — labels, eyebrows */

  /* ---- Line heights ---- */
  --lh-tight:    1.04;   /* @kind font */
  --lh-snug:     1.2; /* @kind font */
  --lh-normal:   1.5;    /* @kind font */
  --lh-relaxed:  1.65; /* @kind font */

  /* ---- Tracking ---- */
  --ls-display:  -0.01em;   /* @kind font */
  --ls-caps:     0.12em;    /* @kind font */
  --ls-wide:     0.22em;    /* @kind font */
  --ls-body:     0; /* @kind font */

  /* ---- Semantic roles ---- */
  --text-eyebrow-size: var(--fs-xs);
  --text-eyebrow-track: var(--ls-wide);
  --text-body-size: var(--fs-body);
  --text-body-leading: var(--lh-normal);
}
