Living Sans Beta 8 — weight + variant review

Two things to look at. First, how the font behaves across its single weight axis (100 → 1000). Second, how each letterform variant — default, ss01, ss02, ss03 — animates differently when that axis moves, and what calt does on top.

Weight range

wght 100 → 1000

One variable axis. The headline below loops between wght 200 and 900 so you can watch the outlines morph; the staircase pins five sample weights.

LIVING
100
LIVING
200
LIVING
400
LIVING
700
LIVING
1000
LIVING
default
Base A–Z glyphs. These carry no weight-variation data, so on their own they don't animate at all.
ss01 / ss02
Stylistic-set alternates covering most of the alphabet — all of the weight animation lives in these alternate glyphs.
ss03
Alternates for A, D, L, M and O only; every other letter falls back to its static base glyph.
calt on
Contextual alternates — the browser default. The font swaps letters for ss01/ss02/ss03 alternates depending on their neighbours, which is what mixes animating and static letters within one word.
calt off
font-feature-settings: "calt" 0 — contextual swapping disabled, so you see only what the variant column explicitly requests.

Letter-spacing warning: any non-zero CSS letter-spacing on a specimen makes browsers silently disable contextual alternates — calt looks enabled but does nothing, and most of the animation disappears with it. Try it live: drag the letter-spacing slider in the sticky bar and watch the calt-on rows snap to their base glyphs. Tighter spacing therefore has to be drawn into the font's own metrics by the foundry — it can't come from CSS. The alternates are also drawn to pass close to the base shapes around wght 500, so judge calt at the weight extremes (200 / 900), not mid-axis.