# Recommended fonts — Pastel Dream This pass ships `fonts.json = []` per the wave-1 fonts policy (see `themes/docs/FONTS.md`). The visual identity is realised through CSS variable fallback stacks (`--font-heading`, `--font-body`, `--font-mono`) so the theme renders sensibly out of the box. To match the intended Pastel Dream aesthetic, an admin should open the typography panel and add the fonts below from the Google Fonts tab, then assign each to its slot. All three are in the curated Google Fonts list and require no upload. ## Display / hand-lettered (assign to Heading) - `google:Caveat Brush` — primary display face for H1 and H2. Hand-lettered, warm, and rounded. Picks up beautifully behind the brush-stroke underline. - Alternates (pick one): `google:Sacramento`, `google:Homemade Apple`. ## Body (assign to Body) - `google:Nunito` — softened sans, ships with weights 300, 400, 600, 700. Used at line-height 1.75 per the spec. - Alternate: `google:Quicksand` for an even softer, more rounded body. ## Mono / numerals (assign to Mono) - `google:JetBrains Mono` — used for eyebrow labels, small caps tracking, and date strings. - Alternate: `google:Fira Code`. ## How to assign 1. Open `/admin/system/typography` (or your instance's typography panel). 2. Open the Google Fonts tab. 3. Search for each family above and click "Add". 4. In the Heading / Body / Mono slots, pick the family you added. 5. Save. The CMS injects an `@import` link and re-renders. ## Why no bundled woff2 in this pass Wave-1 implementation policy ships every theme with `fonts.json = []` and relies on the CSS variable consumer pattern. A future wave will bundle distinctive commercial display faces (or self-host the OFL fonts above) for themes where the typographic identity is core. See `themes/docs/FONTS.md` for the full rationale.