/* Forziamo la visibilità e la posizione del menu */
/* Contenitore principale della barra superiore */
.top-menu {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 5vw;
    height: 10vh;
    background-color: rgba(255, 255, 255, 0.05); /* Trasparenza mantenuta */
    position: fixed;
    top: -10vh; /* Partiamo con il menu nascosto sopra lo schermo */
    left: 0;
    width: 100vw;
    z-index: 9999;
    box-shadow: 0 0.4vw 1vw rgba(0, 0, 0, 0.2);
    transition: top 1.5s ease-in-out; /* Transizione lenta per far scendere il menu */
    backdrop-filter: blur(1vw);
    pointer-events: auto;
}

/* Quando il menu viene mostrato */
.show-menu {
    top: 0 !important;
}

/* Contenitore del logo */
.logo-container {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 10vh;
    padding-left: 15vw; /* Ripristina la posizione del logo */
    margin-right: 2vw;
}

.logo-container img {
    width: 80px;
    height: auto;
    margin-right: 1vw;
    margin-top: 5vh;
}

/* Ripristina visibilità e z-index del logo */
.logo-img {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 10000 !important;
    position: relative;
    width: 5vw;
    height: auto;
    margin: 0;
}

/* Menu */
.menu-items {
    list-style-type: none;
    display: flex;
    justify-content: flex-start; /* Inizia il menu a sinistra */
    padding: 0;
    margin: 0;
    gap: 2vw; /* Usa gap proporzionato allo schermo */
    text-align: center;
    margin-left: 18vw; /* Mantieni il menu proporzionato al centro */
    flex-grow: 1;
    white-space: nowrap; /* Impedisce che il menu vada a capo */
    z-index: 10000; /* Aumenta lo z-index per assicurare che il menu sia sopra altri elementi */	
}

/* Stile delle voci del menu */
.menu-items li a {
    position: relative;
    z-index: 10001;
    font-size: 1.1vw;
    color: white;
    text-decoration: none;
    padding: 0.5vw;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
    font-weight: bold;
}

/* Effetto linea blu al passaggio del mouse */
.menu-items li a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 0.2vw;
    background-color: #007BFF; /* Colore della linea blu */
    bottom: 0;
    left: 0;
    transition: width 0.3s ease; /* Transizione fluida */
}

/* La linea blu appare al passaggio del mouse */
.menu-items li a:hover::after {
    width: 100%; /* Estendi la linea a tutta la larghezza */
}

/* Assicurarsi che il contenuto non si sovrapponga alla linea blu */
.menu-items li {
    position: relative;
}

/* Hamburger menu */
.hamburger-menu {
    display: none; /* Nascondi su schermi grandi */
    flex-direction: column;
    cursor: pointer;
    width: 4vw;
    height: 3vh;
    margin-right: 14vw; /* Mantieni il margine proporzionato */
}

/* Posizionamento corretto del selettore delle lingue */
.language-selector {
    position: absolute;
    top: 50%; /* Regolato per allineare verticalmente */
    right: 35vw; /* Sposta più vicino al centro tra menu e hamburger */
    transform: translateY(-50%);
    display: inline-block;
    z-index: 9999; /* Z-index alto per evitare che sia coperto */
}

/* Icona della lingua */
.language-icon {
    width: 40px; /* Aumenta la larghezza dell'icona */
    height: 40px; /* Aumenta l'altezza dell'icona */
    vertical-align: middle;
}

/* Bottone del selettore */
.dropbtn {
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding: 5px;
}

/* Dropdown nascosto di default */
.dropdown-content {
    display: none;
    position: absolute;
    background-color: rgba(255, 255, 255, 0.95);
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    z-index: 10000; /* Mantienilo visibile sopra altri elementi */
    right: 0;
    top: 100%;
}

/* Stile delle opzioni del selettore */
.dropdown-content a {
    color: black;
    padding: 8px 12px;
    text-decoration: none;
    display: block;
    font-size: 1rem; /* Aumenta leggermente il font delle opzioni */
}

.dropdown-content a:hover {
    background-color: #007BFF;
    color: white;
}

/* Mostra il dropdown al passaggio del mouse */
.language-selector:hover .dropdown-content {
    display: block;
}

/* Freccia giù */
.arrow {
    border: solid white;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    margin-left: 5px;
    transform: rotate(45deg);
    vertical-align: middle;
}

.down {
    transform: rotate(45deg); /* Crea la freccia verso il basso */
}





/* Media Queries per schermi piccoli */
@media (max-width: 768px) {
    .top-menu {
        height: 12vh; /* Altezza proporzionata per schermi piccoli */
        padding: 0 3vw;
    }

    .logo-container {
        padding-left: 5vw;
    }

    .logo-container img {
        width: 7vw; /* Adatta la dimensione del logo per schermi piccoli */
        margin-top: 3vh;
    }

    .menu-items {
        margin-left: 30vw; /* Sposta il menu per centrarlo su schermi piccoli */
        gap: 1.5vw;
    }

    .menu-items li a {
        font-size: 3vw; /* Adatta il font su schermi piccoli */
    }

    .hamburger-menu {
        display: flex; /* Mostra il menu hamburger su schermi piccoli */
    }
}

