/* =============================================
   HULYX STROBE ENGINE
   Version: 1.2.1 - Strict Viewport Clipping
   ============================================= */

#hulyx-strobe-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 9 !important;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    overflow: hidden;
}

/* Mobile : même contrainte hauteur que le swiper (footer 60px) */
@media (max-width: 767.98px) {
    #hulyx-strobe-container {
        height: calc(100dvh - 60px) !important;
        max-height: calc(100dvh - 60px) !important;
    }
}

/* Desktop : même width 9/16 centré que le swiper */
@media (min-width: 768px) {
    #hulyx-strobe-container {
        width: calc(100vh * 9 / 16) !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
    }
}

#hulyx-strobe-container.is-visible {
    opacity: 1; 
    pointer-events: auto;
}

.hulyx-strobe-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

  opacity: 0.7 !important;
    object-fit: cover;
    z-index: 1; /* Fond du container */
    pointer-events: none;
    transform: translateZ(0);
}

#strobeCanvas {
    position: absolute;
    inset: 0;
    z-index: 10; /* Texte par dessus la vidéo */
    pointer-events: none;
}

#hulyx-word-strobe-overlay {
    position: fixed; 
    inset: 0; 
    display: none; 
    justify-content: center; 
    align-items: center;
    z-index: 11; 
    pointer-events: none;
}

#hulyx-strobe-text {
    font-family: 'Montserrat', sans-serif; 
    font-weight: 900; 
    text-transform: uppercase;
    text-align: center; 
    font-size: clamp(30px, 12vmin, 160px); 
    color: #FFFFFF;
    -webkit-text-stroke: 15px #000000; 
    paint-order: stroke fill;
    text-shadow: 0 0 30px rgba(0,0,0,1);
}