/* Artwork is visible before enhancement; the script owns finite entrances. */
[data-scroll-image]{position:relative;isolation:isolate;overflow:hidden}
[data-scroll-image] img{display:block;max-width:100%;transform-origin:center}
[data-scroll-stage]{--scroll-stage:1}
[data-motion-chapter]{--chapter-progress:1}
.motion-word{display:inline-block;vertical-align:baseline}
.motion-svg-node{transform-box:fill-box;transform-origin:center}
.motion-trace-path{pointer-events:none}
[data-scroll-path]{stroke-linecap:round;stroke-linejoin:round}
.motion-paused [data-scroll-stage],body:not(.scroll-effects-ready) [data-scroll-stage]{--scroll-stage:1!important}
.motion-paused [data-motion-chapter],body:not(.scroll-effects-ready) [data-motion-chapter]{--chapter-progress:1!important}
/* Pausing restores chapters and selected scenes immediately, including colour feedback. */
body.motion-paused :is([data-motion-chapter],[data-motion-tabs]),body.motion-paused :is([data-motion-chapter],[data-motion-tabs]) *,body.motion-paused :is([data-motion-chapter],[data-motion-tabs])::before,body.motion-paused :is([data-motion-chapter],[data-motion-tabs])::after,body.motion-paused :is([data-motion-chapter],[data-motion-tabs]) *::before,body.motion-paused :is([data-motion-chapter],[data-motion-tabs]) *::after{transition:none!important}
@media(prefers-reduced-motion:reduce){[data-scroll-stage]{--scroll-stage:1!important}[data-motion-chapter]{--chapter-progress:1!important}[data-scroll-image],[data-scroll-image] img,[data-scroll-reveal],.motion-word{clip-path:none!important}[data-scroll-image] img{filter:none!important;scale:1!important;translate:none!important}.motion-word{opacity:1!important;transform:none!important}}
