/* Homepage 02–04 only. Content is visible without JS; no layout/scroll changes.
   Individual translate/scale avoid overriding carousel and hover transforms. */
.home-page [data-scroll-enter].is-scroll-ready {
  --enter-delay: 0ms;
  --enter-x: 0px;
  --enter-y: 32px;
  --enter-scale: 1;
  opacity: 0;
  translate: var(--enter-x) var(--enter-y);
  scale: var(--enter-scale);
  transition: opacity 700ms ease, translate 1100ms cubic-bezier(.2,.7,.2,1),
    scale 1100ms cubic-bezier(.2,.7,.2,1), border-color 250ms ease, box-shadow 250ms ease;
  transition-delay: 0ms;
}
.home-page [data-scroll-enter="capability"].is-scroll-ready { --enter-x: -32px; --enter-y: 18px; }
.home-page [data-scroll-enter="gallery"].is-scroll-ready { --enter-y: 44px; --enter-scale: .975; }
.home-page [data-scroll-enter="step"].is-scroll-ready { --enter-y: 38px; }
.home-page [data-scroll-enter].is-scroll-ready.is-scroll-visible {
  opacity: 1;
  translate: 0 0;
  scale: 1;
  transition-delay: var(--enter-delay), var(--enter-delay), var(--enter-delay), 0ms, 0ms;
}
@media (min-width: 601px) {
  .home-page [data-scroll-enter="capability"]:nth-child(2),
  .home-page [data-scroll-enter="step"]:nth-child(2) { --enter-delay: 150ms; }
  .home-page [data-scroll-enter="capability"]:nth-child(3),
  .home-page [data-scroll-enter="step"]:nth-child(3) { --enter-delay: 300ms; }
  .home-page [data-scroll-enter="capability"]:nth-child(4),
  .home-page [data-scroll-enter="step"]:nth-child(4) { --enter-delay: 450ms; }
}
@media (min-width: 601px) and (max-width: 1100px) {
  .home-page [data-scroll-enter="step"]:nth-child(3) { --enter-delay: 0ms; }
  .home-page [data-scroll-enter="step"]:nth-child(4) { --enter-delay: 150ms; }
}
@media (min-width: 601px) and (max-width: 1080px) {
  .home-page [data-scroll-enter="capability"]:nth-child(3) { --enter-delay: 0ms; }
  .home-page [data-scroll-enter="capability"]:nth-child(4) { --enter-delay: 150ms; }
}
@media (max-width: 600px) {
  .home-page [data-scroll-enter="capability"].is-scroll-ready { --enter-x: -18px; --enter-y: 12px; }
  .home-page [data-scroll-enter="gallery"].is-scroll-ready { --enter-y: 26px; --enter-scale: .99; }
}
.home-page [data-scroll-enter].is-scroll-ready:focus-within {
  opacity: 1; translate: none; scale: none; transition: none;
}
@media (prefers-reduced-motion: reduce) {
  .home-page [data-scroll-enter].is-scroll-ready {
    opacity: 1; translate: none; scale: none; transition: none;
  }
}
