div:has(> #resultat){
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 0);
    height: 0;
    width: 80%;
}

/* Fallback legacy si #newmenu / #lieuResult absents */
#resultat{
    border-top: none;
    max-height: 250px;
    overflow: auto;
    width: 100%;
    margin-left: 10px;
    background-color: white;
    border-bottom: none;
    padding-right: 5px;
    overflow-x: hidden;
}
#resultat p{
    margin: 0;
    padding: 9px 20px;
    width: 100%;
    transition: 0.5s;
    cursor: pointer;
    font-size: 13px;
}
.active{
    background-color: lightgray;
}

@media (max-width: 1024px){
    #resultat p{
        padding: 9px 2px;
        text-wrap: pretty;
    }

    header#headerPage div:has(> #resultat),
    header#headerPage div:has(> .js-resultat){
        width: 100%;
        left: 0;
        transform: none;
    }

    header#headerPage #resultat,
    header#headerPage .js-resultat{
        margin-left: 0;
        max-width: 100%;
        box-sizing: border-box;
    }
}

/*
 * Dropdown recherche — #newmenu.is-landing-dropdown
 * Partagé header (#SearchBarHolder) + landing (.SearchBarHolderLanding).
 * Card type Questions : header + liste + footer (sans dividers).
 */
#newmenu.is-landing-dropdown{
    max-width: none !important;
    width: 100% !important;
    left: 0 !important;
    transform: none !important;
    background: transparent !important;
    /* Laisse passer les clics vers la searchbar / la page ; seul .NMbloc est cliquable */
    pointer-events: none;
}
#newmenu.is-landing-dropdown.is-lieu-mode{
    pointer-events: none;
}
#newmenu.is-landing-dropdown .NMbloc{
    --dd-fg: #1D3253;
    --dd-muted: #6f7e95;
    --dd-border: #e8eef5;
    --dd-hover: #f3f6fa;
    background: #fff;
    border: 1px solid var(--dd-border);
    border-radius: 24px;
    box-shadow:
        0 10px 30px rgba(0, 0, 0, 0.10),
        0 2px 6px rgba(0, 0, 0, 0.04);
    padding: 14px 8px 10px;
    margin: 0 !important;
    max-height: min(420px, calc(100vh - 140px));
    overflow: hidden;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    bottom: auto !important;
    right: auto !important;
    opacity: 0;
    transform: translateY(-8px) scale(0.98) !important;
    transform-origin: top center;
    transition:
        opacity 0.28s ease,
        transform 0.38s cubic-bezier(0.22, 1, 0.36, 1);
    will-change: opacity, transform;
    pointer-events: auto;
}
#newmenu.is-landing-dropdown .NMbloc.is-dropdown-open{
    opacity: 1;
    transform: translateY(0) scale(1) !important;
}
#newmenu.is-landing-dropdown .NMbloc.is-dropdown-closing{
    opacity: 0;
    transform: translateY(-6px) scale(0.98) !important;
    transition:
        opacity 0.2s ease,
        transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}
#newmenu.is-landing-dropdown .NMbloc:not(.is-dropdown-open) .cat{
    opacity: 0;
    transform: translateY(14px);
}
#newmenu.is-landing-dropdown .NMbloc.is-dropdown-open .cat{
    opacity: 1;
    transform: none;
}
#newmenu.is-landing-dropdown .NMbloc.is-dropdown-open .cat.is-dd-item-in{
    animation: landing-dd-item-in 0.32s cubic-bezier(0.22, 1, 0.36, 1) both;
    animation-delay: calc(var(--dd-i, 0) * 0.045s);
}
#newmenu.is-landing-dropdown .NMbloc.is-dropdown-closing .cat.is-dd-item-out{
    animation: landing-dd-item-out 0.2s ease both;
}
@keyframes landing-dd-item-in{
    from{
        opacity: 0;
        transform: translateY(14px);
    }
    to{
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes landing-dd-item-out{
    from{
        opacity: 1;
        transform: translateY(0);
    }
    to{
        opacity: 0;
        transform: translateY(-8px);
    }
}
@media (prefers-reduced-motion: reduce){
    #newmenu.is-landing-dropdown .NMbloc,
    #newmenu.is-landing-dropdown .NMbloc.is-dropdown-open,
    #newmenu.is-landing-dropdown .NMbloc.is-dropdown-closing{
        transition: none !important;
        transform: none !important;
        opacity: 1 !important;
    }
    #newmenu.is-landing-dropdown .NMbloc .cat,
    #newmenu.is-landing-dropdown .NMbloc.is-dropdown-open .cat,
    #newmenu.is-landing-dropdown .NMbloc.is-dropdown-open .cat.is-dd-item-in{
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}
#newmenu.is-landing-dropdown.is-lieu-mode .NMbloc{
    pointer-events: auto;
}
#newmenu.is-landing-dropdown #NMform{
    display: none !important;
}

/* Header titre + dismiss */
#newmenu.is-landing-dropdown h2{
    position: static !important;
    top: auto !important;
    left: auto !important;
    margin: 0 !important;
    padding: 2px 52px 10px 10px;
    font-family: Roboto, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    color: var(--dd-fg);
    letter-spacing: 0;
    flex: 0 0 auto;
    min-width: 0;
}
#newmenu.is-landing-dropdown h2 a,
#newmenu.is-landing-dropdown h2 .fleche,
#newmenu.is-landing-dropdown h2 .actual{
    font: inherit;
    color: inherit;
    border: none !important;
    text-decoration: none !important;
}
#newmenu.is-landing-dropdown .croix,
#newmenu.is-landing-dropdown .retour{
    position: absolute !important;
    float: none !important;
    top: 12px !important;
    /* Aligné sur la colonne des › (.bloc 8 + .overflow 4 + .cat 10) */
    right: 22px !important;
    margin: 0 !important;
    width: 28px;
    height: 28px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding: 0 !important;
    z-index: 2;
    cursor: pointer;
    color: var(--dd-muted);
    transition: background-color 0.15s ease, transform 0.12s ease;
}
#newmenu.is-landing-dropdown .croix{
    display: flex !important;
}
#newmenu.is-landing-dropdown .retour{
    display: none !important;
}
#newmenu.is-landing-dropdown.is-submenu .retour{
    display: flex !important;
}
#newmenu.is-landing-dropdown.is-submenu .croix{
    display: none !important;
}
#newmenu.is-landing-dropdown .croix:hover,
#newmenu.is-landing-dropdown .retour:hover{
    background: var(--dd-hover);
}
#newmenu.is-landing-dropdown .croix:active,
#newmenu.is-landing-dropdown .retour:active{
    transform: scale(0.96);
}

/* Options */
#newmenu.is-landing-dropdown .overflow{
    border-top: none !important;
    flex: 1 1 auto;
    min-height: 0;
    max-height: none;
    overflow: auto;
    padding: 0 4px;
    -webkit-overflow-scrolling: touch;
}
#newmenu.is-landing-dropdown .NMmenu{
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
}
#newmenu.is-landing-dropdown .NMmenu.invisible{
    display: none !important;
}
#newmenu.is-landing-dropdown .cat{
    --dd-row-h: 48px;
    position: relative;
    width: 100% !important;
    height: var(--dd-row-h) !important;
    min-height: var(--dd-row-h) !important;
    margin: 0 !important;
    padding: 0 10px !important;
    border-radius: 10px !important;
    border: none;
    box-shadow: none;
    background: transparent;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px;
    box-sizing: border-box;
    cursor: pointer;
    transition: background-color 0.15s ease;
}
/* Pas de dividers entre options */
#newmenu.is-landing-dropdown .cat:not(:last-child)::after{
    content: none;
    display: none;
}
#newmenu.is-landing-dropdown .cat .img{
    display: flex !important;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
}
#newmenu.is-landing-dropdown .cat .img img{
    width: 28px;
    height: 28px;
    object-fit: contain;
    display: block;
}
#newmenu.is-landing-dropdown .cat .arrow{
    display: flex !important;
    flex: 0 0 auto;
    margin-left: auto;
    color: var(--dd-muted);
    font-size: 18px;
    line-height: 1;
}
#newmenu.is-landing-dropdown .cat .title{
    flex: 1 1 auto;
    width: auto !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
}
#newmenu.is-landing-dropdown .title a{
    font-family: Roboto, sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: var(--dd-fg);
    text-decoration: none !important;
}
#newmenu.is-landing-dropdown .cat:hover,
#newmenu.is-landing-dropdown a:focus .cat,
#newmenu.is-landing-dropdown .cat.active{
    background: var(--dd-hover) !important;
}

/* Footer CTA */
#newmenu.is-landing-dropdown .cta{
    flex: 0 0 auto;
    margin: 0;
    padding: 8px 10px 4px;
    display: flex;
    justify-content: flex-end;
    border-top: 1px solid rgba(29, 50, 83, 0.06);
}
#newmenu.is-landing-dropdown .cta p{
    margin: 0;
}
#newmenu.is-landing-dropdown .cta span{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 14px;
    border-radius: 999px;
    font-family: Quicksand, sans-serif;
    font-size: 13px;
    font-weight: 600;
}

/* Lieu / CP : pas d’icônes ni flèches */
#newmenu.is-landing-dropdown.is-lieu-mode h2{
    display: block !important;
}
#newmenu.is-landing-dropdown.is-lieu-mode .cat .img,
#newmenu.is-landing-dropdown.is-lieu-mode .cat .arrow{
    display: none !important;
}
#newmenu.is-landing-dropdown.is-lieu-mode .cta{
    display: none !important;
}
#newmenu.is-landing-dropdown.is-lieu-mode .cat.is-locating,
#newmenu.is-landing-dropdown.is-lieu-mode .choix--geoloc.is-locating{
    opacity: 0.55;
    pointer-events: none;
}

/* Header : barre au-dessus du dropdown */
#SearchBarHolder,
.SearchBarHolder{
    position: relative;
    z-index: 1003;
}
