/* =========================================================================
   pi-soupirail — feuille unique de pompe-inondation.com
   Idée : la coupe du terrain d'un pavillon en meulière d'Île-de-France.
   Au-dessus : la rue, le crépi, la façade. Une ligne de sol (bordure de trottoir
   + pavés) traverse la page. En dessous : la cave, vue par son soupirail.
   Mode clair uniquement ; bandes encre de crue permises.
   ========================================================================= */

/* ---------- 01. Polices auto-hébergées ---------- */
@font-face{font-family:"Antonio";font-style:normal;font-weight:500 700;font-display:swap;src:url(../fonts/antonio-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Antonio";font-style:normal;font-weight:500 700;font-display:swap;src:url(../fonts/antonio-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Sarala";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/sarala-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Sarala";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/sarala-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Sarala";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/sarala-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Sarala";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/sarala-700-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* ---------- 02. Jetons ---------- */
:root{
	--crepi:#F4EFE6; --sous-sol:#E6DCCB; --blanc:#FFFFFF; --filet:#DCD2C2;
	--encre:#14262E; --encre-2:#1E3640; --texte-2:#45555C;
	--bleu:#1F5FBF; --bleu-fonce:#174A96; --bleu-pale:#E4ECF8;
	--meuliere:#B9773E; --meuliere-fonce:#8A5426; --meuliere-pale:#F3E3CF;
	--eau:#2F7F8F; --eau-fonce:#1F5E6B; --eau-pale:#DCEBEE; --eau-vive:#7CC3CF;
	--zinc:#6B7A80; --granit:#8E949A; --pave:#B9B1A3;
	--titre:"Antonio","Arial Narrow",Arial,sans-serif;
	--texte:"Sarala",-apple-system,"Segoe UI",Arial,sans-serif;
	--r-carte:12px; --r-form:20px; --r-btn:10px;
	--ombre:0 1px 2px rgba(20,38,46,.06),0 8px 24px rgba(20,38,46,.08);
	--ombre-forte:0 2px 6px rgba(20,38,46,.10),0 22px 48px rgba(20,38,46,.20);
	--marge:clamp(16px,4vw,56px); --cadre:1328px; --tete:72px;
	--sol:16px;
}
@media (min-width:1700px){:root{--cadre:1560px}}
@media (max-width:999px){:root{--tete:64px}}

/* ---------- 03. Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--tete) + 16px)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--crepi);color:var(--encre);font-family:var(--texte);font-size:17px;line-height:1.62;overflow-x:clip}
body>main{flex:1 0 auto}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--bleu);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--bleu-fonce)}
:focus-visible{outline:3px solid var(--eau);outline-offset:2px;border-radius:4px}
h1,h2,h3{font-family:var(--titre);font-weight:700;line-height:1.04;letter-spacing:0;margin:0 0 .45em;color:var(--encre);text-wrap:balance}
h1{font-size:clamp(40px,4.4vw,72px)}
h2{font-size:clamp(32px,2.9vw,46px);font-weight:600}
h3{font-size:clamp(22px,1.7vw,26px);font-weight:600;line-height:1.1}
p{margin:0 0 1em}
ul,ol{margin:0;padding:0}
button,input,select,textarea{font:inherit;color:inherit}
.pic-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pic-saut{position:absolute;left:12px;top:-60px;z-index:100;background:var(--encre);color:var(--crepi);padding:10px 16px;border-radius:var(--r-btn)}
.pic-saut:focus{top:12px}
.pic-piege{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.pic-cadre{width:min(100% - 2*var(--marge),var(--cadre));margin-inline:auto}
.pic-cadre--lecture{max-width:920px}
.pic-cadre--etroit{max-width:1040px}

/* ---------- 04. Crépi, sous-sol, ligne de sol ---------- */
.pic-hero,.pic-local-hero,.pic-rubrique-tete,.pic-entete{
	position:relative;isolation:isolate;overflow:clip;
	background-color:var(--crepi);
	background-image:radial-gradient(rgba(20,38,46,.055) 1px,transparent 1.5px),radial-gradient(rgba(185,119,62,.07) 1px,transparent 1.7px);
	background-size:7px 7px,11px 11px;background-position:0 0,3px 5px;
}
.pic-sol{position:relative;display:block;height:var(--sol)}
.pic-sol::before{content:"";position:absolute;top:0;bottom:0;left:calc(50% - 50vw);width:100vw;
	background:
		linear-gradient(180deg,#C9CDD0 0,#A9AFB4 2px,var(--granit) 5px,#6F767C 6px,transparent 6px),
		repeating-linear-gradient(90deg,#7F7A70 0 2px,var(--pave) 2px 34px,#ADA597 34px 36px,#C3BCAF 36px 68px);
	box-shadow:0 3px 0 rgba(20,38,46,.12)}
.pic-sol--grille{grid-column:1/-1;grid-row:2;align-self:stretch}
.pic-sol--grille::after{content:"";position:absolute;top:100%;left:calc(50% - 50vw);width:100vw;height:3000px;z-index:-1;
	background-color:var(--sous-sol);
	background-image:radial-gradient(ellipse 20px 13px at 22% 32%,rgba(185,119,62,.13),transparent 70%),radial-gradient(ellipse 26px 15px at 72% 64%,rgba(185,119,62,.10),transparent 70%),radial-gradient(ellipse 14px 10px at 48% 88%,rgba(107,122,128,.10),transparent 70%);
	background-size:68px 52px,92px 60px,56px 44px}
.pic-sol--mini{position:absolute;left:0;right:0;bottom:0;height:9px}
.pic-sol--mini::before{left:0;width:100%}
.pic-sol--pied{height:12px}
.pic-aplat{position:relative;background-color:var(--sous-sol);
	background-image:radial-gradient(ellipse 20px 13px at 22% 32%,rgba(185,119,62,.18),transparent 70%),radial-gradient(ellipse 26px 15px at 72% 64%,rgba(185,119,62,.14),transparent 70%);
	background-size:68px 52px,92px 60px}

/* ---------- 05. En-tête ---------- */
.pic-tete{position:sticky;top:0;z-index:50;background:rgba(244,239,230,.97);border-bottom:1px solid var(--filet);transition:box-shadow .2s}
.pic-tete.est-defile{box-shadow:0 6px 18px rgba(20,38,46,.10)}
.pic-tete__barre{width:min(100% - 2*var(--marge),var(--cadre));margin-inline:auto;height:var(--tete);display:flex;align-items:center;gap:28px}
.pic-marque{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--encre);flex:0 0 auto}
.pic-marque__logo{width:44px;height:44px}
.pic-marque__nom{font-family:var(--titre);font-weight:700;font-size:23px;line-height:1;display:flex;flex-direction:column;gap:3px}
.pic-marque__nom small{font-family:var(--texte);font-weight:400;font-size:13px;color:var(--texte-2);letter-spacing:.01em}
.pic-marque--clair{color:var(--crepi)}.pic-marque--clair small{color:#C9D3D6}
.pic-nav{flex:1;display:flex;justify-content:center}
.pic-nav>ul{list-style:none;display:flex;gap:6px;align-items:center}
.pic-nav a,.pic-nav__ouvrir{display:flex;align-items:center;gap:6px;padding:10px 14px;border-radius:var(--r-btn);text-decoration:none;color:var(--encre);font-weight:700;font-size:16px;background:none;border:0;cursor:pointer}
.pic-nav a:hover,.pic-nav__ouvrir:hover{background:var(--sous-sol)}
.pic-nav a[aria-current="page"]{box-shadow:inset 0 -3px 0 var(--eau)}
.pic-nav__chevron{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.pic-nav__guides{position:relative}
.pic-nav__sous{list-style:none;position:absolute;top:calc(100% + 8px);left:0;min-width:270px;background:var(--blanc);border:1px solid var(--filet);border-radius:var(--r-carte);box-shadow:var(--ombre-forte);padding:8px;display:none}
.pic-nav__guides.est-ouvert .pic-nav__sous,.pic-nav__guides:focus-within .pic-nav__sous{display:block}
@media (hover:hover){.pic-nav__guides:hover .pic-nav__sous{display:block}.pic-nav__guides:hover .pic-nav__sous::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}}
.pic-nav__sous a{font-weight:400;padding:10px 12px}
.pic-nav .pic-nav__devis-mobile{display:none}
.pic-burger{display:none}

/* ---------- 06. Boutons, étiquettes, surtitres ---------- */
.pic-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 20px;border-radius:var(--r-btn);font-family:var(--texte);font-weight:700;font-size:16px;line-height:1.2;text-decoration:none;cursor:pointer;border:2px solid transparent;white-space:nowrap;transition:background-color .15s,border-color .15s,color .15s}
.pic-btn--plein{background:var(--bleu);color:#fff}
.pic-btn--plein:hover{background:var(--bleu-fonce);color:#fff}
.pic-btn--contour{border-color:var(--encre);color:var(--encre);background:transparent}
.pic-btn--contour:hover{background:var(--encre);color:var(--crepi)}
.pic-btn--grand{min-height:54px;padding:14px 28px;font-size:18px}
.pic-btn:disabled{opacity:.6;cursor:wait}
.pic-etiquette{display:inline-block;align-self:flex-start;margin:0 0 8px;padding:3px 10px;border-radius:6px;background:var(--meuliere-pale);color:#5E3815;font-size:13.5px;font-weight:700;line-height:1.4;max-width:100%}
.pic-etiquette--alerte{background:#FFE7C2;color:#5B3200}
.pic-surtitre{margin:0 0 10px;font-weight:700;font-size:15px;color:var(--eau-fonce);display:flex;align-items:center;gap:10px}
.pic-surtitre::before{content:"";width:26px;height:3px;border-radius:2px;background:var(--meuliere)}
.pic-ariane{display:flex;flex-wrap:wrap;gap:8px;font-size:14px;color:var(--texte-2);margin:0 0 14px}
.pic-ariane a{color:var(--texte-2)}

/* ---------- 07. Bandes et têtes de section ---------- */
.pic-bande{padding-block:clamp(48px,5vw,72px);position:relative}
.pic-bande--blanc{background:var(--blanc)}
.pic-bande--crepi{background:var(--crepi)}
.pic-bande--encre{background:var(--encre);color:#E4ECEE}
.pic-bande--encre h2,.pic-bande--encre h3{color:#fff}
.pic-bande--encre .pic-surtitre{color:var(--eau-vive)}
.pic-tete-section{max-width:760px;margin-bottom:28px}
.pic-tete-section p:last-child{margin-bottom:0;color:var(--texte-2)}
.pic-bande--encre .pic-tete-section p:last-child{color:#C5D2D6}
.pic-tete-section--ligne{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 64px;align-items:end}
.pic-tete-section--ligne h2{margin:0}

/* ---------- 08. HERO de l'accueil : coupe de terrain ---------- */
.pic-hero__grille{width:min(100% - 2*var(--marge),var(--cadre));margin-inline:auto;display:grid;
	grid-template-columns:minmax(0,1fr) 200px 220px minmax(300px,.62fr);
	grid-template-rows:auto var(--sol) minmax(330px,auto)}
.pic-hero__texte{grid-column:1;grid-row:1;align-self:end;padding:36px 40px 26px 0}
.pic-hero__titre{margin:0;font-size:clamp(44px,4.55vw,76px);line-height:.98;font-weight:700}
.pic-hero__titre span{display:block}
.pic-ton-1{color:var(--encre)}
.pic-ton-2{color:var(--eau)}
.pic-hero__facade{grid-column:3/5;grid-row:1;position:relative;margin-top:24px;border-radius:14px 14px 0 0;overflow:hidden;min-height:160px}
.pic-hero__facade img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 70%}
.pic-hero__facade--motif{background-color:#D9C2A0;
	background-image:
		radial-gradient(ellipse 26px 16px at 25% 35%,#C79A63 60%,transparent 64%),
		radial-gradient(ellipse 22px 14px at 75% 70%,#B98450 60%,transparent 64%),
		radial-gradient(ellipse 18px 12px at 55% 15%,#CFA978 60%,transparent 64%),
		radial-gradient(ellipse 16px 11px at 10% 85%,#B57F4C 60%,transparent 64%);
	background-size:84px 58px,96px 64px,70px 50px,88px 60px;box-shadow:inset 0 0 0 1px rgba(20,38,46,.08)}
.pic-hero__sol,.pic-hero .pic-sol--grille{grid-row:2}
.pic-hero__sous{grid-column:1;grid-row:3;padding:26px 40px 30px 0}
.pic-hero__chapo{font-size:18px;line-height:1.55;max-width:56ch;margin:0 0 18px}
.pic-hero__preuves{list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.pic-hero__preuves li{display:flex;align-items:center;gap:8px;padding:8px 14px 8px 10px;background:rgba(255,255,255,.72);border:1px solid var(--filet);border-radius:var(--r-btn);font-weight:700;font-size:15px}
.pic-hero__preuves li::before{content:"";width:18px;height:18px;flex:0 0 18px;border-radius:50%;background:var(--eau) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.4l2.6 2.5L12 5.4' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.pic-hero__cave{grid-column:3/5;grid-row:3;padding:0 0 26px;display:flex}
.pic-hero .pic-place{grid-column:2/4;grid-row:1/4;position:relative;z-index:3}
.pic-place>.pic-carte-form{position:absolute;top:24px;left:0;right:0}

/* ---------- 09. Le soupirail ---------- */
.pic-soupirail{position:relative;margin:0;width:100%;padding:12px 12px 0;
	border-radius:50% 50% 0 0/34px 34px 0 0;
	background-color:#B98A5C;
	background-image:linear-gradient(180deg,rgba(255,240,220,.22),rgba(60,30,10,.12)),radial-gradient(ellipse 30px 18px at 30% 40%,rgba(120,70,30,.28),transparent 72%),radial-gradient(ellipse 24px 14px at 75% 70%,rgba(230,200,160,.30),transparent 72%);
	background-size:100% 100%,74px 44px,58px 38px;
	box-shadow:0 10px 26px rgba(20,38,46,.18)}
.pic-soupirail__mur{display:none}
.pic-soupirail__baie{position:relative;display:block;overflow:hidden;height:100%;min-height:200px;border-radius:50% 50% 4px 4px/28px 28px 4px 4px;background:var(--encre-2)}
.pic-soupirail__baie img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.pic-soupirail__baie::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 14px 22px rgba(10,20,25,.55),inset 0 -6px 14px rgba(10,20,25,.25),inset 10px 0 16px rgba(10,20,25,.25),inset -10px 0 16px rgba(10,20,25,.25);border-radius:inherit}
.pic-soupirail__barreaux{position:absolute;inset:0;display:flex;justify-content:space-evenly;pointer-events:none;z-index:1}
.pic-soupirail__barreaux i{width:6px;height:100%;background:linear-gradient(90deg,#0E1B21,#3A4A51 45%,#0E1B21);box-shadow:2px 0 4px rgba(0,0,0,.35)}
.pic-soupirail--vide .pic-soupirail__baie{background-color:var(--sous-sol);background-image:radial-gradient(ellipse 20px 13px at 22% 32%,rgba(185,119,62,.18),transparent 70%);background-size:68px 52px}
.pic-soupirail--hero{flex:1;min-height:260px}
.pic-soupirail--hero .pic-soupirail__baie::before{content:"";position:absolute;left:0;right:0;bottom:0;height:24%;z-index:1;background:linear-gradient(180deg,rgba(124,195,207,.30),rgba(47,127,143,.26));border-top:2px solid rgba(220,235,238,.85);transform-origin:bottom;animation:pic-monte 1.8s cubic-bezier(.2,.7,.2,1) .25s both}
@keyframes pic-monte{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.pic-echelle{position:absolute;right:22px;top:22%;bottom:0;z-index:2;display:flex;flex-direction:column;justify-content:space-between;padding:6px 0;pointer-events:none}
.pic-echelle i{font-style:normal;font-size:12px;font-weight:700;color:#fff;line-height:1;display:flex;align-items:center;gap:6px;text-shadow:0 1px 2px rgba(0,0,0,.7)}
.pic-echelle i::before{content:"";width:14px;height:2px;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.6)}
.pic-credit{font-size:12.5px;line-height:1.4;color:var(--texte-2);margin-top:6px}

/* ---------- 10. Carte formulaire (en étapes) ---------- */
.pic-carte-form{background:var(--blanc);border-radius:var(--r-form);box-shadow:var(--ombre-forte);padding:20px 22px 22px;border-top:5px solid var(--eau)}
.pic-quiz__titre{font-family:var(--titre);font-weight:700;font-size:25px;line-height:1.1;margin:0 0 12px}
.pic-quiz__pastilles{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:0 0 12px}
.pic-quiz__pastilles li{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--texte-2);padding:5px 6px;border-radius:8px;background:var(--crepi);white-space:nowrap;overflow:hidden}
.pic-quiz__pastilles li span{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:#fff;border:1.5px solid var(--filet);font-size:12px}
.pic-quiz__pastilles li.est-active{background:var(--bleu-pale);color:var(--bleu-fonce)}
.pic-quiz__pastilles li.est-active span{background:var(--bleu);border-color:var(--bleu);color:#fff}
.pic-quiz__pastilles li.est-faite span{background:var(--eau);border-color:var(--eau);color:#fff}
.pic-quiz__haut{display:flex;justify-content:space-between;align-items:center;min-height:24px;margin-bottom:4px}
.pic-quiz__etape{margin:0;font-size:13.5px;color:var(--texte-2);font-weight:700;margin-left:auto}
.pic-quiz__retour{background:none;border:0;padding:4px 0;color:var(--bleu);font-weight:700;font-size:14px;cursor:pointer}
.pic-quiz__retour::before{content:"‹ "}
.pic-quiz__recap{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 6px}
.pic-pastille{border:1px solid var(--filet);background:var(--crepi);border-radius:8px;padding:3px 9px;font-size:13px;cursor:pointer}
.pic-quiz__form{margin:0}
.pic-quiz__pas{border:0;margin:0;padding:0;min-width:0}
.pic-quiz.js .pic-quiz__pas{display:none}
.pic-quiz.js .pic-quiz__pas.active{display:block;animation:pic-pas .22s ease-out}
.pic-quiz:not(.js) .pic-quiz__merci{display:none}
@keyframes pic-pas{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.pic-quiz__q{display:block;font-family:var(--titre);font-weight:600;font-size:23px;line-height:1.15;margin:4px 0 12px;padding:0}
.pic-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pic-opt{min-height:56px;padding:10px 12px;border:1.5px solid var(--filet);border-radius:var(--r-btn);background:var(--crepi);font-weight:700;font-size:15.5px;line-height:1.25;text-align:left;cursor:pointer;transition:border-color .15s,background-color .15s}
.pic-opt:hover{border-color:var(--bleu);background:#fff}
.pic-opt.selected{background:var(--bleu);border-color:var(--bleu);color:#fff}
.pic-champs{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px}
.pic-champ{margin:0;display:flex;flex-direction:column;gap:3px;min-width:0}
.pic-champ--large{grid-column:1/-1}
.pic-champ label{font-size:13.5px;font-weight:700}
.pic-champ label span{font-weight:400;color:var(--texte-2)}
.pic-champ abbr{text-decoration:none;color:var(--meuliere-fonce)}
.pic-champ input,.pic-champ select{width:100%;height:42px;padding:8px 11px;border:1.5px solid #CFC5B5;border-radius:var(--r-btn);background:#fff;font-size:15.5px;min-width:0}
.pic-champ select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2314262E' stroke-width='1.8'/%3E%3C/svg%3E") right 12px center/12px no-repeat;padding-right:32px}
.pic-champ input:focus,.pic-champ select:focus{border-color:var(--bleu);outline:2px solid var(--bleu-pale);outline-offset:0}
.pic-champ input.est-erreur{border-color:var(--meuliere-fonce)}
.pic-quiz__aide{font-size:13.5px;color:#7A3B0E;margin:8px 0 0;font-weight:700}
.pic-quiz__fin{display:grid;gap:6px;margin-top:10px}
.pic-case{display:flex;gap:8px;align-items:flex-start;font-size:13.5px;line-height:1.35;cursor:pointer}
.pic-case input{width:17px;height:17px;margin:1px 0 0;flex:0 0 17px;accent-color:var(--bleu)}
.pic-quiz__envoyer{width:100%;margin-top:4px}
.pic-quiz__merci p:last-child{margin:0}

/* ---------- 11. Formulaire court (articles) ---------- */
.pic-court{background:var(--encre);color:#E4ECEE;border-radius:var(--r-carte);padding:18px 18px 16px}
.pic-court__titre{font-family:var(--titre);font-weight:700;font-size:23px;line-height:1.1;color:#fff;margin:0 0 6px}
.pic-court__texte{font-size:14.5px;line-height:1.45;margin:0 0 12px;color:#C9D5D9}
.pic-court__ligne{display:flex;gap:8px}
.pic-court__ligne input{flex:1;min-width:0;height:46px;padding:8px 12px;border-radius:var(--r-btn);border:1.5px solid #3B5560;background:#fff;color:var(--encre);font-size:15px}
.pic-court__ligne .pic-btn{padding-inline:16px}
.pic-court .pic-quiz__aide{color:#FFD9A8}
.pic-court__ok{font-size:14px;margin:8px 0 0;color:var(--eau-vive);font-weight:700}
.pic-court__lien{display:inline-block;margin-top:10px;font-size:14px;color:#fff;font-weight:700}
.pic-court__lien:hover{color:var(--eau-vive)}

/* ---------- 12. Calculateur ---------- */
.pic-calcul__grille{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:64px;align-items:center}
.pic-calcul__texte p{color:var(--texte-2)}
.pic-calcul__texte p:last-child{margin:0}
.pic-calcul__outil{background:var(--crepi);border:1px solid var(--filet);border-radius:var(--r-carte);padding:24px;box-shadow:var(--ombre);position:relative;overflow:hidden}
.pic-calcul__outil::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--eau)}
.pic-calcul__champs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.pic-unite{display:flex;align-items:stretch;border:1.5px solid #CFC5B5;border-radius:var(--r-btn);background:#fff;overflow:hidden}
.pic-unite input{border:0!important;height:46px!important;outline:0;font-size:18px!important;font-weight:700;width:100%;min-width:0}
.pic-unite b{display:grid;place-items:center;padding:0 12px;background:var(--sous-sol);font-size:14px;color:var(--encre)}
.pic-unite:focus-within{border-color:var(--bleu);box-shadow:0 0 0 2px var(--bleu-pale)}
.pic-calcul__resultats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 12px}
.pic-calcul__resultats p,.pic-chiffres p{margin:0;background:#fff;border-radius:10px;padding:12px 14px;border:1px solid var(--filet);display:flex;flex-direction:column}
.pic-calcul__resultats strong,.pic-chiffres strong{font-family:var(--titre);font-weight:700;font-size:40px;line-height:1;color:var(--eau-fonce);font-variant-numeric:tabular-nums lining-nums}
.pic-calcul__resultats span,.pic-chiffres span{font-size:14px;color:var(--texte-2);margin-top:4px}
.pic-calcul__formule{font-size:14.5px;font-weight:700;margin:0 0 4px;font-variant-numeric:tabular-nums}
.pic-calcul__note{font-size:13.5px;color:var(--texte-2);margin:0}

/* ---------- 13. Origines (4 cartes) ---------- */
.pic-origines__grille{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.pic-origine{background:var(--blanc);border-radius:var(--r-carte);overflow:hidden;box-shadow:var(--ombre);display:flex;flex-direction:column}
.pic-origine__photo{position:relative;height:150px;overflow:hidden;flex:0 0 auto}
.pic-origine__photo img{width:100%;height:100%;object-fit:cover}
.pic-origine__corps{padding:14px 18px 16px;display:flex;flex-direction:column;flex:1}
.pic-origine__corps h3{margin-bottom:8px}
.pic-origine__corps p{font-size:15.5px;line-height:1.5;color:var(--texte-2);margin:0 0 12px}
.pic-origine__geste{margin-top:auto!important;margin-bottom:0!important;padding-top:10px;border-top:1px dashed var(--filet);color:var(--encre)!important;font-weight:700;font-size:14.5px!important}

/* ---------- 14. Eau claire / chargée (bande encre) ---------- */
.pic-eaux__grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pic-eau{background:var(--encre-2);border:1px solid #2E4A55;border-radius:var(--r-carte);overflow:hidden;display:flex;flex-direction:column}
.pic-eau__photo{height:190px;flex:0 0 auto;position:relative}
.pic-eau__photo img{width:100%;height:100%;object-fit:cover}
.pic-eau__photo--produit{background:#fff}
.pic-eau__photo--produit img{object-fit:contain;padding:10px 0}
.pic-eau__corps p.pic-etiquette{color:#5E3815}
.pic-eau__corps p.pic-etiquette--alerte{color:#5B3200}
.pic-eau__corps{padding:18px 20px 20px;flex:1;display:flex;flex-direction:column}
.pic-eau__corps p{font-size:15.5px;line-height:1.55;color:#C9D5D9;margin:0}
.pic-eau__corps h3{margin-bottom:8px}
.pic-eau--alerte{background:#1A2F38;border:2px solid var(--meuliere);justify-content:flex-start}
.pic-eau--alerte .pic-eau__corps{padding:18px 20px 20px}
.pic-eau--alerte strong{color:#fff}
.pic-eau__regle{margin-top:auto!important;padding:14px 16px;border-radius:10px;background:rgba(185,119,62,.18);color:#FFE2C2!important;font-weight:700;font-family:var(--titre);font-size:21px!important;line-height:1.2!important}
.pic-eau--alerte .pic-eau__corps>p:first-of-type{margin-bottom:0}


/* ---------- 15. Zone, carte, communes, chiffres ---------- */
.pic-zone{padding-block:clamp(44px,4vw,56px)}
.pic-zone__grille{display:grid;grid-template-columns:minmax(0,560px) minmax(0,1fr);gap:56px;align-items:center}
.pic-zone__texte>p{color:var(--texte-2)}
.pic-carte{margin:0;background:var(--blanc);border-radius:var(--r-carte);padding:12px;box-shadow:var(--ombre)}
.pic-bande--blanc .pic-carte{background:var(--crepi)}
.pic-carte__svg{width:100%;height:auto;overflow:visible}
.pic-dep{fill:#ECE5D8;stroke:#fff;stroke-width:1.6}
.pic-dep--zone{fill:#CFE4E8;stroke:var(--eau);stroke-width:1.6}
.pic-dep__nom{font-family:var(--titre);font-size:19px;font-weight:600;fill:var(--eau-fonce)}
.pic-dep__paris{font-family:var(--texte);font-size:12px;font-weight:700;fill:var(--zinc)}
.pic-point{cursor:pointer;outline:none}
.pic-point__halo{fill:rgba(31,95,191,.16);transition:r .15s}
.pic-point__dot{fill:var(--bleu);stroke:#fff;stroke-width:2.5}
.pic-point__nom{font-family:var(--texte);font-size:15px;font-weight:700;fill:var(--encre);paint-order:stroke;stroke:#fff;stroke-width:4px;stroke-linejoin:round;opacity:0;transition:opacity .15s;pointer-events:none}
.pic-point:hover .pic-point__nom,.pic-point:focus .pic-point__nom,.pic-point.est-survole .pic-point__nom,.pic-point.est-active .pic-point__nom{opacity:1}
.pic-point:hover .pic-point__dot,.pic-point.est-survole .pic-point__dot,.pic-point.est-active .pic-point__dot{fill:var(--meuliere-fonce)}
.pic-point.est-active .pic-point__halo{fill:rgba(185,119,62,.3)}
.pic-point--sans-lien{cursor:default}
.pic-carte__legende{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13.5px;color:var(--texte-2);padding:8px 6px 2px}
.pic-carte__cle{display:inline-block;width:14px;height:14px;border-radius:4px}
.pic-carte__cle--zone{background:#CFE4E8;border:1.5px solid var(--eau)}
.pic-carte__cle--point{border-radius:50%;background:var(--bleu);margin-left:10px}
.pic-chiffres{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}
.pic-zone .pic-chiffres strong{font-size:34px}
.pic-zone .pic-chiffres p{padding:10px 14px}
.pic-communes{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0 0 20px}
.pic-communes__titre{font-weight:700;margin:0 0 6px;padding-bottom:6px;border-bottom:2px solid var(--meuliere);font-size:15.5px}
.pic-communes__titre span{color:var(--texte-2);font-weight:400}
.pic-communes ul{list-style:none;columns:2;column-gap:14px}
.pic-communes li{font-size:15px;line-height:1.6;break-inside:avoid}
.pic-communes li a{color:var(--encre);text-decoration:none;border-bottom:1px solid var(--filet)}
.pic-communes li a:hover,.pic-communes li.est-survole a{color:var(--bleu);border-color:var(--bleu)}
.pic-communes li.est-survole span{color:var(--bleu)}
.pic-communes li.est-active{font-weight:700}

/* ---------- 16. FAQ (accueil) et accordéons ---------- */
.pic-faq__grille{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start}
.pic-faq__tete p{color:var(--texte-2)}
.pic-faq__photo{border-radius:var(--r-carte);overflow:hidden;height:200px;margin-top:8px}
.pic-faq__photo img{width:100%;height:100%;object-fit:cover}
.pic-question,.sbt-faq details,.pic-local-faq details,.pic-corps .faq details{border:1px solid var(--filet);border-radius:var(--r-carte);background:var(--blanc);margin:0 0 10px;overflow:hidden}
.pic-question summary,.sbt-faq summary,.pic-local-faq summary,.pic-corps .faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 18px;font-weight:700;font-size:16.5px;line-height:1.35}
.pic-question summary::-webkit-details-marker,.sbt-faq summary::-webkit-details-marker,.pic-volet summary::-webkit-details-marker,.pic-corps details summary::-webkit-details-marker{display:none}
.pic-question p,.sbt-faq details>*:not(summary),.pic-corps .faq details>*:not(summary){padding:0 18px;margin:0 0 14px;color:var(--texte-2);font-size:16px}
.pic-question[open],.sbt-faq details[open],.pic-corps .faq details[open]{border-color:var(--eau);box-shadow:inset 4px 0 0 var(--eau)}
.pic-volet__plus,.sbt-faq summary::after,.pic-corps .faq summary::after{position:relative;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:var(--crepi);border:1.5px solid var(--filet)}
.sbt-faq summary::after,.pic-corps .faq summary::after{content:"+";display:grid;place-items:center;font-size:20px;line-height:1;color:var(--eau-fonce)}
.pic-volet__plus::before,.pic-volet__plus::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;background:var(--eau-fonce);transform:translate(-50%,-50%)}
.pic-volet__plus::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .2s}
details[open]>summary .pic-volet__plus::after{transform:translate(-50%,-50%) rotate(0)}
.sbt-faq details[open] summary::after,.pic-corps .faq details[open] summary::after{content:"–"}
.sbt-faq,.sbt-faq-liste{margin:0 0 1.2em}

/* ---------- 17. Bande d'appel ---------- */
.pic-appel{padding-block:52px;overflow:hidden}
.pic-appel::before{content:"";position:absolute;left:0;right:0;top:0;height:12px;background:repeating-linear-gradient(90deg,#3E5560 0 2px,#2A424D 2px 34px,#344C57 34px 36px,#253C46 36px 68px)}
.pic-appel__grille{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.pic-appel__texte h2{margin:0 0 6px}
.pic-appel__texte p{margin:0;color:#C9D5D9;max-width:60ch}

/* ---------- 18. Cartes d'articles ---------- */
.pic-cartes-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pic-carte-article{background:var(--blanc);border-radius:var(--r-carte);overflow:hidden;box-shadow:var(--ombre);display:flex}
.pic-carte-article__lien{display:flex;flex-direction:column;width:100%;color:var(--encre);text-decoration:none}
.pic-carte-article__photo{display:block;height:190px;overflow:hidden;position:relative}
.pic-carte-article__photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.pic-carte-article__lien:hover img{transform:scale(1.03)}
.pic-carte-article__corps{display:flex;flex-direction:column;padding:16px 18px 18px;flex:1}
.pic-carte-article__titre{font-family:var(--titre);font-weight:600;font-size:24px;line-height:1.12;margin-bottom:10px}
.pic-carte-article__lien:hover .pic-carte-article__titre{color:var(--bleu)}
.pic-carte-article__meta{margin-top:auto;font-size:14px;color:var(--texte-2)}

/* ---------- 19. Article : en-tête soupirail ---------- */
.pic-article__grille{width:min(100% - 2*var(--marge),var(--cadre));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) 352px;column-gap:44px}
.pic-entete{margin-top:6px;padding-top:26px}
.pic-entete__grille{grid-template-rows:auto var(--sol) auto}
.pic-entete__titre{grid-column:1;grid-row:1;padding-bottom:24px}
.pic-entete__titre h1{font-size:clamp(36px,3.6vw,58px);margin-bottom:12px;max-width:26ch}
.pic-entete__chapo{font-size:18.5px;line-height:1.55;color:var(--encre-2);max-width:64ch;margin:0 0 14px}
.pic-entete__signe{display:flex;align-items:center;gap:10px;margin:0;font-size:15px;color:var(--texte-2)}
.pic-entete__signe a{color:var(--encre);font-weight:700}
.pic-entete__photo{grid-column:1;grid-row:3;padding-bottom:32px}
.pic-soupirail--article{height:clamp(240px,30vw,400px)}
.pic-enbref{grid-column:2;grid-row:2/4;align-self:start;margin-top:-58px;position:relative;z-index:2;background:var(--blanc);border-radius:var(--r-carte);box-shadow:var(--ombre-forte);padding:18px 20px;border-top:5px solid var(--meuliere)}
.pic-enbref__titre{font-family:var(--titre);font-weight:700;font-size:22px;margin:0 0 8px}
.pic-enbref dl{margin:0;display:grid;gap:0}
.pic-enbref dl div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--filet);font-size:15px}
.pic-enbref dt{color:var(--texte-2)}
.pic-enbref dd{margin:0;font-weight:700;text-align:right}
.pic-enbref dd a{color:var(--encre)}

/* ---------- 20. Article : corps + rail collant ---------- */
.pic-article__milieu{padding-block:8px 64px;align-items:start}
.pic-article__colonne{min-width:0}
.pic-corps{min-width:0;font-size:18px;line-height:1.7}
.pic-article .pic-corps{background:var(--blanc);border-radius:var(--r-carte);padding:44px 52px;box-shadow:var(--ombre)}
.pic-panneau{background:var(--blanc);border-radius:var(--r-carte);padding:40px 48px;box-shadow:var(--ombre)}
.pic-corps>*:first-child{margin-top:0}
.pic-corps>*:last-child{margin-bottom:0}
.pic-corps p,.pic-corps ul,.pic-corps ol{margin:0 0 1.05em}
.pic-corps h2{font-size:clamp(28px,2.3vw,36px);margin:1.6em 0 .5em;padding-top:.2em}
.pic-corps h3{font-size:24px;margin:1.3em 0 .4em}
.pic-corps ul,.pic-corps ol{padding-left:1.3em}
.pic-corps li{margin:.25em 0}
.pic-corps a{color:var(--bleu)}
.pic-corps img{border-radius:10px}
.pic-figure{margin:1.4em 0}
.pic-figure figcaption{font-size:14px;color:var(--texte-2);margin-top:6px}
.pic-corps .alerte{background:#FFF3E2;border:1.5px solid var(--meuliere);border-left-width:7px;border-radius:10px;padding:16px 20px;margin:1.2em 0}
.pic-corps .alerte p{margin:0}
.pic-corps .etapes{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:1.2em 0 1.5em}
.pic-corps .etape{background:var(--crepi);border-radius:10px;padding:16px 18px;border-top:4px solid var(--eau)}
.pic-corps .etape h3{font-size:21px;margin:0 0 6px}
.pic-corps .etape p{font-size:15.5px;line-height:1.5;margin:0;color:var(--texte-2)}
.pic-corps .sources,.pic-corps aside.sources{background:var(--crepi);border:1px solid var(--filet);border-radius:10px;padding:16px 20px;margin:1.5em 0 0;font-size:15px;line-height:1.55}
.pic-corps .sources p{margin:0 0 6px}
.pic-corps .sources a{word-break:break-word}
.pic-corps .sources-titre{font-family:var(--titre);font-size:20px}
.pic-corps table{border-collapse:collapse;width:100%;font-size:15.5px}
.pic-corps th,.pic-corps td{border-bottom:1px solid var(--filet);padding:10px 12px;text-align:left;vertical-align:top}
.pic-corps th{background:var(--crepi)}
.sbs_tableau{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.2em 0}
.sbs_tableau table{min-width:32rem}
.sbt-encadre{border-radius:10px;padding:18px 22px;margin:0 0 1.4em}
.sbt-encadre--retenir{background:var(--eau-pale);border-left:6px solid var(--eau)}
.sbt-encadre--saviez{background:var(--meuliere-pale);border-left:6px solid var(--meuliere);margin:1.4em 0}
.sbt-encadre-titre{font-family:var(--titre);font-weight:700;font-size:22px;margin:0 0 8px!important}
.pic-corps .sbt-retenir-liste{list-style:none;padding:0;margin:0}
.pic-corps .sbt-retenir-liste li{position:relative;padding-left:28px;margin:6px 0;font-size:16.5px;line-height:1.5}
.pic-corps .sbt-retenir-liste li::before{content:"";position:absolute;left:0;top:4px;width:18px;height:18px;border-radius:50%;background:var(--eau) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.4l2.6 2.5L12 5.4' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
sbs-jauges,.sbs_jauges{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:1.3em 0}
sbs-jauge,.sbs_jauge{display:flex;flex-direction:column;background:var(--encre);color:#DCE6E9;border-radius:10px;padding:16px 18px}
.sbs_jauges_titre{grid-column:1/-1;font-family:var(--titre);font-size:22px;color:var(--encre)}
.sbs_jauge_valeur{font-family:var(--titre);font-weight:700;font-size:40px;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.sbs_jauge_unite{font-size:14px;color:var(--eau-vive);font-weight:700}
.sbs_jauge_libelle{font-size:14.5px;line-height:1.4;margin-top:6px}
sbs-frise,.sbs_frise{display:block;border-left:3px solid var(--eau);padding-left:18px;margin:1.3em 0}
sbs-etape,.sbs_etape{display:block;margin:0 0 12px}
.sbs_etape_titre{font-weight:700;display:block}
sbs-tarifs,sbs-lieu{display:block;margin:1.3em 0}
.sbt-auteur{display:grid;grid-template-columns:120px minmax(0,1fr);gap:22px;background:var(--blanc);border-radius:var(--r-carte);box-shadow:var(--ombre);padding:24px 26px;margin-top:24px;border-top:5px solid var(--meuliere)}
.sbt-auteur-photo img,.sbt-auteur-photo .pic-portrait{width:120px;height:120px;border-radius:12px;object-fit:cover}
.sbt-auteur-sur{margin:0;font-size:13.5px;color:var(--texte-2)}
.sbt-auteur-nom{margin:0;font-family:var(--titre);font-weight:700;font-size:27px;line-height:1.1}
.sbt-auteur-nom a{color:var(--encre);text-decoration:none}
.sbt-auteur-role{margin:2px 0 8px;font-weight:700;font-size:14.5px;color:var(--eau-fonce)}
.sbt-auteur-bio{margin:0 0 10px;font-size:15.5px;color:var(--texte-2)}
.sbt-auteur-chiffres{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;color:var(--texte-2);margin-bottom:10px}
.sbt-auteur-der{display:flex;flex-direction:column;gap:2px;font-size:14.5px;margin-bottom:12px}
.sbt-auteur-der p{margin:0;font-weight:700}
.sbt-auteur-actions{display:flex;flex-wrap:wrap;gap:8px}
.sbt-btn{display:inline-flex;align-items:center;min-height:40px;padding:8px 14px;border-radius:var(--r-btn);background:var(--bleu);color:#fff;font-weight:700;font-size:14.5px;text-decoration:none;border:2px solid var(--bleu)}
.sbt-btn:hover{background:var(--bleu-fonce);color:#fff}
.sbt-btn--fantome{background:transparent;color:var(--bleu)}
.pic-rail{min-width:0;align-self:stretch}
.pic-rail__bloc{position:sticky;top:calc(var(--tete) + 16px);display:flex;flex-direction:column;gap:12px}
.pic-lecture{background:var(--blanc);border-radius:var(--r-carte);padding:12px 16px;box-shadow:var(--ombre)}
.pic-lecture p{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 8px;font-size:14px;color:var(--texte-2)}
.pic-lecture strong{color:var(--encre);font-size:15px}
.pic-lecture__piste{display:block;height:8px;border-radius:4px;background:var(--sous-sol);overflow:hidden}
.pic-lecture__eau{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--eau),var(--eau-vive))}
.pic-sommaire{background:var(--blanc);border-radius:var(--r-carte);padding:14px 16px 10px;box-shadow:var(--ombre)}
.pic-sommaire__titre{font-family:var(--titre);font-weight:700;font-size:20px;margin:0 0 6px}
.pic-sommaire ol{list-style:none;counter-reset:s;margin:0;padding:0}
.pic-sommaire li{counter-increment:s;margin:0}
.pic-sommaire a{display:flex;gap:8px;padding:4px 0 4px 8px;font-size:14px;line-height:1.3;color:var(--encre);text-decoration:none;border-left:3px solid transparent}
.pic-sommaire a::before{content:counter(s);font-weight:700;color:var(--zinc);min-width:16px}
.pic-sommaire a:hover,.pic-sommaire a.est-actif{border-left-color:var(--eau);color:var(--eau-fonce);font-weight:700}
.pic-sommaire--page{margin:0 0 20px}
.pic-sommaire--page .pic-sommaire__h3 a{padding-left:24px}
.pic-lire-aussi h2{margin-bottom:18px}
.pic-lire-aussi--1 .pic-cartes-3{grid-template-columns:minmax(0,1fr)}
.pic-lire-aussi--2 .pic-cartes-3{grid-template-columns:repeat(2,minmax(0,1fr))}

/* ---------- 21. Pages intérieures : hero local / hub / devis / qsn ---------- */
.pic-local-hero{padding-top:22px}
.pic-local-hero__grille{display:grid;grid-template-columns:minmax(0,1fr) 404px;grid-template-rows:auto var(--sol) auto;column-gap:56px}
.pic-local-hero__texte{grid-column:1;grid-row:1;padding-bottom:22px;align-self:end}
.pic-local-hero__texte h1{font-size:clamp(36px,3.7vw,60px);margin-bottom:12px}
.pic-local-hero__chapo{font-size:17.5px;line-height:1.55;color:var(--encre-2);max-width:68ch}
.pic-local-hero__chapo p{margin:0 0 12px}
.pic-local-hero__photo{grid-column:1;grid-row:3;padding:22px 0 30px}
.pic-local-hero .pic-place{grid-column:2;grid-row:1/4;position:relative;z-index:3;min-height:650px}
.pic-local-hero .pic-place>.pic-carte-form{top:2px}
.pic-local-hero__cote{grid-column:2;grid-row:1/4;align-self:center;position:relative;z-index:3}
.pic-faits{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 0}
.pic-faits li{display:flex;flex-direction:column;background:rgba(255,255,255,.75);border:1px solid var(--filet);border-radius:10px;padding:8px 14px}
.pic-faits strong{font-family:var(--titre);font-size:22px;line-height:1.1}
.pic-faits span{font-size:13px;color:var(--texte-2)}
.pic-photo-commune{margin:0;border-radius:var(--r-carte);overflow:hidden;height:clamp(200px,20vw,280px);background:var(--sous-sol);display:flex;flex-direction:column;box-shadow:var(--ombre)}
.pic-photo-commune img{flex:1;min-height:0;width:100%;object-fit:cover}
.pic-photo-commune .pic-credit{margin:0;padding:6px 12px;background:rgba(255,255,255,.92);font-size:12.5px}
.pic-local-corps__grille{display:grid;grid-template-columns:minmax(0,1fr) 404px;gap:44px;align-items:start}
.pic-local-corps__texte{min-width:0}
.pic-volets{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}
.pic-volet-intro{font-size:17.5px;line-height:1.65}
.pic-volet{background:var(--crepi);border-radius:var(--r-carte);border:1px solid var(--filet);overflow:hidden}
.pic-volet summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px}
.pic-volet summary h2{margin:0;font-size:clamp(23px,1.8vw,28px);line-height:1.15}
.pic-volet[open]{background:var(--blanc);box-shadow:var(--ombre);border-color:transparent}
.pic-volet[open] summary{border-bottom:1px solid var(--filet)}
.pic-volet__corps{padding:16px 22px 6px;font-size:17px;line-height:1.68}
.pic-volet__corps p{margin:0 0 1em}
.pic-local-faq{margin:0 0 20px}
.pic-local-faq h2{font-size:30px}
.pic-rail--local .pic-rail__bloc{gap:0}
.pic-voisines__grille{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:48px;align-items:center}
.pic-voisines__cartes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 20px}
.pic-voisine{display:flex;flex-direction:column;background:var(--blanc);border-radius:var(--r-carte);overflow:hidden;box-shadow:var(--ombre);color:var(--encre);text-decoration:none}
.pic-voisine__photo{display:block;height:140px;overflow:hidden}
.pic-voisine__photo img{width:100%;height:100%;object-fit:cover}
.pic-voisine__nom{font-family:var(--titre);font-weight:600;font-size:22px;line-height:1.1;padding:12px 14px 2px}
.pic-voisine__km{font-size:14px;color:var(--texte-2);padding:0 14px 14px}
a.pic-voisine:hover .pic-voisine__nom{color:var(--bleu)}
.pic-hub-grille{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.pic-voisine--hub .pic-voisine__photo{height:120px}
.pic-chiffres--hero{margin:0;max-width:640px}
.pic-suite{list-style:none;counter-reset:etape;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:820px}
.pic-suite li{counter-increment:etape;background:rgba(255,255,255,.78);border:1px solid var(--filet);border-radius:var(--r-carte);padding:14px 16px;display:flex;flex-direction:column;gap:4px;font-size:15px;line-height:1.45;color:var(--texte-2)}
.pic-suite li::before{content:counter(etape);display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--eau);color:#fff;font-weight:700;margin-bottom:4px}
.pic-suite strong{color:var(--encre);font-size:16px}
.pic-deux{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:center}
.pic-deux__photo{border-radius:var(--r-carte);overflow:hidden;height:380px}
.pic-deux__photo img{width:100%;height:100%;object-fit:cover}
.pic-gestes{list-style:none;display:grid;gap:10px;margin:0 0 18px}
.pic-gestes li{background:var(--crepi);border-radius:10px;padding:12px 16px 12px 46px;position:relative;font-size:16px;line-height:1.5}
.pic-gestes li::before{content:"";position:absolute;left:14px;top:15px;width:20px;height:20px;border-radius:50%;background:var(--eau) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.4l2.6 2.5L12 5.4' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.pic-corps--court{font-size:16px;margin-bottom:16px}
.pic-local-hero__grille--sans-form{grid-template-columns:minmax(0,1fr) 380px}
.pic-soupirail--large{height:clamp(220px,22vw,320px)}
.pic-resume{background:var(--blanc);border-radius:var(--r-form);box-shadow:var(--ombre-forte);padding:22px 24px;border-top:5px solid var(--eau)}
.pic-resume__titre{font-family:var(--titre);font-weight:700;font-size:25px;margin:0 0 10px}
.pic-resume ul{list-style:none;display:grid;gap:8px;margin:0 0 16px}
.pic-resume li{padding-left:26px;position:relative;font-size:15.5px;line-height:1.45}
.pic-resume li::before{content:"";position:absolute;left:0;top:3px;width:16px;height:16px;border-radius:50%;background:var(--eau)}
.pic-resume .pic-btn{width:100%}
.pic-personnes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.pic-personne{display:flex;gap:18px;align-items:flex-start;background:var(--blanc);border-radius:var(--r-carte);box-shadow:var(--ombre);padding:20px;color:var(--encre);text-decoration:none}
.pic-personne>span{display:flex;flex-direction:column;gap:2px}
.pic-personne strong{font-family:var(--titre);font-size:26px;line-height:1.1}
.pic-personne em{font-style:normal;font-weight:700;color:var(--eau-fonce);font-size:14.5px}
.pic-personne span span{font-size:15px;color:var(--texte-2);line-height:1.5;margin-top:4px}
.pic-personne small{font-size:13.5px;color:var(--texte-2);margin-top:6px}
.pic-personnes--grand{margin-bottom:28px}
.pic-portrait{border-radius:12px;object-fit:cover;flex:0 0 auto}
.pic-portrait--initiales{display:grid;place-items:center;background:var(--eau);color:#fff;font-family:var(--titre);font-weight:700;font-size:28px}
.pic-entete__signe .pic-portrait{border-radius:50%}
.pic-entete__signe .pic-portrait--initiales{font-size:14px}
.pic-local-hero--simple{padding:26px 0 0}
.pic-local-hero--simple .pic-cadre{padding-bottom:26px}
.pic-local-hero--simple h1{font-size:clamp(36px,3.6vw,56px)}
.pic-local-hero--simple .pic-cadre>p{max-width:70ch;color:var(--encre-2)}
.pic-local-hero--simple>.pic-sol::before{left:0;width:100%}
.pic-auteur-tete{display:flex;gap:32px;align-items:center;padding:8px 0 30px}
.pic-auteur-tete .pic-portrait{width:168px;height:168px}
.pic-auteur-tete__role{font-weight:700;color:var(--eau-fonce);margin:0 0 8px}
.pic-local-hero--auteur>.pic-sol::before{left:0;width:100%}
.pic-credits{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pic-credit-ligne{display:flex;gap:14px;align-items:center;background:var(--crepi);border-radius:10px;padding:10px}
.pic-credit-ligne img{width:120px;height:84px;object-fit:cover;border-radius:8px;flex:0 0 120px}
.pic-credit-ligne>span{display:flex;flex-direction:column;font-size:14px;line-height:1.4;gap:2px;min-width:0}
.pic-credit-ligne strong{font-size:14.5px}
.pic-recherche{display:flex;gap:10px;max-width:640px}
.pic-recherche input{flex:1;min-width:0;height:48px;padding:8px 14px;border:1.5px solid #CFC5B5;border-radius:var(--r-btn);background:#fff}
.pic-vide__liens{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.pic-vide__ligne{color:var(--texte-2);margin:0 0 12px;flex-basis:100%}

/* ---------- 22. Rubrique (liste des guides) ---------- */
.pic-rubrique-tete{padding-top:24px}
.pic-rubrique-tete__grille{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto var(--sol) auto;column-gap:40px}
.pic-rubrique-tete__texte{grid-column:1;grid-row:1;padding-bottom:24px}
.pic-rubrique-tete__texte h1{font-size:clamp(40px,4vw,66px);margin-bottom:10px}
.pic-rubrique-tete__texte p{font-size:18px;max-width:62ch;margin:0;color:var(--encre-2)}
.pic-rubrique-tete__compte{grid-column:2;grid-row:1;align-self:end;margin:0 0 24px;display:flex;flex-direction:column;align-items:flex-end}
.pic-rubrique-tete__compte strong{font-family:var(--titre);font-size:72px;line-height:.9;color:var(--eau)}
.pic-rubrique-tete__compte span{font-size:14.5px;color:var(--texte-2)}
.pic-onglets{grid-column:1/-1;grid-row:3;display:flex;flex-wrap:wrap;gap:8px;padding:16px 0 20px}
.pic-onglets a{padding:9px 16px;border-radius:var(--r-btn);background:rgba(255,255,255,.7);border:1px solid var(--filet);color:var(--encre);font-weight:700;text-decoration:none;font-size:15.5px}
.pic-onglets a[aria-current="page"]{background:var(--encre);color:#fff;border-color:var(--encre)}
.pic-une{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px;align-items:center;color:var(--encre);text-decoration:none;margin-bottom:36px}
.pic-soupirail--une{height:clamp(260px,26vw,380px)}
.pic-une__texte{display:flex;flex-direction:column;gap:8px}
.pic-une__titre{font-family:var(--titre);font-weight:700;font-size:clamp(30px,2.6vw,42px);line-height:1.05}
.pic-une:hover .pic-une__titre{color:var(--bleu)}
.pic-une__chapo{color:var(--texte-2)}
.pic-rangs{list-style:none;border-top:2px solid var(--encre)}
.pic-rang{display:grid;grid-template-columns:150px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:22px;padding:16px 0;border-bottom:1px solid var(--filet);color:var(--encre);text-decoration:none;align-items:center}
.pic-rang__photo{grid-row:1/3;height:96px;border-radius:10px;overflow:hidden}
.pic-rang__photo img{width:100%;height:100%;object-fit:cover}
.pic-rang__titre{font-family:var(--titre);font-weight:600;font-size:25px;line-height:1.1;align-self:end}
.pic-rang__chapo{font-size:15px;color:var(--texte-2);align-self:start}
.pic-rang__meta{grid-column:3;grid-row:1/3;font-weight:700;color:var(--eau-fonce);font-size:15px}
.pic-rang:hover .pic-rang__titre{color:var(--bleu)}
.pic-vide{display:grid;grid-template-columns:minmax(0,1fr) 404px;gap:56px;align-items:start}
.pic-vide__texte{padding-top:8px}
.pic-vide__texte p{color:var(--texte-2);max-width:52ch}

/* ---------- 23. Pied de page ---------- */
.pic-pied{background:var(--encre);color:#C9D5D9;margin-top:0;flex:0 0 auto}
.pic-pied .pic-sol::before{left:0;width:100%;filter:brightness(.8)}
.pic-pied__grille{width:min(100% - 2*var(--marge),var(--cadre));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.85fr) minmax(0,1.5fr);gap:48px;padding:52px 0 36px}
.pic-pied__marque p{font-size:15px;line-height:1.6;margin:16px 0 18px;max-width:40ch}
.pic-pied__titre{font-family:var(--titre);font-weight:600;font-size:21px;color:#fff;margin:0 0 10px}
.pic-pied__titre a{color:#fff;text-decoration:none}
.pic-pied__col ul{list-style:none;margin:0 0 22px}
.pic-pied__col li{margin:0 0 7px;font-size:15px}
.pic-pied a{color:#E4ECEE;text-decoration:none}
.pic-pied a:hover{color:#fff;text-decoration:underline}
.pic-pied__communes{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.pic-pied__communes ul{margin:0}
.pic-pied__communes li{break-inside:avoid;font-size:14.5px}
.pic-pied__communes span{color:#C9D5D9}
.pic-pied__dep{font-weight:700;color:var(--eau-vive);font-size:14.5px;margin:0 0 8px}
.pic-pied__bas{border-top:1px solid #2B444F;width:min(100% - 2*var(--marge),var(--cadre));margin-inline:auto;padding:16px 0 20px}
.pic-pied__bas p{margin:0;font-size:13.5px;color:#AEBEC3}

/* ---------- 24. Grand écran ---------- */
@media (min-width:1700px){
	.pic-hero__grille{grid-template-columns:minmax(0,1fr) 210px 240px minmax(320px,.62fr);grid-template-rows:auto var(--sol) minmax(310px,auto)}
	.pic-carte-form{padding:22px 24px 24px}
}

/* ---------- 25. Tablette ---------- */
@media (max-width:1199px){
	.pic-hero__grille{grid-template-columns:minmax(0,1fr) 400px;grid-template-rows:auto var(--sol) auto auto}
	.pic-hero__texte{grid-column:1;padding-right:32px}
	.pic-hero__facade{display:none}
	.pic-hero__sous{grid-column:1;grid-row:3}
	.pic-hero__cave{grid-column:1/-1;grid-row:4;padding-top:6px}
	.pic-soupirail--hero{min-height:280px}
	.pic-hero .pic-place{grid-column:2;grid-row:1/4}
	.pic-origines__grille{grid-template-columns:repeat(2,minmax(0,1fr))}
	.pic-hub-grille{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:999px){
	.pic-burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:46px;height:46px;margin-left:auto;background:var(--blanc);border:1px solid var(--filet);border-radius:var(--r-btn);cursor:pointer;padding:0 11px}
	.pic-burger span{display:block;width:22px;height:2px;background:var(--encre);border-radius:2px}
	.pic-tete__devis{display:none}
	.pic-nav{position:fixed;left:0;right:0;top:var(--tete);bottom:0;background:var(--crepi);padding:20px var(--marge) 32px;display:none;flex-direction:column;justify-content:flex-start;gap:18px;overflow-y:auto}
	.pic-nav.est-ouvert{display:flex}
	.pic-nav>ul{flex-direction:column;align-items:stretch;gap:2px}
	.pic-nav a,.pic-nav__ouvrir{font-size:19px;padding:14px 8px;width:100%}
	.pic-nav__sous{position:static;display:block;box-shadow:none;border:0;background:transparent;padding:0 0 0 14px}
	.pic-nav__ouvrir .pic-nav__chevron{display:none}
	.pic-nav .pic-nav__devis-mobile{display:flex}
	.pic-marque__nom{font-size:21px}
	.pic-calcul__grille,.pic-zone__grille,.pic-faq__grille,.pic-voisines__grille,.pic-deux,.pic-une{grid-template-columns:minmax(0,1fr);gap:32px}
	.pic-zone__carte{order:2}
	.pic-eaux__grille,.pic-cartes-3{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
	.pic-tete-section--ligne{grid-template-columns:minmax(0,1fr);gap:8px}
	.pic-article__grille{grid-template-columns:minmax(0,1fr)}
	.pic-enbref{grid-column:1;grid-row:auto;margin:-40px 16px 24px;order:3}
	.pic-entete__photo{padding-bottom:0}
	.pic-rail__bloc{position:static}
	.pic-sommaire{display:none}
	.pic-local-hero__grille,.pic-local-hero__grille--sans-form,.pic-local-corps__grille,.pic-vide{grid-template-columns:minmax(0,1fr)}
	.pic-local-hero .pic-place,.pic-local-hero__cote{grid-column:1;grid-row:auto;margin:-26px 0 18px;min-height:0}
	.pic-place>.pic-carte-form{position:relative;top:auto}
	.pic-local-hero__photo{grid-row:auto;padding-top:0}
	.pic-pied__grille{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
	.pic-pied__zone{grid-column:1/-1}
	.pic-personnes,.pic-credits{grid-template-columns:minmax(0,1fr)}
}

/* ---------- 26. Mobile ---------- */
@media (max-width:759px){
	body{font-size:16.5px}
	.pic-marque__nom small{display:none}
	.pic-marque__logo{width:40px;height:40px}
	.pic-hero__grille{grid-template-columns:minmax(0,1fr);grid-template-rows:none}
	.pic-hero__texte{grid-column:1;grid-row:auto;padding:22px 0 20px}
	.pic-hero__titre{font-size:clamp(38px,11vw,48px)}
	.pic-hero .pic-sol--grille{grid-row:auto}
	.pic-hero .pic-place{grid-column:1;grid-row:auto;margin:-22px 0 8px}
	.pic-hero__sous{grid-row:auto;padding:16px 0 18px}
	.pic-hero__chapo{font-size:16.5px}
	.pic-hero__cave{grid-row:auto;padding-bottom:22px}
	.pic-soupirail--hero{min-height:220px}
	.pic-carte-form{padding:16px 14px 16px;border-radius:18px}
	.pic-quiz__titre{font-size:22px;margin-bottom:10px}
	.pic-quiz__pastilles{gap:4px}
	.pic-quiz__pastilles li{font-size:12px;padding:4px;gap:4px}
	.pic-quiz__pastilles li span{flex-basis:20px;width:20px;height:20px}
	.pic-quiz__q{font-size:21px;margin-bottom:10px}
	.pic-opt{min-height:52px;font-size:15px}
	.pic-champ input,.pic-champ select{font-size:16px}
	.pic-calcul__champs,.pic-calcul__resultats,.pic-chiffres{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
	.pic-calcul__resultats strong,.pic-chiffres strong{font-size:30px}
	.pic-calcul__resultats p,.pic-chiffres p{padding:10px}
	.pic-calcul__outil{padding:18px 14px}
	.pic-origines__grille,.pic-eaux__grille,.pic-cartes-3,.pic-voisines__cartes,.pic-hub-grille,.pic-suite{grid-template-columns:minmax(0,1fr)}
	.pic-hub-grille{grid-template-columns:repeat(2,minmax(0,1fr))}
	.pic-communes ul{columns:1}
	.pic-article .pic-corps,.pic-panneau{padding:24px 18px}
	.pic-corps{font-size:17px}
	.pic-soupirail--article{height:220px}
	.sbt-auteur{grid-template-columns:minmax(0,1fr);padding:20px}
	.pic-appel__grille{flex-direction:column;align-items:flex-start}
	.pic-pied__grille{grid-template-columns:minmax(0,1fr);gap:28px}
	.pic-pied__communes{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
	.pic-pied__communes ul{columns:1}
	.pic-rang{grid-template-columns:96px minmax(0,1fr);column-gap:14px}
	.pic-rang__photo{height:72px}
	.pic-rang__titre{font-size:21px}
	.pic-rang__meta{display:none}
	.pic-rubrique-tete__grille{grid-template-columns:minmax(0,1fr)}
	.pic-rubrique-tete__compte{display:none}
	.pic-auteur-tete{flex-direction:column;align-items:flex-start}
	.pic-auteur-tete .pic-portrait{width:120px;height:120px}
	.pic-echelle{right:14px}
	.pic-recherche{flex-direction:column}
}

/* ---------- 27. Ordre d'empilement mobile : le formulaire juste sous la ligne de sol ---------- */
@media (max-width:999px){
	.pic-local-hero__texte{order:1}
	.pic-local-hero .pic-sol--grille{order:2}
	.pic-local-hero .pic-place,.pic-local-hero__cote{order:3}
	.pic-local-hero__photo{order:4}
}
@media (max-width:759px){
	.pic-hero__texte{order:1}
	.pic-hero .pic-sol--grille{order:2}
	.pic-hero .pic-place{order:3}
	.pic-hero__sous{order:4}
	.pic-hero__cave{order:5}
}
@media (max-width:999px){
	.pic-local-hero__grille{grid-template-rows:none}
	.pic-local-hero__texte{display:contents}
	.pic-local-hero__texte>.pic-ariane{order:0;grid-column:1}
	.pic-local-hero__texte>h1{order:1;grid-column:1;margin-bottom:18px}
	.pic-local-hero .pic-sol--grille{grid-row:auto}
	.pic-local-hero__texte>.pic-local-hero__chapo{order:4;grid-column:1;margin-top:4px}
	.pic-local-hero__texte>.pic-faits{order:5;grid-column:1;margin-bottom:18px}
	.pic-local-hero__photo{order:6}
}

/* ---------- 28. Mention de confidentialité des formulaires ---------- */
.pic-rgpd{margin:2px 0 0;font-size:12.5px;line-height:1.4;color:var(--texte-2)}
.pic-rgpd--clair{color:#AFC0C5;margin-top:8px}

/* ---------- 29. Rail d'article compact (bloc collant plus court que la fenêtre) ---------- */
.pic-rail .pic-court__texte{display:none}
.pic-rail__bloc{gap:10px}
.pic-lecture{padding:10px 14px}
.pic-lecture p{margin-bottom:6px}
.pic-sommaire{padding:12px 14px 8px}
.pic-sommaire__titre{font-size:19px;margin-bottom:4px}
.pic-sommaire a{padding:3px 0 3px 8px;font-size:13.5px;line-height:1.28}
.pic-sommaire a span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pic-court{padding:14px 16px 14px}
.pic-court__titre{font-size:21px;margin-bottom:10px}
.pic-court__lien{margin-top:6px}

/* ---------- 30. Passe 1 (03/11/2026) : frise des étapes, photo de commune en bande, façade mobile ---------- */
/* Étapes d'article : une étape par rangée, le tuyau de pompe relie les raccords (pastilles) */
.pic-corps .etapes{display:block;margin:1.4em 0 1.7em;padding:0}
.pic-corps .etape{display:grid;grid-template-columns:180px minmax(0,1fr);column-gap:28px;row-gap:10px;align-items:start;position:relative;background:none;border:0;border-radius:0;padding:16px 0 16px 42px}
.pic-corps .etape+.etape{border-top:1px solid var(--filet)}
.pic-corps .etape::before{content:"";position:absolute;left:0;top:17px;width:26px;height:26px;box-sizing:border-box;border-radius:50%;background:var(--blanc);border:5px solid var(--eau);box-shadow:0 0 0 3px var(--blanc);z-index:1}
.pic-corps .etape:not(:last-child)::after{content:"";position:absolute;left:11px;top:30px;bottom:-30px;width:4px;background:var(--eau);border-radius:2px}
.pic-corps .etape h3{grid-column:1;grid-row:1;margin:0;padding-top:2px;font-size:21px;line-height:1.12;color:var(--encre)}
.pic-corps .etape>:not(h3){grid-column:2;margin:0}
.pic-corps .etape p{font-size:16.5px;line-height:1.55;color:var(--texte-2)}
.pic-corps .comparatif{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start;margin:1.2em 0 1.5em}
.pic-corps .comparatif:has(>.option:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.pic-corps .option{background:var(--crepi);border-left:4px solid var(--meuliere);border-radius:0 10px 10px 0;padding:14px 18px}
.pic-corps .option h3{font-size:20px;margin:0 0 4px}
.pic-corps .option p{margin:0;font-size:16px;line-height:1.5;color:var(--texte-2)}
@media (max-width:640px){
	.pic-corps .etape{grid-template-columns:minmax(0,1fr);padding-left:40px}
	.pic-corps .etape h3{grid-row:auto;font-size:20px}
	.pic-corps .etape>:not(h3){grid-column:1}
	.pic-corps .comparatif:has(>.option:nth-child(2):last-child){grid-template-columns:minmax(0,1fr)}
}
/* Pages ville : la photo de la commune passe en bande pleine largeur sous la rangée texte + formulaire */
@media (min-width:1000px){
	.pic-main--local .pic-local-hero__grille{grid-template-rows:auto var(--sol) auto}
	.pic-main--local .pic-local-hero .pic-place{grid-row:1/3;min-height:0}
	.pic-main--local .pic-local-hero__texte{align-self:start}
	.pic-main--local .pic-local-hero .pic-place>.pic-carte-form{position:relative;top:2px}
	.pic-main--local .pic-local-hero__photo{grid-column:1/-1;grid-row:3;padding:26px 0 34px}
	.pic-main--local .pic-photo-commune{height:clamp(300px,23vw,340px)}
	.pic-main--local .pic-photo-commune img{object-position:center 55%}
}
/* Accueil : la façade en meulière reste visible sous 1200 px, posée sur la ligne de sol */
@media (min-width:760px) and (max-width:1199px){
	.pic-hero__grille{grid-template-rows:auto auto var(--sol) auto auto}
	.pic-hero__facade{display:block;grid-column:1;grid-row:2;margin:0 32px 0 0;height:150px;min-height:0}
	.pic-hero .pic-sol--grille{grid-row:3}
	.pic-hero__sous{grid-row:4}
	.pic-hero__cave{grid-row:5}
	.pic-hero .pic-place{grid-row:1/5}
}
@media (max-width:759px){
	.pic-hero__facade{display:block;grid-column:1;grid-row:auto;order:1;margin:0;height:136px;min-height:0;border-radius:12px 12px 0 0}
}

/* signature des pages ville (03/11) */
.pic-signature{margin:28px 0 0;padding-top:16px;border-top:1px solid rgba(20,38,46,.14);font-size:.9rem;color:#4a5a60}
.pic-signature a{color:#1F5FBF;font-weight:600}
.pic-meme-sujet{margin:28px 0;padding:16px 20px;border-left:4px solid #2F7F8F;background:#F4EFE6;border-radius:10px}
.pic-meme-sujet p{margin:0}

/* ---------- 31. Passe 2 (03/11/2026) : hero en une scène, barreaux, photos, cartes, fonds, bouton, menu ---------- */
/* Bouton et accents : bleu canard foncé de la palette (blanc dessus : APCA Lc 90) */
:root{--bleu:#1F5E6B;--bleu-fonce:#174A55;--bleu-pale:#DCEBEE}
.pic-signature a{color:var(--eau-fonce)}
.pic-bande--encre .pic-btn--plein,.pic-appel .pic-btn--plein{background:#A6D8E0;color:var(--encre)}
.pic-bande--encre .pic-btn--plein:hover,.pic-appel .pic-btn--plein:hover{background:#7CC3CF;color:var(--encre)}

/* Menu sur une ligne de 1000 à 1360 px */
.pic-nav a{white-space:nowrap}
@media (min-width:1000px) and (max-width:1360px){
	.pic-tete__barre{gap:16px}
	.pic-nav>ul{gap:2px}
	.pic-nav a{padding:10px 9px;font-size:15.5px}
	.pic-tete__devis{padding:10px 16px;font-size:15.5px}
	.pic-marque__nom{font-size:21px}
}
@media (min-width:1000px) and (max-width:1120px){
	.pic-marque__nom small{display:none}
	.pic-nav a{padding:10px 7px;font-size:15px}
}

/* HERO accueil : UNE scène. Gauche = titre, chapô, réassurances. Droite = l'arche de cave
   avec sa jauge ; la carte du formulaire est posée à cheval sur le bord gauche de l'arche
   et sur la ligne de sol. */
.pic-hero--scene .pic-hero__grille{grid-template-columns:minmax(0,1fr) clamp(150px,15vw,230px) 45%;grid-template-rows:auto var(--sol) auto}
.pic-hero--scene .pic-hero__texte{grid-column:1;grid-row:1;padding:34px 32px 24px 0}
.pic-hero--scene .pic-hero__sous{grid-column:1;grid-row:3;padding:24px 32px 30px 0}
.pic-hero--scene .pic-hero__preuves{flex-direction:column;align-items:flex-start;gap:8px}
.pic-hero--scene .pic-hero__cave{grid-column:3;grid-row:1/4;padding:26px 0 28px;display:flex;position:relative;z-index:2}
.pic-hero--scene .pic-soupirail--hero{flex:1;min-height:0;height:auto}
.pic-hero--scene .pic-soupirail--hero .pic-soupirail__baie img{object-position:0% 60%}
.pic-hero--scene .pic-place{grid-column:2/4;grid-row:1/4;position:relative;z-index:4;margin:0}
.pic-hero--scene .pic-place>.pic-carte-form{position:absolute;top:56px;left:0;right:auto;width:clamp(360px,28vw,410px)}
@media (min-width:1200px){
	.pic-hero--scene .pic-hero__cave{margin-right:calc(-1 * clamp(0px, (100vw - var(--cadre)) / 2 - 40px, 140px))}
}
/* Barreaux : signature du seul hero, deux barreaux fins collés aux bords de l'arche */
.pic-soupirail--hero .pic-soupirail__barreaux{justify-content:space-between;padding:0 17% 0 3%}
.pic-soupirail--hero .pic-soupirail__barreaux i{width:4px;opacity:.85}
.pic-soupirail--hero .pic-soupirail__barreaux i:nth-child(2){display:none}

@media (min-width:760px) and (max-width:1199px){
	.pic-hero--scene .pic-hero__grille{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto var(--sol) auto auto;column-gap:28px}
	.pic-hero--scene .pic-hero__texte{grid-column:1;grid-row:1;padding:30px 0 22px}
	.pic-hero--scene .pic-hero__cave{grid-column:2;grid-row:1/4;padding:24px 0 24px}
	.pic-hero--scene .pic-place{grid-column:1;grid-row:3;margin:-8px -64px 24px 0;z-index:4}
	.pic-hero--scene .pic-place>.pic-carte-form{position:relative;top:auto;width:auto}
	.pic-hero--scene .pic-hero__sous{grid-column:1/-1;grid-row:4;padding:0 0 30px}
	.pic-hero--scene .pic-hero__preuves{flex-direction:row}
}
@media (max-width:759px){
	.pic-hero--scene .pic-hero__grille{grid-template-columns:minmax(0,1fr);grid-template-rows:none;column-gap:0}
	.pic-hero--scene .pic-hero__texte{order:1;grid-column:1;grid-row:auto;padding:20px 0 16px}
	.pic-hero--scene .pic-hero__cave{order:2;grid-column:1;grid-row:auto;padding:0;z-index:1}
	.pic-hero--scene .pic-soupirail--hero{height:172px;padding:8px 8px 0;border-radius:50% 50% 0 0/22px 22px 0 0}
	.pic-hero--scene .pic-soupirail--hero .pic-soupirail__baie{min-height:0;border-radius:50% 50% 4px 4px/18px 18px 4px 4px}
	.pic-hero--scene .pic-soupirail--hero .pic-soupirail__baie img{object-position:30% 70%}
	.pic-hero--scene .pic-echelle{top:16%;right:14px;bottom:2px;padding:2px 0}
	.pic-hero--scene .pic-echelle i{font-size:10.5px}
	.pic-hero--scene .pic-sol--grille{order:3;grid-row:auto}
	.pic-hero--scene .pic-place{order:4;grid-column:1;grid-row:auto;margin:-8px 0 8px}
	.pic-hero--scene .pic-place>.pic-carte-form{position:relative;top:auto;width:auto}
	.pic-hero--scene .pic-hero__sous{order:5;grid-column:1;grid-row:auto;padding:14px 0 20px}
}

/* Arches hors hero : cadre seul, aucun barreau (le PHP ne les pose plus) */
.pic-soupirail:not(.pic-soupirail--hero) .pic-soupirail__barreaux{display:none}

/* Photos du corps d'article : hauteur bornée, toujours entières dans la fenêtre */
.pic-corps figure img,.pic-corps .wp-block-image img,.pic-corps p>img,.pic-corps>img{display:block;width:100%;height:auto;aspect-ratio:3/2;max-height:min(480px,72vh);object-fit:cover;object-position:center 45%}
.pic-corps figure{max-width:100%}

/* Pastilles posées sur les photos des cartes */
.pic-carte-article__photo,.pic-origine__photo{position:relative}
.pic-etiquette--photo{position:absolute;left:12px;top:12px;z-index:2;margin:0;background:rgba(255,255,255,.95);color:var(--encre);box-shadow:0 2px 8px rgba(20,38,46,.22);border-left:4px solid var(--meuliere)}
.pic-origine__photo{height:150px}

/* Grilles de cartes sans case vide : 3 par rangée, et le reste se partage la rangée */
@media (min-width:1000px){
	.pic-cartes-3,.pic-lire-aussi .pic-cartes-3{grid-template-columns:repeat(6,minmax(0,1fr))}
	.pic-cartes-3>*{grid-column:span 2}
	.pic-cartes-3>:first-child:nth-last-child(3n+2),.pic-cartes-3>:nth-child(2):nth-last-child(3n+1){grid-column:span 3}
	.pic-cartes-3>:first-child:nth-last-child(3n+2) .pic-carte-article__photo,.pic-cartes-3>:nth-child(2):nth-last-child(3n+1) .pic-carte-article__photo{height:240px}
	.pic-cartes-3>:first-child:nth-last-child(3n+1){grid-column:1/-1}
	.pic-cartes-3>:first-child:nth-last-child(3n+1) .pic-carte-article__lien{flex-direction:row}
	.pic-cartes-3>:first-child:nth-last-child(3n+1) .pic-carte-article__photo{flex:0 0 46%;height:auto;min-height:240px}
	.pic-cartes-3>:first-child:nth-last-child(3n+1) .pic-carte-article__corps{justify-content:center;padding:24px 28px}
}
@media (min-width:760px) and (max-width:999px){
	.pic-cartes-3>:last-child:nth-child(odd){grid-column:1/-1}
}

/* Rubrique : sous la une, de vraies cartes */
.pic-etagere__titre{font-size:clamp(24px,2vw,30px);margin:8px 0 18px;padding-top:22px;border-top:2px solid var(--encre)}
.pic-cartes-3--rubrique .pic-carte-article__titre{font-size:23px}

/* Accueil, moitié basse : fonds qui alternent (blanc, bleu canard pâle, crépi) */
.pic-bande--eau{background-color:var(--eau-pale);background-image:radial-gradient(rgba(31,94,107,.07) 1px,transparent 1.6px);background-size:9px 9px}
.pic-bande--texture{background-image:radial-gradient(rgba(20,38,46,.055) 1px,transparent 1.5px),radial-gradient(rgba(185,119,62,.07) 1px,transparent 1.7px);background-size:7px 7px,11px 11px;background-position:0 0,3px 5px}
.pic-bande--eau .pic-tete-section p:last-child{color:var(--encre-2)}

/* En-tête d'article : pastille de rubrique ; « En bref » remonte à côté du titre ; la photo prend toute la largeur */
.pic-pastille-rubrique{display:inline-block;margin:0 0 12px;padding:5px 13px;border-radius:999px;background:var(--eau-fonce);color:#fff;font-weight:700;font-size:14px;line-height:1.3;text-decoration:none}
.pic-pastille-rubrique:hover{background:var(--encre);color:#fff}
@media (min-width:1000px){
	.pic-entete__titre{padding-bottom:28px}
	.pic-enbref{grid-column:2;grid-row:1;align-self:end;margin:0 0 -44px}
	.pic-entete__photo{grid-column:1/-1;grid-row:3;padding-top:0}
	.pic-soupirail--article{height:clamp(260px,25vw,380px)}
	.pic-soupirail--article .pic-soupirail__baie img{object-position:center 55%}
}

/* Zone de l'accueil entre 1000 et 1199 px : la liste des communes ne déborde plus */
@media (min-width:1000px) and (max-width:1199px){
	.pic-zone__grille{grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:40px}
	.pic-communes{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
	.pic-communes ul{columns:1}
}

/* Pied de page (fond encre) : bouton clair ; photo produit détourée entière dans une carte */
.pic-pied .pic-btn--plein{background:#A6D8E0;color:var(--encre)}
.pic-pied .pic-btn--plein:hover{background:#7CC3CF;color:var(--encre)}
.pic-carte-article__photo img[src*="pompe-eau-claire"]{object-fit:contain;background:#fff;padding:10px}

/* Correctif prêt, NON publié (plafond de 3 publications de la passe 2 atteint) :
   4 cartes = 2 + 2 (au lieu d'une grande carte couchée avec un blanc de ~200 px), 7 = 3 + 2 + 2 ;
   une carte seule reste couchée mais son texte est centré, sans blanc. */
@media (min-width:1000px){
	.pic-cartes-3>:first-child:nth-last-child(3n+1){grid-column:span 2}
	.pic-cartes-3>:first-child:nth-last-child(3n+1) .pic-carte-article__lien{flex-direction:column}
	.pic-cartes-3>:first-child:nth-last-child(3n+1) .pic-carte-article__photo{flex:0 0 auto;height:240px;min-height:0}
	.pic-cartes-3>:first-child:nth-last-child(3n+1) .pic-carte-article__corps{justify-content:flex-start;padding:16px 18px 18px}
	.pic-cartes-3>:first-child:nth-last-child(4),.pic-cartes-3>:first-child:nth-last-child(3n+1)~:nth-last-child(-n+4){grid-column:span 3}
	.pic-cartes-3>:first-child:nth-last-child(3n+1)~:nth-last-child(-n+4) .pic-carte-article__photo{height:240px}
	.pic-cartes-3>:only-child:first-child{grid-column:1/-1}
	.pic-cartes-3>:only-child:first-child .pic-carte-article__lien{flex-direction:row}
	.pic-cartes-3>:only-child:first-child .pic-carte-article__photo{flex:0 0 46%;height:260px}
	.pic-cartes-3>:only-child:first-child .pic-carte-article__corps{justify-content:center;padding:24px 28px}
	.pic-cartes-3>:only-child:first-child .pic-carte-article__meta{margin-top:8px}
}

/* ---------- 32. Passe 3 (03/11/2026) ---------- */
/* 1. Cartes : jamais de blanc derrière une photo pas encore chargée (crépi + ligne de sol) */
.pic-carte-article__photo,.pic-origine__photo,.pic-eau__photo{background-color:var(--sous-sol);
	background-image:linear-gradient(180deg,transparent calc(100% - 9px),#A9AFB4 calc(100% - 9px),var(--granit) calc(100% - 5px),var(--pave) calc(100% - 4px)),radial-gradient(ellipse 20px 13px at 22% 32%,rgba(185,119,62,.18),transparent 70%),radial-gradient(ellipse 26px 15px at 72% 64%,rgba(185,119,62,.14),transparent 70%);
	background-size:100% 100%,68px 52px,92px 60px}
.pic-lire-aussi .pic-carte-article__photo img{width:100%;height:100%;aspect-ratio:auto}

/* 3. En-tête d'article : « En bref » commence à hauteur de la pastille et descend à cheval sur la plinthe */
.pic-enbref__appel{width:100%;margin-top:14px}
.pic-enbref__note{margin:12px 0 0;font-size:14.5px;line-height:1.45;color:var(--texte-2)}
.pic-enbref__note+.pic-enbref__appel{margin-top:10px!important}
@media (min-width:1000px){
	.pic-entete__grille .pic-enbref{grid-column:2;grid-row:1;align-self:stretch;margin:36px 0 -52px;display:flex;flex-direction:column}
	.pic-entete__grille .pic-enbref__note{margin-top:auto}
	.pic-entete__grille .pic-enbref dl{margin-bottom:16px}
}
/* 3 bis. Qui sommes-nous : carte « Le site en bref » en haut à droite, photo pleine largeur sous la plinthe */
.pic-resume__chiffres{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 14px}
.pic-resume__chiffres div{display:flex;flex-direction:column-reverse;align-items:flex-start;background:var(--eau-pale);border-radius:10px;padding:8px 10px}
.pic-resume__chiffres dd{margin:0;font-family:var(--titre);font-weight:700;font-size:28px;line-height:1;color:var(--eau-fonce)}
.pic-resume__chiffres dt{font-size:13px;line-height:1.3;color:var(--texte-2);margin-top:4px}
@media (min-width:1000px){
	.pic-main--qsn .pic-local-hero__texte{align-self:start}
	.pic-main--qsn .pic-local-hero__cote{grid-row:1;align-self:stretch;margin:32px 0 -64px;display:flex;flex-direction:column}
	.pic-main--qsn .pic-local-hero__cote .pic-resume{flex:1;display:flex;flex-direction:column}
	.pic-main--qsn .pic-local-hero__cote .pic-btn{margin-top:auto}
	.pic-main--qsn .pic-local-hero__photo{grid-column:1/-1;grid-row:3;padding:26px 0 34px}
	.pic-main--qsn .pic-soupirail--large{height:clamp(260px,24vw,380px)}
}
/* 6. Qui sommes-nous, corps : panneau à la largeur du site, texte + carte des communes, encadré « Nos sources » */
.pic-qsn-texte .pic-panneau{padding:48px 56px}
.pic-qsn-texte .pic-corps>p,.pic-qsn-texte .pic-corps>h2{max-width:76ch}
.pic-qsn-texte .pic-corps .etapes{grid-template-columns:repeat(4,minmax(0,1fr))}
.pic-qsn-duo{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:40px;align-items:center;margin:1.6em 0}
.pic-qsn-duo__texte>h2{margin-top:0}
.pic-qsn-duo__texte>p:last-child{margin-bottom:0}
.pic-qsn-duo__carte .pic-carte{margin:0;background:var(--crepi);border-radius:var(--r-carte);padding:14px;box-shadow:inset 0 0 0 1px var(--filet)}
.pic-qsn-texte blockquote{margin:1em 0 1.5em;padding:24px 28px;background:var(--eau-pale);border-radius:var(--r-carte);border-left:6px solid var(--eau);font-style:normal;max-width:none}
.pic-qsn-texte blockquote::before{content:"Notre méthode";display:inline-block;margin-bottom:10px;padding:4px 12px;border-radius:999px;background:var(--eau-fonce);color:#fff;font-weight:700;font-size:13.5px}
.pic-qsn-texte blockquote p{margin:0 0 .8em}
.pic-sources__titre{font-weight:700;color:var(--encre);margin:.4em 0 8px!important}
.pic-sources{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0!important;margin:0!important}
.pic-sources li{margin:0;padding:6px 14px;background:var(--blanc);border:1.5px solid var(--eau);border-radius:999px;font-weight:700;font-size:15px;color:var(--eau-fonce)}
@media (max-width:999px){
	.pic-qsn-texte .pic-corps .etapes{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
	.pic-qsn-duo{grid-template-columns:minmax(0,1fr);gap:20px}
	.pic-qsn-texte .pic-panneau{padding:28px 20px}
}

/* 4. Pompe détourée (fond blanc) : cadre teinté, pompe posée dans l'eau, plus de carte blanche */
.pic-carte-article__photo:has(img[src*="pompe-eau-claire"]),.pic-eau__photo--produit{
	background:linear-gradient(180deg,transparent 70%,rgba(47,127,143,.30) 70%,rgba(31,94,107,.42) 100%),radial-gradient(ellipse 60% 70% at 50% 45%,#FFFFFF 0,var(--eau-pale) 75%);background-size:auto}
.pic-carte-article__photo img[src*="pompe-eau-claire"],.pic-eau__photo--produit img{width:100%;height:118%;object-fit:contain;object-position:center top;padding:10px 0 0;background:transparent;mix-blend-mode:multiply;transform:none}
.pic-carte-article__lien:hover .pic-carte-article__photo img[src*="pompe-eau-claire"]{transform:none}

/* 7. Page ville : le formulaire de la colonne suit la lecture */
@media (min-width:1000px){.pic-rail--local{align-self:stretch}.pic-rail--local .pic-rail__bloc{position:sticky;top:calc(var(--tete) + 16px)}}

/* 8. Jauge du hero : graduations hors de l'axe des barreaux, blanc cassé ombré */
.pic-hero--scene .pic-echelle{right:30px}
.pic-hero--scene .pic-echelle i{color:#F4EFE6;text-shadow:0 1px 3px rgba(0,0,0,.85),0 0 8px rgba(0,0,0,.45)}
.pic-hero--scene .pic-echelle i::before{background:#F4EFE6}

/* 9. Légende de la carte : chaque pastille collée à son libellé, une légende par ligne sur mobile */
.pic-carte__item{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;margin-right:14px}
.pic-carte__cle--point{margin-left:0}
@media (max-width:759px){.pic-carte__legende{flex-direction:column;align-items:flex-start;gap:4px}}

/* 33. 1920 : en-tête d article et qui sommes-nous (reliquat passe 3) */
@media (min-width:1700px){.pic-entete__titre h1{max-width:32ch}.pic-entete__chapo{max-width:78ch}.pic-qsn-duo{grid-template-columns:1.4fr .6fr}}

/* 34. noms de communes jamais coupés (juge n°3) */
.pic-communes li{white-space:normal;padding-left:1em;text-indent:-1em}.pic-communes a{white-space:normal}.pic-communes__dep{min-width:0}
