/* ===========================================================================
   ACF — TYPOGRAPHY TOKENS
   Three voices:
   • Display  — Cinzel. Inscriptional caps, wide tracking, carved in stone.
   • Body     — EB Garamond. Old-style serif for prose and UI reading.
   • Mono     — JetBrains Mono. The framework's machine voice: stats, code, HUD.
   Display is ALWAYS uppercase with positive letterspacing. Body never tracks.
   =========================================================================== */
:root {
  /* ---- Families ---- */
  --font-display: 'Cinzel', 'Trajan Pro', 'Times New Roman', serif;
  --font-body: 'EB Garamond', Georgia, 'Times New Roman', serif;
  --font-mono: 'JetBrains Mono', 'SF Mono', ui-monospace, monospace;

  /* ---- Weights ---- */
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-black: 900;   /* display only — the monumental cut */

  /* ---- Type scale (rem, 16px base). Display steps are deliberately large. ---- */
  --size-2xs: 0.6875rem;  /* 11px — micro labels, eyebrow tags             */
  --size-xs:  0.75rem;    /* 12px — captions, mono readouts                */
  --size-sm:  0.875rem;   /* 14px — secondary UI text                      */
  --size-base:1rem;       /* 16px — body default                           */
  --size-md:  1.125rem;   /* 18px — lead body                              */
  --size-lg:  1.375rem;   /* 22px — small headings                         */
  --size-xl:  1.75rem;    /* 28px — section headings                       */
  --size-2xl: 2.25rem;    /* 36px — page headings                          */
  --size-3xl: 3rem;       /* 48px — display                                */
  --size-4xl: 4rem;       /* 64px — hero display                           */
  --size-5xl: 5.5rem;     /* 88px — monumental                             */

  /* ---- Line heights ---- */
  --leading-tight: 1.05;   /* display caps                                  */
  --leading-snug: 1.25;    /* headings                                      */
  --leading-normal: 1.6;   /* body prose                                    */
  --leading-relaxed: 1.75; /* long-form                                     */

  /* ---- Letter spacing — display tracks WIDE, body does not ---- */
  --tracking-monument: 0.18em;  /* hero caps, eyebrows                       */
  --tracking-display: 0.10em;   /* headings                                 */
  --tracking-wide: 0.06em;      /* buttons, small caps labels               */
  --tracking-mono: 0.02em;      /* mono readouts                            */
  --tracking-body: 0;           /* prose                                    */

  /* ---- Semantic aliases ---- */
  --text-eyebrow-size: var(--size-2xs);
  --text-body-size: var(--size-base);
  --text-body-leading: var(--leading-normal);
}
