/* A shared brass token connects the chapters. Native scrolling stays in charge. */
.scene-handoff{--fall:1;--land:1;--impact:0;--turn:180deg;--tail:0;position:relative;isolation:isolate;min-height:560px;height:72svh;max-height:850px;padding:0!important;overflow:hidden;background:var(--handoff-bg,#080808);color:var(--handoff-ink,#f3efe5);display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;width:100%}
.scene-handoff .handoff-copy{position:relative;z-index:2;padding-left:max(3.5vw,24px);padding-right:1rem;pointer-events:none}
.scene-handoff .handoff-copy>span{font-size:.66rem;letter-spacing:.2em;display:block;margin-bottom:2rem;color:inherit;opacity:.65}
.scene-handoff .handoff-copy>p{font-family:var(--display);font-size:clamp(3rem,5.6vw,6rem);line-height:.94;letter-spacing:-.045em;margin:0;text-align:left;color:inherit}
.handoff-stage{width:100%;height:100%;display:grid;place-items:center;position:relative;z-index:1}
.handoff-stage svg{width:100%;max-height:100%;overflow:visible;fill:none;stroke:#ba9355;stroke-width:1.2}
.flow-token{transform:translateY(calc(var(--fall)*255px)) rotate(var(--turn));transform-origin:400px 120px;opacity:calc(1 - var(--land)*.9)}
.flow-token>circle{fill:#d4ad66;stroke:#f1d6a5;stroke-width:1}
.flow-token>g{fill:#171a16;stroke:none}
.flow-receiver{stroke-width:1.6;stroke-dasharray:1800;stroke-dashoffset:calc(1800*(1 - var(--land)));fill:rgba(173,137,73,.025)}
.flow-inner{stroke-dasharray:600;stroke-dashoffset:calc(600*(1 - var(--land)));opacity:.6}
.flow-trace,.flow-stand{opacity:var(--land);stroke-width:1.4}
.flow-impact{transform-origin:400px 470px;transform:scaleX(calc(.7 + var(--impact)*1.7));opacity:calc(var(--impact)*.6)}
.flow-tail{stroke-dasharray:3 8;opacity:var(--tail);transform:scaleY(calc(1 + var(--fall)*4));transform-origin:400px 0}
.flow-card{opacity:var(--land);transform-origin:400px 470px;fill:rgba(173,137,73,.03)}
.flow-card-left{transform:translateX(calc((1 - var(--land))*90px)) rotate(calc(var(--land)*-12deg))}
.flow-card-right{transform:translateX(calc((1 - var(--land))*-90px)) rotate(calc(var(--land)*12deg))}
body.cinematic-sequence .handoff-automotive{order:2}
body.cinematic-sequence .case[data-case="scuderie-magara"]{order:3}
body.cinematic-sequence .showroom-grid{order:4}
body.cinematic-sequence .work-note{order:5}
.scene-handoff[data-handoff="cards"]{--handoff-bg:#f8f8f8;--handoff-ink:#172019}
.site-flow-active .scene-handoff{--fall:0;--land:0;--turn:0deg;--tail:1}
.site-flow-active .flow-panel{clip-path:inset(0 var(--flow-cut,0%) 0 var(--flow-cut,0%))}
.site-flow-active .flow-rise{transform:translate3d(0,var(--flow-rise,0px),0);opacity:calc(.65 + var(--flow-entry,1)*.35)}
.site-flow-active .film-shot,.site-flow-active .film-shot.in-view{opacity:1!important;transform:none!important;transition:none!important}
.site-flow-active .flow-panel:focus-within,.site-flow-active .flow-panel:focus{clip-path:none!important}
.site-flow-active .flow-rise:focus-within{opacity:1!important;transform:none!important}
.site-flow-active .step{position:relative}
.site-flow-active .step::after{content:"";height:1px;position:absolute;bottom:0;left:0;right:0;background:#bd965a;transform:scaleX(var(--flow-entry,1));transform-origin:left}
.flow-destination{position:relative}
.flow-destination::before{content:"";position:absolute;left:3.5vw;right:3.5vw;top:0;height:2px;background:linear-gradient(90deg,transparent,#d4ad66 35%,#d4ad66 65%,transparent);transform:scaleX(var(--flow-entry,1));transform-origin:center}
.site-flow-active .ticker-track{animation:none!important;transform:none!important}
@media(max-width:700px){.scene-handoff{grid-template-columns:1fr;grid-template-rows:auto 1fr;min-height:460px;height:70svh;max-height:660px}.scene-handoff .handoff-copy{padding:2.5rem 18px 0}.scene-handoff .handoff-copy>span{font-size:.6rem;margin-bottom:1rem}.scene-handoff .handoff-copy>p{font-size:clamp(2.4rem,10vw,3.7rem)}.handoff-stage{min-height:260px}.handoff-stage svg{height:100%;max-height:340px;width:auto;max-width:100%}.site-flow-active .flow-panel{clip-path:inset(0 calc(var(--flow-cut,0%)*.35) 0 calc(var(--flow-cut,0%)*.35))}.flow-destination::before{left:18px;right:18px}}
@media(prefers-reduced-motion:reduce){.scene-handoff{--fall:1!important;--land:1!important;--impact:0!important;--turn:180deg!important;--tail:0!important;height:auto;min-height:360px}.flow-panel,.flow-rise{clip-path:none!important;transform:none!important;opacity:1!important}}
.motion-paused .scene-handoff{--fall:1!important;--land:1!important;--impact:0!important;--turn:180deg!important;--tail:0!important;height:auto;min-height:360px}
.motion-paused .flow-panel,.motion-paused .flow-rise{clip-path:none!important;transform:none!important;opacity:1!important}
.motion-paused .ticker-track{animation:none!important}

.site-flow-active .flow-panel.flow-visible{will-change:clip-path}
.site-flow-active .case-dialog[open]{animation:flow-project-in .55s cubic-bezier(.22,.78,.22,1) both}
@keyframes flow-project-in{from{opacity:0;transform:translateY(36px) scale(.985)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.case-dialog[open]{animation:none!important}}
.motion-paused .case-dialog[open]{animation:none!important}
