/* AOS Fix CSS - Ensures animations work correctly on all devices */

/* Reset animations to ensure consistent behavior */
[data-aos] {
  pointer-events: none;
}
[data-aos].aos-animate {
  pointer-events: auto;
}

/* Fix animation initial states */
[data-aos][data-aos][data-aos-duration="50"] {
  transition-duration: 50ms;
}
[data-aos][data-aos][data-aos-duration="100"] {
  transition-duration: 100ms;
}
[data-aos][data-aos][data-aos-duration="150"] {
  transition-duration: 150ms;
}
[data-aos][data-aos][data-aos-duration="200"] {
  transition-duration: 200ms;
}
[data-aos][data-aos][data-aos-duration="250"] {
  transition-duration: 250ms;
}
[data-aos][data-aos][data-aos-duration="300"] {
  transition-duration: 300ms;
}
[data-aos][data-aos][data-aos-duration="350"] {
  transition-duration: 350ms;
}
[data-aos][data-aos][data-aos-duration="400"] {
  transition-duration: 400ms;
}
[data-aos][data-aos][data-aos-duration="450"] {
  transition-duration: 450ms;
}
[data-aos][data-aos][data-aos-duration="500"] {
  transition-duration: 500ms;
}
[data-aos][data-aos][data-aos-duration="550"] {
  transition-duration: 550ms;
}
[data-aos][data-aos][data-aos-duration="600"] {
  transition-duration: 600ms;
}
[data-aos][data-aos][data-aos-duration="650"] {
  transition-duration: 650ms;
}
[data-aos][data-aos][data-aos-duration="700"] {
  transition-duration: 700ms;
}
[data-aos][data-aos][data-aos-duration="750"] {
  transition-duration: 750ms;
}
[data-aos][data-aos][data-aos-duration="800"] {
  transition-duration: 800ms;
}
[data-aos][data-aos][data-aos-duration="850"] {
  transition-duration: 850ms;
}
[data-aos][data-aos][data-aos-duration="900"] {
  transition-duration: 900ms;
}
[data-aos][data-aos][data-aos-duration="950"] {
  transition-duration: 950ms;
}
[data-aos][data-aos][data-aos-duration="1000"] {
  transition-duration: 1000ms;
}
[data-aos][data-aos][data-aos-duration="1050"] {
  transition-duration: 1050ms;
}
[data-aos][data-aos][data-aos-duration="1100"] {
  transition-duration: 1100ms;
}
[data-aos][data-aos][data-aos-duration="1150"] {
  transition-duration: 1150ms;
}
[data-aos][data-aos][data-aos-duration="1200"] {
  transition-duration: 1200ms;
}
[data-aos][data-aos][data-aos-duration="1250"] {
  transition-duration: 1250ms;
}
[data-aos][data-aos][data-aos-duration="1300"] {
  transition-duration: 1300ms;
}
[data-aos][data-aos][data-aos-duration="1350"] {
  transition-duration: 1350ms;
}
[data-aos][data-aos][data-aos-duration="1400"] {
  transition-duration: 1400ms;
}
[data-aos][data-aos][data-aos-duration="1450"] {
  transition-duration: 1450ms;
}
[data-aos][data-aos][data-aos-duration="1500"] {
  transition-duration: 1500ms;
}
[data-aos][data-aos][data-aos-duration="1550"] {
  transition-duration: 1550ms;
}
[data-aos][data-aos][data-aos-duration="1600"] {
  transition-duration: 1600ms;
}
[data-aos][data-aos][data-aos-duration="1650"] {
  transition-duration: 1650ms;
}
[data-aos][data-aos][data-aos-duration="1700"] {
  transition-duration: 1700ms;
}
[data-aos][data-aos][data-aos-duration="1750"] {
  transition-duration: 1750ms;
}
[data-aos][data-aos][data-aos-duration="1800"] {
  transition-duration: 1800ms;
}
[data-aos][data-aos][data-aos-duration="1850"] {
  transition-duration: 1850ms;
}
[data-aos][data-aos][data-aos-duration="1900"] {
  transition-duration: 1900ms;
}
[data-aos][data-aos][data-aos-duration="1950"] {
  transition-duration: 1950ms;
}
[data-aos][data-aos][data-aos-duration="2000"] {
  transition-duration: 2000ms;
}
[data-aos][data-aos][data-aos-duration="2050"] {
  transition-duration: 2050ms;
}
[data-aos][data-aos][data-aos-duration="2100"] {
  transition-duration: 2100ms;
}
[data-aos][data-aos][data-aos-duration="2150"] {
  transition-duration: 2150ms;
}
[data-aos][data-aos][data-aos-duration="2200"] {
  transition-duration: 2200ms;
}
[data-aos][data-aos][data-aos-duration="2250"] {
  transition-duration: 2250ms;
}
[data-aos][data-aos][data-aos-duration="2300"] {
  transition-duration: 2300ms;
}
[data-aos][data-aos][data-aos-duration="2350"] {
  transition-duration: 2350ms;
}
[data-aos][data-aos][data-aos-duration="2400"] {
  transition-duration: 2400ms;
}
[data-aos][data-aos][data-aos-duration="2450"] {
  transition-duration: 2450ms;
}
[data-aos][data-aos][data-aos-duration="2500"] {
  transition-duration: 2500ms;
}
[data-aos][data-aos][data-aos-duration="2550"] {
  transition-duration: 2550ms;
}
[data-aos][data-aos][data-aos-duration="2600"] {
  transition-duration: 2600ms;
}
[data-aos][data-aos][data-aos-duration="2650"] {
  transition-duration: 2650ms;
}
[data-aos][data-aos][data-aos-duration="2700"] {
  transition-duration: 2700ms;
}
[data-aos][data-aos][data-aos-duration="2750"] {
  transition-duration: 2750ms;
}
[data-aos][data-aos][data-aos-duration="2800"] {
  transition-duration: 2800ms;
}
[data-aos][data-aos][data-aos-duration="2850"] {
  transition-duration: 2850ms;
}
[data-aos][data-aos][data-aos-duration="2900"] {
  transition-duration: 2900ms;
}
[data-aos][data-aos][data-aos-duration="2950"] {
  transition-duration: 2950ms;
}
[data-aos][data-aos][data-aos-duration="3000"] {
  transition-duration: 3000ms;
}

/* Explicit animation styles */
[data-aos] {
  pointer-events: none;
}
[data-aos].aos-animate {
  pointer-events: auto;
}

/* Additional fixes for different animations */
[data-aos="fade-up"] {
  transform: translate3d(0, 30px, 0);
  opacity: 0;
  transition-property: transform, opacity;
}
[data-aos="fade-up"].aos-animate {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

[data-aos="fade-down"] {
  transform: translate3d(0, -30px, 0);
  opacity: 0;
  transition-property: transform, opacity;
}
[data-aos="fade-down"].aos-animate {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

[data-aos="fade-right"] {
  transform: translate3d(-30px, 0, 0);
  opacity: 0;
  transition-property: transform, opacity;
}
[data-aos="fade-right"].aos-animate {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

[data-aos="fade-left"] {
  transform: translate3d(30px, 0, 0);
  opacity: 0;
  transition-property: transform, opacity;
}
[data-aos="fade-left"].aos-animate {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

[data-aos="zoom-in"] {
  transform: scale(0.9);
  opacity: 0;
  transition-property: transform, opacity;
}
[data-aos="zoom-in"].aos-animate {
  transform: scale(1);
  opacity: 1;
}

[data-aos="zoom-in-up"] {
  transform: translate3d(0, 30px, 0) scale(0.9);
  opacity: 0;
  transition-property: transform, opacity;
}
[data-aos="zoom-in-up"].aos-animate {
  transform: translate3d(0, 0, 0) scale(1);
  opacity: 1;
}

[data-aos="flip-left"] {
  transform: perspective(2500px) rotateY(90deg);
  opacity: 0;
  transition-property: transform, opacity;
}
[data-aos="flip-left"].aos-animate {
  transform: perspective(2500px) rotateY(0);
  opacity: 1;
}

[data-aos="flip-right"] {
  transform: perspective(2500px) rotateY(-90deg);
  opacity: 0;
  transition-property: transform, opacity;
}
[data-aos="flip-right"].aos-animate {
  transform: perspective(2500px) rotateY(0);
  opacity: 1;
}

/* Force hardware acceleration */
[data-aos] {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform, opacity;
}

/* Fix nested animations */
[data-aos] [data-aos] {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* Specifically targeting mobile and desktop separately */
@media screen and (max-width: 768px) {
  [data-aos] {
    transition-duration: 600ms !important; /* Slightly faster on mobile */
  }
}

@media screen and (min-width: 769px) {
  [data-aos] {
    transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275) !important; /* More pronounced easing on desktop */
  }
} 