/* The human signal: a scroll-led, abstract anatomy study. */
.body-motion{height:330svh;background:#11110f}
.motion-sticky{position:sticky;top:0;height:100svh;overflow:hidden}
.motion-sticky:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 65% 49%,rgba(239,104,49,.12),transparent 32%)}
#mobility-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.motion-meta{position:absolute;z-index:3;top:13.5%;left:8vw;right:8vw;display:flex;justify-content:space-between;color:#b4b0a8;font:10px var(--mono);letter-spacing:.08em}
.motion-copy{position:absolute;z-index:3;top:30%;left:8vw;width:min(43vw,600px);opacity:0;transform:translateY(38px);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.75,.2,1)}
.motion-copy.active{opacity:1;transform:translateY(0)}
.motion-copy h2{font-size:clamp(41px,5.1vw,84px);line-height:.94;letter-spacing:-.075em;margin:0 0 26px}
.motion-copy h2 em{color:var(--glow)}
.motion-copy>p:last-child{max-width:410px;color:#b7b3ac;font-size:17px;line-height:1.48}
.motion-count{position:absolute;z-index:3;right:8vw;bottom:7%;color:#817a73;font:11px var(--mono);letter-spacing:.08em}
.motion-count b{color:var(--orange);font-weight:500}
.motion-track{position:absolute;z-index:3;bottom:7%;left:8vw;display:flex;gap:8px}
.motion-track span{height:2px;width:54px;background:#48413c;transition:background .4s ease}
.motion-track .active{background:var(--orange)}
@media(max-width:760px){.body-motion{height:300svh}.motion-meta{left:7vw;right:7vw;top:12%}.motion-copy{left:7vw;top:21%;width:82vw}.motion-count{right:7vw;bottom:5%}.motion-track{left:7vw;bottom:5%}}
@media(prefers-reduced-motion:reduce){.motion-copy{transition:none}.motion-copy{opacity:1;transform:none}}
