Foundation

Colour

One accent, indigo, on warm neutrals. Light and dark follow the system; the band stays indigo in both.

01

Light

Canvas#F5F3EFPage and slide ground
Ink#141414 · 16.6:1Text, rules
Secondary#5A564F · 6.6:1Labels, numbers, notes
Ghost#8C877E · 3.2:1Display text 48px and up only
Hairline#E0DDD8 · 1.2:1Row dividers; decoration
Indigo#26357A · 10.1:1The one accent: links, buttons, bands, markers

Ratios are against the canvas.

02

Dark

Canvas#121212Page ground
Tile#1E1E1C · 1.1:1Tile and figure ground
Ink#ECEBE7 · 15.7:1Text, rules
Secondary#A8A399 · 7.5:1Labels
Ghost#6B675F · 3.3:1Display text 48px and up only
Hairline#33312E · 1.4:1Row dividers
Link#AAB4F0 · 9.4:1Links, buttons, markers in dark

Ratios are against the dark canvas. Photos dim to 88% in dark mode.

03

On the band, both modes

On accent#F7F6FF · 10.5:1Text, links, and labels on indigo
On accent, hover#AAB4F0 · 5.6:1Link hover on indigo; links on the night page
On accent, ghost#7F8BCB · 3.4:1Display text 48px and up on indigo

Ratios are against indigo. The 404 and Blackhole ground is #0A0A0B.

04

Rules

One accent
Indigo is the only colour. No second hue, per page or per product: tried and rejected as a rainbow.
No status colours
No red or green. Use bold, a sign, or a word.
No gradients, no shadows
Depth comes from rules and order, not effects.
Contrast
Text at least 4.5:1; 3:1 for text 24px and up and for meaningful graphics. Ghost colours only for display type.
Higher contrast
prefers-contrast: more turns secondary ink and hairlines into full ink. Forced colours keep every part outlined.
In code
Components use the custom properties at the top of site.css (the same values as tokens/). Known exceptions on the site: .screen ground #e9e6df, .screen-watch black, the band button hover white, and the agent figure’s own palette (documented in its spec). New components add no hard-coded colours.