/* Scroll choreography: every value is reversible and tied to the native scroll. */
.exp-scene{--reveal:1;--depth-enter:0;--depth-exit:0;perspective:1800px}
.scene-body{transform:perspective(1800px) translate3d(0,calc(var(--depth-enter)*55px - var(--depth-exit)*35px),calc(var(--depth-enter)*-100px - var(--depth-exit)*75px)) rotateX(calc(var(--depth-enter)*5deg - var(--depth-exit)*3deg));transform-origin:50% 60%;filter:none;opacity:calc(1 - var(--depth-enter)*.22 - var(--depth-exit)*.5)}
.scroll-title{--ink-color:#fff5e6;perspective:900px;overflow:visible;isolation:isolate}
.scroll-title em{--ink-color:#efd099}
.ink-word{display:inline-block;--fill:clamp(0%,calc((var(--reveal,1)*var(--words) - var(--word))*100%),100%);color:transparent;background:linear-gradient(90deg,var(--ink-color) 0%,var(--ink-color) var(--fill),#b7a58c38 var(--fill),#b7a58c38 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-stroke:0;transform:perspective(850px) translate3d(0,calc(var(--depth-enter)*18px),calc(var(--depth-enter)*-35px)) rotateX(calc(var(--depth-enter)*16deg));transform-origin:50% 100%;filter:drop-shadow(1px 2px 0 #49351b60) drop-shadow(0 7px 12px #0008);transition:filter .3s}
.outline-type .ink-word{-webkit-text-stroke:.6px #e1c69b88}
.scene-body p,.scene-body .exp-eyebrow,.scene-body .tiny-label{transform:translate3d(0,calc(var(--depth-enter)*22px),0);opacity:calc(1 - var(--depth-enter)*.48)}
.depth-object{--card-arrival:1;--tilt-x:0deg;--tilt-y:0deg;transform:perspective(1000px) translate3d(0,calc((1 - var(--card-arrival))*45px),calc((1 - var(--card-arrival))*-100px)) rotateX(calc((1 - var(--card-arrival))*12deg + var(--tilt-x))) rotateY(calc((1 - var(--card-arrival))*(var(--depth-order) - 2.5)*3deg + var(--tilt-y)));transform-origin:50% 80%;backface-visibility:hidden;transition:transform .18s ease-out,box-shadow .3s,filter .3s;filter:drop-shadow(0 12px 15px #0004)}
.vertical-logos img:hover,.instagram-feature:hover{box-shadow:0 20px 36px #0006,0 0 24px #b789342b;border-color:#e8c98b}
.client-logo .brand-mark{transform:translateY(calc((1 - var(--card-arrival))*12px));opacity:calc(.45 + var(--card-arrival)*.55);transition:transform .25s,opacity .25s}
.solution-image{transform:scale(calc(1.04 + var(--depth-enter)*.12));transition:transform .25s ease-out}
.case-brand-stage .brand-mark{transform:perspective(900px) translateZ(45px) rotateY(calc(var(--depth-enter)*-12deg));filter:drop-shadow(0 22px 15px #0008)}
.casting-emblem img{filter:drop-shadow(0 10px 0 #8b6b3633) drop-shadow(0 22px 24px #d4a74e33)}
.exp-scene::after{content:'';position:absolute;top:9%;left:7%;right:7%;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,#e6bf73aa,transparent);transform:scaleX(calc(1 - var(--depth-enter)));opacity:calc(var(--depth-enter)*.8);box-shadow:0 0 20px #e6bf73;z-index:2}
.motion-off .ink-word{--fill:100%;transform:none;filter:none}.motion-off .depth-object,.motion-off .scene-body,.motion-off .scene-body p,.motion-off .scene-body .exp-eyebrow,.motion-off .scene-body .tiny-label{transform:none;opacity:1;transition:none}.motion-off .exp-scene::after{display:none}
@media(max-width:750px){.scene-body{transform:translateY(calc(var(--depth-enter)*20px - var(--depth-exit)*15px))}.depth-object{transform:perspective(1000px) translateY(calc((1 - var(--card-arrival))*22px)) rotateX(calc((1 - var(--card-arrival))*6deg))}.ink-word{filter:drop-shadow(0 3px 4px #0006)}}
@media(prefers-reduced-motion:reduce){.ink-word{--fill:100%;transform:none!important;filter:none}.depth-object,.solution-image,.case-brand-stage .brand-mark,.client-logo .brand-mark,.scene-body p,.scene-body .exp-eyebrow,.scene-body .tiny-label{transform:none!important;transition:none!important;opacity:1!important}.exp-scene::after{display:none}}
