/* ============================================================
   AAREON · TYPOGRAPHY TOKENS
   Display: Georgia / Gelasio (serif, editorial).
   Body/UI: Source Sans 3 (humanist sans, Segoe UI substitute).
   ============================================================ */

:root {
  /* ---- Families ---- */
  --font-display: Georgia, "Gelasio", "Times New Roman", serif;
  --font-sans:    "Source Sans 3", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-body:    var(--font-sans);

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

  /* ---- Type scale (1.25 major-third-ish, tuned) ---- */ /* @kind font */
  --fs-display:   clamp(2.75rem, 1.6rem + 4.2vw, 4.5rem); /* hero serif */
  --fs-h1:        2.5rem;   /* 40 */
  --fs-h2:        2rem;     /* 32 */
  --fs-h3:        1.5rem;   /* 24 */
  --fs-h4:        1.25rem;  /* 20 */
  --fs-lead:      1.25rem;  /* 20 — intro paragraph */
  --fs-body:      1rem;     /* 16 */
  --fs-sm:        0.875rem; /* 14 */
  --fs-xs:        0.75rem;  /* 12 — labels, eyebrows */

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

  /* ---- Letter spacing ---- */ /* @kind font */
  --ls-tight:   -0.02em;
  --ls-normal:  0;
  --ls-eyebrow: 0.12em; /* uppercase eyebrows / overlines */

  /* ---- Semantic roles ---- */ /* @kind font */
  --text-display:  var(--fw-regular) var(--fs-display)/var(--lh-tight) var(--font-display);
  --text-h1:       var(--fw-semibold) var(--fs-h1)/var(--lh-snug) var(--font-display);
  --text-h2:       var(--fw-semibold) var(--fs-h2)/var(--lh-snug) var(--font-display);
  --text-h3:       var(--fw-semibold) var(--fs-h3)/var(--lh-snug) var(--font-sans);
  --text-lead:     var(--fw-regular) var(--fs-lead)/var(--lh-relaxed) var(--font-sans);
  --text-base:     var(--fw-regular) var(--fs-body)/var(--lh-relaxed) var(--font-sans);
  --text-label:    var(--fw-semibold) var(--fs-xs)/var(--lh-normal) var(--font-sans);
}
