/* minimal atlas — typography. Guideline 04.2.
   Hanken Grotesk = index language (navigation, page state, WORK LIST).
   Space Grotesk  = brand, content, SYSTEM and PROJECT. */
:root{
  --font-content:"Space Grotesk","Helvetica Neue",Arial,sans-serif;
  --font-index:"Hanken Grotesk","Helvetica Neue",Arial,sans-serif;

  --weight-light:300;
  --weight-regular:400;
  --weight-medium:500;
  --weight-semibold:600;
  --weight-bold:700;

  /* Desktop scale (1440 px reference) */
  --size-brand:60px;
  --size-nav:60px;
  --size-nav-secondary:48px;
  --size-title:48px;
  --size-title-sub:24px;
  --size-body:21px;
  --size-meta:18px;

  --leading-brand:60px;
  --leading-nav:60px;
  --leading-nav-secondary:48px;
  --leading-title:57.6px;
  --leading-title-sub:36px;
  --leading-body:30px;
  --leading-meta:28px;

  --tracking-default:0;

  /* Role shorthands */
  --type-brand:var(--weight-medium) var(--size-brand)/var(--leading-brand) var(--font-content);
  --type-nav:var(--weight-bold) var(--size-nav)/var(--leading-nav) var(--font-index);
  --type-nav-secondary:var(--weight-regular) var(--size-nav-secondary)/var(--leading-nav-secondary) var(--font-index);
  --type-title:var(--weight-medium) var(--size-title)/var(--leading-title) var(--font-content);
  --type-title-sub:var(--weight-medium) var(--size-title-sub)/var(--leading-title-sub) var(--font-content);
  --type-body:var(--weight-regular) var(--size-body)/var(--leading-body) var(--font-content);
  --type-body-emphasis:var(--weight-medium) var(--size-body)/var(--leading-body) var(--font-content);
  --type-meta-label:var(--weight-semibold) var(--size-meta)/var(--leading-meta) var(--font-content);
  --type-meta-value:var(--weight-regular) var(--size-meta)/var(--leading-meta) var(--font-content);
  --type-meta-index:var(--weight-regular) var(--size-meta)/var(--leading-meta) var(--font-index);
  /* WORK menu (2026-09-10): two FIXED sizes — never the fluid --size-body (390 read 18/27 through it) —
     one leading ratio 4/3 (18 → 24, 21 → 28); no breakpoint step — the menu is index language and rides no scale (decided 2026-09-10). */
  --size-menu-type:21px;
  --size-menu-system:18px;
  --menu-leading-ratio:calc(4 / 3);
  --leading-menu-type:calc(var(--size-menu-type) * var(--menu-leading-ratio));
  --leading-menu-system:calc(var(--size-menu-system) * var(--menu-leading-ratio));
  --leading-menu:var(--leading-menu-system); /* retired alias — consumers still reading it get the system line */
  --type-menu-type:var(--weight-regular) var(--size-menu-type)/var(--leading-menu-type) var(--font-index); /* 21/28 */
  --type-menu-system:var(--weight-semibold) var(--size-menu-system)/var(--leading-menu-system) var(--font-content); /* 18/24 */
  --type-caption:var(--weight-regular) var(--size-meta)/var(--leading-body) var(--font-content);
}
