[data-aos] {
    opacity: 0;
    transition-property: opacity, transform;
    pointer-events: none;
}

[data-aos].aos-animate {
    opacity: 1;
    transform: translateZ(0);
    pointer-events: auto;
}

/* Fade animations */
[data-aos="fade-up"] {
    transform: translate3d(0, 30px, 0);
}

[data-aos="fade-down"] {
    transform: translate3d(0, -30px, 0);
}

[data-aos="fade-right"] {
    transform: translate3d(-30px, 0, 0);
}

[data-aos="fade-left"] {
    transform: translate3d(30px, 0, 0);
}

[data-aos="fade-up-right"] {
    transform: translate3d(-30px, 30px, 0);
}

[data-aos="fade-up-left"] {
    transform: translate3d(30px, 30px, 0);
}

[data-aos="fade-down-right"] {
    transform: translate3d(-30px, -30px, 0);
}

[data-aos="fade-down-left"] {
    transform: translate3d(30px, -30px, 0);
}

/* Zoom animations */
[data-aos="zoom-in"] {
    transform: scale3d(0.9, 0.9, 1);
}

[data-aos="zoom-in-up"] {
    transform: translate3d(0, 30px, 0) scale3d(0.9, 0.9, 1);
}

[data-aos="zoom-in-down"] {
    transform: translate3d(0, -30px, 0) scale3d(0.9, 0.9, 1);
}

[data-aos="zoom-in-right"] {
    transform: translate3d(-30px, 0, 0) scale3d(0.9, 0.9, 1);
}

[data-aos="zoom-in-left"] {
    transform: translate3d(30px, 0, 0) scale3d(0.9, 0.9, 1);
}

[data-aos="zoom-out"] {
    transform: scale3d(1.1, 1.1, 1);
}

[data-aos="zoom-out-up"] {
    transform: translate3d(0, 30px, 0) scale3d(1.1, 1.1, 1);
}

[data-aos="zoom-out-down"] {
    transform: translate3d(0, -30px, 0) scale3d(1.1, 1.1, 1);
}

[data-aos="zoom-out-right"] {
    transform: translate3d(-30px, 0, 0) scale3d(1.1, 1.1, 1);
}

[data-aos="zoom-out-left"] {
    transform: translate3d(30px, 0, 0) scale3d(1.1, 1.1, 1);
}

/* Flip animations */
[data-aos="flip-up"] {
    transform: perspective(2500px) rotateX(-100deg);
}

[data-aos="flip-down"] {
    transform: perspective(2500px) rotateX(100deg);
}

[data-aos="flip-right"] {
    transform: perspective(2500px) rotateY(-100deg);
}

[data-aos="flip-left"] {
    transform: perspective(2500px) rotateY(100deg);
}

/* Transition timing */
[data-aos] {
    transition-duration: 0.8s;
}

/* Delay classes */
[data-aos][data-aos-delay="100"] {
    transition-delay: 0.1s;
}

[data-aos][data-aos-delay="200"] {
    transition-delay: 0.2s;
}

[data-aos][data-aos-delay="300"] {
    transition-delay: 0.3s;
}

[data-aos][data-aos-delay="400"] {
    transition-delay: 0.4s;
}

[data-aos][data-aos-delay="500"] {
    transition-delay: 0.5s;
}

[data-aos][data-aos-delay="600"] {
    transition-delay: 0.6s;
}

[data-aos][data-aos-delay="700"] {
    transition-delay: 0.7s;
}

[data-aos][data-aos-delay="800"] {
    transition-delay: 0.8s;
}

[data-aos][data-aos-delay="900"] {
    transition-delay: 0.9s;
}

[data-aos][data-aos-delay="1000"] {
    transition-delay: 1s;
}

/* For when animations are disabled */
@media screen and (prefers-reduced-motion: reduce) {
    [data-aos] {
        transition-duration: 0s !important;
        transform: none !important;
        opacity: 1 !important;
    }
} 