/* One entrance per element, shorter rhythms, no idle JavaScript animation. */
.js-motion .reveal{transition-duration:.42s;transition-timing-function:cubic-bezier(.2,.75,.25,1)}
.js-motion .reveal.signature-stagger{transition-delay:var(--signature-delay,0ms)}
.js-motion .steps.reveal{transition-duration:.32s}
.js-motion .steps.is-visible .step{animation:signature-step-in .4s both;animation-delay:var(--signature-delay,0ms)}
@keyframes signature-step-in{from{opacity:.35;translate:0 12px}to{opacity:1;translate:0 0}}
/* Preserve the existing card tilt once its entrance is complete. */
.js-motion .project-card.reveal.is-visible{transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
.signature-magnetic{translate:var(--magnetic-x,0px) var(--magnetic-y,0px)}
.hero h1 span{animation:none;background:none;background-clip:initial}
.signature-title-seen em,.signature-title-seen>span{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0% 1px;animation:signature-underline .55s .16s both}
@keyframes signature-underline{to{background-size:100% 1px}}
.production-head h2.signature-title-seen,.directions h2.signature-title-seen,.contact h2.signature-title-seen{animation:signature-title-in .44s both}
@keyframes signature-title-in{from{opacity:.6;translate:0 12px}to{opacity:1;translate:0 0}}
.signature-title-seen:not(.signature-title-visible),.signature-title-seen:not(.signature-title-visible) em,.signature-title-seen:not(.signature-title-visible)>span,.steps:not(.signature-group-visible) .step{animation-play-state:paused}
.motion-ribbon .ribbon-track{animation-duration:28s;animation-play-state:paused}
.motion-ribbon.motion-in-view .ribbon-track{animation-play-state:running}
.studio-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-block:55px 12px}
.studio-metric{position:relative;border-top:1px solid color-mix(in srgb,var(--signature-ink,#251a2d) 20%,transparent);padding:25px 0 12px;min-width:0}
.studio-metric [data-count-to]{display:block;font-size:clamp(48px,6.5vw,88px);font-weight:500;line-height:1;letter-spacing:-.07em;font-variant-numeric:tabular-nums;color:var(--signature-ink,#251a2d);min-width:2ch}
.studio-metric p{font-size:12px;line-height:1.5;color:var(--muted,#6d6570);margin:15px 0 0}
.studio-metric::after{content:'';position:absolute;top:-1px;left:0;width:24px;height:2px;background:var(--signature-accent,#d5e483);transition:width .3s}
.studio-metric:hover::after{width:64px}
@media(hover:hover) and (pointer:fine){.direction-card:hover .direction-image img{transform:scale(1.035)}.direction-image img{transition-duration:.45s}.project-link:hover svg,.sample-cta:hover span{translate:2px -2px}.sample-cta span{transition:translate .2s}.listening-row>b{transition:translate .25s}.listening-row:hover>b{translate:3px -3px}.listening-row h3{transition:translate .25s}.listening-row:hover h3{translate:3px 0}}
html.motion-paused .signature-title-seen,html.motion-paused .signature-title-seen em,html.motion-paused .signature-title-seen>span,html.motion-paused .steps.is-visible .step,html.tab-hidden .signature-title-seen,html.tab-hidden .signature-title-seen em,html.tab-hidden .signature-title-seen>span,html.tab-hidden .steps.is-visible .step{animation-play-state:paused!important}
html.motion-paused .signature-magnetic{translate:0 0!important}
html.motion-paused .reveal{transition:none!important}
html.motion-paused .project-card,html.motion-paused .listening-row h3,html.motion-paused .listening-row>b,html.motion-paused .project-link svg,html.motion-paused .sample-cta span{transform:none!important;translate:0 0!important;transition:none!important}
html.motion-paused .direction-card:hover .direction-image img{transform:none}
@media(max-width:680px){.studio-metrics{gap:16px;padding-block:35px 2px}.studio-metric{padding-top:20px}.studio-metric [data-count-to]{font-size:clamp(40px,11vw,64px)}.studio-metric p{font-size:10px;line-height:1.5;max-width:100px;margin-top:10px}.js-motion .reveal.signature-stagger{transition-delay:0s}}
@media(prefers-reduced-motion:reduce){.signature-title-seen,.signature-title-seen em,.signature-title-seen>span,.steps.is-visible .step{animation:none!important}.signature-magnetic{translate:0 0!important}.js-motion .reveal,.direction-image img,.listening-row h3,.listening-row>b,.sample-cta span,.studio-metric::after{transition:none!important}.motion-ribbon .ribbon-track{animation:none!important}.js-motion .project-card.reveal.is-visible{transform:none!important}}
