:root{--premium-ease:cubic-bezier(.22,1,.36,1)}
body{opacity:0;transition:opacity .42s ease}
body.premium-ready{opacity:1}

.hero-media,.section-motion{overflow:hidden}
.hero-media img,.subhero-motion .section-motion img{transform:scale(1.045);filter:saturate(.88) contrast(1.035);transition:transform 2.2s var(--premium-ease),filter 1.5s ease!important}
.premium-ready .hero-media img,.premium-ready .subhero-motion .section-motion img{transform:scale(1);filter:saturate(1) contrast(1)}
.hero-content>* ,.subhero-motion .wrap>*{opacity:0;transform:translateY(22px);transition:opacity .9s var(--premium-ease),transform .9s var(--premium-ease)}
.premium-ready .hero-content>* ,.premium-ready .subhero-motion .wrap>*{opacity:1;transform:none}
.premium-ready .hero-content>*:nth-child(1),.premium-ready .subhero-motion .wrap>*:nth-child(1){transition-delay:.12s}
.premium-ready .hero-content>*:nth-child(2),.premium-ready .subhero-motion .wrap>*:nth-child(2){transition-delay:.22s}
.premium-ready .hero-content>*:nth-child(3),.premium-ready .subhero-motion .wrap>*:nth-child(3){transition-delay:.32s}
.premium-ready .hero-content>*:nth-child(4),.premium-ready .subhero-motion .wrap>*:nth-child(4){transition-delay:.42s}

.reveal{transition-delay:var(--reveal-delay,0ms)!important}
.proj-card{isolation:isolate}
.proj-card::after{content:"View project  ↗";position:absolute;right:18px;top:18px;z-index:3;padding:9px 12px;background:rgba(17,19,14,.82);color:#fff;font:600 9px 'Space Grotesk',sans-serif;letter-spacing:.13em;text-transform:uppercase;opacity:0;transform:translateY(7px);transition:opacity .35s ease,transform .45s var(--premium-ease);backdrop-filter:blur(8px)}
.proj-card:hover::after,.proj-card:focus-visible::after{opacity:1;transform:none}
.proj-card .proj-overlay{transition:background .55s ease,padding .55s var(--premium-ease)}
.proj-card:hover .proj-overlay{padding-bottom:36px;background:linear-gradient(180deg,transparent 35%,rgba(10,11,8,.92))}

.cs-full,.cs-gallery .g-img,.team-collage{overflow:hidden}
.cs-full img,.cs-gallery .g-img img,.team-collage img{transition:transform 1.2s var(--premium-ease),filter .7s ease}
.cs-full:hover img,.cs-gallery .g-img:hover img{transform:scale(1.012);filter:saturate(1.035)}
.cs-body{padding:28px 0;margin-top:0!important;border-top:1px solid var(--line)}
.cs-full+.cs-body{margin-top:52px!important}
.cs-body h3{position:static}
.next-project{position:relative;overflow:hidden;transition:background .4s ease,color .4s ease}
.next-project::after{content:"";position:absolute;inset:0;background:rgba(255,255,255,.08);transform:translateX(-102%);transition:transform .65s var(--premium-ease)}
.next-project:hover::after{transform:translateX(0)}

@media(max-width:760px){
  .proj-card::after{display:none}
  .cs-body{padding:24px 0}
  .cs-full+.cs-body{margin-top:36px!important}
  .hero-media img,.subhero-motion .section-motion img{transform:scale(1.025)}
}
@media(prefers-reduced-motion:reduce){
  body{opacity:1!important}
  .hero-content>* ,.subhero-motion .wrap>*{opacity:1!important;transform:none!important}
  .hero-media img,.subhero-motion .section-motion img{transform:none!important;filter:none!important}
}
