/* =========================================================
   NOTEOLVIDES - MENU PRINCIPAL ESTILO MBUX
   CSS COMÚN PARA TODAS LAS PÁGINAS
   Basado exactamente en el CSS confirmado en PLANES.
   ========================================================= */

/* ============================================================
   BASE DEL MENÚ
   ============================================================ */

.st_mega_menu_container{
    width:100%;
    position:relative;
    z-index:9999;
    padding-top:14px;
    background:
        linear-gradient(
            180deg,
            rgba(5,10,18,.99),
            rgba(2,7,13,.99)
        );
    box-shadow:0 10px 28px rgba(0,0,0,.28);
    border-bottom:1px solid rgba(255,106,0,.20);
}

#st_mega_menu_header_container{
    width:min(1380px,calc(100% - 28px));
    margin:0 auto;
    display:flex;
    align-items:center;
    gap:22px;
}

#st_mega_menu_wrap{
    flex:1 1 auto;
    width:auto;
    margin:0;
}

#st_mega_menu_wrap .st_mega_menu{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:16px;
    margin:31px;
    padding:0;
    list-style:none;
}

#st_mega_menu_wrap .ml_level_0{
    position:relative;
    margin:0;
    padding:0;
    list-style:none;
}

#st_mega_menu_wrap .ma_level_0{
    position:relative;
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0 18px;
    color:#f4f6f8;
    font-size:19px;
    font-weight:800;
    letter-spacing:.7px;
    text-transform:uppercase;
    transition:.22s ease;
    text-decoration:none;
}

#st_mega_menu_wrap .ma_level_0:hover{
    color:#fff;
    background:rgba(255,106,0,.045);
}

#st_mega_menu_wrap .ma_level_0::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:7px;
    width:0;
    height:2px;
    transform:translateX(-50%);
    background:#ff6a00;
    border-radius:2px;
    box-shadow:0 0 10px rgba(255,106,0,.38);
    transition:width .22s ease;
}

#st_mega_menu_wrap .ma_level_0:hover::after{
    width:42%;
}

/* Página actual */
#st_mega_menu_wrap .ma_level_0.nto-menu-active::after{
    width:42%;
}

/* CONTACTO */
#st_ma_7 .mail-icon{
    margin-right:7px;
    color:#ff6a00;
}

/* MIS QR */
#st_ma_8{
    margin-left:10px;
    min-height:44px !important;
    padding:0 24px !important;
    border-radius:8px;
    background:linear-gradient(180deg,#ff790d,#ff6500);
    color:#fff !important;
    box-shadow:0 8px 20px rgba(255,106,0,.18);
}

#st_ma_8::after{
    display:none;
}

#st_ma_8:hover{
    background:#ff7a12;
}

/* ============================================================
   SUBMENU PLANES
   ============================================================ */

#st_menu_14 .stmenu_sub{
    display:none;
    position:absolute;
    top:100%;
    left:50%;
    transform:translateX(-50%);
    min-width:220px;
    padding:10px;
    background:rgba(6,15,27,.99);
    border:1px solid rgba(75,118,160,.26);
    border-radius:12px;
    box-shadow:0 18px 40px rgba(0,0,0,.42);
    z-index:99999;
}

#st_menu_14:hover .stmenu_sub{
    display:block;
}

#st_menu_14 .mu_level_1{
    list-style:none;
    padding:0;
    margin:0;
}

#st_menu_14 .ma_level_1{
    display:block;
    width:100%;
    padding:11px 14px;
    border-radius:8px;
    color:#d7dee6;
    font-size:15px;
    font-weight:600;
    letter-spacing:.6px;
    transition:.2s ease;
    text-decoration:none;
}

#st_menu_14 .ma_level_1:hover{
    color:#fff;
    background:rgba(255,106,0,.10);
    padding-left:18px;
}

#st_ma_15::before,
#st_ma_16::before,
#st_ma_17::before{
    content:"";
    display:inline-block;
    width:7px;
    height:7px;
    margin-right:9px;
    border-radius:50%;
    vertical-align:middle;
}

#st_ma_15::before{
    background:#9ea9b7;
}

#st_ma_16::before{
    background:#ff6a00;
    box-shadow:0 0 8px rgba(255,106,0,.55);
}

#st_ma_17::before{
    background:#35d07f;
    box-shadow:0 0 8px rgba(53,208,127,.55);
}

/* ============================================================
   LOGO
   ============================================================ */

.nto-menu-logo{
    flex:0 0 120px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    text-decoration:none;
}

.nto-menu-logo img{
    width:92px;
    height:auto;
    max-height:105px;
    display:block;
    object-fit:contain;
}

.nto-menu-logo-text{
    display:none;
    color:#fff;
    font-family:'Orbitron',Arial,sans-serif;
    font-size:13px;
    font-weight:700;
    letter-spacing:1px;
}

/* ============================================================
   MENU MOVIL
   ============================================================ */

.nto-mobile-bar{
    display:none;
}

.nto-mobile-menu{
    display:none;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */

@media(max-width:991px){

    #st_mega_menu_header_container{
        display:none;
    }

    #st_mega_menu_wrap{
        display:none;
    }

    .nto-mobile-bar{
        min-height:60px;
        padding:8px 14px;
        display:flex;
        align-items:center;
        justify-content:space-between;
    }

    .nto-mobile-brand{
        color:#fff;
        font-family:'Orbitron',Arial,sans-serif;
        font-size:14px;
        font-weight:700;
        letter-spacing:1px;
        text-decoration:none;
    }

    .nto-mobile-toggle{
        width:44px;
        height:44px;
        border:1px solid rgba(255,255,255,.10);
        border-radius:9px;
        background:#0b1726;
        color:#fff;
        font-size:22px;
        cursor:pointer;
    }

    .nto-mobile-menu.open{
        display:block;
        padding:8px 14px 14px;
        background:#050b13;
        border-top:1px solid rgba(255,255,255,.06);
    }

    .nto-mobile-menu a{
        display:block;
        padding:12px 14px;
        border-radius:8px;
        color:#e3e8ed;
        font-weight:600;
        text-decoration:none;
    }

    .nto-mobile-menu a:hover{
        background:rgba(255,106,0,.08);
    }

    .nto-mobile-menu .cta{
        margin-top:7px;
        text-align:center;
        background:#ff6a00;
        color:#fff;
    }
}
