/* ================================================================
   HERO SLIDER ANIMATIONS - ALL IN ONE PREMIUM 2026
   WOW Effect: Replay on every slide change
   ================================================================ */

/* Keyframes for spectacular animations */
@keyframes heroTaglineSlide {
    0% {
        opacity: 0;
        transform: translateX(-100px);
        filter: blur(10px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
        filter: blur(0);
    }
}

@keyframes heroTitleZoom {
    0% {
        opacity: 0;
        transform: scale(1.3) translateY(50px);
        filter: blur(15px);
    }

    100% {
        opacity: 1;
        transform: scale(1) translateY(0);
        filter: blur(0);
    }
}

@keyframes heroButtonPop {
    0% {
        opacity: 0;
        transform: translateY(40px) scale(0.8);
    }

    60% {
        transform: translateY(-5px) scale(1.05);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Active slide - animate and show! */
.swiper-slide-active .main-slider__content p,
.swiper-slide-active .main-slider__content h2,
.swiper-slide-active .main-slider__content .thm-btn {
    opacity: 1 !important;
}

.swiper-slide-active .main-slider__content p {
    animation: heroTaglineSlide 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards !important;
    animation-delay: 0.3s !important;
}

.swiper-slide-active .main-slider__content h2 {
    animation: heroTitleZoom 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards !important;
    animation-delay: 0.5s !important;
}

.swiper-slide-active .main-slider__content .thm-btn {
    animation: heroButtonPop 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) forwards !important;
    animation-delay: 0.9s !important;
}

/* Non-active slides - hide content */
.swiper-slide:not(.swiper-slide-active) .main-slider__content p,
.swiper-slide:not(.swiper-slide-active) .main-slider__content h2,
.swiper-slide:not(.swiper-slide-active) .main-slider__content .thm-btn {
    opacity: 0 !important;
    animation: none !important;
}

/* EXCEPTION: Header button should always be visible */
.main-menu-wrapper__right-contact-number .thm-btn {
    opacity: 1 !important;
    animation: none !important;
}

/* Styling for the animated elements */
.main-slider__content p {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 20px !important;
    background: rgba(0, 0, 0, 0.6) !important;
    border-left: 4px solid #E30613 !important;
    border-radius: 4px !important;
    color: #fff !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    margin-bottom: 25px !important;
    backdrop-filter: blur(10px) !important;
}

.main-slider__content h2 {
    font-size: 2.8rem !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    color: #fff !important;
    margin-bottom: 30px !important;
    text-shadow: 0 10px 40px rgba(0, 0, 0, 0.6) !important;
    letter-spacing: -0.5px !important;
}

.main-slider__content .thm-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 16px 35px !important;
    background: #E30613 !important;
    color: #fff !important;
    border-radius: 5px !important;
    font-weight: 700 !important;
    font-size: 0.9rem !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    box-shadow: 0 15px 30px rgba(227, 6, 19, 0.4) !important;
    border: none !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.main-slider__content .thm-btn:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 20px 40px rgba(227, 6, 19, 0.5) !important;
}