:root{--ease:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1)}
.cover-title>span{display:inline-block;white-space:nowrap;will-change:transform,opacity}
.motion-word-mask{display:inline-block;overflow:clip;vertical-align:bottom;padding-bottom:.14em;margin-bottom:-.14em}
.motion-word{display:inline-block;will-change:transform,opacity}
.phase,.phase:not(.is-open){transition:background-color 200ms ease}
.phase-heading{transition:color 160ms ease}
.phase-panel{transition:grid-template-rows 240ms var(--ease)}
.phase-content{transition:opacity 160ms ease}
.phase-number,.phase.is-open .phase-number{transition:opacity 160ms ease}
.case-card{transition:transform 200ms var(--ease)}
.sync-card p{font-size:clamp(20px,2.35vw,34px);line-height:1.15;letter-spacing:-.02em}
.sync-media img{width:100%;height:100%;left:0;top:0;object-fit:cover;object-position:center}
.keyboard-input .phase,.keyboard-input .phase-heading,.keyboard-input .phase-panel,.keyboard-input .phase-content,.keyboard-input .phase-number{transition:none!important}
@media(prefers-reduced-motion:reduce){
 .phase-panel{transition:none!important}
 .phase-content{transition:opacity 160ms ease!important}
 .phase{transition:background-color 160ms ease!important}
}

.fit-grid::before{display:none}
.fit-backdrop{position:absolute;inset:0;z-index:0;background:var(--pale);border-radius:inherit;pointer-events:none}

@media(hover:hover) and (pointer:fine){.case-card:hover{transform:translateY(-4px)}}
@media(prefers-reduced-motion:reduce){
 .case-card:hover{transform:none}
 .motion-word{transform:none!important;opacity:1!important}
 .sync-card{clip-path:none!important}
 .sync-stage{min-height:0;padding:0}
 .sync-card{width:100%;height:70svh;border-radius:0}
 .work-track{transform:none!important}
 .phase-content{transition:opacity 160ms ease!important}
}
