/* ============================================================
   Isengard — Typography tokens
   Archivo (grotesque) for display + UI. IBM Plex Mono for
   technical labels, codes, data readouts and eyebrows.
   ============================================================ */

:root {
  /* ---- Families ---- */
  --font-display: 'Archivo Expanded', 'Archivo', system-ui, sans-serif;
  --font-sans:    'Archivo', system-ui, -apple-system, sans-serif;
  --font-mono:    'IBM Plex Mono', ui-monospace, 'SFMono-Regular', monospace;

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

  /* ---- Type scale (fluid-ready px) ---- */
  --t-display-xl: 76px;
  --t-display-l:  56px;
  --t-display-m:  40px;
  --t-heading-l:  30px;
  --t-heading-m:  24px;
  --t-heading-s:  19px;
  --t-body-l:     17px;
  --t-body-m:     15px;
  --t-body-s:     13.5px;
  --t-caption:    12px;
  --t-micro:      11px;

  /* ---- Line heights ---- */
  --lh-tight:   1.04; /* @kind other */
  --lh-snug:    1.18; /* @kind other */
  --lh-normal:  1.45; /* @kind other */
  --lh-relaxed: 1.6;  /* @kind other */

  /* ---- Tracking ---- */
  --tr-display: -0.02em; /* @kind other */
  --tr-heading: -0.01em; /* @kind other */
  --tr-body:    0;        /* @kind other */
  --tr-eyebrow: 0.16em;   /* @kind other */
  --tr-mono:    0.02em;   /* @kind other */

  /* ---- Composed roles ---- */
  --eyebrow: var(--w-medium) var(--t-micro)/1 var(--font-mono);
}
