/* Scroll choreography: staggered entrances and gentle depth, without pointer effects. */
:root{--entrance-ease:cubic-bezier(.16,1,.3,1)}
.motion-enabled .scroll-reveal{transition:opacity .75s var(--entrance-ease) var(--reveal-delay,0ms),translate .95s var(--entrance-ease) var(--reveal-delay,0ms),scale .95s var(--entrance-ease) var(--reveal-delay,0ms),rotate .95s var(--entrance-ease) var(--reveal-delay,0ms),box-shadow .3s,transform .3s!important;filter:none!important}
.motion-enabled .scroll-reveal.reveal-pending{opacity:0;translate:0 48px;scale:1;rotate:0deg}
.motion-enabled .scroll-reveal[data-entrance="heading"].reveal-pending{translate:-32px 16px}
.motion-enabled .scroll-reveal[data-entrance="card"].reveal-pending{translate:0 58px;scale:.965;rotate:.7deg}
.motion-enabled .scroll-reveal[data-entrance="timeline"].reveal-pending{translate:30px 30px}
.motion-enabled .scroll-reveal:not(.reveal-pending){opacity:1;translate:0 0;scale:1;rotate:0deg}
.motion-enabled .scroll-image{animation:none!important;scale:var(--scroll-zoom,1.05);translate:0 var(--scroll-shift,0px);transition:scale .18s linear,translate .18s linear!important}
.article-banner{overflow:hidden}.article-banner figcaption{position:relative;z-index:1;background:#192e3b}
.hero::before,.journal-intro::before,.project-cta::before{display:none!important}
::view-transition-old(root){animation:scroll-page-out .25s ease both}
::view-transition-new(root){animation:scroll-page-in .55s var(--entrance-ease) both}
@keyframes scroll-page-out{to{opacity:0}}
@keyframes scroll-page-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:700px){.motion-enabled .scroll-reveal.reveal-pending{translate:0 30px}.motion-enabled .scroll-reveal[data-entrance="heading"].reveal-pending{translate:0 24px}.motion-enabled .scroll-reveal[data-entrance="card"].reveal-pending{translate:0 36px;rotate:0deg;scale:.98}.motion-enabled .scroll-reveal[data-entrance="timeline"].reveal-pending{translate:0 28px}}
@media(prefers-reduced-motion:reduce){.scroll-reveal,.scroll-reveal.reveal-pending,.scroll-image{opacity:1!important;translate:none!important;scale:none!important;rotate:none!important;transition:none!important;animation:none!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}}
