/* Disable Animations - Force Immediate Content Visibility */
/* This CSS file ensures all content is visible immediately without animation delays */
/* IMPORTANT: Excludes lightbox and other functional components that need animations */

/* Global animation disable rules with !important, excluding lightbox and functional components */
*:not(.lightbox):not(.lightboxOverlay):not(.lb-outerContainer):not(.lb-container):not(.lb-image):not(.lb-nav):not(.lb-loader):not(.lb-dataContainer):not(.lb-data):not(.lb-details):not(.lb-close):not(.lb-prev):not(.lb-next):not(.lb-cancel):not([id^="lightbox"]):not([class*="lightbox"]):not([class*="lb-"]) {
    animation-duration: 0s !important;
    animation-delay: 0s !important;
    transition-duration: 0s !important;
    transition-delay: 0s !important;
}

/* Force visibility for all elements that might be hidden by animation libraries */
[data-sal],
[data-aos], 
[data-wow],
[data-reveal],
.sal-animate,
.aos-animate,
.wow,
.sr-only:not(.sr-only-focusable),
.fade-in,
.fade-out,
.slide-in,
.slide-out,
.zoom-in,
.zoom-out {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
    display: block !important;
}

/* Specific forced visibility for common elements */
.card,
.service-card,
.team-member,
.gallery-item,
.hero-content,
section,
.col-md-6,
.col-lg-3,
.col-lg-4,
#hero h1,
#hero h2,
#hero p,
#hero img,
section h2,
section h3 {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
}

/* Remove lazy loading effects */
img[loading="lazy"],
img[data-src],
.lozad {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* Gallery and media elements */
.gallery-item,
.gallery img,
#gallery .col-md-4 {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
}

/* Team section elements */
#team .col-md-6,
#team .col-lg-4,
.team-member {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
}

/* Services section elements */
.service-card,
.service-item,
#services .card {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
}

/* Mobile devices - ensure visibility on all screen sizes, excluding lightbox */
@media (max-width: 768px) {
    *:not(.lightbox):not(.lightboxOverlay):not([class*="lightbox"]):not([class*="lb-"]):not([id^="lightbox"]) {
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        animation: none !important;
        transition: none !important;
    }
}

/* High contrast mode support, excluding lightbox */
@media (prefers-contrast: high) {
    *:not(.lightbox):not(.lightboxOverlay):not([class*="lightbox"]):not([class*="lb-"]):not([id^="lightbox"]) {
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
    }
}

/* Reduced motion respect but still ensure visibility, excluding lightbox */
@media (prefers-reduced-motion: reduce) {
    *:not(.lightbox):not(.lightboxOverlay):not([class*="lightbox"]):not([class*="lb-"]):not([id^="lightbox"]),
    *:not(.lightbox):not(.lightboxOverlay):not([class*="lightbox"]):not([class*="lb-"]):not([id^="lightbox"])::before,
    *:not(.lightbox):not(.lightboxOverlay):not([class*="lightbox"]):not([class*="lb-"]):not([id^="lightbox"])::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
    }
}

/* Ensure critical content is always visible */
.hero-section,
.about-section,
.services-section,
.team-section,
.gallery-section,
.contact-section,
.footer-section {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
}

/* Fix for elements that might be position: absolute and hidden, excluding lightbox */
[style*="opacity: 0"]:not(.lightbox):not(.lightboxOverlay):not([class*="lightbox"]):not([class*="lb-"]):not([id^="lightbox"]),
[style*="visibility: hidden"]:not(.lightbox):not(.lightboxOverlay):not([class*="lightbox"]):not([class*="lb-"]):not([id^="lightbox"]),
[style*="display: none"]:not(.lightbox):not(.lightboxOverlay):not([class*="lightbox"]):not([class*="lb-"]):not([id^="lightbox"]) {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
}

/* Lightbox functionality preservation - ensure proper animations work */
.lightbox,
.lightboxOverlay,
[id^="lightbox"],
[class*="lightbox"],
[class*="lb-"] {
    /* Allow lightbox to control its own animations and visibility */
    animation: inherit !important;
    transition: inherit !important;
    opacity: inherit !important;
    visibility: inherit !important;
    display: inherit !important;
    transform: inherit !important;
}

/* Ensure lightbox loader can be hidden when needed */
.lb-loader[style*="display: none"],
.lightbox[style*="display: none"],
.lightboxOverlay[style*="display: none"] {
    display: none !important;
}
