/* ── Type ────────────────────────────────────────────────────────────────────
   Three variable families, axes used deliberately. Display is set tight and
   slightly condensed — wdth 90 for the largest headings and the wordmark, 92
   for section headings, 94 for subheads and panel titles. Body sits at wdth 100
   always. Mono carries every label, figure, code, date and document reference.

   EVERY LABEL IS THE SAME OBJECT: mono, uppercase, muted. Eyebrows widen to
   0.14em; inline numerals and statuses sit at 0.06-0.09em. */
:root {
  --font-display:"Bricolage Grotesque","Helvetica Neue",system-ui,sans-serif;
  --font-sans:"Instrument Sans",system-ui,-apple-system,sans-serif;
  --font-mono:"JetBrains Mono",ui-monospace,"SF Mono",monospace;

  /* variable axis presets */
  --wdth-statement:90; /* @kind font */
  --wdth-section:92;   /* @kind font */
  --wdth-subhead:94;   /* @kind font */
  --wdth-normal:100;   /* @kind font */
  --wdth-rise-from:82; /* @kind font */
  --opsz-display:96;   /* @kind font */
  --opsz-text:14;      /* @kind font */

  /* fluid scale, as used on the site */
  --text-hero:clamp(2.6rem,6.2vw,5.4rem);
  --text-statement:clamp(2.2rem,4.4vw,3.7rem);
  --text-section:clamp(1.8rem,3.2vw,2.8rem);
  --text-sub:clamp(1.3rem,2.2vw,1.85rem);
  --text-lead:clamp(1.05rem,1.6vw,1.35rem);
  --text-claim:clamp(1.6rem,3.1vw,2.6rem);
  --text-h3:1.3125rem;
  --text-h4:1.125rem;
  --text-body-lg:1.0625rem;
  --text-body:1rem;
  --text-body-md:1.03125rem;
  --text-body-sm:0.9375rem;
  --text-body-xs:0.90625rem;
  --text-panel:0.78125rem;
  --text-caption:0.8125rem;
  --text-micro:0.6875rem;
  --text-diagram:0.65625rem;
  --text-nano:0.59375rem;

  --leading-hero:0.94;    /* @kind font */
  --leading-display:1;    /* @kind font */
  --leading-section:1.06; /* @kind font */
  --leading-heading:1.12; /* @kind font */
  --leading-body:1.6;     /* @kind font */
  --leading-panel:1.55;   /* @kind font */

  --track-hero:-0.045em;    /* @kind font */
  --track-statement:-0.034em; /* @kind font */
  --track-section:-0.028em; /* @kind font */
  --track-sub:-0.024em;     /* @kind font */
  --track-heading:-0.015em; /* @kind font */
  --track-lockup:-0.02em;   /* @kind font */
  --track-body:0em;         /* @kind font */
  --track-eyebrow:0.14em;   /* @kind font */
  --track-label:0.09em;     /* @kind font */
  --track-inline:0.06em;    /* @kind font */
  --track-diagram:1.2px;    /* @kind font */

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

  /* composed roles */
  --type-hero:var(--weight-black) var(--text-hero)/var(--leading-hero) var(--font-display);
  --type-statement:var(--weight-bold) var(--text-statement)/var(--leading-display) var(--font-display);
  --type-section:var(--weight-bold) var(--text-section)/var(--leading-section) var(--font-display);
  --type-sub:var(--weight-semibold) var(--text-h4)/var(--leading-heading) var(--font-display);
  --type-body:var(--weight-regular) var(--text-body)/var(--leading-body) var(--font-sans);
  --type-eyebrow:var(--weight-medium) var(--text-micro)/1.2 var(--font-mono);
  --type-label:var(--weight-medium) var(--text-nano)/1.2 var(--font-mono);
}
