/* ===== NAV ===== */
.menu{
    position:sticky;
    top:0;
    z-index:1000;
    background:linear-gradient(90deg, #0d47a1, #1976d2, #42a5f5);
    display:flex;
    align-items:center;
    padding:0 30px;
    gap:25px;
    transition:.3s;
}

.menu.scrolled{
    box-shadow:0 8px 25px rgba(0,0,0,.3);
}

.logo{
    color:#fff;
    font-weight:600;
    font-size:18px;
    padding:18px 0;
    white-space:nowrap;
}

/* ===== BUSCADOR ===== */
.search-container{
    position:relative;
	width:100%;
}

.search-container input{
    padding:8px 35px 8px 14px;
    border-radius:20px;
    border:none;
    outline:none;
    font-size:14px;
    width:100%;
}

.search-container i{
    position:absolute;
    right:12px;
    top:50%;
    transform:translateY(-50%);
    color:#555;
}

.search-results{
    position:absolute;
    top:110%;
    left:0;
    width:100%;
    background:#fff;
    border-radius:10px;
    box-shadow:0 8px 20px rgba(0,0,0,.2);
    display:none;
    max-height:250px;
    overflow-y:auto;
    z-index:2000;
}

.search-results a{
    display:block;
    padding:10px 14px;
    text-decoration:none;
    color:#333;
    font-size:14px;
}

.search-results a:hover,
.search-results a.active-result{
    background:#e6f2ff;
    color:#0f2027;
}

.search-results small{
    display:block;
    font-size:11px;
    color:#777;
}

/* ===== MENÚ DESKTOP ===== */
.menu-list{
    list-style:none;
    display:flex;
    margin-left:auto;
}

.menu-list,
.submenu{
    list-style:none;   
    padding-left:0;  	
}

.menu-list li{position:relative}

.menu-list li a{
    display:flex;
    align-items:center;
    gap:6px;
    padding:18px;
    color:#fff;
    text-decoration:none;
}

.menu-list li a:hover{
    background:#fff;
    border-radius:8px;
	color:#000;
}

.arrow{font-size:12px;transition:.3s;}
.has-submenu.active>a .arrow{transform:rotate(180deg)}

.submenu{
    position:absolute;
    top:100%;
    left:0;
    background:#fff;
    display:flex;
    flex-direction:column;   
    min-width:200px;         
    padding:10px 0;          
    border-radius:12px;
    opacity:0;
    visibility:hidden;
    transform:translateY(15px);
    transition:.3s;
}

.submenu li a{
    padding:10px 18px;
    border-radius:8px;
    font-size:14px;
	color:#000;
}

.submenu li a:hover{
    background:#e6f2ff;
}

.has-submenu.active>.submenu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

/* ===== MODO MÓVIL ===== */
@media(max-width:900px){

.menu{
    padding:10px 15px;
    gap:0;
}

.logo{
    display:none;
}

.menu-list{
    display:none;
}

.search-container{
    width:100%;
}

.search-container input{
    width:100%;
    padding:10px 40px 10px 15px;
}

.search-results{
    width:100%;
}
}