Skip to main content
Three font families, each with a job. The choices prioritise African language coverage and readability on the devices people actually use.

The font stack

The language-coverage reason is the load-bearing one and is covered in internationalisation.

Loading them

Apply the variables to <html> and set the default with font-sans on <body>.

The type scale

The published scale also defines a 72px display step for hero type on marketing surfaces.

Serif or sans

Noto Serif for page titles and hero headlines, brand-level messaging, and section headings on landing pages. Noto Sans for everything else: body text, UI labels, buttons, inputs, navigation, card content, error messages.

Heading hierarchy

Use heading levels in order. Never skip from h1 to h3.
Every page has exactly one <h1>. Screen readers build a page outline from this, so a skipped level is a navigation failure, not a styling quirk.

Line height and tracking

Tight tracking stops large headings looking spread out; wide tracking makes all-caps labels readable.

Brand wordmarks

Ecosystem brand names are rendered in lowercase — mukoko, nyuchi, shamwari, bundu, nhimbe, bushtrade, lingo. This is a brand rule, not a stylistic preference, and it survives sentence case.

The typography component

The registry ships pre-styled elements: