/* ============================================================
   TYPOGRAPHY — font families, type scale, signature treatments
   ============================================================ */
:root {
  /* ---- Families ---- */
  --font-display: "Cinzel", "Trajan Pro", Georgia, serif;       /* brand only */
  --font-serif: "Instrument Serif", Georgia, "Times New Roman", serif;  /* display only, at or above --serif-floor */
  --font-italic: "Cormorant Garamond", Georgia, serif;                  /* the italic phrase inside a headline */
  --font-sans: "IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace; /* eyebrows + data */

  /* ---- Editorial serif scale ----
     Instrument Serif ships ONE weight, which is correct for a display face and
     wrong for mid-hierarchy. So the serif is scoped by SIZE, not by weight:
     at or above --serif-floor the serif leads; below it, IBM Plex Sans takes
     over at a real 600. Never request 500/600/700 from --font-serif — the
     browser will synthesise it and the letterforms distort.
     Every step below clears the floor. ---- */
  --serif-floor: 28px;  /* @kind other */
  --display-hero: clamp(64px, 9vw, 120px);  /* @kind font */
  --display-1: clamp(44px, 5.4vw, 76px); /* @kind font */
  --display-2: clamp(34px, 3.6vw, 52px); /* @kind font */
  --display-3: clamp(26px, 2.4vw, 34px); /* @kind font */

  /* ---- UI / sans scale (IBM Plex Sans) ---- */
  --text-2xl: 24px;
  --text-xl: 20px;
  --text-lg: 17px;   /* lead paragraph */
  --text-base: 15px; /* body */
  --text-sm: 13px;   /* UI labels, controls */
  --text-xs: 12px;
  --text-2xs: 10px;  /* eyebrow / mono caps */

  /* ---- Weights ---- */
  --weight-regular: 400; /* @kind other */
  --weight-medium: 500; /* @kind other */
  --weight-semibold: 600; /* @kind other */
  --weight-bold: 700; /* @kind other */

  /* ---- Line heights ---- */
  --leading-tight: 1.05;   /* @kind other */
  --leading-snug: 1.25; /* @kind other */
  --leading-normal: 1.55;  /* @kind other */
  --leading-relaxed: 1.7; /* @kind other */

  /* ---- Signature eyebrow / kicker tracking ----
     0.32em was tuned for mono. The eyebrow now speaks sans (see .cos-eyebrow
     in base.css), which needs less air to read as a kicker. ---- */
  --tracking-eyebrow: 0.18em; /* @kind other */
  --tracking-label: 0.16em;   /* @kind other */
  --tracking-wide: 0.04em; /* @kind other */
}
