/*
Theme Name: ecWebDesign Maquette 2026
Theme URI: https://ecwebdesigner.fr
Author: Ema Charruel
Description: Thème sur-mesure ecWebDesign — création de sites WordPress, de boutiques en ligne et de sites codés à la main.
Version: 2.7
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: ecwebdesign-maquette
*/

/* Polices : Spectral (titres) + Public Sans (texte). Chargées par functions.php :
   depuis assets/fonts/ si les fichiers y sont, sinon depuis Google Fonts. */
:root{
  --logo:url("assets/logo-ecwebdesign.png");
  --creme:#F4F7EE;
  --creme-2:#EBF0E2;
  --vert:#21402F;
  --vert-clair:#3E6B4F;
  --encre:#16241C;
  --gris:#5C6B60;
  --or:#E8B33C;
  --ligne:#D6DECB;
  --r:14px;
  --max:1680px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Poppins',system-ui,sans-serif;
  background:var(--creme);
  color:var(--encre);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
a{color:inherit}
:focus-visible{outline:2px solid var(--vert-clair);outline-offset:3px;border-radius:4px}

/* ---------- NAV ---------- */
.nav{
  position:sticky;top:0;z-index:50;
  background:rgba(244,247,238,.88);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--ligne);
}
.nav-in{display:flex;align-items:center;gap:28px;height:74px}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.02em;text-decoration:none}
.logo-nav{display:block;width:48px;aspect-ratio:1773/1040;background:var(--logo) center/contain no-repeat}
.nav-links{display:flex;gap:22px;margin-left:auto;list-style:none}
.nav-links a{text-decoration:none;font-weight:500;font-size:15px;color:var(--vert);padding-bottom:3px;border-bottom:2px solid transparent}
.nav-links a:hover{border-color:var(--vert-clair)}
.nav-links a.actif{border-color:var(--vert)}
.btn{
  display:inline-block;background:var(--vert);color:#fff;text-decoration:none;
  font-weight:600;font-size:15px;padding:12px 22px;border-radius:100px;
  transition:background .2s;
}
.btn:hover{background:var(--vert-clair)}
.btn-ligne{background:transparent;color:var(--vert);box-shadow:inset 0 0 0 1.5px var(--vert)}
.btn-ligne:hover{background:var(--vert);color:#fff}
.burger{display:none;margin-left:auto;background:none;border:0;font-size:26px;color:var(--vert);cursor:pointer}

/* ---------- HERO ---------- */
.hero{position:relative;overflow:hidden;padding:104px 0 118px;text-align:center}
.hero-in{position:relative;max-width:760px;margin:0 auto}
.fond{position:absolute;top:46%;left:50%;width:min(720px,90vw);aspect-ratio:1773/1040;background:var(--logo) center/contain no-repeat;
  transform:translate(-50%,-50%);opacity:.07;pointer-events:none;z-index:0}
.marque{position:relative;z-index:1;width:min(236px,54vw);aspect-ratio:1773/1040;background:var(--logo) center/contain no-repeat;margin:0 auto;
  opacity:0;animation:fondu .9s ease-out .1s forwards}
.hero h1{position:relative;z-index:1;margin-top:30px;padding-bottom:.12em;
  font-family:'Montserrat','Poppins',sans-serif;
  font-size:clamp(34px,7vw,60px);line-height:1.18;font-weight:600;letter-spacing:-.025em;
  background:linear-gradient(100deg,#1F4232 38%,#41525A 78%);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.baseline{position:relative;z-index:1;margin-top:6px;font-family:'Montserrat','Poppins',sans-serif;
  font-size:clamp(11px,1.6vw,13.5px);letter-spacing:.24em;text-transform:uppercase;color:var(--gris);font-weight:500}
.hero-actions{position:relative;z-index:1;margin-top:40px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.entre{opacity:0;animation:fondu .8s ease-out forwards}
.d1{animation-delay:.55s}.d2{animation-delay:.7s}.d3{animation-delay:.9s}
@keyframes fondu{to{opacity:1}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .entre,.marque{opacity:1}
}

/* ---------- SECTIONS ---------- */
.section{padding:96px 0}
.section-titre{text-align:center;max-width:640px;margin:0 auto 56px}
.section-titre h2{font-size:clamp(30px,4.2vw,46px);line-height:1.12;font-weight:700;letter-spacing:-.03em}
.section-titre p{margin-top:16px;color:var(--gris)}

/* Services */
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.carte{
  background:#fff;border:1px solid var(--ligne);border-radius:var(--r);
  padding:32px 28px 30px;display:flex;flex-direction:column;
}
.carte .icone{width:44px;height:44px;margin-bottom:20px;color:var(--vert-clair)}
.carte h3{font-size:21px;font-weight:600;letter-spacing:-.02em}
.carte .delai{margin-top:6px;font-size:14px;color:var(--vert-clair);font-weight:500}
.carte p{margin-top:14px;font-size:15.5px;color:var(--gris);flex:1}
.carte ul{margin:18px 0 24px;padding:0;list-style:none;font-size:15px}
.carte li{padding-left:22px;position:relative;margin-top:8px;color:var(--encre)}
.carte li::before{content:"";position:absolute;left:0;top:9px;width:11px;height:2px;background:var(--vert-clair)}
.carte .lien{text-decoration:none;font-weight:600;font-size:15px;color:var(--vert);border-bottom:2px solid var(--ligne);align-self:flex-start;padding-bottom:2px}
.carte .lien:hover{border-color:var(--vert)}

/* Étapes */
.etapes{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--ligne)}
.etape{padding:30px 26px 34px 0;border-right:1px solid var(--ligne)}
.etape:last-child{border-right:0}
.etape .num{font-size:13px;font-weight:600;letter-spacing:.14em;color:var(--vert-clair)}
.etape h3{margin-top:12px;font-size:20px;font-weight:600;letter-spacing:-.02em}
.etape p{margin-top:10px;font-size:15.5px;color:var(--gris)}

/* Engagements */
.engagements{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:var(--ligne);border:1px solid var(--ligne);border-radius:var(--r);overflow:hidden}
.engagement{background:var(--creme);padding:32px 30px}
.engagement h3{font-size:19px;font-weight:600;letter-spacing:-.02em}
.engagement p{margin-top:10px;font-size:15.5px;color:var(--gris)}

/* Bloc vert */
.bloc-vert{
  background:linear-gradient(150deg,#2A5039,#1B3527);
  color:#fff;border-radius:20px;padding:52px 56px;
  display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start;
}
.bloc-vert h2{font-size:29px;line-height:1.25;font-weight:600;letter-spacing:-.02em;max-width:22ch}
.bloc-vert p{color:#C9D8CC;font-size:15.5px}
.bloc-vert p + p{margin-top:16px}
.bloc-vert .aussi{margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.16);font-size:15px;color:#C9D8CC}

/* Avis */
.avis-tete{text-align:center;margin-bottom:44px}
.avis-tete h2{font-size:clamp(30px,4.2vw,46px);font-weight:700;letter-spacing:-.03em}
.etoiles{margin-top:14px;color:var(--or);font-size:26px;letter-spacing:4px}
.avis-tete .note{margin-top:10px;font-size:15px;color:var(--gris)}
.avis{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.avis blockquote{background:#fff;border:1px solid var(--ligne);border-radius:var(--r);padding:28px}
.avis .mini{color:var(--or);font-size:15px;letter-spacing:2px}
.avis p{margin-top:14px;font-size:15.5px;color:var(--encre)}
.avis footer{margin-top:18px;font-size:14px;color:var(--gris)}

/* CTA final */
.cta{text-align:center;padding:96px 0 110px}
.cta h2{font-size:clamp(30px,4.2vw,44px);font-weight:700;letter-spacing:-.03em;max-width:18ch;margin:0 auto}
.cta p{margin:16px auto 32px;max-width:46ch;color:var(--gris)}

/* Footer */
.footer{background:var(--vert);color:#C9D8CC;padding:64px 0 34px;font-size:15px}
.footer-in{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.footer h4{color:#fff;font-size:15px;font-weight:600;margin-bottom:14px}
.footer a{text-decoration:none}
.footer a:hover{color:#fff}
.footer ul{list-style:none}
.footer li{margin-top:8px}
.footer .baseline-footer{max-width:34ch;margin-top:14px}
.footer-bas{margin-top:48px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13.5px}

/* Responsive */
@media (max-width:900px){
  .nav-links{display:none}
  .burger{display:block}
  .services,.avis{grid-template-columns:1fr}
  .etapes{grid-template-columns:1fr 1fr}
  .etape{border-bottom:1px solid var(--ligne);padding-right:26px}
  .etape:nth-child(2n){border-right:0}
  .bloc-vert{grid-template-columns:1fr;padding:38px 30px}
  .footer-in{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .section{padding:70px 0}
  .etapes{grid-template-columns:1fr}
  .etape{border-right:0}
  .engagements{grid-template-columns:1fr}
  .eclipse{width:340px;height:340px;margin:-170px 0 0 -170px}
  .footer-in{grid-template-columns:1fr}
}

/* ---------- Écrans internes (pages et articles) ---------- */
.page-interne{padding:76px 0 96px}
.page-interne h1{font-size:clamp(32px,5vw,52px);line-height:1.1;font-weight:700;letter-spacing:-.03em}
.page-interne .contenu{max-width:70ch;margin-top:28px}
.page-interne .contenu h2{margin-top:38px;font-size:28px;letter-spacing:-.02em}
.page-interne .contenu h3{margin-top:28px;font-size:21px}
.page-interne .contenu p,.page-interne .contenu ul,.page-interne .contenu ol{margin-top:16px}
.page-interne .contenu ul,.page-interne .contenu ol{padding-left:22px}
.page-interne .contenu img{max-width:100%;height:auto;border-radius:var(--r)}
.page-interne .contenu a{color:var(--vert);text-underline-offset:3px}
.menu-ouvert .nav-links{display:flex;position:absolute;top:74px;left:0;right:0;flex-direction:column;
  gap:0;background:var(--creme);border-bottom:1px solid var(--ligne);padding:8px 24px 20px}
.menu-ouvert .nav-links li{padding:10px 0;border-bottom:1px solid var(--ligne)}

/* =========================================================
   PALETTE ALIGNÉE SUR LA PAGE D'ACCUEIL (sept. 2026)
   fond noir, texte crème, accent vert sapin #6FA184
   ========================================================= */
:root{
  --creme:#090604;
  --creme-2:#100A07;
  --vert:#6FA184;
  --vert-clair:#5C8C70;
  --encre:#F4EADA;
  --gris:#A9968A;
  --or:#6FA184;
  --ligne:#2A1D16;
  --r:3px;
  --ec-display:"Spectral","Helvetica Neue",Arial,sans-serif;
  --ec-sans:"Public Sans","Helvetica Neue",Arial,sans-serif;
}
body,body .entry-content,body p,body li,body a,body span,body div,body label,
body input,body textarea,body select,body button{
  font-family:var(--ec-sans)!important;
}
body{
  background:var(--creme);color:var(--encre);
  font-weight:400;line-height:1.75;font-size:17.5px;letter-spacing:0;
}
h1,h2,h3,h4,h5{font-family:var(--ec-display)!important;font-weight:700;letter-spacing:-.015em;color:var(--encre);line-height:1.22}

/* ---- couleurs nommées de Gutenberg : on force, quel que soit l'ordre des feuilles ---- */
body .has-color-1-background-color{background-color:#100A07!important}
body .has-color-2-background-color{background-color:#2A1B12!important}
body .has-color-3-background-color{background-color:#6E4E3C!important}
body .has-paper-2-background-color,body .has-mintsoft-background-color,
body .has-ocresoft-background-color,body .has-light-background-color,
body .has-page-background-background-color{background-color:#100A07!important}
body .has-dark-background-color{background-color:#1A110C!important}
body .has-color-1-color,body .has-light-color,body .has-dark-color,
body .has-page-text-color{color:#F4EADA!important}
body .has-grey-color,body .has-mutedlight-color{color:#A9968A!important}
body .has-color-2-color,body .has-color-3-color,
body .has-mint-color,body .has-ocre-color,body .has-teal-500-color{color:#B8977E!important}

/* ---- MOTS COUPÉS : on interdit la césure et on élargit les colonnes ----
   Les colonnes étaient trop étroites (5 sur une ligne) et le texte se coupait
   en plein mot. Trois colonnes maximum, largeur minimale garantie. */
body *,body .entry-content *{
  overflow-wrap:normal!important;word-break:normal!important;
  hyphens:none!important;-webkit-hyphens:none!important;
}
body .entry-content .wp-block-columns{flex-wrap:wrap!important;gap:20px!important;align-items:stretch!important}
body .entry-content .wp-block-columns > .wp-block-column{
  flex-basis:calc(33.333% - 20px)!important;min-width:230px!important;flex-grow:1!important;
}
@media (max-width:900px){
  body .entry-content .wp-block-columns > .wp-block-column{flex-basis:calc(50% - 20px)!important}
}
@media (max-width:560px){
  body .entry-content .wp-block-columns > .wp-block-column{flex-basis:100%!important;min-width:0!important}
}
body .entry-content .wp-block-column h2,
body .entry-content .wp-block-column h3,
body .entry-content .wp-block-column h4{font-size:1.15rem!important;line-height:1.3!important}
body .entry-content .wp-block-column p{max-width:none!important;line-height:1.7!important}

/* ================= CORRECTIONS DU 16/09 (liste Ema) ================= */

/* 4, 7, 8, 13 — les titres de page collaient au bord de l'écran */
body .wrap{max-width:var(--max)!important;padding-inline:clamp(20px,3vw,44px)!important}
body .page-interne{padding-inline:0!important}
body .page-interne > *{max-width:none;margin-inline:0}
body .entry-content .alignfull > .wp-block-group__inner-container,
body .entry-content .alignfull > .wp-block-columns{max-width:1680px!important}
body .page-interne h1{padding-inline:0!important}

/* 1, 3, 9, 12 — textes non centrés : les paragraphes restaient calés à gauche
   parce qu'ils avaient une largeur max sans marges automatiques */
body .entry-content p,body .entry-content .wp-block-paragraph{margin-left:auto!important;margin-right:auto!important}
body .entry-content h2.has-text-align-center ~ p,
body .entry-content h3.has-text-align-center ~ p,
body .entry-content .wp-block-group:has(.is-content-justification-center) p,
body .entry-content .wp-block-group:has(h2.has-text-align-center) p{text-align:center!important}
body .entry-content .wp-block-buttons{justify-content:center!important}

/* 3, 5, 6, 10 — verts restants des pages Réalisations et Disponibilités */
body .ec-badge{background:#6E4E3C!important;color:#F4EADA!important}
body .ec-shot{background:#1A110C!important;box-shadow:none!important;border:1px solid #2A1D16!important}
body .ec-shot__btn{background:#6E4E3C!important;box-shadow:none!important}
body .ec-shot summary:focus-visible{outline-color:#B8977E!important}
body [style*="color:#5F676B"],body [style*="color:#2C4A3B"],
body [style*="color:#243830"],body [style*="color:#21402F"]{color:#A9968A!important}

/* 10, 11, 12 — tous les boutons du site au même format */
body .wp-block-button__link,body .wp-element-button,
body .ec-btn,body .ec-dbtn,body .ec-book__btn,body .ec-est__btn,body .btn{
  background-color:#6E4E3C!important;color:#F4EADA!important;
  border:1px solid #6E4E3C!important;border-radius:999px!important;
  padding:14px 28px!important;font-weight:700!important;
  font-family:var(--ec-display)!important;font-size:15px!important;
  letter-spacing:0!important;text-transform:none!important;box-shadow:none!important;
}
body .wp-block-button__link:hover,body .wp-element-button:hover,
body .ec-btn:hover,body .ec-dbtn:hover,body .ec-book__btn:hover,body .btn:hover{
  background-color:transparent!important;color:#B8977E!important;border-color:#B8977E!important;
}

/* 10 — l'avis Google de La Dentellière n'existe pas encore : masqué */
body .reviews{display:none!important}

/* photo dans les cartes de réalisation */
.case-vis img{width:100%;height:100%;object-fit:cover;display:block}

/* ---- PLEINE LARGEUR : les sections "alignfull" restaient enfermées dans le conteneur ---- */
body .entry-content .alignfull{
  margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;
  width:100vw!important;max-width:100vw!important;
}
body .entry-content .alignwide{
  margin-left:calc(50% - 46vw)!important;margin-right:calc(50% - 46vw)!important;
  width:92vw!important;max-width:92vw!important;
}
body .entry-content .alignfull > .wp-block-group__inner-container,
body .entry-content .alignfull > .wp-block-columns{
  max-width:1280px!important;margin-left:auto!important;margin-right:auto!important;
  padding-left:24px;padding-right:24px;
}
body .page-interne,body .page-interne .contenu{max-width:none!important}
body .page-interne .contenu > *:not(.alignfull):not(.alignwide){max-width:1280px;margin-inline:auto}

/* ---- tout bloc avec un fond écrit en dur dans la page, quel que soit son type ---- */
body .has-background[style*="background-color"]{background-color:#2A1B12!important}
body [style*="background-color:#0C4239"],body [style*="background-color:#1E4034"],
body [style*="background-color:#2C4A3B"],body [style*="background-color:#243830"],
body [style*="background-color:#21402F"],body [style*="background-color:#3E6B4F"]{
  background-color:#2A1B12!important;
}

/* ---- fonds posés en dur dans les blocs (ils échappaient à la palette) ---- */
body .wp-block-column[style*="background-color"],
body .wp-block-group[style*="background-color"],
body .wp-block-cover[style*="background-color"],
body .wp-block-columns[style*="background-color"]{
  background-color:#2A1B12!important;border:1px solid #3A281E!important;
}
body [style*="background-color:#fff"],body [style*="background-color: #fff"],
body [style*="background-color:#FFF"],body [style*="background-color:#F0EAE0"],
body [style*="background-color:#F6F1EA"],body [style*="background-color:#F8F4EE"]{
  background-color:#100A07!important;
}
body [style*="color:#243830"],body [style*="color:#16241C"]{color:#F4EADA!important}

/* boutons Gutenberg : ils retombaient sur le gris par défaut de WordPress */
body .wp-block-button__link,body .wp-element-button{
  background-color:var(--vert)!important;color:#F4EADA!important;
  border:1px solid var(--vert)!important;font-family:var(--ec-display)!important;font-weight:700!important;
}
body .wp-block-button__link:hover,body .wp-element-button:hover{
  background-color:transparent!important;color:#B8977E!important;border-color:#B8977E!important;
}
body .wp-block-button.is-style-outline .wp-block-button__link{
  background-color:transparent!important;color:#F4EADA!important;border-color:#2A1D16!important;
}
/* lisibilité : largeur de ligne limitée et respiration entre les blocs */
.page-interne .contenu p,.page-interne .contenu li{max-width:66ch;line-height:1.8}
.page-interne .contenu p + p{margin-top:18px}
.carte p,.etape p,.engagement p,.avis p{max-width:42ch;line-height:1.7}
.section-titre p{max-width:52ch;line-height:1.7}
.carte li{line-height:1.55;margin-top:10px}
.footer{line-height:1.7}
strong,b{color:var(--encre);font-weight:500}

/* nav */
.nav{background:rgba(9,6,4,.92);border-bottom:1px solid var(--ligne)}
.nav-links a{font-family:var(--ec-display);color:var(--gris);border-bottom-color:transparent}
.nav-links a:hover{color:var(--encre);border-color:var(--vert-clair)}
.nav-links a.actif{color:var(--encre);border-color:var(--vert)}
.logo{color:var(--encre)}
.burger{color:var(--encre);background:none;border:0}

/* boutons */
.btn{background:var(--vert);color:var(--encre);font-family:var(--ec-display);border:1px solid var(--vert)}
.btn:hover{background:transparent;color:var(--vert-clair);border-color:var(--vert-clair)}

/* surfaces claires héritées de l'ancienne palette */
.carte,.card,.encadre,.bloc,.tuile,.ec-offer,.ec-tiles,.ec-est__main,.ec-book,.ec-cform,
section.alt,.section-alt,.bandeau,.footer,.pied{
  background:var(--creme-2);border-color:var(--ligne);color:var(--encre);
}
input,textarea,select{
  background:var(--creme-2);color:var(--encre);border:1px solid var(--ligne);border-radius:var(--r);
}
input::placeholder,textarea::placeholder{color:var(--gris)}
hr{border-color:var(--ligne)}

/* pages internes */
.page-interne .contenu a{color:var(--vert-clair)}
.page-interne .contenu p,.page-interne .contenu li{color:var(--gris)}
.menu-ouvert .nav-links{background:var(--creme)}

/* ---- palette des blocs Gutenberg (utilisée par toutes les pages) ---- */
:root{
  --wp--preset--color--color-1:#100A07!important;      /* fonds de sections */
  --wp--preset--color--color-2:#2A1B12!important;      /* fonds sombres */
  --wp--preset--color--color-3:#6E4E3C!important;      /* boutons */
  --wp--preset--color--light:#F4EADA!important;
  --wp--preset--color--dark:#F4EADA!important;         /* texte principal */
  --wp--preset--color--grey:#A9968A!important;         /* texte secondaire */
  --wp--preset--color--page-background:#090604!important;
  --wp--preset--color--page-text:#F4EADA!important;
  --wp--preset--color--mint:#8A6248!important;
  --wp--preset--color--ocre:#8A6248!important;
  --wp--preset--color--paper-2:#1A120C!important;
  --wp--preset--color--teal-500:#8A6248!important;
  --wp--preset--color--mintsoft:#100A07!important;
  --wp--preset--color--ocresoft:#100A07!important;
  --wp--preset--color--mutedlight:#A9968A!important;
}
body,.entry-content{background:var(--creme);color:var(--encre)}

/* ---- panneaux blancs des pages (CSS intégré au contenu) ---- */
.ec-book,.ec-cform,.ec-est,.ec-est__main,.ec-offer,.ec-tiles,.ec-quote,.ec-panel{
  background:#100A07!important;
  border:1px solid #2A1D16!important;
  box-shadow:none!important;
  color:var(--encre)!important;
}
.ec-book h3,.ec-cform h3,.ec-est h3,.ec-book label,.ec-cform label,.ec-est label{color:var(--encre)!important}
.ec-book__eyebrow,.ec-book__label,.ec-book__sub,.ec-cform__sub,.ec-est__sub{color:var(--gris)!important}
.ec-book input,.ec-book textarea,.ec-book select,
.ec-cform input,.ec-cform textarea,.ec-cform select,
.ec-est input,.ec-est textarea,.ec-est select{
  background:#1A120C!important;color:var(--encre)!important;border:1px solid #2A1D16!important;
}
.ec-book ::placeholder,.ec-cform ::placeholder,.ec-est ::placeholder{color:var(--gris)!important}
.ec-day,.ec-slot,.ec-chip,.ec-days button,.ec-hours button{
  background:#1A120C!important;color:var(--encre)!important;border:1px solid #2A1D16!important;
}
.ec-book button[type=submit],.ec-cform button[type=submit],.ec-est button[type=submit],
.ec-book .btn,.ec-cform .btn{background:var(--vert)!important;color:var(--encre)!important;border-color:var(--vert)!important}

/* ---- logo : on remplace l'ancien logo vert par le globe crème + le nom ---- */
.logo{
  color:var(--encre)!important;font-family:var(--ec-display);font-weight:600;
  font-size:1.15rem;letter-spacing:-.02em;gap:10px;align-items:center;
}
.logo-nav{
  width:26px!important;height:26px!important;aspect-ratio:1!important;flex:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23CE9B70' stroke-width='2'%3E%3Ccircle cx='50' cy='50' r='42'/%3E%3Cellipse cx='50' cy='50' rx='18' ry='42'/%3E%3Cpath d='M8 50h84M14 30h72M14 70h72M20 20c10 6 50 6 60 0M20 80c10-6 50-6 60 0'/%3E%3C/svg%3E")!important;
  background-size:contain;background-position:center;background-repeat:no-repeat;
}
.logo::after{content:none}
/* nouveau logo rétro (image crème sur fond sombre) */
.logo-img{display:block;height:44px;width:auto;max-width:none}
.footer-logo{display:block;height:52px;width:auto;margin:0 0 14px}

/* =========================================================
   FORMULAIRES (contact, devis, disponibilités) : plus de vert
   Les pages contiennent leur propre CSS avec l'ancienne palette verte ;
   ces règles la remplacent par le marron / crème / beige.
   ========================================================= */
.ec-field label,.ec-dfield label{color:#F4EADA!important}
.ec-dfield label{color:#A9968A!important}
.ec-field input,.ec-field textarea,.ec-field select,
.ec-dfield input,.ec-dfield textarea,.ec-dfield select{
  background:#1A120C!important;color:#F4EADA!important;border:1px solid #2A1D16!important;
}
.ec-field input:focus,.ec-field textarea:focus,.ec-field select:focus,
.ec-dfield input:focus,.ec-dfield textarea:focus,.ec-dfield select:focus{
  border-color:#8A6248!important;box-shadow:0 0 0 3px rgba(110,78,60,.35)!important;background:#1A120C!important;
}
.ec-consent,.ec-cform__sub,.ec-dform__sub,.ec-dform__foot small,.ec-day span,.ec-recap small,
.ec-book__note,.ec-done p,.ec-msg.is-ok,.ec-dmsg{color:#A9968A!important}
.ec-consent input,.ec-cform input[type=checkbox],.ec-book input[type=checkbox],.ec-dform input[type=checkbox]{accent-color:#6E4E3C}
.ec-recap,.ec-done h4,.ec-dmsg.ok{color:#F4EADA!important}
.ec-day:hover,.ec-slot:hover:not(:disabled){border-color:#6E4E3C!important}
.ec-day[aria-pressed=true],.ec-slot[aria-pressed=true]{
  background:#6E4E3C!important;border-color:#6E4E3C!important;color:#F4EADA!important;
}
.ec-day[aria-pressed=true] span{color:#E6D5C3!important}
.ec-btn,.ec-dbtn,.ec-book__btn,.ec-est__btn,
.ec-book button[type=submit],.ec-cform button[type=submit],.ec-est button[type=submit]{
  background:#6E4E3C!important;color:#F4EADA!important;border:1px solid #6E4E3C!important;box-shadow:none!important;
}
.ec-btn:hover:not(:disabled),.ec-dbtn:hover:not([disabled]),.ec-book__btn:hover:not(:disabled),.ec-est__btn:hover{
  background:#5A3F31!important;color:#F4EADA!important;border-color:#5A3F31!important;
}
.ec-btn:disabled,.ec-dbtn[disabled],.ec-book__btn:disabled{
  background:#2A1D16!important;color:#A9968A!important;border-color:#2A1D16!important;
}

/* ---- panneaux et boutons restés clairs ou verts ---- */
.ec-dform,.ec-quote,.ec-sel,.ec-recap,.ec-none,.ec-empty,.ec-est__side,.ec-card{
  background:#100A07!important;border:1px solid #2A1D16!important;
  box-shadow:none!important;color:var(--encre)!important;
}
.ec-dform label,.ec-dform h3,.ec-sel strong,.ec-recap strong{color:var(--encre)!important}
.ec-dform small,.ec-dform__sub,.ec-sel span,.ec-recap span{color:var(--gris)!important}
.ec-dform input,.ec-dform textarea,.ec-dform select{
  background:#1A120C!important;color:var(--encre)!important;border:1px solid #2A1D16!important;
}
.ec-dform ::placeholder{color:var(--gris)!important}
.ec-btn,.ec-dbtn,.ec-book__btn,.ec-est__btn{
  background:var(--vert)!important;color:var(--encre)!important;border:1px solid var(--vert)!important;
}
.ec-btn:hover,.ec-dbtn:hover,.ec-book__btn:hover,.ec-est__btn:hover{
  background:transparent!important;color:var(--vert-clair)!important;border-color:var(--vert-clair)!important;
}

/* ---- couleurs qui étaient écrites en dur dans l'ancienne charte ---- */
.hero h1{
  background:none;-webkit-background-clip:border-box;background-clip:border-box;
  color:var(--encre);font-family:var(--ec-display);font-weight:500;
}
.baseline{font-family:var(--ec-display);color:var(--gris)}
.section-titre h2{font-family:var(--ec-display)}
.section-titre p{color:var(--gris)}
.carte,.avis blockquote{background:var(--creme-2);border-color:var(--ligne)}
.carte h3,.etape h3,.engagement h3{font-family:var(--ec-display)}
.carte li{color:var(--encre)}
.carte .icone,.carte .delai,.etape .num{color:var(--vert-clair)}
.carte .lien{color:var(--vert-clair);border-bottom-color:var(--ligne)}
.btn-ligne{color:var(--encre);box-shadow:inset 0 0 0 1px var(--ligne)}
.btn-ligne:hover{background:var(--vert);color:var(--encre);box-shadow:inset 0 0 0 1px var(--vert)}
.burger{color:var(--encre)}
.bloc-vert{
  background:linear-gradient(150deg,#2A1B12,#14100C);
  color:var(--encre);border:1px solid var(--ligne);border-radius:var(--r);
}
.bloc-vert h2{font-family:var(--ec-display)}
.bloc-vert p,.bloc-vert .aussi{color:var(--gris)}
.bloc-vert .aussi{border-top-color:var(--ligne)}
.etoiles,.avis .mini{color:var(--vert-clair)}
.avis p{color:var(--encre)}
.footer{background:var(--creme-2);color:var(--gris);border-top:1px solid var(--ligne)}
.footer h4{color:var(--vert-clair)}
.footer a:hover{color:var(--encre)}
.footer-bas{border-top-color:var(--ligne)}
.cta h2{font-family:var(--ec-display)}
.cta p{color:var(--gris)}

/* ---- contraste : le marron est réservé aux gros éléments ----
   Sur fond noir, #6E4E3C ne passe pas le seuil de lisibilité en petit corps.
   Les surtitres et petits textes repassent en beige clair. */
.etape .num,.carte .delai,.baseline,.ec-book__eyebrow,.ec-book__label,
.footer h4,.section-titre p,.avis-tete .note{color:var(--gris)!important}
.carte .lien,.page-interne .contenu a{color:#B8977E!important}

/* =========================================================
   PALETTE « SAPIN PROFOND + CRÈME » (24/09/2026)
   Remplace le marron partout : fond noir vert #040706, texte crème #F4EADA,
   vert clair #6FA184 (titres, liens, accents), vert sapin #24483A (boutons),
   beige #A9A28F (petits textes). Ce bloc est à la fin : il a le dernier mot.
   ========================================================= */
:root{
  --creme:#040706;--creme-2:#0A0F0C;--vert:#24483A;--vert-clair:#6FA184;
  --encre:#F4EADA;--gris:#A9A28F;--or:#24483A;--ligne:#1C2620;
  --wp--preset--color--color-1:#0A0F0C!important;
  --wp--preset--color--color-2:#10201A!important;
  --wp--preset--color--color-3:#24483A!important;
  --wp--preset--color--grey:#A9A28F!important;
  --wp--preset--color--page-background:#040706!important;
  --wp--preset--color--mint:#6FA184!important;
  --wp--preset--color--ocre:#6FA184!important;
  --wp--preset--color--paper-2:#0E1511!important;
  --wp--preset--color--teal-500:#6FA184!important;
  --wp--preset--color--mintsoft:#0A0F0C!important;
  --wp--preset--color--ocresoft:#0A0F0C!important;
  --wp--preset--color--mutedlight:#A9A28F!important;
}
.nav{background:rgba(4,7,6,.92)}
body .has-color-1-background-color,body .has-paper-2-background-color,body .has-mintsoft-background-color,
body .has-ocresoft-background-color,body .has-light-background-color,
body .has-page-background-background-color{background-color:#0A0F0C!important}
body .has-color-2-background-color{background-color:#10201A!important}
body .has-color-3-background-color{background-color:#24483A!important}
body .has-dark-background-color{background-color:#0E1511!important}
body .has-grey-color,body .has-mutedlight-color{color:#A9A28F!important}
body .has-color-2-color,body .has-color-3-color,
body .has-mint-color,body .has-ocre-color,body .has-teal-500-color{color:#6FA184!important}
body .has-background[style*="background-color"]{background-color:#10201A!important}
body [style*="background-color:#0C4239"],body [style*="background-color:#1E4034"],
body [style*="background-color:#2C4A3B"],body [style*="background-color:#243830"],
body [style*="background-color:#21402F"],body [style*="background-color:#3E6B4F"]{background-color:#10201A!important}
body .wp-block-column[style*="background-color"],body .wp-block-group[style*="background-color"],
body .wp-block-cover[style*="background-color"],body .wp-block-columns[style*="background-color"]{
  background-color:#10201A!important;border:1px solid #1C2620!important;
}
body [style*="background-color:#fff"],body [style*="background-color: #fff"],
body [style*="background-color:#FFF"],body [style*="background-color:#F0EAE0"],
body [style*="background-color:#F6F1EA"],body [style*="background-color:#F8F4EE"]{background-color:#0A0F0C!important}
body [style*="color:#5F676B"],body [style*="color:#2C4A3B"],
body [style*="color:#243830"],body [style*="color:#21402F"]{color:#A9A28F!important}
.carte .lien,.page-interne .contenu a{color:#6FA184!important}
.bloc-vert{background:linear-gradient(150deg,#10201A,#08110D)}

/* boutons */
body .wp-block-button__link,body .wp-element-button,
body .ec-btn,body .ec-dbtn,body .ec-book__btn,body .ec-est__btn,body .btn,
body .ec-book button[type=submit],body .ec-cform button[type=submit],body .ec-est button[type=submit]{
  background-color:#24483A!important;border-color:#24483A!important;color:#F4EADA!important;
}
body .wp-block-button__link:hover,body .wp-element-button:hover,body .btn:hover,
body .ec-btn:hover:not(:disabled),body .ec-dbtn:hover:not([disabled]),body .ec-book__btn:hover:not(:disabled),body .ec-est__btn:hover{
  background-color:#1B3A2E!important;border-color:#6FA184!important;color:#F4EADA!important;
}
body .ec-btn:disabled,body .ec-dbtn[disabled],body .ec-book__btn:disabled{
  background-color:#1C2620!important;border-color:#1C2620!important;color:#A9A28F!important;
}

/* réalisations */
body .ec-badge{background:transparent!important;color:#A9A28F!important;border:1px solid #1C2620!important}
body .ec-shot{background:#0E1511!important;border:1px solid #1C2620!important}
body .ec-shot__btn{background:#24483A!important}
body .ec-shot summary:hover .ec-shot__btn{background:#1B3A2E!important}
body .ec-shot summary:focus-visible{outline-color:#6FA184!important}
body .ec-case__lien{border-bottom-color:#6FA184!important}
body .ec-avis{border-left-color:#6FA184!important;background:#0A0F0C!important}

/* formulaires */
.ec-book,.ec-cform,.ec-est,.ec-est__main,.ec-offer,.ec-tiles,.ec-quote,.ec-panel,
.ec-dform,.ec-sel,.ec-recap,.ec-none,.ec-empty,.ec-est__side,.ec-card{
  background:#0A0F0C!important;border-color:#1C2620!important;
}
.ec-book input,.ec-book textarea,.ec-book select,.ec-cform input,.ec-cform textarea,.ec-cform select,
.ec-est input,.ec-est textarea,.ec-est select,.ec-dform input,.ec-dform textarea,.ec-dform select,
.ec-field input,.ec-field textarea,.ec-field select,.ec-dfield input,.ec-dfield textarea,.ec-dfield select,
.ec-day,.ec-slot,.ec-chip,.ec-days button,.ec-hours button{
  background:#0E1511!important;border-color:#1C2620!important;
}
.ec-field input:focus,.ec-field textarea:focus,.ec-field select:focus,
.ec-dfield input:focus,.ec-dfield textarea:focus,.ec-dfield select:focus{
  border-color:#6FA184!important;box-shadow:0 0 0 3px rgba(111,161,132,.3)!important;
}
.ec-day:hover,.ec-slot:hover:not(:disabled){border-color:#6FA184!important}
.ec-day[aria-pressed=true],.ec-slot[aria-pressed=true]{background:#24483A!important;border-color:#6FA184!important;color:#F4EADA!important}
.ec-day[aria-pressed=true] span{color:#D6E6DA!important}
.ec-consent input,.ec-cform input[type=checkbox],.ec-book input[type=checkbox],.ec-dform input[type=checkbox]{accent-color:#6FA184}
.ec-consent,.ec-cform__sub,.ec-dform__sub,.ec-dform__foot small,.ec-day span,.ec-recap small,
.ec-book__note,.ec-done p,.ec-msg.is-ok,.ec-dmsg,.ec-dfield label,
.ec-book__eyebrow,.ec-book__label,.ec-book__sub,.ec-cform__sub,.ec-est__sub{color:#A9A28F!important}
.ec-book ::placeholder,.ec-cform ::placeholder,.ec-est ::placeholder,.ec-dform ::placeholder{color:#8C8A7C!important}
