System Stack — native sans, no licence
The blueprint's white-label stack. One family in both the serif and sans slots, no display face. Present so the weight-range and step-down format is visible before a real pairing lands.
Specification
- --font-sans
- system-ui stack — weights 400, 500, 600, 700 verified
- --font-serif
- unassigned — inherits --font-sans until a pairing is approved
- --font-display
- unassigned — masthead only, and optional
- Scale (1201px+)
- h1 56 · h2 40 · h3 28 · h4 22 · body 16
- Step-down xl (<=1200)
- h1 48 · h2 36 · h3 26 · h4 20 · body 16
- Step-down lg (<=992)
- h1 40 · h2 32 · h3 24 · h4 20 · body 16
- Step-down md (<=768)
- h1 32 · h2 26 · h3 22 · h4 18 · body 16
- Tracking tokens
- --tracking-tight · --tracking-normal · --tracking-kicker
- Loading
- None — native stack. No Google, Adobe kit or self-host.
Why it works
A single family with a verified weight range removes the silent-rounding failure entirely, and a fully stepped scale keeps every heading level visually distinct at every width — the hierarchy holds when the layout narrows.
On every device
Type appears instantly, with no flash of the wrong typeface while a page loads, and headings stay clearly ranked from a wide monitor down to a phone.
Why recommended
The only entry in the set, and the correct default until type is chosen: it renders identically on every device with nothing to load and no licence to authorise.
Contrast — computed from token values
- Body 16px --ink on --paper17.3:1AAA
- Kicker 12px --muted on --paper6.0:1AA
Notes
- Every heading level is stepped at every breakpoint. Stepping h1 alone collapses the hierarchy at the narrower size.
- This page uses font-display: block on purpose — showing the wrong typeface while a client evaluates type is worse than showing nothing.