/* MBE – Marcoz Bureau d'Études · feuille de style unique */
:root{
  --calcaire:#F5F5F0;   /* fond : calcaire clair du Var */
  --blanc:#FFFFFF;
  --humus:#2B2118;      /* brun d'humus : texte, haut de page */
  --humus-doux:#5F5244; /* texte secondaire */
  --ecorce:#7A5636;     /* brun moyen : titres secondaires, repères */
  --sable:#EDE5D8;      /* brun clair : sections alternées */
  --feuille:#7DB32E;    /* vert du logo MBE : boutons */
  --feuille-fonce:#4F7A17;
  --olivier:#3D5A28;    /* vert foncé : bandeau, étapes */
  --sauge:#E3EBD6;      /* vert pâle */
  --garrigue:#4F6B2E;   /* liens */
  --ocre:#C9A15B;       /* horizons de sol */
  --filet:#DCD6C9;
  --rayon:8px;
  --cadre:1180px;
  --gouttiere:clamp(16px,4vw,40px);
  --t-base:1.125rem;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:90px}
body{margin:0;background:var(--calcaire);color:var(--humus);font-family:"Archivo",system-ui,sans-serif;
  font-size:var(--t-base);line-height:1.6;font-stretch:100%;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:var(--garrigue);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{color:var(--humus)}
:focus-visible{outline:3px solid var(--feuille-fonce);outline-offset:3px;border-radius:2px}
h1,h2,h3,h4{font-stretch:72%;font-weight:700;line-height:1.08;letter-spacing:-.005em;margin:0 0 .5em;text-wrap:balance}
h1{font-size:clamp(2.4rem,5.2vw,4.2rem)}
h2{font-size:clamp(1.8rem,3.2vw,2.6rem)}
h3{font-size:1.4rem;line-height:1.15}
p{margin:0 0 1em}
.cadre{max-width:var(--cadre);margin:0 auto;padding:0 var(--gouttiere)}
.evitement{position:absolute;left:-9999px}
.evitement:focus{left:16px;top:16px;z-index:100;background:var(--blanc);padding:.5rem 1rem}

/* Boutons */
.bouton{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;padding:.7rem 1.4rem;
  background:var(--feuille);color:var(--humus);font-weight:650;text-decoration:none;border-radius:var(--rayon);
  border:2px solid var(--feuille);font-size:1rem;cursor:pointer;font-family:inherit}
.bouton:hover{background:#8CC43A;border-color:#8CC43A;color:var(--humus)}
.bouton-trait{background:transparent;border-color:var(--humus);color:var(--humus)}
.bouton-trait:hover{background:var(--humus);border-color:var(--humus);color:var(--calcaire)}
.bouton-petit{min-height:40px;padding:.45rem 1rem;font-size:.95rem}

/* En-tête */
.entete{background:var(--blanc);border-bottom:1px solid var(--filet);position:sticky;top:0;z-index:40}
.entete-cadre{display:flex;align-items:center;gap:1.5rem;min-height:76px}
.marque{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--humus);flex-shrink:0}
.marque-sigle{font-stretch:62%;font-weight:850;font-size:1.65rem;line-height:1;background:var(--feuille);
  padding:.32rem .5rem .26rem;border-radius:4px;letter-spacing:.02em}
.marque-nom{display:flex;flex-direction:column;font-stretch:80%;font-weight:650;font-size:1.05rem;line-height:1.15}
.marque-nom small{font-weight:400;font-stretch:100%;font-size:.8rem;color:var(--humus-doux)}
.nav{display:flex;align-items:center;gap:.25rem;margin-left:auto}
.nav a,.menu nav a{color:var(--humus);text-decoration:none;font-size:.98rem;padding:.5rem .6rem;border-radius:4px}
.nav a:not(.bouton):hover,.menu nav a:not(.bouton):hover{background:var(--calcaire)}
.nav a[aria-current="page"]:not(.bouton){box-shadow:inset 0 -2px 0 var(--feuille)}
.nav .bouton{margin-left:.5rem}
.entete-tel{font-weight:650;color:var(--humus);text-decoration:none;white-space:nowrap;font-variant-numeric:tabular-nums}
.menu{display:none;margin-left:auto}
.menu summary{list-style:none;cursor:pointer;padding:.6rem .9rem;border:1px solid var(--filet);border-radius:var(--rayon);font-weight:600}
.menu summary::-webkit-details-marker{display:none}
.menu[open] summary{background:var(--calcaire)}
.menu nav{position:absolute;left:0;right:0;top:100%;background:var(--blanc);border-bottom:1px solid var(--filet);
  padding:.5rem var(--gouttiere) 1.2rem;display:flex;flex-direction:column;box-shadow:0 12px 24px rgba(46,36,25,.08)}
.menu nav a{padding:.8rem .2rem;border-bottom:1px solid var(--calcaire);font-size:1.05rem}
.menu nav .bouton{margin-top:.8rem;border-bottom:0}
@media (max-width:1060px){.nav{display:none}.menu{display:block}}
@media (max-width:560px){.entete-tel{display:none}.marque-nom small{display:none}.entete-cadre{min-height:64px}}

/* Onglet Admin, sur le côté */
.onglet-admin{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:45;writing-mode:vertical-rl;
  background:var(--humus);color:var(--calcaire);text-decoration:none;font-size:.78rem;font-weight:600;letter-spacing:.06em;
  padding:.9rem .4rem;border-radius:var(--rayon) 0 0 var(--rayon);opacity:.8}
.onglet-admin:hover,.onglet-admin:focus-visible{opacity:1;color:var(--blanc);padding-right:.6rem}
@media (max-width:560px){.onglet-admin{font-size:.7rem;padding:.7rem .3rem;opacity:.7}}
@media print{.onglet-admin,.entete,.encadre{display:none}}

/* ---------- Accueil ---------- */
.accueil-tete{background:var(--blanc);border-bottom:1px solid var(--filet);overflow:hidden}
.accueil-grille{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(2rem,5vw,5rem);
  align-items:center;padding-top:clamp(2.5rem,6vw,5rem);padding-bottom:clamp(2.5rem,6vw,5rem)}
.accueil-tete h1{font-size:clamp(2.6rem,6vw,4.9rem);font-stretch:66%;max-width:14ch}
.accueil-tete .chapo{font-size:clamp(1.15rem,1.6vw,1.35rem);max-width:36em;color:var(--humus-doux)}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin:1.8rem 0 2rem}
.tel-grand{font-size:1.5rem;font-weight:700;font-stretch:75%;color:var(--humus);text-decoration:none;font-variant-numeric:tabular-nums}
.tel-grand:hover{text-decoration:underline}
.garanties{display:flex;flex-wrap:wrap;gap:.5rem 1.6rem;list-style:none;padding:1.2rem 0 0;margin:0;border-top:1px solid var(--filet);
  font-size:.98rem;color:var(--humus-doux)}
.garanties li{display:flex;align-items:center;gap:.5rem}
.garanties li::before{content:"";width:.55rem;height:.55rem;border-radius:50%;background:var(--feuille)}

/* La carotte de sol : élément signature */
.carotte{margin:0;position:relative;display:grid;grid-template-columns:3.2rem 7.5rem 1fr;align-items:stretch;
  font-variant-numeric:tabular-nums;max-width:420px;justify-self:end;width:100%}
.carotte figcaption{grid-column:1/-1;font-size:.88rem;color:var(--humus-doux);margin-bottom:.8rem}
.carotte-echelle{position:relative;border-right:1px solid var(--humus);font-size:.78rem;color:var(--humus-doux)}
.carotte-echelle span{position:absolute;right:.45rem;transform:translateY(-50%)}
.carotte-echelle span::after{content:"";position:absolute;right:-.45rem;top:50%;width:.3rem;border-top:1px solid var(--humus)}
.carotte-tube{display:flex;flex-direction:column;border-radius:0 0 3.75rem 3.75rem / 0 0 1.2rem 1.2rem;overflow:hidden;
  box-shadow:inset 6px 0 10px rgba(255,255,255,.18),inset -10px 0 14px rgba(0,0,0,.22);margin-left:.5rem}
.horizon{position:relative}
.h-vegetale{flex:25;background:#4A3A2B radial-gradient(circle at 30% 40%,#5d4a36 0 2px,transparent 3px) 0 0/14px 11px}
.h-limon{flex:45;background:#9C7444 radial-gradient(circle at 60% 30%,#b0875a 0 1.5px,transparent 2.5px) 0 0/10px 9px}
.h-argile{flex:50;background:#C9A15B radial-gradient(circle at 40% 60%,#d8b678 0 2px,transparent 3px) 0 0/12px 12px}
.h-calcaire{flex:40;background:#DCD5C2 radial-gradient(ellipse at 50% 50%,#c4bba4 0 5px,transparent 6px) 0 0/22px 17px}
.carotte-legende{display:flex;flex-direction:column;padding-left:1rem;font-size:.92rem;line-height:1.25}
.carotte-legende li{list-style:none;display:flex;flex-direction:column;justify-content:center;border-top:1px dashed var(--filet)}
.carotte-legende li:first-child{border-top:0}
.carotte-legende b{font-weight:650}
.carotte-legende small{color:var(--humus-doux);font-size:.82rem}
.carotte-colonne{display:contents}
.carotte-corps{grid-column:1/-1;display:grid;grid-template-columns:subgrid;height:clamp(340px,44vw,470px)}
.mesure-k{grid-column:2/-1;margin:1rem 0 0 .5rem;display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap;
  background:var(--calcaire);border-radius:var(--rayon);padding:.75rem 1rem}
.mesure-k strong{font-size:2rem;font-stretch:70%;line-height:1}
.mesure-k span{font-size:.9rem;color:var(--humus-doux)}
@media (prefers-reduced-motion:no-preference){
  .carotte-tube{animation:carottage 1.6s cubic-bezier(.3,.7,.2,1) .2s both}
  .carotte-legende li{animation:apparait .5s ease-out both}
  .carotte-legende li:nth-child(1){animation-delay:.5s}.carotte-legende li:nth-child(2){animation-delay:.8s}
  .carotte-legende li:nth-child(3){animation-delay:1.1s}.carotte-legende li:nth-child(4){animation-delay:1.4s}
  .mesure-k{animation:apparait .5s ease-out 1.8s both}
}
@keyframes carottage{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes apparait{from{opacity:0}to{opacity:1}}

@media (max-width:860px){
  .accueil-grille{grid-template-columns:1fr}
  .carotte{justify-self:start;max-width:none}
  .carotte-corps{height:300px}
}

/* Sections */
.section{padding:clamp(3.5rem,8vw,6.5rem) 0}
.section-blanche{background:var(--blanc);border-top:1px solid var(--filet);border-bottom:1px solid var(--filet)}
.intro{max-width:40em;margin-bottom:2.5rem}
.intro p{color:var(--humus-doux);font-size:1.15rem}

.prestations{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:2px solid var(--humus);margin:0;padding:0}
.prestations div{padding:1.4rem 1.4rem 0 0}
.prestations div+div{padding-left:1.4rem;border-left:1px solid var(--filet)}
.prestations dt{font-stretch:75%;font-weight:700;font-size:1.35rem;line-height:1.15;margin-bottom:.5rem}
.prestations dd{margin:0;color:var(--humus-doux);font-size:1rem}
@media (max-width:900px){.prestations{grid-template-columns:1fr 1fr}.prestations div:nth-child(3){padding-left:0;border-left:0}}
@media (max-width:520px){.prestations{grid-template-columns:1fr}.prestations div,.prestations div+div{padding:1.2rem 0;border-left:0;border-bottom:1px solid var(--filet)}}

.terrain{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:1rem;margin-top:3rem}
.terrain figure{margin:0}
.terrain img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--rayon)}
.terrain figure:first-child img{aspect-ratio:auto;height:100%;max-height:560px}
.terrain figcaption{font-size:.9rem;color:var(--humus-doux);margin-top:.55rem}
@media (max-width:760px){.terrain{grid-template-columns:1fr 1fr}.terrain figure:first-child{grid-column:1/-1}.terrain figure:first-child img{aspect-ratio:4/3;height:auto}}

/* Étapes : vraie séquence, donc numérotée */
.etapes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;counter-reset:etape}
.etapes li{counter-increment:etape;position:relative;padding-top:3.6rem}
.etapes li::before{content:counter(etape);position:absolute;top:0;left:0;width:2.6rem;height:2.6rem;border-radius:50%;
  display:grid;place-items:center;background:var(--humus);color:var(--calcaire);font-weight:700;font-stretch:75%;font-size:1.2rem}
.etapes li::after{content:"";position:absolute;top:1.3rem;left:3.2rem;right:-1rem;border-top:2px dotted var(--ocre)}
.etapes li:last-child::after{display:none}
.etapes h3{font-size:1.25rem}
.etapes p{font-size:1rem;color:var(--humus-doux);margin:0}
.etapes strong{color:var(--humus)}
@media (max-width:900px){.etapes{grid-template-columns:1fr 1fr;row-gap:2.5rem}.etapes li:nth-child(2)::after{display:none}}
@media (max-width:520px){.etapes{grid-template-columns:1fr}.etapes li::after{display:none}}

.qui{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.qui>img{border-radius:var(--rayon);width:100%;aspect-ratio:3/4;object-fit:cover}
.qui .signature{font-stretch:70%;font-weight:700;font-size:1.6rem;margin-top:1.5rem}
.qui-texte p{max-width:36em}
.synaba{display:flex;align-items:center;gap:1.2rem;margin-top:2rem;padding:1rem 1.2rem;background:var(--calcaire);border-radius:var(--rayon);max-width:36em}
.synaba img{width:120px;flex-shrink:0;border-radius:3px}
.synaba p{margin:0;font-size:.95rem}
@media (max-width:760px){.qui{grid-template-columns:1fr}.qui>img{aspect-ratio:4/3;max-height:460px}}

.documents{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(2rem,5vw,4rem);align-items:center}
.liste-coche{list-style:none;padding:0;margin:0 0 1.5rem}
.liste-coche li{position:relative;padding:.55rem 0 .55rem 2rem;border-bottom:1px solid var(--filet)}
.liste-coche li::before{content:"";position:absolute;left:.2rem;top:.95rem;width:.85rem;height:.45rem;
  border-left:2px solid var(--feuille-fonce);border-bottom:2px solid var(--feuille-fonce);transform:rotate(-45deg)}
.documents img{border-radius:var(--rayon);aspect-ratio:1;object-fit:cover;width:100%}
@media (max-width:760px){.documents{grid-template-columns:1fr}.documents img{aspect-ratio:16/10}}

.filieres{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;margin-bottom:2rem}
.filieres h3{padding-top:.9rem;border-top:4px solid var(--ocre)}
.filieres p{font-size:1rem;color:var(--humus-doux)}
@media (max-width:900px){.filieres{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.filieres{grid-template-columns:1fr;gap:1rem}}

.appel{background:var(--humus);color:var(--calcaire);padding:clamp(3.5rem,8vw,6rem) 0}
.appel-grille{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:2rem;align-items:end}
.appel h2{color:var(--blanc);max-width:16ch}
.appel p{color:#D8D2C6;max-width:34em}
.appel .tel-grand{color:var(--blanc);font-size:clamp(2rem,4.5vw,3.2rem);display:block;margin-bottom:1rem}
.appel a:not(.bouton):not(.tel-grand){color:var(--feuille)}
@media (max-width:760px){.appel-grille{grid-template-columns:1fr}}

/* ---------- Pages de contenu ---------- */
.tete-page{background:var(--blanc);border-bottom:1px solid var(--filet);padding:clamp(2rem,5vw,3.5rem) 0 clamp(2rem,4vw,3rem)}
.tete-page h1{max-width:22ch}
.tete-page .chapo{font-size:1.2rem;color:var(--humus-doux);max-width:38em;margin:0}
.fil{font-size:.9rem;color:var(--humus-doux);margin-bottom:1.2rem}
.fil a{color:var(--humus-doux)}
.article-cadre{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(2rem,5vw,4.5rem);align-items:start;
  padding-top:clamp(2.5rem,5vw,4rem);padding-bottom:clamp(3.5rem,7vw,6rem)}
.texte{max-width:68ch}
.texte h2{font-size:clamp(1.6rem,2.6vw,2.1rem);margin-top:2.2em}
.texte h2:first-child{margin-top:0}
.texte h3{margin-top:1.8em}
.texte ul{padding-left:1.2rem;margin:0 0 1.2em}
.texte li{margin-bottom:.35em}
.texte li::marker{color:var(--ocre)}
.texte figure{margin:2rem 0}
.texte figure img{border-radius:var(--rayon)}
.texte figcaption{font-size:.9rem;color:var(--humus-doux);margin-top:.5rem}
.texte .note{background:var(--blanc);border-left:4px solid var(--feuille);padding:1rem 1.2rem;border-radius:0 var(--rayon) var(--rayon) 0}
.encadre{position:sticky;top:100px;background:var(--blanc);border:1px solid var(--filet);border-radius:var(--rayon);padding:1.5rem}
.encadre h2{font-size:1.5rem}
.encadre p{font-size:1rem;color:var(--humus-doux)}
.encadre-tel{display:block;font-size:1.6rem;font-weight:700;font-stretch:75%;color:var(--humus);text-decoration:none;margin-bottom:1rem;font-variant-numeric:tabular-nums}
.encadre .bouton{width:100%}
@media (max-width:900px){.article-cadre{grid-template-columns:1fr}.encadre{position:static}}

.etapes-detail{list-style:none;padding:0;margin:0;counter-reset:etape}
.etapes-detail>li{counter-increment:etape;position:relative;padding:0 0 2.2rem 4rem;border-left:2px dotted var(--ocre);margin-left:1.3rem}
.etapes-detail>li:last-child{border-left-color:transparent;padding-bottom:0}
.etapes-detail>li::before{content:counter(etape);position:absolute;left:-1.35rem;top:-.2rem;width:2.6rem;height:2.6rem;border-radius:50%;
  display:grid;place-items:center;background:var(--humus);color:var(--calcaire);font-weight:700;font-stretch:75%;font-size:1.2rem}
.etapes-detail h2{margin-top:0;font-size:1.5rem}

.faq details{border-bottom:1px solid var(--filet)}
.faq details:first-of-type{border-top:2px solid var(--humus)}
.faq summary{cursor:pointer;list-style:none;padding:1.1rem 2.5rem 1.1rem 0;position:relative;font-weight:650;font-stretch:85%;font-size:1.2rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:.6rem;top:1.45rem;width:.6rem;height:.6rem;border-right:2px solid var(--humus);
  border-bottom:2px solid var(--humus);transform:rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(-135deg);top:1.75rem}
.faq details p{margin:0 0 1.2rem;color:var(--humus-doux)}

.fiche{display:grid;grid-template-columns:12rem 1fr;gap:.2rem 1.5rem;margin:0}
.fiche dt{font-weight:650}
.fiche dd{margin:0 0 .8rem}
@media (max-width:520px){.fiche{grid-template-columns:1fr}}

/* Formulaires */
.formulaire{display:grid;gap:1.1rem;background:var(--blanc);border:1px solid var(--filet);border-radius:var(--rayon);padding:clamp(1.2rem,3vw,2rem)}
.formulaire .deux{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}
@media (max-width:600px){.formulaire .deux{grid-template-columns:1fr}}
label{display:block;font-weight:600;font-size:.98rem;margin-bottom:.35rem}
label small{font-weight:400;color:var(--humus-doux)}
input[type=text],input[type=email],input[type=tel],input[type=password],textarea,select{width:100%;font:inherit;font-size:1rem;color:var(--humus);
  background:var(--calcaire);border:1px solid #C9C7BA;border-radius:4px;padding:.75rem .85rem;min-height:48px}
textarea{min-height:150px;resize:vertical}
input:focus,textarea:focus{border-color:var(--garrigue);background:var(--blanc);outline:none;box-shadow:0 0 0 3px rgba(125,179,46,.35)}
.case{display:flex;gap:.7rem;align-items:flex-start;font-weight:400;font-size:.92rem;color:var(--humus-doux)}
.case input{width:1.2rem;height:1.2rem;margin-top:.15rem;accent-color:var(--feuille-fonce);flex-shrink:0}
.piege{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.contact-grille{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(2rem,5vw,4rem);align-items:start;
  padding-top:clamp(2.5rem,5vw,4rem);padding-bottom:clamp(3.5rem,7vw,6rem)}
.coordonnees{font-size:1.05rem}
.coordonnees h2{font-size:1.5rem}
.coordonnees .tel-grand{display:block;margin-bottom:.4rem}
@media (max-width:860px){.contact-grille{grid-template-columns:1fr}}

.message-page{min-height:60vh;display:grid;place-items:center;padding:3rem 0}
.message-page .boite{background:var(--blanc);border:1px solid var(--filet);border-radius:var(--rayon);padding:2rem;max-width:520px;width:100%}
.erreur{color:#9B2C1F;font-weight:600}

/* Admin */
.admin-cadre{padding-top:2.5rem;padding-bottom:4rem}
.admin-barre{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:2rem}
.table-defile{overflow-x:auto;background:var(--blanc);border:1px solid var(--filet);border-radius:var(--rayon)}
table{border-collapse:collapse;width:100%;font-size:.98rem}
th,td{text-align:left;padding:.8rem 1rem;border-bottom:1px solid var(--filet);vertical-align:top}
th{font-stretch:85%;background:var(--calcaire)}
td.date{white-space:nowrap;font-variant-numeric:tabular-nums}

/* Pied */
.pied{background:#241C13;color:#CFC8BA;padding:3.5rem 0 2rem;font-size:.95rem}
.pied-cadre{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:2rem 3rem}
.pied h2{font-size:1.05rem;color:var(--blanc);font-stretch:85%;margin-bottom:.8rem}
.pied a{color:#E6E0D3}
.pied a:hover{color:var(--feuille)}
.pied .marque{color:var(--blanc);margin-bottom:1rem}
.pied .marque-nom small{color:#B5AD9E}
.pied-legal{grid-column:1/-1;border-top:1px solid #4A3F32;padding-top:1.5rem;display:flex;flex-wrap:wrap;gap:.5rem 2rem;justify-content:space-between;font-size:.88rem}
.pied-legal p{margin:0}
.pied-legal a{margin-right:1.2rem}
@media (max-width:760px){.pied-cadre{grid-template-columns:1fr 1fr}.pied-id{grid-column:1/-1}}
@media (max-width:460px){.pied-cadre{grid-template-columns:1fr}}

/* Admin : onglets et études de sol */
.admin-onglets{display:flex;gap:.3rem;flex-wrap:wrap}
.admin-onglets a{padding:.55rem 1rem;border-radius:var(--rayon);text-decoration:none;color:var(--humus);font-weight:600;border:1px solid var(--filet);background:var(--blanc)}
.admin-onglets a[aria-current="page"]{background:var(--humus);color:var(--calcaire);border-color:var(--humus)}
.formulaire .trois{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.1rem}
@media (max-width:700px){.formulaire .trois{grid-template-columns:1fr}}
select{width:100%;font:inherit;font-size:1rem;color:var(--humus);background:var(--calcaire);border:1px solid #C9C7BA;border-radius:4px;padding:.75rem .85rem;min-height:48px}
.options-etude summary{cursor:pointer;font-weight:600}
.options-etude summary small{font-weight:400;color:var(--humus-doux)}
.barre-attente{height:8px;background:var(--calcaire);border-radius:4px;overflow:hidden}
.barre-attente span{display:block;height:100%;width:35%;background:var(--feuille);border-radius:4px;animation:attente 1.6s ease-in-out infinite}
@keyframes attente{0%{transform:translateX(-100%)}100%{transform:translateX(300%)}}
@media (prefers-reduced-motion:reduce){.barre-attente span{animation:none;width:100%;opacity:.5}}
.note-attente{margin:0;color:var(--humus-doux);font-size:.95rem}
.resume-grille{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem}
.resume-grille h2{font-size:1.5rem}
@media (max-width:900px){.resume-grille{grid-template-columns:1fr}}
table.resume th{width:38%;font-stretch:100%;font-weight:600;background:var(--blanc)}
.lien-suppr{background:none;border:0;color:#9B2C1F;text-decoration:underline;cursor:pointer;font:inherit;font-size:.95rem;padding:0}
.lien-envoi{background:none;border:0;color:var(--garrigue);text-decoration:underline;cursor:pointer;font:inherit;font-size:.95rem;padding:0;text-align:left}
.message-ok{background:#E9F3DA;border-left:4px solid var(--feuille);padding:.9rem 1.1rem;border-radius:0 var(--rayon) var(--rayon) 0;font-weight:600}

/* Audits : feux tricolores */
.feu{display:inline-flex;flex-direction:column;gap:3px;background:#1E1812;padding:4px;border-radius:9px;vertical-align:middle}
.feu i{width:12px;height:12px;border-radius:50%;background:#3A3129;display:block}
.feu .allume.l-critique{background:#E5372B;box-shadow:0 0 8px #E5372B}
.feu .allume.l-attention{background:#F39A1E;box-shadow:0 0 8px #F39A1E}
.feu .allume.l-ok{background:#5DBB2E;box-shadow:0 0 8px #5DBB2E}
.feu-grand{gap:8px;padding:10px;border-radius:18px}
.feu-grand i{width:34px;height:34px}
.audit-bandeau{display:flex;gap:1.8rem;align-items:center;padding:1.6rem 1.8rem;border-radius:var(--rayon);margin-bottom:2rem;border:1px solid var(--filet);background:var(--blanc);border-left:10px solid}
.audit-bandeau.audit-critique{border-left-color:#E5372B;background:#FDF0EE}
.audit-bandeau.audit-attention{border-left-color:#F39A1E;background:#FEF6EA}
.audit-bandeau.audit-ok{border-left-color:#5DBB2E;background:#EFF7E8}
.audit-bandeau h1{font-size:clamp(1.8rem,3.5vw,2.6rem);margin:0 0 .3rem}
.audit-phrase{font-size:1.2rem;font-weight:600;margin:0 0 .6rem}
.audit-compte{display:flex;gap:.6rem;flex-wrap:wrap;margin:0 0 .5rem}
.audit-compte span{padding:.2rem .7rem;border-radius:999px;font-weight:650;font-size:.95rem;color:#fff}
.c-critique{background:#C62D22}.c-attention{background:#C77A0E}.c-ok{background:#3F8A1C}
.audit-priorites ol{margin:0;padding-left:1.4rem;display:grid;gap:.6rem}
.audit-priorites .feu{transform:scale(.75);margin-right:.2rem}
.audit-groupe{margin-top:2rem}
.audit-groupe h2{display:flex;align-items:center;gap:.8rem;font-size:1.6rem}
.audit-points{list-style:none;margin:0;padding:0;background:var(--blanc);border:1px solid var(--filet);border-radius:var(--rayon)}
.audit-points li{display:flex;gap:1rem;padding:1rem 1.2rem;border-bottom:1px solid var(--filet);border-left:6px solid transparent}
.audit-points li:last-child{border-bottom:0}
.audit-points li.audit-critique{border-left-color:#E5372B}
.audit-points li.audit-attention{border-left-color:#F39A1E}
.audit-points li.audit-ok{border-left-color:#5DBB2E}
.audit-points p{margin:.2rem 0 0;color:var(--humus-doux);font-size:1rem}
.audit-points .conseil{color:var(--humus);font-weight:500}
.audit-points .conseil::before{content:"Conseil : ";font-weight:700}
.pastille{flex-shrink:0;width:18px;height:18px;border-radius:50%;margin-top:.25rem}
.audit-critique>.pastille{background:#E5372B}.audit-attention>.pastille{background:#F39A1E}.audit-ok>.pastille{background:#5DBB2E}
@media (max-width:600px){.audit-bandeau{flex-direction:column;align-items:flex-start}}


/* ===== Refonte 2 (nov. 2026) : bruns et verts du logo ===== */
/* Bandeau du haut */
.bandeau-haut{background:var(--olivier);color:#E3EBD6;font-size:.9rem}
.bandeau-cadre{display:flex;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;min-height:38px;flex-wrap:wrap}
.bandeau-haut p{margin:0}
.bandeau-haut a{color:var(--blanc);text-decoration:none;margin-left:1.4rem;font-variant-numeric:tabular-nums}
.bandeau-haut a:first-child{margin-left:0}
.bandeau-haut a:hover{text-decoration:underline;color:var(--blanc)}
@media (max-width:760px){.bandeau-cadre>p:first-child{display:none}.bandeau-cadre{justify-content:center}}
.entete{border-bottom:3px solid var(--feuille)}
.marque-logo{width:72px;height:auto;border-radius:6px}
.marque-nom{font-size:1.1rem}
@media (max-width:560px){.marque-logo{width:58px}}

/* Boutons */
.bouton{border-radius:999px;padding:.75rem 1.6rem}
.bouton-clair{background:transparent;border-color:rgba(255,255,255,.55);color:var(--blanc)}
.bouton-clair:hover{background:var(--blanc);border-color:var(--blanc);color:var(--humus)}

/* Haut de l'accueil : grande photo de terrain, texte centré (inspiré d'etude2sol.fr) */
.hero{position:relative;background:var(--humus);color:#E9E2D6;overflow:hidden;isolation:isolate}
.hero-fond{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%;z-index:-2;filter:blur(1.5px) saturate(.85);transform:scale(1.03)}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg,rgba(43,33,24,.80) 0%,rgba(43,33,24,.84) 55%,rgba(36,52,24,.94) 100%)}
.hero-centre{text-align:center;display:flex;flex-direction:column;align-items:center;
  padding-top:clamp(3.5rem,9vw,7rem);padding-bottom:clamp(2.5rem,6vw,4rem)}
.hero h1{color:var(--blanc);font-size:clamp(2.3rem,5.2vw,4.3rem);font-stretch:66%;max-width:18ch;margin-inline:auto;
  text-shadow:0 2px 18px rgba(0,0,0,.35)}
.hero h1 span{color:var(--feuille)}
.hero-zone{font-size:.95rem;color:var(--feuille);font-weight:600;margin-bottom:1rem;letter-spacing:.04em;text-transform:uppercase}
.hero-services{color:var(--ocre);font-weight:600;font-size:clamp(1rem,1.5vw,1.2rem);margin:1.2rem auto 0;max-width:46em}
.hero-services i{font-style:normal;color:#E9E2D6;opacity:.6;margin:0 .35em}
.hero .chapo{font-size:clamp(1.05rem,1.4vw,1.25rem);color:#E0D8CA;max-width:36em;margin:1rem auto 0}
.hero .actions{margin:1.8rem 0 0;justify-content:center}
.hero-departements{list-style:none;padding:0;margin:2.6rem 0 0;display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem}
.hero-departements li{display:flex;align-items:center;gap:.55rem;padding:.4rem .95rem .4rem .45rem;border-radius:999px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);font-size:.95rem;color:#F1ECE3}
.hero-departements b{display:inline-grid;place-items:center;min-width:2.1rem;height:2.1rem;border-radius:999px;
  background:var(--feuille);color:var(--humus);font-size:.9rem}

/* Zone d'intervention */
.zones{list-style:none;padding:0;margin:2rem 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.zones li{background:var(--blanc);border-radius:var(--rayon);padding:1.4rem 1.3rem;border-top:4px solid var(--ecorce)}
.zones li.zone-base{border-top-color:var(--feuille);background:var(--sauge)}
.zones b{display:block;font-size:2.6rem;line-height:1;font-stretch:66%;color:var(--olivier)}
.zones strong{display:block;font-size:1.15rem;margin:.5rem 0 .25rem;color:var(--humus)}
.zones span{font-size:.92rem;color:var(--humus-doux);line-height:1.4}
@media (max-width:900px){.zones{grid-template-columns:1fr 1fr}}
@media (max-width:420px){.zones{grid-template-columns:1fr}}

/* Carte de visite dans le contact */
.carte-visite{display:block;width:100%;max-width:360px;height:auto;border-radius:var(--rayon);margin:1.2rem 0 1rem;
  box-shadow:0 10px 30px rgba(0,0,0,.25)}

/* Engagements */
.assurances{background:var(--feuille);color:var(--humus)}
.assurances-liste{list-style:none;margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem 2rem;
  padding-top:1.4rem;padding-bottom:1.4rem}
.assurances li{display:flex;gap:.8rem;align-items:flex-start}
.assurances svg{width:30px;height:30px;flex-shrink:0;fill:none;stroke:var(--humus);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.assurances b{display:block;font-stretch:80%;font-size:1.15rem;line-height:1.2}
.assurances span{font-size:.9rem;line-height:1.3;display:block;color:#2B2118CC}
@media (max-width:900px){.assurances-liste{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.assurances-liste{grid-template-columns:1fr}}

/* Sections */
.section-sable{background:var(--sable)}
.section-verte{background:var(--olivier);color:#E3EBD6}
.section-verte h2,.section-verte h3{color:var(--blanc)}
.section-verte .intro p,.section-verte .etapes p{color:#CFDABF}
.section-verte .etapes strong{color:var(--blanc)}
.section-verte .etapes li::before{background:var(--feuille);color:var(--humus)}
.section-verte .etapes li::after{border-top-color:#8FA76E}
.section-verte a{color:var(--blanc)}
.intro h2,.terrain-grille h2,.documents h2,.bienvenue h2{color:var(--humus)}
.section-verte .intro h2{color:var(--blanc)}
.lien-suite{margin:2.2rem 0 0;font-weight:600}

/* Quelle est votre situation ? */
.situations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.situation{display:flex;flex-direction:column;background:var(--blanc);border:1px solid var(--filet);border-top:5px solid var(--feuille);
  border-radius:var(--rayon);padding:1.6rem 1.5rem 1.4rem;text-decoration:none;color:var(--humus)}
.situation:nth-child(2){border-top-color:var(--ecorce)}
.situation:nth-child(3){border-top-color:var(--olivier)}
.situation h3{font-size:1.45rem;font-stretch:75%}
.situation p{color:var(--humus-doux);font-size:1rem;flex-grow:1}
.situation-lien{font-weight:650;color:var(--garrigue);text-decoration:underline;text-underline-offset:.18em}
.situation:hover{border-color:var(--feuille-fonce);color:var(--humus)}
.situation:hover .situation-lien{color:var(--humus)}
@media (max-width:860px){.situations{grid-template-columns:1fr}}

/* Bienvenue */
.bienvenue{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.bienvenue-photos{position:relative;padding-bottom:3rem}
.bienvenue-photos>img:first-child{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--rayon)}
.bienvenue-logo{position:absolute;right:-1.5rem;bottom:0;width:52%;border-radius:var(--rayon);border:5px solid var(--sable)}
.devise{font-stretch:75%;font-weight:700;font-size:clamp(1.3rem,2vw,1.6rem);color:var(--ecorce);line-height:1.2}
.bienvenue-texte p{max-width:36em}
.bienvenue .synaba{background:var(--blanc)}
@media (max-width:760px){.bienvenue{grid-template-columns:1fr}.bienvenue-photos{max-width:420px}.bienvenue-logo{right:-.5rem}}

/* Sur le terrain */
.terrain-grille{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.intro-p{font-size:1.15rem;color:var(--humus-doux);margin-bottom:2rem}
.terrain-grille .prestations{grid-template-columns:1fr 1fr;border-top:3px solid var(--ecorce)}
.terrain-grille .prestations div,.terrain-grille .prestations div+div{padding:1.3rem 1.4rem 1.3rem 0;border-left:0;border-bottom:1px solid var(--filet)}
.terrain-grille .prestations div:nth-child(even){padding-left:1.4rem;border-left:1px solid var(--filet)}
.terrain-grille .prestations dt{color:var(--ecorce)}
.terrain-grille .carotte{justify-self:end}
.photos-terrain{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:3.5rem}
.photos-terrain figure{margin:0}
.photos-terrain img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--rayon)}
.photos-terrain figcaption{font-size:.9rem;color:var(--humus-doux);margin-top:.5rem}
@media (max-width:860px){.terrain-grille{grid-template-columns:1fr}.terrain-grille .carotte{justify-self:start}}
@media (max-width:560px){.terrain-grille .prestations{grid-template-columns:1fr}
  .terrain-grille .prestations div:nth-child(even){padding-left:0;border-left:0}
  .photos-terrain{grid-template-columns:1fr 1fr}.photos-terrain figure:first-child{grid-column:1/-1}}
.mesure-k{background:var(--sauge)}

/* Installations */
.filieres h3{border-top-color:var(--feuille);font-size:1.3rem}
.filieres div:nth-child(even) h3{border-top-color:var(--ecorce)}

/* Documents */
.documents img{aspect-ratio:4/3}
.documents .liste-coche li{border-bottom-color:#D6CBB8}

/* Contact sur l'accueil */
.contact-accueil{background:var(--humus);color:#D9D0C2;padding:clamp(3.5rem,8vw,6rem) 0}
.contact-accueil-grille{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.contact-accueil h2{color:var(--blanc);max-width:16ch}
.contact-accueil .tel-grand{color:var(--blanc);font-size:clamp(2rem,4.5vw,3rem);display:block;margin:1.5rem 0 .4rem}
.contact-accueil-texte a:not(.tel-grand){color:var(--feuille)}
.reseaux{margin-top:2rem;padding-top:1.2rem;border-top:1px solid #4A3F32;font-size:.98rem}
.contact-accueil .formulaire{border:0;color:var(--humus)}
@media (max-width:860px){.contact-accueil-grille{grid-template-columns:1fr}}

/* Pages de contenu */
.tete-page{background:var(--sable);border-bottom:0;position:relative}
.tete-page::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;
  background:linear-gradient(90deg,var(--humus) 0 25%,var(--ecorce) 25% 50%,var(--ocre) 50% 75%,var(--feuille) 75%)}
.tete-page h1{color:var(--humus)}
.texte h2{color:var(--humus)}
.texte h3{color:var(--ecorce)}
.texte li::marker{color:var(--feuille-fonce)}
.encadre{border-top:5px solid var(--feuille);background:var(--blanc)}
.etapes-detail>li::before{background:var(--olivier)}
.faq details:first-of-type{border-top-color:var(--ecorce)}

/* Pied */
.pied{background:#211912}
.pied-devise{font-stretch:75%;font-weight:700;font-size:1.25rem;color:var(--feuille)}
.nav a.bouton,.menu nav a.bouton{border-radius:999px}
.photos-terrain figure:nth-child(2) img{object-position:50% 20%}

/* ===== Refonte 4 (nov. 2026) : pédagogique pour les particuliers ===== */
.hero-zone{text-transform:none;letter-spacing:0;font-size:1rem}
.section-sauge{background:var(--sauge)}

/* Quiz « Ai-je besoin d'une étude ? » (sans script : :has) */
.quiz-grille{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.quiz-intro p{font-size:1.15rem;color:var(--humus-doux)}
.quiz fieldset{border:0;margin:0;padding:0}
.quiz legend{font-weight:650;font-size:1rem;color:var(--ecorce);margin-bottom:.8rem;padding:0}
.quiz-choix{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.quiz-choix input{position:absolute;opacity:0;width:1px;height:1px}
.quiz-choix label{display:flex;flex-direction:column;gap:.15rem;margin:0;cursor:pointer;background:var(--blanc);
  border:2px solid var(--filet);border-radius:14px;padding:1rem 1.1rem 1rem 3.1rem;position:relative;font-weight:400;
  transition:border-color .15s,background-color .15s}
.quiz-choix label::before{content:"";position:absolute;left:1.05rem;top:1.15rem;width:1.3rem;height:1.3rem;border-radius:50%;
  border:2px solid var(--ecorce);background:var(--blanc)}
.quiz-choix label b{font-stretch:80%;font-size:1.2rem;line-height:1.2;color:var(--humus)}
.quiz-choix label span{font-size:.92rem;color:var(--humus-doux)}
.quiz-choix label:hover{border-color:var(--feuille)}
.quiz-choix input:focus-visible+label{outline:3px solid var(--feuille-fonce);outline-offset:3px}
.quiz-choix input:checked+label{border-color:var(--feuille-fonce);background:var(--sauge)}
.quiz-choix input:checked+label::before{border-color:var(--feuille-fonce);background:var(--feuille);box-shadow:inset 0 0 0 3px var(--blanc)}
.quiz-reponses{margin-top:1.2rem}
.reponse{display:none;margin:0}
.reponse-vide{display:block;color:var(--humus-doux);font-size:.98rem;padding:1rem 0}
.quiz:has(input:checked) .reponse-vide{display:none}
.quiz:has(#q-construire:checked) .r-construire,.quiz:has(#q-renover:checked) .r-renover,
.quiz:has(#q-vendre:checked) .r-vendre,.quiz:has(#q-spanc:checked) .r-spanc{display:block}
div.reponse{background:var(--humus);color:#E4DCCF;border-radius:14px;padding:1.4rem 1.5rem 1.5rem;position:relative}
div.reponse::before{content:"";position:absolute;top:-9px;left:2.2rem;width:18px;height:18px;background:var(--humus);transform:rotate(45deg)}
.reponse-titre{font-stretch:75%;font-weight:700;font-size:1.55rem;line-height:1.15;color:var(--feuille);margin-bottom:.5rem}
div.reponse p{max-width:40em}
@media (prefers-reduced-motion:no-preference){div.reponse{animation:reponse .3s ease-out}}
@keyframes reponse{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (max-width:860px){.quiz-grille{grid-template-columns:1fr}}
@media (max-width:520px){.quiz-choix{grid-template-columns:1fr}}

/* Schéma « comment ça marche » : élément signature */
.schema{margin:0;background:var(--blanc);border-radius:18px;padding:clamp(1rem,3vw,2rem);overflow:hidden}
.schema svg{display:block;width:100%;height:auto;border-radius:10px;background:linear-gradient(#F3F6EC,#F3F6EC 38%,transparent 38%)}
.schema .tuyau{fill:none;stroke:#3A2E22;stroke-width:9;stroke-linecap:round;stroke-linejoin:round}
.schema .eau{fill:none;stroke:#BFD8E0;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:6 12}
.pastilles-schema circle{fill:var(--feuille);stroke:var(--blanc);stroke-width:3}
.pastilles-schema circle.pastille-sol{fill:var(--blanc);stroke:var(--humus)}
.pastilles-schema text{font:700 20px "Archivo",sans-serif;fill:var(--humus);text-anchor:middle}
.schema-legende{list-style:none;counter-reset:sch;margin:1.6rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem 1.6rem}
.schema-legende li{counter-increment:sch;position:relative;padding-left:2.6rem;font-size:.98rem;color:var(--humus-doux);line-height:1.45}
.schema-legende li::before{content:counter(sch);position:absolute;left:0;top:0;width:1.9rem;height:1.9rem;border-radius:50%;
  display:grid;place-items:center;background:var(--feuille);color:var(--humus);font-weight:700;font-size:.95rem}
.schema-legende li:last-child::before{background:var(--blanc);border:2px solid var(--humus)}
.schema-legende b{display:block;color:var(--humus);font-stretch:80%;font-size:1.15rem;margin-bottom:.15rem}
.schema-note{margin:1.5rem 0 0;max-width:46em;color:var(--humus-doux)}
.schema-note a{font-weight:600}
@media (prefers-reduced-motion:no-preference){
  .schema .eau{animation:ecoule 1.2s linear infinite}
  .schema .gouttes circle{animation:goutte 2.4s ease-in infinite}
  .schema .gouttes circle:nth-child(2){animation-delay:.5s}.schema .gouttes circle:nth-child(3){animation-delay:1s}
  .schema .gouttes circle:nth-child(4){animation-delay:1.5s}.schema .gouttes circle:nth-child(5){animation-delay:2s}
}
@keyframes ecoule{to{stroke-dashoffset:-36}}
@keyframes goutte{0%{transform:translateY(-12px);opacity:0}25%{opacity:1}100%{transform:translateY(60px);opacity:0}}
@media (max-width:860px){.schema-legende{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.schema-legende{grid-template-columns:1fr}}

/* Les chiffres à retenir */
.reperes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.reperes li{display:flex;gap:1.1rem;align-items:center;background:var(--sable);border-radius:14px;padding:1.3rem 1.4rem}
.reperes b{font-stretch:62%;font-weight:800;font-size:clamp(2.6rem,4.5vw,3.4rem);line-height:.9;color:var(--olivier);white-space:nowrap}
.reperes span{font-size:1rem;line-height:1.4}
.regles{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}
.regles p{margin:0;padding:1.1rem 1.3rem 1.1rem 3.4rem;border:2px solid var(--ecorce);border-radius:14px;position:relative;font-size:1rem;color:var(--humus-doux)}
.regles p::before{content:"!";position:absolute;left:1.1rem;top:1.05rem;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--ecorce);
  color:var(--blanc);display:grid;place-items:center;font-weight:800;font-size:1rem}
.regles strong{display:block;color:var(--humus);font-size:1.08rem}
@media (max-width:900px){.reperes{grid-template-columns:1fr}.regles{grid-template-columns:1fr}}

/* Lexique */
.lexique{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 2.2rem;margin:0}
.lexique div{padding:1.1rem 0;border-top:1px solid #D6CBB8}
.lexique dt{font-weight:700;font-stretch:80%;font-size:1.2rem;color:var(--ecorce);margin-bottom:.25rem}
.lexique dd{margin:0;font-size:1rem;line-height:1.5}
@media (max-width:900px){.lexique{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.lexique{grid-template-columns:1fr}}

/* ===== Schémas animés (nov. 2026) ===== */
/* Avec le script, les animations ne tournent que quand le schéma est visible */
.js-anime .anime:not(.visible),.js-anime .anime:not(.visible) *{animation-play-state:paused!important}
.schema-mini{margin:1.2rem 0 1.4rem;background:var(--blanc);border-radius:14px;padding:.8rem;border:1px solid var(--filet)}
.schema-mini svg,.schema-permeabilite svg{display:block;width:100%;height:auto;border-radius:8px}
.schema-mini svg{background:linear-gradient(#F3F6EC,#F3F6EC 32%,transparent 32%)}
.schema-mini .tuyau{fill:none;stroke:#3A2E22;stroke-width:9;stroke-linecap:round;stroke-linejoin:round}
.schema-mini .eau{fill:none;stroke:#BFD8E0;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:6 12}
.texte .schema-permeabilite,.texte .schema{margin:1.5rem 0 2rem}
.schema-permeabilite{background:var(--blanc)}
.pm-legende{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem 1.6rem}
.pm-legende li{font-size:.98rem;color:var(--humus-doux);line-height:1.45;padding-top:.7rem;border-top:4px solid}
.pm-legende b{display:block;color:var(--humus);font-stretch:80%;font-size:1.2rem}
.pm-l-sable{border-color:#E3D0A0}.pm-l-limon{border-color:#7DB32E}.pm-l-argile{border-color:#B4664A}
@media (max-width:640px){.pm-legende{grid-template-columns:1fr}}
.icone-etape{display:block;width:56px;height:56px;color:var(--blanc);margin:0 0 .8rem}
.etapes li{padding-top:3.6rem}
.etapes .icone-etape{color:#E3EBD6}
.etapes-detail .icone-etape{color:var(--olivier);width:52px;height:52px;margin-bottom:.4rem}
@media (prefers-reduced-motion:no-preference){
  .schema-mini .eau{animation:ecoule 1.2s linear infinite}
  .schema-mini .gouttes circle{animation:goutte 2.4s ease-in infinite}
  .schema-mini .gouttes circle:nth-child(2){animation-delay:.6s}.schema-mini .gouttes circle:nth-child(3){animation-delay:1.2s}
  .schema-mini .gouttes circle:nth-child(4){animation-delay:1.8s}.schema-mini .gouttes circle:nth-child(5){animation-delay:.3s}
  .bulles circle{animation:bulle 2.2s ease-in infinite}
  .bulles circle:nth-child(2){animation-delay:.3s}.bulles circle:nth-child(3){animation-delay:.9s}.bulles circle:nth-child(4){animation-delay:1.4s}
  .bulles circle:nth-child(5){animation-delay:.6s}.bulles circle:nth-child(6){animation-delay:1.7s}.bulles circle:nth-child(7){animation-delay:1.1s}.bulles circle:nth-child(8){animation-delay:1.9s}
  .eclair{animation:eclair 1.6s steps(1) infinite}
  .roseau{animation:roseau 3.5s ease-in-out infinite alternate}
  .roseau:nth-child(even){animation-duration:4.2s;animation-delay:-1s}
  /* essai de perméabilité : même cycle de 8 s, vitesses différentes */
  .pm-eau{transform-box:fill-box;transform-origin:50% 100%;animation:8s ease-in infinite}
  .pm-sable .pm-eau{animation-name:vide-vite}.pm-limon .pm-eau{animation-name:vide-moyen}.pm-argile .pm-eau{animation-name:vide-lent}
  .pm-gouttes circle{animation:infiltre 1s ease-in infinite;opacity:0}
  .pm-sable .pm-gouttes circle{animation:infiltre-vite 8s linear infinite}
  .pm-limon .pm-gouttes circle{animation:infiltre-moyen 8s linear infinite}
  .pm-argile .pm-gouttes circle{animation:infiltre-lent 8s linear infinite}
  .pm-gouttes circle:nth-child(2){animation-delay:-.35s}.pm-gouttes circle:nth-child(3){animation-delay:-.7s}
  .ic-tariere{animation:tariere 2.4s ease-in-out infinite}
  .ic-ligne{stroke-dasharray:24;animation:ecrit 3s ease-out infinite}
  .ic-ligne:nth-of-type(3){animation-delay:.3s}.ic-ligne:nth-of-type(4){animation-delay:.6s}
  .ic-tampon{transform-box:fill-box;transform-origin:center;animation:tampon 3s ease-out infinite}
  .ic-pelle{transform-box:view-box;transform-origin:44px 6px;animation:pelle 2.6s ease-in-out infinite}
}
@keyframes bulle{0%{transform:translateY(0);opacity:0}15%{opacity:1}100%{transform:translateY(-72px);opacity:0}}
@keyframes eclair{0%{opacity:1}50%{opacity:.35}}
@keyframes roseau{from{transform:rotate(-4deg)}to{transform:rotate(4deg)}}
@keyframes vide-vite{0%,6%{transform:scaleY(1)}22%,90%{transform:scaleY(0)}100%{transform:scaleY(1)}}
@keyframes vide-moyen{0%,6%{transform:scaleY(1)}60%,90%{transform:scaleY(0)}100%{transform:scaleY(1)}}
@keyframes vide-lent{0%,6%{transform:scaleY(1)}90%{transform:scaleY(.78)}100%{transform:scaleY(1)}}
@keyframes infiltre-vite{0%,5%{transform:translateY(0);opacity:0}7%{opacity:1}14%{transform:translateY(110px);opacity:0}15%{transform:translateY(0);opacity:0}17%{opacity:1}24%{transform:translateY(110px);opacity:0}100%{opacity:0}}
@keyframes infiltre-moyen{0%,6%{transform:translateY(0);opacity:0}10%{opacity:1}30%{transform:translateY(90px);opacity:0}31%{transform:translateY(0);opacity:0}35%{opacity:1}56%{transform:translateY(90px);opacity:0}100%{opacity:0}}
@keyframes infiltre-lent{0%,10%{transform:translateY(0);opacity:0}20%{opacity:1}85%{transform:translateY(30px);opacity:0}100%{opacity:0}}
@keyframes tariere{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
@keyframes ecrit{0%{stroke-dashoffset:24}40%,100%{stroke-dashoffset:0}}
@keyframes tampon{0%,10%{transform:scale(1.6);opacity:0}25%{transform:scale(.92);opacity:1}32%,100%{transform:scale(1);opacity:1}}
@keyframes pelle{0%,100%{transform:rotate(0)}40%{transform:rotate(-22deg)}60%{transform:rotate(-22deg) translateY(4px)}}
.schema-permeabilite svg{background:none}
.pm-legende .pm-l-sable{border-top-color:#E3D0A0}.pm-legende .pm-l-limon{border-top-color:#7DB32E}.pm-legende .pm-l-argile{border-top-color:#B4664A}


/* Haut de l'accueil, version claire : logo, grains de terre et paysage de sol (nov. 2026) */
.hero{background:#F4ECC8 url("/assets/img/fond-terre.svg?v=2") center bottom/cover no-repeat;color:var(--humus)}
.hero::before{display:none}
.hero-centre{padding-top:clamp(2rem,5vw,3.5rem);padding-bottom:clamp(8rem,16vw,12rem)}
.hero-logo{width:clamp(170px,22vw,250px);height:auto;margin:0 auto 1rem;mix-blend-mode:multiply}
.hero h1{color:var(--humus);text-shadow:none}
.hero h1 span{color:var(--feuille-fonce)}
.hero-zone{color:var(--olivier)}
.hero-services{color:var(--ecorce)}
.hero-services i{color:var(--humus)}
.hero .chapo{color:var(--humus-doux)}
.hero .bouton-clair{border-color:var(--humus);color:var(--humus);background:rgba(255,255,255,.35)}
.hero .bouton-clair:hover{background:var(--humus);border-color:var(--humus);color:var(--blanc)}
.hero-departements li{background:rgba(255,255,255,.6);border-color:#D6C9A6;color:var(--humus)}
.pm-valeur{display:inline-block;margin:.25rem 0 .4rem;padding:.15rem .6rem;border-radius:999px;background:var(--sauge);color:var(--olivier);font-weight:650;font-size:.9rem}
.pm-legende b{margin-bottom:.1rem}
.pm-avertissement{margin:1.2rem 0 0;font-size:.92rem;color:var(--humus-doux);font-style:italic}
.hero{background:#F7F0D6 url("/assets/img/fond-terre.svg?v=2") center bottom/max(100%,1600px) auto no-repeat}
.hero-logo{mix-blend-mode:normal}
@media (max-width:560px){.hero{background-size:1100px auto}.hero-centre{padding-bottom:7rem}}
.pm-valeur{display:table}

/* Texture : petits grains de terre ici et là, sur tout le site */
:root{--grains:url("/assets/img/grains-a.svg?v=1"),url("/assets/img/grains-b.svg?v=1")}
body,.section-sable,.section-sauge,.tete-page,.avis-section{background-image:var(--grains);background-size:530px 530px,770px 770px;background-position:0 0,240px 160px}
.section-verte{background-image:var(--grains);background-size:530px 530px,770px 770px;background-blend-mode:multiply}
.contact-accueil,.pied{background-image:none}

/* ===== Haut de l'accueil, version 3 : accroche + bloc de sol en coupe ===== */
.hero.hero-2{background-color:#F7F0D6;background-image:var(--grains);background-size:530px 530px,770px 770px;color:var(--humus);overflow:hidden}
.hero-grille{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(1.5rem,4vw,4rem);align-items:center;
  padding-top:clamp(2rem,5vw,4rem);padding-bottom:clamp(2.5rem,5vw,4rem)}
.hero-marque{display:flex;align-items:center;gap:.8rem;margin:0 0 1.2rem;font-weight:600;color:var(--olivier);font-size:1rem}
.hero-marque img{width:76px;height:auto}
.hero-2 h1{font-size:clamp(2.3rem,4.6vw,3.9rem);font-stretch:66%;color:var(--humus);max-width:15ch;margin:0 0 1rem;text-shadow:none}
.hero-2 .chapo{font-size:clamp(1.08rem,1.4vw,1.25rem);color:var(--humus-doux);max-width:34em;margin:0}
.hero-question{margin:1.8rem 0 .7rem;font-weight:700;font-stretch:80%;font-size:1.25rem;color:var(--ecorce)}
.hero-situations{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.55rem}
.hero-situations a{display:inline-flex;align-items:center;min-height:44px;padding:.5rem 1.05rem;border-radius:999px;background:var(--blanc);
  border:2px solid #D8CBA6;color:var(--humus);text-decoration:none;font-weight:600;font-size:.98rem}
.hero-situations a:hover{border-color:var(--feuille-fonce);background:var(--sauge);color:var(--humus)}
.hero-2 .actions{margin:1.6rem 0 0;justify-content:flex-start;gap:1rem 1.4rem}
.hero-tel{color:var(--humus-doux);text-decoration:none;font-size:1.02rem}
.hero-tel b{color:var(--humus);font-variant-numeric:tabular-nums}
.hero-tel:hover b{text-decoration:underline}
.hero-zones{margin:1.4rem 0 0;font-size:.92rem;color:var(--humus-doux);max-width:36em}
.hero-illu{margin:0;position:relative}
.bloc-sol{display:block;width:100%;height:auto;overflow:visible}
.bs-et{position:absolute;left:12%;transform:translateY(-50%);background:rgba(255,255,255,.92);color:var(--humus);font-size:.82rem;font-weight:650;
  padding:.18rem .6rem;border-radius:999px;white-space:nowrap;box-shadow:0 2px 6px rgba(43,33,24,.15)}
.bs-badge{position:absolute;left:56%;top:84%;background:var(--olivier);color:var(--blanc);font-size:.85rem;font-weight:650;padding:.3rem .75rem;border-radius:999px;white-space:nowrap}
.bs-badge::before{content:"";display:inline-block;width:.6rem;height:.8rem;margin-right:.4rem;background:#BFD8E0;border-radius:50% 50% 50% 50%/60% 60% 40% 40%;vertical-align:-.05rem}
.hero-illu figcaption{text-align:center;font-size:.88rem;color:var(--humus-doux);margin-top:.4rem}
@media (prefers-reduced-motion:no-preference){
  .bs-tariere{animation:bs-descend 1.5s cubic-bezier(.3,.7,.2,1) .3s both}
  .bs-deblais circle{animation:bs-deblai .5s ease-out both}
  .bs-deblais circle:nth-child(1){animation-delay:1.2s}.bs-deblais circle:nth-child(2){animation-delay:1.3s}.bs-deblais circle:nth-child(3){animation-delay:1.4s}
  .bs-deblais circle:nth-child(4){animation-delay:1.5s}.bs-deblais circle:nth-child(5){animation-delay:1.6s}
  .bs-et{animation:bs-et .45s ease-out both}
  .bs-et-1{animation-delay:1.1s}.bs-et-2{animation-delay:1.35s}.bs-et-3{animation-delay:1.6s}.bs-et-4{animation-delay:1.85s}
  .bs-badge{animation:bs-et .45s ease-out 2.2s both}
}
@keyframes bs-descend{from{transform:translateY(-150px)}to{transform:none}}
@keyframes bs-deblai{from{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}
@keyframes bs-et{from{opacity:0;transform:translate(-8px,-50%)}to{opacity:1;transform:translate(0,-50%)}}
.bs-badge{transform:none}
@keyframes bs-et-b{from{opacity:0}to{opacity:1}}
.bs-badge{animation-name:bs-et-b}
@media (max-width:900px){.hero-grille{grid-template-columns:1fr}.hero-illu{max-width:520px;margin:0 auto;width:100%}}
@media (max-width:480px){.bs-et{font-size:.72rem;padding:.12rem .5rem}.bs-badge{font-size:.74rem;left:50%}}
.bs-cadre{position:relative}
.bs-et{left:7%}
.bs-badge{left:auto;right:2%;top:79%}
.hero-2 h1{max-width:19ch}
.hero-marque img{width:92px}
@media (max-width:480px){.hero-marque img{width:70px}.bs-badge{right:0;top:84%}}

/* =====================================================================
   Palette 2 (nov. 2026, choix de Laura) : vert clair, vert flash,
   marron foncé, marron clair, avec le logo MBE.
   ===================================================================== */
:root{
  --calcaire:#FAF6EE;   /* fond général, presque blanc chaud */
  --humus:#3A2A1D;      /* marron foncé */
  --humus-doux:#6A5646;
  --ecorce:#8A6240;     /* marron moyen, pour les petits titres */
  --sable:#EBDCC3;      /* marron clair */
  --feuille:#8DC63F;    /* vert flash */
  --feuille-fonce:#4E7D17;
  --olivier:#3A2A1D;
  --sauge:#E2F1CB;      /* vert clair */
  --garrigue:#4E7D17;
  --filet:#E0D3BD;
}
body{color:var(--humus)}
.bouton:hover{background:#9DD24E;border-color:#9DD24E}

/* Bandeau, en-tête */
.bandeau-haut{background:var(--humus);color:#EBDCC3}
.entete{border-bottom:4px solid var(--feuille)}

/* Haut de page : vert clair */
.hero.hero-2{background-color:var(--sauge)}
.hero-marque{color:var(--humus)}
.hero-question{color:var(--ecorce)}
.hero-situations a{border-color:#B9DB8C}
.hero-situations a:hover{background:var(--feuille);border-color:var(--feuille);color:var(--humus)}
.bs-badge{background:var(--humus)}

/* Bande des engagements : marron foncé, icônes vert flash */
.assurances{background:var(--humus);color:#F5EFE4}
.assurances svg{stroke:var(--feuille)}
.assurances b{color:var(--blanc)}
.assurances span{color:#D9C9B0}

/* Étapes : grand aplat vert flash */
.section-verte{background-color:var(--feuille);color:var(--humus);background-blend-mode:normal}
.section-verte h2,.section-verte h3,.section-verte .intro h2{color:var(--humus)}
.section-verte .intro p,.section-verte .etapes p{color:#33270F}
.section-verte .etapes strong{color:var(--humus)}
.section-verte .etapes li::before{background:var(--humus);color:var(--feuille)}
.section-verte .etapes li::after{border-top-color:var(--humus);opacity:.45}
.section-verte a{color:var(--humus)}
.etapes .icone-etape{color:var(--humus)}
.ic-tampon circle{fill:var(--blanc)}

/* Chiffres à retenir, réponses du quiz */
.reperes li{background:var(--sauge)}
.reperes b{color:var(--feuille-fonce)}
.regles p{border-color:var(--humus)}
.regles p::before{background:var(--feuille);color:var(--humus)}
div.reponse{background:var(--humus)}
.reponse-titre{color:var(--feuille)}
.quiz-choix input:checked+label{background:var(--sauge);border-color:var(--feuille)}
.quiz-choix input:checked+label::before{border-color:var(--humus);background:var(--feuille)}

/* Zones, mesures, schémas */
.zones li{border-top-color:var(--ecorce)}
.zones li.zone-base{background:var(--sauge);border-top-color:var(--feuille)}
.zones b{color:var(--humus)}
.mesure-k{background:var(--sauge)}
.pm-valeur{background:var(--feuille);color:var(--humus)}
.schema-legende li::before{background:var(--feuille)}
.pastilles-schema circle{fill:var(--feuille)}

/* Pages intérieures */
.tete-page{background-color:var(--sable)}
.tete-page::after{background:linear-gradient(90deg,var(--humus) 0 25%,var(--ecorce) 25% 50%,var(--feuille) 50% 75%,var(--sauge) 75%)}
.encadre{border-top-color:var(--feuille)}
.texte .note{border-left-color:var(--feuille);background:var(--sauge)}
.etapes-detail>li::before{background:var(--humus);color:var(--feuille)}
.etapes-detail .icone-etape{color:var(--humus)}
.faq details:first-of-type{border-top-color:var(--humus)}

/* Contact et pied : marron foncé, accents vert flash */
.contact-accueil{background:var(--humus)}
.contact-accueil-texte a:not(.tel-grand){color:var(--feuille)}
.pied{background:#2C1F14}
.pied-devise{color:var(--feuille)}
.pied a:hover{color:var(--feuille)}
/* Section marron foncé (chiffres à retenir) */
.section-brune{background-color:var(--humus);color:#EFE6D6}
.section-brune .intro h2{color:var(--blanc)}
.section-brune .intro p{color:#D9C9B0}
.section-brune .reperes li{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12)}
.section-brune .reperes b{color:var(--feuille)}
.section-brune .reperes span{color:#EFE6D6}
.section-brune .regles p{border-color:var(--feuille);color:#D9C9B0}
.section-brune .regles strong{color:var(--blanc)}

/* =====================================================================
   Refonte 5 (nov. 2026) : nouvelle mise en page, « guide de terrain »
   ===================================================================== */
.visuellement-cache{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Ouverture : deux panneaux pleine largeur */
.ouverture{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);min-height:600px}
.ouverture-texte{background-color:var(--humus);background-image:var(--grains);background-size:530px 530px,770px 770px;color:#EFE6D6;
  display:flex;align-items:center;justify-content:flex-end;padding:clamp(2.5rem,6vw,5rem) clamp(1.5rem,4vw,4rem) clamp(2.5rem,6vw,5rem) var(--gouttiere)}
.ouverture-contenu{max-width:600px;width:100%}
.ouv-marque{display:inline-flex;align-items:center;gap:.75rem;margin:0 0 1.6rem;padding:.4rem 1rem .4rem .45rem;border-radius:999px;
  background:var(--sable);color:var(--humus);font-weight:650;font-size:.95rem}
.ouv-marque img{width:58px;height:auto}
.ouverture h1{color:var(--blanc);font-size:clamp(2.3rem,4.4vw,3.8rem);font-stretch:64%;line-height:1.02;max-width:15ch;margin:0 0 1.2rem}
.ouv-chapo{font-size:clamp(1.08rem,1.4vw,1.25rem);color:#DCCDB6;max-width:32em;margin:0}
.ouv-actions{display:flex;flex-wrap:wrap;gap:.8rem 1rem;margin:2rem 0 0}
.ouverture .bouton-clair{border-color:rgba(255,255,255,.45);color:var(--blanc);background:transparent}
.ouverture .bouton-clair:hover{background:var(--blanc);color:var(--humus)}
.ouv-garanties{list-style:none;margin:2.2rem 0 0;padding:1.2rem 0 0;border-top:1px solid rgba(255,255,255,.16);display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;font-size:.95rem;color:#EFE6D6}
.ouv-garanties li{display:flex;align-items:center;gap:.45rem}
.ouv-garanties li::before{content:"";width:.95rem;height:.5rem;border-left:2.5px solid var(--feuille);border-bottom:2.5px solid var(--feuille);transform:rotate(-45deg) translateY(-2px)}
.ouverture-illu{background-color:var(--sauge);background-image:var(--grains);background-size:530px 530px,770px 770px;position:relative;
  display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,4vw,3.5rem) clamp(1.5rem,4vw,3.5rem) 7.5rem}
.ouverture-illu .hero-illu{max-width:560px;width:100%;margin:0 auto}
.guide{position:absolute;left:clamp(1rem,3vw,2.5rem);right:clamp(1rem,3vw,2.5rem);bottom:1.4rem;display:flex;align-items:flex-end;gap:.9rem}
.guide-img{width:96px;height:96px;object-fit:cover;border-radius:50%;background:var(--blanc);border:4px solid var(--blanc);box-shadow:0 6px 18px rgba(58,42,29,.18);flex-shrink:0}
.guide-logo{object-fit:contain;padding:8px}
.bulle{position:relative;margin:0 0 1.4rem;background:var(--blanc);color:var(--humus);border-radius:16px;padding:.85rem 1.1rem;font-size:.98rem;line-height:1.4;
  box-shadow:0 6px 18px rgba(58,42,29,.12);max-width:28em;font-weight:500}
.bulle::before{content:"";position:absolute;left:-8px;bottom:14px;width:16px;height:16px;background:var(--blanc);transform:rotate(45deg)}
@media (prefers-reduced-motion:no-preference){.bulle{animation:bs-et-b .5s ease-out 2.6s both}}
@media (max-width:960px){
  .ouverture{grid-template-columns:1fr;min-height:0}
  .ouverture-texte{justify-content:flex-start;padding-right:var(--gouttiere)}
}

/* Orientation : tuiles sur vert flash */
.orientation{background:var(--feuille);padding:clamp(2.8rem,6vw,4.5rem) 0}
.orientation h2{color:var(--humus);margin-bottom:1.6rem}
.tuiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem}
.tuiles input{position:absolute;opacity:0;width:1px;height:1px}
.tuiles label{margin:0;cursor:pointer;background:var(--blanc);border-radius:16px;padding:1.2rem 1.2rem 1.1rem;display:flex;flex-direction:column;gap:.2rem;
  border:3px solid transparent;font-weight:400;transition:transform .15s,background-color .15s}
.tuiles svg{width:42px;height:42px;fill:none;stroke:var(--humus);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;margin-bottom:.5rem}
.tuiles b{font-stretch:78%;font-size:1.3rem;line-height:1.15;color:var(--humus)}
.tuiles span{font-size:.92rem;color:var(--humus-doux)}
.tuiles label:hover{transform:translateY(-2px)}
.tuiles input:focus-visible+label{outline:3px solid var(--humus);outline-offset:3px}
.tuiles input:checked+label{background:var(--humus);border-color:var(--humus)}
.tuiles input:checked+label b{color:var(--blanc)}
.tuiles input:checked+label span{color:#D9C9B0}
.tuiles input:checked+label svg{stroke:var(--feuille)}
.quiz-tuiles .quiz-reponses{margin-top:1.1rem}
.quiz-tuiles .reponse-vide{color:var(--humus);padding:.4rem 0 0;font-weight:500}
.quiz-tuiles div.reponse::before{display:none}
@media (max-width:860px){.tuiles{grid-template-columns:1fr 1fr}}

/* Le guide « Comprendre » : sommaire + chapitres, fond papier millimétré */
.comprendre{padding:clamp(3.5rem,8vw,6rem) 0;background-color:#FBF8F1;
  background-image:linear-gradient(rgba(138,98,64,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(138,98,64,.07) 1px,transparent 1px);
  background-size:24px 24px}
.comprendre-grille{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(2rem,5vw,4rem);align-items:start}
.sommaire{position:sticky;top:110px;background:var(--humus);color:#EFE6D6;border-radius:16px;padding:1.4rem 1.3rem}
.sommaire-titre{font-stretch:78%;font-weight:700;font-size:1.25rem;line-height:1.15;color:var(--blanc);margin-bottom:1rem}
.sommaire ol{list-style:none;counter-reset:som;margin:0 0 1.2rem;padding:0}
.sommaire li{counter-increment:som}
.sommaire li a{display:flex;gap:.7rem;align-items:center;padding:.55rem 0;color:#EFE6D6;text-decoration:none;border-top:1px solid rgba(255,255,255,.12);font-size:.98rem}
.sommaire li a::before{content:counter(som);flex-shrink:0;width:1.7rem;height:1.7rem;border-radius:50%;display:grid;place-items:center;background:var(--feuille);color:var(--humus);font-weight:700;font-size:.88rem}
.sommaire li a:hover{color:var(--feuille)}
.sommaire-devis{display:block;color:var(--feuille);font-weight:650;font-size:.95rem}
.chapitre{background:var(--blanc);border-radius:20px;padding:clamp(1.4rem,3vw,2.4rem);border:1px solid var(--filet);margin-bottom:1.6rem;position:relative;scroll-margin-top:110px}
.chap-num{position:absolute;top:-18px;left:clamp(1.4rem,3vw,2.4rem);margin:0;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;
  background:var(--feuille);color:var(--humus);font-weight:800;font-size:1.25rem;border:4px solid #FBF8F1}
.chapitre h2{font-size:clamp(1.6rem,2.8vw,2.3rem);margin-top:.6rem}
.chap-chapo{font-size:1.08rem;color:var(--humus-doux);max-width:46em}
.chapitre .schema{padding:0;margin-top:1.4rem;border-radius:12px}
.chapitre .schema-permeabilite{margin-top:1.4rem;padding:0}
.installations{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 1.6rem;margin-top:1.4rem}
.installations .schema-mini{margin:0 0 .7rem}
.installations h3{font-size:1.25rem;margin-bottom:.25rem}
.installations p{font-size:.98rem;color:var(--humus-doux);margin:0}
.frise{list-style:none;margin:1.4rem 0 0;padding:0;position:relative}
.frise::before{content:"";position:absolute;left:31px;top:20px;bottom:20px;border-left:3px dotted var(--feuille)}
.frise li{display:flex;gap:1.2rem;align-items:flex-start;padding:.6rem 0 1.1rem;position:relative}
.frise .icone-etape{width:64px;height:64px;flex-shrink:0;margin:0;padding:10px;border-radius:50%;background:var(--humus);color:var(--feuille)}
.frise h3{font-size:1.25rem;margin:.6rem 0 .2rem}
.frise p{margin:0;color:var(--humus-doux);font-size:1rem}
.frise strong{color:var(--humus)}
@media (max-width:960px){
  .comprendre-grille{grid-template-columns:1fr}
  .sommaire{position:static}
  .sommaire ol{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
}
@media (max-width:600px){.installations{grid-template-columns:1fr}.sommaire ol{grid-template-columns:1fr}}

/* Fiche de l'étude */
.fiche-etude{background-color:var(--sable);background-image:var(--grains);background-size:530px 530px,770px 770px;padding:clamp(3.5rem,8vw,6rem) 0}
.fiche-grille{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.fiche-chapo{font-size:1.12rem;color:var(--humus-doux);max-width:36em}
.fiche-colonnes{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:1.6rem}
.fiche-colonnes>div{background:var(--blanc);border-radius:16px;padding:1.2rem 1.3rem .4rem;border-top:6px solid var(--feuille)}
.fiche-colonnes>div+div{border-top-color:var(--humus)}
.fiche-colonnes h3{font-size:1.3rem}
.fiche-colonnes .liste-coche li{font-size:.98rem;border-bottom-color:var(--filet)}
.fiche-etude .carotte{justify-self:center;background:var(--blanc);border-radius:16px;padding:1.2rem 1.2rem 1.2rem .6rem}
@media (max-width:900px){.fiche-grille{grid-template-columns:1fr}.fiche-etude .carotte{justify-self:start}}
@media (max-width:560px){.fiche-colonnes{grid-template-columns:1fr}}

/* Laura */
.laura{background-color:var(--sauge);background-image:var(--grains);background-size:530px 530px,770px 770px;padding:clamp(3.5rem,8vw,6rem) 0}
.laura-grille{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.laura-photos img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:20px;border:6px solid var(--blanc);box-shadow:0 14px 34px rgba(58,42,29,.16)}
.laura-texte p{max-width:38em}
.laura-pastilles{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;margin-top:1.6rem}
.laura-pastilles .synaba{margin:0;flex:1 1 300px}
.laura-logo{width:120px;height:auto}
@media (max-width:760px){.laura-grille{grid-template-columns:1fr}.laura-photos{max-width:380px}}

/* Infos pratiques */
.pratique-grille{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem)}
.pratique-grille p{color:var(--humus-doux)}
.zones-compactes{grid-template-columns:1fr 1fr;margin-top:1.2rem}
.zones-compactes li{padding:1rem 1.1rem}
.zones-compactes b{font-size:2rem}
@media (max-width:800px){.pratique-grille{grid-template-columns:1fr}}

/* Pages intérieures : bandeau marron foncé */
.tete-page{background-color:var(--humus);color:#EFE6D6}
.tete-page h1{color:var(--blanc)}
.tete-page .chapo{color:#DCCDB6}
.fil,.fil a{color:#CDBFA8}
.tete-page::after{background:linear-gradient(90deg,var(--feuille) 0 60%,var(--sauge) 60%)}
.article-cadre{background:none}
.texte{background:var(--blanc);border-radius:20px;border:1px solid var(--filet);padding:clamp(1.4rem,3vw,2.6rem)}
.encadre{background:var(--humus);color:#EFE6D6;border:0;border-top:6px solid var(--feuille);border-radius:16px}
.encadre h2{color:var(--blanc)}
.encadre p{color:#D9C9B0}
.encadre-tel{color:var(--feuille)}
.ouverture-texte{justify-content:flex-start;padding-left:max(var(--gouttiere),calc((100vw - var(--cadre)) / 2 + var(--gouttiere)))}
.chapitre .schema-legende{grid-template-columns:1fr 1fr}
@media (max-width:480px){.chapitre .schema-legende{grid-template-columns:1fr}}
@media (max-width:960px){.ouverture-illu{padding-bottom:1.6rem}.guide{position:static;margin-top:1rem}.bulle{margin-bottom:.6rem}}

/* Personnage de Laura */
.guide-img{width:124px;height:124px}
.bulle b{display:block;font-stretch:80%;font-size:1.15rem;color:var(--humus);margin-bottom:.15rem}
.sommaire-avatar{width:84px;height:84px;border-radius:50%;object-fit:cover;border:3px solid var(--feuille);margin:-3rem 0 .8rem;background:var(--blanc)}
.sommaire{margin-top:2.4rem}
.conseil-laura{display:flex;gap:1rem;align-items:center;margin:1.6rem 0 .4rem;background:var(--sauge);border-radius:16px;padding:1rem 1.2rem;border-left:6px solid var(--feuille)}
.conseil-laura img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0;border:3px solid var(--blanc)}
.conseil-laura p{margin:0;font-size:1rem;line-height:1.45}
.conseil-laura b{display:block;color:var(--ecorce);font-stretch:80%;font-size:1.1rem}
.contact-avatar{width:110px;height:110px;border-radius:50%;object-fit:cover;border:4px solid var(--feuille);margin-bottom:1.2rem}
@media (max-width:960px){.sommaire{margin-top:2.6rem}}
.laura{background-color:var(--sable)}
.formations{list-style:none;margin:0 0 1.2rem;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.formations li{display:flex;align-items:center;gap:.45rem;background:var(--blanc);border:2px solid var(--feuille);border-radius:999px;padding:.35rem .9rem .35rem .7rem;font-weight:600;font-size:.95rem}
.formations li::before{content:"";width:.8rem;height:.42rem;border-left:2.5px solid var(--feuille-fonce);border-bottom:2.5px solid var(--feuille-fonce);transform:rotate(-45deg) translateY(-2px)}

/* Haut de l'accueil, version 4 : logo en grand + situations (choix de Laura) */
.ouverture-3{background-color:var(--sable);background-image:var(--grains);background-size:530px 530px,770px 770px;
  padding:clamp(2.5rem,6vw,4.5rem) 0;border-bottom:6px solid var(--feuille)}
.ouv3-grille{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.ouv3-logo{display:grid;place-items:center;background:var(--blanc);border-radius:50%;aspect-ratio:1;padding:12%;
  box-shadow:0 18px 40px rgba(58,42,29,.14);max-width:440px;width:100%;justify-self:center}
.ouv3-logo img{width:100%;height:auto}
.ouv3-ligne{font-weight:650;color:var(--ecorce);margin:0 0 .8rem}
.ouverture-3 h1{font-size:clamp(2.2rem,4.2vw,3.6rem);font-stretch:64%;line-height:1.02;color:var(--humus);max-width:17ch;margin:0 0 1rem}
.ouv3-chapo{font-size:clamp(1.08rem,1.4vw,1.25rem);color:var(--humus-doux);max-width:34em;margin:0}
.ouv3-question{margin:1.8rem 0 .8rem;font-weight:700;font-stretch:80%;font-size:1.35rem;color:var(--humus)}
.ouverture-3 .tuiles{grid-template-columns:1fr 1fr;gap:.7rem}
.ouverture-3 .tuiles label{flex-direction:row;align-items:center;gap:.9rem;padding:.9rem 1rem;border:2px solid #DCCBAA}
.ouverture-3 .tuiles label>span{display:none}
.ouverture-3 .tuiles svg{width:34px;height:34px;margin:0;flex-shrink:0}
.ouverture-3 .tuiles b{font-size:1.15rem}
.ouverture-3 .tuiles label:hover{border-color:var(--feuille)}
.ouverture-3 .tuiles input:checked+label{border-color:var(--humus)}
.ouverture-3 .quiz-reponses{margin-top:.9rem}
.ouverture-3 .reponse-vide{display:none}
.ouv3-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.4rem;margin-top:1.6rem}
.ouv3-tel{color:var(--humus-doux);text-decoration:none}
.ouv3-tel b{color:var(--humus);font-variant-numeric:tabular-nums}
.ouv3-tel:hover b{text-decoration:underline}
.ouv3-garanties{color:var(--humus);border-top-color:#D6C5A6;margin-top:1.6rem}
.ouv3-garanties li::before{border-color:var(--feuille-fonce)}
.laura{background-color:var(--sauge)}
@media (max-width:900px){.ouv3-grille{grid-template-columns:1fr}.ouv3-logo{max-width:260px}}
@media (max-width:480px){.ouverture-3 .tuiles{grid-template-columns:1fr}}

/* Haut de l'accueil, version 5 : courbes de niveau animées + fiche de sondage */
.ouverture-3{position:relative;overflow:hidden;isolation:isolate;background:var(--humus);color:#EFE6D6;border-bottom:6px solid var(--feuille)}
.courbes{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.courbes path{fill:none;stroke-linejoin:round}
.courbes .cn{stroke:rgba(235,220,195,.13);stroke-width:1.2}
.courbes .cm{stroke:rgba(141,198,63,.38);stroke-width:1.8}
.ouv3-grille{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}
.ouv3-ligne{color:var(--feuille)}
.ouverture-3 h1{color:var(--blanc)}
.ouv3-chapo{color:#DCCDB6}
.ouv3-question{color:var(--blanc)}
.ouverture-3 .tuiles label{border-color:transparent;background:rgba(255,255,255,.96)}
.ouverture-3 .tuiles input:checked+label{background:var(--feuille);border-color:var(--feuille)}
.ouverture-3 .tuiles input:checked+label b{color:var(--humus)}
.ouverture-3 .tuiles input:checked+label svg{stroke:var(--humus)}
.ouverture-3 div.reponse{background:var(--blanc);color:var(--humus)}
.ouverture-3 div.reponse p{color:var(--humus-doux)}
.ouverture-3 .reponse-titre{color:var(--feuille-fonce)}
.ouv3-tel{color:#CDBFA8}
.ouv3-tel b{color:var(--blanc)}
.ouv3-garanties{color:#EFE6D6;border-top-color:rgba(255,255,255,.16)}
.ouv3-garanties li::before{border-color:var(--feuille)}

/* Fiche de sondage */
.fiche-sondage{background:#FBF8F1;color:var(--humus);border-radius:18px;padding:1.2rem 1.2rem 1.1rem;box-shadow:0 24px 50px rgba(0,0,0,.35);
  max-width:360px;width:100%;justify-self:end;transform:rotate(1.2deg);
  background-image:linear-gradient(rgba(138,98,64,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(138,98,64,.08) 1px,transparent 1px);background-size:16px 16px}
.fs-titre{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 .9rem;padding-bottom:.6rem;border-bottom:2px solid var(--humus)}
.fs-titre b{font-stretch:75%;font-size:1.35rem}
.fs-titre span{font-size:.82rem;color:var(--humus-doux)}
.fs-corps{height:300px}
.fs-couches{list-style:none;margin:0;padding:0;height:100%;display:flex;flex-direction:column;border-left:3px solid var(--humus);position:relative}
.fs-couches li{position:relative;display:flex;flex-direction:column;justify-content:center;padding-left:5.4rem;border-bottom:1px dashed #CDBFA8;line-height:1.2}
.fs-couches li::before{content:"";position:absolute;left:.6rem;top:3px;bottom:3px;width:4rem;border-radius:4px}
.fs-c1::before{background:#4A3A2B}.fs-c2::before{background:#9C7444}.fs-c3::before{background:#C9A15B}
.fs-c4::before{background:#DCD5C2 radial-gradient(ellipse at 50% 50%,#c4bba4 0 4px,transparent 5px) 0 0/18px 14px}
.fs-couches b{font-size:.95rem}
.fs-couches span{font-size:.8rem;color:var(--humus-doux);font-variant-numeric:tabular-nums}
.fs-mesure{margin-top:1rem;background:var(--humus);color:#EFE6D6;border-radius:12px;padding:.8rem 1rem}
.fs-mesure p{margin:.1rem 0;font-size:1.05rem}
.fs-valeur{font-stretch:66%;font-size:2.6rem;line-height:1;color:var(--feuille);font-variant-numeric:tabular-nums}
.fs-etiquette,.fs-methode{display:block;font-size:.8rem;color:#CDBFA8}
@media (max-width:900px){.ouv3-grille{grid-template-columns:1fr}.fiche-sondage{justify-self:start;transform:none}}

@media (prefers-reduced-motion:no-preference){
  .courbes path{stroke-dasharray:1;stroke-dashoffset:1;animation:trace 2.6s cubic-bezier(.4,.1,.2,1) forwards;animation-delay:calc(var(--i) * 90ms)}
  .courbes-g{animation:derive 40s ease-in-out 3s infinite alternate}
  .fs-couches li::before{transform-origin:top;animation:couche .6s ease-out both}
  .fs-couches li>*{animation:bs-et-b .5s ease-out both}
  .fs-c1::before,.fs-c1>*{animation-delay:.5s}.fs-c2::before,.fs-c2>*{animation-delay:.9s}
  .fs-c3::before,.fs-c3>*{animation-delay:1.3s}.fs-c4::before,.fs-c4>*{animation-delay:1.7s}
  .fs-mesure{animation:bs-et-b .6s ease-out 2.2s both}
}
@keyframes trace{to{stroke-dashoffset:0}}
@keyframes derive{from{transform:translate(0,0)}to{transform:translate(-30px,18px)}}
@keyframes couche{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.courbes .cn{stroke:rgba(235,220,195,.22);stroke-width:1.3}
.courbes .cm{stroke:rgba(141,198,63,.55);stroke-width:2}
.courbes .cn{stroke:rgba(235,220,195,.17)}

/* Carte de présentation du haut de l'accueil */
.carte-presentation{position:relative;background:#FBF8F1;color:var(--humus);border-radius:22px;padding:4.2rem 1.6rem 1.5rem;margin-top:3rem;
  max-width:380px;width:100%;justify-self:end;box-shadow:0 24px 50px rgba(0,0,0,.35);border-top:6px solid var(--feuille);text-align:center}
.cp-avatar{position:absolute;left:50%;top:0;transform:translate(-50%,-55%);width:118px;height:118px;border-radius:50%;object-fit:cover;
  border:5px solid var(--feuille);background:var(--blanc);box-shadow:0 10px 24px rgba(0,0,0,.25)}
.cp-titre{font-stretch:72%;font-weight:700;font-size:1.7rem;line-height:1.1;margin:0 0 .6rem}
.cp-texte{font-size:1rem;color:var(--humus-doux);margin:0 0 1.1rem}
.cp-points{list-style:none;margin:0 0 1.1rem;padding:0;text-align:left;display:grid;gap:.55rem}
.cp-points li{position:relative;padding:.6rem .8rem .6rem 2.4rem;background:var(--sauge);border-radius:12px;font-size:.95rem;font-weight:600;line-height:1.3}
.cp-points li::before{content:"";position:absolute;left:.95rem;top:50%;width:.85rem;height:.45rem;border-left:2.5px solid var(--feuille-fonce);
  border-bottom:2.5px solid var(--feuille-fonce);transform:translateY(-70%) rotate(-45deg)}
.cp-devise{font-stretch:78%;font-weight:700;font-size:1.15rem;color:var(--ecorce);margin:0 0 .7rem}
.cp-lien{font-weight:650;color:var(--feuille-fonce)}
@media (prefers-reduced-motion:no-preference){
  .carte-presentation{animation:cp-arrive .7s cubic-bezier(.3,.7,.2,1) .4s both}
  .cp-avatar{animation:cp-avatar .6s cubic-bezier(.3,1.4,.5,1) 1s both}
  .cp-points li{animation:bs-et-b .45s ease-out both}
  .cp-points li:nth-child(1){animation-delay:1.3s}.cp-points li:nth-child(2){animation-delay:1.5s}.cp-points li:nth-child(3){animation-delay:1.7s}
}
@keyframes cp-arrive{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes cp-avatar{from{transform:translate(-50%,-55%) scale(.4);opacity:0}to{transform:translate(-50%,-55%) scale(1);opacity:1}}
@media (max-width:900px){.carte-presentation{justify-self:center;margin-top:4rem}}

/* ===== Ton plus professionnel et technique (nov. 2026) ===== */
:root{--rayon:6px}
/* Angles plus nets */
.chapitre,.carte-presentation,.fiche-colonnes>div,.tuiles label,div.reponse,.schema,.schema-mini,.texte,.encadre,.sommaire,
.reperes li,.regles p,.zones li,.formulaire,.laura-photos img,.fiche-etude .carotte,.synaba,.conseil-laura{border-radius:8px}
.bouton,.nav a.bouton,.menu nav a.bouton{border-radius:6px}
.chapitre{box-shadow:none}
.chap-num{border-radius:6px;width:40px;height:40px;font-size:1.1rem}
/* Carte de présentation sobre */
.carte-presentation{padding:1.5rem 1.5rem 1.3rem;margin-top:0;text-align:left;transform:none;border-top-width:5px}
.cp-entete{display:flex;align-items:center;gap:.9rem;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--filet)}
.cp-entete img{width:72px;height:auto;flex-shrink:0}
.cp-entete p{margin:0;display:flex;flex-direction:column;line-height:1.2}
.cp-entete b{font-stretch:75%;font-size:1.3rem}
.cp-entete span{font-size:.88rem;color:var(--humus-doux)}
.cp-points li{background:none;border-bottom:1px solid var(--filet);border-radius:0;padding:.55rem .2rem .55rem 1.9rem;font-weight:600}
.cp-points li:last-child{border-bottom:0}
.cp-points li::before{left:.3rem}
.cp-pied{margin:.4rem 0 .8rem;font-size:.88rem;color:var(--humus-doux)}
@media (prefers-reduced-motion:no-preference){.carte-presentation{animation:cp-arrive .6s ease-out .3s both}}
/* Encadrés « Bon à savoir » */
.conseil-laura{background:#F4F8EC;border-left-width:4px}
.cl-icone{flex-shrink:0;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--humus);color:var(--feuille);
  font:italic 800 1.15rem/1 Georgia,serif}
.conseil-laura b{color:var(--humus);font-stretch:85%;font-size:1rem}
/* Tuiles de situation : plus sobres */
.ouverture-3 .tuiles label{border-radius:6px}
.tuiles label:hover{transform:none}
/* Chiffres : sobres */
.reperes b{font-weight:750}

/* Essai de perméabilité : protocole + schéma technique */
.perm-grille{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.6rem 2rem;align-items:start;margin:1.4rem 0 1.6rem}
.protocole{list-style:none;counter-reset:pr;margin:0;padding:0;display:grid;gap:.9rem}
.protocole li{counter-increment:pr;position:relative;padding-left:2.9rem;font-size:.98rem;color:var(--humus-doux);line-height:1.45}
.protocole li::before{content:counter(pr);position:absolute;left:0;top:.05rem;width:2rem;height:2rem;border-radius:6px;display:grid;place-items:center;
  background:var(--humus);color:var(--feuille);font-weight:800;font-size:.95rem}
.protocole b{display:block;color:var(--humus);font-size:1.05rem}
.schema-tech{margin:0;background:#FBF8F1;border:1px solid var(--filet);border-radius:8px;padding:.8rem}
.schema-tech svg{display:block;width:100%;height:auto}
.pt-txt{font:600 14px "Archivo",sans-serif;fill:#3A2A1D}
.pt-pale{fill:#6A5646;font-weight:500}
.schema-tech figcaption{font-size:.85rem;color:var(--humus-doux);margin-top:.5rem;line-height:1.4}
@media (prefers-reduced-motion:no-preference){
  .pt-fleches path{stroke-dasharray:6 5;animation:pt-flux 1.4s linear infinite}
  .pt-reservoir{transform-box:fill-box;transform-origin:50% 100%;animation:pt-baisse 6s ease-in-out infinite}
}
@keyframes pt-flux{to{stroke-dashoffset:-22}}
@media (prefers-reduced-motion:no-preference){
  .pt-bulbe{transform-box:fill-box;transform-origin:50% 30%;animation:pt-front 6s ease-out infinite}
}
@keyframes pt-front{0%{transform:scale(.55);opacity:.15}70%,100%{transform:scale(1);opacity:.32}}
@keyframes pt-baisse{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.62)}}
@media (max-width:760px){.perm-grille{grid-template-columns:1fr}}

/* Tableaux techniques */
.tableau-defile{overflow-x:auto;margin:1.2rem 0 .6rem;border:1px solid var(--filet);border-radius:8px;background:var(--blanc)}
.tableau-tech{width:100%;border-collapse:collapse;font-size:.95rem;min-width:620px}
.tableau-tech caption{text-align:left;font-weight:700;font-stretch:85%;font-size:1.05rem;padding:.8rem 1rem;background:var(--humus);color:var(--blanc)}
.tableau-tech th,.tableau-tech td{padding:.75rem 1rem;border-bottom:1px solid var(--filet);vertical-align:top;text-align:left;line-height:1.4}
.tableau-tech thead th{background:var(--sauge);font-stretch:90%;font-size:.88rem;color:var(--humus)}
.tableau-tech tbody th{font-stretch:85%;font-size:1rem;color:var(--humus);background:#FBF8F1;width:17%}
.tableau-tech td b{display:block;color:var(--humus);white-space:nowrap}
.tableau-tech td span{display:block;font-size:.85rem;color:var(--humus-doux)}
.tableau-tech tr:last-child>*{border-bottom:0}
.tableau-filieres{min-width:820px}
.note-tableau{font-size:.88rem;color:var(--humus-doux);margin:.4rem 0 0}
.texte .tableau-defile{margin:1.2rem 0}
.texte .tableau-tech{font-size:.9rem}
.pt-txt{font-size:18px}
.perm-grille{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
/* Comparatif des filières en fiches */
.tableau-defile:has(.tableau-filieres){border:0;background:none;overflow:visible}
.tableau-filieres{min-width:0;display:block}
.tableau-filieres caption{display:block;border-radius:8px 8px 0 0}
.tableau-filieres thead{display:none}
.tableau-filieres tbody{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}
.tableau-filieres tr{display:block;background:var(--blanc);border:1px solid var(--filet);border-top:5px solid var(--feuille);border-radius:8px;padding:.4rem 0 .6rem}
.tableau-filieres tr:nth-child(even){border-top-color:var(--humus)}
.tableau-filieres tbody th{display:block;width:auto;background:none;font-size:1.2rem;padding:.6rem 1rem .4rem;border:0}
.tableau-filieres td{display:grid;grid-template-columns:7.5rem 1fr;gap:.6rem;padding:.45rem 1rem;border-bottom:1px solid #F0E8DA;font-size:.93rem}
.tableau-filieres td::before{content:attr(data-label);font-weight:650;color:var(--ecorce);font-size:.85rem}
.tableau-filieres tr>*:last-child{border-bottom:0}
.tableau-filieres caption{border-radius:8px}
@media (max-width:640px){.tableau-filieres tbody{grid-template-columns:1fr}.tableau-filieres td{grid-template-columns:1fr;gap:.1rem}}

/* Photo de l'essai de perméabilité */
.photo-essai{margin:0}
.photo-essai img{display:block;width:100%;height:auto;border-radius:8px;border:1px solid var(--filet)}
.photo-essai figcaption{font-size:.85rem;color:var(--humus-doux);margin-top:.5rem;line-height:1.4}
.perm-photo{max-width:640px;margin:1.4rem 0 .4rem}
/* Accueil : les 4 filières en mini-schémas animés */
.filieres-schemas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.4rem;margin:1.4rem 0 1.8rem}
.fs-item .schema-mini{margin:0}
.fs-item p{margin:.5rem 0 0;font-weight:700;font-stretch:80%;font-size:1.1rem;color:var(--humus)}
@media (max-width:640px){.filieres-schemas{grid-template-columns:1fr}}
/* Accueil : 6 départements PACA */
.zones-paca{grid-template-columns:repeat(3,minmax(0,1fr))}
.zones-paca li{border-top-color:var(--feuille)}
@media (max-width:560px){.zones-paca{grid-template-columns:1fr 1fr}}
/* Textes réglementaires ANC */
.textes-anc{margin-top:2rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.15)}
.textes-anc h3{color:var(--blanc);font-size:1.3rem;margin:0 0 1rem}
.textes-anc ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.9rem 2rem}
.textes-anc li{padding-left:1.1rem;border-left:3px solid var(--feuille);color:#D9C9B0;font-size:.98rem;line-height:1.45}
.textes-anc b{color:var(--blanc)}
.textes-anc span{display:block}
@media (max-width:760px){.textes-anc ul{grid-template-columns:1fr}}
