/* Bendi Glass V41 — subtle premium motion layer */
:root{--motion-ease:cubic-bezier(.22,.61,.36,1)}

/* Only JS-enhanced pages begin with reveal states, preventing no-JS hidden content. */
.motion-ready .motion-reveal{
  opacity:0;
  transform:translate3d(0,22px,0);
  transition:opacity .72s var(--motion-ease),transform .72s var(--motion-ease);
  will-change:opacity,transform;
}
.motion-ready .motion-reveal.motion-visible{opacity:1;transform:translate3d(0,0,0)}

/* Stagger reusable groups very lightly. */
.motion-ready .cards>.motion-reveal:nth-child(2),
.motion-ready .area-grid>.motion-reveal:nth-child(2),
.motion-ready .steps>.motion-reveal:nth-child(2),
.motion-ready .why-list>.motion-reveal:nth-child(2),
.motion-ready .trustgrid>.motion-reveal:nth-child(2){transition-delay:.07s}
.motion-ready .cards>.motion-reveal:nth-child(3),
.motion-ready .area-grid>.motion-reveal:nth-child(3),
.motion-ready .steps>.motion-reveal:nth-child(3),
.motion-ready .why-list>.motion-reveal:nth-child(3),
.motion-ready .trustgrid>.motion-reveal:nth-child(3){transition-delay:.14s}
.motion-ready .trustgrid>.motion-reveal:nth-child(4){transition-delay:.21s}

/* Premium hover treatment — movement is restrained. */
.card,.area,.step,.reason,.portfolio-grid figure,.gallery-card,.style-card{
  transition:transform .34s var(--motion-ease),box-shadow .34s var(--motion-ease),border-color .34s ease;
}
@media (hover:hover) and (pointer:fine){
  .card:hover,.area:hover,.step:hover,.reason:hover,.gallery-card:hover,.style-card:hover{
    transform:translateY(-5px);
    box-shadow:0 18px 42px rgba(23,36,45,.10);
  }
  .portfolio-grid figure:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(23,36,45,.12)}
  .card-media img,.portfolio-grid img,.gallery-card img,.style-card img{
    transition:transform .75s var(--motion-ease);
  }
  .card:hover .card-media img,.portfolio-grid figure:hover img,.gallery-card:hover img,.style-card:hover img{
    transform:scale(1.025);
  }
  .btn{transition:transform .24s var(--motion-ease),box-shadow .24s ease,background-color .24s ease,border-color .24s ease}
  .btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(23,36,45,.13)}
  .learn,.hero-service-link{transition:opacity .22s ease,transform .22s var(--motion-ease)}
  .learn:hover,.hero-service-link:hover{opacity:.78}
}

/* Hero depth: image gets a few extra pixels so the tiny scroll translation never exposes edges. */
.hero-visual img{transform:scale(1.018) translate3d(0,var(--hero-shift,0px),0);transition:transform .12s linear;will-change:transform}
.hero-visual{isolation:isolate}
.hero-badge,.mock{z-index:2}

/* Accessibility and battery-friendly fallback. */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  .motion-ready .motion-reveal{opacity:1!important;transform:none!important;transition:none!important}
  .card,.area,.step,.reason,.portfolio-grid figure,.gallery-card,.style-card,.card-media img,.portfolio-grid img,.gallery-card img,.style-card img,.btn,.learn,.hero-service-link,.hero-visual img{transition:none!important;transform:none!important}
}
@media(max-width:700px){
  .hero-visual img{transform:none!important}
}
