Lumen
Styles

Typography

Three voices — an optical serif for display, Geist for the interface, Geist Mono for data.

Lumen speaks in three voices — the type equivalent of the brand's core tension, the warmth of care and the precision of an instrument.

A living picture of your health.
The autonomous health operating system — it senses the body and works between your goals and your state.
118/76 · 10.4 g/dL · 28w 3d

The three voices

VoiceFaceCarriesWhere
DisplayFraunces (optical serif)warmth, character, the humanhero, page & section titles
InterfaceGeist (grotesque sans)precision, calm, legibilitybody, UI, labels, nav
DataGeist Mono (tabular)exactnessvitals, labs, doses, IDs, time

Fraunces is a variable old-style serif with an optical-size axis — it adapts its contrast to the size, and that optical idea is the same one the whole brand comes from (the lens, the eye). It reads warm and editorial without tipping into clinical-cold or consumer-cute. Geist stays the workhorse — neutral and precise, it does the reading. The serif is the warmth; the sans is the instrument.

Restraint

The serif is spent on display only — hero, h1, h2. Smaller headings (h3+), UI, and all body stay Geist. Two faces, clear roles; never serif body text.

Type scale

Every role, rendered in its real face, size, and weight:

display
Fraunces · 600 · 48px
A living picture of your health.
h1
Fraunces · 600 · 30px
Your Biograph
h2
Fraunces · 600 · 24px
Active flows
h3
Geist · 600 · 18px
Prenatal care
body
Geist · 400 · 16px
The autonomous health operating system — it senses the body and works between your goals and your state.
label
Geist · 500 · 13px
Resting heart rate
caption
Geist · 600 · 11px
Spans · Timeline
metric
Geist Mono · 600 · 30px
10.4 g/dL
data
Geist Mono · 600 · 16px
118/76 · 10.4 g/dL · 28w 3d
data · sm
Geist Mono · 500 · 12px
Updated 2 min ago · cuff-02 · ±0.2

Tokens: --font-display (= --font-serif), --font-sans, --font-mono — or the Tailwind utilities font-display, font-sans, font-mono from lumen/tailwind.css.

Numerals

Anything quantitative — vitals, labs, doses, gestational age — sets in Geist Mono with font-variant-numeric: tabular-nums so columns stay aligned and digits never reflow as they tick. Data spans three sizes: metric (30px) for the one featured number on a card, data (16px) for standard readouts and tables, and data · sm (12px) for units, timestamps, IDs, and axis labels.

On this page