/* Shared case motion: reveals, accents and selected desktop image details. */
.case-motion .case-zoom-trigger{overflow:hidden}
.case-motion .case-zoom-trigger::after{background:var(--accent);color:#fff}
.case-motion .kicker::after{content:"";display:block;width:56px;height:2px;background:var(--accent);margin-top:18px}
@media(prefers-reduced-motion:no-preference){
 .case-motion .case-enter{transform:translateY(32px);transition:opacity 1.35s ease,transform 1.65s cubic-bezier(.16,1,.3,1)}
 .case-motion .case-enter.is-visible{transform:none}
 .case-motion .case-enter .kicker::after{transform:scaleX(0);transform-origin:left;transition:transform 1.2s cubic-bezier(.16,1,.3,1) .2s}
 .case-motion .case-enter.is-visible .kicker::after{transform:scaleX(1)}
 .case-motion .case-enter>div>h2,.case-motion .case-enter>div>p,.case-motion .case-enter figcaption{opacity:0;transform:translateY(12px);transition:opacity 1s ease .14s,transform 1.2s ease .14s}
 .case-motion .case-enter>div>p,.case-motion .case-enter figcaption{transition-delay:.28s}
 .case-motion .case-enter.is-visible>div>h2,.case-motion .case-enter.is-visible>div>p,.case-motion .case-enter.is-visible figcaption{opacity:1;transform:none}
 .case-motion .project-title{animation:case-title-in 1.3s both}
 .case-motion .case-summary{animation:case-title-in 1.4s .15s both}
 @keyframes case-title-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
}
@media(min-width:701px) and (hover:hover) and (prefers-reduced-motion:no-preference){
 .case-motion .motion-detail img{transform:scale(var(--motion-scale,1));transition:transform .16s linear}
}
@media(max-width:700px) and (prefers-reduced-motion:no-preference){
 .case-motion .case-enter{transform:translateY(18px);transition-duration:1.1s,1.3s}
 .case-motion .case-enter.is-visible{transform:none}
}
@media(prefers-reduced-motion:reduce){
 .case-motion *, .case-motion *::after{animation:none!important;transition:none!important}
}