.ah-motion-ready [data-ah-animate] {
  opacity: 0;
  transition: opacity var(--ah-transition-slow), transform var(--ah-transition-slow);
}
.ah-motion-ready [data-ah-animate="fade-up"] { transform: translateY(28px); }
.ah-motion-ready [data-ah-animate="fade-in"] { transform: none; }
.ah-motion-ready [data-ah-animate="reveal-left"] { transform: translateX(-32px); }
.ah-motion-ready [data-ah-animate="reveal-right"] { transform: translateX(32px); }
.ah-motion-ready [data-ah-animate].is-visible { opacity: 1; transform: none; }
[data-ah-stagger] > * { transition-delay: calc(var(--ah-index, 0) * 80ms); }
.ah-image-scale { overflow: hidden; }
.ah-image-scale img { transition: transform 800ms cubic-bezier(.2,.7,.2,1); }
.ah-image-scale:hover img { transform: scale(1.035); }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; }
  .ah-motion-ready [data-ah-animate] { opacity: 1; transform: none; }
}
