/* Motion direction: layered surfaces, kinetic type, and scroll-driven depth. */
.hero{position:relative;isolation:isolate;overflow:clip}
.hero-atmosphere{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.65}
.hero .wrap{perspective:1400px}
.hero.motion-ready .reveal{animation:none}
.kinetic-word{display:inline-block;transform-origin:50% 100%}
.hero .wall{transform-style:preserve-3d;transform:translate3d(0,var(--wall-y,0px),0) rotateX(var(--wall-rx,0deg)) rotateY(var(--wall-ry,0deg));transition:transform .5s var(--ease);box-shadow:0 32px 72px -42px var(--shadow)}
.hero .wall-heading,.hero .wall-caption{transform:translateZ(12px)}
.hero .wall-cell{transition:background .3s,border-color .3s,transform .4s var(--ease)}
.hero .wall-cell:hover{transform:translateZ(18px);border-color:#d2a351}
.reading-progress{position:absolute;bottom:-1px;left:0;right:0;height:2px;pointer-events:none;background:transparent}
.reading-progress i{display:block;height:100%;background:var(--amber);transform:scaleX(0);transform-origin:left}
.trading-scene{min-height:155svh;position:relative;isolation:isolate;background:var(--surface)}
.scene-sticky{top:88px;min-height:calc(100svh - 88px);padding-block:48px;perspective:1300px;gap:clamp(32px,5vw,72px)}
.scene-copy h2{font-size:clamp(36px,4vw,54px);line-height:1.1;letter-spacing:-.045em;max-width:17ch}
.scene-terminal{transform:translate3d(0,var(--scene-y,0px),0) rotateY(var(--scene-ry,0deg)) rotateX(var(--scene-rx,0deg)) scale(var(--scene-scale,1));transform-origin:50% 50%;backface-visibility:hidden;border-color:var(--line-2);box-shadow:0 40px 80px -48px var(--shadow)}
.scene-chart{margin-block:24px}
.scene-steps li{position:relative;transition:opacity .4s var(--ease),transform .4s var(--ease);padding:18px 0}
.scene-steps li::after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--amber);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.scene-steps li.is-current::after{transform:scaleX(1)}
.scene-steps li.is-current{transform:translateX(6px)}
.scene-steps li>span{font-size:12px}
.scene-status-dot{box-shadow:0 0 0 4px var(--amber-soft)}
.scene-chapter{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;font:400 11px/1.5 var(--mono);color:var(--steel)}
.scene-chapter b{font-weight:500;color:var(--amber);font-variant-numeric:tabular-nums}
.scene-chapter-track{width:80px;height:2px;background:var(--line-2);overflow:hidden}
.scene-chapter-track i{display:block;height:100%;background:var(--amber);transform:scaleX(0);transform-origin:left}
.motion-reveal{transform:translateY(30px);transition:opacity .7s var(--ease) var(--motion-delay,0ms),transform .7s var(--ease) var(--motion-delay,0ms)}
.card-evidence-link,.catalogue-report-link{min-height:44px}
@media(hover:hover) and (pointer:fine){.pick:hover{transform:translateY(-2px)}.pick:active{transform:translateY(1px)}}
@media(max-width:900px){.trading-scene{min-height:auto}.scene-sticky{min-height:auto;position:relative;top:auto;padding-block:40px;perspective:none}.scene-copy h2{font-size:38px;max-width:24ch}.scene-terminal{transform:none!important}.scene-steps li.is-current{transform:none}.hero .wall{transform:none!important}.scene-chapter{margin-bottom:18px}}
@media(max-width:480px){.scene-copy h2{font-size:32px}.scene-chart{margin-block:12px}.scene-steps li{padding-block:12px}.hero-atmosphere{opacity:.4}}
@media(prefers-reduced-motion:reduce){.hero-atmosphere{display:none}.hero .wall,.scene-terminal,.kinetic-word{transform:none!important}.trading-scene{min-height:auto}.scene-sticky{position:relative;top:auto;min-height:auto}.scene-steps li{opacity:1;transform:none}.scene-steps li::after{transition:none}.reading-progress,.scene-chapter-track{display:none}.motion-reveal{opacity:1;transform:none;transition:none}}
.hero.motion-ready .wall-cell{animation-fill-mode:backwards}
