/* Scroll in/out in both directions; independent of hover transforms. */
.scroll-frame{opacity:var(--scroll-opacity,1);translate:0 var(--scroll-shift,0px);scale:var(--scroll-scale,1);transform-origin:center;transition:opacity .38s ease-out,translate .55s cubic-bezier(.16,1,.3,1),scale .55s cubic-bezier(.16,1,.3,1),transform .32s ease-out,box-shadow .32s,border-color .32s,background .32s}
.scroll-frame:focus-within{opacity:1;scale:1;translate:0}
.work-card,.expertise-grid article,.bts-grid figure{position:relative;transform:perspective(950px) rotateX(0deg) rotateY(0deg)}
.button,.filter,.view-controls a,.contact-links a{transition:transform .32s cubic-bezier(.2,.8,.2,1),box-shadow .32s,background .32s,color .32s}
.work-preview img,.production-gallery img,.bts-photo img,.hover-video{transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .4s,opacity .2s}
.work-card h3{transition:color .3s,transform .35s}
.media-icon,.bts-photo span{transition:transform .35s,background .35s}
@media(hover:hover) and (pointer:fine){
 .work-card:hover,.work-card:focus-within,.expertise-grid article:hover,.bts-grid figure:hover{z-index:2;transform:perspective(950px) translateY(-10px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));box-shadow:0 20px 40px #0005,0 0 0 1px #55b8ff55}
 .work-preview:hover img,.work-preview:focus-visible img,.production-gallery figure:hover img,.bts-photo:hover img{transform:scale(1.085);filter:brightness(1.08)}
 .work-preview:hover .hover-video.playing{transform:scale(1.04)}
 .work-card:hover h3,.work-card:focus-within h3{color:#86d2ff;transform:translateX(5px)}
 .work-preview:hover .media-icon,.bts-photo:hover span{transform:scale(1.16);background:#1488ee}
 .button:hover,.button:focus-visible{transform:translateY(-5px) scale(1.035);box-shadow:0 12px 28px #1488ee40}
 .button:active,.filter:active{transform:translateY(-1px) scale(.98)}
 .filter:hover,.view-controls a:hover{transform:translateY(-4px);border-color:#72c9ff;background:#183345;box-shadow:0 8px 20px #0004}
 .contact-links a:hover{transform:translateX(7px);color:#8cd6ff}
 .timeline article:hover{transform:translateX(6px);background:#0f233080}
 .brand-grid>*:hover{transform:translateY(-6px) scale(1.035)}
 .section-heading:hover h2:after{width:110px}
}
@media(hover:none){.work-card:hover,.expertise-grid article:hover,.bts-grid figure:hover,.button:hover,.work-preview:hover img,.bts-photo:hover img{transform:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){.scroll-frame{opacity:1;translate:none;scale:1;transition:none!important}.work-card,.expertise-grid article,.bts-grid figure,.timeline article,.button,.filter,.view-controls a,.contact-links a,.work-preview img,.bts-photo img{transform:none!important}}
