/* ============================================================
   IVolt LLC — Animations
   Uses [data-aos] attribute + .is-visible class toggled by JS.
   Avoids any external animation library dependency.
   ============================================================ */

/* Base state: hidden */
[data-aos] {
  opacity: 0;
  transition: opacity 0.55s ease, transform 0.55s ease;
}

/* Directional variants */
[data-aos="fade-up"]    { transform: translateY(28px); }
[data-aos="fade-down"]  { transform: translateY(-28px); }
[data-aos="fade-left"]  { transform: translateX(28px); }
[data-aos="fade-right"] { transform: translateX(-28px); }
[data-aos="fade"]       { transform: none; }
[data-aos="zoom-in"]    { transform: scale(0.94); }

/* Stagger delays — apply via data-delay="Nms" using inline style */
/* Or use utility classes: */
.delay-1 { transition-delay: 100ms; }
.delay-2 { transition-delay: 200ms; }
.delay-3 { transition-delay: 300ms; }
.delay-4 { transition-delay: 400ms; }
.delay-5 { transition-delay: 500ms; }

/* Visible state */
[data-aos].is-visible {
  opacity: 1;
  transform: none;
}

/* Respect prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {
  [data-aos] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}
