/* ---------- HEADER ---------- */
header {
    .elementor-nav-menu--main {
        .elementor-nav-menu {
            align-items: center;
            gap: 4px;
        }
 
        .elementor-item {
            font-family: var(--f-titulos);
            font-size: 0.9375rem;
            font-weight: 500;
            color: var(--c-blanco) !important;
            padding: 10px 16px;
            transition: color .2s ease;
 
            &:hover,
            &:focus,
            &.elementor-item-active {
                color: var(--c-azul-claro) !important;
            }
        }
 
        .current-menu-item > .elementor-item {
            color: var(--c-azul-claro) !important;
        }
 
        /* Item de contacto como botón */
        .contacto-menu {
            margin-left: 14px;
 
            & > a.elementor-item {
                color: var(--c-blanco);
                font-weight: 600;
                padding: 12px 28px;
                border-radius: 999px;
                background: linear-gradient(135deg, var(--c-azul) 0%, var(--c-azul-oscuro) 100%);
                box-shadow: 0 8px 22px rgba(34, 102, 172, .4);
                transition: transform .2s ease, box-shadow .25s ease, background .2s ease;
 
                &:hover,
                &:focus {
                    color: var(--c-blanco) !important;
                    background: linear-gradient(135deg, var(--c-azul-claro) 0%, var(--c-azul) 100%);
                    transform: translateY(-2px);
                    box-shadow: 0 14px 30px rgba(55, 152, 207, .5);
                }
            }
        }
    }
 
    /* Hamburguesa y desplegable (tablet / móvil) */
    .elementor-menu-toggle {
        color: var(--c-blanco);
        background: transparent;
        border: 1px solid rgba(255, 255, 255, .3);
        border-radius: 12px;
 
        svg { fill: var(--c-blanco) !important; }
    }
 
    .elementor-nav-menu--dropdown {
        background: var(--c-negro);
        border-radius: 0 0 20px 20px;
        border-top: 1px solid rgba(255, 255, 255, .1);
 
        .elementor-item {
            color: rgba(255, 255, 255, .9);
            padding: 14px 24px;
            font-family: var(--f-titulos);
 
            &:hover {
                color: var(--c-azul-claro);
                background: rgba(255, 255, 255, .04);
            }
        }
 
        .contacto-menu {
            margin: 12px 24px 16px;
 
            & > a.elementor-item {
                width: fit-content;
                justify-content: center;
                text-align: center;
                padding: 12px 28px;
                color: var(--c-blanco);
                border-radius: 999px;
                background: linear-gradient(135deg, var(--c-azul), var(--c-azul-oscuro));
            }
        }
    }
}


/* Menú del footer: lista vertical, contacto como enlace normal */
footer .elementor-nav-menu--main {
    .elementor-item {
        color: rgba(255, 255, 255, .76) !important;
        padding: 0 !important; 
        font-size: 1rem;
        transition: color .2s ease, padding-left .2s ease;
 
        &:hover {
            color: var(--c-azul-claro) !important;
            padding-left: 6px;
        }
    }
}