02

Typography

One typeface, Geist, for everything. Display is the same family with more weight and tighter tracking.

Geist — the workhorse

Hero H1 · 45px · -2.025px tracking · medium

Hire the engineers who already build what you need.

Geist carries the full range: the same family renders the 45px marketing headline and the 10px table label. It is loaded here as a self-hosted variable file spanning weights 100 to 900. The token stack is plain 'Geist'; the variable axis is the confirmed asset and an upgrade note for the stack name.

400 Aa Vamo 0123
500 Aa Vamo 0123
600 Aa Vamo 0123
700 Aa Vamo 0123

Display type

There is no second typeface. Display headings are Geist, doing more work through weight and tracking. The binding idiom is font-semibold tracking-tight at the size the moment calls for. Reach for it on h1 through h4, stat values, and the sidebar brand, nowhere in body copy. Everything below sets Geist at semibold with tight tracking; only the size changes.

Vamo Design Hero title · 45px
Vamo Design Page title · 30px
Vamo Design Section head · 22px
Vamo Design Card head · 18px
Vamo Design Stat value · 36px

The pixel scale

A dense product scale, tuned for data-heavy screens with tight leading. These are the real recruiter-bot sizes, not the browser or Tailwind defaults.

TokenSizeLeadingSpecimen
text-2xs10px14pxThe quick brown fox
text-xs11px16pxThe quick brown fox
text-sm12px16pxThe quick brown fox
text-md13px18pxThe quick brown fox
text-base14px20pxThe quick brown fox
text-lg16px22pxThe quick brown fox
text-xl20px26pxThe quick brown fox
text-display · 45px / 48px

Display

The honest artifacts

Suisse Intl fallback

The Figma export specifies "Suisse Intl", but that face is never served. What ships is the system sans fallback. Both specimens below set the same string; the top asks for Suisse and gets the system font, the bottom is Geist.

As specified: Suisse Intl

As shipped: Geist

Monospace

No monospace face is loaded. The reserved stack is the platform UI mono, so code and numeric columns stay legible without shipping a font. Do not assume a bespoke mono exists.

const scarce = 'one accent';

ui-monospace, SFMono-Regular, Menlo, monospace