/* Homepage scroll-reveal animations (replaces WOW.js + animate.css) */
.animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}

.wow {
  opacity: 0;
  visibility: hidden;
}

.wow.visible {
  visibility: visible;
  opacity: 1;
  animation-duration: 1s;
  animation-fill-mode: both;
}

.wow.fadeInLeft.visible { animation-name: fadeInLeft; }
.wow.fadeInRight.visible { animation-name: fadeInRight; }
.wow.fadeInUp.visible { animation-name: fadeInUp; }

@media (prefers-reduced-motion: reduce) {
  .wow {
    opacity: 1;
    visibility: visible;
    animation: none !important;
  }
}

@keyframes fadeInLeft {
  from { opacity: 0; transform: translateX(-20px); }
  to { opacity: 1; transform: translateX(0); }
}

@keyframes fadeInRight {
  from { opacity: 0; transform: translateX(20px); }
  to { opacity: 1; transform: translateX(0); }
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes slideInDown {
  from {
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}

.fadeInLeft { animation-name: fadeInLeft; }
.fadeInRight { animation-name: fadeInRight; }
.fadeInUp { animation-name: fadeInUp; }
.slideInDown { animation-name: slideInDown; }
