/* HEFT v3 tokens. Owned by the foundation builder. Edit values here only. */
:root{
  /* grounds */
  --paper:#F3F0EB;          /* cream: default page ground */
  --paper-2:#E8E3DB;        /* alternate band, footer */
  --card:#FBFAF7;           /* label stock: panels, tables */
  /* ink */
  --ink:#1D1815;            /* Bitter Cocoa: all text on light grounds */
  --ink-deep:#110D0B;       /* deeper cocoa: rare, dark band edges */
  --muted:#675E57;          /* secondary text on light grounds only */
  --rule:rgba(29,24,21,.13);   /* decorative hairlines only, never a UI boundary */
  --rule-strong:#8D847D;       /* 3.5:1 on paper: dashed frames, tick marks */
  /* accent: one per viewport */
  --cayenne:#9D3F0D;        /* fills, the dot, primary button, accent text on light grounds */
  --cayenne-lift:#E07A45;   /* the ONLY cayenne allowed as text or focus ring on cocoa */
  /* secondary */
  --glass:#9AB0AA;          /* Weathered Glass: line art and text on cocoa only */
  /* on dark (cocoa band) */
  --on-dark:#F2ECE1;
  --on-dark-muted:#C9B9A8;
  --rule-on-dark:rgba(242,236,225,.22);
  /* the pack (wrap theme): rust panels, cream print, gyri brain */
  --pack:#9D3F0D; --pack-ink:#F4DDB0; --pack-ink-2:#F1D6AB; --pack-rule:rgba(244,221,176,.38); --pack-label:#F2D6A2;
  /* chapter grounds */
  --leaf:#2F5233; --leaf-lift:#A8CAA3;
  --slate:#33455C; --slate-lift:#F0A27A;

  /* type */
  --font-display:"Instrument Sans","Instrument Fallback",Arial,sans-serif;
  --font-mono:"Instrument Sans","Instrument Fallback",Arial,sans-serif;
  --font-text:"Instrument Sans","Instrument Fallback",Arial,sans-serif;
  --fs-micro:.75rem;                                   /* 12px */
  --fs-small:.9375rem;                                 /* 15px */
  --fs-body:1.0625rem;                                 /* 17px */
  --fs-lede:clamp(1.1875rem,1.05rem + .6vw,1.5rem);    /* 19 to 24px */
  --fs-h3:clamp(1.25rem,1.1rem + .6vw,1.625rem);       /* 20 to 26px */
  --fs-h2:clamp(1.875rem,1.3rem + 2.4vw,3.25rem);      /* 30 to 52px */
  --fs-h1:clamp(2.25rem,1.25rem + 4.4vw,5.25rem);       /* 36 to 84px */
  --fs-num-m:clamp(1.75rem,1rem + 3.6vw,3.5rem);       /* 28 to 56px */
  --fs-num-l:clamp(3.5rem,1.5rem + 9vw,8rem);          /* 56 to 128px */
  --fs-num-xl:clamp(5.5rem,2rem + 17vw,16rem);         /* 88 to 256px */
  --lh-display:.98; --lh-head:1.06; --lh-body:1.55; --lh-small:1.45;
  --track-display:-.042em; --track-head:-.03em; --track-micro:.08em;
  --w-display:500; --w-head:500; --w-numeral:400; --w-numeral-m:450;

  /* space */
  --s-1:4px; --s-2:8px; --s-3:12px; --s-4:16px; --s-5:24px; --s-6:32px;
  --s-7:48px; --s-8:64px; --s-9:96px; --s-10:128px;
  --section:clamp(64px,4vw + 48px,128px);

  /* layout */
  --gutter:16px; --gap:12px; --cols:4; --max:1320px; --measure:66ch;

  /* shape */
  --r-0:0; --r-1:6px; --r-2:14px; --r-round:999px;
  --shadow-object:0 30px 40px -26px rgba(29,24,21,.35);

  /* motion */
  --ease-out:cubic-bezier(.2,.7,.2,1);
  --ease-in-out:cubic-bezier(.65,0,.35,1);
  --ease-stamp:cubic-bezier(.3,1.4,.5,1);
  --t-fast:160ms; --t-reveal:360ms; --t-rule:420ms; --t-layer:420ms;
  --t-draw:700ms; --t-weight:700ms; --t-stamp:520ms; --t-page:180ms;
}
@media (min-width:768px){ :root{ --gutter:24px; --gap:16px; --cols:8; } }
@media (min-width:1120px){ :root{ --gutter:32px; --gap:24px; --cols:12; } }
