/* Stria MEDia type scale — Manrope for everything, Space Mono for data.
   Hierarchy comes from size + weight: display runs 200 against an 800 emphasis line,
   headings are semibold, body is regular, labels are caps mono. */
:root {
  /* ---- sizes ---- */
  --text-wordmark: 3.5rem;   /* 56 — lockup reference size */
  --text-display: 4.25rem;   /* 68 */
  --text-h1: 3rem;           /* 48 */
  --text-h2: 2.25rem;        /* 36 */
  --text-h3: 1.625rem;       /* 26 */
  --text-h4: 1.25rem;        /* 20 */
  --text-body-lg: 1.125rem;  /* 18 */
  --text-body: 1rem;         /* 16 */
  --text-body-sm: 0.875rem;  /* 14 */
  --text-caption: 0.8125rem; /* 13 */
  --text-index: 0.75rem;     /* 12 — mono index labels */
  --text-subline: 0.6875rem; /* 11 — mono subline */

  /* ---- line heights ---- */
  --leading-display: 1.02;
  --leading-heading: 1.1;
  --leading-snug: 1.28;
  --leading-body: 1.6;
  --leading-tight: 1.35;

  /* ---- weights. Manrope carries the full 200–800 range. ---- */
  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;

  /* ---- tracking ---- */
  --tracking-wordmark: -0.02em;
  --tracking-display: -0.03em;
  --tracking-heading: -0.02em;
  --tracking-body: 0em;
  --tracking-index: 0.12em;
  --tracking-subline: 0.24em;

  /* ---- composite roles ---- */
  --type-wordmark: var(--weight-semibold) var(--text-wordmark) / 1 var(--font-display);
  --type-subline: var(--weight-regular) var(--text-subline) / 1 var(--font-subline);
  --type-display: var(--weight-semibold) var(--text-display) / var(--leading-display) var(--font-display);
  --type-h1: var(--weight-semibold) var(--text-h1) / var(--leading-heading) var(--font-display);
  --type-h2: var(--weight-semibold) var(--text-h2) / var(--leading-heading) var(--font-display);
  --type-h3: var(--weight-medium) var(--text-h3) / var(--leading-snug) var(--font-display);
  --type-h4: var(--weight-semibold) var(--text-h4) / var(--leading-snug) var(--font-sans);
  --type-body-lg: var(--weight-regular) var(--text-body-lg) / var(--leading-body) var(--font-sans);
  --type-body: var(--weight-regular) var(--text-body) / var(--leading-body) var(--font-sans);
  --type-body-sm: var(--weight-regular) var(--text-body-sm) / var(--leading-tight) var(--font-sans);
  --type-caption: var(--weight-regular) var(--text-caption) / var(--leading-tight) var(--font-sans);
  --type-index: var(--weight-regular) var(--text-index) / 1.2 var(--font-mono);
  --type-label: var(--weight-medium) var(--text-body-sm) / 1.3 var(--font-sans);
  --type-eyebrow: var(--weight-regular) var(--text-subline) / 1.2 var(--font-mono);
}
