/* =========================================================
   Domaine des Evis - correctifs finaux v41
   Patch CSS volontairement isolé : aucun ACF, aucun menu WP, aucun import.
   ========================================================= */
:root{
  --dde-charte-green:#859679;
  --dde-charte-brown:#8A7564;
  --dde-charte-stone:#D8D1C4;
  --dde-charte-ivory:#F8F4EA;
  --dde-charte-blue:#AEB9C1;
  --dde-charte-lavender:#C8C1D4;
  --dde-charte-ink:#1f2d1e;
}

/* 1) Suppression totale des feuilles/pictos dans les boutons */
a[class*="btn"]::after,
a[class*="button"]::after,
button[class*="btn"]::after,
button[class*="button"]::after,
.dde-header-cta::after,
.dde-mobile-cta::after,
.dde-home-btn::after,
.dde-static-btn::after,
.dde-event-hero-cta::after,
.dde-hero-cta::after,
.dde-leaf::after,
.dde-leaf .elementor-button::after,
.dde-leaf .elementor-button-text::after,
.elementor-button::after,
.elementor-button-text::after{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  background:none!important;
  -webkit-mask:none!important;
  mask:none!important;
}

/* 2) Boutons : texte centré + coins arrondis partout */
.dde-header-cta,
.dde-mobile-cta,
.dde-home-btn,
.dde-static-btn,
.dde-event-hero-cta,
.dde-hero-cta,
.dde-v6 .elementor-button,
.wp-block-button__link,
button,
input[type="submit"]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:999px!important;
  line-height:1.1!important;
}

/* Header CTA : blanc, texte vert, taille raisonnable */
.dde-site-head .dde-header-cta,
#dde-head .dde-header-cta{
  background:#fff!important;
  color:var(--dde-charte-green)!important;
  border:1px solid rgba(255,255,255,.88)!important;
  padding:12px 22px!important;
  min-height:48px!important;
  max-height:52px!important;
  font-size:.78rem!important;
  letter-spacing:.055em!important;
  font-weight:850!important;
  box-shadow:none!important;
}
.dde-site-head.is-scrolled .dde-header-cta,
#dde-head.is-scrolled .dde-header-cta{
  border-color:rgba(133,150,121,.32)!important;
}

/* Logo : hauteur proche du bouton sans exploser le menu */
.dde-site-head .dde-brand img,
#dde-head .dde-brand img{
  max-height:100px!important;
  width:auto!important;
  max-width:220px!important;
}

/* 3) Menu : texte blanc sur hero, soulignement blanc, libellés stables */
.dde-site-head:not(.is-scrolled) .dde-menu a,
#dde-head:not(.is-scrolled) .dde-menu a,
.dde-site-head:not(.is-scrolled) .dde-nav a,
#dde-head:not(.is-scrolled) .dde-nav a{
  color:#fff!important;
  opacity:1!important;
  text-shadow:0 1px 18px rgba(0,0,0,.35)!important;
}
.dde-site-head.is-scrolled .dde-menu a,
#dde-head.is-scrolled .dde-menu a,
.dde-site-head.is-scrolled .dde-nav a,
#dde-head.is-scrolled .dde-nav a{
  color:var(--dde-charte-ink)!important;
  opacity:1!important;
  text-shadow:none!important;
}
.dde-menu a::after,
.dde-nav a::after{
  background:#fff!important;
  height:2px!important;
  bottom:-8px!important;
}
.dde-site-head.is-scrolled .dde-menu a::after,
#dde-head.is-scrolled .dde-menu a::after,
.dde-site-head.is-scrolled .dde-nav a::after,
#dde-head.is-scrolled .dde-nav a::after{
  background:var(--dde-charte-green)!important;
}
.dde-menu a:hover,
.dde-nav a:hover,
.dde-menu .current-menu-item>a,
.dde-nav .current-menu-item>a,
.dde-menu .current_page_item>a,
.dde-nav .current_page_item>a{
  color:inherit!important;
}
@media (min-width:981px){
  .dde-site-head .dde-head-inner,
  #dde-head .dde-head-inner{
    gap:22px!important;
  }
  .dde-menu,
  .dde-nav ul{
    gap:clamp(18px,1.6vw,30px)!important;
  }
  .dde-menu a,
  .dde-nav a{
    font-size:clamp(.72rem,.73vw,.82rem)!important;
    letter-spacing:.045em!important;
    white-space:nowrap!important;
  }
}

/* 4) Hero : images moins sombres + textes centrés + sous-titres plus contrastés */
.dde-home-hero__veil,
.dde-about-hero__veil,
.dde-static-hero__veil,
.dde-event-hero::after,
.dde-hero::before{
  opacity:.62!important;
}
.dde-home-hero__inner,
.dde-about-hero__inner,
.dde-static-hero__inner,
.dde-event-hero-inner,
.dde-hero-content{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
  align-items:center!important;
  justify-items:center!important;
}
.dde-home-hero h1,
.dde-about-hero h1,
.dde-static-hero h1,
.dde-event-hero h1,
.dde-hero h1{
  margin-left:auto!important;
  margin-right:auto!important;
  max-width:980px!important;
}
.dde-home-hero__text,
.dde-home-hero__text p,
.dde-about-hero .dde-static-rich,
.dde-about-hero .dde-static-rich p,
.dde-static-hero .dde-static-rich,
.dde-static-hero .dde-static-rich p,
.dde-event-hero-text,
.dde-event-hero-text p,
.dde-hero p{
  color:rgba(255,255,255,.96)!important;
  text-shadow:0 2px 20px rgba(0,0,0,.55)!important;
  font-weight:450!important;
  margin-left:auto!important;
  margin-right:auto!important;
  font-size: clamp(1.08rem, 1.36vw, 1.28rem)!important;
    line-height: 1.62;
}

/* 5) Espacement H2 -> paragraphe */
h2 + p,
h2 + .dde-static-rich,
h2 + .dde-home-rich,
h2 + .elementor-widget-text-editor,
.dde-h2 + .elementor-widget-text-editor,
.dde-h2 + .dde-static-rich,
.dde-h2 + .dde-home-rich{
  margin-top:clamp(16px,1.6vw,26px)!important;
}

/* 6) Suppression des traits décoratifs autour des petits titres */
.dde-eyebrow::before,.dde-eyebrow::after,
.dde-static-eyebrow::before,.dde-static-eyebrow::after,
.dde-home-eyebrow::before,.dde-home-eyebrow::after,
.dde-event-eyebrow::before,.dde-event-eyebrow::after,
.section-eyebrow::before,.section-eyebrow::after,
.dde-eyebrow .elementor-heading-title::before,.dde-eyebrow .elementor-heading-title::after,
.dde-static-eyebrow .elementor-heading-title::before,.dde-static-eyebrow .elementor-heading-title::after{
  content:none!important;
  display:none!important;
}

/* 7) Home facts : 22 couchages | 10 chambres */
.dde-home-fact--split{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:0!important;
  padding:0!important;
  min-height:126px!important;
}
.dde-home-fact--split .dde-home-fact-zone{
  display:grid!important;
  align-content:center!important;
  justify-items:center!important;
  text-align:center!important;
  padding:28px 22px!important;
  position:relative!important;
}
.dde-home-fact--split .dde-home-fact-zone:first-child::after{
  content:""!important;
  position:absolute!important;
  right:0!important;
  top:28%!important;
  height:44%!important;
  width:1px!important;
  background:rgba(31,45,30,.22)!important;
}
.dde-home-fact--split strong{font-family:var(--dde-home-title,Marcellus,serif)!important;font-size:clamp(2.25rem,3vw,3.55rem)!important;font-weight:400!important;line-height:.95!important;color:var(--dde-charte-ink)!important;}
.dde-home-fact--split span{font-size:.78rem!important;font-weight:850!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:#6f675e!important;}

/* 8) Chiffres / étapes : centrage + style cohérent */
.dde-booking-step,
.dde-step-card,
.dde-process-card,
.dde-pain-card,
.dde-about-timeline__items article,
.dde-static .dde-about-timeline__items article{
  text-align:center!important;
}
.dde-about-timeline__items article > span{
  display:block!important;
  color:var(--dde-charte-green)!important;
}
.dde-about-timeline__items article > span::after{content:none!important;}

/* 9) Paragraphes placés en haut dans les blocs à deux colonnes */
.dde-home-decors__intro,
.dde-about-gallery__head,
.dde-about-timeline__grid,
.dde-static-split,
.dde-home-services__grid{
  align-items:start!important;
}
.dde-home-decors__intro .dde-home-rich,
.dde-about-gallery__head .dde-static-rich,
.dde-about-timeline__items{
  align-self:start!important;
}

/* 10) CTA final avant footer : bleu grisé, pas vert / pas marron */
.dde-home-final,
.dde-static-final,
.dde-final,
.dde-event-final,
.dde-page-maison .dde-final,
.dde-page-mariage .dde-final{
  background:var(--dde-charte-blue)!important;
  color:#fff!important;
}
.dde-home-final h2,
.dde-static-final h2,
.dde-final h2,
.dde-event-final h2,
.dde-home-final p,
.dde-static-final p,
.dde-final p,
.dde-event-final p{
  color:#fff!important;
}
.dde-home-final a,
.dde-static-final a,
.dde-final a,
.dde-event-final a{
  color: rgba(255, 255, 255, 0.65)!important;
  border-color:#fff!important;
}

/* 11) Remplacement des fonds marron hors charte */
.dde-home-host,
.dde-about-story,
.dde-hostess,
section[style*="background:#8A7564"],
section[style*="background: #8A7564"]{
  background:var(--dde-charte-green)!important;
}
.dde-home-host h2,
.dde-home-host blockquote,
.dde-home-host p,
.dde-home-host .dde-home-rich,
.dde-about-story h2,
.dde-about-story blockquote,
.dde-about-story p,
.dde-about-story .dde-static-rich{
  color:var(--dde-charte-ivory)!important;
}

/* 12) Maison d’hôtes : tarifs / conditions lisibles en beige */
.dde-page-maison .dde-gite-pricing,
.dde-page-maison .dde-maison-conditions{
  background:var(--dde-charte-green)!important;
}
.dde-page-maison .dde-gite-pricing .dde-eyebrow span,
.dde-page-maison .dde-gite-pricing .dde-h2 h2,
.dde-page-maison .dde-maison-conditions .dde-eyebrow span,
.dde-page-maison .dde-maison-conditions .dde-h2 h2{
  color:var(--dde-charte-ivory)!important;
  -webkit-text-fill-color:var(--dde-charte-ivory)!important;
}


.dde-page-maison .dde-gite-price-card{
  border-color:rgba(248,244,234,.48)!important;
  background:rgba(248,244,234,.08)!important;
}

/* 13) Photos : supprimer cadres blancs sur home et À propos */
.dde-home figure,
.dde-home img,
.dde-about-page figure,
.dde-about-page img,
.dde-static-about figure,
.dde-static-about img{
  border-color:transparent!important;
  box-shadow:none!important;
}
.dde-home-intro__media,
.dde-home-story__media,
.dde-home-services__media,
.dde-about-intro__media,
.dde-about-story__media,
.dde-about-card figure,
.dde-about-gallery figure{
  background:transparent!important;
  padding:0!important;
}

/* 14) Access blocks : si anciennes cartes persistent, design sobre et identique */
.dde-access-grid{
  background:var(--dde-charte-ivory)!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;
  border:1px solid rgba(31,45,30,.14)!important;
}
.dde-access-card{
  background:var(--dde-charte-ivory)!important;
  border:0!important;
  border-right:1px solid rgba(31,45,30,.14)!important;
  padding:clamp(38px,4vw,58px)!important;
  min-height:190px!important;
  text-align:left!important;
}
.dde-access-card:last-child{border-right:0!important;}
.dde-access-card svg,.dde-access-icon{display:none!important;}
.dde-access-card h4,
.dde-access-card .elementor-heading-title{
  font-family:var(--dde-title,Marcellus,Georgia,serif)!important;
  font-size:clamp(1.8rem,2.6vw,2.55rem)!important;
  line-height:1.08!important;
  font-weight:400!important;
  color:var(--dde-charte-ink)!important;
  margin:0 0 22px!important;
}
.dde-access-card p{
  color:#6f675e!important;
  font-size:clamp(1rem,1.2vw,1.15rem)!important;
  line-height:1.55!important;
  margin:0!important;
}
@media(max-width:900px){
  .dde-access-grid{grid-template-columns:1fr!important;}
  .dde-access-card{border-right:0!important;border-bottom:1px solid rgba(31,45,30,.14)!important;}
  .dde-access-card:last-child{border-bottom:0!important;}
}


/* =========================================================
   V42 - Correction charte couleur Pierre chaude
   Remplace l'ancien fond chaud #F2EBE0 par #D7D0C4.
   Ivoire reste #F8F4EA.
   ========================================================= */
:root,
body {
  --dde-pierre-chaude: #d7d0c4 !important;
  --dde-stone: #d7d0c4 !important;
  --dde-paper-warm: #d7d0c4 !important;
  --s-warm: #d7d0c4 !important;
}

/* Sections utilisant l'ancien warm / cream comme fond de zone */
.dde-event-final,
.dde-event-pricing,
.dde-event-hosting,
.dde-event-table,
.dde-static-final,
.dde-static-cta,
.dde-static-map,
.dde-static-access,
.dde-about-press,
.dde-about-territory,
.dde-about-map,
.dde-home-about,
.dde-home-story,
.dde-maison-conditions,
.dde-maison-tarifs,
.dde-hostess-section--warm,
.dde-section--warm,
.dde-v6--warm {
  background-color: #d7d0c4 !important;
}

/* Cartes et blocs qui doivent rester ivoire et non pierre chaude */
.dde-access-card,
.dde-home-facts__grid,
.dde-home-fact,
.dde-static-contact-help,
.dde-event-price-card,
.dde-maison-tarif-card,
.dde-maison-condition-card {
  background-color: #f8f4ea !important;
}

/* Anciennes zones où la valeur #F2EBE0 sortait via variable locale */
.dde-event-page,
.dde-static-page,
.dde-maison-page,
.dde-home,
.dde-page-about {
  --dde-paper-warm: #d7d0c4 !important;
  --s-warm: #d7d0c4 !important;
  --dde-stone: #d7d0c4 !important;
}
/* =========================================================
   FIX URGENT HEADER DESKTOP
   Masquer toggle desktop + réduire CTA header
   ========================================================= */

/* Le bouton burger ne doit JAMAIS apparaître en desktop */
@media (min-width: 981px) {
  #dde-head .dde-menu-toggle,
  .dde-site-head .dde-menu-toggle,
  #dde-head .mobile-menu-toggle,
  .dde-site-head .mobile-menu-toggle,
  #dde-head .menu-toggle,
  .dde-site-head .menu-toggle {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

/* CTA header plus compact */
#dde-head .dde-header-cta,
.dde-site-head .dde-header-cta {
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  padding: 0 26px !important;
  border-radius: 999px !important;
  font-size: 0.72rem !important;
  line-height: 1 !important;
  letter-spacing: 0.08em !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
}

/* Supprime encore tout pictogramme dans le CTA */
#dde-head .dde-header-cta::before,
#dde-head .dde-header-cta::after,
.dde-site-head .dde-header-cta::before,
.dde-site-head .dde-header-cta::after {
  content: none !important;
  display: none !important;
  background: none !important;
  mask: none !important;
  -webkit-mask: none !important;
}

/* Ajustement général du header pour éviter l'effet bouton énorme */
#dde-head .dde-head-inner,
.dde-site-head .dde-head-inner {
  min-height: 74px !important;
  height: 74px !important;
  align-items: center !important;
}

/* Mobile : le burger revient normalement */
@media (max-width: 980px) {
  #dde-head .dde-menu-toggle,
  .dde-site-head .dde-menu-toggle {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  #dde-head .dde-header-cta,
  .dde-site-head .dde-header-cta {
    display: none !important;
  }
}

/* CTA final bleu avant footer */
.dde-final,
.dde-event-final.dde-final {
  background: var(--dde-blue-grey, #AEB9C1) !important;
  color: #fff !important;
  text-align: center !important;
}

.dde-final h2,
.dde-final .elementor-heading-title {
  color: #fff !important;
}

.dde-final .elementor-widget-button,
.dde-final .elementor-button {
  margin-left: auto !important;
  margin-right: auto !important;
}

.dde-final .elementor-button {
  background: #fff !important;
  color: var(--dde-green-deep, #1f2d1e) !important;
  border-radius: 999px !important;
}

/* =========================================================
   CTA FINAL AVANT FOOTER - couleur officielle + bouton propre
   ========================================================= */

/* Fond CTA final : bleu grisé, pas vert */
.dde-final,
.dde-v6.dde-final,
.dde-event-final,
.dde-event-final.dde-final,
section#contact.dde-final {
  background: #AEB9C1 !important;
  color: #ffffff !important;
  text-align: center !important;
  padding: clamp(76px, 8vw, 118px) 0 !important;
}

/* Titres et textes du CTA final */
.dde-final h2,
.dde-final .dde-h2 h2,
.dde-final .elementor-heading-title,
.dde-event-final h2,
.dde-event-final .dde-event-h2,
.dde-final p,
.dde-final .dde-event-final-contact,
.dde-final .dde-event-final-contact a {
  color: #ffffff !important;
}

/* Boutons du CTA final : blanc + texte vert, arrondi */
.dde-final a,
.dde-final .elementor-button,
.dde-final .dde-button,
.dde-final .dde-leaf,
.dde-final .dde-event-final-cta,
.dde-event-final a,
.dde-event-final .elementor-button,
.dde-event-final .dde-button,
.dde-event-final .dde-leaf,
.dde-event-final .dde-event-final-cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: max-content !important;
  margin: 30px auto 0 !important;
  border-radius: 999px !important;
  color: rgba(255,255,255,0.65) !important;
  font-family: var(--dde-body, Manrope, Arial, sans-serif) !important;
  font-size: 0.78rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0.11em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-align: center !important;
  box-shadow: none !important;
}

/* Hover propre */
.dde-final a:hover,
.dde-final .elementor-button:hover,
.dde-final .dde-button:hover,
.dde-final .dde-leaf:hover,
.dde-final .dde-event-final-cta:hover,
.dde-event-final a:hover,
.dde-event-final .elementor-button:hover,
.dde-event-final .dde-button:hover,
.dde-event-final .dde-leaf:hover,
.dde-event-final .dde-event-final-cta:hover {
  transform: translateY(-2px) !important;
  background:none;
}

/* Supprime les anciennes feuilles / pictos dans les boutons */
.dde-final a::before,
.dde-final a::after,
.dde-final .elementor-button::before,
.dde-final .elementor-button::after,
.dde-final .dde-button::before,
.dde-final .dde-button::after,
.dde-final .dde-leaf::before,
.dde-final .dde-leaf::after,
.dde-final .dde-event-final-cta::before,
.dde-final .dde-event-final-cta::after,
.dde-event-final a::before,
.dde-event-final a::after,
.dde-event-final .elementor-button::before,
.dde-event-final .elementor-button::after,
.dde-event-final .dde-button::before,
.dde-event-final .dde-button::after,
.dde-event-final .dde-leaf::before,
.dde-event-final .dde-leaf::after,
.dde-event-final .dde-event-final-cta::before,
.dde-event-final .dde-event-final-cta::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  background: none !important;
  mask: none !important;
  -webkit-mask: none !important;
}