*, ::after, ::before{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body{
    font-family: 'Poppins', Helvetica, sans-serif;
}

.text-adapt{
    font-size: clamp(28px, 2.4vw, 70px);
}




footer {
    margin: 0;
    text-align: center;
    padding: 1rem 0;
}


nav ul a:hover{
    opacity: 0.65;
}

nav ul{
    font-size: 18px;
    font-weight: 300;
}


nav #menu-toggle{
    padding-right: 2px;
}

@media (max-width: 767px) {
  #nav-menu {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    width: 80%;
    max-width: 320px;
    z-index: 50;
  }
}


@media (max-width: 767px) {
    #nav-menu {
        position: fixed;
        top: 0;
        right: 0;

        width: 80%;
        max-width: 240px;
        height: 100vh;

        left: auto;
    }

    nav {
        overflow: visible !important;
    }

    /* Mobile alignment: make all top-level items line up like "Accueil" */
    #nav-menu > li {
        margin-left: 0 !important;
    }

    /* Links that are direct children (e.g. Accueil, Nos Guides, Blog) */
    #nav-menu > li > a {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Links wrapped in a div for mobile submenu toggle (Destination/Réservation/Transports) */
    #nav-menu > li > div > a {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Language switcher has Tailwind `ml-4` on the <li>; reset on mobile */
    #nav-menu > li.ml-4 {
        margin-left: 0 !important;
    }
}

@media (max-width: 767px) {
    /* Mobile accordion submenus (selector-safe) */
    #nav-menu ul {
        display: block !important;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.25s ease;
    }

    #nav-menu ul.open {
        max-height: 1000px; /* big enough to fit content */
    }
}

/* 
nav a.logo {
    font-style: oblique;
} */


.loader{
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 200;
}

.lettre{
    color: #484848;
    font-size: 80px;
    letter-spacing: 15px;
    margin-bottom: 150px;
    animation: flash 1.2s linear infinite;
}

@keyframes flash{
    0% {
        color: #fff900;
        text-shadow: 0 0 7px #fff900;
    }

    90% {
        color: #484848;
        text-shadow: none;
    }

    100% {
        color: #fff900;
        text-shadow: 0 0 7px #fff900;
    }
}

.lettre:nth-child(1){
    animation-delay: .1s;
}

.lettre:nth-child(2){
    animation-delay: .2s;
}

.lettre:nth-child(3){
    animation-delay: .3s;
}

.lettre:nth-child(4){
    animation-delay: .4s;
}

.lettre:nth-child(5){
    animation-delay: .5s;
}

.lettre:nth-child(6){
    animation-delay: .6s;
}

.lettre:nth-child(7){
    animation-delay: .7s;
}

.lettre:nth-child(8){
    animation-delay: .8s;
}

.lettre:nth-child(9){
    animation-delay: .9s;
}

.lettre:nth-child(10){
    animation-delay: .10s;
}

.fondu-out{
    opacity: 0;
    transition: opacity .4s ease-out;
    z-index: -1;
}

.none{
    display: none;
}


#search-results {
    list-style: none;
    padding: 0;
    margin: 0;
    background-color: #ffffff;
    border: none;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    overflow: overlay;
}
#search-results li {
    padding: 8px;
    border-bottom: 1px solid #eee;
}
#search-results li:last-child {
    border-bottom: none;
}
#search-results li a {
    text-decoration: none;
    color: #007bff;
    font-weight: bold;
}
#search-results li a:hover {
    text-decoration: none;
}


span.tag {
    margin-left: 7px;
    padding: 5px;
    border-radius: 6px;
}

