Brand StandardsConcept 1 · Draft for review

Chapters

Motion

Motion behaves like light moving across a façade: slow to arrive, exact when it lands, and never the reason you looked.

8.1

Principles

Content is always visible by default. Motion adds a moment of arrival; it never gates what a reader can see.

  • One authored moment per viewThe page’s main image or headline arrives; everything else is simply there. No identical fade on every section.
  • Exponential ease-outFast start, long settle. Nothing bounces, overshoots or springs.
  • Masks, not slidesImages reveal through a rising mask, the way a print is pulled from a frame. Elements do not fly in from the side.
  • Interface motion is shortHover and state changes take 160 ms; panels and sheets 320 ms.
8.2

Vocabulary

Three movements cover the site. Press replay to see each again.

Architectural revealclip-path inset · 1100 ms · ease-out · hero images, plates

With clarity.

Typographic riseline rises inside its own mask · 640 ms · page titles only
Rule draw1 px rule scales from the left · 640 ms · section openings, tables
  • Page transitionsCross-document view transitions where supported: the outgoing page fades to Gallery in 200 ms, the incoming title rises. Listing card images morph into the gallery hero.
  • ParallaxOnly on full-bleed architectural photographs, at most 6% of the image height, and only when the image is taller than its frame. Never on text.
  • MapPans and zooms ease over 320 ms; the selected pin changes color instantly.
8.3

Tokens

Two curves and four durations. Anything else needs a reason written beside it.

PROGRESS TIME
--ease-outcubic-bezier(.16, 1, .3, 1)
TokenValueUse
--dur-1160 msHover, focus, color changes
--dur-2320 msMenus, filter panels, sheets, accordions
--dur-3640 msTitle rise, rule draw
--dur-reveal1100 msImage reveal, one per view
--ease-out.16, 1, .3, 1Everything that arrives
--ease-inout.65, 0, .35, 1Things that move and stay (map pans)
8.4

Never

NeverInstead
Bounce or springExponential ease-out that settles.
Scroll-jackingThe reader’s scroll always moves the page by the amount they scrolled.
Fade-in on every blockOne authored moment per view; the rest is present.
Floating cards, blobs, cursor trailsStillness. The architecture is the interest.
Animated logo lettersThe mark appears whole. It may fade in with the page; it never assembles.
Auto-advancing carouselsGalleries move only when the visitor moves them.
8.5

Reduced motion

When a visitor’s system asks for reduced motion, every duration token resolves to zero. Content appears in its final state; state changes still happen, instantly. The demos above follow this rule.

  • CSS@media (prefers-reduced-motion: reduce) sets every --dur-* to 0 ms in tokens.css.
  • ScriptReveal classes are added only when motion is allowed and IntersectionObserver exists; without either, nothing is hidden.
  • VideoNever autoplays with motion preference set; poster frame shown with a play control.