Scroll reveal
translateY(26px) to 0 with opacity, 900ms. Visible without JavaScript.
Story 1.2 harness
Plays on load via .tcs-rise, not on scroll
One instance of every primitive this story ships. Each band below spans the full viewport with no gutter at either edge, and every animation resolves to its final value when reduced motion is requested.
translateY(26px) to 0 with opacity, 900ms. Visible without JavaScript.
80ms between siblings in one parent, capped so a long grid never crawls.
Every animated element resolves to its final value. Nothing is hidden.
Body copy on black uses the dark-body token, never the cream-ground body colour, which lands near 2.4:1 here and fails. Links on dark grounds are orange.
1,248 readers — rendered as text, never counted up
Orange is never a large fill except a buy button or a full-bleed band ground like this one.
This band carries --tight (88px). The orange band above carries --short (66px), the marquee band carries --bleed-x (92px 0 88px), and the band below carries --flush-bottom (84px 40px 0). Every other band is the standard 92px 40px.
A band whose content runs to the bottom edge. Its padding-bottom is zero by design, which is why the modifier is named for what it does rather than for its number.