/**
 * =====================================================
 * AOS (Animate On Scroll) - Estilos Formateados
 * =====================================================
 */

/* ============ DURACIONES ============ */
[data-aos][data-aos-duration="50"],
body[data-aos-duration="50"] [data-aos] {
    transition-duration: 50ms;
}

[data-aos][data-aos-duration="100"],
body[data-aos-duration="100"] [data-aos] {
    transition-duration: 0.1s;
}

[data-aos][data-aos-duration="200"],
body[data-aos-duration="200"] [data-aos] {
    transition-duration: 0.2s;
}

[data-aos][data-aos-duration="300"],
body[data-aos-duration="300"] [data-aos] {
    transition-duration: 0.3s;
}

[data-aos][data-aos-duration="400"],
body[data-aos-duration="400"] [data-aos] {
    transition-duration: 0.4s;
}

[data-aos][data-aos-duration="500"],
body[data-aos-duration="500"] [data-aos] {
    transition-duration: 0.5s;
}

[data-aos][data-aos-duration="600"],
body[data-aos-duration="600"] [data-aos] {
    transition-duration: 0.6s;
}

[data-aos][data-aos-duration="700"],
body[data-aos-duration="700"] [data-aos] {
    transition-duration: 0.7s;
}

[data-aos][data-aos-duration="800"],
body[data-aos-duration="800"] [data-aos] {
    transition-duration: 0.8s;
}

[data-aos][data-aos-duration="900"],
body[data-aos-duration="900"] [data-aos] {
    transition-duration: 0.9s;
}

[data-aos][data-aos-duration="1000"],
body[data-aos-duration="1000"] [data-aos] {
    transition-duration: 1s;
}

[data-aos][data-aos-duration="1200"],
body[data-aos-duration="1200"] [data-aos] {
    transition-duration: 1.2s;
}

[data-aos][data-aos-duration="1500"],
body[data-aos-duration="1500"] [data-aos] {
    transition-duration: 1.5s;
}

[data-aos][data-aos-duration="2000"],
body[data-aos-duration="2000"] [data-aos] {
    transition-duration: 2s;
}

[data-aos][data-aos-duration="3000"],
body[data-aos-duration="3000"] [data-aos] {
    transition-duration: 3s;
}

/* ============ DELAYS ============ */
[data-aos][data-aos-delay="50"],
body[data-aos-delay="50"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="50"].aos-animate,
body[data-aos-delay="50"] [data-aos].aos-animate {
    transition-delay: 50ms;
}

[data-aos][data-aos-delay="100"],
body[data-aos-delay="100"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="100"].aos-animate,
body[data-aos-delay="100"] [data-aos].aos-animate {
    transition-delay: 0.1s;
}

[data-aos][data-aos-delay="200"],
body[data-aos-delay="200"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="200"].aos-animate,
body[data-aos-delay="200"] [data-aos].aos-animate {
    transition-delay: 0.2s;
}

[data-aos][data-aos-delay="300"],
body[data-aos-delay="300"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="300"].aos-animate,
body[data-aos-delay="300"] [data-aos].aos-animate {
    transition-delay: 0.3s;
}

[data-aos][data-aos-delay="400"],
body[data-aos-delay="400"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="400"].aos-animate,
body[data-aos-delay="400"] [data-aos].aos-animate {
    transition-delay: 0.4s;
}

[data-aos][data-aos-delay="500"],
body[data-aos-delay="500"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="500"].aos-animate,
body[data-aos-delay="500"] [data-aos].aos-animate {
    transition-delay: 0.5s;
}

[data-aos][data-aos-delay="600"],
body[data-aos-delay="600"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="600"].aos-animate,
body[data-aos-delay="600"] [data-aos].aos-animate {
    transition-delay: 0.6s;
}

[data-aos][data-aos-delay="700"],
body[data-aos-delay="700"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="700"].aos-animate,
body[data-aos-delay="700"] [data-aos].aos-animate {
    transition-delay: 0.7s;
}

[data-aos][data-aos-delay="800"],
body[data-aos-delay="800"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="800"].aos-animate,
body[data-aos-delay="800"] [data-aos].aos-animate {
    transition-delay: 0.8s;
}

[data-aos][data-aos-delay="900"],
body[data-aos-delay="900"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="900"].aos-animate,
body[data-aos-delay="900"] [data-aos].aos-animate {
    transition-delay: 0.9s;
}

[data-aos][data-aos-delay="1000"],
body[data-aos-delay="1000"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="1000"].aos-animate,
body[data-aos-delay="1000"] [data-aos].aos-animate {
    transition-delay: 1s;
}

[data-aos][data-aos-delay="1200"],
body[data-aos-delay="1200"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="1200"].aos-animate,
body[data-aos-delay="1200"] [data-aos].aos-animate {
    transition-delay: 1.2s;
}

[data-aos][data-aos-delay="1500"],
body[data-aos-delay="1500"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="1500"].aos-animate,
body[data-aos-delay="1500"] [data-aos].aos-animate {
    transition-delay: 1.5s;
}

[data-aos][data-aos-delay="2000"],
body[data-aos-delay="2000"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="2000"].aos-animate,
body[data-aos-delay="2000"] [data-aos].aos-animate {
    transition-delay: 2s;
}

[data-aos][data-aos-delay="3000"],
body[data-aos-delay="3000"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos-delay="3000"].aos-animate,
body[data-aos-delay="3000"] [data-aos].aos-animate {
    transition-delay: 3s;
}

/* ============ TIMING FUNCTIONS (EASING) ============ */
[data-aos][data-aos-easing="linear"],
body[data-aos-easing="linear"] [data-aos] {
    transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
}

[data-aos][data-aos-easing="ease"],
body[data-aos-easing="ease"] [data-aos] {
    transition-timing-function: ease;
}

[data-aos][data-aos-easing="ease-in"],
body[data-aos-easing="ease-in"] [data-aos] {
    transition-timing-function: ease-in;
}

[data-aos][data-aos-easing="ease-out"],
body[data-aos-easing="ease-out"] [data-aos] {
    transition-timing-function: ease-out;
}

[data-aos][data-aos-easing="ease-in-out"],
body[data-aos-easing="ease-in-out"] [data-aos] {
    transition-timing-function: ease-in-out;
}

[data-aos][data-aos-easing="ease-in-back"],
body[data-aos-easing="ease-in-back"] [data-aos] {
    transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
}

[data-aos][data-aos-easing="ease-out-back"],
body[data-aos-easing="ease-out-back"] [data-aos] {
    transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

[data-aos][data-aos-easing="ease-in-out-back"],
body[data-aos-easing="ease-in-out-back"] [data-aos] {
    transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

[data-aos][data-aos-easing="ease-in-sine"],
body[data-aos-easing="ease-in-sine"] [data-aos] {
    transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
}

[data-aos][data-aos-easing="ease-out-sine"],
body[data-aos-easing="ease-out-sine"] [data-aos] {
    transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
}

[data-aos][data-aos-easing="ease-in-out-sine"],
body[data-aos-easing="ease-in-out-sine"] [data-aos] {
    transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

[data-aos][data-aos-easing="ease-in-quad"],
body[data-aos-easing="ease-in-quad"] [data-aos] {
    transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

[data-aos][data-aos-easing="ease-out-quad"],
body[data-aos-easing="ease-out-quad"] [data-aos] {
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos][data-aos-easing="ease-in-out-quad"],
body[data-aos-easing="ease-in-out-quad"] [data-aos] {
    transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

[data-aos][data-aos-easing="ease-in-cubic"],
body[data-aos-easing="ease-in-cubic"] [data-aos] {
    transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

[data-aos][data-aos-easing="ease-out-cubic"],
body[data-aos-easing="ease-out-cubic"] [data-aos] {
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos][data-aos-easing="ease-in-out-cubic"],
body[data-aos-easing="ease-in-out-cubic"] [data-aos] {
    transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

/* ============ FADE ANIMATIONS ============ */
[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-right"] {
    transform: translate3d(-100px, 0, 0);
}

[data-aos="fade-left"] {
    transform: translate3d(100px, 0, 0);
}

[data-aos="fade-up-right"] {
    transform: translate3d(-100px, 100px, 0);
}

[data-aos="fade-up-left"] {
    transform: translate3d(100px, 100px, 0);
}

[data-aos="fade-down-right"] {
    transform: translate3d(-100px, -100px, 0);
}

[data-aos="fade-down-left"] {
    transform: translate3d(100px, -100px, 0);
}

/* ============ ZOOM ANIMATIONS ============ */
[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-in-up"] {
    transform: translate3d(0, 100px, 0) scale(0.6);
}

[data-aos="zoom-in-down"] {
    transform: translate3d(0, -100px, 0) scale(0.6);
}

[data-aos="zoom-in-right"] {
    transform: translate3d(-100px, 0, 0) scale(0.6);
}

[data-aos="zoom-in-left"] {
    transform: translate3d(100px, 0, 0) scale(0.6);
}

[data-aos="zoom-out"] {
    transform: scale(1.2);
}

[data-aos="zoom-out-up"] {
    transform: translate3d(0, 100px, 0) scale(1.2);
}

[data-aos="zoom-out-down"] {
    transform: translate3d(0, -100px, 0) scale(1.2);
}

[data-aos="zoom-out-right"] {
    transform: translate3d(-100px, 0, 0) scale(1.2);
}

[data-aos="zoom-out-left"] {
    transform: translate3d(100px, 0, 0) scale(1.2);
}

/* ============ SLIDE ANIMATIONS ============ */
[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-right"] {
    transform: translate3d(-100%, 0, 0);
}

[data-aos="slide-left"] {
    transform: translate3d(100%, 0, 0);
}

/* ============ FLIP ANIMATIONS ============ */
[data-aos^="flip"] {
    backface-visibility: hidden;
    transition-property: transform;
}

[data-aos="flip-left"] {
    transform: perspective(2500px) rotateY(-100deg);
}

[data-aos="flip-left"].aos-animate {
    transform: perspective(2500px) rotateY(0);
}

[data-aos="flip-right"] {
    transform: perspective(2500px) rotateY(100deg);
}

[data-aos="flip-right"].aos-animate {
    transform: perspective(2500px) rotateY(0);
}

[data-aos="flip-up"] {
    transform: perspective(2500px) rotateX(-100deg);
}

[data-aos="flip-up"].aos-animate {
    transform: perspective(2500px) rotateX(0);
}

[data-aos="flip-down"] {
    transform: perspective(2500px) rotateX(100deg);
}

[data-aos="flip-down"].aos-animate {
    transform: perspective(2500px) rotateX(0);
}
