/* Slow camera drift, scroll depth and restrained editorial reveals. */
.has-artist-photo .hero-art .hero-photo{animation:camera-drift 26s ease-in-out infinite alternate;transform-origin:64% 42%}
.hero .hero-art #hero-image{transform:translate3d(0,var(--photo-scroll,0px),0);will-change:transform}
.hero .hero-copy{transform:translate3d(0,var(--type-scroll,0px),0);opacity:var(--type-opacity,1);will-change:transform,opacity}
.hero .hero-art #hero-image::after{content:'';position:absolute;inset:-20% -35%;pointer-events:none;background:linear-gradient(115deg,transparent 42%,#dbfff906 48%,#edffff12 50%,transparent 56%);mix-blend-mode:screen;animation:glass-pass 23s ease-in-out infinite;z-index:1}
.js-ready .reveal{transform:translate3d(0,25px,0);transition:opacity .85s ease,transform 1.15s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0ms)}
.js-ready .reveal.visible{transform:translate3d(0,0,0)}
.section-heading h2,.about-copy h2{letter-spacing:-.025em}
.section-heading.visible h2,.about-copy.visible h2{animation:heading-focus 1.2s cubic-bezier(.16,1,.3,1) both}
.cover img,.video-thumb img,.visual-card img{transition:transform 1.3s cubic-bezier(.16,1,.3,1)}
.release:hover .cover img{transform:scale(1.025)}.video-card:hover .video-thumb img{transform:scale(1.025)}.visual-card:hover img{transform:scale(1.025)}
.tilt-ready:hover{box-shadow:0 18px 45px #0003}
.portrait img{transform:translate3d(0,var(--portrait-scroll,0px),0) scale(1.035);will-change:transform}
.scroll-progress{height:1px;box-shadow:none}
@keyframes camera-drift{0%{transform:scale(1)}100%{transform:scale(1.025)}}
@keyframes glass-pass{0%,15%{transform:translate3d(-25%,0,0);opacity:0}40%{opacity:.6}75%{transform:translate3d(25%,0,0);opacity:0}100%{transform:translate3d(25%,0,0);opacity:0}}
@keyframes heading-focus{from{opacity:.5;transform:translate3d(0,12px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@media(max-width:650px){.has-artist-photo .hero-art .hero-photo{animation-name:camera-drift-mobile}.hero .hero-copy{opacity:1}.js-ready .reveal{transform:translate3d(0,18px,0)}.js-ready .reveal.visible{transform:none}.hero .hero-art #hero-image::after{opacity:.4}}
@keyframes camera-drift-mobile{from{transform:scale(1)}to{transform:scale(1.012)}}
@media(prefers-reduced-motion:reduce){.has-artist-photo .hero-art .hero-photo,.section-heading.visible h2,.about-copy.visible h2{animation:none}.hero .hero-art #hero-image::after{display:none}.hero .hero-art #hero-image,.hero .hero-copy,.portrait img{transform:none!important;opacity:1!important;will-change:auto}.js-ready .reveal{opacity:1;transform:none;transition:none}}
