/**
 * Reduced Motion CSS Overrides
 * Applied when user has prefers-reduced-motion: reduce
 */

/* Media query for users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
    /* Disable all animations and transitions */
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        animation-delay: 0s !important;
        transition-delay: 0s !important;
    }
    
    /* Disable smooth scrolling */
    html {
        scroll-behavior: auto !important;
    }
    
    /* Force visibility for animated elements */
    .elementor-invisible,
    .animated,
    [class*="fadeIn"],
    [class*="slideIn"],
    [class*="zoomIn"],
    [data-aos] {
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
    }
    
    /* Disable parallax backgrounds */
    .elementor-parallax-yes {
        background-attachment: scroll !important;
    }
    
    /* Remove hover transforms */
    a:hover,
    button:hover,
    .elementor-button:hover,
    .elementor-widget:hover {
        transform: none !important;
    }
    
    /* Disable video autoplay */
    video[autoplay] {
        display: block;
    }
}

/* Additional overrides when body has reduced-motion class */
.reduced-motion {
    /* Disable Elementor entrance animations */
    .elementor-invisible {
        opacity: 1 !important;
        visibility: visible !important;
    }
    
    /* Disable specific animation classes */
    .fadeIn,
    .fadeInUp,
    .fadeInDown,
    .fadeInLeft,
    .fadeInRight,
    .slideIn,
    .slideInUp,
    .slideInDown,
    .slideInLeft,
    .slideInRight,
    .zoomIn,
    .zoomInUp,
    .zoomInDown,
    .zoomInLeft,
    .zoomInRight,
    .bounceIn,
    .rotateIn,
    .flipIn {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}