/* traitement-humidite-ascensionnelle.be */
:root{--petrole:#0E4B57;--petrole2:#0A3A43;--petrole3:#145F6D;--menthe:#3DD6A3;--menthe2:#2BBF8D;--menthe-c:#DDF7EE;--encre:#10222A;--gris:#5C6B72;--fond:#F3F7F7;--ligne:#DCE6E7;--alerte:#C2410C}
*{box-sizing:border-box}
html{scroll-padding-top:20px;-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.6 "Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--encre);background:#fff}
h1,h2,h3{letter-spacing:-.025em;line-height:1.18;color:var(--encre)}
a{color:var(--petrole);text-underline-offset:2px}
img{max-width:100%;height:auto}
.cadre{max-width:1180px;margin:0 auto;padding:0 24px}
.clear{clear:both}
svg.ic{flex:none}

/* ---------------- en-tete */
.entete{background:var(--petrole);color:#fff;position:relative;z-index:30}
.barre .cadre{display:flex;align-items:center;gap:20px;height:74px}
.logo{display:flex;align-items:center;text-decoration:none;color:#fff}
.logo img{display:block;height:40px;width:auto}
.menu-btn{display:none;background:none;border:0;padding:6px;cursor:pointer;flex-direction:column;align-items:center;gap:4px;color:#fff;margin-left:-6px}
.menu-btn span{display:block;width:22px;height:2px;background:#fff;border-radius:2px}
.menu-btn small{font:600 10px "Plus Jakarta Sans",sans-serif;margin-top:1px}
.actions{margin-left:auto;display:flex;align-items:center;gap:10px}
.btn-o{display:inline-flex;align-items:center;gap:8px;border:1.5px solid rgba(255,255,255,.55);border-radius:999px;padding:8px 16px;font-size:14px;font-weight:600;text-decoration:none;color:#fff;white-space:nowrap}
.btn-o:hover{border-color:#fff;background:rgba(255,255,255,.06)}
.btn-m{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--menthe);color:var(--petrole2);border-radius:999px;padding:10px 19px;font-size:14.5px;font-weight:700;text-decoration:none;white-space:nowrap;border:0;cursor:pointer;font-family:inherit}
.btn-m:hover{background:#5BE2B5}
.cats{display:none;background:var(--petrole2);padding:10px 0 14px}
.cats .cadre{display:flex;flex-wrap:wrap;gap:4px}
.cats a{display:flex;align-items:center;gap:8px;color:#E3EFF1;text-decoration:none;font-size:15px;font-weight:600;padding:9px 12px;border-radius:10px;flex:1 1 45%}
.cats a.actif,.cats a:hover{background:rgba(61,214,163,.16);color:#fff}
.cats svg{width:18px;height:18px;color:var(--menthe)}
.cats .villes-menu{border-top:1px solid rgba(255,255,255,.12);margin-top:8px;padding-top:8px}
.cats .villes-menu a{flex:1 1 30%;font-size:14px;padding:7px 12px}
.menu-ouvert .cats{display:block}
.deroulant{position:relative}
.deroulant summary{list-style:none;cursor:pointer}
.deroulant summary::-webkit-details-marker{display:none}
.deroulant summary:after{content:"";flex:none;background:none;border-radius:0;width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:-3px 0 0 2px}
.deroulant[open] summary,.deroulant.actif summary{border-color:var(--menthe)}
.dd{position:absolute;right:0;top:calc(100% + 10px);background:#fff;border-radius:16px;box-shadow:0 20px 40px -12px rgba(10,58,67,.45);padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:2px 6px;min-width:320px;z-index:40}
.dd a{color:var(--encre);padding:9px 12px;border-radius:10px;font-size:14.5px;font-weight:600;text-decoration:none}
.dd a:hover,.dd a.actif{background:var(--menthe-c)}

/* ---------------- accueil */
.hero{background:var(--petrole);color:#fff;padding:52px 0 118px;border-radius:0 0 50% 50%/0 0 70px 70px}
.hero-g{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:start}
.kicker{font-size:13px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--menthe);margin:0}
.hero h1{color:#fff;font-size:50px;line-height:1.06;letter-spacing:-.035em;margin:12px 0 18px;font-weight:800}
.hero .lead{font-size:18px;color:#D6E6E8;max-width:540px;margin:0 0 28px}
.cherche{display:flex;background:#fff;border-radius:999px;padding:6px;max-width:520px;box-shadow:0 18px 30px -18px rgba(0,0,0,.5)}
.cherche input{flex:1;min-width:0;border:0;outline:0;font:500 15.5px "Plus Jakarta Sans",sans-serif;padding:0 18px;color:var(--encre);background:none}
.cherche button{background:var(--menthe);border:0;border-radius:999px;padding:12px 20px;font:700 14.5px "Plus Jakarta Sans",sans-serif;color:var(--petrole2);display:flex;gap:7px;align-items:center;cursor:pointer;white-space:nowrap}
.cherche-msg{font-size:14px;color:var(--menthe);margin:10px 0 0 18px;min-height:1px}
.puces{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.puces span{background:rgba(255,255,255,.1);border-radius:999px;padding:6px 13px;font-size:13px;font-weight:600;display:flex;gap:7px;align-items:center}
.puces svg{width:16px;height:16px;color:var(--menthe)}
.carte-form{background:#fff;color:var(--encre);border-radius:22px;overflow:hidden;box-shadow:0 30px 60px -20px rgba(0,0,0,.5)}
.carte-form .ph{position:relative;height:170px;overflow:hidden}
.carte-form .ph img{width:100%;height:100%;object-fit:cover;display:block}
.carte-form .ph span{position:absolute;left:16px;bottom:14px;background:#fff;border-radius:8px;padding:5px 11px;font-size:12.5px;font-weight:700;display:flex;gap:6px;align-items:center}
.carte-form .in{padding:20px 22px 22px}
.carte-form .cf-titre{font-size:21px;font-weight:800;letter-spacing:-.02em;line-height:1.25;margin:0 0 4px}
.carte-form .sub{font-size:13.5px;color:var(--gris);margin:0 0 14px}
.cf-lig{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cf-lig label,.cf-seg legend{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.cf-lig label{display:block;border:1.5px solid var(--ligne);border-radius:11px;padding:8px 12px 6px}
.cf-lig input{display:block;width:100%;border:0;outline:0;font:500 15px "Plus Jakarta Sans",sans-serif;padding:2px 0;color:var(--encre);background:none}
.cf-seg{border:0;padding:0;margin:12px 0 0}
.cf-seg legend{margin-bottom:6px;padding:0}
.cf-seg div{display:flex;gap:6px}
.cf-seg label{flex:1;position:relative;cursor:pointer}
.cf-seg input{position:absolute;opacity:0}
.cf-seg span{display:block;text-align:center;border:1.5px solid var(--ligne);border-radius:10px;padding:8px 4px;font-size:13.5px;font-weight:600}
.cf-seg input:checked+span{border-color:var(--petrole);background:var(--menthe-c);color:var(--petrole)}
.cf-seg input:focus-visible+span{outline:2px solid var(--menthe)}
.envoi{margin-top:14px;width:100%;border:0;background:var(--petrole);color:#fff;border-radius:12px;padding:14px;font:700 15.5px "Plus Jakarta Sans",sans-serif;display:flex;justify-content:center;gap:8px;align-items:center;cursor:pointer}
.envoi:hover{background:var(--petrole3)}
.cf-wa{margin:11px 0 0;text-align:center;font-size:13px;color:var(--gris)}
.cf-wa a{color:#178A47;font-weight:700}
.pastilles{display:flex;gap:10px;flex-wrap:wrap;margin-top:-26px;position:relative;z-index:2}
.pastilles a{background:#fff;border:1.5px solid var(--ligne);border-radius:999px;padding:10px 16px;font-size:14px;font-weight:600;display:flex;gap:8px;align-items:center;box-shadow:0 6px 16px -10px rgba(14,75,87,.45);text-decoration:none;color:var(--encre)}
.pastilles a:hover{border-color:var(--menthe);background:var(--menthe-c)}
.pastilles svg{color:var(--petrole);width:18px;height:18px}
.garanties{padding:62px 0 64px}
.trois{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center}
.badge{width:76px;height:76px;margin:0 auto 14px;border-radius:50%;background:var(--menthe-c);display:grid;place-items:center;color:var(--petrole);border:3px solid var(--petrole)}
.badge svg{width:34px;height:34px}
.trois h3{font-size:21px;margin:0 0 6px}
.trois p{font-size:14.5px;color:var(--gris);margin:0 auto;max-width:310px}
.commencer{background:var(--fond);padding:64px 0}
.ent{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}
.ent h2{font-size:32px;margin:0}
.ent a{font-size:14px;font-weight:700;color:var(--petrole);white-space:nowrap}
.surtitre{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--menthe2);margin:0 0 6px}
.cartes{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.cartes a{position:relative;border-radius:18px;overflow:hidden;height:300px;color:#fff;text-decoration:none;display:block;background:var(--petrole)}
.cartes img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.cartes a:hover img{transform:scale(1.04)}
.cartes a:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,30,35,.88) 0%,rgba(6,30,35,.15) 55%,rgba(6,30,35,.65) 100%)}
.cartes div{position:relative;z-index:1;padding:20px}
.cartes b{display:block;font-size:19px;letter-spacing:-.02em;line-height:1.22}
.cartes small{display:block;font-size:13px;opacity:.92;font-weight:600;margin-top:5px}
.cartes .go{position:absolute;z-index:1;left:20px;bottom:18px;width:36px;height:36px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center}
.testmur{padding:70px 0}
.split{display:grid;grid-template-columns:1fr 1fr;border-radius:22px;overflow:hidden;border:1.5px solid var(--ligne)}
.split .t{padding:46px;background:#fff}
.split h2{font-size:38px;letter-spacing:-.035em;margin:0 0 14px}
.split h2 em{font-style:normal;color:var(--menthe2)}
.split ul{list-style:none;padding:0;margin:0 0 26px}
.split li{display:flex;gap:9px;align-items:center;font-size:15px;margin:8px 0}
.split li svg{color:var(--menthe2);width:18px;height:18px}
.bt{display:inline-flex;gap:8px;align-items:center;background:var(--petrole2);color:#fff;border-radius:999px;padding:12px 22px;font-weight:700;font-size:14.5px;text-decoration:none}
.mini-quiz{background:var(--petrole);padding:34px;display:flex;flex-direction:column;gap:12px;justify-content:center}
.mq-tete{color:#fff;font-size:13px;font-weight:600;display:flex;justify-content:space-between}
.mq-barre{height:6px;border-radius:9px;background:rgba(255,255,255,.2)}
.mq-barre i{display:block;height:100%;width:0;background:var(--menthe);border-radius:9px;transition:width .3s}
.mq-q{background:#fff;border-radius:14px;padding:15px 18px;border:0;margin:0}
.mq-q legend{float:left;width:100%;padding:0;font-size:16px;font-weight:700;margin:0 0 10px}
.mq-q legend small{display:block;font-size:11px;font-weight:800;color:var(--menthe2);letter-spacing:.08em;text-transform:uppercase}
.opts{display:flex;flex-wrap:wrap;gap:6px;clear:both}
.opts label{position:relative;cursor:pointer}
.opts input{position:absolute;opacity:0}
.opts span{display:block;border:1.5px solid var(--ligne);border-radius:999px;padding:5px 12px;font-size:13.5px;font-weight:600}
.opts input:checked+span{background:var(--petrole);border-color:var(--petrole);color:#fff}
.opts input:focus-visible+span{outline:2px solid var(--menthe)}
.mq-res{background:var(--menthe-c);border-radius:14px;padding:16px 18px;font-size:14.5px}
.mq-res b{display:block;font-size:16.5px;margin-bottom:4px}
.mq-res p{margin:0 0 10px}
.mq-res a{font-weight:700}
.annu{background:var(--fond);padding:70px 0}
.annu .pill{display:block;width:max-content;max-width:100%;margin:0 auto 12px;background:var(--petrole);color:#fff;border-radius:999px;padding:5px 14px;font-size:12.5px;font-weight:700}
.annu h2{text-align:center;font-size:40px;letter-spacing:-.035em;margin:0}
.annu .s{text-align:center;color:var(--gris);margin:8px auto 34px;max-width:640px}
.fiches{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fiche{background:#fff;border-radius:16px;padding:20px;box-shadow:0 10px 26px -18px rgba(14,75,87,.5);display:flex;flex-direction:column}
.fiche .top{display:flex;justify-content:space-between;align-items:start;gap:10px}
.fiche h3{margin:0;font-size:17px;letter-spacing:-.01em}
.fiche .c{font-size:13px;color:var(--gris)}
.note-b{background:var(--menthe-c);color:var(--petrole);border-radius:10px;padding:6px 10px;font-weight:800;font-size:18px;line-height:1;text-align:center;flex:none}
.note-b small{display:block;font-size:10.5px;font-weight:600;margin-top:3px}
.tags{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}
.tags span{background:var(--fond);border-radius:6px;padding:3px 8px;font-size:12px;font-weight:600}
.dl{font-size:13px;display:grid;gap:6px;margin-top:auto}
.dl div{display:flex;gap:7px;align-items:center}
.dl svg{width:15px;height:15px;color:var(--petrole)}
.villes-g{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:30px}
.villes-g a{display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--ligne);border-radius:12px;padding:10px 16px;font-weight:700;font-size:15px;text-decoration:none;color:var(--encre)}
.villes-g a:hover{border-color:var(--petrole)}
.villes-g small{color:var(--gris);font-weight:600}
.centre-lien{text-align:center;margin:26px 0 0}
.villes-g svg{color:var(--menthe2);width:18px;height:18px}
.accueil-texte{padding:70px 24px 20px;columns:2 460px;column-gap:64px}
.accueil-texte h2{font-size:25px;margin:0 0 12px;break-after:avoid}
.accueil-texte p{margin:0 0 18px}
.accueil-texte h2+p{break-before:avoid}
.faq-fond{padding:50px 0 60px}
.faq-fond .cadre{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.faq-fond h2{font-size:34px;margin:0 0 10px}
.faq-fond .cadre>div:first-child p{color:var(--gris)}
.cta-final{padding:10px 0 70px}
.cta{background:var(--petrole);color:#fff;border-radius:28px;padding:54px;display:grid;grid-template-columns:1.3fr 1fr;gap:30px;align-items:center;position:relative;overflow:hidden}
.cta:before{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;border:40px solid rgba(61,214,163,.08)}
.cta h2{color:#fff;font-size:38px;letter-spacing:-.035em;margin:0 0 10px}
.cta p{color:#D6E6E8;margin:0}
.cta .act{display:flex;flex-direction:column;gap:10px;position:relative}
.cta .act a{justify-content:center;padding:15px}
.cta .act span{font-size:13.5px;color:#BFD6D9;text-align:center}
.cta .act span a{color:#fff;padding:0}

/* ---------------- pages article */
.tete-page{background:var(--petrole);color:#fff;padding:22px 0 64px;border-radius:0 0 50% 50%/0 0 46px 46px}
.tete-page.court{padding-bottom:40px}
.fil{font-size:13px;margin:0 0 18px;color:#BFD6D9}
.fil a{color:#fff;font-weight:600;text-decoration:none}
.fil a:hover{text-decoration:underline}
.tete-page h1{color:#fff;font-size:42px;line-height:1.1;letter-spacing:-.035em;margin:0 0 14px;max-width:900px;font-weight:800}
.tete-page .chapo{font-size:17.5px;color:#D6E6E8;max-width:820px;margin:0 0 18px}
.auteur{display:flex;gap:10px;align-items:center;font-size:13px}
.auteur img{border-radius:50%;border:2px solid var(--menthe)}
.auteur a{font-weight:700;color:#fff;display:block;text-decoration:none}
.auteur span{color:#BFD6D9}
.tete-page .pastilles{margin:28px 0 -88px}
.corps{display:flex;gap:56px;align-items:flex-start;padding-top:64px}
.corps.sans-pastilles{padding-top:44px}
.colonne{flex:0 0 330px;position:sticky;top:16px}
.side-cta{background:var(--fond);border:1.5px solid var(--ligne);border-radius:18px;padding:20px 18px 16px}
.side-titre{font-weight:800;font-size:18px;letter-spacing:-.02em;margin:0 0 6px;line-height:1.3}
.side-sous{font-size:13.5px;color:var(--gris);margin:0 0 14px}
.champ-cp{display:flex;background:#fff;border:1.5px solid var(--ligne);border-radius:999px;padding:4px}
.champ-cp input{flex:1;border:0;padding:8px 12px;font:500 14.5px "Plus Jakarta Sans",sans-serif;outline:0;min-width:0;background:none}
.champ-cp button{background:var(--petrole);color:#fff;border:0;border-radius:999px;padding:9px 16px;font:700 14px "Plus Jakarta Sans",sans-serif;cursor:pointer;white-space:nowrap}
.side-mini{font-size:12.5px;color:var(--gris);margin:10px 0 0;display:flex;gap:6px;align-items:center}
.side-mini svg{color:var(--menthe2);width:15px;height:15px}
.sommaire{margin-top:16px;border-left:3px solid var(--ligne);padding:2px 0 2px 16px;max-height:58vh;overflow:auto}
.sommaire p{margin:0 0 8px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gris)}
.sommaire ol{list-style:none;padding:0;margin:0}
.sommaire li{padding:5px 0}
.sommaire a{color:var(--encre);text-decoration:none;font-size:14px;font-weight:600;line-height:1.35}
.sommaire a:hover{color:var(--menthe2)}
.article{flex:1;min-width:0;max-width:760px;padding-bottom:30px}
.article>p:first-child{margin-top:0}
.article h2{font-size:28px;margin:52px 0 14px}
.article h3{font-size:19px;margin:30px 0 8px}
.article p,.article li{font-size:16.5px;line-height:1.7}
.article ul,.article ol{padding-left:22px}
.article li{margin-bottom:7px}
.article li::marker{color:var(--menthe2);font-weight:700}
.article figure{margin:26px 0}
.article figure img{border-radius:16px;display:block;width:100%;max-height:480px;object-fit:cover}
.article figure.schema{background:var(--fond);border-radius:18px;padding:18px}
.article figure.schema img{border-radius:0;max-height:none;object-fit:contain}
.article figcaption{font-size:13.5px;color:var(--gris);margin-top:8px}
.article table{border-collapse:separate;border-spacing:0;width:100%;font-size:14.5px;margin:20px 0;border:1.5px solid var(--ligne);border-radius:14px;overflow:hidden}
.article th{text-align:left;background:var(--petrole);color:#fff;padding:11px 12px;font-weight:700;font-size:14px}
.article td{padding:11px 12px;border-top:1px solid var(--ligne);vertical-align:top;overflow-wrap:break-word}
.article tr:nth-child(even) td{background:#FAFCFC}
.table-defile{overflow-x:auto;margin:20px 0}
.table-defile table{margin:0;min-width:560px}
.article blockquote{margin:22px 0;padding:4px 0 4px 20px;border-left:4px solid var(--menthe);font-style:italic;color:#33474F}
.note{background:var(--menthe-c);border-radius:14px;padding:16px 20px;margin:26px 0;position:relative}
.note p{margin:0}
.note p+p{margin-top:8px}
.carte-lien{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1.5px solid var(--ligne);border-radius:16px;padding:16px 20px;text-decoration:none;margin:34px 0 0;transition:border-color .2s}
.carte-lien:hover{border-color:var(--menthe2)}
.cl-titre{color:var(--encre);font-size:17px;font-weight:700;line-height:1.3}
.cl-sous{font-size:12px;color:var(--gris);font-weight:700;text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:3px}
.cl-fl{flex:none;width:36px;height:36px;border-radius:50%;background:var(--menthe-c);display:grid;place-items:center;color:var(--petrole)}
.suite{margin:24px 0}
.bouton{display:inline-flex;align-items:center;gap:8px;background:var(--menthe);color:var(--petrole2);text-decoration:none;font-weight:700;padding:12px 22px;border-radius:999px;font-size:15px;border:0;cursor:pointer;font-family:inherit}
.bouton:hover{background:#5BE2B5}
.article details,.faq-fond details{border:1.5px solid var(--ligne);border-radius:14px;padding:0;margin:0 0 10px;background:#fff}
.faq-fond details{background:#fff}
summary{cursor:pointer;font-weight:700;font-size:16.5px;list-style:none;display:flex;justify-content:space-between;gap:16px;padding:15px 18px;line-height:1.4}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";flex:0 0 26px;height:26px;border-radius:50%;background:var(--menthe-c);color:var(--petrole);display:grid;place-items:center;font-size:18px;font-weight:700;line-height:1}
details[open]>summary:after{content:"\2212"}
details>p,details>ul{margin:0;padding:0 18px 16px}
details>ul{padding-left:38px}
.credits{max-width:1180px;margin:0 auto;padding:16px 24px 30px;font-size:12px;color:var(--gris);line-height:1.6}
.credits a{color:var(--gris)}

/* bandeau cta au milieu des articles */
.bande{background:var(--petrole);border-radius:22px;color:#fff;padding:30px 32px;margin:40px 0;display:flex;gap:26px;align-items:center;position:relative;overflow:hidden}
.bande:after{content:"";position:absolute;right:-50px;bottom:-70px;width:200px;height:200px;border-radius:50%;border:34px solid rgba(61,214,163,.1)}
.bande-ic{flex:none;width:76px;height:76px;border-radius:20px;background:rgba(61,214,163,.14);display:grid;place-items:center;color:var(--menthe)}
.bande-txt{position:relative;z-index:1}
.bande-titre{font-weight:800;font-size:21px;letter-spacing:-.02em;margin:0 0 6px}
.article .bande p{margin:0 0 16px;font-size:15px;color:#D6E6E8;line-height:1.55}
.bande .bouton{padding:11px 20px}

/* ---------------- annuaire des entreprises */
.comparer{background:var(--menthe-c);border-radius:18px;padding:18px 22px;margin:4px 0 30px;display:flex;gap:20px;align-items:center}
.article .comparer p{margin:0;font-size:15px}
.comparer .bouton{white-space:nowrap}
.article .annuaire{list-style:none;padding:0;margin:18px 0 8px;counter-reset:a}
.an{background:#fff;border:1.5px solid var(--ligne);border-radius:18px;padding:18px 20px 14px;margin-bottom:14px;box-shadow:0 10px 24px -22px rgba(14,75,87,.6)}
.an-tete{display:flex;gap:16px;align-items:flex-start}
.an-logo{flex:0 0 104px;position:relative;height:64px;border:1.5px solid var(--ligne);border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;padding:4px}
.an-logo img{width:100%;height:100%;object-fit:contain}
.an-ini{font-size:22px;font-weight:800;color:var(--petrole)}
.an-rang{position:absolute;left:-10px;top:-10px;width:24px;height:24px;border-radius:50%;background:var(--petrole);color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center;border:2px solid #fff}
.an-id{flex:1;min-width:0}
.article .an h3{margin:2px 0 3px;font-size:18.5px}
.article .an-lieu{margin:0;font-size:13.5px;color:var(--gris);line-height:1.45}
.an-note{background:var(--menthe-c);color:var(--petrole);border-radius:12px;padding:7px 11px;text-align:center;line-height:1.1;flex:none}
.an-note b{font-size:20px;font-weight:800}
.etoile{color:#E6A700;font-size:16px;margin-left:2px}
.an-note small{display:block;font-size:11px;font-weight:600;margin-top:2px}
.an-note.vide{background:var(--fond);color:var(--gris)}
.article .an-tags{list-style:none;padding:0;margin:12px 0 4px 120px;display:flex;flex-wrap:wrap;gap:5px}
.article .an-tags li{font-size:12.5px;font-weight:600;background:var(--fond);border-radius:6px;padding:2px 8px;margin:0;line-height:1.6}
.article .an-infos,.article .an-contact{margin:6px 0 0 120px;font-size:14px;line-height:1.55}
.an-contact{font-weight:700}
.an-contact a{font-weight:500}
.article .an-methode{font-size:13.5px;color:var(--gris);margin:10px 0 30px}
.carte{height:400px;border-radius:18px;border:1.5px solid var(--ligne);margin:0 0 36px;background:var(--fond);z-index:0}
.pin span{display:flex;width:26px;height:26px;border-radius:50%;background:var(--petrole);color:#fff;font:700 12px/22px "Plus Jakarta Sans",sans-serif;justify-content:center;align-items:center;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.3)}
.pin.ville span{background:var(--menthe);color:var(--petrole2)}
.photo-ville{margin:0 0 28px!important}
.photo-ville img{max-height:380px!important}

/* ---------------- outils */
.outil{background:var(--fond);border-radius:20px;padding:26px 26px 22px;margin:22px 0 32px;border:1.5px solid var(--ligne)}
.outil-titre{font-size:21px;font-weight:800;letter-spacing:-.02em;margin:0 0 4px;color:var(--encre);display:flex;gap:10px;align-items:center}
.outil-titre svg{color:var(--menthe2)}
.article .outil-sous{font-size:14.5px;color:var(--gris);margin:0 0 18px}
.outil fieldset{border:0;padding:0;margin:0 0 18px;min-width:0}
.outil legend{font-weight:700;font-size:15.5px;margin-bottom:9px;padding:0}
.quiz fieldset label{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1.5px solid var(--ligne);border-radius:12px;padding:10px 13px;margin-bottom:6px;cursor:pointer;font-size:15px;line-height:1.45}
.quiz fieldset label:has(input:checked){border-color:var(--petrole);background:var(--menthe-c)}
.quiz input,.outil input[type=checkbox],.outil input[type=radio]{margin-top:4px;accent-color:var(--petrole)}
.quiz-res,.calc-res,.releve-res{background:#fff;border-radius:14px;padding:18px 20px;margin-top:16px;border-top:5px solid var(--menthe)}
.quiz-res b,.releve-res b{font-size:18px;display:block;margin-bottom:4px}
.article .quiz-res p,.article .calc-res p,.article .releve-res p{font-size:14.5px}
.quiz-res .barres{display:grid;gap:6px;margin:12px 0 14px}
.quiz-res .barres div{display:grid;grid-template-columns:150px 1fr 40px;gap:10px;align-items:center;font-size:13.5px}
.quiz-res .barres i{display:block;height:9px;border-radius:9px;background:var(--ligne);overflow:hidden}
.quiz-res .barres i span{display:block;height:100%;background:var(--petrole);border-radius:9px}
.c-lig{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}
.c-lig.deux{grid-template-columns:1fr 1fr}
.outil label.ch{font-size:14px;font-weight:700;display:block}
.outil label.ch input,.outil label.ch select{display:block;width:100%;margin-top:6px;padding:10px 12px;border:1.5px solid var(--ligne);border-radius:10px;font:500 15px "Plus Jakarta Sans",sans-serif;background:#fff;color:var(--encre)}
.outil label.ch small{display:block;font-weight:500;color:var(--gris);font-size:12.5px;margin-top:4px}
.outil fieldset.cases label{display:flex;gap:8px;font-weight:500;margin-bottom:6px;align-items:flex-start;font-size:14.5px;cursor:pointer}
.calc-chiffre{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:9px 0;border-bottom:1px solid var(--ligne)}
.calc-chiffre span{font-size:14px;color:var(--gris);min-width:210px}
.calc-chiffre b{font-size:23px;font-weight:800;color:var(--petrole)}
.calc-chiffre small{font-size:12px;color:var(--gris)}
.calc-res ul{padding-left:20px;margin:12px 0}
.article .calc-res li{font-size:14px;margin-bottom:5px}
.calc-res h4{margin:18px 0 6px;font-size:16px}
.releve-schema{display:grid;grid-template-columns:130px 1fr;gap:20px;align-items:center}
.releve-schema svg{width:130px;height:auto}
.releve-champs label.ch{display:grid;grid-template-columns:1fr 110px;gap:10px;align-items:center;margin-bottom:10px}
.releve-champs label.ch input{margin:0}
.cmp-filtres{display:flex;flex-wrap:wrap;gap:14px 20px;margin-bottom:16px}
.cmp-filtres label.ch{flex:1 1 180px}
.cmp{display:grid;gap:12px}
.cmp-l{background:#fff;border:1.5px solid var(--ligne);border-radius:16px;padding:16px 18px;transition:opacity .25s,border-color .25s}
.cmp-l.ok{border-color:var(--menthe2)}
.cmp-l.non{opacity:.5}
.cmp-l .cmp-t{display:flex;justify-content:space-between;gap:10px;align-items:baseline;flex-wrap:wrap}
.cmp-l h4{margin:0;font-size:17px}
.cmp-l .verdict{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:3px 9px;border-radius:999px;background:var(--fond);color:var(--gris)}
.cmp-l.ok .verdict{background:var(--menthe-c);color:var(--petrole)}
.cmp-l.deconseille .verdict{background:#FDEBDD;color:var(--alerte)}
.cmp-l dl{display:grid;grid-template-columns:110px 1fr;gap:4px 12px;margin:10px 0 0;font-size:14px}
.cmp-l dt{color:var(--gris);font-weight:600}
.cmp-l dd{margin:0}
.cmp-l .pourquoi{font-size:13.5px;color:var(--petrole);font-weight:600;margin:8px 0 0;min-height:1px}
.check-liste{list-style:none;padding:0!important;margin:0 0 14px}
.check-liste li{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1.5px solid var(--ligne);border-radius:12px;padding:10px 13px;margin-bottom:6px!important;font-size:15px!important;line-height:1.45!important;cursor:pointer}
.check-liste li:has(input:checked){border-color:var(--menthe2);background:var(--menthe-c)}
.check-liste input{margin-top:4px}
.check-liste b{display:block}
.check-liste small{color:var(--gris);font-size:13.5px}
.outil-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.btn-sec{background:#fff;border:1.5px solid var(--petrole);color:var(--petrole);border-radius:999px;padding:10px 18px;font:700 14px "Plus Jakarta Sans",sans-serif;cursor:pointer}
.compte{font-size:14px;color:var(--gris);font-weight:600}
.lettre{background:#fff;border:1.5px solid var(--ligne);border-radius:14px;margin-bottom:8px;padding:0}
.lettre summary{flex-wrap:wrap;font-size:16px}
.lettre summary small{display:block;width:100%;font-weight:500;font-size:13px;color:var(--gris);order:3}
.lettre pre{white-space:pre-wrap;font:14px/1.6 "Plus Jakarta Sans",sans-serif;background:#FAFCFC;border-top:1px solid var(--ligne);margin:0;padding:16px 18px;max-height:420px;overflow:auto}
.copier{margin:12px 18px 16px;background:var(--petrole);color:#fff;border:0;border-radius:999px;padding:9px 18px;font:700 14px "Plus Jakarta Sans",sans-serif;cursor:pointer}
.integrer textarea{width:100%;font:13px/1.4 Consolas,monospace;padding:10px;border:1.5px solid var(--ligne);border-radius:10px;background:#fff;resize:vertical}
.copier-code{margin-top:9px;background:var(--petrole);color:#fff;border:0;border-radius:999px;padding:9px 18px;font:700 14px "Plus Jakarta Sans",sans-serif;cursor:pointer}
details.integrer>*:not(summary){margin-left:18px;margin-right:18px}
details.integrer .copier-code{margin-bottom:16px}

/* ---------------- pages simples */
.simple{max-width:860px;padding-top:44px;padding-bottom:60px}
.simple h2{font-size:24px;margin:40px 0 12px}
.simple p,.simple li{font-size:16.5px;line-height:1.7}
.formulaire{background:var(--fond);border:1.5px solid var(--ligne);border-radius:22px;padding:28px 26px;margin:0 0 30px}
.formulaire label{display:block;font-weight:700;font-size:14px;margin:0 0 16px}
.formulaire input,.formulaire select,.formulaire textarea{display:block;width:100%;margin-top:6px;padding:11px 13px;border:1.5px solid var(--ligne);border-radius:11px;font:500 15.5px "Plus Jakarta Sans",sans-serif;background:#fff;color:var(--encre)}
.formulaire input:focus,.formulaire select:focus,.formulaire textarea:focus{outline:2px solid var(--menthe);border-color:var(--petrole)}
.formulaire input[type=file]{padding:16px 13px;border:2px dashed #B8CBCD;background:#fff;cursor:pointer}
.formulaire .deux{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.formulaire .case{display:flex;gap:10px;font-weight:500;align-items:flex-start;font-size:14px}
.formulaire .case input{width:auto;margin-top:4px;accent-color:var(--petrole)}
.formulaire .seg{border:0;padding:0;margin:0 0 16px}
.formulaire .seg legend{font-weight:700;font-size:14px;margin-bottom:6px;padding:0}
.formulaire .seg div{display:flex;gap:8px;flex-wrap:wrap}
.formulaire .seg label{margin:0;position:relative;flex:1 1 120px}
.formulaire .seg input{position:absolute;opacity:0;width:auto}
.formulaire .seg span{display:block;text-align:center;border:1.5px solid var(--ligne);border-radius:11px;padding:10px 6px;background:#fff;font-weight:600;cursor:pointer}
.formulaire .seg input:checked+span{border-color:var(--petrole);background:var(--menthe-c);color:var(--petrole)}
.formulaire .seg input:focus-visible+span{outline:2px solid var(--menthe)}
.formulaire button{background:var(--petrole);color:#fff;border:0;border-radius:999px;padding:15px 30px;font:700 16px "Plus Jakarta Sans",sans-serif;cursor:pointer}
.formulaire button:hover{background:var(--petrole3)}
.formulaire button:disabled{opacity:.6}
.piege{position:absolute;left:-9999px}
.erreur{background:#FDEBDD;color:var(--alerte);padding:12px 16px;border-radius:12px;font-weight:600}
.portrait{float:right;margin:0 0 18px 26px;border-radius:18px}
.etapes-envoi{list-style:none;padding:0;margin:0 0 26px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.etapes-envoi li{background:#fff;border:1.5px solid var(--ligne);border-radius:16px;padding:14px 16px;font-size:14.5px!important;line-height:1.5!important}
.etapes-envoi b{display:block;font-size:15.5px;color:var(--petrole)}

/* ---------------- pied */
.pied{background:var(--petrole2);color:#CFE0E2;padding:54px 0 0;font-size:14px}
.pied .cadre{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:34px}
.f-marque p{font-size:13px;line-height:1.6;color:#AFC8CB;max-width:280px;margin:14px 0 0}
.f-marque .logo img{height:36px}
.f-titre{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--menthe);margin:6px 0 12px}
.pied ul{list-style:none;padding:0;margin:0}
.pied li{margin-bottom:8px}
.pied li a{color:#fff;text-decoration:none;font-weight:500}
.pied li a:hover{color:var(--menthe)}
.f-villes{columns:2;column-gap:14px}
.f-bas{display:flex!important;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:24px 24px 26px;margin-top:40px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;max-width:1180px;margin-left:auto;margin-right:auto}
.f-bas nav{display:flex;gap:18px;flex-wrap:wrap}
.f-bas a{color:#CFE0E2;text-decoration:none}
.f-bas a:hover{color:#fff}
.wa-flottant{position:fixed;right:18px;bottom:18px;width:54px;height:54px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.25);z-index:20}

@media (max-width:1020px){
 .hero-g{grid-template-columns:minmax(0,1fr);gap:34px}
 .corps{flex-direction:column;align-items:stretch;gap:0}
 .colonne{position:static;flex:none;width:100%;margin-bottom:26px}
 .sommaire{display:none}
 .cartes{grid-template-columns:1fr 1fr}
 .fiches{grid-template-columns:1fr 1fr}
 .pied .cadre{grid-template-columns:1fr 1fr}
 .faq-fond .cadre{grid-template-columns:1fr;gap:10px}
}
@media (max-width:760px){
 .cadre{padding:0 18px}
 .barre .cadre{height:62px;gap:10px}
 .menu-btn{display:flex}
 .logo{flex:1 1 auto;min-width:0}
 .logo img{height:30px;width:100%;max-width:190px;object-fit:contain;object-position:left}
 .actions{flex:none}
 .actions .btn-o{display:none}
 .actions .btn-m{padding:8px 12px;font-size:12.5px}
 .actions .btn-m svg{display:none}
 .actions .deroulant{display:none}
 .hero{padding:30px 0 92px;border-radius:0 0 50% 50%/0 0 34px 34px}
 .hero h1{font-size:33px}
 .hero .lead{font-size:16px}
 .cherche input{padding:0 10px;font-size:14.5px}
 .cherche button{padding:11px 14px;font-size:13.5px}
 .carte-form .ph{height:130px}
 .pastilles{flex-wrap:nowrap;overflow-x:auto;margin-top:-22px;padding:4px 18px 8px;margin-left:-18px;margin-right:-18px;scrollbar-width:none}
 .pastilles::-webkit-scrollbar{display:none}
 .pastilles a{flex:none;padding:9px 14px;font-size:13.5px}
 .garanties{padding:44px 0}
 .trois{grid-template-columns:1fr;gap:30px}
 .commencer,.annu,.testmur{padding:48px 0}
 .ent h2{font-size:26px}
 .cartes{grid-template-columns:1fr 1fr;gap:10px}
 .cartes a{height:200px;border-radius:14px}
 .cartes div{padding:14px}
 .cartes b{font-size:15.5px}
 .cartes small{display:none}
 .cartes .go{left:14px;bottom:12px;width:30px;height:30px}
 .split{grid-template-columns:1fr}
 .split .t{padding:28px 22px}
 .split h2{font-size:29px}
 .mini-quiz{padding:20px 16px}
 .annu h2{font-size:29px}
 .fiches{grid-template-columns:1fr}
 .accueil-texte{columns:1;padding-top:48px}
 .faq-fond h2{font-size:28px}
 .cta{grid-template-columns:1fr;padding:30px 22px;border-radius:22px}
 .cta h2{font-size:28px}
 .tete-page{padding:16px 0 56px;border-radius:0 0 50% 50%/0 0 28px 28px}
 .tete-page h1{font-size:30px}
 .tete-page .chapo{font-size:16px}
 .tete-page .pastilles{margin:22px -18px -80px}
 .corps{padding-top:56px}
 .article h2{font-size:23px;margin-top:42px}
 .article p,.article li{font-size:16px}
 .article figure.schema{padding:10px;margin-left:-4px;margin-right:-4px}
 .bande{flex-direction:column;align-items:flex-start;padding:24px 20px;gap:14px}
 .bande-ic{width:56px;height:56px;border-radius:16px}
 .comparer{flex-direction:column;align-items:flex-start}
 .an{padding:16px 14px 12px}
 .an-tete{flex-wrap:wrap;gap:12px}
 .an-logo{flex-basis:84px;height:52px}
 .an-id{flex:1 1 140px}
 .article .an-tags,.article .an-infos,.article .an-contact{margin-left:0}
 .carte{height:320px}
 .outil{padding:20px 15px 16px;border-radius:16px}
 .c-lig,.c-lig.deux{grid-template-columns:1fr}
 .quiz-res .barres div{grid-template-columns:110px 1fr 36px}
 .releve-schema{grid-template-columns:1fr}
 .releve-schema svg{display:none}
 .releve-champs label.ch{grid-template-columns:1fr 96px}
 .cmp-l dl{grid-template-columns:1fr}
 .cmp-l dt{margin-top:4px}
 .formulaire{padding:20px 16px}
 .formulaire .deux{grid-template-columns:1fr}
 .etapes-envoi{grid-template-columns:1fr}
 .portrait{float:none;margin:0 0 16px;width:160px;height:auto}
 .pied .cadre{grid-template-columns:1fr;gap:24px}
 .f-bas{flex-direction:column}
 .simple{padding-top:30px}
}
@media print{.entete,.pied,.colonne,.wa-flottant,.bande,.tete-page .pastilles{display:none}.corps{display:block}}
