/* MBE – Marcoz Bureau d'Études · feuille de style unique */
:root{
  --calcaire:#F2F3EF;   /* fond : calcaire clair du Var */
  --blanc:#FFFFFF;
  --humus:#2E2419;      /* texte : brun d'humus */
  --humus-doux:#5E5245; /* texte secondaire */
  --feuille:#7DB32E;    /* vert du logo MBE : actions */
  --feuille-fonce:#4F7A17;
  --garrigue:#5C6B3A;   /* liens, titres secondaires */
  --ocre:#C9A15B;       /* repères, horizons de sol */
  --filet:#DAD9CF;
  --rayon:6px;
  --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}}
