VII
Visual language

Paper, type, and a little movement.

The visual language of Morrow’s journal: front-page columns, botanical plates, marginal notes and foldouts.

A journal, not a dashboard.

The home page is composed as an edition: a masthead, a cover story, a botanical plate, contents in the margin, an observation, a foldout, a dispatch and reader’s notes. The signup lives on its own Letters page.

The Almanac, Beginnings, Everyday theory and Leaf specimen use different editorial forms. Technical readings use a folio number, a printed index and pencil notes alongside the text.

Fraunces is the display and italic voice. Manrope handles small text. Both are self-hosted. The existing Morrow symbol and downloadable brand kit remain available.

Unfold the idea.

The cover botanical separates into individual leaves. The foldout opens twelve abstract leaf-shaped sheets from one arrangement into a fan. The closing plate gathers sixteen leaves around a centre. These counts are drawing choices, not reward amounts or financial data.

FolioArt.astro defines the artwork. journal.css composes the pages. choreography.ts measures scene positions, caches them, and updates transforms through a requested animation frame after scroll input. It does not run an idle loop.

ResizeObserver and font-loading updates refresh the geometry. Smaller screens use a shorter sticky interval and fewer simultaneous layers. Pointer depth is limited to graphics.

Ink and paper in two appearances.

A script in the document head resolves the theme before content paints. It reads morrow-theme from local storage, or follows prefers-color-scheme when there is no explicit preference. The manual control updates its accessible label and persists a choice when storage is available.

Warm paper and forest ink become deep green surfaces and light type in dark mode. The leaf and gold palette adapts with the theme. Supported browsers use a short View Transition.

The reading comes first.

Reduced motion removes pinned scrolling and large transformations. The complete composition and all text remain. Without JavaScript, pages and native forms still work.

The interface has a skip link, keyboard focus, labeled form controls, explicit consent, live status messages and native disclosures. A signup succeeds only after the backend confirms persistence.