/* Video di sfondo del menu (leggermente sfocato, gia' sfocato nel file video).
   Il livello viene creato da menu.js solo alla prima apertura del menu. */
#menu-overlay.bm-menu-has-video {
    background: #050505;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}
#menu-overlay .bm-menu-video {
    position: fixed;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
    background: #050505 center / cover no-repeat;
}
#menu-overlay .bm-menu-video video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transform: scale(1.08);
    transition: opacity 1.2s ease, transform 8s cubic-bezier(0.16, 1, 0.3, 1);
}
#menu-overlay .bm-menu-video.is-playing video { opacity: 1; }
#menu-overlay.open .bm-menu-video video { transform: scale(1.03); }
/* Velatura scura: piu' intensa a sinistra dove ci sono le voci del menu. */
#menu-overlay .bm-menu-video::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(3, 4, 3, 0.8) 0%, rgba(3, 4, 3, 0.58) 48%, rgba(3, 4, 3, 0.42) 100%),
        radial-gradient(ellipse at 50% 50%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.45) 100%);
}
#menu-overlay.bm-menu-has-video .menu-inner { position: relative; z-index: 1; }
#menu-overlay.bm-menu-has-video .menu-link { text-shadow: 0 1px 18px rgba(0, 0, 0, 0.55); }
/* Intestazione senza fascia netta: sfuma nel video. */
body:has(#menu-overlay.open) #main-nav.bm-nav-over-video {
    background: linear-gradient(180deg, rgba(3, 4, 3, 0.7) 0%, rgba(3, 4, 3, 0) 100%);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}
@media (max-width: 768px) {
    /* Sul telefono le voci scorrono sotto l'intestazione: vetro sfocato. */
    body:has(#menu-overlay.open) #main-nav.bm-nav-over-video {
        background: rgba(3, 4, 3, 0.55);
        -webkit-backdrop-filter: blur(12px);
        backdrop-filter: blur(12px);
    }
    #menu-overlay .bm-menu-video::after {
        background: linear-gradient(180deg, rgba(3, 4, 3, 0.66) 0%, rgba(3, 4, 3, 0.56) 100%);
    }
}
@media (prefers-reduced-motion: reduce) {
    #menu-overlay .bm-menu-video video { transition: none; transform: none; }
}
