/* Base commune des 6 sites d'exemple (concaténée avant la feuille du site). */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;min-height:100vh;overflow-x:clip;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg,video,picture{display:block;max-width:100%}
img{height:auto}
h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd{margin:0}
ul[class],ol[class]{list-style:none;padding:0}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
table{border-collapse:collapse}
.skip{position:absolute;left:12px;top:-200px;z-index:1000;padding:14px 18px;background:#fff;color:#000;font-weight:600;text-decoration:none}
.skip:focus{top:12px}
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
main:focus{outline:none}
[hidden]{display:none!important}
summary{cursor:pointer}
.credits{font-size:14px}
.credits summary{min-height:44px;display:inline-flex;align-items:center}
.credits ul{padding-left:1.2em;margin:.5em 0}
.credits li{margin:0}
.credits a{display:inline-flex;align-items:center;min-height:44px}
.err{display:flex;gap:.4em;align-items:flex-start;font-size:14px;margin-top:6px}
.err::before{content:"!";flex:none;display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;border:2px solid currentColor;font-size:11px;font-weight:700;line-height:1}
body.menu-ouvert{overflow:hidden}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
/* Formulaires par étapes : les étapes 2+ sont masquées dès le premier rendu (évite un décalage quand ex.js, en defer, les cache) */
@media (scripting:enabled){form[data-etapes]:not(.et-pret) [data-etape]~[data-etape]{display:none}}

/* Copeaux & Fils : fiche design/artisan.md. Papier, graphite, sapin ; Plex Sans + Plex Mono ; angles droits, filets 1 px. */
@font-face{font-family:"Plex Sans";src:url(../fonts/plex-sans.woff2) format("woff2");font-weight:300 600;font-style:normal;font-display:optional}
@font-face{font-family:"Plex Mono";src:url(../fonts/plex-mono-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:optional}
:root{--papier:#EDE8DF;--blanc:#FAF8F4;--graphite:#1F2124;--gris:#5E6063;--sapin:#23493A;--chene:#B98B55;--repere:#B0301A;
--s:"Plex Sans",ui-sans-serif,system-ui,sans-serif;--mo:"Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;
--m:20px;--sec:72px;--hd:68px;--max:1440px}
@media (min-width:761px){:root{--m:48px;--sec:112px;--hd:80px}}
html{background:var(--papier);scroll-padding-top:calc(var(--hd) + 16px)}
body{background:var(--papier);color:var(--graphite);font:400 16px/1.6 var(--s)}
@media (min-width:1024px){body{font-size:18px;line-height:1.6}}
:focus-visible{outline:2px solid var(--sapin);outline-offset:2px;border-radius:0}
.pied :focus-visible{outline-color:var(--blanc)}
.mono{font-family:var(--mo);font-weight:500}
.h1{font:300 clamp(44px,7.8vw,120px)/.98 var(--s);letter-spacing:-.03em;text-wrap:balance}
.h2{font:300 clamp(32px,3.9vw,60px)/1.05 var(--s);letter-spacing:-.02em;margin-bottom:40px}
.h3,h3{font:600 20px/1.3 var(--s)}
@media (min-width:1024px){.h3,h3{font-size:24px;line-height:1.25}}
.chapo{font-size:18px;line-height:1.5;max-width:36em;margin-top:24px}
@media (min-width:1024px){.chapo{font-size:21px}}
.bloc{position:relative;max-width:var(--max);margin:0 auto;padding:var(--sec) var(--m) 0}
main{padding-bottom:var(--sec)}
.lien{display:inline-flex;align-items:center;min-height:44px;font-family:var(--mo);font-weight:500;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--sapin);text-underline-offset:4px}

/* Boutons : 48 px, angles droits, flèche */
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:0 18px;border:1px solid var(--sapin);background:var(--sapin);color:var(--blanc);font:500 14px/1.2 var(--mo);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;transition:background .2s,color .2s}
.btn .fl{font-family:var(--s);font-size:18px;transition:transform .2s}
.btn:hover{background:var(--graphite);border-color:var(--graphite)}
.btn:hover .fl{transform:translateX(4px)}
.btn-ligne{background:transparent;color:var(--graphite);border-color:var(--graphite)}
.btn-ligne:hover{background:var(--graphite);color:var(--blanc)}
.btn-petit{margin-top:16px}
.btn-grand{min-height:56px;padding:0 24px;margin-top:8px}
.boutons{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}

/* En-tête */
.hd{position:sticky;top:0;z-index:50;height:var(--hd);display:flex;align-items:center;gap:16px;padding:0 var(--m);background:var(--papier);border-bottom:1px solid var(--graphite)}
.hd-logo{flex:none;display:flex;align-items:center;min-height:44px}
.hd-logo img{width:auto;height:34px}
@media (min-width:761px){.hd-logo img{height:40px}}
.nav-bureau{display:none;margin-left:auto}
.nav-bureau ul{display:flex;gap:4px}
.nav-bureau a,.menu-liste a{text-decoration:none}
.nav-bureau a{display:flex;align-items:center;gap:6px;min-height:44px;padding:0 8px;font:500 13px/1 var(--mo);letter-spacing:.06em;text-transform:uppercase}
.nav-bureau .num,.menu-liste .num{color:var(--gris)}
.nav-bureau a:hover,.nav-bureau a[aria-current]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.nav-bureau a[aria-current] .num{color:var(--repere)}
.hd-menu{margin-left:auto;display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:0 16px;border:1px solid var(--graphite);background:transparent;font:500 14px/1 var(--mo);letter-spacing:.06em;text-transform:uppercase}
.plus{position:relative;width:12px;height:12px;flex:none}
.plus::before,.plus::after{content:"";position:absolute;left:0;top:5.5px;width:12px;height:1px;background:currentColor}
.plus::after{transform:rotate(90deg)}
@media (min-width:1180px){.nav-bureau{display:block}.hd-menu{display:none}}
@media (min-width:1300px){.nav-bureau a{padding:0 12px}}
.menu{position:fixed;inset:0;z-index:100;background:var(--papier);overflow-y:auto}
.menu-panneau{padding:10px var(--m) 40px}
.menu-x{display:flex;margin-left:auto;align-items:center;min-height:48px;padding:0 16px;border:1px solid var(--graphite);background:transparent;font:500 14px/1 var(--mo);letter-spacing:.06em;text-transform:uppercase}
.menu-liste{margin-top:24px;border-top:1px solid var(--graphite)}
.menu-liste a{display:flex;align-items:baseline;gap:16px;min-height:64px;padding:14px 0;border-bottom:1px solid var(--graphite);font:300 34px/1.1 var(--s);letter-spacing:-.02em}
.menu-liste .num{font:500 14px/1 var(--mo);letter-spacing:.06em}
.menu-liste a[aria-current]{color:var(--sapin)}
.menu-liste a[aria-current] .num{color:var(--repere)}

/* Grille visible (calque Animation) : contenu au-dessus */
.tr-hero,.page-tete{position:relative}
.heros-in,.page-tete>:not(.tr-grille){position:relative;z-index:1}

/* Héros */
.heros{max-width:var(--max);margin:0 auto;padding:40px var(--m) 0}
.heros-in{display:grid;gap:40px}
.heros-img{position:relative;padding-bottom:4px}
.heros-cadre{position:relative}
.heros-cadre picture img{width:100%;aspect-ratio:4/3;object-fit:cover}
.cote{display:block;overflow:visible;color:var(--graphite)}
.cote line{stroke:currentColor;stroke-width:1}
.cote .chiffre,.plan .chiffre{font:500 13px/1 var(--mo);letter-spacing:.06em;fill:var(--graphite);paint-order:stroke;stroke:var(--papier);stroke-width:14px;stroke-linejoin:round}
.cote-h{margin-top:12px;height:32px}
.cote-v{display:none}
@media (min-width:1024px){
  .heros{padding-top:72px}
  .heros-in{grid-template-columns:7fr 5fr;align-items:end;gap:48px}
  .heros-cadre{padding-right:44px}
  .heros-cadre picture img{aspect-ratio:4/5}
  .cote-v{display:block;position:absolute;top:0;right:0;width:32px;height:100%}
  .heros-img .cote-h{width:calc(100% - 44px)}
}

/* Chiffres */
.ch-liste{display:grid;gap:32px;border-top:1px solid var(--graphite);padding-top:32px}
.ch-liste li{display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:12px}
.ch-n{font:300 64px/1 var(--mo);letter-spacing:-.04em}
.ch-u{font-size:14px;letter-spacing:.06em;text-transform:uppercase}
.regle{grid-column:1/-1;display:block;height:10px;margin:14px 0 10px;background:repeating-linear-gradient(90deg,var(--graphite) 0 1px,transparent 1px 10%) left bottom/100% 10px no-repeat,linear-gradient(var(--graphite),var(--graphite)) left bottom/100% 1px no-repeat}
.ch-l{grid-column:1/-1;color:var(--gris)}
@media (min-width:761px){.ch-liste{grid-template-columns:repeat(3,1fr);gap:48px}.ch-n{font-size:88px}}

/* Réalisations choisies (accueil) */
.choix-liste{display:grid;gap:64px}
.choix{display:grid;gap:20px}
.choix-img picture img{width:100%;aspect-ratio:3/2;object-fit:cover}
.tr-fig,.fig{font:500 13px/1.4 var(--mo);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:clip;max-width:100%}
.tr-fig{width:max-content}
.choix-txt h3{margin-top:12px}
.fiche-mini{margin-top:10px;color:var(--gris)}
.fiche-mini dd+dd,.fiche-mini dd{margin:0}
.fiche-mini .mono{font-size:14px;letter-spacing:.02em;color:var(--graphite);margin-top:4px}
.suite{margin-top:40px}
@media (min-width:1024px){
  .choix-liste{gap:96px}
  .choix{grid-template-columns:repeat(12,1fr);gap:24px;align-items:end}
  .choix .choix-img{grid-column:1/8}.choix .choix-txt{grid-column:9/13;padding-bottom:48px}
  .choix.c1 .choix-img{grid-column:6/13;grid-row:1}.choix.c1 .choix-txt{grid-column:1/5;grid-row:1}
}

/* Le geste */
.geste{position:relative;max-width:var(--max);margin:var(--sec) auto 0;display:grid}
.geste-img picture img{width:100%;aspect-ratio:4/3;object-fit:cover}
.geste-txt{padding:32px var(--m) 0}
.sur{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--gris)}
.geste blockquote{margin-top:16px}
.geste blockquote p{font:300 32px/1.15 var(--s);letter-spacing:-.02em;text-wrap:balance}
@media (min-width:1024px){
  .geste{grid-template-columns:repeat(12,1fr);gap:24px;padding:0 var(--m);align-items:center}
  .geste-img{grid-column:1/8}.geste-txt{grid-column:8/13;padding:0}
  .geste blockquote p{font-size:44px;line-height:1.12}
  .geste-img picture img{aspect-ratio:4/5}
}

/* Méthode : fil sapin + 4 étapes */
.methode{position:relative}
.fil-pos{position:absolute;left:11px;top:6px;bottom:6px;width:2px;background:rgb(31 33 36 / .15)}
.fil-pos .tr-fil{height:100%}
.methode .etapes{display:grid;gap:36px;padding-left:44px}
.etape{position:relative}
.etape-n{position:absolute;left:-44px;top:2px;display:grid;place-items:center;width:24px;height:24px;background:var(--papier);font-size:13px;letter-spacing:0;color:var(--sapin)}
.etape p{margin-top:6px;max-width:32em}
.duree{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--sapin)}
@media (min-width:761px){
  .fil-pos{left:0;right:0;top:11px;bottom:auto;width:auto;height:2px}
  .fil-pos .tr-fil{height:2px;width:100%}
  .methode .etapes{grid-template-columns:repeat(4,1fr);gap:24px;padding:44px 0 0}
  .etape-n{left:0;top:-44px;width:auto;padding-right:8px;justify-content:start}
}

/* Bandeau copeaux */
.copeaux{max-width:var(--max);margin:var(--sec) auto 0;overflow:hidden}
.copeaux picture img{width:100%;aspect-ratio:3/2;object-fit:cover}
@media (min-width:761px){.copeaux picture img{aspect-ratio:21/9}}

/* Avis (accueil) */
.avis-duo{display:grid;gap:32px}
.avis-duo li{border-top:1px solid var(--graphite);padding-top:20px}
.avis-duo blockquote p{font:300 22px/1.4 var(--s)}
.qui{margin-top:14px;color:var(--gris);font-size:15px}
.qui strong{color:var(--graphite);font-weight:600}
@media (min-width:1024px){.avis-duo{grid-template-columns:1fr 1fr;gap:48px}.avis-duo blockquote p{font-size:26px}}

/* En-tête des pages */
.page-tete{padding-top:48px;padding-bottom:8px}
@media (min-width:1024px){.page-tete{padding-top:88px}}
.page-tete+.bloc{padding-top:48px}

/* Réalisations : filtres + planche */
.filtres{display:grid;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--graphite)}
.filtre-groupe{border:0;margin:0;padding:0;min-width:0}
.filtre-groupe legend{padding:0;margin-bottom:10px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--gris)}
.filtre-groupe ul{display:flex;flex-wrap:wrap;gap:8px}
.pastille{min-height:44px;padding:0 14px;border:1px solid var(--graphite);background:transparent;font:400 15px/1 var(--s)}
.pastille[aria-pressed="true"]{background:var(--graphite);color:var(--blanc)}
.pastille:hover{border-color:var(--sapin)}
.compte{margin-top:16px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;min-height:1.6em}
@media (min-width:1024px){.filtres{grid-template-columns:auto 1fr;gap:48px}}
.planche{display:grid;gap:56px;margin-top:40px}
.real-img{overflow:hidden}
.real-img picture img{width:100%;aspect-ratio:4/3;object-fit:cover}
.real .tr-fig{margin-top:16px}
.real h2{margin-top:8px}
.real-meta{margin-top:6px;color:var(--gris);font-size:15px}
.real-meta .mono{font-size:14px;color:var(--graphite)}
@media (min-width:761px){.planche{grid-template-columns:1fr 1fr;gap:56px 24px}}
@media (min-width:1024px){.planche{grid-template-columns:repeat(3,1fr);gap:72px 24px}}
.mention{margin-top:56px;max-width:44em;color:var(--gris);font-size:15px;border-top:1px solid var(--graphite);padding-top:16px}

/* Fiche (dialog) */
.fiche{width:min(940px,calc(100% - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:0;border:1px solid var(--graphite);border-radius:0;background:var(--blanc);color:var(--graphite);overflow:auto}
.fiche::backdrop{background:rgb(31 33 36 / .6)}
.fiche-tete{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 8px 8px 20px;background:var(--blanc);border-bottom:1px solid var(--graphite)}
.fiche-x{min-height:44px;padding:0 14px;border:1px solid var(--graphite);background:transparent;font:500 13px/1 var(--mo);letter-spacing:.06em;text-transform:uppercase}
.fiche-titre{padding:20px 20px 0}
.fiche-photos{display:grid;gap:8px;padding:16px 20px 0}
.fiche-photos picture img{width:100%;aspect-ratio:3/2;object-fit:cover}
.fiche-leg{padding:16px 20px 0;max-width:40em}
.fiche-bas{display:grid;gap:24px;padding:20px}
.tab-tech{width:100%;font-size:15px}
.tab-tech th,.tab-tech td{padding:10px 0;border-top:1px solid var(--graphite);text-align:left;vertical-align:top}
.tab-tech th{width:42%;padding-right:12px;font:500 13px/1.5 var(--mo);letter-spacing:.06em;text-transform:uppercase;color:var(--gris)}
.fiche-plan figcaption{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--gris);margin-bottom:8px}
.plan{width:100%;max-width:320px;height:auto}
.plan .plan-rect{fill:none;stroke:var(--graphite);stroke-width:1.5}
.plan .plan-diag{stroke:var(--gris);stroke-width:1;stroke-dasharray:4 4}
.plan line.tic,.plan .trait{stroke:var(--graphite);stroke-width:1}
.plan .chiffre{stroke:var(--blanc)}
@media (min-width:761px){.fiche-photos{grid-template-columns:1fr 1fr}.fiche-bas{grid-template-columns:1fr 1fr;align-items:start}}

/* L'atelier */
.histoire{display:grid;gap:40px}
.histoire-img picture img{width:100%;aspect-ratio:4/3;object-fit:cover}
.histoire-img .tr-fig,.histoire-img2 .tr-fig,.infos-img .tr-fig{margin-top:12px}
.grand-txt{font:300 22px/1.5 var(--s);max-width:34em}
.histoire-img2{margin-top:40px}
.histoire-img2 picture img{width:100%;aspect-ratio:1;object-fit:cover}
@media (min-width:1024px){
  .histoire{grid-template-columns:repeat(12,1fr);gap:24px;align-items:start}
  .histoire-img{grid-column:1/7}.histoire-txt{grid-column:8/13}
  .histoire-img picture img{aspect-ratio:4/5}
  .grand-txt{font-size:26px}
  .histoire-img2{width:70%;margin-left:auto}
}
.meth-img{margin-bottom:48px}
.meth-img picture img{width:100%;aspect-ratio:16/9;object-fit:cover}
@media (min-width:761px){.meth-img picture img{aspect-ratio:21/9}}
.bois-liste{display:grid;gap:40px}
.ech{width:100%;height:auto;aspect-ratio:2/1;border:1px solid var(--graphite)}
.bois-carte h3{margin-top:16px}
.bois-carte p{margin-top:6px}
@media (min-width:761px){.bois-liste{grid-template-columns:repeat(3,1fr);gap:24px}}

/* Avis */
.note{margin-top:24px;font-size:15px;letter-spacing:.06em;text-transform:uppercase}
.note-n{font:300 56px/1 var(--mo);letter-spacing:-.04em;text-transform:none;margin-right:6px}
.tab-avis{width:100%}
.tab-avis th,.tab-avis td{text-align:left;vertical-align:top}
.tab-avis thead th{font:500 13px/1.4 var(--mo);letter-spacing:.06em;text-transform:uppercase;color:var(--gris);padding:0 16px 12px 0;border-bottom:1px solid var(--graphite)}
.tab-avis tbody th,.tab-avis td{padding:20px 16px 20px 0;border-bottom:1px solid var(--graphite)}
.tab-avis tbody th{font-weight:600}
.tab-avis .cit{font-size:18px;line-height:1.5}
@media (min-width:1024px){.tab-avis .cit{width:52%;font-size:20px}}
@media (max-width:760px){
  .tab-avis thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .tab-avis,.tab-avis tbody,.tab-avis tr,.tab-avis th,.tab-avis td{display:block}
  .tab-avis tr{border-top:1px solid var(--graphite);padding:16px 0 24px}
  .tab-avis tbody th,.tab-avis td{padding:0;border:0}
  .tab-avis td{margin-top:4px;color:var(--gris);font-size:15px}
  .tab-avis td::before{content:attr(data-l) " · ";font:500 12px/1 var(--mo);letter-spacing:.06em;text-transform:uppercase}
  .tab-avis td.cit{margin-top:12px;color:var(--graphite);font-size:18px}
  .tab-avis td.cit::before{content:none}
}

/* Infos */
.infos-grille{display:grid;gap:48px}
.infos-grille>*{min-width:0}
.infos-blocs{display:grid;gap:0}
.info{border-top:1px solid var(--graphite);padding:20px 0 24px}
.info p,.info ul{margin-top:8px}
.info ul.mono{font-size:14px;line-height:1.8}
.info .cr{white-space:nowrap}
.info p.mono{font-size:14px;line-height:1.8;overflow-wrap:anywhere}
.infos-img picture img{width:100%;aspect-ratio:4/5;object-fit:cover}
@media (min-width:1024px){.infos-grille{grid-template-columns:7fr 5fr;gap:48px;align-items:start}}
@media (min-width:1280px){.infos-blocs{grid-template-columns:1fr 1fr;column-gap:24px}.infos-img{position:sticky;top:calc(var(--hd) + 24px)}}
.faq{border-top:1px solid var(--graphite)}
.faq:last-child{border-bottom:1px solid var(--graphite)}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:12px 0;font-weight:600;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq[open] .plus::after{transform:none}
.faq p{padding:0 0 20px;max-width:40em}
.faq-bloc{max-width:var(--max)}

/* Contact */
.devis{display:grid;gap:32px;max-width:820px}
.champ{border:0;margin:0;padding:0;min-width:0}
.champ>label,.champ>legend{display:block;padding:0;margin-bottom:10px;font:500 13px/1.4 var(--mo);letter-spacing:.06em;text-transform:uppercase}
.fac{color:var(--gris);text-transform:none;letter-spacing:0;font-family:var(--s);font-weight:400}
.aide{font-size:15px;color:var(--gris);margin:-4px 0 10px}
.cartes{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}
.carte-radio{position:relative;display:flex}
.carte-radio input{position:absolute;opacity:0;inset:0;margin:0;width:100%;height:100%;cursor:pointer}
.carte-radio span{flex:1;display:flex;align-items:center;min-height:56px;padding:10px 14px;border:1px solid var(--graphite);background:var(--blanc);font-size:15px;line-height:1.3}
.carte-radio input:checked+span{background:var(--sapin);border-color:var(--sapin);color:var(--blanc)}
.carte-radio input:focus-visible+span{outline:2px solid var(--sapin);outline-offset:2px}
.carte-radio:hover span{border-color:var(--sapin)}
input[type=text],input[type=number],select,textarea{width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--graphite);border-radius:0;background:var(--blanc);font-size:16px}
textarea{resize:vertical;line-height:1.5}
select{appearance:none;background:var(--blanc) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231F2124' stroke-width='1.5'/%3E%3C/svg%3E") right 14px center/12px 8px no-repeat;padding-right:40px}
.dims{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.dim{position:relative;display:block}
.dim>.mono:first-child{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--gris)}
.dim .u{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--gris)}
.dim input{padding:10px 34px 10px 28px;font-family:var(--mo);-moz-appearance:textfield}
.dim input::-webkit-inner-spin-button,.dim input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.fichier{display:block;width:100%;font-size:15px}
.fichier::file-selector-button{min-height:48px;margin-right:14px;padding:0 16px;border:1px solid var(--graphite);border-radius:0;background:transparent;font:500 13px/1 var(--mo);letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.fichier::file-selector-button:hover{background:var(--graphite);color:var(--blanc)}
[aria-invalid="true"],.champ:has([aria-invalid="true"]) .carte-radio span{border-color:var(--repere)}
.err{color:var(--repere)}
.statut{margin:0;padding:14px 16px;border:1px solid var(--sapin);background:var(--blanc);color:var(--sapin);font-size:14px;line-height:1.6}
.devis .btn-grand{justify-self:start}

/* Pied */
.pied{margin-top:0;background:var(--graphite);color:var(--blanc)}
.pied-in{max-width:var(--max);margin:0 auto;padding:56px var(--m) 32px;display:grid;gap:24px}
.pied-in img{height:48px;width:auto}
.pied-in .mono{font-size:13px;letter-spacing:.06em;text-transform:uppercase;line-height:1.8}
.pied-bas{max-width:var(--max);margin:0 auto;padding:0 var(--m) 32px;border-top:1px solid rgb(250 248 244 / .2);display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:16px}
.pied .credits{color:#C8C6C2}
.imagine{font-size:13px;color:#C8C6C2}
.imagine a{display:inline-flex;align-items:center;min-height:44px}
@media (min-width:1024px){.pied-in{grid-template-columns:auto 1fr 1fr;gap:48px;align-items:start}}
