/* La liste des visites, en damier ([visites_guidees], includes/liste.php). */

.evg-liste {
    --evg-or: #866d4b;
    --evg-or-fonce: #6f5a3e;
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 40px;
    align-items: start;
}

/* Colonne des filtres : réservée, remplie plus tard (action evg_liste_filtres). */
.evg-liste__filtres { min-height: 1px; }

.evg-liste__damier {
    display: grid;
    grid-template-columns: repeat(var(--evg-colonnes, 3), minmax(0, 1fr));
    gap: 20px;
}
.evg-liste__vide { grid-column: 1 / -1; }

/* ── Une case ──────────────────────────────────────────────────────────────────── */

.evg-case {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    aspect-ratio: 312 / 277;
    padding: 24px 20px 40px;
    overflow: hidden;
    background-color: #1d1b19;
    background-size: cover;
    background-position: center;
    color: #fff;
    text-align: center;
    isolation: isolate;
}
/* Le voile : noir, qui s'éclaircit au survol pour montrer la photo. */
.evg-case::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: rgb(0 0 0 / .62);
    transition: background-color .35s ease;
}
.evg-case:hover::before,
.evg-case:focus-within::before { background: rgb(0 0 0 / .27); }

.evg-case__contenu {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}
.evg-case__titre {
    margin: 0;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 600;
    text-wrap: balance;
    color: #fff;
}
.evg-case__titre a,
.evg-case__titre a:hover,
.evg-case__titre a:focus { color: #fff; text-decoration: none; }
/* Toute la case mène à la visite : un seul lien, étiré sur la case. */
.evg-case__titre a::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
}
.evg-case__titre a:focus-visible { outline: none; }
.evg-case:has(.evg-case__titre a:focus-visible) { outline: 2px solid var(--evg-or); outline-offset: 3px; }

.evg-case__quand {
    margin: 0;
    font-size: 15px;
    line-height: 1.4;
    color: rgb(255 255 255 / .9);
}
.evg-case__bouton {
    display: inline-block;
    margin-top: 6px;
    padding: 9px 28px 11px;
    background: var(--evg-or);
    border: 1px solid var(--evg-or);
    color: #fff;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.2;
    transition: background-color .2s ease, border-color .2s ease;
}
.evg-case:hover .evg-case__bouton { background: var(--evg-or-fonce); border-color: var(--evg-or-fonce); }

/* Complet : comme sur booking — photo noir et blanc assombrie, badge par-dessus, pas de clic. */
.evg-case--complet { cursor: default; }
.evg-case--complet::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background: inherit;
    filter: brightness(50%) grayscale(100%);
}
.evg-case--complet::before,
.evg-case--complet:hover::before { background: rgb(0 0 0 / .45); }
/* Depuis le 15/10/2026, l'image est le seul mot « SOLD OUT » (le logo du Banad qui la
   surmontait est retiré) : un peu d'air la détache du bord de la case. */
.evg-case__badge {
    position: absolute;
    top: 22px;
    left: 50%;
    transform: translateX(-50%);
    width: 150px;
    height: auto;
    z-index: 2;
    pointer-events: none;
}

.evg-case__themes {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 12px;
    margin: 0;
    font-size: 13px;
    line-height: 1.3;
    color: rgb(255 255 255 / .75);
    text-align: left;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (prefers-reduced-motion: reduce) {
    .evg-case::before, .evg-case__bouton { transition: none; }
}

/* ── Écrans plus étroits ───────────────────────────────────────────────────────── */

@media (max-width: 1199px) {
    .evg-liste { grid-template-columns: 220px minmax(0, 1fr); gap: 30px; }
    .evg-liste__damier { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
    .evg-liste { grid-template-columns: minmax(0, 1fr); }
    .evg-liste__filtres--vide { display: none; }
}
@media (max-width: 559px) {
    .evg-liste__damier { grid-template-columns: minmax(0, 1fr); }
}

/* ── Filtres (colonne de gauche) ────────────────────────────────────────────────── */

.evg-case[hidden], .evg-liste__aucune[hidden], .evg-filtres__effacer[hidden] { display: none; }
.evg-liste__aucune { grid-column: 1 / -1; margin: 0; padding: 28px 0; }

.evg-filtres { font-size: 15px; line-height: 1.4; }
.evg-filtres__ouvrir { display: none; }
.evg-filtres__corps { display: grid; gap: 26px; }

.evg-filtres__tete { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; min-height: 24px; }
.evg-filtres__compte { margin: 0; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; opacity: .7; font-variant-numeric: tabular-nums; }
.evg-liste .evg-filtres__effacer,
.evg-liste .evg-filtres__effacer:hover,
.evg-liste .evg-filtres__effacer:focus {
    padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; min-height: 0;
    color: var(--evg-or); font: inherit; font-size: 14px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; cursor: pointer;
}

.evg-filtres__groupe { margin: 0; padding: 0; border: 0; min-width: 0; }
.evg-filtres__titre {
    margin: 0 0 10px; padding: 0 0 8px; width: 100%;
    border-bottom: 1px solid color-mix(in srgb, var(--evg-or) 45%, transparent);
    font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
}
.evg-filtres__choix { display: flex; align-items: center; gap: 10px; padding: 4px 0; cursor: pointer; }
.evg-filtres__choix input { width: 16px; height: 16px; margin: 0; accent-color: var(--evg-or); flex: none; }
.evg-filtres__choix:hover span { color: var(--evg-or); }

/* Calendrier : même dessin que sur la fiche d'une visite. */
.evg-filtres__cal { max-width: 250px; font-size: 13px; }
:is(.evg-filtres, .evg-tiroir) .evg-cal__tete { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
:is(.evg-filtres, .evg-tiroir) .evg-cal__mois { font-weight: 700; text-transform: capitalize; }
.evg-liste .evg-cal__nav, .evg-liste .evg-cal__nav:hover, .evg-liste .evg-cal__nav:focus {
    width: 28px; height: 28px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; min-height: 0;
    color: var(--evg-or); font: inherit; font-size: 20px; line-height: 1; cursor: pointer;
}
.evg-liste .evg-cal__nav:disabled { opacity: .25; cursor: default; background: transparent !important; color: var(--evg-or) !important; }
:is(.evg-filtres, .evg-tiroir) .evg-cal__grille { display: grid; grid-template-columns: repeat(7, 1fr); row-gap: 2px; text-align: center; }
:is(.evg-filtres, .evg-tiroir) .evg-cal__js { font-size: .8em; opacity: .55; padding-bottom: 2px; text-transform: uppercase; }
:is(.evg-filtres, .evg-tiroir) .evg-cal__grille > span { display: grid; place-items: center; height: 28px; font-variant-numeric: tabular-nums; }
:is(.evg-filtres, .evg-tiroir) .evg-cal__vide { opacity: .45; }
:is(.evg-filtres, .evg-tiroir) .evg-cal__vide.est-passe { opacity: .2; }
.evg-liste .evg-cal__jour, .evg-liste .evg-cal__jour:focus {
    display: grid; place-items: center; justify-self: center; width: 28px; height: 28px; padding: 0; margin: 0;
    border: 1.5px solid var(--evg-or); border-radius: 50%; background: transparent; box-shadow: none; min-height: 0;
    color: inherit; font: inherit; font-weight: 700; line-height: 1; cursor: pointer; font-variant-numeric: tabular-nums;
}
.evg-liste .evg-cal__jour:hover { background: color-mix(in srgb, var(--evg-or) 15%, transparent); color: inherit; }
.evg-liste .evg-cal__jour.est-choisi, .evg-liste .evg-cal__jour.est-choisi:hover { background: var(--evg-or); color: #fff; }
.evg-liste .evg-cal__jour:focus-visible { outline: 2px solid var(--evg-or); outline-offset: 2px; }

@media (max-width: 767px) {
    .evg-filtres { border: 1px solid color-mix(in srgb, var(--evg-or) 45%, transparent); }
    .evg-filtres__ouvrir {
        display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; cursor: pointer;
        font-size: 14px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; list-style: none;
    }
    .evg-filtres__ouvrir::-webkit-details-marker { display: none; }
    .evg-filtres__ouvrir::after { content: "+"; color: var(--evg-or); font-size: 20px; line-height: 1; }
    .evg-filtres[open] .evg-filtres__ouvrir::after { content: "−"; }
    .evg-filtres__corps { padding: 4px 16px 18px; }
}

/* ── Période choisie dans l'assistant ──────────────────────────────────────────── */
.evg-filtres__periode[hidden] { display: none; }
.evg-filtres__periode { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0 0 10px; padding: 6px 10px; background: color-mix(in srgb, var(--evg-or) 12%, transparent); font-size: 14px; font-weight: 600; }
.evg-liste .evg-filtres__periode-retirer, .evg-liste .evg-filtres__periode-retirer:hover, .evg-liste .evg-filtres__periode-retirer:focus {
    padding: 0 2px; border: 0; background: transparent; box-shadow: none; min-height: 0; color: var(--evg-or); font: inherit; font-size: 14px; cursor: pointer;
}

/* ── Assistant ─────────────────────────────────────────────────────────────────── */
.evg-liste .evg-assistant__ouvrir, .evg-liste .evg-assistant__ouvrir:focus {
    width: 100%; padding: 12px 16px; border: 1px solid var(--evg-or); border-radius: 0; background: transparent; box-shadow: none;
    color: var(--evg-or); font: inherit; font-size: 14px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; cursor: pointer;
}
.evg-liste .evg-assistant__ouvrir:hover { background: var(--evg-or); color: #fff; }

.evg-assistant { width: min(520px, calc(100vw - 32px)); padding: 0; border: 0; border-radius: 0; background: #fff; color: #222; box-shadow: 0 20px 60px rgb(0 0 0 / .3); }
.evg-assistant::backdrop { background: rgb(0 0 0 / .55); }
.evg-assistant__corps { position: relative; display: grid; gap: 22px; margin: 0; padding: 34px 32px 28px; }
.evg-assistant__surtitre { margin: 0; color: #866d4b; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.evg-assistant__etape[hidden] { display: none; }
.evg-assistant__etape h2 { margin: 0 0 16px; font-size: 22px; line-height: 1.25; text-wrap: balance; }
.evg-assistant__periode { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.evg-assistant__periode label { display: grid; gap: 4px; font-size: 13px; font-weight: 600; }
.evg-assistant__periode input { width: 100%; padding: 10px; border: 1px solid #ccc; border-radius: 0; font: inherit; font-size: 15px; }
.evg-assistant__erreur { margin: 10px 0 0; color: #a3261b; font-size: 14px; }
.evg-assistant__erreur[hidden] { display: none; }
.evg-assistant__choix { display: grid; gap: 8px; }
.evg-assistant__option { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid #ddd; cursor: pointer; font-size: 16px; }
.evg-assistant__option:has(input:checked) { border-color: #866d4b; background: #f7f3ee; }
.evg-assistant__option input { width: 18px; height: 18px; margin: 0; accent-color: #866d4b; }
.evg-assistant__actions { display: flex; align-items: center; gap: 12px; }
.evg-assistant .evg-assistant__suivant, .evg-assistant .evg-assistant__suivant:hover, .evg-assistant .evg-assistant__suivant:focus {
    margin-left: auto; padding: 12px 30px; border: 1px solid #866d4b; border-radius: 0; background: #866d4b; box-shadow: none; color: #fff; font: inherit; font-weight: 700; cursor: pointer;
}
.evg-assistant .evg-assistant__passer, .evg-assistant .evg-assistant__retour, .evg-assistant .evg-assistant__passer:hover, .evg-assistant .evg-assistant__retour:hover {
    padding: 0; border: 0; background: transparent; box-shadow: none; color: #866d4b; font: inherit; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; cursor: pointer;
}
.evg-assistant__passer[hidden], .evg-assistant__retour[hidden] { display: none; }
.evg-assistant .evg-assistant__fermer, .evg-assistant .evg-assistant__fermer:hover {
    position: absolute; top: 10px; right: 12px; width: 32px; height: 32px; padding: 0; border: 0; background: transparent; box-shadow: none; color: #666; font-size: 18px; cursor: pointer;
}
@media (max-width: 480px) { .evg-assistant__corps { padding: 28px 20px 22px; } .evg-assistant__periode { grid-template-columns: 1fr; } }

/* ── Langues : drapeaux ronds à cocher ───────────────────────────────────────────── */
.evg-drapeaux { display: flex; flex-wrap: wrap; gap: 12px; }
.evg-drapeau { position: relative; display: inline-flex; cursor: pointer; }
.evg-drapeau input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.evg-drapeau__rond {
    display: grid; place-items: center; width: 36px; height: 36px; overflow: hidden; border-radius: 50%;
    box-shadow: 0 0 0 1px rgb(0 0 0 / .15); transition: box-shadow .15s ease, transform .15s ease, opacity .15s ease;
}
.evg-drapeau__rond svg { display: block; width: 100%; height: 100%; }
.evg-drapeau__lettres { font-size: 12px; font-weight: 700; }
.evg-drapeau:hover .evg-drapeau__rond { transform: scale(1.06); }
/* Coché : anneau or, et une petite coche. */
.evg-drapeau input:checked + .evg-drapeau__rond { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--evg-or); }
.evg-drapeau:has(input:checked)::after {
    content: "✓"; position: absolute; right: -5px; bottom: -5px; display: grid; place-items: center;
    width: 17px; height: 17px; border-radius: 50%; background: var(--evg-or); color: #fff; font-size: 11px; font-weight: 700; line-height: 1;
}
/* Une langue cochée : les autres s'estompent un peu. */
.evg-drapeaux:has(input:checked) .evg-drapeau:not(:has(input:checked)) .evg-drapeau__rond { opacity: .45; }
.evg-drapeau input:focus-visible + .evg-drapeau__rond { outline: 2px solid var(--evg-or); outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) { .evg-drapeau__rond { transition: none; } }

/* ── Mobile : barre « Filtrer · Aidez-moi à choisir » et tiroir ────────────────────── */
.evg-filtres__barre-mobile, .evg-filtres__compte-mobile, .evg-tiroir:not([open]) { display: none; }

@media (max-width: 767px) {
    .evg-liste--mobile .evg-filtres { display: none; }
    .evg-liste--mobile .evg-filtres__barre-mobile { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
    .evg-liste--mobile .evg-filtres__compte-mobile { display: block; margin: 12px 0 0; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; opacity: .7; }
    .evg-liste--mobile { gap: 14px; }

    .evg-liste .evg-filtres__mobile-ouvrir, .evg-liste .evg-filtres__mobile-ouvrir:hover, .evg-liste .evg-filtres__mobile-ouvrir:focus,
    .evg-liste .evg-assistant__ouvrir--mobile, .evg-liste .evg-assistant__ouvrir--mobile:focus {
        display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; width: 100%; padding: 10px 12px;
        border: 1px solid var(--evg-or); border-radius: 0; box-shadow: none; font: inherit; font-size: 13px; font-weight: 700;
        letter-spacing: .05em; text-transform: uppercase; line-height: 1.2; cursor: pointer;
    }
    .evg-liste .evg-filtres__mobile-ouvrir { background: var(--evg-or); color: #fff; }
    .evg-liste .evg-assistant__ouvrir--mobile { background: transparent; color: var(--evg-or); }
    .evg-filtres__mobile-ouvrir svg { width: 18px; height: 18px; flex: none; }
    .evg-filtres__nb { display: grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 10px; background: #fff; color: var(--evg-or); font-size: 12px; }
    .evg-filtres__nb[hidden] { display: none; }
    /* Dans le tiroir, le bouton de l'assistant fait doublon avec la barre. */
    .evg-tiroir .evg-filtres__corps > .evg-assistant__ouvrir { display: none; }
}

.evg-tiroir {
    position: fixed; inset: auto 0 0 0; width: 100%; max-width: 100%; height: min(88vh, 88dvh); max-height: none; margin: 0; padding: 0;
    border: 0; border-radius: 0; background: #fff; color: #222; box-shadow: 0 -10px 40px rgb(0 0 0 / .25);
    display: flex; flex-direction: column; animation: evg-monte .25s ease-out;
}
.evg-tiroir::backdrop { background: rgb(0 0 0 / .5); }
@keyframes evg-monte { from { transform: translateY(100%); } to { transform: none; } }
@media (prefers-reduced-motion: reduce) { .evg-tiroir { animation: none; } }
html.evg-sans-defilement { overflow: hidden; }

.evg-tiroir__tete { display: flex; align-items: center; justify-content: space-between; padding: 14px 16px; border-bottom: 1px solid #e6e2dc; }
.evg-tiroir__tete p { margin: 0; font-size: 15px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.evg-tiroir .evg-tiroir__fermer, .evg-tiroir .evg-tiroir__fermer:hover, .evg-tiroir .evg-tiroir__fermer:focus {
    width: 44px; height: 44px; margin: -10px -10px -10px 0; padding: 0; border: 0; background: transparent; box-shadow: none; color: #555; font-size: 20px; cursor: pointer;
}
.evg-tiroir__corps { flex: 1; overflow-y: auto; overscroll-behavior: contain; padding: 18px 16px 24px; }
.evg-tiroir__pied { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 16px; padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid #e6e2dc; background: #fff; }
.evg-tiroir .evg-tiroir__effacer, .evg-tiroir .evg-tiroir__effacer:hover, .evg-tiroir .evg-tiroir__effacer:focus {
    padding: 0; border: 0; background: transparent; box-shadow: none; color: #866d4b; font: inherit; font-size: 14px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; cursor: pointer;
}
.evg-tiroir .evg-tiroir__voir, .evg-tiroir .evg-tiroir__voir:hover, .evg-tiroir .evg-tiroir__voir:focus {
    min-height: 48px; padding: 12px 16px; border: 1px solid #866d4b; border-radius: 0; background: #866d4b; box-shadow: none; color: #fff;
    font: inherit; font-size: 14px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; cursor: pointer;
}
.evg-tiroir .evg-tiroir__voir:disabled { opacity: .45; cursor: default; }

/* Dans le tiroir : des cibles tactiles plus grandes. */
.evg-tiroir .evg-filtres__tete { display: none; }
.evg-tiroir .evg-filtres__cal { max-width: 340px; margin: 0 auto; font-size: 15px; }
.evg-tiroir .evg-cal__grille > span { height: 40px; }
.evg-tiroir .evg-cal__jour, .evg-tiroir .evg-cal__jour:focus { width: 38px; height: 38px; }
.evg-tiroir .evg-cal__nav, .evg-tiroir .evg-cal__nav:hover, .evg-tiroir .evg-cal__nav:focus { width: 44px; height: 44px; }
.evg-tiroir .evg-drapeaux { gap: 16px; }
.evg-tiroir .evg-drapeau__rond { width: 46px; height: 46px; }
.evg-tiroir .evg-filtres__choix { min-height: 44px; font-size: 16px; }
.evg-tiroir .evg-filtres__choix input { width: 20px; height: 20px; }

/* ── Nos blocs posés dans une page ─────────────────────────────────────────────── */

/*
 * TOUT bloc que nous posons dans une page porte `evg-bloc` et respire sous le titre qui
 * l'annonce. Elementor ne met aucune marge entre un widget de titre et le widget suivant :
 * sans cette règle, le titre colle au bloc. Un bloc peut resserrer ou élargir l'écart en
 * redéfinissant --evg-espace, il ne le supprime pas.
 */
.evg-bloc { margin-top: var(--evg-espace, 50px); }

@media (max-width: 767px) {
    .evg-bloc { --evg-espace: 34px; }
}

/* ── Les prochaines visites, sur l'accueil ([prochaines_visites]) ───────────────── */

/*
 * Les mêmes cases que le damier, sans la colonne des filtres. L'or est redéclaré ici :
 * il vivait sur `.evg-liste`, qui n'entoure pas ce bloc.
 *
 * Le titre est posé au-dessus par Elementor, dans la section dont la marge haute vaut 70 px :
 * on reprend la même valeur pour l'écart titre → cases, afin que le bloc respire pareil
 * au-dessus et au-dessous du titre.
 */
.evg-prochaines {
    --evg-or: #866d4b;
    --evg-or-fonce: #6f5a3e;
    --evg-espace: 70px;   /* le titre est annoncé par 70 px de marge haute de section */
}
/*
 * Le pied porte la marge et le centrage : le thème met `.sc_item_button` à zéro et rend
 * `.sc_button_wrap` inline-block, si bien qu'une marge posée sur eux serait effacée et
 * qu'un centrage posé sur eux ne centrerait rien.
 */
.evg-prochaines__pied { margin-top: 50px; text-align: center; }

@media (max-width: 767px) {
    .evg-prochaines { --evg-espace: 40px; }
    .evg-prochaines__pied { margin-top: 32px; }
}

/* ── « Explore.Brussels vous propose » ([evg_propositions]) ─────────────────────── */

/*
 * Trois cartes carrées, comme sur explore.brussels : la photo en fond, le sur-titre et le
 * titre en haut à gauche. Le voile sombre part du haut, là où le texte se pose.
 */
.evg-propositions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}
.evg-proposition {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 6px;
    aspect-ratio: 1 / 1;
    padding: 26px 24px;
    background-position: center;
    background-size: cover;
    text-decoration: none;
    overflow: hidden;
}
.evg-proposition::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgb(0 0 0 / .55), rgb(0 0 0 / .12) 55%);
    transition: background .3s ease;
}
.evg-proposition:hover::before,
.evg-proposition:focus-visible::before { background: linear-gradient(180deg, rgb(0 0 0 / .65), rgb(0 0 0 / .3) 60%); }
.evg-proposition:focus-visible { outline: 2px solid var(--evg-or, #866d4b); outline-offset: 3px; }

.evg-proposition__sur,
.evg-proposition__titre { position: relative; color: #fff; }
.evg-proposition__sur {
    font-size: 13px;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.evg-proposition__titre {
    max-width: 7em;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.15;
}

@media (max-width: 991px) {
    .evg-propositions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .evg-proposition__titre { font-size: 26px; }
}
@media (max-width: 559px) {
    .evg-propositions { grid-template-columns: minmax(0, 1fr); }
}

/* ── Les quatre associations membres ([evg_associations]) ──────────────────────── */

/*
 * Quatre carrés, séparés par la gouttière de l'accueil (plus bas). Deux par ligne sous
 * 992 px, un seul sous 560.
 */
.evg-associations {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
}
.evg-association { display: flex; flex-direction: column; }
.evg-association__photo {
    display: block;
    aspect-ratio: 1 / 1;
    background-position: center;
    background-size: cover;
    transition: opacity .2s ease;
}
a.evg-association__photo:hover { opacity: .85; }
a.evg-association__photo:focus-visible { outline: 2px solid var(--evg-or, #866d4b); outline-offset: -2px; }
.evg-association__infos {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 18px 20px 24px;
    font-size: 15px;
    line-height: 1.45;
}
.evg-association__nom { font-weight: 600; margin-bottom: 4px; }
.evg-association__infos a { color: inherit; text-decoration: none; }
.evg-association__infos a:hover,
.evg-association__infos a:focus-visible { color: var(--evg-or, #866d4b); text-decoration: underline; }

@media (max-width: 991px) {
    .evg-associations { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 559px) {
    .evg-associations { grid-template-columns: minmax(0, 1fr); }
}

/* ── Gouttières de l'accueil ───────────────────────────────────────────────────── */

/*
 * Choix d'Olivier (15/10), qui remplace les cases jointives du 25/09 : les trois blocs de
 * l'accueil — prochaines visites, « Explore.Brussels vous propose », associations — ont la
 * même gouttière que la page des visites.
 */
.evg-propositions,
.evg-prochaines .evg-liste__damier,
.evg-associations { gap: 20px; }

/* Le défilement de logos ([evg_marquee]) vit dans l'extension commune « BP — Outils communs ». */


/* ── Une section sur fond sombre ───────────────────────────────────────────────── */

/*
 * Le thème colore ses titres depuis sa propre palette : sur un fond noir, ils disparaissent.
 * La classe se pose sur la section, et tout ce qui s'y écrit passe en blanc.
 */
.evg-section-sombre h2,
.evg-section-sombre h3,
.evg-section-sombre .sc_item_title,
.evg-section-sombre .sc_item_title a { color: #fff !important; }
