/* HolonomiX - Typography tokens
   ==================================================================
   Three voices:
     --font-display  Archivo Expanded - structural headlines, wide & bold
     --font-sans     Archivo          - UI & body
     --font-mono     IBM Plex Mono    - data, eyebrows, coordinates, code
   Numbers, labels and metadata default to MONO. That is the brand's
   "structure" voice: everything measured reads like an instrument.
*/

: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, 'SF Mono', Menlo, monospace;

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

  /* ---- Display scale (Archivo Expanded) ---- */
  --fs-display-1: 96px;  --lh-display-1: 0.96; /* @kind font */  --tk-display-1: -0.03em;  /* @kind font */
  --fs-display-2: 68px;  --lh-display-2: 0.98; /* @kind font */  --tk-display-2: -0.025em; /* @kind font */
  --fs-display-3: 48px;  --lh-display-3: 1.02; /* @kind font */  --tk-display-3: -0.02em;  /* @kind font */

  /* ---- Headings (Archivo) ---- */
  --fs-h1: 36px;  --lh-h1: 1.08; /* @kind font */  --tk-h1: -0.015em; /* @kind font */
  --fs-h2: 28px;  --lh-h2: 1.12; /* @kind font */  --tk-h2: -0.01em;  /* @kind font */
  --fs-h3: 22px;  --lh-h3: 1.18; /* @kind font */  --tk-h3: -0.01em;  /* @kind font */
  --fs-h4: 18px;  --lh-h4: 1.25; /* @kind font */  --tk-h4: 0;       /* @kind font */

  /* ---- Body (Archivo) ---- */
  --fs-body-lg: 18px;  --lh-body-lg: 1.55; /* @kind font */
  --fs-body:    15px;  --lh-body:    1.6;  /* @kind font */
  --fs-body-sm: 13px;  --lh-body-sm: 1.5;  /* @kind font */

  /* ---- Mono / labels (IBM Plex Mono) ---- */
  --fs-mono:     13px;  --lh-mono: 1.5;        /* @kind font */
  --fs-mono-sm:  12px;  --lh-mono-sm: 1.45;     /* @kind font */
  --fs-eyebrow:  11px;  --tk-eyebrow: 0.22em;   /* @kind font */
  --fs-caption:  11px;  --lh-caption: 1.4;      /* @kind font */

  /* ---- Semantic roles ---- */
  --type-display:  var(--fw-black)    var(--fs-display-2)/var(--lh-display-2) var(--font-display); /* @kind font */
  --type-h1:       var(--fw-bold)     var(--fs-h1)/var(--lh-h1) var(--font-sans); /* @kind font */
  --type-body:     var(--fw-regular)  var(--fs-body)/var(--lh-body) var(--font-sans); /* @kind font */
  --type-eyebrow:  var(--fw-medium)   var(--fs-eyebrow) var(--font-mono); /* @kind font */
}
