/*==================================================
                    MENÚ
==================================================*/

.menu-principal ul{

    display:flex;

    align-items:center;

    gap:45px;

    list-style:none;

}

.menu-principal ul li{

    position:relative;

}

.menu-principal ul li a{

    display:flex;

    align-items:center;

    gap:6px;

    color:var(--color-blanco);

    text-decoration:none;

    font-size:16px;

    font-weight:400;

    transition:var(--transicion);

    padding:10px 0;

}


/*==================================================
                EFECTO HOVER
==================================================*/

.menu-principal ul li a::after{

    content:"";

    position:absolute;

    left:0;
    bottom:0;

    width:0;

    height:2px;

    background:var(--color-blanco);

    transition:var(--transicion);

}

.menu-principal ul li:hover a::after{

    width:100%;

}

.menu-principal ul li:hover > a{

    color:#f5f5f5;

}

/*==================================================
                SUBMENÚ
==================================================*/

.submenu{

    position:absolute;

    top:100%;
    left:30;

    min-width:330px;

    background:var(--color-blanco);

    border-radius:10px;

    box-shadow:var(--sombra-card);

    list-style:none;

    padding:8px 0;

    opacity:0;

    visibility:hidden;

    transform:translateY(15px);

    transition:var(--transicion);

}

.menu-desplegable:hover .submenu{

    opacity:1;

    visibility:visible;

    transform:translateY(0);

}

.submenu li{

    width:100%;

}

.submenu li a{

    color:var(--color-primario) !important;

    padding:12px 20px;

    display:block;

    font-size:10px;

}

.submenu li a:hover{

    background:var(--color-fondo);

}

/*==================================================
                FLECHA
==================================================*/

.flecha{

    font-size:12px;

    transition:var(--transicion);

}

.menu-desplegable:hover .flecha{

    transform:rotate(180deg);

}

/*==================================================
              MENÚ RESPONSIVE
==================================================*/

@media (max-width: 768px){

    .menu-principal{
        width:100%;
    }

    .menu-principal ul{
        display:flex;
        flex-wrap:wrap;
        justify-content:center;
        align-items:center;
        gap:5px 12px;
        padding:0;
        margin:0;
    }

    .menu-principal ul li a{
        font-size:13px;
        padding:8px 5px;
        white-space:nowrap;
    }

    .submenu{
        min-width:260px;
    }

}