Easing curves — standard + emphasised
The two cubic-bezier curves the system reaches for, and where each one belongs. Hovers + chrome toggles use the standard curve; page-level reveals use emphasised.
--ease-standard:cubic-bezier(0.2, 0, 0, 1)- default for entrances, hovers.--ease-emphasized:cubic-bezier(0.3, 0, 0, 1)- page-level transitions, hero reveals.
Duration tokens — fast, base, slow
Three duration values cover every animation the system ships. Pick by transition kind, not by feel.
--motion-fast: 120ms - hover, focus, micro state.--motion-base: 200ms - drawer / tab toggles, dropdowns.--motion-slow: 320ms - page-level reveals, agent typing.
Honouring prefers-reduced-motion
The rule every animated component on the site follows: never let motion carry meaning, and always offer a stable steady-state frame for visitors who opt out of animation.
Every animated component (DemoAgent, AgentLoop, monotile drift) checks prefers-reduced-motion: reduce and either freezes on the steady-state frame or drops the keyframe entirely. No motion is load-bearing for meaning.
Logo lockup — typewriter on scroll
The site nav's lockup contracts on scroll: the icon mark stays put while the six wordmark letters fade out right-to-left, leaving just the mark. Scrolling back to the top types them back in left-to-right. The two delays are direction-aware - each state's own transition-delay governs the animation INTO that state, so the staircase reverses correctly.
- Property:
opacityon each.logo-letterpath (mark geometry never moves). - Duration:
140msper letter (ease). - Outgoing stagger (scrolled):
280mshead-start so the nav's glass / colour transition lands first, then+100msper letter going right→left (positions 6 → 5 → 4 → 3 → 2 → 1 at 280, 380, 480, 580, 680, 780 ms). - Incoming stagger (returning to top):
0msbase, then+100msper letter going left→right (positions 1 → 2 → 3 → 4 → 5 → 6 at 0, 100, 200, 300, 400, 500 ms). - Reduced motion: respects
prefers-reduced-motion: reduce- letters jump between states with no stagger.
Live demo
Tap the button to fold / unfold the wordmark. Mirrors what the site nav does when you scroll past 8 px.
Motion in the wild — three live references
Where to look on the live site to see the easing + duration tokens applied in real components.
- Homepage hero typewriter - 320ms slow, freezes on reduced motion.
- Agent loop orbit - 12s loop, freezes on reduced motion.
- Nav flyout dropdown - 120ms standard.