The tokens this site is built from.
Published rather than described. A studio that sells design systems should be able to hand you its own, and every ratio on this page is computed at build time from the same hex values the site renders with — not typed in from memory.
- Status
- Client work
- Verifiable
White and near-white carry about 92% of every screen.
Crimson is an accent, not a theme. If a section is more than roughly a tenth crimson by area, it is wrong and gets rebuilt.
--color-page#FFFFFF--color-surface#FAFAF9--color-border#E9E9E5--color-border-strong#D5D5CFText
--color-muted#6B6B6B--color-body#2E2E2E--color-ink#141414One crimson, three jobs.
Crimson was chosen over the logo's deep blue because it is the largest colour area in the mark, it clears AA on white, and blue is the default for every competing firm in the city.
--color-accent-tint#FDF0F3--color-accent#D70337--color-accent-deep#B8002E--color-accent-dark#8A0022Sampled from the mark, used only as identifiers.
One per service line. Every value is sampled directly from the logo artwork, including the overlap regions where two petals cross — so each is a colour that genuinely appears in the identity rather than one picked to sit near it. Several fail AA on white, which is exactly why they never appear behind text and never exceed 24px.
--color-marker-01#D70337--color-marker-02#0493D1--color-marker-03#FF7B17--color-marker-04#0F48A9--color-marker-05#027861--color-marker-06#037AC4--color-marker-07#FFBF1B--color-marker-08#035F4AArchivo for everything, IBM Plex Mono for the labels.
Both self-hosted, subset, and loaded with font-display: swap. Two families, one of them doing only structural work.
--text-displayclamp(2.5rem → 4.5rem)--text-h1clamp(2.125rem → 3.5rem)--text-h2clamp(1.75rem → 2.5rem)--text-h31.4375rem / 23px--text-h41.1875rem / 19px--text-h51rem / 16px--text-lead1.0625rem / 17px--text-body1rem / 16px--text-meta0.8125rem / 13px--text-micro0.75rem / 12px--text-label0.6875rem / 11pxOne four-pixel scale.
Motion clarifies hierarchy, or it does not exist.
Nothing on this site animates on scroll. Nothing exceeds 400ms. prefers-reduced-motion is respected globally, not per component.
--duration-instant--duration-fast--duration-base--duration-slow--ease-standard--ease-exitThe primitives layer
Hand-rolled. No component library, no framework defaults — a design studio's own site cannot look generated.
