Content draws onto the page from the left — the direction we read, the direction signals travel. Reveals are wipes, entrances are staggered sweeps, and every element arrives with a drawn edge, never a dissolve. One direction, everywhere, always.

Everything arrives fast and lands soft. A single expo-out curve drives every reveal and transition; a restrained spring is reserved for things you touch. If it needs a different curve, it probably shouldn’t move.
Hero moments are scrubbed, not played. Pinned sections move exactly with the reader — forward, backward, fast or slow — so the story is explored, never watched. New content fades up into place; finished content exits solid, under the line.
The system never sleeps. Ambient loops — flowing signals, drifting atmosphere, counting numbers — run continuously at mismatched tempos so the rhythm never visibly repeats. Quiet, constant, and running whether you scroll or not.
Elements enter as a sequence — each starts while the previous is still moving, offset by a beat, never waiting its turn. One hero moment at a time; everything else holds still.
| --ease-out | cubic-bezier(.16, 1, .3, 1) — all arrivals, reveals & panels |
| --ease-spring | cubic-bezier(.34, 1.4, .64, 1) — hovers & presses only |
| linear | progress, timers & ambient travel |
| 250–450ms | micro — hovers, swaps, ticks |
| 500–700ms | structural — panels, morphs, menus |
| 0.9–1.6s | reveals — wipes & entrances |
| 17–26s | ambient — never synchronized |
| reduced motion | honored always — content, instantly, without ceremony |