Every page on this storefront reads from the same tokens.
Compose sections at --spacing-block stacks, not at page-default rhythm — equipment-grade, not SaaS.
Active: light · sample --brand-500 = …
Slate primary, sandstone, ember, off-white.
Fraunces (display) · IBM Plex Sans (body).
text-displayGear for the long way out.
text-h1A small catalogue, chosen one item at a time.
text-h2Pre-launch — the catalogue is being assembled.
text-h3Selected, not stockpiled.
text-h4What a listing looks like when it ships.
text-body-lgA short catalogue of outdoor and overlanding kit.
text-bodyA plain sentence about the catalogue and how it is built.
text-smallCatalogue lists one maker per category at launch.
text-captionSTONEWAVE · CATALOGUE · PRE-LAUNCH
Equipment-grade rhythm.
Stack
--spacing-stacktight row rhythm · 0.75rem
Block
--spacing-blockcomponent-internal · 1.5rem
Gutter
--spacing-gutterpage side gutter · clamp(1rem, 5vw, 2rem)
Section
--spacing-sectionvertical section rhythm · clamp(3.5rem, 7vw, 6rem)
Reach for bg-brand-* and text-brand-* for primary surfaces — the FRAMEWORK owns the ramp. bg-sandstone and text-ember are SECONDARY accents (one CTA or section per page, never both). Spacing: compose sections at --spacing-block stacks; do not hand-tune text-4xl font-bold tracking-tight — use the named scale instead.