/* =====================================================
   PAGE ACHETER — De Pierre en Pierre
   ===================================================== */

.dpep-acheter {
    --serif: 'Cormorant Garamond', Georgia, serif;
    --sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --c-text: #1A1A1A;
    --c-text-soft: #6B6B6B;
    --c-text-muted: #9A9A9A;
    --c-accent: #1F4E79;
    --c-accent-dark: #163b5e;
    --c-primary: #2A8B7E;
    --c-bg-soft: #FAF8F5;
    --c-bg-warm: #F4F1EC;
    --c-border: #EAE5DC;
    font-family: var(--sans);
    color: var(--c-text);
}
.dpep-acheter h1,.dpep-acheter h2,.dpep-acheter h3 {
    font-family: var(--serif);
    font-weight: 400;
    color: var(--c-accent);
    letter-spacing: -0.01em;
    line-height: 1.15;
}

.dpep-acheter-container {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 32px;
}

.dpep-acheter-eyebrow {
    font-family: var(--sans) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: var(--c-primary) !important;
    margin: 0 0 14px 0 !important;
    line-height: 1 !important;
    display: block;
}
.dpep-acheter-eyebrow--light {
    color: rgba(255,255,255,0.75) !important;
}

.dpep-acheter-section { padding: 100px 0; }
.dpep-acheter-section--alt { background: var(--c-bg-soft); }

.dpep-acheter-section-header {
    text-align: center;
    max-width: 680px;
    margin: 0 auto 64px;
}
.dpep-acheter-section-header h2 {
    font-size: 42px !important;
    margin: 0 0 16px 0 !important;
    font-weight: 400 !important;
    color: var(--c-accent) !important;
}
.dpep-acheter-section-sub {
    font-size: 16px !important;
    color: var(--c-text-soft) !important;
    margin: 0 !important;
    font-weight: 300 !important;
    line-height: 1.6 !important;
}

.dpep-acheter-cta-row {
    text-align: center;
    margin-top: 48px;
}

/* =====================================================
   BOUTONS
   ===================================================== */
.dpep-acheter-btn {
    display: inline-block;
    padding: 15px 32px;
    background: var(--c-accent);
    color: #fff !important;
    text-decoration: none !important;
    border-radius: 2px;
    font-family: var(--sans);
    font-weight: 500;
    font-size: 13px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    border: 1.5px solid var(--c-accent);
    transition: all 0.25s ease;
    cursor: pointer;
    line-height: 1;
}
.dpep-acheter-btn:hover {
    background: var(--c-accent-dark);
    border-color: var(--c-accent-dark);
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(31,78,121,0.2);
}
.dpep-acheter-btn--ghost {
    background: transparent;
    color: var(--c-accent) !important;
}
.dpep-acheter-btn--ghost:hover {
    background: var(--c-accent);
    color: #fff !important;
}
.dpep-acheter-btn--white {
    background: #fff;
    color: var(--c-accent) !important;
    border-color: #fff;
}
.dpep-acheter-btn--white:hover {
    background: rgba(255,255,255,0.92);
    border-color: rgba(255,255,255,0.92);
    color: var(--c-accent) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,0.15);
}

/* =====================================================
   1. HERO + MOTEUR
   ===================================================== */
.dpep-acheter-hero {
    background: linear-gradient(160deg, #F4F1EC 0%, #FAF8F5 60%, #EAE5DC 100%);
    padding: 120px 24px 100px;
    position: relative;
    overflow: hidden;
}
.dpep-acheter-hero::before {
    content: '';
    position: absolute;
    top: -180px; right: -180px;
    width: 550px; height: 550px;
    background: radial-gradient(circle, rgba(42,139,126,0.07) 0%, transparent 70%);
    border-radius: 50%;
}
.dpep-acheter-hero-inner {
    position: relative;
    z-index: 1;
    max-width: 860px;
    margin: 0 auto;
    text-align: center;
}
.dpep-acheter-hero h1 {
    font-size: 56px !important;
    margin: 0 0 20px 0 !important;
    font-weight: 400 !important;
    letter-spacing: -0.02em !important;
    color: var(--c-accent) !important;
    line-height: 1.1 !important;
}
.dpep-acheter-hero-sub {
    font-size: 18px !important;
    color: var(--c-text-soft) !important;
    margin: 0 auto 40px !important;
    font-weight: 300 !important;
    line-height: 1.55 !important;
    max-width: 600px;
}

/* Moteur simplifié */
.dpep-acheter-search {
    display: flex;
    align-items: stretch;
    gap: 0;
    max-width: 700px;
    margin: 0 auto 20px;
    background: #fff;
    border-radius: 4px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.12);
    border: 1px solid rgba(255,255,255,0.5);
    overflow: hidden;
}
.dpep-acheter-search-field {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 14px 20px;
    border-right: 1px solid var(--c-border);
    text-align: left;
    min-width: 0;
}
.dpep-acheter-search-field label {
    font-family: var(--sans) !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    color: var(--c-text-muted) !important;
    margin-bottom: 6px !important;
    display: block !important;
    line-height: 1 !important;
}
.dpep-acheter-search-field select {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    font-family: var(--sans) !important;
    font-size: 15px !important;
    color: var(--c-text) !important;
    background: transparent !important;
    cursor: pointer !important;
    width: 100% !important;
    padding: 0 !important;
    appearance: auto !important;
    -webkit-appearance: menulist !important;
    font-weight: 500 !important;
    margin: 0 !important;
}
.dpep-acheter-search-btn {
    background: var(--c-primary) !important;
    color: #fff !important;
    border: none !important;
    padding: 0 28px !important;
    font-family: var(--sans) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: background 0.2s !important;
    white-space: nowrap;
    min-height: 64px;
}
.dpep-acheter-search-btn:hover {
    background: var(--c-accent) !important;
}

.dpep-acheter-hero-link {
    font-family: var(--sans);
    font-size: 13px;
    color: var(--c-text-soft);
    text-decoration: none;
    letter-spacing: 0.04em;
    border-bottom: 1px solid var(--c-border);
    padding-bottom: 2px;
    transition: color 0.2s, border-color 0.2s;
}
.dpep-acheter-hero-link:hover {
    color: var(--c-accent);
    border-color: var(--c-accent);
}

/* Mobile moteur */
@media (max-width: 700px) {
    .dpep-acheter-search {
        flex-direction: column;
        max-width: 100%;
    }
    .dpep-acheter-search-field {
        border-right: none;
        border-bottom: 1px solid var(--c-border);
    }
    .dpep-acheter-search-btn {
        padding: 18px !important;
        min-height: auto;
        width: 100%;
    }
}

/* =====================================================
   2. GRILLE TYPOLOGIES — 3 + 4 + 4 colonnes
   ===================================================== */
.dpep-acheter-types-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

/* La 1ère carte est plus grande (accent) */
.dpep-acheter-type-card:first-child {
    grid-column: span 2;
}

.dpep-acheter-type-card {
    position: relative;
    border-radius: 2px;
    overflow: hidden;
    text-decoration: none !important;
    display: block;
    aspect-ratio: 3 / 2;
    transition: transform 0.4s ease;
}
.dpep-acheter-type-card:first-child {
    aspect-ratio: 16 / 9;
}
.dpep-acheter-type-card:hover {
    transform: translateY(-4px);
}
.dpep-acheter-type-img {
    position: absolute;
    inset: 0;
}
.dpep-acheter-type-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
    display: block;
}
.dpep-acheter-type-card:hover .dpep-acheter-type-img img {
    transform: scale(1.07);
}
.dpep-acheter-type-card::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0.04) 30%, rgba(0,0,0,0.72) 100%);
}
.dpep-acheter-type-label {
    position: absolute;
    bottom: 20px;
    left: 20px;
    right: 20px;
    z-index: 2;
    color: #fff;
}
.dpep-acheter-type-eyebrow {
    font-family: var(--sans);
    font-size: 10px;
    color: rgba(255,255,255,0.8);
    text-transform: uppercase;
    letter-spacing: 0.15em;
    display: block;
    margin-bottom: 5px;
}
.dpep-acheter-type-card:first-child .dpep-acheter-type-eyebrow {
    font-size: 11px;
}
.dpep-acheter-type-label h3 {
    font-family: var(--serif) !important;
    font-size: 22px !important;
    color: #fff !important;
    margin: 0 !important;
    font-weight: 400 !important;
    letter-spacing: -0.01em;
    line-height: 1.1;
}
.dpep-acheter-type-card:first-child .dpep-acheter-type-label h3 {
    font-size: 30px !important;
}

@media (max-width: 1000px) {
    .dpep-acheter-types-grid { grid-template-columns: repeat(3, 1fr); }
    .dpep-acheter-type-card:first-child { grid-column: span 1; aspect-ratio: 3 / 2; }
    .dpep-acheter-type-card:first-child .dpep-acheter-type-label h3 { font-size: 22px !important; }
}
@media (max-width: 650px) {
    .dpep-acheter-types-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
    .dpep-acheter-type-label h3 { font-size: 17px !important; }
}

/* =====================================================
   3. GRILLE RÉGIONS — 3 colonnes
   ===================================================== */
.dpep-acheter-regions-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.dpep-acheter-region-card {
    position: relative;
    aspect-ratio: 4 / 3;
    border-radius: 2px;
    overflow: hidden;
    text-decoration: none !important;
    display: block;
    transition: transform 0.4s ease;
}
.dpep-acheter-region-card:hover {
    transform: translateY(-5px);
}
.dpep-acheter-region-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.7s ease;
}
.dpep-acheter-region-card:hover img {
    transform: scale(1.07);
}
.dpep-acheter-region-card::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0.05) 20%, rgba(0,0,0,0.75) 100%);
}
.dpep-acheter-region-label {
    position: absolute;
    bottom: 24px;
    left: 24px;
    right: 24px;
    z-index: 2;
    color: #fff;
}
.dpep-acheter-region-label span {
    font-family: var(--sans);
    font-size: 10px;
    color: rgba(255,255,255,0.8);
    text-transform: uppercase;
    letter-spacing: 0.15em;
    display: block;
    margin-bottom: 6px;
}
.dpep-acheter-region-label h3 {
    font-family: var(--serif) !important;
    font-size: 24px !important;
    color: #fff !important;
    margin: 0 !important;
    font-weight: 400 !important;
    letter-spacing: -0.01em;
}

@media (max-width: 900px) {
    .dpep-acheter-regions-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 580px) {
    .dpep-acheter-regions-grid { grid-template-columns: 1fr; gap: 12px; }
}

/* =====================================================
   4. CTA FINAL
   ===================================================== */
.dpep-acheter-final {
    background: linear-gradient(135deg, var(--c-accent) 0%, var(--c-accent-dark) 100%);
    padding: 100px 24px;
    position: relative;
    overflow: hidden;
    color: #fff;
}
.dpep-acheter-final::before {
    content: '';
    position: absolute;
    top: -120px; right: -120px;
    width: 400px; height: 400px;
    background: rgba(255,255,255,0.04);
    border-radius: 50%;
}
.dpep-acheter-final-inner {
    position: relative;
    z-index: 1;
    max-width: 640px;
    margin: 0 auto;
    text-align: center;
}
.dpep-acheter-final h2 {
    font-size: 40px !important;
    color: #fff !important;
    margin: 0 0 16px 0 !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
}
.dpep-acheter-final p {
    color: rgba(255,255,255,0.85) !important;
    font-size: 16px !important;
    margin: 0 0 36px 0 !important;
    font-weight: 300 !important;
    line-height: 1.6 !important;
    font-family: var(--sans) !important;
}

/* =====================================================
   RESPONSIVE GLOBAL
   ===================================================== */
@media (max-width: 700px) {
    .dpep-acheter-section { padding: 64px 0; }
    .dpep-acheter-section-header { margin-bottom: 40px; }
    .dpep-acheter-section-header h2 { font-size: 30px !important; }
    .dpep-acheter-hero { padding: 80px 20px 64px; }
    .dpep-acheter-hero h1 { font-size: 34px !important; }
    .dpep-acheter-hero-sub { font-size: 15px !important; }
    .dpep-acheter-final { padding: 70px 20px; }
    .dpep-acheter-final h2 { font-size: 28px !important; }
    .dpep-acheter-container { padding: 0 20px; }
}

/* =========================================================
   DPEP - Acheter : masquer la barre de recherche Houzez du haut
   Page /acheter/ = page-id-21789
   Ajouté suite diagnostic console 2026-05-21
   ========================================================= */

body.page-id-21789 section#desktop-header-search,
body.page-id-21789 .advanced-search.advanced-search-nav.desktop-search-nav,
body.page-id-21789 form#desktop-search-form,
body.page-id-21789 form#desktop-search-form.houzez-search-form-js {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Sécurité : on garde bien le bloc de recherche premium */
body.page-id-21789 .dpep-acheter-search,
body.page-id-21789 .dpep-acheter-search-mobile-ready-v8,
body.page-id-21789 .dpep-acheter-hero {
    display: flex !important;
    visibility: visible !important;
}

/* =========================================================
   DPEP - Acheter v2 : flèches selects + neutralisation filtre avancé
   2026-05-21
   Objectif :
   - remettre les flèches des champs Région / Type au bon endroit
   - empêcher l'ouverture de la page de filtres Houzez non fermable
   ========================================================= */

body.page-id-21789 .dpep-acheter-search {
    align-items: stretch !important;
}

body.page-id-21789 .dpep-acheter-search-field {
    position: relative !important;
    overflow: hidden !important;
}

body.page-id-21789 .dpep-acheter-search-field select,
body.page-id-21789 .dpep-acheter-search select {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-right: 30px !important;
    background-color: transparent !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%231F4E79' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5L6 6.5L11 1.5'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 8px center !important;
    background-size: 12px 8px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* Supprime les anciennes flèches natives/parasites quand le navigateur les affiche encore */
body.page-id-21789 .dpep-acheter-search-field select::-ms-expand {
    display: none !important;
}

/* Le bouton "Modifier les filtres" ouvrait une zone Houzez lourde, non fermable.
   On le masque pour garder uniquement le moteur propre Région / Type / Voir les biens. */
body.page-id-21789 .dpep-acheter-filter-open-v8,
body.page-id-21789 button.dpep-acheter-filter-open-v8,
body.page-id-21789 .dpep-native-mobile-filter-trigger-v4,
body.page-id-21789 .dpep-native-mobile-filter-trigger-v24 {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    pointer-events: none !important;
}

/* Recentrage du moteur après suppression du bouton Modifier les filtres */
body.page-id-21789 .dpep-acheter-search.dpep-acheter-search-mobile-ready-v8,
body.page-id-21789 form.dpep-acheter-search {
    max-width: 620px !important;
}

body.page-id-21789 .dpep-acheter-search-field {
    min-width: 0 !important;
}

@media (min-width: 768px) {
    body.page-id-21789 .dpep-acheter-search.dpep-acheter-search-mobile-ready-v8,
    body.page-id-21789 form.dpep-acheter-search {
        display: flex !important;
        justify-content: center !important;
    }

    body.page-id-21789 .dpep-acheter-search-field {
        flex: 0 1 210px !important;
    }

    body.page-id-21789 .dpep-acheter-search-btn {
        flex: 0 0 160px !important;
    }
}

@media (max-width: 767px) {
    body.page-id-21789 .dpep-acheter-search.dpep-acheter-search-mobile-ready-v8,
    body.page-id-21789 form.dpep-acheter-search {
        max-width: 360px !important;
        width: 100% !important;
    }

    body.page-id-21789 .dpep-acheter-search-field select,
    body.page-id-21789 .dpep-acheter-search select {
        padding-right: 34px !important;
        background-position: right 12px center !important;
    }
}

/* =========================================================
   DPEP - Acheter v3 : filtres complémentaires conservés
   2026-05-21
   Objectif :
   - garder le bouton "Modifier les filtres"
   - rendre le panneau Houzez plus propre, lisible et refermable
   - conserver Région / Type / Voir les biens dans le moteur principal
   ========================================================= */

/* On annule la v2 qui masquait le bouton Modifier les filtres */
body.page-id-21789 .dpep-acheter-search.dpep-acheter-search-mobile-ready-v8,
body.page-id-21789 form.dpep-acheter-search {
    max-width: 760px !important;
    width: 100% !important;
    display: flex !important;
    align-items: stretch !important;
    overflow: hidden !important;
}

body.page-id-21789 .dpep-acheter-filter-open-v8,
body.page-id-21789 button.dpep-acheter-filter-open-v8,
body.page-id-21789 .dpep-native-mobile-filter-trigger-v4,
body.page-id-21789 .dpep-native-mobile-filter-trigger-v24 {
    display: flex !important;
    visibility: visible !important;
    width: auto !important;
    min-width: 190px !important;
    max-width: none !important;
    height: auto !important;
    min-height: 64px !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 20px !important;
    margin: 0 !important;
    border: 0 !important;
    border-right: 1px solid var(--c-border) !important;
    pointer-events: auto !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: #fff !important;
    color: var(--c-accent) !important;
    font-family: var(--sans) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    box-shadow: none !important;
}

body.page-id-21789 .dpep-acheter-filter-open-v8:hover,
body.page-id-21789 button.dpep-acheter-filter-open-v8:hover {
    background: #FAF8F5 !important;
    color: var(--c-primary) !important;
}

@media (min-width: 768px) {
    body.page-id-21789 .dpep-acheter-search-field {
        flex: 1 1 200px !important;
    }
    body.page-id-21789 .dpep-acheter-search-btn {
        flex: 0 0 150px !important;
    }
}

/* Flèches propres des deux select du moteur principal */
body.page-id-21789 .dpep-acheter-search-field select,
body.page-id-21789 .dpep-acheter-search select {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 34px !important;
    background-color: transparent !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%231F4E79' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5L6 6.5L11 1.5'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 12px 8px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* =========================================================
   Panneau de filtres complémentaires Houzez : off-canvas propre
   ========================================================= */

body.page-id-21789 #overlay-search-advanced-module,
body.page-id-21789 .overlay-search-advanced-module,
body.page-id-21789 .advanced-search-mobile,
body.page-id-21789 .search-mobile-wrap,
body.page-id-21789 .mobile-search-wrap {
    background: rgba(250,248,245,.98) !important;
    color: #1A1A1A !important;
    z-index: 999999 !important;
}

/* Quand Houzez ouvre le module, on le transforme en panneau lisible */
body.page-id-21789 #overlay-search-advanced-module,
body.page-id-21789 .overlay-search-advanced-module {
    padding: 0 !important;
}

body.page-id-21789 #overlay-search-advanced-module .overlay-search-module-inner,
body.page-id-21789 #overlay-search-advanced-module .search-module,
body.page-id-21789 #overlay-search-advanced-module .advanced-search-module,
body.page-id-21789 #overlay-search-advanced-module .container,
body.page-id-21789 .overlay-search-advanced-module .overlay-search-module-inner,
body.page-id-21789 .overlay-search-advanced-module .search-module,
body.page-id-21789 .overlay-search-advanced-module .advanced-search-module,
body.page-id-21789 .overlay-search-advanced-module .container {
    max-width: 760px !important;
    margin: 0 auto !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
}

body.page-id-21789 #overlay-search-advanced-module .search-title,
body.page-id-21789 .overlay-search-advanced-module .search-title,
body.page-id-21789 #overlay-search-advanced-module h2,
body.page-id-21789 .overlay-search-advanced-module h2 {
    font-family: var(--serif) !important;
    color: var(--c-accent) !important;
    font-size: 30px !important;
    line-height: 1.15 !important;
    font-weight: 400 !important;
    margin: 0 0 18px !important;
    padding: 28px 54px 8px 0 !important;
    text-align: left !important;
}

/* Croix visible et cliquable */
body.page-id-21789 #overlay-search-advanced-module .overlay-search-module-close,
body.page-id-21789 #overlay-search-advanced-module .hz-navigation-close,
body.page-id-21789 #overlay-search-advanced-module .close,
body.page-id-21789 #overlay-search-advanced-module button.close,
body.page-id-21789 #overlay-search-advanced-module .btn-close,
body.page-id-21789 #overlay-search-advanced-module .close-btn,
body.page-id-21789 .overlay-search-advanced-module .overlay-search-module-close,
body.page-id-21789 .overlay-search-advanced-module .hz-navigation-close,
body.page-id-21789 .overlay-search-advanced-module .close,
body.page-id-21789 .overlay-search-advanced-module button.close,
body.page-id-21789 .overlay-search-advanced-module .btn-close,
body.page-id-21789 .overlay-search-advanced-module .close-btn {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: fixed !important;
    top: 18px !important;
    right: 18px !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    border: 1px solid rgba(31,78,121,.14) !important;
    background: #ffffff !important;
    color: var(--c-accent) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.12) !important;
    font-size: 0 !important;
    line-height: 1 !important;
    z-index: 1000000 !important;
    cursor: pointer !important;
    pointer-events: auto !important;
}

body.page-id-21789 #overlay-search-advanced-module .overlay-search-module-close::before,
body.page-id-21789 #overlay-search-advanced-module .hz-navigation-close::before,
body.page-id-21789 #overlay-search-advanced-module .close::before,
body.page-id-21789 #overlay-search-advanced-module .btn-close::before,
body.page-id-21789 #overlay-search-advanced-module .close-btn::before,
body.page-id-21789 .overlay-search-advanced-module .overlay-search-module-close::before,
body.page-id-21789 .overlay-search-advanced-module .hz-navigation-close::before,
body.page-id-21789 .overlay-search-advanced-module .close::before,
body.page-id-21789 .overlay-search-advanced-module .btn-close::before,
body.page-id-21789 .overlay-search-advanced-module .close-btn::before {
    content: '×' !important;
    display: block !important;
    font-family: Arial, sans-serif !important;
    font-size: 28px !important;
    font-weight: 300 !important;
    line-height: 38px !important;
    color: var(--c-accent) !important;
}

/* Formulaire en cartes simples */
body.page-id-21789 #overlay-search-advanced-module form,
body.page-id-21789 .overlay-search-advanced-module form {
    max-width: 760px !important;
    margin: 0 auto !important;
    padding: 0 18px 28px !important;
    overflow: visible !important;
}

body.page-id-21789 #overlay-search-advanced-module form > .row,
body.page-id-21789 .overlay-search-advanced-module form > .row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 18px !important;
    background: #fff !important;
    border: 1px solid rgba(31,78,121,.10) !important;
    border-radius: 18px !important;
    box-shadow: 0 18px 48px rgba(0,0,0,.08) !important;
}

body.page-id-21789 #overlay-search-advanced-module .form-group,
body.page-id-21789 .overlay-search-advanced-module .form-group {
    margin: 0 !important;
}

body.page-id-21789 #overlay-search-advanced-module .form-control,
body.page-id-21789 #overlay-search-advanced-module input,
body.page-id-21789 #overlay-search-advanced-module select,
body.page-id-21789 #overlay-search-advanced-module .bootstrap-select > .dropdown-toggle,
body.page-id-21789 .overlay-search-advanced-module .form-control,
body.page-id-21789 .overlay-search-advanced-module input,
body.page-id-21789 .overlay-search-advanced-module select,
body.page-id-21789 .overlay-search-advanced-module .bootstrap-select > .dropdown-toggle {
    min-height: 46px !important;
    height: 46px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(31,78,121,.12) !important;
    background: #FAF8F5 !important;
    color: #1A1A1A !important;
    box-shadow: none !important;
    font-family: var(--sans) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}

body.page-id-21789 #overlay-search-advanced-module label,
body.page-id-21789 .overlay-search-advanced-module label {
    font-family: var(--sans) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: .13em !important;
    text-transform: uppercase !important;
    color: #8A8178 !important;
    margin: 0 0 6px !important;
}

/* Prix / surfaces : éviter les blocs trop hauts ou cassés */
body.page-id-21789 #overlay-search-advanced-module .price-range-wrap,
body.page-id-21789 #overlay-search-advanced-module .range-wrap,
body.page-id-21789 .overlay-search-advanced-module .price-range-wrap,
body.page-id-21789 .overlay-search-advanced-module .range-wrap {
    grid-column: 1 / -1 !important;
    background: #FAF8F5 !important;
    border-radius: 14px !important;
    border: 1px solid rgba(31,78,121,.10) !important;
    padding: 14px !important;
    margin: 0 !important;
}

/* Boutons d'action */
body.page-id-21789 #overlay-search-advanced-module .btn-search,
body.page-id-21789 #overlay-search-advanced-module button[type="submit"],
body.page-id-21789 .overlay-search-advanced-module .btn-search,
body.page-id-21789 .overlay-search-advanced-module button[type="submit"] {
    background: var(--c-primary) !important;
    border-color: var(--c-primary) !important;
    color: #fff !important;
    border-radius: 999px !important;
    min-height: 48px !important;
    font-family: var(--sans) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    box-shadow: 0 12px 24px rgba(42,139,126,.20) !important;
}

body.page-id-21789 #overlay-search-advanced-module .reset-search-btn,
body.page-id-21789 #overlay-search-advanced-module .btn-reset,
body.page-id-21789 .overlay-search-advanced-module .reset-search-btn,
body.page-id-21789 .overlay-search-advanced-module .btn-reset {
    background: #fff !important;
    border: 1px solid rgba(31,78,121,.14) !important;
    color: var(--c-accent) !important;
    border-radius: 999px !important;
    min-height: 48px !important;
    box-shadow: none !important;
}

/* On masque les actions secondaires qui parasitent l'interface */
body.page-id-21789 #overlay-search-advanced-module .save-search-btn,
body.page-id-21789 #overlay-search-advanced-module .houzez-save-search-js,
body.page-id-21789 .overlay-search-advanced-module .save-search-btn,
body.page-id-21789 .overlay-search-advanced-module .houzez-save-search-js {
    display: none !important;
}

@media (max-width: 767px) {
    body.page-id-21789 .dpep-acheter-search.dpep-acheter-search-mobile-ready-v8,
    body.page-id-21789 form.dpep-acheter-search {
        max-width: 360px !important;
        flex-direction: column !important;
        overflow: visible !important;
        border-radius: 18px !important;
        gap: 10px !important;
        background: transparent !important;
        box-shadow: none !important;
        border: 0 !important;
    }

    body.page-id-21789 .dpep-acheter-filter-open-v8,
    body.page-id-21789 button.dpep-acheter-filter-open-v8 {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 48px !important;
        border: 1px solid var(--c-border) !important;
        border-radius: 14px !important;
        background: #fff !important;
    }

    body.page-id-21789 .dpep-acheter-search-field {
        background: #fff !important;
        border: 1px solid var(--c-border) !important;
        border-radius: 14px !important;
        border-bottom: 1px solid var(--c-border) !important;
    }

    body.page-id-21789 .dpep-acheter-search-btn {
        border-radius: 14px !important;
        min-height: 50px !important;
    }

    body.page-id-21789 #overlay-search-advanced-module,
    body.page-id-21789 .overlay-search-advanced-module {
        position: fixed !important;
        inset: 0 !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    body.page-id-21789 #overlay-search-advanced-module form > .row,
    body.page-id-21789 .overlay-search-advanced-module form > .row {
        grid-template-columns: 1fr !important;
        padding: 14px !important;
        border-radius: 18px !important;
    }

    body.page-id-21789 #overlay-search-advanced-module .search-title,
    body.page-id-21789 .overlay-search-advanced-module .search-title,
    body.page-id-21789 #overlay-search-advanced-module h2,
    body.page-id-21789 .overlay-search-advanced-module h2 {
        font-size: 26px !important;
        padding-top: 26px !important;
    }
}

/* =========================================================
   DPEP - Acheter v4 : panneau filtres complémentaires propre
   Diagnostic : #overlay-search-advanced-module ouvert + form#mobile-search-form
   ========================================================= */

body.page-id-21789.dpep-filter-overlay-open-v8,
body.page-id-21789:has(#overlay-search-advanced-module.open) {
    overflow: hidden !important;
}

body.page-id-21789 #overlay-search-advanced-module.open,
body.page-id-21789 .overlay-search-advanced-module.open {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    width: 100vw !important;
    height: 100vh !important;
    padding: 0 !important;
    background: #FBFAF7 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

/* En-tête lisible et croix toujours accessible */
body.page-id-21789 #overlay-search-advanced-module.open .search-title,
body.page-id-21789 .overlay-search-advanced-module.open .search-title {
    position: sticky !important;
    top: 0 !important;
    z-index: 1000000 !important;
    width: 100% !important;
    min-height: 96px !important;
    padding: 24px 72px 18px !important;
    background: rgba(251, 250, 247, .96) !important;
    border-bottom: 1px solid rgba(31,78,121,.08) !important;
    backdrop-filter: blur(10px) !important;
    text-align: center !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .search-title h2,
body.page-id-21789 .overlay-search-advanced-module.open .search-title h2,
body.page-id-21789 #overlay-search-advanced-module.open .search-title,
body.page-id-21789 .overlay-search-advanced-module.open .search-title {
    font-family: var(--serif, Georgia, serif) !important;
    font-size: 34px !important;
    line-height: 1.1 !important;
    color: #1F4E79 !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .overlay-search-module-close,
body.page-id-21789 .overlay-search-advanced-module.open .overlay-search-module-close {
    position: fixed !important;
    top: 24px !important;
    right: 28px !important;
    z-index: 1000001 !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    border: 1px solid rgba(31,78,121,.12) !important;
    background: #fff !important;
    color: #1A1A1A !important;
    box-shadow: 0 10px 30px rgba(0,0,0,.12) !important;
    opacity: 1 !important;
    cursor: pointer !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .overlay-search-module-close::before,
body.page-id-21789 .overlay-search-advanced-module.open .overlay-search-module-close::before {
    content: "×" !important;
    display: block !important;
    font-family: Arial, sans-serif !important;
    font-size: 28px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
}

/* Le formulaire devient une carte premium centrée */
body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form,
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form {
    width: min(920px, calc(100vw - 40px)) !important;
    max-width: 920px !important;
    margin: 32px auto 80px !important;
    padding: 28px !important;
    background: #fff !important;
    border: 1px solid rgba(31,78,121,.10) !important;
    border-radius: 24px !important;
    box-shadow: 0 24px 70px rgba(31,78,121,.10) !important;
}

body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row,
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Neutralise Bootstrap dans le panneau : évite les colonnes éclatées */
body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > [class*="col-"],
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > [class*="col-"] {
    width: 100% !important;
    max-width: none !important;
    flex: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Emplacements : localisation + rayon sur la première ligne */
body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > .col-8,
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > .col-8 {
    grid-column: span 1 !important;
}

body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > .col-4,
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > .col-4 {
    grid-column: span 1 !important;
}

body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > .col-12,
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > .col-12,
body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > .col-12.mb-4,
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > .col-12.mb-4 {
    grid-column: 1 / -1 !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .form-group,
body.page-id-21789 .overlay-search-advanced-module.open .form-group {
    margin: 0 !important;
}

/* Champs et menus : largeur pleine, flèche à droite, texte non masqué */
body.page-id-21789 #overlay-search-advanced-module.open .form-control,
body.page-id-21789 #overlay-search-advanced-module.open input.form-control,
body.page-id-21789 #overlay-search-advanced-module.open .bootstrap-select,
body.page-id-21789 #overlay-search-advanced-module.open .bootstrap-select.form-control,
body.page-id-21789 #overlay-search-advanced-module.open .bootstrap-select > .dropdown-toggle,
body.page-id-21789 .overlay-search-advanced-module.open .form-control,
body.page-id-21789 .overlay-search-advanced-module.open input.form-control,
body.page-id-21789 .overlay-search-advanced-module.open .bootstrap-select,
body.page-id-21789 .overlay-search-advanced-module.open .bootstrap-select.form-control,
body.page-id-21789 .overlay-search-advanced-module.open .bootstrap-select > .dropdown-toggle {
    width: 100% !important;
    max-width: 100% !important;
    height: 52px !important;
    min-height: 52px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(31,78,121,.14) !important;
    background: #FBFAF7 !important;
    color: #1A1A1A !important;
    box-shadow: none !important;
    font-family: var(--sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .bootstrap-select > .dropdown-toggle,
body.page-id-21789 .overlay-search-advanced-module.open .bootstrap-select > .dropdown-toggle {
    padding: 0 44px 0 16px !important;
    text-align: left !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .bootstrap-select .filter-option,
body.page-id-21789 #overlay-search-advanced-module.open .bootstrap-select .filter-option-inner,
body.page-id-21789 #overlay-search-advanced-module.open .bootstrap-select .filter-option-inner-inner,
body.page-id-21789 .overlay-search-advanced-module.open .bootstrap-select .filter-option,
body.page-id-21789 .overlay-search-advanced-module.open .bootstrap-select .filter-option-inner,
body.page-id-21789 .overlay-search-advanced-module.open .bootstrap-select .filter-option-inner-inner {
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 28px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    line-height: 50px !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .bootstrap-select .dropdown-toggle::after,
body.page-id-21789 .overlay-search-advanced-module.open .bootstrap-select .dropdown-toggle::after {
    position: absolute !important;
    right: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
}

/* Budget : compact, lisible, largeur pleine */
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 18px !important;
    background: #FBFAF7 !important;
    border: 1px solid rgba(31,78,121,.10) !important;
    border-radius: 18px !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .range-wrap label,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap label,
body.page-id-21789 #overlay-search-advanced-module.open .range-text,
body.page-id-21789 .overlay-search-advanced-module.open .range-text {
    color: #1F4E79 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}

body.page-id-21789 #overlay-search-advanced-module.open input[type="range"],
body.page-id-21789 .overlay-search-advanced-module.open input[type="range"] {
    width: 100% !important;
    max-width: 100% !important;
    border: 0 !important;
    background: transparent !important;
}

/* Actions : une ligne propre */
body.page-id-21789 #overlay-search-advanced-module.open .btn-search,
body.page-id-21789 .overlay-search-advanced-module.open .btn-search {
    width: 100% !important;
    height: 54px !important;
    min-height: 54px !important;
    border-radius: 999px !important;
    background: #288A76 !important;
    border-color: #288A76 !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .reset-search-btn-wrap,
body.page-id-21789 .overlay-search-advanced-module.open .reset-search-btn-wrap {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    height: auto !important;
    text-align: center !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .reset-search-btn,
body.page-id-21789 .overlay-search-advanced-module.open .reset-search-btn {
    width: auto !important;
    min-width: 190px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 22px !important;
    border-radius: 999px !important;
    background: #fff !important;
    border: 1px solid rgba(31,78,121,.14) !important;
    color: #1F4E79 !important;
    box-shadow: none !important;
}

/* Sauvegarde : utile plus tard mais trop intrusive ici */
body.page-id-21789 #overlay-search-advanced-module.open .save-search-form-wrap,
body.page-id-21789 .overlay-search-advanced-module.open .save-search-form-wrap {
    display: none !important;
}

/* Le bouton "Autres caractéristiques" reste discret s'il est injecté */
body.page-id-21789 #overlay-search-advanced-module.open .advanced-search-btn,
body.page-id-21789 .overlay-search-advanced-module.open .advanced-search-btn {
    border-radius: 999px !important;
    background: #fff !important;
    color: #1F4E79 !important;
    border: 1px solid rgba(31,78,121,.12) !important;
    box-shadow: none !important;
}

@media (max-width: 767px) {
    body.page-id-21789 #overlay-search-advanced-module.open .search-title,
    body.page-id-21789 .overlay-search-advanced-module.open .search-title {
        min-height: 78px !important;
        padding: 20px 64px 14px 20px !important;
        text-align: left !important;
        font-size: 28px !important;
    }

    body.page-id-21789 #overlay-search-advanced-module.open .overlay-search-module-close,
    body.page-id-21789 .overlay-search-advanced-module.open .overlay-search-module-close {
        top: 16px !important;
        right: 16px !important;
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
    }

    body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form,
    body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form {
        width: calc(100vw - 24px) !important;
        margin: 18px auto 48px !important;
        padding: 18px !important;
        border-radius: 20px !important;
    }

    body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row,
    body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > .col-8,
    body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > .col-4,
    body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > .col-6,
    body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > .col-12,
    body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > .col-8,
    body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > .col-4,
    body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > .col-6,
    body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > .col-12 {
        grid-column: 1 / -1 !important;
    }
}

/* =====================================================
   V5 — Affinage panneau filtres acheter
   ===================================================== */

/* Retire complètement le bouton de géolocalisation */
body.page-id-21789 #overlay-search-advanced-module .location-search .location-trigger,
body.page-id-21789 .overlay-search-advanced-module .location-search .location-trigger {
    display: none !important;
}
body.page-id-21789 #overlay-search-advanced-module .location-search input.form-control,
body.page-id-21789 .overlay-search-advanced-module .location-search input.form-control {
    width: 100% !important;
    padding-right: 18px !important;
}

/* Budget : présentation plus propre et plus lisible */
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id],
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] {
    background: #FBFAF7 !important;
    border: 1px solid var(--c-border) !important;
    border-radius: 18px !important;
    padding: 18px 18px 16px !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-text,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-text {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin: 0 0 14px 0 !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-text .range-title,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-text .range-title {
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    color: var(--c-accent) !important;
    margin-right: 6px !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-text .houzez-icon,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-text .houzez-icon {
    font-size: 10px !important;
    color: #A89F91 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] .min-price-range,
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] .max-price-range,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] .min-price-range,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] .max-price-range {
    font-weight: 600 !important;
    color: var(--c-text) !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-wrap,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-wrap {
    margin: 0 !important;
    padding: 14px 14px 6px !important;
    border: 1px solid var(--c-border) !important;
    border-radius: 16px !important;
    background: #fff !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] .sliders_control,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] .sliders_control {
    min-height: 34px !important;
}

/* Autres caractéristiques : un seul bouton propre */
body.page-id-21789 #overlay-search-advanced-module.open .features-list-wrap,
body.page-id-21789 .overlay-search-advanced-module.open .features-list-wrap {
    padding: 0 !important;
    margin: 2px auto 6px !important;
    background: transparent !important;
    border: 0 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .btn-features-list,
body.page-id-21789 .overlay-search-advanced-module.open .btn-features-list {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    min-height: 52px !important;
    padding: 0 24px !important;
    border-radius: 999px !important;
    border: 1px solid #DDD4C7 !important;
    background: #FBF8F2 !important;
    color: var(--c-text) !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .btn-features-list:hover,
body.page-id-21789 .overlay-search-advanced-module.open .btn-features-list:hover {
    background: #F4F1EC !important;
    border-color: #D1C7B8 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .btn-features-list .houzez-icon,
body.page-id-21789 .overlay-search-advanced-module.open .btn-features-list .houzez-icon {
    color: var(--c-primary) !important;
    font-size: 15px !important;
    margin: 0 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open #features-list,
body.page-id-21789 .overlay-search-advanced-module.open #features-list {
    margin-top: 14px !important;
}
body.page-id-21789 #overlay-search-advanced-module.open #features-list .container-fluid,
body.page-id-21789 .overlay-search-advanced-module.open #features-list .container-fluid {
    padding: 0 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open #features-list .features-list,
body.page-id-21789 .overlay-search-advanced-module.open #features-list .features-list {
    margin: 0 !important;
    padding: 18px !important;
    border: 1px solid var(--c-border) !important;
    border-radius: 16px !important;
    background: #fff !important;
}

/* Resserre légèrement sur mobile/tablette */
@media (max-width: 767px) {
    body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-text,
    body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-text {
        gap: 8px !important;
        font-size: 13px !important;
    }
    body.page-id-21789 #overlay-search-advanced-module.open .btn-features-list,
    body.page-id-21789 .overlay-search-advanced-module.open .btn-features-list {
        width: 100% !important;
    }
}


/* =====================================================
   V6 — Panneau filtres en vraie pop-up compacte
   ===================================================== */

/* La surcouche devient une pop-up centrée, pas une page entière */
body.page-id-21789 #overlay-search-advanced-module.open,
body.page-id-21789 .overlay-search-advanced-module.open {
    position: fixed !important;
    top: 74px !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translateX(-50%) !important;
    width: min(980px, calc(100vw - 48px)) !important;
    height: auto !important;
    max-height: calc(100vh - 105px) !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    background: #FBFAF7 !important;
    border: 1px solid rgba(31, 78, 121, .12) !important;
    border-radius: 26px !important;
    box-shadow: 0 30px 90px rgba(20, 32, 45, .22) !important;
    padding: 0 !important;
}

/* En-tête court et propre */
body.page-id-21789 #overlay-search-advanced-module.open .search-title,
body.page-id-21789 .overlay-search-advanced-module.open .search-title {
    position: sticky !important;
    top: 0 !important;
    z-index: 1000000 !important;
    width: 100% !important;
    min-height: 0 !important;
    padding: 18px 74px 14px !important;
    background: rgba(251, 250, 247, .97) !important;
    border-bottom: 1px solid rgba(31,78,121,.08) !important;
    backdrop-filter: blur(10px) !important;
    text-align: center !important;
    font-size: initial !important;
    line-height: initial !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .search-title h2,
body.page-id-21789 .overlay-search-advanced-module.open .search-title h2 {
    margin: 0 !important;
    font-family: var(--serif, Georgia, serif) !important;
    font-size: 30px !important;
    line-height: 1.1 !important;
    font-weight: 500 !important;
    color: #1F4E79 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .search-title p,
body.page-id-21789 .overlay-search-advanced-module.open .search-title p {
    display: none !important;
}

/* Croix dans la pop-up */
body.page-id-21789 #overlay-search-advanced-module.open .overlay-search-module-close,
body.page-id-21789 .overlay-search-advanced-module.open .overlay-search-module-close {
    position: absolute !important;
    top: 13px !important;
    right: 16px !important;
    z-index: 1000001 !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
}

/* Le formulaire n'est plus une seconde grosse carte dans la pop-up */
body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form,
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 24px 28px 28px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Grille régulière */
body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row,
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px 16px !important;
    align-items: start !important;
}
body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > [class*="col-"],
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > [class*="col-"] {
    width: auto !important;
    max-width: none !important;
    flex: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > .col-12,
body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > .col-12.mb-4,
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > .col-12,
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > .col-12.mb-4 {
    grid-column: 1 / -1 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > .col-8,
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > .col-8 {
    grid-column: auto !important;
}
body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row > .col-4,
body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row > .col-4 {
    grid-column: auto !important;
}

/* Champs homogènes */
body.page-id-21789 #overlay-search-advanced-module.open .form-control,
body.page-id-21789 #overlay-search-advanced-module.open input.form-control,
body.page-id-21789 #overlay-search-advanced-module.open .bootstrap-select,
body.page-id-21789 #overlay-search-advanced-module.open .bootstrap-select.form-control,
body.page-id-21789 #overlay-search-advanced-module.open .bootstrap-select > .dropdown-toggle,
body.page-id-21789 .overlay-search-advanced-module.open .form-control,
body.page-id-21789 .overlay-search-advanced-module.open input.form-control,
body.page-id-21789 .overlay-search-advanced-module.open .bootstrap-select,
body.page-id-21789 .overlay-search-advanced-module.open .bootstrap-select.form-control,
body.page-id-21789 .overlay-search-advanced-module.open .bootstrap-select > .dropdown-toggle {
    width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    border-radius: 14px !important;
    background-color: #fff !important;
}

/* Budget : plus de double encastrement et curseurs visibles */
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id],
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] {
    margin-top: 4px !important;
    padding: 16px 18px 18px !important;
    background: #fff !important;
    border: 1px solid var(--c-border) !important;
    border-radius: 18px !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-text,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-text {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 0 0 12px 0 !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-text .range-title,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-text .range-title {
    min-width: 100% !important;
    margin: 0 0 2px !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-wrap,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] > .range-wrap {
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] .sliders_control,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] .sliders_control {
    position: relative !important;
    min-height: 34px !important;
    margin: 8px 4px 0 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .range-wrap[data-price-range-id] .sliders_control::before,
body.page-id-21789 .overlay-search-advanced-module.open .range-wrap[data-price-range-id] .sliders_control::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 15px !important;
    height: 6px !important;
    border-radius: 999px !important;
    background: #E8E1D8 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open input[type="range"],
body.page-id-21789 .overlay-search-advanced-module.open input[type="range"] {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 34px !important;
    margin: 0 !important;
    background: transparent !important;
    pointer-events: none !important;
    border: 0 !important;
}
body.page-id-21789 #overlay-search-advanced-module.open input[type="range"]::-webkit-slider-thumb,
body.page-id-21789 .overlay-search-advanced-module.open input[type="range"]::-webkit-slider-thumb {
    pointer-events: auto !important;
    width: 22px !important;
    height: 22px !important;
    border-radius: 999px !important;
    background: #fff !important;
    border: 1px solid #D8D0C3 !important;
    box-shadow: 0 3px 10px rgba(0,0,0,.12) !important;
}
body.page-id-21789 #overlay-search-advanced-module.open input[type="range"]::-webkit-slider-runnable-track,
body.page-id-21789 .overlay-search-advanced-module.open input[type="range"]::-webkit-slider-runnable-track {
    background: transparent !important;
    border: 0 !important;
}

/* Autres caractéristiques : bouton unique, sans double capsule */
body.page-id-21789 #overlay-search-advanced-module.open .features-list-wrap,
body.page-id-21789 .overlay-search-advanced-module.open .features-list-wrap {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 6px 0 2px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .btn-features-list,
body.page-id-21789 .overlay-search-advanced-module.open .btn-features-list {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 230px !important;
    min-height: 48px !important;
    padding: 0 24px !important;
    border-radius: 999px !important;
    border: 1px solid #D8D0C3 !important;
    background: #FBF8F2 !important;
    color: var(--c-text) !important;
    box-shadow: none !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .btn-features-list span,
body.page-id-21789 .overlay-search-advanced-module.open .btn-features-list span {
    display: inline !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Boutons d'action en bas */
body.page-id-21789 #overlay-search-advanced-module.open .btn-search,
body.page-id-21789 .overlay-search-advanced-module.open .btn-search {
    margin-top: 8px !important;
}

/* Mobile : pop-up quasi plein écran mais propre */
@media (max-width: 767px) {
    body.page-id-21789 #overlay-search-advanced-module.open,
    body.page-id-21789 .overlay-search-advanced-module.open {
        top: 12px !important;
        width: calc(100vw - 20px) !important;
        max-height: calc(100vh - 24px) !important;
        border-radius: 20px !important;
    }
    body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form > .row,
    body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form > .row {
        grid-template-columns: 1fr !important;
    }
    body.page-id-21789 #overlay-search-advanced-module.open .search-title,
    body.page-id-21789 .overlay-search-advanced-module.open .search-title {
        padding: 16px 62px 12px !important;
    }
    body.page-id-21789 #overlay-search-advanced-module.open form#mobile-search-form,
    body.page-id-21789 .overlay-search-advanced-module.open form#mobile-search-form {
        padding: 18px !important;
    }
}


/* =====================================================
   V8 — Prix + autres caractéristiques : correction DOM propre
   ===================================================== */

/* Prix : neutralise les anciennes règles Houzez/V7 sur ce bloc simplifié */
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 4px 0 2px !important;
    padding: 18px 20px 22px !important;
    background: #fff !important;
    border: 1px solid #E4DDD3 !important;
    border-radius: 18px !important;
    box-shadow: none !important;
    overflow: visible !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .dpep-price-head,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .dpep-price-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #1F4E79 !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .range-title,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .range-title {
    display: block !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .13em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    color: #1F4E79 !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .dpep-price-values,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .dpep-price-values {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .min-price-range,
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .max-price-range,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .min-price-range,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .max-price-range {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 72px !important;
    height: 30px !important;
    padding: 0 11px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #F7F3EC !important;
    color: #1A1A1A !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .min-price-range::before,
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .max-price-range::before,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .min-price-range::before,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .max-price-range::before {
    content: none !important;
    display: none !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .dpep-price-sep,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .dpep-price-sep {
    color: #8A8175 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .dpep-price-slider,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .dpep-price-slider {
    position: relative !important;
    height: 34px !important;
    min-height: 34px !important;
    margin: 0 10px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .dpep-price-slider::before,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .dpep-price-slider::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 14px !important;
    height: 5px !important;
    border-radius: 999px !important;
    background: #E5DDD1 !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean input[type="range"],
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean input[type="range"] {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    pointer-events: none !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-webkit-slider-thumb,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none !important;
    pointer-events: auto !important;
    width: 22px !important;
    height: 22px !important;
    border-radius: 999px !important;
    background: #fff !important;
    border: 1px solid #D3C9BB !important;
    box-shadow: 0 4px 12px rgba(0,0,0,.16) !important;
    cursor: pointer !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-webkit-slider-runnable-track,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-webkit-slider-runnable-track {
    height: 5px !important;
    background: transparent !important;
    border: 0 !important;
}

/* Autres caractéristiques : DOM simplifié = une seule capsule */
body.page-id-21789 #overlay-search-advanced-module.open .dpep-features-clean,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-features-clean {
    display: block !important;
    width: 100% !important;
    margin: 8px 0 6px !important;
    padding: 0 !important;
    text-align: center !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-features-clean .dpep-features-toggle,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-features-clean .dpep-features-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 220px !important;
    height: 46px !important;
    min-height: 46px !important;
    padding: 0 24px !important;
    margin: 0 auto !important;
    background: #FBF8F2 !important;
    border: 1px solid #D6CBBB !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    color: #1A1A1A !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-features-clean .dpep-features-toggle::before,
body.page-id-21789 #overlay-search-advanced-module.open .dpep-features-clean .dpep-features-toggle::after,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-features-clean .dpep-features-toggle::before,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-features-clean .dpep-features-toggle::after {
    content: none !important;
    display: none !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-features-clean #features-list,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-features-clean #features-list {
    margin-top: 14px !important;
}


/* =====================================================
   V9 — Dernier ajustement Budget : 1 seul libellé + curseurs centrés
   ===================================================== */

/* Supprime un éventuel libellé Budget injecté en pseudo-élément par Houzez ou une ancienne règle */
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean::before,
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean::after,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean::before,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean::after {
    content: none !important;
    display: none !important;
}

/* On garde uniquement le libellé propre dans l'en-tête du bloc */
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean > .range-title,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean > .range-title {
    display: none !important;
}

/* Si un ancien style transforme tout le range-text en titre, on le neutralise */
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .dpep-price-head,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .dpep-price-head {
    text-transform: none !important;
    letter-spacing: normal !important;
}

/* Le vrai libellé Budget ne s'affiche qu'une fois */
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .dpep-price-head .range-title,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .dpep-price-head .range-title {
    display: inline-flex !important;
    align-items: center !important;
    min-width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .13em !important;
    text-transform: uppercase !important;
    color: #1F4E79 !important;
}

/* Curseurs : ligne et ronds parfaitement centrés */
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .dpep-price-slider,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .dpep-price-slider {
    position: relative !important;
    height: 30px !important;
    min-height: 30px !important;
    margin: 4px 10px 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean .dpep-price-slider::before,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean .dpep-price-slider::before {
    top: 12px !important;
    height: 5px !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean input[type="range"],
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean input[type="range"] {
    top: 0 !important;
    height: 30px !important;
    overflow: visible !important;
}

/* Chrome / Edge / Safari */
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-webkit-slider-thumb,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-webkit-slider-thumb {
    margin-top: -8px !important;
}

/* Firefox */
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-moz-range-thumb,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-moz-range-thumb {
    width: 22px !important;
    height: 22px !important;
    border-radius: 999px !important;
    background: #fff !important;
    border: 1px solid #D3C9BB !important;
    box-shadow: 0 4px 12px rgba(0,0,0,.16) !important;
    cursor: pointer !important;
}
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-moz-range-track,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-moz-range-track {
    height: 5px !important;
    background: transparent !important;
    border: 0 !important;
}


/* =====================================================
   V10 — Dernier ajustement slider + fermeture pop-up
   ===================================================== */

/* Remonte très légèrement les ronds du slider budget */
body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-webkit-slider-thumb,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-webkit-slider-thumb {
    margin-top: -10px !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-moz-range-thumb,
body.page-id-21789 .overlay-search-advanced-module.open .dpep-price-clean input[type="range"]::-moz-range-thumb {
    transform: translateY(-2px) !important;
}

/* Supprime le second rond derrière la croix : on garde uniquement le bouton rond blanc */
body.page-id-21789 #overlay-search-advanced-module.open .overlay-search-module-close i,
body.page-id-21789 #overlay-search-advanced-module.open .overlay-search-module-close .houzez-icon,
body.page-id-21789 #overlay-search-advanced-module.open .overlay-search-module-close .hz-navigation-close,
body.page-id-21789 .overlay-search-advanced-module.open .overlay-search-module-close i,
body.page-id-21789 .overlay-search-advanced-module.open .overlay-search-module-close .houzez-icon,
body.page-id-21789 .overlay-search-advanced-module.open .overlay-search-module-close .hz-navigation-close {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Sécurise le rendu de la croix unique */
body.page-id-21789 #overlay-search-advanced-module.open .overlay-search-module-close,
body.page-id-21789 .overlay-search-advanced-module.open .overlay-search-module-close {
    overflow: visible !important;
}

body.page-id-21789 #overlay-search-advanced-module.open .overlay-search-module-close::before,
body.page-id-21789 .overlay-search-advanced-module.open .overlay-search-module-close::before {
    content: "×" !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    font-family: Arial, sans-serif !important;
    font-size: 26px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    color: #1A1A1A !important;
}


/* =====================================================
   V11 — Mobile : supprimer le filtre Houzez du haut
   ===================================================== */

/* Sur mobile, on masque le premier bouton natif "Modifier les filtres"
   placé sous le header. On conserve uniquement le bouton propre du hero. */
@media (max-width: 767px) {
    body.page-id-21789 section.advanced-search.mobile-search-nav,
    body.page-id-21789 section.mobile-search-nav.mobile-search-trigger,
    body.page-id-21789 section.dpep-mobile-search-nav-v24,
    body.page-id-21789 .dpep-mobile-search-nav-v24,
    body.page-id-21789 .dpep-native-mobile-filter-trigger-v24,
    body.page-id-21789 .dpep-native-mobile-filter-trigger-v4 {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }

    /* Sécurité : on garde le vrai bloc propre dans le hero */
    body.page-id-21789 .dpep-acheter-hero,
    body.page-id-21789 .dpep-acheter-search,
    body.page-id-21789 .dpep-acheter-filter-open-v8,
    body.page-id-21789 .dpep-acheter-search-btn {
        display: flex !important;
        visibility: visible !important;
    }

    body.page-id-21789 .dpep-acheter-search-btn {
        display: block !important;
    }
}


/* =====================================================
   V12 — Page Vendre : masquer la barre de filtre Houzez
   ===================================================== */

/* Ciblage sans page-id : on détecte que le menu courant est /vendre/.
   Cela évite de masquer les filtres sur les pages annonces/résultats. */
body:has(#main-nav li.current-menu-item > a[href*="/vendre/"]) section#desktop-header-search,
body:has(#main-nav li.current-menu-item > a[href*="/vendre/"]) .advanced-search.advanced-search-nav.desktop-search-nav,
body:has(#main-nav li.current-menu-item > a[href*="/vendre/"]) form#desktop-search-form,
body:has(#main-nav li.current-menu-item > a[href*="/vendre/"]) .advanced-search-wrap,
body:has(#main-nav li.current-menu-item > a[href*="/vendre/"]) .houzez-search-form-js {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

/* Mobile / Vendre : masque aussi le déclencheur Houzez natif si présent */
@media (max-width: 767px) {
    body:has(#main-nav li.current-menu-item > a[href*="/vendre/"]) section.advanced-search.mobile-search-nav,
    body:has(#main-nav li.current-menu-item > a[href*="/vendre/"]) section.mobile-search-nav.mobile-search-trigger,
    body:has(#main-nav li.current-menu-item > a[href*="/vendre/"]) section.dpep-mobile-search-nav-v24,
    body:has(#main-nav li.current-menu-item > a[href*="/vendre/"]) .dpep-mobile-search-nav-v24 {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }
}


/* =====================================================
   V13 — Page Vendre : masquer réellement la barre de filtre
   Page /vendre/ = page-id-24468
   ===================================================== */

body.page-id-24468 section#desktop-header-search,
body.page-id-24468 #desktop-header-search,
body.page-id-24468 section.advanced-search.advanced-search-nav.desktop-search-nav,
body.page-id-24468 .advanced-search.advanced-search-nav.desktop-search-nav,
body.page-id-24468 form#desktop-search-form,
body.page-id-24468 #desktop-search-form,
body.page-id-24468 #desktop-search-form.houzez-search-form-js,
body.page-id-24468 #desktop-header-search .houzez-search-form-js,
body.page-id-24468 #desktop-header-search .advanced-search-v2,
body.page-id-24468 #desktop-header-search .advanced-search-v2-geolocation {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

/* Supprime aussi l'espace vertical laissé par la section */
body.page-id-24468 main#main-wrap > section#desktop-header-search {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Mobile / Vendre : masque aussi le déclencheur mobile Houzez si présent */
@media (max-width: 767px) {
    body.page-id-24468 section.advanced-search.mobile-search-nav,
    body.page-id-24468 section.mobile-search-nav.mobile-search-trigger,
    body.page-id-24468 section.dpep-mobile-search-nav-v24,
    body.page-id-24468 .dpep-mobile-search-nav-v24,
    body.page-id-24468 .dpep-native-mobile-filter-trigger-v24,
    body.page-id-24468 .dpep-native-mobile-filter-trigger-v4 {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }
}

/* =====================================================
 * DPEP Acheter v25 — suppression propre de la surcouche mobile "Modifier les filtres"
 * Objectif : garder le moteur natif Région / Type / Voir les biens, sans transformation après chargement.
 * ===================================================== */
@media (max-width: 767.98px) {
    body.page-id-21789 .dpep-acheter-filter-open-v8,
    body.page-id-21789 button.dpep-acheter-filter-open-v8,
    body.page-id-21789 .dpep-native-mobile-filter-trigger-v4,
    body.page-id-21789 .dpep-native-mobile-filter-trigger-v24,
    body.dpep-acheter-v8-final .dpep-acheter-filter-open-v8,
    body.dpep-acheter-v8-final button.dpep-acheter-filter-open-v8,
    body.dpep-acheter-v8-final .dpep-native-mobile-filter-trigger-v4,
    body.dpep-acheter-v8-final .dpep-native-mobile-filter-trigger-v24 {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        width: 0 !important;
        min-width: 0 !important;
        max-width: 0 !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }

    body.page-id-21789 .dpep-acheter-search,
    body.page-id-21789 form.dpep-acheter-search,
    body.page-id-21789 .dpep-acheter-search.dpep-acheter-search-mobile-ready-v8,
    body.dpep-acheter-v8-final .dpep-acheter-search,
    body.dpep-acheter-v8-final form.dpep-acheter-search,
    body.dpep-acheter-v8-final .dpep-acheter-search.dpep-acheter-search-mobile-ready-v8 {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 360px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        overflow: visible !important;
    }

    body.page-id-21789 .dpep-acheter-search .dpep-acheter-search-field,
    body.page-id-21789 .dpep-acheter-search.dpep-acheter-search-mobile-ready-v8 .dpep-acheter-search-field,
    body.dpep-acheter-v8-final .dpep-acheter-search .dpep-acheter-search-field,
    body.dpep-acheter-v8-final .dpep-acheter-search.dpep-acheter-search-mobile-ready-v8 .dpep-acheter-search-field {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: 100% !important;
        height: auto !important;
        min-height: 54px !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        pointer-events: auto !important;
    }

    body.page-id-21789 .dpep-acheter-search-btn,
    body.dpep-acheter-v8-final .dpep-acheter-search-btn,
    body.page-id-21789 .dpep-acheter-search.dpep-acheter-search-mobile-ready-v8 .dpep-acheter-search-btn,
    body.dpep-acheter-v8-final .dpep-acheter-search.dpep-acheter-search-mobile-ready-v8 .dpep-acheter-search-btn {
        display: flex !important;
        width: 100% !important;
        min-height: 50px !important;
        align-items: center !important;
        justify-content: center !important;
    }

    body.page-id-21789 section.advanced-search.mobile-search-nav,
    body.page-id-21789 section.mobile-search-nav.mobile-search-trigger,
    body.page-id-21789 section.dpep-mobile-search-nav-v24,
    body.page-id-21789 .dpep-mobile-search-nav-v24,
    body.dpep-acheter-v8-final section.advanced-search.mobile-search-nav,
    body.dpep-acheter-v8-final section.mobile-search-nav.mobile-search-trigger,
    body.dpep-acheter-v8-final section.dpep-mobile-search-nav-v24,
    body.dpep-acheter-v8-final .dpep-mobile-search-nav-v24 {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }
}


/* =====================================================
 * DPEP Acheter v27 — moteur mobile propre + filtres natifs
 * Objectif : aucun bouton JS, aucun overlay fragile.
 * Les filtres avancés sont un <details> natif, donc cliquable sans JS.
 * ===================================================== */
@media (max-width: 767.98px) {
    body.page-id-21789 .dpep-acheter-hero,
    body.dpep-acheter-v8-final .dpep-acheter-hero {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    body.page-id-21789 .dpep-acheter-search,
    body.dpep-acheter-v8-final .dpep-acheter-search {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 340px !important;
        margin: 20px auto 0 auto !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
    }

    body.page-id-21789 .dpep-acheter-search-field,
    body.dpep-acheter-v8-final .dpep-acheter-search-field {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        min-height: 58px !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #ffffff !important;
        border: 1px solid rgba(31,78,121,.10) !important;
        border-radius: 12px !important;
        box-shadow: 0 8px 24px rgba(31,78,121,.05) !important;
        overflow: hidden !important;
    }

    body.page-id-21789 .dpep-acheter-search-field label,
    body.dpep-acheter-v8-final .dpep-acheter-search-field label {
        position: absolute !important;
        top: 8px !important;
        left: 14px !important;
        right: 42px !important;
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        color: rgba(31,78,121,.48) !important;
        font-size: 9px !important;
        line-height: 1 !important;
        font-weight: 800 !important;
        letter-spacing: .14em !important;
        text-transform: uppercase !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        z-index: 2 !important;
        pointer-events: none !important;
    }

    body.page-id-21789 .dpep-acheter-search-field select,
    body.dpep-acheter-v8-final .dpep-acheter-search-field select {
        display: block !important;
        width: 100% !important;
        height: 58px !important;
        min-height: 58px !important;
        margin: 0 !important;
        padding: 24px 42px 8px 14px !important;
        border: 0 !important;
        border-radius: 12px !important;
        background-color: #ffffff !important;
        color: #2f2a24 !important;
        font-size: 14px !important;
        line-height: 1.2 !important;
        font-weight: 500 !important;
        box-shadow: none !important;
        outline: none !important;
        -webkit-appearance: none !important;
        appearance: none !important;
        background-image: linear-gradient(45deg, transparent 50%, #1F4E79 50%), linear-gradient(135deg, #1F4E79 50%, transparent 50%) !important;
        background-position: calc(100% - 18px) 31px, calc(100% - 12px) 31px !important;
        background-size: 6px 6px, 6px 6px !important;
        background-repeat: no-repeat !important;
    }

    body.page-id-21789 .dpep-acheter-search-btn,
    body.dpep-acheter-v8-final .dpep-acheter-search-btn {
        width: 100% !important;
        min-height: 54px !important;
        margin: 0 !important;
        border-radius: 12px !important;
        background: #288a76 !important;
        border: 1px solid #288a76 !important;
        color: #ffffff !important;
        font-size: 12px !important;
        font-weight: 800 !important;
        letter-spacing: .08em !important;
        text-transform: uppercase !important;
        box-shadow: 0 12px 30px rgba(40,138,118,.18) !important;
    }

    body.page-id-21789 .dpep-acheter-more-filters,
    body.dpep-acheter-v8-final .dpep-acheter-more-filters {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.page-id-21789 .dpep-acheter-more-filters summary,
    body.dpep-acheter-v8-final .dpep-acheter-more-filters summary {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-height: 50px !important;
        margin: 0 !important;
        padding: 0 16px !important;
        border-radius: 12px !important;
        border: 1px solid rgba(31,78,121,.14) !important;
        background: rgba(255,255,255,.92) !important;
        color: #1F4E79 !important;
        font-size: 12px !important;
        font-weight: 800 !important;
        letter-spacing: .06em !important;
        text-transform: uppercase !important;
        list-style: none !important;
        box-shadow: 0 8px 24px rgba(31,78,121,.06) !important;
        cursor: pointer !important;
    }

    body.page-id-21789 .dpep-acheter-more-filters summary::-webkit-details-marker,
    body.dpep-acheter-v8-final .dpep-acheter-more-filters summary::-webkit-details-marker {
        display: none !important;
    }

    body.page-id-21789 .dpep-acheter-more-filters summary::before,
    body.dpep-acheter-v8-final .dpep-acheter-more-filters summary::before {
        content: "+" !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 18px !important;
        height: 18px !important;
        margin-right: 8px !important;
        border-radius: 999px !important;
        border: 1px solid rgba(31,78,121,.24) !important;
        font-size: 14px !important;
        line-height: 1 !important;
    }

    body.page-id-21789 .dpep-acheter-more-filters[open] summary::before,
    body.dpep-acheter-v8-final .dpep-acheter-more-filters[open] summary::before {
        content: "–" !important;
    }

    body.page-id-21789 .dpep-acheter-more-grid,
    body.dpep-acheter-v8-final .dpep-acheter-more-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        margin-top: 10px !important;
    }

    /* Sécurité : on masque les anciens boutons JS/overlay ajoutés pendant les essais. */
    body.page-id-21789 .dpep-acheter-filter-open-v8,
    body.page-id-21789 .dpep-acheter-filter-open-v26,
    body.page-id-21789 .dpep-native-mobile-filter-trigger-v4,
    body.page-id-21789 .dpep-native-mobile-filter-trigger-v24,
    body.dpep-acheter-v8-final .dpep-acheter-filter-open-v8,
    body.dpep-acheter-v8-final .dpep-acheter-filter-open-v26,
    body.dpep-acheter-v8-final .dpep-native-mobile-filter-trigger-v4,
    body.dpep-acheter-v8-final .dpep-native-mobile-filter-trigger-v24 {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }
}


/* =====================================================
 * DPEP Acheter v28 — boutons mobile plus fins et premium
 * Ajustement visuel uniquement, basé sur la V27 validée fonctionnellement.
 * ===================================================== */
@media (max-width: 767.98px) {
    body.page-id-21789 .dpep-acheter-search-btn,
    body.dpep-acheter-v8-final .dpep-acheter-search-btn {
        min-height: 46px !important;
        height: 46px !important;
        border-radius: 11px !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        letter-spacing: .06em !important;
        text-transform: uppercase !important;
        box-shadow: 0 8px 18px rgba(40,138,118,.14) !important;
    }

    body.page-id-21789 .dpep-acheter-more-filters summary,
    body.dpep-acheter-v8-final .dpep-acheter-more-filters summary {
        min-height: 44px !important;
        height: 44px !important;
        border-radius: 11px !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        letter-spacing: .055em !important;
        text-transform: uppercase !important;
        background: #ffffff !important;
        border: 1px solid rgba(31,78,121,.10) !important;
        box-shadow: 0 6px 16px rgba(31,78,121,.045) !important;
    }

    body.page-id-21789 .dpep-acheter-more-filters summary::before,
    body.dpep-acheter-v8-final .dpep-acheter-more-filters summary::before {
        width: 16px !important;
        height: 16px !important;
        min-width: 16px !important;
        margin-right: 7px !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        border-color: rgba(31,78,121,.18) !important;
    }

    body.page-id-21789 .dpep-acheter-search,
    body.dpep-acheter-v8-final .dpep-acheter-search {
        gap: 9px !important;
    }

    body.page-id-21789 .dpep-acheter-more-grid,
    body.dpep-acheter-v8-final .dpep-acheter-more-grid {
        margin-top: 9px !important;
        gap: 9px !important;
    }
}
