/* --- FIX MENU 3° LIVELLO: APERTURA LATERALE (Universale) ---
   NOTA: questa regola era duplicata anche in frontend.css con selettori leggermente
   diversi (.re-fse-menu-wrapper ul li ul li invece di .sub-menu, e margin-top: 0
   invece di -12px). Le due versioni si sovrascrivevano a vicenda in modo silenzioso
   in base all'ordine di enqueue. Consolidato qui come unica fonte, unendo tutte le
   varianti di selettore incontrate in entrambi i file. */
@media (min-width: 992px) {
    /* 1. Reset strutturale: neutralizza i "display: flex" ereditati dai temi */
    .re-menu .sub-menu li,
    .main-navigation .sub-menu li,
    .re-fse-menu-wrapper .sub-menu li,
    .re-fse-menu-wrapper ul li ul li {
        position: relative !important;
        display: block !important;
        width: 100% !important;
    }

    /* 2. Mostra al passaggio del mouse */
    .re-menu .sub-menu li:hover > .sub-menu,
    .main-navigation .sub-menu li:hover > .sub-menu,
    .re-fse-menu-wrapper .sub-menu li:hover > .sub-menu,
    .re-fse-menu-wrapper ul li ul li:hover > ul {
        visibility: visible !important;
        opacity: 1 !important;
        display: block !important;
        pointer-events: auto !important;
    }

    /* 3. Posizionamento Laterale a Destra */
    .re-menu .sub-menu .sub-menu,
    .main-navigation .sub-menu .sub-menu,
    .re-fse-menu-wrapper .sub-menu .sub-menu,
    .re-fse-menu-wrapper ul li ul ul {
        top: 0 !important;
        left: 100% !important;
        position: absolute !important;
        margin-top: -12px !important; /* Compensa eventuali padding nativi del tema */
        visibility: hidden !important;
        opacity: 0 !important;
        transition: opacity 0.2s ease !important;
    }

    /* 4. Sicurezza contro i bordi dello schermo */
    .re-menu > li:nth-last-child(-n+2) .sub-menu .sub-menu,
    .main-navigation ul > li:nth-last-child(-n+2) .sub-menu .sub-menu,
    .re-fse-menu-wrapper ul > li:nth-last-child(-n+2) .sub-menu .sub-menu {
        left: -100% !important;
    }
}