/* Custom AOS Animations - Professional with smooth scroll-out */
[data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: transform, opacity;
}

/* Fade Right - Slide in from left */
[data-aos="fade-right"] {
  opacity: 0;
  transform: translateX(-60px);
  transition-property: transform, opacity;
}

[data-aos="fade-right"].aos-animate {
  opacity: 1;
  transform: translateX(0);
}

/* Fade Left - Slide in from right */
[data-aos="fade-left"] {
  opacity: 0;
  transform: translateX(60px);
  transition-property: transform, opacity;
}

[data-aos="fade-left"].aos-animate {
  opacity: 1;
  transform: translateX(0);
}

/* Fade Up - Slide in from bottom */
[data-aos="fade-up"] {
  opacity: 0;
  transform: translateY(60px);
  transition-property: transform, opacity;
}

[data-aos="fade-up"].aos-animate {
  opacity: 1;
  transform: translateY(0);
}

/* Fade Down - Slide in from top */
[data-aos="fade-down"] {
  opacity: 0;
  transform: translateY(-60px);
  transition-property: transform, opacity;
}

[data-aos="fade-down"].aos-animate {
  opacity: 1;
  transform: translateY(0);
}

/* Zoom In */
[data-aos="zoom-in"] {
  opacity: 0;
  transform: scale(0.9);
  transition-property: transform, opacity;
}

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

/* Flip Left - 3D effect */
[data-aos="flip-left"] {
  opacity: 0;
  transform: perspective(2500px) rotateY(-100deg);
  transition-property: transform, opacity;
}

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

/* Flip Right - 3D effect */
[data-aos="flip-right"] {
  opacity: 0;
  transform: perspective(2500px) rotateY(100deg);
  transition-property: transform, opacity;
}

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

/* Staggered animations for cards */
.project-dummy-card[data-aos],
.service-card-large[data-aos],
.team-card[data-aos],
.about-card[data-aos],
.feature-card[data-aos],
.service-card[data-aos] {
  transition-timing-function: cubic-bezier(0.2, 0.9, 0.4, 1.1);
}

/* Ensure smooth scroll-out animation */
[data-aos][data-aos-once="false"] {
  transition-duration: 600ms;
}

[data-aos][data-aos-once="false"].aos-animate {
  transition-duration: 600ms;
}

/* Different durations for different elements */
[data-aos-duration="400"] {
  transition-duration: 400ms;
}

[data-aos-duration="500"] {
  transition-duration: 500ms;
}

[data-aos-duration="600"] {
  transition-duration: 600ms;
}

[data-aos-duration="700"] {
  transition-duration: 700ms;
}

[data-aos-duration="800"] {
  transition-duration: 800ms;
}

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