*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body,h1,h2,h3,h4,p,dl,dd,figure,ol,ul,table,blockquote{margin:0}
ol,ul{list-style:none;padding:0}
img,picture,svg{display:block;max-width:100%}
input,button,textarea,select{font:inherit;color:inherit}
button{background:none;border:0;padding:0;cursor:pointer}
a{color:inherit}
table{border-collapse:collapse}
th{text-align:left}
:target{scroll-margin-top:var(--s-6)}
:root{--paper:#F4F3EE;--paper-2:#EAE8E1;--plate:#FBFAF6;--ink:#0F1B2D;--ink-2:#3A4658;--ink-3:#1C2A40;--muted:#56606F;--flame:#1A56B8;--flame-deep:#154596;--flame-soft:#DCE7F7;--flame-night:#8FB6F2;--copper:#C4611F;--line:#D5D1C6;--line-strong:#8A877D;--on-ink:#F4F3EE;--on-ink-muted:#A7B2C4;--on-ink-line:#3A4A63;--ok:#2E7A4C;--error:#B42318;--font-sans:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;--step--1:clamp(.875rem,.854rem + .104vw,.9375rem);--step-0:clamp(1.0625rem,1.042rem + .104vw,1.125rem);--step-1:clamp(1.1875rem,1.125rem + .313vw,1.375rem);--step-2:clamp(1.3125rem,1.208rem + .521vw,1.625rem);--step-3:clamp(1.5rem,1.333rem + .833vw,2rem);--step-4:clamp(1.875rem,1.625rem + 1.25vw,2.625rem);--step-5:clamp(2rem,1.5rem + 2.5vw,3.625rem);--mono-s:.8125rem;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:3rem;--s-8:4rem;--s-9:6rem;--s-10:8rem;--section-y:clamp(4rem,3.167rem + 4.167vw,7rem);--gutter:clamp(1.25rem,.833rem + 2.083vw,2.5rem);--content:71rem;--measure:36rem;--radius:2px;--tap:2.75rem;--header-h:4.5rem;--ease:cubic-bezier(.22,.61,.36,1);--dur:160ms;--t:var(--dur) var(--ease);--ease-out:cubic-bezier(.2,.7,.2,1);--d-in:650ms;--d-trace:800ms;--rise:20px}
body{background:var(--paper);color:var(--ink);font:400 var(--step-0)/1.6 var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
main{overflow-x:clip}
h1,h2,h3{font-weight:600;text-wrap:balance;letter-spacing:-.015em}
h1{font-size:var(--step-5);line-height:1.05;letter-spacing:-.025em}
h2{font-size:var(--step-4);line-height:1.1}
h3{font-size:var(--step-2);line-height:1.2}
p,li,dd{text-wrap:pretty}
strong{font-weight:600}
::selection{background:var(--flame-soft);color:var(--ink)}
:focus-visible{outline:2px solid var(--flame);outline-offset:3px}
:is(.on-ink,.on-flame) :focus-visible{outline-color:var(--on-ink)}
.container{width:100%;max-width:calc(var(--content) + 2 * var(--gutter));margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:var(--section-y)}
.section--tint{background:var(--paper-2)}
.section--ink{background:var(--ink);color:var(--on-ink)}
.section--tight-top{padding-top:var(--s-7)}
.grid-12{display:grid;gap:var(--s-7) var(--s-6)}
.eyebrow{display:flex;align-items:center;gap:var(--s-3);font:500 var(--mono-s)/1.3 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
.eyebrow::before{content:"";width:1.5rem;height:2px;background:var(--flame);flex:none}
.section--ink .eyebrow{color:var(--on-ink-muted)}
.section--ink .eyebrow::before{background:var(--flame-night)}
.head{max-width:46rem;margin-bottom:var(--s-7)}
.lead{font-size:var(--step-1);line-height:1.5;color:var(--ink-2);max-width:40rem;margin-top:var(--s-4)}
.section--ink .lead{color:var(--on-ink-muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:3rem;padding:0 1.25rem;border:1px solid transparent;border-radius:var(--radius);font:500 1.0625rem/1.2 var(--font-sans);text-decoration:none;text-align:center;transition:background-color var(--t),color var(--t),border-color var(--t)}
.btn svg{width:1.125rem;height:1.125rem;flex:none}
.btn--flame{background:var(--flame);color:#fff}
.btn--flame:hover{background:var(--flame-deep)}
.btn--ghost{border-color:var(--ink);color:var(--ink)}
.btn--ghost:hover{background:var(--paper-2)}
.btn--outline-white{border-color:#fff;color:#fff}
.btn--outline-white:hover{background:rgb(255 255 255/.12)}
.btn--s{min-height:var(--tap);padding:0 1rem;font-size:1rem}
.num{font-family:var(--font-mono);font-weight:500;letter-spacing:0;word-spacing:-.3em;font-variant-numeric:tabular-nums}
.link{display:inline-flex;align-items:center;gap:var(--s-2);min-height:var(--tap);color:var(--flame);font-weight:500;text-decoration:underline 1px;text-underline-offset:.3em}
.link svg{width:1rem;height:1rem;flex:none;transition:transform var(--t)}
.link:hover{color:var(--flame-deep);text-decoration-thickness:2px}
.link:hover svg{transform:translateX(3px)}
.text-link{color:var(--flame);text-underline-offset:.2em}
.text-link:hover{color:var(--flame-deep)}
.skip-link{position:absolute;left:var(--s-4);top:-6rem;z-index:30;display:inline-flex;align-items:center;min-height:var(--tap);padding:0 var(--s-5);background:var(--ink);color:var(--on-ink);font-weight:500;text-decoration:none}
.skip-link:focus{top:var(--s-4)}
main[tabindex="-1"]:focus{outline:0}
.site-header{position:relative;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}
.header__inner{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--s-4);padding-block:calc((var(--header-h) - var(--tap))/2)}
.brand{display:inline-flex;align-items:center;gap:var(--s-2);min-height:var(--tap);margin-right:auto;text-decoration:none;color:var(--ink)}
.brand__mark{width:2rem;height:2rem;flex:none;border-radius:50%}
.brand__word{font:600 1.375rem/1 var(--font-sans);letter-spacing:-.02em;white-space:nowrap}
.brand__sub{display:none;padding-left:.75rem;border-left:1px solid var(--line);font:500 .75rem/1.25 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.header__actions{display:flex;align-items:center;gap:var(--s-2)}
.header__call .header__call-long{display:none}
.menu-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-width:var(--tap);min-height:var(--tap);padding:0 .75rem;border:1px solid var(--line-strong);border-radius:var(--radius);font:500 .9375rem/1 var(--font-sans)}
.menu-btn__icon{position:relative;width:1.125rem;height:.75rem;flex:none}
.menu-btn__icon::before,.menu-btn__icon::after,.menu-btn__icon span{content:"";position:absolute;left:0;width:100%;height:2px;background:var(--ink);transition:transform var(--t),opacity var(--t),top var(--t)}
.menu-btn__icon::before{top:0}
.menu-btn__icon span{top:5px}
.menu-btn__icon::after{top:10px}
.menu-btn[aria-expanded="true"] .menu-btn__icon::before{top:5px;transform:rotate(45deg)}
.menu-btn[aria-expanded="true"] .menu-btn__icon span{opacity:0}
.menu-btn[aria-expanded="true"] .menu-btn__icon::after{top:5px;transform:rotate(-45deg)}
.nav{order:3;flex:1 0 100%;margin:calc((var(--header-h) - var(--tap))/2) calc(-1 * var(--gutter)) calc((var(--tap) - var(--header-h))/2)}
.nav__list{background:var(--paper);border-top:1px solid var(--line)}
.js .nav__list{display:none}
.js .nav__list.is-open{display:block}
.nav__link{display:flex;align-items:center;min-height:3.25rem;padding:0 var(--gutter);border-bottom:1px solid var(--line);font:500 1.1875rem/1.2 var(--font-sans);text-decoration:none}
.nav__link[aria-current]{color:var(--flame)}
.subnav .nav__link{min-height:3rem;padding-left:calc(var(--gutter) + 1rem);border-bottom:0;font-size:1.0625rem;font-weight:400}
.subnav{padding-bottom:var(--s-2);border-bottom:1px solid var(--line)}
.subnav .nav__link::before{content:"";width:.625rem;height:2px;margin-right:.75rem;background:var(--copper);flex:none}
.nav__caret{display:none}
.nav__foot{display:grid;gap:var(--s-4);padding:var(--s-5) var(--gutter) var(--s-7)}
.nav__foot .btn{width:100%}
.nav__mail{display:inline-flex;align-items:center;min-height:var(--tap);color:var(--flame);font-weight:500}
html:not(.js) .menu-btn,html:not(.js) .nav__caret{display:none}
.photo__frame{position:relative;overflow:hidden;background:var(--paper-2)}
.photo__frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.03)}
.photo figcaption,.caption{margin-top:var(--s-2);font:400 .8125rem/1.3 var(--font-sans);color:var(--muted)}
.caption{text-align:right}
.photo:has(> .split__portrait){width:100%;max-width:28rem}
.r-4-3{aspect-ratio:4/3}
.r-3-2{aspect-ratio:3/2}
.r-4-5{aspect-ratio:4/5}
.r-1-1{aspect-ratio:1/1}
.plaque{position:relative;background:var(--plate);border:1px solid var(--ink);border-radius:var(--radius);color:var(--ink)}
.plaque__head{display:flex;justify-content:space-between;align-items:center;gap:var(--s-4);padding:.625rem 1.5rem;background:var(--ink);color:var(--on-ink);line-height:1.2}
.plaque__head,.plaque__foot{position:relative}
.plaque__head::before,.plaque__head::after,.plaque__foot::before,.plaque__foot::after{content:"";position:absolute;top:50%;width:6px;height:6px;margin-top:-3px;border-radius:50%}
.plaque__head::before,.plaque__head::after{background:var(--ink-2);box-shadow:inset 0 0 0 1px var(--on-ink-muted)}
.plaque__foot::before,.plaque__foot::after{background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line-strong)}
.plaque__head::before,.plaque__foot::before{left:.5rem}
.plaque__head::after,.plaque__foot::after{right:.5rem}
.plaque__list > div{display:grid;grid-template-columns:6.5rem minmax(0,1fr);gap:var(--s-3);align-items:baseline;padding:.625rem 1.5rem;border-top:1px solid var(--line)}
.plaque__list > div:first-child{border-top:0}
.plaque__list dt{line-height:1.3;color:var(--muted)}
.plaque__list dd{font-size:1rem;font-weight:500;line-height:1.35}
.plaque__list a{color:var(--flame);text-decoration:none}
.plaque__list a:hover{text-decoration:underline}
.plaque__foot{padding:.625rem 1.5rem;border-top:1px solid var(--ink);font:400 .75rem/1.3 var(--font-mono);color:var(--muted);text-align:center}
.plaque__foot a{color:var(--flame)}
.hero{padding-top:clamp(2.5rem,1.5rem + 4vw,4.5rem);padding-bottom:var(--s-9)}
.hero__head h1{margin-top:var(--s-5);max-width:34ch}
.hero__body{padding-inline:var(--gutter);margin-top:var(--s-7)}
.hero__text .lead{margin-top:0}
.hero__actions{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-6)}
.hero__actions .btn{flex:1 1 15rem}
.hero__note{display:flex;align-items:center;gap:var(--s-2);margin-top:var(--s-5);font:400 var(--mono-s)/1.4 var(--font-mono);color:var(--ink-2)}
.hero__note svg{width:1rem;height:1rem;color:var(--flame);flex:none}
.hero__media{position:relative;margin-top:var(--s-7);margin-inline:calc(-1 * var(--gutter))}
.hero__media .caption,.page-head__media .caption{position:absolute;top:var(--s-3);right:var(--gutter);margin:0;padding:.125rem .5rem;background:rgb(244 243 238/.88);color:var(--ink-2)}
.hero__plaque{position:relative;z-index:2;margin:calc(-1 * var(--s-7)) var(--gutter) 0;max-width:24rem}
.reperes{display:none}
.repere{position:absolute;left:var(--x);top:var(--y)}
.repere--thermo{--x:55.9%;--y:26%;--a:-150deg;--len:48px;--dx:-41.6px;--dy:-24px;--i:0}
.repere--vanne{--x:74.2%;--y:36.5%;--a:-30deg;--len:48px;--dx:41.6px;--dy:-24px;--i:1}
.repere--circ{--x:76.2%;--y:58.3%;--a:60deg;--len:40px;--dx:20px;--dy:34.6px;--i:2}
.repere__pt{position:absolute;z-index:1;left:-6px;top:-6px;width:12px;height:12px;border:2px solid var(--plate);border-radius:50%;background:var(--flame);box-shadow:0 0 0 1px rgb(15 27 45/.4)}
.repere__line{position:absolute;left:0;top:0;width:var(--len);transform:rotate(var(--a));transform-origin:0 0}
.repere__line::before{content:"";position:absolute;left:0;top:-.75px;width:100%;height:1.5px;background:var(--plate);box-shadow:0 0 0 1px rgb(15 27 45/.4);transform-origin:0 50%}
.repere__lbl{position:absolute;left:var(--dx);top:var(--dy);transform:translate(4px,-50%);padding:4px 8px;border-radius:var(--radius);background:var(--plate);color:var(--ink);font:500 12px/1.2 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.repere--thermo .repere__lbl{transform:translate(calc(-100% - 4px),-50%)}
.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center}
.breadcrumb li{display:flex;align-items:center;font:400 var(--mono-s)/1.3 var(--font-mono);color:var(--muted)}
.breadcrumb li:not(:last-child)::after{content:"/";margin-inline:.5rem;color:var(--line-strong)}
.breadcrumb a{display:inline-flex;align-items:center;min-height:var(--tap);color:var(--ink-2);text-underline-offset:.25em}
.breadcrumb a:hover{color:var(--flame)}
.page-head{padding-top:var(--s-4);padding-bottom:var(--s-9)}
.page-head__text .eyebrow{margin-top:var(--s-5)}
.page-head__text h1{margin-top:var(--s-4);font-size:clamp(2.125rem,1.771rem + 1.771vw,3.125rem);max-width:20ch}
.page-head__text .lead{margin-top:var(--s-4)}
.page-head__actions{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-6)}
.page-head__actions .btn{flex:1 1 13rem}
.page-head__media{position:relative;margin-top:var(--s-7)}
.page-head--has-plaque .page-head__media{margin-inline:calc(-1 * var(--gutter))}
.page-head__media--portrait .photo__frame{max-height:34rem}
.page-head__media--portrait .caption{right:var(--s-3)}
.page-head__plaque{position:relative;z-index:2;margin:calc(-1 * var(--s-7)) var(--gutter) 0;max-width:26rem}
.page-head--simple{padding-bottom:var(--s-7)}
.page-head__coord{margin-top:var(--s-6);max-width:30rem}
.offre__grid{display:grid;gap:var(--s-7)}
.offre__plaque{max-width:26rem}
.spec-rows{border-top:2px solid var(--ink)}
.spec-row{position:relative;display:grid;grid-template-columns:2.75rem minmax(0,1fr);gap:var(--s-1) var(--s-4);padding:var(--s-5) 0;border-bottom:1px solid var(--line)}
.spec-row__num{grid-row:1/4;font:500 var(--mono-s)/1.9 var(--font-mono);color:var(--flame)}
.spec-row h3{font-size:var(--step-2)}
.spec-row h3 a{text-decoration:none}
.spec-row h3 a::after{content:"";position:absolute;inset:0}
.spec-row p{color:var(--ink-2);max-width:34rem}
.spec-row__meta{display:flex;align-items:center;gap:var(--s-2);margin-top:var(--s-2);font:500 .75rem/1.3 var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.spec-row__meta::before{content:"";width:6px;height:6px;background:var(--copper);flex:none}
.spec-row__arrow{display:none}
.spec-row:has(a:focus-visible){outline:2px solid var(--flame);outline-offset:2px}
.spec-row h3 a:focus-visible{outline:none}
.spec-row h3 .u{position:relative}
.spec-row h3 .u::after{content:"";position:absolute;left:0;right:0;bottom:-.1em;height:2px;background:var(--flame);transform:scaleX(0);transform-origin:0 50%;transition:transform var(--t)}
.spec-row:has(a:focus-visible) h3 .u::after{transform:scaleX(1)}
.offre__aussi{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-2) var(--s-5);margin-top:var(--s-5);color:var(--ink-2)}
.chantiers__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s-5);margin-bottom:var(--s-7)}
.chantiers__head .head{flex:1 1 30rem;margin-bottom:0}
.rail-nav{display:flex;gap:var(--s-2);margin-left:auto}
.rail-nav__btn{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border:1px solid var(--ink);border-radius:var(--radius);color:var(--ink);transition:background-color var(--t),color var(--t)}
.rail-nav__btn svg{width:1.25rem;height:1.25rem}
.rail-nav__btn--prev svg{transform:rotate(180deg)}
.rail-nav__btn:hover:not(:disabled){background:var(--ink);color:var(--on-ink)}
.rail-nav__btn:disabled{border-color:var(--line-strong);color:var(--line-strong);cursor:default}
html:not(.js) .rail-nav{display:none}
.rail{--pad:max(var(--gutter),calc((100% - var(--content)) / 2));display:flex;gap:var(--s-4);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:0 var(--pad) var(--s-4);scroll-padding-inline:var(--pad);scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}
.rail > li{flex:0 0 80%;scroll-snap-align:start}
.rail:focus-visible{outline:2px solid var(--flame);outline-offset:-2px}
.chantier .photo__frame img{transition:transform 500ms var(--ease-out)}
.chantier figcaption{display:flex;flex-direction:column;gap:var(--s-1);margin-top:var(--s-3);font-size:var(--step--1);line-height:1.4;color:var(--ink-2)}
.chantier figcaption .num{color:var(--flame);font-size:.8125rem;line-height:1.4}
.registre__grid{display:grid;gap:var(--s-7)}
.registre{width:100%;border-top:2px solid var(--on-ink);font-size:1rem}
.registre th,.registre td{vertical-align:top}
.registre thead th{padding:.75rem var(--s-3) .75rem 0;line-height:1.3;color:var(--on-ink-muted);border-bottom:1px solid var(--on-ink-line)}
.registre tbody th,.registre td{padding:var(--s-4) var(--s-3) var(--s-4) 0;border-bottom:1px solid var(--on-ink-line)}
.registre tbody th{font-weight:600;font-size:1.0625rem;color:#fff}
.registre td{color:var(--on-ink-muted);line-height:1.45}
.registre .org{display:block;margin-bottom:var(--s-1);line-height:1.4;color:var(--on-ink-muted)}
.registre .agr{display:block;color:var(--on-ink);text-wrap:balance}
.registre .num{color:var(--flame-night);display:block}
.registre a{white-space:nowrap;color:var(--flame-night);display:inline-flex;align-items:center;gap:.25rem;min-height:var(--tap);text-underline-offset:.2em}
.registre a:hover{color:#fff}
.registre a svg{flex:none;width:.875rem;height:.875rem;transition:transform var(--t)}
.registre a:focus-visible svg{transform:translate(2px,-2px)}
.registre__nums{margin-block:-.625rem}
.registre__nums li{display:flex;align-items:center;gap:var(--s-3)}
.registre__lbl{min-width:2.5rem;font:500 .75rem/1 var(--font-mono);letter-spacing:.06em;color:var(--on-ink-muted)}
.registre__note{margin-top:var(--s-5);font-size:var(--step--1);color:var(--on-ink-muted);max-width:44rem}
.carte{color:var(--on-ink-muted)}
.carte svg{width:100%;height:auto;overflow:visible}
.carte .region{fill:var(--ink-3);stroke:var(--on-ink-muted);stroke-width:1.2;stroke-linejoin:round}
.carte .region--bxl{fill:var(--flame);stroke:var(--flame-night)}
.carte .pin{fill:var(--copper);stroke:var(--on-ink);stroke-width:1.5}
.carte .lead-line{stroke:var(--on-ink-muted);stroke-width:1;fill:none}
.carte text.t-pin{paint-order:stroke;stroke:var(--ink);stroke-width:3px;stroke-linejoin:round}
.carte text{font-family:var(--font-mono);fill:var(--on-ink-muted);font-size:14px;letter-spacing:.02em}
.carte text.t-region{fill:var(--on-ink);font-size:17px;font-weight:500;letter-spacing:.08em}
.carte text.t-num{fill:var(--flame-night)}
.carte figcaption{margin-top:var(--s-3);font:400 .75rem/1.4 var(--font-mono);color:var(--on-ink-muted)}
.table-loi{width:100%;background:var(--plate);border:1px solid var(--ink);border-radius:var(--radius)}
.table-loi th,.table-loi td{vertical-align:top;padding:var(--s-4) var(--s-5);border-top:1px solid var(--line)}
.table-loi thead th{border-top:0;background:var(--ink);color:var(--on-ink);line-height:1.3}
.table-loi tbody th{width:22%;line-height:1.5;color:var(--muted)}
.table-loi td{color:var(--ink);line-height:1.45}
.table-loi .freq{display:block;font:500 var(--step-3)/1.1 var(--font-mono);letter-spacing:-.02em;word-spacing:-.3em;color:var(--flame)}
.table-loi .freq + span{display:block;margin-top:var(--s-1);color:var(--ink-2);font-size:var(--step--1)}
.table-loi a{color:var(--flame);text-underline-offset:.2em}
.table-note{margin-top:var(--s-4);font-size:var(--step--1);color:var(--muted);max-width:46rem}
.conduite{position:relative;display:grid;gap:var(--s-6);counter-reset:etape}
.conduite::before{content:"";position:absolute;left:1.4375rem;top:1.5rem;bottom:1.5rem;width:4px;background:var(--copper);border-radius:2px}
.etape{position:relative;display:grid;grid-template-columns:3rem minmax(0,1fr);gap:0 var(--s-5);counter-increment:etape}
.etape__nut{grid-row:1/3;position:relative;display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;background:var(--ink);color:var(--on-ink);clip-path:polygon(25% 3%,75% 3%,100% 50%,75% 97%,25% 97%,0% 50%);font:500 .9375rem/1 var(--font-mono)}
.etape__nut::before{content:counter(etape,decimal-leading-zero)}
.etape h3{font-size:var(--step-1);padding-top:.625rem}
.etape p{margin-top:var(--s-2);color:var(--ink-2);max-width:30rem}
.cibles{display:grid;gap:0;border-top:2px solid var(--ink)}
.cible{padding:var(--s-5) 0;border-bottom:1px solid var(--line)}
.cible p{margin-top:var(--s-2);color:var(--ink-2);max-width:30rem}
.avis blockquote p{margin:0;font-size:var(--step-1);line-height:1.45;color:var(--ink)}
.avis figcaption{margin-top:var(--s-4);font:400 var(--mono-s)/1.4 var(--font-mono);color:var(--muted)}
.avis__date{display:block}
.avis .cible:first-child blockquote p{font-size:var(--step-3);line-height:1.25;text-wrap:balance}
.pression{display:grid;gap:var(--s-7);align-items:center}
.mano svg{width:100%;max-width:24rem;margin-inline:auto;height:auto}
.mano .aiguille{transform-box:view-box;transform-origin:120px 120px}
.mano .dial{fill:var(--paper);stroke:var(--ink);stroke-width:2}
.mano .tick{stroke:var(--ink);stroke-width:1.5}
.mano .tick--s{stroke:var(--line-strong);stroke-width:1}
.mano .zone-ok{stroke:var(--ok);stroke-width:10;fill:none}
.mano .zone-max{stroke:var(--error);stroke-width:10;fill:none}
.mano .needle{fill:var(--flame)}
.mano .hub{fill:var(--ink)}
.mano text{font-family:var(--font-mono);fill:var(--ink);font-size:15px}
.mano text.unit{fill:var(--muted);font-size:13px;letter-spacing:.08em}
.mano figcaption{max-width:38ch;margin:var(--s-4) auto 0;text-align:center;text-wrap:balance;font:400 .75rem/1.4 var(--font-mono);color:var(--muted)}
.checks{counter-reset:check;display:grid;gap:var(--s-5);margin-top:var(--s-7)}
.checks li{position:relative;padding-left:3rem;counter-increment:check}
.checks li::before{content:counter(check);position:absolute;left:0;top:.125rem;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid var(--ink);border-radius:50%;font:500 .875rem/1 var(--font-mono)}
.checks strong{display:block;font-size:var(--step-1);line-height:1.3}
.checks li > span{display:block;margin-top:var(--s-1);color:var(--ink-2)}
.source{margin-top:var(--s-5);font:400 .75rem/1.5 var(--font-mono);color:var(--muted)}
.source a{color:var(--ink-2)}
.section.zone{padding-top:0}
.zone__photo{position:relative}
.zone__photo .photo__frame{aspect-ratio:16/9}
.zone__body{display:grid;gap:var(--s-5);margin-top:var(--s-7)}
.zone__text p + p{margin-top:var(--s-4)}
.zone__text p{color:var(--ink-2);max-width:var(--measure)}
.zone__regions{margin-top:var(--s-5);border-top:1px solid var(--ink)}
.zone__regions li{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-4);padding:.75rem 0;border-bottom:1px solid var(--line);font-weight:500}
.zone__lien{margin-top:var(--s-4)}
.zone__regions li > span:last-child{font:400 var(--mono-s)/1.6 var(--font-mono);color:var(--muted);text-align:right}
.faq{border-top:2px solid var(--ink);max-width:52rem}
.faq__item{border-bottom:1px solid var(--line)}
.faq__q{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);min-height:3.5rem;padding:var(--s-4) 0;font:600 var(--step-1)/1.35 var(--font-sans);text-wrap:balance;cursor:pointer;list-style:none}
.faq__q::-webkit-details-marker{display:none}
.faq__q:hover{color:var(--flame-deep)}
.faq__mark{position:relative;flex:none;width:1.75rem;height:1.75rem;border:1px solid var(--ink);border-radius:var(--radius)}
.faq__mark::before,.faq__mark::after{content:"";position:absolute;left:50%;top:50%;width:.75rem;height:2px;background:var(--ink);transform:translate(-50%,-50%);transition:transform var(--t)}
.faq__mark::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq__item[open] .faq__mark{background:var(--flame);border-color:var(--flame)}
.faq__item[open] .faq__mark::before,.faq__item[open] .faq__mark::after{background:#fff}
.faq__item[open] .faq__mark::after{transform:translate(-50%,-50%) rotate(0deg)}
.faq__a{padding:0 0 var(--s-5);color:var(--ink-2);max-width:var(--measure)}
.faq__a p + p{margin-top:var(--s-3)}
.faq-layout__note{margin-top:var(--s-4);color:var(--ink-2)}
.faq-layout__note a,.appel__meta a{position:relative}
.faq-layout__note a::after,.appel__meta a::after{content:"";position:absolute;left:0;right:0;top:50%;height:var(--tap);transform:translateY(-50%)}
.appel{background:var(--flame);color:#fff;padding-block:var(--section-y)}
.appel__grid{display:grid;gap:var(--s-6)}
.appel__titre{color:#fff;max-width:28ch}
.appel__tel{justify-self:start;display:inline-flex;flex-direction:column;gap:var(--s-3);color:#fff;text-decoration:none}
.appel__tel-lbl{display:inline-flex;align-items:center;gap:var(--s-2);font:500 var(--mono-s)/1.3 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}
.appel__tel-lbl svg{width:1rem;height:1rem;flex:none}
.appel__tel-num{position:relative;font:500 clamp(2.25rem,11.5vw,6rem)/1 var(--font-mono);letter-spacing:0;word-spacing:-.3em;white-space:nowrap;font-variant-numeric:tabular-nums}
.appel__tel-num::after{content:"";position:absolute;left:0;right:0;bottom:-.14em;height:3px;background:#fff;transform:scaleX(0);transform-origin:0 50%;transition:transform var(--t)}
.appel__tel:focus-visible{outline:3px solid #fff;outline-offset:6px}
.appel__text{color:#fff;opacity:.92;max-width:34rem}
.appel__actions{display:grid;gap:var(--s-3);align-content:start;max-width:26rem}
.appel__actions .btn{width:100%}
.appel__meta{margin-top:var(--s-1);font:400 var(--mono-s)/1.5 var(--font-mono);color:#fff;opacity:.9}
.appel__meta a{color:#fff}
.appel__avis{margin-top:var(--s-5)}
.appel__avis figcaption{margin-top:var(--s-2);font:400 var(--mono-s)/1.5 var(--font-mono)}
.site-footer{background:var(--ink);color:var(--on-ink)}
.footer__grid{display:grid;gap:var(--s-7) var(--s-6);padding-block:var(--s-8) var(--s-7)}
.footer__brand .brand{color:var(--on-ink)}
.footer__brand p{margin-top:var(--s-4);color:var(--on-ink-muted);max-width:30ch}
.footer__col h2{line-height:1.3;color:var(--on-ink-muted);min-height:var(--tap);display:flex;align-items:center}
.footer__links a{display:flex;align-items:center;min-height:var(--tap);padding-block:.375rem;line-height:1.35;color:var(--on-ink);text-decoration:none}
.footer__links a:hover,.footer__links a[aria-current]{color:var(--flame-night);text-decoration:underline;text-underline-offset:.25em}
.footer__contact{display:grid;gap:var(--s-1)}
.footer__contact a{display:inline-flex;align-items:center;min-height:var(--tap);color:var(--on-ink);text-underline-offset:.25em}
.footer__contact a.num{font-size:1.125rem}
.footer__hours{margin-top:var(--s-3);color:var(--on-ink)}
.footer__hours > span:not(.nowrap){font-size:var(--step--1);color:var(--on-ink-muted)}
.footer__contact address{font-style:normal;color:var(--on-ink-muted);margin-top:var(--s-2)}
.footer__urgence{margin-top:var(--s-5);padding:var(--s-3) var(--s-4);border:1px solid var(--on-ink-line);border-radius:var(--radius);font-size:var(--step--1);color:var(--on-ink-muted)}
.footer__urgence strong{color:var(--on-ink)}
.footer__legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s-2) var(--s-6);padding-block:var(--s-5);border-top:1px solid var(--on-ink-line);font-size:var(--step--1);color:var(--on-ink-muted)}
.footer__brand .footer__urgence{max-width:none}
.besoin{width:100%;border-top:2px solid var(--ink)}
.besoin th,.besoin td{padding:var(--s-4) var(--s-4) var(--s-4) 0;border-bottom:1px solid var(--line);vertical-align:baseline}
.besoin thead th{line-height:1.3;color:var(--muted)}
.besoin td:last-child{white-space:nowrap}
.besoin td a{color:var(--flame);font-weight:500;text-underline-offset:.2em;display:inline-flex;min-height:var(--tap);align-items:center}
.besoin tbody tr{position:relative;transition:background-color var(--t)}
.besoin td a::after{content:"";position:absolute;inset:0}
.besoin td a:focus-visible{outline:none}
.besoin tbody tr:has(a:focus-visible){outline:2px solid var(--flame);outline-offset:-2px}
.blocs{display:grid;gap:var(--s-6)}
.bloc{background:var(--plate);border:1px solid var(--ink);border-radius:var(--radius);display:flex;flex-direction:column}
.bloc__head{display:flex;justify-content:space-between;align-items:center;padding:.625rem var(--s-5);background:var(--ink);color:var(--on-ink);line-height:1.2}
.bloc__body{padding:var(--s-5);display:flex;flex-direction:column;gap:var(--s-4);flex:1}
.bloc__body h3{font-size:var(--step-3)}
.bloc__body > p{color:var(--ink-2)}
.bloc__body .link{margin-top:auto}
.puces{display:grid;gap:var(--s-2)}
.puces li{position:relative;padding-left:1.25rem}
.puces li::before{content:"";position:absolute;left:0;top:.72em;width:.5rem;height:2px;background:var(--copper)}
.split{display:grid;gap:var(--s-7);align-items:center}
.split__text p{color:var(--ink-2);max-width:var(--measure);margin-top:var(--s-5)}
.complement-sec{padding-block:var(--s-8)}
.complement{display:grid;gap:var(--s-4) var(--s-6)}
.complement__texte{color:var(--ink-2);max-width:var(--measure)}
.complement__lien{justify-self:start}
.fiche{border-top:2px solid var(--ink);counter-reset:fiche}
.fiche li{display:grid;grid-template-columns:2.75rem minmax(0,1fr);gap:var(--s-4);padding:var(--s-4) 0;border-bottom:1px solid var(--line);counter-increment:fiche}
.fiche li::before{content:counter(fiche,decimal-leading-zero);font:500 var(--mono-s)/1.8 var(--font-mono);color:var(--flame)}
.fiche strong{display:block;font-size:var(--step-1);line-height:1.35}
.fiche div > span{display:block;color:var(--ink-2);margin-top:var(--s-1)}
.encadre{margin-top:var(--s-6);padding:var(--s-5);background:var(--plate);border:1px solid var(--ink);border-radius:var(--radius);max-width:44rem}
.encadre > :first-child{margin-top:0}
.encadre p{color:var(--ink)}
.encadre p + p{margin-top:var(--s-3);color:var(--ink-2)}
.prose p{color:var(--ink-2);max-width:var(--measure)}
.prose p + p{margin-top:var(--s-4)}
.circuit{background:var(--plate);border:1px solid var(--ink);border-radius:var(--radius);padding:var(--s-5)}
.circuit svg{width:100%;height:auto}
.circuit .c-line{fill:none;stroke:var(--ink);stroke-width:1.5}
.circuit .c-dep{fill:none;stroke:var(--copper);stroke-width:3}
.circuit .c-ret{fill:none;stroke:var(--flame);stroke-width:3}
.circuit .c-fill{fill:var(--paper-2);stroke:var(--ink);stroke-width:1.5}
.circuit .c-white{fill:var(--plate);stroke:var(--ink);stroke-width:1.5}
.circuit .c-tag{fill:var(--ink);transition:fill var(--t)}
.anatomie .anatomie__note{margin-top:calc(var(--s-4) - var(--s-7))}
.circuit text{font-family:var(--font-mono);font-size:13px;fill:var(--ink)}
.circuit .c-tag-t{fill:var(--on-ink);font-size:12px;font-weight:500}
.circuit .c-tag-n{font-size:16px}
.circuit .c-flame{fill:var(--flame)}
.circuit .c-dash{fill:none;stroke:var(--line-strong);stroke-dasharray:3 3}
.circuit .c-wire{stroke-dasharray:4 4}
.circuit figcaption{margin-top:var(--s-3);display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-5);font:400 .75rem/1.4 var(--font-mono);color:var(--muted)}
.circuit figcaption span{display:grid;grid-template-columns:1.25rem minmax(0,1fr);gap:var(--s-2);align-items:baseline}
.legend-dep::before,.legend-ret::before{content:"";height:3px;background:var(--copper)}
.legend-ret::before{background:var(--flame)}
.legend-iso::before{content:"";align-self:center;height:.625rem;border:1px dashed var(--line-strong)}
.securite{background:var(--plate);border:2px solid var(--ink);border-radius:var(--radius)}
.securite__head{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-4) var(--s-5);background:var(--ink);color:var(--on-ink)}
.securite__head svg{width:1.5rem;height:1.5rem;color:var(--flame-night);flex:none}
.securite__head h2{font-size:var(--step-2);color:var(--on-ink)}
.securite__body{padding:var(--s-5);display:grid;gap:var(--s-6)}
.securite__steps{display:grid;gap:var(--s-2);counter-reset:s}
.securite__steps li{position:relative;padding-left:2rem;counter-increment:s}
.securite__steps li::before{content:counter(s);position:absolute;left:0;top:.1em;font:500 .875rem/1.6 var(--font-mono);color:var(--flame)}
.urgences{width:100%}
.urgences th,.urgences td{padding:.625rem var(--s-3) .625rem 0;border-bottom:1px solid var(--line);vertical-align:middle}
.urgences th{font-weight:500}
.urgences .op{display:block;font-size:var(--step--1);font-weight:400;color:var(--muted)}
.urgences td{text-align:right;color:var(--ink-2)}
.urgences a{color:var(--flame);font:500 1.0625rem/1 var(--font-mono);word-spacing:-.3em;white-space:nowrap;display:inline-flex;min-height:var(--tap);align-items:center;text-underline-offset:.2em}
.securite__note{font-size:var(--step--1);color:var(--muted)}
.pannes{width:100%;border-top:2px solid var(--ink)}
.pannes th,.pannes td{vertical-align:top;padding:var(--s-4) var(--s-4) var(--s-4) 0;border-bottom:1px solid var(--line)}
.pannes thead th{line-height:1.3;color:var(--muted)}
.pannes tbody th{font-weight:600;width:28%}
.pannes td{color:var(--ink-2)}
.contact__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-8)}
.securite__body > *{min-width:0}
.form{margin-top:var(--s-6)}
.contact__head + .form{margin-top:0}
.form__errors{margin-bottom:var(--s-6);padding:var(--s-5);background:var(--plate);border:2px solid var(--error);border-radius:var(--radius)}
.form__errors p{font-weight:600;color:var(--error)}
.form__errors ul{margin-top:var(--s-3);display:grid;gap:var(--s-1)}
.form__errors a{display:inline-flex;align-items:center;min-height:var(--tap);color:var(--error);font-weight:500}
.fieldset{border:0;padding:0;margin:0;min-width:0}
.fieldset + .fieldset{margin-top:var(--s-7)}
.fieldset legend{padding:0;margin-bottom:var(--s-5);line-height:1.3;color:var(--ink-2)}
.field{display:flex;flex-direction:column;min-width:0}
.field + .field{margin-top:var(--s-5)}
.field label{font-weight:500}
.field .opt{font-weight:400;color:var(--muted)}
.field .hint{margin-top:var(--s-1);font-size:var(--step--1);color:var(--muted)}
.field input,.field select,.field textarea{width:100%;min-width:0;min-height:3rem;margin-top:var(--s-2);padding:.75rem .875rem;background:var(--plate);border:1px solid var(--line-strong);border-radius:var(--radius);font-size:1.0625rem}
.field textarea{min-height:9rem;resize:vertical}
.field select{appearance:none;padding-right:2.75rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F1B2D' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .875rem center;background-size:1rem}
.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--ink)}
.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--ink);outline-offset:2px}
.field [aria-invalid="true"]{border:2px solid var(--error)}
.field__error{margin-top:var(--s-2);font-weight:500;font-size:var(--step--1);color:var(--error)}
.form__privacy{margin-top:var(--s-6);font-size:var(--step--1);color:var(--muted)}
.form__privacy a{color:var(--flame)}
.form__submit{margin-top:var(--s-6)}
.form__submit .btn{width:100%}
.form__help{margin-top:var(--s-3);font-size:var(--step--1);color:var(--muted)}
.form__help a{color:var(--flame)}
html:not(.js) .form__submit-btn{display:none}
.js .form__fallback{display:none}
.form__success{display:flex;gap:var(--s-3);margin-top:var(--s-5);padding:var(--s-4) var(--s-5);background:var(--plate);border:1px solid var(--ok);border-radius:var(--radius);color:var(--ok);font-weight:500}
.form__success[hidden],.form__errors[hidden],.field__error[hidden]{display:none}
.form__success svg{width:1.25rem;height:1.25rem;flex:none;margin-top:.15rem}
.aside{display:grid;gap:var(--s-5);align-content:start}
.aside__call{white-space:nowrap;display:inline-flex;align-items:center;min-height:var(--tap);font:500 var(--step-3)/1 var(--font-mono);word-spacing:-.3em;color:var(--flame);text-decoration:none}
.aside__call:hover{text-decoration:underline;text-underline-offset:.2em}
.aside__steps{display:grid;gap:var(--s-3);padding:var(--s-5);counter-reset:st}
.aside__steps li{position:relative;padding-left:2rem;counter-increment:st;color:var(--ink-2)}
.aside__steps li::before{content:counter(st);position:absolute;left:0;font:500 .875rem/1.7 var(--font-mono);color:var(--flame)}
.legal > *{max-width:48rem}
.legal h2{font-size:var(--step-3);margin-top:var(--s-8)}
.legal h2:first-child{margin-top:0}
.legal p,.legal li{color:var(--ink-2)}
.legal p{margin-top:var(--s-3)}
.legal ul{margin-top:var(--s-3);display:grid;gap:var(--s-2)}
.legal ul li{position:relative;padding-left:1.25rem}
.legal ul li::before{content:"";position:absolute;left:0;top:.72em;width:.5rem;height:2px;background:var(--copper)}
.legal dl{margin-top:var(--s-4);border-top:1px solid var(--ink)}
.legal dl > div{display:grid;gap:var(--s-1) var(--s-5);padding:.75rem 0;border-bottom:1px solid var(--line)}
.legal dt{line-height:1.6;color:var(--muted)}
.legal dd{color:var(--ink);font-weight:500}
.legal a{color:var(--flame);overflow-wrap:anywhere}
.e404{padding-block:var(--s-8) var(--s-9)}
.e404__grid{display:grid;gap:var(--s-7);align-items:center}
.e404__text h1{margin-top:var(--s-4)}
.e404__text .sub{margin-top:var(--s-3);font-size:var(--step-2);font-weight:500;color:var(--ink)}
.e404__text p{margin-top:var(--s-4);color:var(--ink-2);max-width:36rem}
.e404__actions{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-6)}
.e404__services{display:grid;justify-items:start;margin-top:var(--s-5)}
.afficheur{max-width:26rem;width:100%;margin-inline:auto}
.afficheur .a-body{fill:var(--plate);stroke:var(--ink);stroke-width:2}
.afficheur .a-screen{fill:var(--ink)}
.afficheur .a-txt{font-family:var(--font-mono);font-weight:500;fill:var(--flame-night);font-size:64px;letter-spacing:.06em}
.afficheur .a-small{font-family:var(--font-mono);fill:var(--on-ink-muted);font-size:13px;letter-spacing:.08em}
.afficheur .a-btn{fill:var(--paper-2);stroke:var(--ink);stroke-width:1.5}
.afficheur .a-flame{fill:var(--flame)}
.plaque__head,.plaque__list dt,.registre thead th,.registre .org,.table-loi thead th,.table-loi tbody th,.table-loi td::before,.footer__col h2,.besoin thead th,.bloc__head,.pannes thead th,.fieldset legend,.legal dt{font-family:var(--font-mono);font-size:.75rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase}
.nowrap{white-space:nowrap}
@media (min-width:48em){.nowrap-md{white-space:nowrap}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.mt-7{margin-top:var(--s-7)}
.anatomie{display:grid;gap:var(--s-7);align-items:start}
.split__portrait{max-width:28rem}
.facteurs{border-top:2px solid var(--ink);margin-top:var(--s-5)}
.facteurs li{position:relative;padding:.875rem 0 .875rem 1.5rem;border-bottom:1px solid var(--line)}
.facteurs li::before{content:"";position:absolute;left:0;top:1.55em;width:.625rem;height:2px;background:var(--copper)}
.spec-row.spec-row--static{grid-template-columns:2.75rem minmax(0,1fr)}
.aside__hint{display:block;margin-top:var(--s-1);font-size:var(--step--1);font-weight:400;color:var(--muted)}
.aside__hint a{text-decoration:underline;text-underline-offset:.2em}
.securite--mini .securite__head{padding:var(--s-3) var(--s-4)}
.securite--mini .securite__head h2{font-size:var(--step-1)}
.securite--mini .securite__body{display:block;padding:var(--s-4)}
.securite--mini .securite__body > p{color:var(--ink-2);margin-bottom:var(--s-2)}
.faisons__photo{margin-top:var(--s-6)}
.registre .registre__nums .num{display:inline-flex}
sup{font-size:.7em;line-height:0;vertical-align:baseline;position:relative;top:-.45em}
:is(.plaque__list,.plaque__foot,.source,.table-loi,.footer__urgence) a:not(.aside__call){display:inline-block;padding-block:.9375rem;margin-block:-.9375rem}
.eyebrow + h2{margin-top:var(--s-4)}
.split__text > h2 + p{margin-top:var(--s-4)}
@media (prefers-reduced-motion:reduce){:root{--dur:.01ms}}
@media (min-width:33em){.brand__sub{display:block}}
@media (max-width:26em){.menu-btn{padding:0}.menu-btn__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
@media (hover:hover){.spec-row:hover h3 .u::after{transform:scaleX(1)}.registre a:hover svg{transform:translate(2px,-2px)}.besoin tbody tr:hover{background:var(--paper-2)}.anatomie:has(.fiche li:nth-child(1):hover) [data-n="1"] .c-tag,.anatomie:has(.fiche li:nth-child(2):hover) [data-n="2"] .c-tag,.anatomie:has(.fiche li:nth-child(3):hover) [data-n="3"] .c-tag,.anatomie:has(.fiche li:nth-child(4):hover) [data-n="4"] .c-tag,.anatomie:has(.fiche li:nth-child(5):hover) [data-n="5"] .c-tag,.anatomie:has(.fiche li:nth-child(6):hover) [data-n="6"] .c-tag{fill:var(--flame)}.appel__tel:hover .appel__tel-num::after{transform:scaleX(1)}}
@media (hover:none){.appel__tel-num::after{transform:scaleX(1);opacity:.45}}
@media (max-width:63.99em){html.menu-open main,html.menu-open .site-footer{display:none}.pression__schema{order:2;width:100%;max-width:24rem;margin-inline:auto}}
@media (max-width:29.99em){.plaque__list > div{grid-template-columns:minmax(0,1fr);gap:.125rem}}
@media (min-width:22em){.footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer__brand,.footer__col--contact{grid-column:1/-1}}
@media (min-width:40em) and (max-width:63.99em){.page-head--has-plaque .page-head__media{margin-inline:0}.page-head__plaque{margin-left:var(--s-6)}.hero__media{margin-inline:0}.hero__media .caption{right:var(--s-3)}.hero__plaque{margin-left:var(--s-6)}.page-head--has-plaque .page-head__media .photo__frame,.page-head__media--portrait .photo__frame{aspect-ratio:4/3}.page-head__media--portrait .photo__frame{max-height:none}.page-head__media--portrait img{object-position:50% 65%}.faisons__photo{max-width:28rem}.footer__brand{grid-column:1}.footer__col--contact{grid-column:2;grid-row:1}}
@media (min-width:48em){.hang{margin-left:-.62em}.hero h1 .l{display:block}.reperes{display:block}.spec-row{grid-template-columns:3.5rem minmax(0,1fr) 2rem;padding:var(--s-5) var(--s-4) var(--s-5) 0}.spec-row__arrow{display:block;grid-column:3;grid-row:1/4;align-self:center;width:1.5rem;height:1.5rem;color:var(--flame);transition:transform var(--t)}.spec-row:hover .spec-row__arrow{transform:translateX(4px)}.rail > li{flex-basis:42%}.table-loi{table-layout:fixed}.table-loi thead th:not(:first-child){width:26%}.blocs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:47.99em){.hero{padding-bottom:var(--s-8)}.hero__plaque{margin-top:calc(-1 * var(--s-5))}.hero__plaque .plaque__row--wide{display:none}.registre thead{display:none}.registre tr{display:grid;grid-template-columns:1fr auto;gap:0 var(--s-4);padding:var(--s-4) 0;border-bottom:1px solid var(--on-ink-line)}.registre tbody th,.registre td{display:block;padding:0;border:0}.registre tbody th{grid-column:1;grid-row:1;align-self:center}.registre td{grid-column:1/3;margin-top:var(--s-2)}.registre .num{display:inline;margin-right:var(--s-3)}.carte text{font-size:20px}.carte text.t-region{font-size:22px}.carte text.t-num,.carte text.t-pin,.carte .lead-line{display:none}.table-loi thead{display:none}.table-loi tr{display:block;border-top:1px solid var(--ink)}.table-loi tbody tr:first-child{border-top:0}.table-loi tbody th{display:block;width:auto;padding:var(--s-4) var(--s-4) 0}.table-loi td{display:block;position:relative;padding:var(--s-3) var(--s-4) var(--s-3) 7.5rem;border-top:0}.table-loi td + td{border-top:1px dashed var(--line)}.table-loi td::before{content:attr(data-label);position:absolute;left:var(--s-4);top:var(--s-3);line-height:1.9;color:var(--ink-2)}.table-loi tbody tr{padding-bottom:var(--s-2)}.table-loi .freq{font-size:var(--step-2)}.circuit{padding:var(--s-3)}.circuit .c-note{display:none}.circuit .c-tag-n{font-size:22px}.pannes thead{display:none}.pannes tr{display:block;padding:var(--s-4) 0;border-bottom:1px solid var(--line)}.pannes tbody th,.pannes td{display:block;width:auto;padding:0;border:0}.pannes td{margin-top:var(--s-2)}.pannes td::before{content:attr(data-label);display:block;font:500 .6875rem/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}}
@media (min-width:40em){.page-head__text h1{max-width:none}.page-head--has-plaque .page-head__media .caption{right:var(--s-3)}.legal dl > div{grid-template-columns:13rem minmax(0,1fr)}}
@media (max-width:39.99em){.besoin td:last-child{white-space:normal}.besoin thead{display:none}.besoin tr{display:block;padding:var(--s-3) 0;border-bottom:1px solid var(--line)}.besoin td{display:block;padding:0;border:0}.e404__actions .btn{flex:1 1 100%}}
@media (max-width:22.5em){.header__inner{gap:0 var(--s-3)}.brand{gap:.5rem}.brand__mark{width:1.75rem;height:1.75rem}.brand__word{font-size:1.25rem}.header__actions{gap:.375rem}.btn{padding-inline:1rem;font-size:1rem}.header__call{padding:0 .75rem}.table-loi td{padding-left:var(--s-4)}.table-loi td::before{position:static;display:block}}
@media (max-width:23.4375em){.hero h1{font-size:clamp(1.75rem,.14rem + 8.3vw,2.125rem)}}
@media (min-width:48em) and (max-width:63.99em){.split:has(.split__portrait){grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s-6);align-items:start}.split--rev:has(.split__portrait){grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.split--rev:has(.split__portrait) .split__media{grid-column:2;grid-row:1}.split--rev:has(.split__portrait) .split__text{grid-column:1;grid-row:1}.carte{max-width:30rem}}
@media (min-width:48em){.complement{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}.complement__titre{grid-row:1/3}.complement__texte,.complement__lien{grid-column:2}}
@media (min-width:64em){:root{--header-h:5rem}.grid-12{grid-template-columns:repeat(12,minmax(0,1fr))}.header__call .header__call-long{display:inline}.header__call .header__call-short{display:none}.menu-btn{display:none}.nav{order:0;flex:none;margin:0}.nav__list,.js .nav__list{display:flex;align-items:center;gap:var(--s-1);background:none;border:0}.nav__item{position:relative;display:flex;align-items:center}.nav__link{min-height:var(--tap);padding:0 .75rem;border:0;font-size:1rem;position:relative}.nav__link::after{content:"";position:absolute;left:.75rem;right:.75rem;bottom:.3rem;height:2px;background:var(--flame);transform:scaleX(0);transform-origin:left;transition:transform var(--t)}.nav__link:hover::after,.nav__link[aria-current]::after{transform:scaleX(1)}.nav__link[aria-current]{color:var(--ink)}.nav__item--services > .nav__link{padding-right:.25rem}.nav__item--services > .nav__link::after{right:.25rem}.nav__caret{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:var(--tap)}.nav__caret svg{width:.875rem;height:.875rem;transition:transform var(--t)}.nav__caret[aria-expanded="true"] svg{transform:rotate(180deg)}.subnav{position:absolute;top:calc(100% + .5rem);left:0;min-width:17rem;padding:var(--s-2);background:var(--plate);border:1px solid var(--ink);border-radius:var(--radius);box-shadow:0 16px 32px -20px rgb(15 27 45/.45)}.js .subnav{display:none}.js .subnav.is-open{display:block}html:not(.js) .subnav{display:none}.subnav .nav__link{min-height:var(--tap);padding:0 .75rem;font-size:1rem;white-space:nowrap}.subnav .nav__link::after{content:none}.subnav .nav__link:hover{background:var(--paper-2)}.nav__item--mobile{display:none}.header__actions{margin-left:var(--s-4)}.hero{padding-bottom:var(--s-10)}.hero__body{padding-inline:0;display:grid;grid-template-columns:minmax(var(--gutter),1fr) minmax(0,calc(var(--content) * 5/12)) minmax(0,calc(var(--content) * 7/12)) minmax(var(--gutter),1fr);align-items:start}.hero__text{grid-column:2;padding-right:var(--s-8);padding-top:var(--s-2)}.hero__actions{flex-direction:column;align-items:stretch;max-width:22rem}.hero__actions .btn{flex:none}.hero__media{grid-column:3/5;margin:0}.hero__plaque{position:absolute;left:var(--s-6);bottom:calc(-1 * var(--s-8));width:26rem;margin:0}.hero__plaque .plaque__list > div{grid-template-columns:5.75rem minmax(0,1fr)}.page-head{padding-bottom:var(--s-10)}.page-head--simple{padding-bottom:var(--s-8)}.page-head__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 var(--s-6);align-items:start}.page-head__text{grid-column:1/7}.page-head__actions{width:fit-content}.page-head__actions .btn{flex:1 1 auto;max-width:22rem}.page-head__media,.page-head--has-plaque .page-head__media{grid-column:7/13;margin:var(--s-7) 0 0}.page-head__plaque{position:relative;width:25rem;max-width:calc(100% - var(--s-5));margin:calc(-1 * var(--s-7)) 0 0 var(--s-5)}.page-head__plaque .plaque__list > div{grid-template-columns:5.75rem minmax(0,1fr)}.page-head__text--wide{grid-column:1/8}.page-head__media--portrait{grid-column:9/13;margin-top:var(--s-7)}.page-head__coord{grid-column:8/13;margin-top:calc(var(--tap) + var(--s-5))}.page-head__media--portrait .photo__frame{max-height:none}.page-head--has-plaque{padding-bottom:var(--s-9)}.offre__grid{grid-template-rows:auto 1fr}.offre__intro{grid-column:1/5;grid-row:1}.offre__plaque{grid-column:1/5;grid-row:2;align-self:start;margin-top:var(--s-7)}.offre__list{grid-column:5/13;grid-row:1/3}.registre__grid{align-items:start}.carte{grid-column:1/6}.registre__table{grid-column:6/13}.conduite{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-6)}.conduite::before{left:1.5rem;right:1.5rem;top:1.375rem;bottom:auto;width:auto;height:4px}.etape{display:block}.etape h3{padding-top:var(--s-5)}.cibles{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 var(--s-6);border-top:0}.cible{border-top:2px solid var(--ink);border-bottom:0;padding-top:var(--s-5)}.pression__schema{grid-column:1/6}.pression__texte{grid-column:7/13}.zone__photo .photo__frame{aspect-ratio:21/9}.zone__titre{grid-column:1/6}.zone__text{grid-column:7/13}.faq-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 var(--s-6);align-items:start}.faq-layout .head{grid-column:1/5;margin-bottom:0}.faq-layout .faq{grid-column:5/13;max-width:none}.footer__grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1.15fr) minmax(0,.8fr) minmax(0,1fr)}.footer__brand,.footer__col--contact{grid-column:auto}.split__media{grid-column:1/7}.split__text{grid-column:8/13}.split--rev .split__media{grid-column:7/13;grid-row:1}.split--rev .split__text{grid-column:1/6;grid-row:1}.split:has(.split__portrait) .split__text{grid-column:7/13}.complement{grid-template-columns:repeat(12,minmax(0,1fr))}.complement__titre{grid-column:1/6}.complement__texte,.complement__lien{grid-column:6/13}.split--rev:has(.split__portrait) .split__text{grid-column:1/7}.securite__body{grid-template-columns:5fr 7fr;align-items:start}.contact__grid{align-items:start}.contact__form{grid-column:1/7}.aside{grid-column:8/13}.form__submit .btn{width:auto}.e404__text{grid-column:1/7}.afficheur{grid-column:8/13}.offre__grid,.registre__grid,.pression,.zone__body,.appel__grid,.split,.contact__grid,.e404__grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:0 var(--s-6)}.anatomie{grid-template-columns:repeat(12,minmax(0,1fr))}.split--rev .split__portrait,.split--rev .photo:has(> .split__portrait){margin-left:auto}.anatomie{grid-template-rows:1fr auto auto 1fr;row-gap:0}.anatomie .circuit{grid-column:1/8;grid-row:2}.anatomie .anatomie__note{grid-column:1/8;grid-row:3;align-self:start;margin-top:var(--s-4)}.anatomie .fiche{grid-column:8/13;grid-row:1/5}.remplacer__titre,.prix__titre,.comprend__titre,.apres__titre,.faisons__intro,.choix__titre,.engagements__titre,.ou__titre{grid-column:1/6}.remplacer__texte,.comprend__liste,.faisons__liste,.choix__texte,.engagements__liste,.ou__texte{grid-column:6/13}.prix__liste,.apres__texte{grid-column:7/13}.prix__liste{margin-top:0}.faisons__photo{max-width:24rem}}
@media (min-width:64em) and (max-width:75.99em){.footer__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.7fr) minmax(0,1.25fr)}.page-head__coord .plaque__list > div{grid-template-columns:4.5rem minmax(0,1fr)}}
@media (min-width:64em) and (max-width:74.99em){.hero{padding-bottom:calc(var(--s-10) + var(--s-9) + var(--s-5))}.hero__media .photo__frame{aspect-ratio:auto;height:32.25rem}.hero__media .photo__frame img{object-position:100% 50%}.repere--thermo{--x:calc(100% - 18.96rem)}.repere--vanne{--x:calc(100% - 11.09rem)}.repere--circ{--x:calc(100% - 10.23rem)}.hero__plaque{top:calc(100% - 6.5rem);bottom:auto}.carte text.t-pin{font-size:17px}}
@media (min-width:64em){.appel__grid{row-gap:var(--s-6);align-items:start}.appel__titre,.appel__tel{grid-column:1/-1}.appel__text{grid-column:1/8}.appel__actions{grid-column:9/13}.chantiers__head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 var(--s-6);align-items:end}.chantiers__head .head{grid-column:1/8}.rail-nav{grid-column:10/13;justify-self:end}.rail{gap:var(--s-6)}.rail > li{flex:0 0 21.5rem}.cibles.avis{grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto 1fr}.avis .cible:first-child{grid-column:1/9;grid-row:1/3}.avis .cible:first-child blockquote p{font-size:var(--step-4);max-width:none}.avis .cible:nth-child(n+2){grid-column:9/13;align-self:start}.avis .cible:nth-child(n+2) blockquote p{font-size:var(--step-2);line-height:1.3}}
@keyframes rise{from{opacity:0;transform:translateY(var(--rise))}}
@keyframes rise16{from{opacity:0;transform:translateY(16px)}}
@keyframes unveil{from{clip-path:inset(0 0 12% 0)}}
@keyframes zoomout{from{transform:scale(1.04)}}
@keyframes grow{from{transform:scale(0)}}
@keyframes drawx{from{transform:scaleX(0)}}
@keyframes fade{from{opacity:0}}
@keyframes drop{from{opacity:0;transform:translateY(-4px)}}
@keyframes menu{from{clip-path:inset(0 0 100% 0)}}
@media screen and (prefers-reduced-motion:no-preference){.js .hero h1,.js .page-head:not(.page-head--simple) :is(.eyebrow,h1){animation:rise var(--d-in) var(--ease-out) both}.js :is(.hero,.page-head) .photo__frame{animation:unveil var(--d-trace) var(--ease-out) both}.js :is(.hero,.page-head) .photo__frame img{animation:zoomout var(--d-trace) var(--ease-out) both}.js :is(.hero__plaque,.page-head__plaque){animation:rise16 var(--d-in) var(--ease-out) .25s both}.js .repere__pt{animation:grow 240ms var(--ease-out) calc(500ms + var(--i) * 90ms) both}.js .repere__line::before{animation:drawx 360ms var(--ease-out) calc(620ms + var(--i) * 90ms) both}.js .repere__lbl{animation:fade 280ms var(--ease-out) calc(800ms + var(--i) * 90ms) both}.js [data-trace] :is(.region,.zone-ok,.zone-max,.c-dep,.c-ret){stroke-dasharray:1.01;stroke-dashoffset:1.01}.js [data-trace].is-in :is(.region,.c-dep){stroke-dashoffset:0;transition:stroke-dashoffset var(--d-trace) var(--ease-out)}.js [data-trace].is-in .c-ret{stroke-dashoffset:0;transition:stroke-dashoffset var(--d-trace) var(--ease-out) 150ms}.js .carte .pin{transform-box:fill-box;transform-origin:center;transform:scale(0)}.js .carte.is-in .pin{transform:none;transition:transform 200ms var(--ease-out) var(--d-trace)}.js .conduite::before{transform:scaleY(0);transform-origin:50% 0}.js .conduite.is-in::before{transform:none;transition:transform var(--d-trace) var(--ease-out)}.js .conduite .etape__nut{opacity:0;transform:scale(.85)}.js .conduite.is-in .etape__nut{opacity:1;transform:none;transition:opacity 300ms var(--ease-out),transform 300ms var(--ease-out)}.js .conduite.is-in .etape:nth-child(2) .etape__nut{transition-delay:200ms}.js .conduite.is-in .etape:nth-child(3) .etape__nut{transition-delay:400ms}.js .conduite.is-in .etape:nth-child(4) .etape__nut{transition-delay:600ms}.js .mano .aiguille{transform:rotate(-101.25deg)}.js .mano.is-in .aiguille{transform:none;transition:transform var(--d-trace) var(--ease-out) 100ms}.js .mano.is-in :is(.zone-ok,.zone-max){stroke-dashoffset:0;transition:stroke-dashoffset 600ms var(--ease-out)}.js .circuit [data-n]{opacity:0}.js .circuit.is-in [data-n]{opacity:1;transition:opacity 450ms var(--ease-out) 950ms}.faq__item[open] .faq__a{animation:drop 200ms var(--ease-out)}.js .afficheur .a-small{animation:fade 200ms linear both}.js .afficheur .a-txt{animation:fade 200ms linear .2s both}.js .afficheur .a-flame{animation:fade 200ms linear .4s both}}
@media screen and (prefers-reduced-motion:no-preference) and (min-width:48em){.js .hero h1{animation:none}.js .hero h1 .l{animation:rise var(--d-in) var(--ease-out) both}.js .hero h1 .l + .l{animation-delay:90ms}}
@media screen and (prefers-reduced-motion:no-preference){html.intro-done.js :is(.hero h1,.hero h1 .l,.page-head .eyebrow,.page-head h1,.photo__frame,.photo__frame img,.hero__plaque,.page-head__plaque,.repere__pt,.repere__lbl,.afficheur .a-small,.afficheur .a-txt,.afficheur .a-flame),html.intro-done.js .repere__line::before{animation:none}}
@media (hover:hover) and (prefers-reduced-motion:no-preference){.chantier:hover .photo__frame img{transform:scale(1.04)}}
@media screen and (prefers-reduced-motion:no-preference) and (max-width:63.99em){.js .nav__list.is-open{animation:menu 240ms var(--ease-out)}}
@media screen and (prefers-reduced-motion:no-preference) and (min-width:64em){.js .conduite::before{transform:scaleX(0);transform-origin:0 50%}}
@media print{.rail-nav{display:none}}
