Atlas DS Colors Type Grid Components Patterns
Atlas · Type system

Söhne speaks. Söhne Buch measures.

One family with strict jobs: Söhne carries every reading voice from display to caption; Söhne Buch carries every instrument — labels, indices, data, code. One family, two registers.

01 / FacesSix cuts

Six cuts, each with one job.

Söhne Breit Fett--ff-fett · 700Statements and ghost numerals only.

Decision flow.

Söhne Breit Halbfett--ff-halbfett · 600Display XL/L, data-lg numerals.

Turning chaos into flow.

Söhne Kräftig--ff-kraftig · 500Display M/S, headings, UI emphasis.

The intake was the symptom.

Söhne Buch--ff-buch · 400All body prose and captions.

Every enterprise deal moves through one pipeline, and every claim gets its evidence.

Söhne Buch--ff-mono · 400Labels, indices, data, keys.

00 / BACKGROUND · FIG 1 · −71% · 47 MIN → 13 MIN

Geist Pixel--ff-pixel · display onlyLab experiments and easter eggs. Never in case studies.

ATLAS v2026

02 / ScaleEight steps

A fluid scale with hard endpoints.

Display sizes are viewport-fluid clamps; reading sizes are fixed. Nothing between 17px and 22px exists — the gap is what makes hierarchy legible.

Display XL.t-display-xl
Aa Atlas
clamp(48px, 7.2vw, 104px)
halbfett · lh 1.08 · ls −0.025em
Display L.t-display-l
Aa Atlas system
clamp(36px, 5vw, 72px)
halbfett · lh 1.08 · ls −0.02em
Display M.t-display-m
Aa The intake spine
clamp(28px, 3.6vw, 52px)
kräftig · lh 1.22 · ls −0.015em
Display S.t-display-s
Aa Section titles carry the claim
clamp(22px, 2.6vw, 36px)
kräftig · lh 1.22 · ls −0.01em
Heading.t-heading
Aa Component and card titles
clamp(18px, 1.4vw, 22px)
kräftig · lh 1.22
Body large / Body / Body small.t-body-lg · .t-body · .t-body-sm
17px ledes. 15px prose carries the argument. 13px captions qualify it.
buch · lh 1.5
max-width var(--measure)
Label / Micro.t-label · .t-micro
11px labels track wide  10px micro credits
buch · uppercase
ls 0.14em / 0.1em
Data / Data large.t-data · .t-data-lg
2026-07-02 · 47→13 MIN  −71%
tnum lnum always on
numerals never proportional
03 / RulesDiscipline

The rules that keep two families from becoming six voices.

R1Measure before size.Prose never exceeds 62ch (--measure); ledes 62ch; captions 48ch. A bigger font is never the fix for a long line.
R2Uppercase belongs to instruments.Only the instrument voice (--ff-mono, Söhne Buch) is ever set uppercase — labels, indices. Reading text is never tracked out or capitalized.
R3Fett is a siren.Breit Fett appears at most once per viewport — a statement or a ghost numeral. Two fett elements on screen is a bug.
R4Numbers are data.Any number a reader might compare gets tnum/lnum — metrics, dates, indices, table cells. No exceptions.