Engineering handoff
Every file a build can read.
The pages in this site are the argument. These are the artefacts — 22 files you can point a pipeline at. Each link serves the real file, not a rendering of it.
Counts are computed from tokens/design-tokens.json when this page is built, so they cannot disagree with the file you download.
Consume it
/* 1. tokens first — they define the variables everything else reads */
@import "./tokens/theme.css";
/* 2a. Tailwind v4 */
@import "tailwindcss";
@import "./tokens/tailwind-v4.css";// 2b. Tailwind v3
module.exports = require('./tokens/tailwind.config.js');Utilities then follow the theme with no dark: prefix — the semantic variables are re-declared per theme rather than duplicated per utility.
Consolidated export
Application code should consume this folder and nothing else. Generated from the domain sources below, so it cannot drift from the specs it encodes.
- tokens/design-tokens.jsonEvery token, both themes. Style Dictionary 4+, Tokens Studio, Figma Variables.
- tokens/theme.cssCustom properties. Media query, [data-theme] and .dark all handled. Import before your framework base layer.
- tokens/tailwind.config.jsTailwind v3. Per-property theme keys, so utilities read bg-canvas, not bg-bg-canvas.
- tokens/tailwind-v4.cssTailwind v4 @theme mapping, plus the dark custom-variant.
- docs/tokens/README.mdArchitecture, theming table, naming rationale, spec-compliance notes.
Domain sources
The evidence layer. These carry the contrast validation and the font measurements that justify the values — the export above carries only the values.
- color-system/tokens.jsonColour tokens with the 56-pair contrast validation attached.
- color-system/tokens.cssColour custom properties, all three theme states.
- docs/color-system/COLOR-SYSTEM.mdFull spec: ramps, semantic architecture, WCAG matrix, Hex→RGB→CMYK→Pantone.
- typography/type-tokens.jsonThe 1.200 scale. Off-scale steps flagged $offScale rather than hidden.
- typography/type.cssScale, numeral feature settings, metric-matched fallbacks.
- docs/typography/TYPOGRAPHY.mdFont evidence from parsed binaries, scale derivation, numeral rules.
Mark geometry
Every logo relationship is expressed in cap heights, so the lockup reproduces at any size without a lookup table.
- logo/metrics.jsonPrimary lockup: cap height, tracking, mark height, gap, clear space, minimums.
- logo/interlock/metrics.jsonInterlock variant, including the small-size rule that drops the accent below 40 px.
- docs/logo/README.mdConstruction, layout rules, file map, licence.
- docs/logo/interlock/README.mdThe interlock study — 15 files, solid loop plus flow line.
Asset specs
What a developer or a printer needs that the artwork itself does not say.
- pattern/pattern.cssReady classes for the seamless tile. File references, not data URIs — 3.5 KB instead of 102.
- docs/pattern/README.mdTile construction, the seam proof, and the 400 px animation rule.
- docs/og/README.mdExport commands and the meta tags to paste.
- docs/print/PRINT-SPECS.mdTrim, bleed, safe margins, CMYK breakdowns, spot matches, stock and finish.
- docs/print/README.mdFile map and the pre-press checklist.
Documents
The things to hand someone who is not going to open a JSON file.
- docs/BRAND-GUIDELINES.mdThe master specification. Strategy, logo, colour, type, assets, print — 43 tables, zero placeholders.
- docs/README.mdHow the repo is laid out, what is canonical, what is still open.