/**
 * AOS - Animate On Scroll Library - Versão Otimizada
 * Corrige problemas de parsing no Firefox e melhora performance
 */

/* Configurações base */
[data-aos] {
  pointer-events: none;
}

[data-aos].aos-animate {
  pointer-events: auto;
}

/* Durações padrão otimizadas */
[data-aos][data-aos-duration="300"] { transition-duration: 0.3s; }
[data-aos][data-aos-duration="600"] { transition-duration: 0.6s; }
[data-aos][data-aos-duration="900"] { transition-duration: 0.9s; }
[data-aos][data-aos-duration="1000"] { transition-duration: 1s; }
[data-aos][data-aos-duration="1200"] { transition-duration: 1.2s; }

/* Delays padrão otimizados */
[data-aos][data-aos-delay="100"] { transition-delay: 0s; }
[data-aos][data-aos-delay="200"] { transition-delay: 0s; }
[data-aos][data-aos-delay="300"] { transition-delay: 0s; }

[data-aos][data-aos-delay="100"].aos-animate { transition-delay: 0.1s; }
[data-aos][data-aos-delay="200"].aos-animate { transition-delay: 0.2s; }
[data-aos][data-aos-delay="300"].aos-animate { transition-delay: 0.3s; }

/* Easing functions */
[data-aos][data-aos-easing="ease"] { transition-timing-function: ease; }
[data-aos][data-aos-easing="ease-in-out"] { transition-timing-function: ease-in-out; }
[data-aos][data-aos-easing="ease-out"] { transition-timing-function: ease-out; }

/* Animações Fade */
[data-aos^="fade"] {
  opacity: 0;
  transition-property: opacity, transform;
}

[data-aos^="fade"].aos-animate {
  opacity: 1;
  transform: translateZ(0);
}

[data-aos="fade-up"] { transform: translate3d(0, 100px, 0); }
[data-aos="fade-down"] { transform: translate3d(0, -100px, 0); }
[data-aos="fade-left"] { transform: translate3d(100px, 0, 0); }
[data-aos="fade-right"] { transform: translate3d(-100px, 0, 0); }

/* Animações Zoom */
[data-aos^="zoom"] {
  opacity: 0;
  transition-property: opacity, transform;
}

[data-aos^="zoom"].aos-animate {
  opacity: 1;
  transform: translateZ(0) scale(1);
}

[data-aos="zoom-in"] { transform: scale(0.6); }
[data-aos="zoom-out"] { transform: scale(1.2); }

/* Animações Slide */
[data-aos^="slide"] {
  transition-property: transform;
}

[data-aos^="slide"].aos-animate {
  transform: translateZ(0);
}

[data-aos="slide-up"] { transform: translate3d(0, 100%, 0); }
[data-aos="slide-down"] { transform: translate3d(0, -100%, 0); }
[data-aos="slide-left"] { transform: translate3d(100%, 0, 0); }
[data-aos="slide-right"] { transform: translate3d(-100%, 0, 0); }

/* Performance optimizations */
[data-aos] {
  will-change: transform, opacity;
}

/* Disable animations on reduced motion preference */
@media (prefers-reduced-motion: reduce) {
  [data-aos] {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* Fallback para navegadores antigos */
@supports not (transform: translateZ(0)) {
  [data-aos] {
    opacity: 1 !important;
    transform: none !important;
  }
}
