/* D.M.C. Climatisation inc. — feuille de style v3. Jetons, polices et langage de sections repris de build-b. */
@font-face{font-family:"Young Serif";src:url(/assets/fonts/young-serif.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Figtree";src:url(/assets/fonts/figtree.woff2) format("woff2");font-weight:300 900;font-style:normal;font-display:swap}

:root{
  --nuit:#1E100C;--braise:#3A2114;--ambre:#E0A257;--creme:#F6E6D2;--papier:#FBF5EC;--givre:#CFE0E6;--givre-d:#1F4A57;--encre:#24160F;
  --ambre-t:#8A5518;--muet:#6A5646;--pale:#D9C3A8;--pale2:#EBD8BF;
  --f-t:"Young Serif",Georgia,"Times New Roman",serif;--f-b:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
  --pad:clamp(20px,5vw,72px);--max:1280px;--sy:clamp(64px,9vw,128px);
  --s1:8px;--s2:16px;--s3:24px;--s4:32px;--s5:48px;--s6:64px;--s7:96px;--s8:128px;
  --r:6px;--hh:76px;--focus:#8A5518;
}
*,*::before,*::after{box-sizing:border-box}
*{margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font:400 1.125rem/1.65 var(--f-b);color:var(--encre);background:var(--papier);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
a{color:inherit;text-underline-offset:4px}
ul,ol{list-style:none}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:2px}
.sol-nuit,.sol-braise,.ph-a,.ph-c,.ph-t,.site-h.sol-nuit,.site-h.over,.pied,.volet,.hero,.story{--focus:var(--ambre)}
.saut{position:absolute;left:-999px;top:8px;background:var(--ambre);color:var(--nuit);padding:12px 20px;border-radius:999px;z-index:200;font-weight:700}
.saut:focus{left:8px}
h1,h2,h3{font-family:var(--f-t);font-weight:400;letter-spacing:-.01em}
h2{font-size:clamp(2rem,3.5vw,3.1rem);line-height:1.08}
h3{font-size:1.375rem;line-height:1.25}
p{max-width:65ch}
.paragraphe,.bd p,.hd p{max-width:65ch}
.paragraphe+.paragraphe,.bd p+p{margin-top:var(--s2)}
.fine{font-size:.9375rem;color:var(--muet)}
.sol-nuit .fine,.sol-braise .fine,.ph-a .fine,.ph-c .fine,.pied .fine{color:var(--pale)}
.note-f{font-size:.9375rem;color:var(--muet);margin-top:var(--s2);max-width:70ch}
.sol-nuit .note-f{color:var(--pale)}
.sol-givre .note-f,.sol-givre .fine{color:#44505A}

/* ── boutons ── */
.btn,.bt{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 28px;border-radius:999px;border:0;background:var(--ambre);color:var(--nuit);
  font:700 1.02rem/1.2 var(--f-b);text-decoration:none;cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s;white-space:nowrap}
.btn:hover,.bt:hover{background:#EDB36C;transform:translateY(-2px)}
.btn svg,.bt svg,.bt i{width:18px;height:18px;flex:none}
.btn-ct,.bt-ct{background:transparent;color:inherit;box-shadow:inset 0 0 0 2px currentColor}
.btn-ct:hover,.bt-ct:hover{background:color-mix(in srgb,currentColor 14%,transparent)}
.btn-s{min-height:44px;padding:10px 22px;font-size:.98rem}
.bt[disabled]{opacity:.6;cursor:progress;transform:none}
.actions{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s3);align-items:center;margin-top:var(--s4)}
.lien-fl{display:inline-flex;align-items:center;gap:8px;font-weight:700;text-decoration:underline;text-decoration-thickness:2px;margin-top:var(--s2)}
.lien-fl .arw{width:18px;height:18px;transition:transform .2s}
.lien-fl:hover .arw{transform:translateX(4px)}
.arw{flex:none}

/* ── en-tête du site ── */
.site-h{z-index:60;color:var(--creme)}
.site-h.sol-nuit{background:var(--nuit);position:sticky;top:0}
.site-h.sol-creme{background:var(--creme);color:var(--nuit);position:sticky;top:0;--focus:var(--ambre-t)}
.site-h.sol-givre{background:var(--givre);color:var(--nuit);position:sticky;top:0;--focus:var(--givre-d)}
.site-h.over{position:fixed;top:0;left:0;right:0;background:transparent;transition:background .3s}
.site-h.over.stuck{background:rgba(30,16,12,.96)}
.h-in{max-width:calc(var(--max) + 2*var(--pad));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:var(--s3);padding:14px var(--pad);min-height:var(--hh)}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:inherit;flex:none}
.brand .mk{position:relative;display:block;width:52px;height:52px;flex:none}.mk img{position:absolute;inset:0;width:100%;height:100%}.mk-l{display:none}.site-h.sol-nuit .mk-d,.site-h.over .mk-d,.pied .mk-d,.volet .mk-d{display:none}.site-h.sol-nuit .mk-l,.site-h.over .mk-l,.pied .mk-l,.volet .mk-l{display:block}
.wm b{display:block;font:400 1.7rem/1 var(--f-t);letter-spacing:-.005em}
.wm small{display:block;font:600 .78rem/1 var(--f-b);letter-spacing:.06em;margin-top:6px;opacity:.9}
.nav>ul{display:flex;align-items:center;gap:clamp(12px,2.2vw,32px)}
.nav .top{display:flex;align-items:center;gap:7px;padding:10px 2px;font-weight:600;text-decoration:none;border-bottom:2px solid transparent;font-size:1.02rem}
.nav .top:hover,.nav .top[aria-current]{border-color:var(--ambre)}
.site-h.sol-creme .nav .top:hover,.site-h.sol-creme .nav .top[aria-current]{border-color:var(--ambre-t)}
.site-h.sol-givre .nav .top:hover,.site-h.sol-givre .nav .top[aria-current]{border-color:var(--givre-d)}
.chev{width:10px;height:7px;transition:transform .2s}
.has-d{position:relative}
.has-d:hover .chev,.has-d:focus-within .chev{transform:rotate(180deg)}
.drop{position:absolute;top:100%;left:-24px;min-width:340px;padding:12px;margin-top:8px;background:var(--papier);color:var(--encre);border-radius:var(--r);border-top:3px solid var(--ambre);
  box-shadow:0 24px 48px -12px rgba(30,16,12,.45);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s,transform .18s,visibility .18s;--focus:var(--ambre-t)}
.drop::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.drop.wide{min-width:600px}
.drop.wide ul{display:grid;grid-template-columns:1fr 1fr;gap:0 8px}
.drop.r{left:auto;right:-24px}
.has-d:hover .drop,.has-d:focus-within .drop{opacity:1;visibility:visible;transform:none}
.drop ul a{display:block;padding:10px 14px;border-radius:4px;text-decoration:none}
.drop ul a:hover,.drop ul a:focus-visible{background:var(--creme)}
.drop ul b{display:block;font-weight:700;font-size:1rem}
.drop ul span{display:block;font-size:.875rem;color:var(--muet);line-height:1.35;margin-top:2px}
.drop .d-all{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 12px;font:400 1.1rem var(--f-t);text-decoration:none;color:var(--nuit)}
.drop .d-all .arw{width:18px;height:18px}
.h-act{display:flex;align-items:center;gap:var(--s3)}
.h-tel{font-weight:700;text-decoration:none;white-space:nowrap}
.h-tel:hover{text-decoration:underline}
.burger{display:none;align-items:center;gap:10px;background:none;border:0;padding:10px 4px;font-weight:700;min-height:44px}
@media(max-width:1120px){.nav{display:none}.h-tel,.h-act .btn-s{display:none}.burger{display:inline-flex}}
@media(min-width:1121px) and (max-width:1260px){.h-tel{display:none}}

/* ── volet mobile ── */
.volet{position:fixed;inset:0;z-index:100;background:var(--nuit);color:var(--creme);overflow-y:auto;transform:translateY(-100%);visibility:hidden;transition:transform .35s ease,visibility .35s}
.volet.ouvert{transform:none;visibility:visible}
.v-top{display:flex;align-items:center;justify-content:space-between;padding:14px var(--pad);min-height:var(--hh)}
.fermer{background:none;border:0;padding:10px;min-width:44px;min-height:44px}
.v-body{padding:var(--s2) var(--pad) var(--s4);display:grid;gap:var(--s4)}
.v-g p{font:400 1.5rem var(--f-t);margin-bottom:var(--s1)}
.v-g p a{text-decoration:none}
.v-g li a{display:block;padding:10px 0;color:var(--pale2);text-decoration:none;font-weight:500}
.v-act{display:grid;gap:12px;padding:0 var(--pad) calc(var(--s5) + 40px)}
.callbar{display:none}
@media(max-width:900px){
  .callbar{position:fixed;left:0;right:0;bottom:0;z-index:90;display:grid;grid-template-columns:1.2fr 1fr;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:var(--nuit);color:var(--creme);box-shadow:0 -8px 24px rgba(0,0,0,.25)}
  .callbar .btn{min-height:48px;padding:10px 16px}
  body{padding-bottom:72px}
}

/* ── accueil : héro ── */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;color:var(--creme);isolation:isolate;background:var(--nuit);overflow:hidden}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(30,16,12,.9) 0%,rgba(30,16,12,.62) 42%,rgba(30,16,12,.08) 100%),linear-gradient(0deg,rgba(30,16,12,.65),transparent 38%),linear-gradient(180deg,rgba(30,16,12,.7),transparent 22%)}
.hero-copy{padding:calc(var(--hh) + 48px) var(--pad) clamp(48px,9vh,110px) max(var(--pad),calc((100vw - var(--max))/2));max-width:calc(1300px + var(--pad));width:100%}
.hero h1{font-size:clamp(2.75rem,6.3vw,6.25rem);line-height:1.02;margin-bottom:var(--s3)}
.hero h1 .ln{display:block}
.hero .reponse{font-size:clamp(1.1rem,1.5vw,1.3rem);max-width:52ch;color:var(--pale2);margin-bottom:var(--s4)}
.hero .cta{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center}
.hero .lic{position:absolute;right:max(var(--pad),calc((100vw - var(--max))/2));bottom:clamp(24px,5vh,56px);font-size:.95rem;color:var(--pale);text-align:right;max-width:26ch}
.hero .ln,.hero .reponse,.hero .cta{opacity:0;animation:monte .9s cubic-bezier(.2,.7,.2,1) forwards}
.hero .ln:nth-child(1){animation-delay:.15s}.hero .ln:nth-child(2){animation-delay:.55s}.hero .reponse{animation-delay:1s}.hero .cta{animation-delay:1.25s}
@keyframes monte{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:900px){.hero .lic{position:static;text-align:left;padding:0 var(--pad) 28px;max-width:none}.hero{min-height:92svh}}

/* ── accueil : deux portes ── */
.pair{display:grid;grid-template-columns:1fr 1fr}
.side{padding:clamp(40px,7vw,112px) var(--pad);display:flex;flex-direction:column;gap:var(--s3)}
.side.warm{background:var(--creme)}
.side.cool{background:var(--givre);color:var(--nuit);padding-top:clamp(72px,11vw,176px)}
.side h2{font-size:clamp(2.2rem,4vw,3.8rem)}
.side p{max-width:40ch}
.side ul{margin-top:4px}
.side li a{display:block;padding:12px 0;border-top:1px solid rgba(30,16,12,.22);font-weight:600;text-decoration:none}
.side li:last-child a{border-bottom:1px solid rgba(30,16,12,.22)}
.side li a:hover{padding-left:8px;transition:padding .2s}
.side .go{font-weight:700;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px;align-self:flex-start}
.side .photo{margin-top:auto}
@media(max-width:860px){.pair{grid-template-columns:1fr}.side.cool{padding-top:clamp(40px,7vw,112px)}}

/* ── accueil : le technicien ── */
.story{background:var(--nuit);color:var(--creme);padding:var(--sy) var(--pad);display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,6vw,104px);align-items:center}
.story .photo{max-width:560px}
.story h2{margin-bottom:var(--s3)}
.story p{color:#E2CDB2;margin-bottom:var(--s2)}
.story .chrono{margin-top:var(--s4)}
@media(max-width:860px){.story{grid-template-columns:1fr}}

/* ── accueil : aide et licence ── */
.aid{padding:var(--sy) var(--pad);background:var(--creme)}
.bd>p+.tab-d,.bd>.paragraphe+.tab-d{margin-top:var(--s4)}
.dbl .tx>*+*{margin-top:var(--s2)}
.dbl .tx h3{margin-top:var(--s4)}
.aid .in{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,104px);align-items:start}
.aid h2{margin-bottom:var(--s3)}
.big{font:400 clamp(3.25rem,7.5vw,6.5rem)/1 var(--f-t);color:var(--ambre-t)}
.big small{display:block;font:500 1rem/1.4 var(--f-b);color:var(--encre);margin-top:var(--s1);max-width:34ch}
.aid .note{font-size:.95rem;color:var(--muet);margin-top:var(--s3);max-width:52ch}
.lic-b{border-left:4px solid var(--ambre);padding-left:var(--s3)}
.lic-b .no{font:400 clamp(1.9rem,3.6vw,3rem)/1.1 var(--f-t);margin:6px 0 var(--s2)}
.lic-b ul{margin-top:var(--s2)}
.lic-b li{padding:10px 0;font-weight:600;max-width:46ch}
@media(max-width:860px){.aid .in{grid-template-columns:1fr}}

/* ── en-têtes de page ── */
.ph{position:relative;color:var(--creme);background:var(--nuit);isolation:isolate;overflow:hidden}
.ph h1{font-size:clamp(2.5rem,5.2vw,5rem);line-height:1.03;margin-bottom:var(--s3);text-wrap:balance}
.ph .reponse{font-size:clamp(1.0625rem,1.35vw,1.25rem);max-width:58ch;color:var(--pale2)}
.ph .actions{margin-top:var(--s4)}
.fil{display:flex;flex-wrap:wrap;gap:6px 10px;font-size:.9375rem;margin-bottom:var(--s4);color:var(--pale)}
.fil a{text-decoration:none;font-weight:600;min-height:24px}
.fil a:hover{text-decoration:underline}
.fil span[aria-current]{color:var(--creme)}
.ph-img{object-fit:cover;width:100%;height:100%}
/* A : plein cadre */
.ph-a{min-height:clamp(560px,78vh,800px);display:flex;align-items:flex-end;padding:0 var(--pad)}
.ph-a .ph-img{position:absolute;left:0;top:-6%;height:112%;z-index:-2}
.ph-a::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(30,16,12,.92) 0%,rgba(30,16,12,.66) 42%,rgba(30,16,12,.08) 100%),linear-gradient(0deg,rgba(30,16,12,.7),transparent 48%)}
.ph-a.r::before{background:linear-gradient(270deg,rgba(30,16,12,.92) 0%,rgba(30,16,12,.66) 42%,rgba(30,16,12,.08) 100%),linear-gradient(0deg,rgba(30,16,12,.7),transparent 48%)}
.ph-a .ph-in{width:100%;max-width:var(--max);margin:auto;padding:var(--s7) 0 clamp(48px,7vw,96px)}
.ph-a .ph-txt{max-width:760px}
.ph-a.r .ph-txt{margin-left:auto}
/* B : partagé photo / texte */
.ph-b{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);min-height:clamp(540px,70vh,720px);background:var(--creme);color:var(--nuit)}
.ph-b.cool{background:var(--givre)}
.ph-b .ph-txt{align-self:center;padding:clamp(40px,6vw,88px) clamp(24px,5vw,72px) clamp(40px,6vw,88px) max(var(--pad),calc((100vw - var(--max))/2))}
.ph-b .reponse{color:#4B3426}
.ph-b .fil{color:var(--muet)}.ph-b .fil span[aria-current]{color:var(--nuit)}
.ph-b.cool .reponse,.ph-b.cool .fil{color:#2D3A42}
.ph-b .ph-fig{position:relative;overflow:hidden;min-height:340px}
.ph-b .ph-img{position:absolute;left:0;top:-6%;height:112%}
.ph-b.rev{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.ph-b.rev .ph-fig{order:-1}
.ph-b.rev .ph-txt{padding:clamp(40px,6vw,88px) max(var(--pad),calc((100vw - var(--max))/2)) clamp(40px,6vw,88px) clamp(24px,5vw,72px)}
.ph-b .actions .bt-ct{color:var(--nuit)}
/* C : espresso, photo verticale en retrait */
.ph-c{padding:clamp(40px,6vw,88px) var(--pad) clamp(56px,8vw,112px)}
.ph-c .ph-in{max-width:var(--max);margin:auto;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(32px,7vw,112px);align-items:end}
.ph-c .ph-fig{aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;position:relative;max-height:640px;width:100%}
.ph-c .ph-img{position:absolute;left:0;top:-5%;height:110%}
.ph-c .ph-txt{align-self:center}
/* compact */
.ph-t{padding:clamp(40px,6vw,88px) var(--pad) clamp(40px,6vw,80px)}
.ph-t .ph-in{max-width:var(--max);margin:auto}
@supports (animation-timeline:scroll()){
  .ph-img{animation:para linear both;animation-timeline:scroll(root block);animation-range:0 90vh}
  @keyframes para{from{transform:translateY(0)}to{transform:translateY(5%)}}
}
@media(max-width:900px){
  .ph-b,.ph-b.rev{grid-template-columns:1fr}
  .ph-b .ph-fig,.ph-b.rev .ph-fig{order:-1;min-height:0;aspect-ratio:16/10}
  .ph-b .ph-txt,.ph-b.rev .ph-txt{padding:var(--s5) var(--pad) var(--s6)}
  .ph-c .ph-in{grid-template-columns:1fr}
  .ph-c .ph-fig{aspect-ratio:16/11;max-height:none;order:-1}
  .ph-a{min-height:620px}
  .ph-a.r::before{background:linear-gradient(90deg,rgba(30,16,12,.9) 0%,rgba(30,16,12,.6) 60%,rgba(30,16,12,.2) 100%),linear-gradient(0deg,rgba(30,16,12,.7),transparent 48%)}
}

/* ── sections ── */
.sec{padding:var(--sy) var(--pad)}
.in{max-width:var(--max);margin:auto}
.sol-papier{background:var(--papier);color:var(--encre)}
.sol-creme{background:var(--creme);color:var(--encre)}
.sol-givre{background:var(--givre);color:var(--nuit);--focus:var(--givre-d)}
.sol-nuit{background:var(--nuit);color:var(--creme)}
.sol-braise{background:var(--braise);color:var(--creme)}
.sol-nuit p,.sol-nuit li{color:#E2CDB2}
.sol-nuit h2,.sol-nuit h3,.sol-nuit dt{color:var(--creme)}
.lay-ed .in{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,6vw,104px);align-items:start}
.lay-ed.rev .in{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}
.lay-ed.rev .hd{order:2}
.lay-ed .hd{position:sticky;top:calc(var(--hh) + 24px)}
.lay-wide .hd,.lay-fig .hd{margin-bottom:var(--s5)}
.lay-wide .hd h2,.lay-fig .hd h2{max-width:24ch}
.lay-form .in{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,6vw,104px);align-items:start}
@media(max-width:900px){
  .lay-ed .in,.lay-ed.rev .in,.lay-form .in{grid-template-columns:1fr;gap:var(--s4)}
  .lay-ed .hd{position:static}.lay-ed.rev .hd{order:0}
}
.bd>*+h3{margin-top:var(--s5)}
.bd h3{margin-bottom:var(--s1)}
.bd .actions{margin-top:var(--s4)}

/* photos */
.photo{border-radius:var(--r);overflow:hidden;background:var(--braise);position:relative}
.photo img{width:100%;height:100%;object-fit:cover}
.p32{aspect-ratio:3/2}.p45{aspect-ratio:4/5}.r169{aspect-ratio:16/10}.r43{aspect-ratio:4/3}
.dbl{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,80px);align-items:start}
.dbl.has-fig{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start}
.dbl.has-fig .photo{aspect-ratio:1/1}
.lay-fig .in>*+.dbl,.lay-fig .in>p+*{margin-top:var(--s4)}
.dbl.has-fig.rev{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
@media(max-width:900px){.dbl,.dbl.has-fig,.dbl.has-fig.rev{grid-template-columns:1fr}.dbl.has-fig .photo{aspect-ratio:3/2}}

/* citation vedette */
.cle{padding:var(--s7) var(--pad) var(--s6);background:var(--papier)}
.cle+.sec.sol-papier{padding-top:var(--s4)}
.cle.cool{background:var(--papier)}
.cle blockquote{max-width:var(--max);margin:auto;border-left:6px solid var(--ambre);padding-left:clamp(20px,3vw,40px);margin-left:max(0px,calc((100% - var(--max))/2 + clamp(0px,8vw,128px)))}
.cle.cool blockquote{border-color:var(--givre-d)}
.cle p{font:400 clamp(1.75rem,3.5vw,3.1rem)/1.15 var(--f-t);max-width:28ch;text-wrap:balance}
@media(max-width:900px){.cle blockquote{margin-left:0}}

/* listes */
.points{display:grid;gap:12px;margin-top:var(--s2)}
.points li{position:relative;padding-left:28px;max-width:62ch}
.points li::before{content:"";position:absolute;left:2px;top:.62em;width:10px;height:10px;background:var(--ambre)}
.sol-givre .points li::before{background:var(--givre-d)}
.points a{font-weight:600}
.defs{display:grid;gap:var(--s3)}
.defs>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:var(--s2) var(--s4);padding-top:var(--s3);border-top:1px solid rgba(30,16,12,.2)}
.defs>div:first-child{border-top:0;padding-top:0}
.defs dt{font:400 1.3rem/1.25 var(--f-t)}
.defs dd{max-width:56ch}
.sol-nuit .defs>div{border-color:rgba(246,230,210,.22)}
@media(max-width:700px){.defs>div{grid-template-columns:1fr}}
.chrono{counter-reset:s;display:grid;gap:0}
.chrono li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:var(--s3);padding-bottom:var(--s4);position:relative}
.chrono li:not(:last-child)::after{content:"";position:absolute;left:21px;top:56px;bottom:12px;width:2px;background:var(--ambre);opacity:.55}
.chrono .n{font:400 2.75rem/1 var(--f-t);color:var(--ambre-t);width:44px;text-align:center}
.sol-nuit .chrono .n,.story .chrono .n{color:var(--ambre)}
.sol-givre .chrono .n{color:var(--givre-d)}.sol-givre .chrono li::after{background:var(--givre-d)}
.chrono h3{margin-bottom:6px}
.chrono p{max-width:56ch}
.story .chrono h3{color:var(--creme)}
.lignes{display:grid}
.ligne{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:var(--s2) var(--s4);padding:var(--s4) 0;border-top:1px solid rgba(30,16,12,.2);align-items:baseline}
.ligne:last-child{border-bottom:1px solid rgba(30,16,12,.2)}
.ligne h3{font-size:1.65rem;line-height:1.15}
.ligne h3 a{text-decoration:none}.ligne h3 a:hover{text-decoration:underline}
.ligne .nt{font-size:.9375rem;color:var(--muet);margin-top:8px}
.sol-nuit .ligne{border-color:rgba(246,230,210,.22)}
@media(max-width:700px){.ligne{grid-template-columns:1fr}}
.connexes{display:grid;gap:var(--s1)}

/* tableaux */
.tab-d{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--r);background:rgba(255,255,255,.55);max-width:100%}
.sol-nuit .tab-d,.story .tab-d{background:var(--braise)}
.tableau{border-collapse:separate;border-spacing:0;width:100%;min-width:680px;font-size:1rem;line-height:1.5}
.tableau caption{text-align:left;font:400 1.2rem/1.3 var(--f-t);padding:var(--s2) var(--s3);caption-side:top}
.tableau th,.tableau td{padding:16px 20px;text-align:left;vertical-align:top}
.tableau thead th{background:var(--nuit);color:var(--creme);font-weight:700;font-size:.9rem;letter-spacing:.02em}
.tableau tbody th{position:sticky;left:0;background:var(--creme);font-weight:700;z-index:1;min-width:150px}
.sol-creme .tableau tbody th{background:#EFDCC3}
.sol-givre .tableau tbody th{background:#C0D5DD}
.tableau tbody tr:nth-child(even) td{background:rgba(30,16,12,.045)}
.tableau tbody tr:nth-child(even) th{filter:brightness(.97)}
.sol-nuit .tableau thead th{background:var(--ambre);color:var(--nuit)}
.sol-nuit .tableau tbody th{background:#4A2B1B;color:var(--creme)}
.sol-nuit .tableau td{color:#E2CDB2}
.sol-nuit .tableau tbody tr:nth-child(even) td{background:rgba(246,230,210,.06)}
.sol-givre .tableau thead th{background:var(--givre-d)}
.tab-d:focus-visible{outline-offset:-3px}

/* encart : subvention, licence */
.encart{background:var(--creme);border-left:4px solid var(--ambre);padding:var(--s4);border-radius:0 var(--r) var(--r) 0;max-width:68ch;margin-top:var(--s2)}
.sol-creme .encart,.sol-givre .encart{background:var(--papier)}
.sol-givre .encart{border-color:var(--givre-d)}
.sol-nuit .encart{background:var(--braise)}
.encart h3{margin-bottom:var(--s1)}
.encart .big{font-size:clamp(2.5rem,5vw,4rem);margin-bottom:var(--s1)}
.sol-nuit .encart p{color:#E2CDB2}
.licence-n{font:400 clamp(2.4rem,5vw,4.2rem)/1 var(--f-t);color:var(--creme)}
.licence-n small{display:block;font:600 1rem var(--f-b);color:var(--pale);margin-bottom:var(--s1)}
.ss-cat{display:flex;flex-wrap:wrap;gap:var(--s1) var(--s4);margin-top:var(--s3)}
.ss-cat li{color:var(--pale2)}.ss-cat b{font:400 1.5rem var(--f-t);color:var(--ambre);margin-right:6px}

/* faq */
.qrs{display:grid;gap:var(--s4)}
.qr{padding-top:var(--s3);border-top:1px solid rgba(30,16,12,.2)}
.qr:first-child{border-top:0;padding-top:0}
.qr h3{font-size:1.4rem;margin-bottom:var(--s1);max-width:40ch;text-wrap:balance}
.qr p{max-width:62ch}
.qr-groupe{font:400 1.7rem var(--f-t);margin:var(--s5) 0 var(--s3)}
.qr-groupe:first-child{margin-top:0}
.sol-nuit .qr{border-color:rgba(246,230,210,.22)}

/* bande d'appel */
.bande h2{font-size:clamp(2rem,3.8vw,3.4rem);margin-bottom:var(--s2);max-width:18ch}
.b-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,6vw,104px);align-items:center}
.tel-g,.num-g{display:inline-block;font:400 clamp(1.8rem,3.4vw,2.8rem)/1.1 var(--f-t);text-decoration:none;margin-top:var(--s3)}
.tel-g:hover,.num-g:hover{text-decoration:underline}
.num-g{display:inline-flex;align-items:center;gap:12px;margin-top:0}
.b-voies{display:grid;gap:var(--s2)}
.b-voies a{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);padding:var(--s4) var(--s4);background:var(--papier);border-radius:var(--r);text-decoration:none;color:var(--nuit);transition:transform .2s,box-shadow .2s}
.b-voies a:hover{transform:translateX(6px);box-shadow:0 12px 28px -14px rgba(30,16,12,.45)}
.b-voies b{display:block;font:400 1.5rem/1.15 var(--f-t)}
.b-voies small{display:block;font-size:.95rem;color:var(--muet);margin-top:6px}
.b-voies .arw{width:26px;height:26px}
@media(max-width:900px){.b-in{grid-template-columns:1fr}}

/* pied */
.pied{background:var(--nuit);color:var(--pale);padding:var(--s7) var(--pad) var(--s5);font-size:1rem}
.p-top{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,6vw,96px)}
.pied .brand{color:var(--creme);margin-bottom:var(--s3)}
.pied address{font-style:normal;display:grid;gap:8px;margin-bottom:var(--s3)}
.pied address a{color:var(--creme);font-weight:600}
.pied .tel-g{font:400 2rem/1.1 var(--f-t);margin:0}
.pied b{color:var(--creme)}
.rbq-p{margin-top:var(--s3);color:var(--creme);font-weight:700}
.p-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s4)}
.p-cols h2{font:600 .85rem/1 var(--f-b);letter-spacing:.08em;text-transform:uppercase;color:var(--ambre);margin-bottom:var(--s2)}
.p-cols a{display:inline-block;padding:6px 0;color:var(--creme);text-decoration:none;line-height:1.35}
.p-cols a:hover,.p-bas a:hover{text-decoration:underline}
.p-bas{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);justify-content:space-between;margin-top:var(--s7);padding-top:var(--s3);border-top:1px solid rgba(246,230,210,.2);font-size:.9375rem}
.p-bas nav{display:flex;flex-wrap:wrap;gap:6px var(--s3)}
.p-bas a{color:var(--creme);text-decoration:none;padding:6px 0}
@media(max-width:1000px){.p-top{grid-template-columns:1fr}.p-cols{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* coordonnées */
.coord{display:grid;gap:var(--s3);margin-top:var(--s3)}
.coord li{display:grid;grid-template-columns:28px 1fr;gap:var(--s2);align-items:start}
.coord i,.coord svg{width:22px;height:22px;color:var(--ambre-t);margin-top:3px}
.coord a{font-weight:700}

/* formulaires : soulignés */
.formu{display:grid;gap:var(--s5)}
.formu fieldset{border:0;display:grid;gap:var(--s3);min-width:0}
.formu legend{font:400 1.6rem var(--f-t);margin-bottom:var(--s3);padding:0}
.champ{display:grid;gap:6px}
.champ label,.lbl{font-weight:600;font-size:.98rem}
.lbl i{font-style:normal;font-weight:400;color:var(--muet);margin-left:6px}
input,select,textarea{font:400 1.05rem var(--f-b);padding:12px 0;border:0;border-bottom:2px solid var(--nuit);background:transparent;width:100%;color:var(--encre);border-radius:0;min-height:48px}
select{appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%231E100C' stroke-width='1.8'/%3E%3C/svg%3E") no-repeat right 4px center;padding-right:28px}
textarea{min-height:120px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:0;border-bottom-color:#B8731F;box-shadow:0 3px 0 0 #B8731F}
input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-bottom-color:#A32A1A}
.deux-c{display:grid;grid-template-columns:1fr 1fr;gap:var(--s3) var(--s4)}
.deux-c>*{min-width:0}
@media(max-width:700px){.deux-c{grid-template-columns:1fr}}
.choix{display:grid;gap:var(--s2)}
.choix.c2{grid-template-columns:1fr 1fr}.choix.c3{grid-template-columns:repeat(3,1fr)}
@media(max-width:700px){.choix.c2,.choix.c3{grid-template-columns:1fr}}
.choix input{position:absolute;opacity:0;width:1px;height:1px;min-height:0}
.choix label{display:block;cursor:pointer}
.carte{display:grid;gap:4px;padding:var(--s3);border-radius:var(--r);box-shadow:inset 0 0 0 2px rgba(30,16,12,.22);transition:background .2s,color .2s,box-shadow .2s;min-height:88px;align-content:center}
.carte i,.carte svg{width:26px;height:26px;color:var(--ambre-t);margin-bottom:6px}
.carte b{font:400 1.3rem/1.2 var(--f-t)}
.carte small{font-size:.92rem;color:var(--muet)}
.choix label:hover .carte{box-shadow:inset 0 0 0 2px var(--nuit)}
.choix input:checked+.carte{background:var(--nuit);color:var(--creme);box-shadow:none}
.choix input:checked+.carte small{color:var(--pale)}
.choix input:checked+.carte i,.choix input:checked+.carte svg{color:var(--ambre)}
.choix input:focus-visible+.carte{outline:3px solid var(--ambre-t);outline-offset:3px}
.dz{display:flex;align-items:center;gap:var(--s3);padding:var(--s3);border:2px dashed rgba(30,16,12,.4);border-radius:var(--r);cursor:pointer;transition:background .2s,border-color .2s;position:relative}
.dz:hover,.dz.sur{background:var(--creme);border-color:var(--nuit)}
.dz:focus-within{outline:3px solid var(--ambre-t);outline-offset:3px}
.dz input{position:absolute;inset:0;opacity:0;cursor:pointer;min-height:0}
.dz-ic{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--nuit);color:var(--ambre);flex:none}
.dz-ic i,.dz-ic svg{width:24px;height:24px}
.dz-t b{display:block}.dz-t small{color:var(--muet);font-size:.92rem}
.dz-l{display:grid;gap:6px;margin-top:var(--s1);font-size:.95rem}
.dz-l li{display:flex;gap:10px;align-items:center}
.dz-l li::before{content:"";width:8px;height:8px;background:var(--ambre)}
.case{display:grid;grid-template-columns:28px 1fr;gap:var(--s2);align-items:start;font-size:.95rem;cursor:pointer}
.case input{width:24px;height:24px;min-height:0;accent-color:var(--nuit);margin-top:2px}
.hp{position:absolute;left:-9999px}
.msg{min-height:0;font-weight:600}
.msg.ok,.msg.err{padding:var(--s2) var(--s3);border-radius:var(--r)}
.msg.ok{background:#E3EBD6;color:#2D4416}.msg.err{background:#F6DAD3;color:#7A1F10}
.formu .bt{justify-self:start;min-height:56px;padding-inline:36px}
.rond{display:none;width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:tourne .7s linear infinite}
.charge .rond{display:inline-block}
@keyframes tourne{to{transform:rotate(1turn)}}
.ok-panel{background:var(--nuit);color:var(--creme);padding:clamp(32px,5vw,64px);border-radius:var(--r);display:grid;gap:var(--s2);justify-items:start}
.ok-panel[hidden]{display:none}
.ok-panel i,.ok-panel svg{width:48px;height:48px;color:var(--ambre)}
.ok-panel p{color:#E2CDB2}
.f-aside{position:sticky;top:calc(var(--hh) + 24px);display:grid;gap:var(--s3)}
.f-aside h2{font-size:1.75rem}
@media(max-width:900px){.f-aside{position:static}}

/* espace client */
.login{max-width:480px}
.rapport{display:grid;grid-template-columns:200px 1fr;gap:var(--s3);padding:var(--s3) 0;border-top:1px solid rgba(30,16,12,.2)}
.rapport ul{display:grid;gap:6px}
.rapport li{position:relative;padding-left:20px}
.rapport li::before{content:"";position:absolute;left:0;top:.6em;width:8px;height:8px;background:var(--ambre)}
.dt{font-weight:700}
@media(max-width:700px){.rapport{grid-template-columns:1fr}}
.suivi-tete{display:flex;flex-wrap:wrap;gap:var(--s3);justify-content:space-between;align-items:center;margin-bottom:var(--s4)}
.suivi-tete h2{font-size:clamp(1.6rem,3vw,2.4rem)}
.visite{background:var(--nuit);color:var(--creme);padding:var(--s5);border-radius:var(--r);display:grid;gap:var(--s2);justify-items:start}
.visite .fine{color:var(--pale)}
.visite .gros{font:400 clamp(1.8rem,3.6vw,2.8rem)/1.1 var(--f-t)}
.cadran{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s3);margin-top:var(--s4)}
.cadran>div{display:grid;gap:4px}.cadran b{font:400 1.3rem var(--f-t)}
@media(max-width:700px){.cadran{grid-template-columns:1fr}}
.rappel{display:flex;justify-content:space-between;align-items:center;gap:var(--s3);padding:var(--s2) 0;border-top:1px solid rgba(30,16,12,.2);flex-wrap:wrap}
.rappel b{display:block}
.bascule{display:flex;align-items:center;gap:12px;cursor:pointer;min-height:44px}
.bascule input{position:absolute;opacity:0;width:1px;height:1px;min-height:0}
.gl{width:48px;height:28px;border-radius:999px;background:#B9A58E;position:relative;transition:background .2s;flex:none}
.gl::after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .2s}
.bascule input:checked+.gl{background:var(--nuit)}.bascule input:checked+.gl::after{transform:translateX(20px)}
.bascule input:focus-visible+.gl{outline:3px solid var(--ambre-t);outline-offset:3px}

/* mouvement réduit */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .hero .ln,.hero .reponse,.hero .cta{opacity:1}
}
@media print{.site-h,.callbar,.volet{display:none}}
[hidden]{display:none!important}
.login{gap:var(--s3)}
.site-h li{color:inherit}.site-h .drop li{color:var(--encre)}
