/* =====================================================================
   Yeterna v10 (12/11) : cahier de DA de Mila, appliqué par Théo.
   Chargé en dernier (après v8-anim.css). Propre, sans ornement : Inter Tight (titres), Inter (texte).
   Polices auto-hébergées, licence OFL (fonts/OFL.txt). Rien ne bouge sauf l'apparition au défilement
   et un zoom d'image de 3 % ; tout est coupé par prefers-reduced-motion.
   ===================================================================== */
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:100 900;font-display:swap;
 src:url(fonts/inter-tight-latin-wght-normal.woff2) format('woff2');
 unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;
 src:url(fonts/inter-latin-wght-normal.woff2) format('woff2');
 unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
 --display:'Inter Tight','Inter',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
 --sans:'Inter',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
 --serif:var(--display);--accent:var(--display);
 --noir:#111110;--nuit:#141412;--encre:#26241F;--gris:#5A564D;
 --ivoire:#FAF9F5;--sable:#F1EEE6;--pierre:#E7E3D8;--blanc:#FFFFFF;
 --or:#B39B6A;--or-clair:#D9C9A0;--or-texte:#6B5E3E;--or-profond:#B39B6A;--sourdine:#B8B3A6;
 --filet:rgba(17,17,16,.14);--filet-or:rgba(179,155,106,.5);--or-grad:#B39B6A;--ivoire-doux:#E6E1D3;
 --noir-mat:#141412;--ardoise:#141412;--ebene:#141412;
 --e1:.5rem;--e2:1rem;--e3:1.5rem;--e4:2.5rem;--e5:4rem;--e6:6rem;
 --t-h1:clamp(2.5rem,1.75rem + 3.333vw,4.75rem);
 --t-h2:clamp(1.875rem,1.417rem + 2.037vw,3.25rem);
 --t-h3:clamp(1.125rem,1rem + .556vw,1.5rem);
 --t-chapo:clamp(1.0625rem,.979rem + .37vw,1.3125rem);
 --t-texte:clamp(1rem,.97rem + .1vw,1.0625rem);
 --t-petit:.875rem;
 --t-kicker:clamp(.8125rem,.78rem + .1vw,.875rem);
 --t-bouton:clamp(.9375rem,.91rem + .1vw,1rem);
 --t-nav:.9375rem;
 --gout:clamp(1rem,2vw,1.5rem);
 --ease:cubic-bezier(.22,.61,.36,1)
}
html{-webkit-text-size-adjust:100%}
body{font:400 var(--t-texte)/1.65 var(--sans);background:var(--ivoire);color:var(--encre);font-feature-settings:"kern","liga","calt";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,.entete .logo{font-family:var(--display);color:var(--noir);text-wrap:balance;font-synthesis:none}
.ct h2,.bd-noir h2,.ct h3,.bd-noir h3{color:var(--ivoire)}
h1,.h5 h1,.hp h1{font-size:var(--t-h1);font-weight:500;line-height:1.04;letter-spacing:-.03em;text-shadow:none;max-width:18ch}
.hp h1{font-size:clamp(2.1rem,1.5rem + 2.6vw,3.75rem);max-width:22ch}
.bd h2,.ct h2,.bd-noir h2{font-size:var(--t-h2);font-weight:500;line-height:1.1;letter-spacing:-.022em;max-width:20ch;text-transform:none}
h3,.mot5 h3,.pers5 h3,.md5 h3,.an5-cols h3,.eng5 h3,.fab5 h3,.rep5 h3{font-size:var(--t-h3);font-weight:500;line-height:1.25;letter-spacing:-.01em;text-transform:none}
.bd .chapo{font:400 var(--t-chapo)/1.5 var(--sans);letter-spacing:-.005em;max-width:40rem;color:var(--gris);margin:1.25rem 0 0}
.bd-noir .chapo{color:var(--sourdine)}
.bd p,.bd li{font-weight:400}
.bd .cta{margin-top:var(--e4)}
.tel,.tel2,.tel3,.uw-num,.ch5 b{font-variant-numeric:tabular-nums lining-nums}
.uw-num{font-family:var(--display);font-weight:500;letter-spacing:-.04em}
b,strong{font-weight:600}
small,figcaption,.hp-mention{font-size:var(--t-petit)}

/* 0.1 / 0.2 : on enlève l'ornement sans toucher au HTML */
.filet,.bd .filet{display:none}
.filet+.kicker:before,.bd-noir .filet+.kicker:before{content:none}
main{counter-reset:none}
em.it,.bd-noir em.it,.ct em.it,.h5 em.it,h1 em.it,.h5 h1 em.it,.hp h1 em.it{font:inherit;font-size:1em;font-weight:inherit;letter-spacing:inherit;text-transform:none;color:inherit;padding:0;background:none;-webkit-background-clip:border-box;background-clip:border-box;-webkit-text-fill-color:currentColor;filter:none;display:inline;margin:0}
.kicker{font:500 var(--t-kicker)/1.4 var(--sans);letter-spacing:0;text-transform:none;color:var(--gris);margin:0 0 .75rem}
.bd-nuit .kicker,.bd-noir .kicker,.ct .kicker,.h5 .kicker{color:var(--sourdine)}
.hp .kicker{color:var(--gris);text-shadow:none;font-size:var(--t-kicker)}
.h5 .kicker{text-shadow:none;color:rgba(250,249,245,.78);font-size:var(--t-kicker)}
.pg-n b:after,.gal figcaption b:after,.md5 h3:after{content:none!important;display:none}
.btn.or:after{content:none;animation:none}
.h5-media img,.hp-media img{animation:none;transform:none;will-change:auto}
.h5-media,.hp-media{inset:0;will-change:auto}
.hp-media{position:relative}
.h5:after{display:none!important}
.pg-c:hover,.pg-c:focus-visible,.mot5:hover,.tu a:hover{transform:none}
.mot5,.mot5:hover{box-shadow:none}

/* animation : une seule, l'apparition au défilement */
.js .r,.js .r.g,.js .r.dr{transform:translate3d(0,12px,0);transition-duration:.6s}
.js .a8{transform:translate3d(0,12px,0);transition:opacity .6s var(--ease) var(--d8,0s),transform .6s var(--ease) var(--d8,0s)}
.js .a8.vu8{transform:none}
.js .h5-in>*,.js .hp-in>*{animation:none;opacity:1;transform:none}
img,.carte-svg{border-radius:0}

/* 3.4 photos : étalonnage commun, coins droits, mentions à 12 px */
.pg-i img,.gal .gi img,.ig-i img,.sh5 img,.pers5 img,.h5-media img,.hp-media img,.px img{filter:saturate(.92) contrast(1.03)}
.pg-i .pg-t,.hp-mention,.ig-leg,.ba-m,.tu-mention{font:500 .75rem/1.2 var(--sans);letter-spacing:0;text-transform:none;color:rgba(250,249,245,.92);background:rgba(17,17,16,.7);padding:.3rem .5rem;border-radius:0}
.pg-i .pg-t{left:0;bottom:0}
.ig-leg{background:none;color:var(--gris);padding:0;font-size:var(--t-petit);opacity:1}
.ba-t,.ba-m{font:500 .75rem/1.2 var(--sans);letter-spacing:0;border-radius:0}

/* 3.5 boutons : principal, secondaire, lien. 52 px (44 px pour .petit), coins 2 px, sans capitales */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 1.6rem;font:500 var(--t-bouton)/1 var(--sans);letter-spacing:.005em;text-transform:none;border-radius:2px;border:1px solid var(--noir);background:var(--noir);color:var(--ivoire);box-shadow:none;transform:none;transition:background-color .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease)}
.btn:hover{background:#2A2926;border-color:#2A2926;color:var(--ivoire);transform:none;box-shadow:none}
.btn.or{background:var(--noir);border-color:var(--noir);color:var(--ivoire);background-image:none}
.btn.or:hover{background:#2A2926;border-color:#2A2926;color:var(--ivoire);background-image:none;transform:none;box-shadow:none}
.btn.fil,.btn.ligne-fonce,.btn.clair{background:transparent;color:var(--noir);border:1px solid var(--noir)}
.btn.fil:hover,.btn.ligne-fonce:hover,.btn.clair:hover{background:rgba(17,17,16,.06);color:var(--noir);border-color:var(--noir)}
.btn.petit,.entete .btn.petit{min-height:44px;padding:0 1.1rem;font-size:.9375rem}
/* sur fond sombre : principal = or, secondaire = filet ivoire */
.h5 .btn,.h5 .btn.or,.ct .btn,.ct .btn.or,.bd-nuit .btn.or,.bd-noir .btn.or,.entete .btn.petit:not(.fin),footer.pied .btn.or{background:var(--or);border-color:var(--or);color:var(--noir);background-image:none}
.h5 .btn:hover,.h5 .btn.or:hover,.ct .btn:hover,.ct .btn.or:hover,.bd-nuit .btn.or:hover,.bd-noir .btn.or:hover,.entete .btn.petit:not(.fin):hover,footer.pied .btn.or:hover{background:#C4AE80;border-color:#C4AE80;color:var(--noir)}
.h5 .btn.fil,.ct .btn.fil,.bd-noir .btn.fil,.bd-nuit .btn.fil,.entete .btn.petit.fin,.btn.fil.sombre{background:transparent;color:var(--ivoire);border:1px solid rgba(250,249,245,.7)}
.h5 .btn.fil:hover,.ct .btn.fil:hover,.bd-noir .btn.fil:hover,.entete .btn.petit.fin:hover{background:rgba(250,249,245,.1);color:var(--ivoire);border-color:rgba(250,249,245,.7)}
.btn:focus-visible,.filtres button:focus-visible{outline:2px solid var(--or-texte);outline-offset:2px}
.h5 .btn:focus-visible,.ct .btn:focus-visible,.entete .btn:focus-visible{outline-color:var(--or-clair)}
/* ouverture des pages intérieures : bandeau clair, boutons noirs */
.hp .btn.fil{background:transparent;color:var(--noir);border-color:var(--noir)}
.hp .btn.fil:hover{background:rgba(17,17,16,.06);color:var(--noir)}
.hp .btn.or{background:var(--noir);border-color:var(--noir);color:var(--ivoire)}
.hp .btn.or:hover{background:#2A2926;border-color:#2A2926}
a.lien,.bd p a:not(.btn){color:var(--noir);text-decoration:underline;text-decoration-color:var(--or);text-underline-offset:.2em;text-decoration-thickness:1px}

/* 3.6 menu */
.entete .in{max-width:1280px;padding:0 clamp(1.4rem,4vw,3rem);height:64px;gap:1.5rem}
.entete .logo img{height:30px}
.entete.fond{background:var(--nuit);box-shadow:none;border-bottom:1px solid rgba(250,249,245,.1);-webkit-backdrop-filter:none;backdrop-filter:none}
.entete.fond .in{padding-top:0;padding-bottom:0}
.entete.fond .logo img{height:30px;filter:none}
.entete.fond nav a,.entete.fond .tel,.entete.fond summary{color:var(--ivoire)}
.entete.fond summary,.entete.fond .wa-entete{border-color:rgba(250,249,245,.5);color:var(--ivoire);background:transparent}
.entete.fond .btn.petit.fin{border-color:rgba(250,249,245,.7);color:var(--ivoire);background:transparent}
.entete nav a,.entete nav.bureau a,.entete .dd>a{font:500 var(--t-nav)/1 var(--sans);letter-spacing:0;text-transform:none;color:var(--ivoire);border-bottom:1px solid transparent}
.entete nav a:hover,.entete nav a[aria-current]{border-color:var(--ivoire)}
.entete .tel{font:500 var(--t-nav)/1 var(--sans)}
.entete summary{font:500 .9375rem/1 var(--sans);text-transform:none;letter-spacing:0;border-radius:2px;border-color:rgba(250,249,245,.7);padding:.75rem 1rem}
.entete .dd-in{background:var(--nuit);box-shadow:none;border:1px solid rgba(250,249,245,.1);border-radius:0}
.entete .dd-in a{font-size:.9375rem;padding:.75rem 1.2rem}
.entete details nav{background:var(--nuit);box-shadow:none;border:1px solid rgba(250,249,245,.1);border-radius:0}
.entete details nav a{color:var(--ivoire);font-size:1.0625rem;padding:.55rem 0}
@media(min-width:1000px){.entete .in{height:76px}.entete nav.bureau{gap:1.6rem}.entete nav a{font-size:var(--t-nav)}.entete .btn.petit{font-size:.9375rem;padding:0 1rem}}
@media(min-width:1280px){.entete nav.bureau a{font-size:var(--t-nav);font-weight:500}}

/* 3.1 / 3.2 rythme et grille */
.wrap{max-width:1280px;padding:0 clamp(1.4rem,4vw,3rem)}
.bd{padding:clamp(4.5rem,9vw,8rem) 0}
#financement.bd{padding:clamp(4.5rem,9vw,8rem) 0}
.bd .r{margin-bottom:clamp(2.5rem,4vw,4rem)}
.bd h2{margin:0}
.bd .r:last-child{margin-bottom:0}
@media(max-width:759px){.bd{padding:clamp(3.5rem,14vw,4.5rem) 0}}
.bd-ivoire{background:var(--ivoire)}
.bd-sable{background:var(--sable)}
.bd-nuit,.bd-noir{background:var(--nuit)}

/* 3.7 cartes produits : sans cadre */
.pg-l{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(1.25rem,2vw,2rem);margin-top:var(--e4)}
.pg-l li{grid-column:span 12}
.pg-c{background:none;border:0;box-shadow:none;transform:none}
.pg-c:hover,.pg-c:focus-visible{border:0;box-shadow:none;transform:none}
.pg-i{aspect-ratio:3/2;background:var(--pierre)}
.pg-l li:nth-child(n+4) .pg-i{aspect-ratio:4/3}
.pg-i img{transition:transform .7s var(--ease)}
.pg-n{padding:1rem 0 0}
.pg-n b{font:500 clamp(1.0625rem,1rem + .3vw,1.25rem)/1.25 var(--display);letter-spacing:-.01em;text-transform:none}
.pg-n em{font:400 var(--t-texte)/1.5 var(--sans);color:var(--gris);margin:.35rem 0 0}
.pg-n u{display:none}
@media(hover:hover){.pg-c:hover .pg-i img,.pg-c:focus-visible .pg-i img{transform:scale(1.03)}.pg-c:hover .pg-n b{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}}
@media(min-width:760px){.pg-l li:nth-child(-n+3){grid-column:span 4}.pg-l li:nth-child(n+4){grid-column:span 3}}
@media(max-width:759px){.pg-l li:nth-child(n+4){grid-column:span 6}.pg-n{padding:.7rem 0 0}.pg-n b{font-size:1rem}.pg-n em{font-size:.9375rem}}

/* 3.8 galeries et visuels */
.gal{gap:var(--gout)}
.gal figure{border:0;background:none}
.gal .gi{background:var(--pierre);aspect-ratio:4/3}
.gal figcaption{padding:.75rem 0 0;border-top:0}
.gal figcaption b{font:500 1rem/1.3 var(--sans)}
.gal figcaption span{font:500 .8125rem/1.3 var(--sans);letter-spacing:0;text-transform:none;color:var(--gris)}
.gal .gi img{transition:transform .7s var(--ease)}
@media(hover:hover){.gal figure:hover .gi img,.ig-i:hover img{transform:scale(1.03)}}
.ig{gap:var(--gout)}
.ig-i picture{background:var(--pierre)}
.ig-i figcaption{font:400 .875rem/1.4 var(--sans);letter-spacing:0;color:var(--gris);padding:.6rem 0 0}
.ba-bar{background:var(--ivoire);box-shadow:none}
.ba-bar:after{border:1px solid var(--ivoire);background:rgba(17,17,16,.8);font-family:var(--sans);letter-spacing:0}
.ba-w:focus-within{outline-color:var(--or-clair)}

/* ouverture de l'accueil : plein cadre, dégradé noir seul */
.h5{min-height:100vh;min-height:100svh;background:var(--nuit)}
.h5:before{background:linear-gradient(180deg,rgba(20,20,18,.45) 0%,rgba(20,20,18,0) 30%,rgba(20,20,18,.78) 100%)}
.h5-in{max-width:1280px;margin:0 auto;padding:0 clamp(1.4rem,4vw,3rem) clamp(2.5rem,5vw,4rem)}
.h5 h1{color:var(--ivoire);font-size:var(--t-h1)}
.h5 h1 br{display:none}
.h5 .sous{font:400 var(--t-chapo)/1.45 var(--sans);color:rgba(250,249,245,.85);text-shadow:none;max-width:34rem;margin:1rem 0 1.5rem}
.h5 .sans-eng,.hp .sans-eng{font-size:var(--t-petit)}
.h5 .sans-eng{color:rgba(250,249,245,.85);text-shadow:none}
.hp .sous{font:400 var(--t-chapo)/1.5 var(--sans);color:var(--gris);max-width:40rem}
@media(max-width:759px){.h5 h1{font-size:clamp(2.5rem,12vw,3.2rem)}.h5{min-height:92svh}.h5:before{background:linear-gradient(180deg,rgba(20,20,18,.45) 0%,rgba(20,20,18,.1) 30%,rgba(20,20,18,.8) 100%)}}
.hp{background:var(--ivoire)}
.hp-in{max-width:1280px;margin:0 auto;padding:var(--e4) clamp(1.4rem,4vw,3rem) var(--e5)}
.hp:before{background:linear-gradient(180deg,rgba(20,20,18,.5),rgba(20,20,18,0))}
.hp-mention{right:clamp(1.4rem,4vw,3rem)!important}
.h5 form input,.h5 form button,.h5 input{min-height:52px;border-radius:2px;font:400 1rem var(--sans)}

/* 3.3 : sections sombres = ouverture, contact, pied. Zone claire. */
.zone9 .chapo{color:var(--gris)}.zone9-n{color:var(--gris);font-size:var(--t-texte)}
.zone9 h2{color:var(--noir)}.zone9 .kicker{color:var(--gris)}
.zone9{gap:var(--e4)}
@media(min-width:900px){.zone9{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:var(--e5)}}
.carte{margin:0}
.carte-w{position:relative;max-width:640px;margin:0 auto;background:var(--ivoire);aspect-ratio:1/1}
.carte-w picture,.carte-w picture img{display:block;width:100%;height:100%}
.carte-w picture img{object-fit:fill}
.carte-w .carte-svg{position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0;border:0;background:none}
.carte figcaption{font-size:var(--t-petit);line-height:1.5;color:var(--gris);max-width:640px;margin:.75rem auto 0}
.carte .cr{display:block;margin-top:.35rem;font-size:.75rem;line-height:1.45;color:var(--gris)}
.c-voile{fill:rgba(250,249,245,.45)}
.c-zone{fill:none;stroke:#B39B6A;stroke-width:1.2;stroke-dasharray:5 4}
.c-front{fill:none;stroke:rgba(17,17,16,.25);stroke-width:.5;stroke-dasharray:3 2.5}
.c-villes text{font:500 7.4px var(--sans);text-transform:uppercase;letter-spacing:.06em;fill:#111110;paint-order:stroke;stroke:#FAF9F5;stroke-width:2.2px;stroke-linejoin:round}
.c-villes circle{fill:#111110}
.c-show text{font:600 8px var(--sans);fill:#111110;paint-order:stroke;stroke:#FAF9F5;stroke-width:2.2px;stroke-linejoin:round}
.c-echelle path{stroke:#111110;stroke-width:1;fill:none}
.c-echelle text{font:500 7px var(--sans);fill:#111110;paint-order:stroke;stroke:#FAF9F5;stroke-width:2px}
@media(max-width:599px){.c-villes .sec{display:none}.c-villes text{font-size:10px}.c-show text{font-size:10.5px}.c-echelle text{font-size:9.5px}}

/* équipe, pourquoi, financement */
.pers5,.carte-c,.md5,.mot5{background:none;border:0;border-radius:0;box-shadow:none}
.pers5 blockquote{border-left:0;padding-left:0;font:400 var(--t-chapo)/1.5 var(--sans);color:var(--encre)}
.role,.pers5 .role{font-size:.9375rem;color:var(--gris)}
ol.pq{max-width:none;gap:0}
ol.pq li{padding:1.4rem 0 1.4rem 4.5rem;border-top:1px solid var(--filet)}
ol.pq li:last-child{border-bottom:1px solid var(--filet)}
ol.pq li:before{font:500 1rem/1.65 var(--sans);color:var(--gris);top:1.4rem;left:0;letter-spacing:0}
ol.pq b{color:var(--noir);font-weight:600}
@media(min-width:900px){ol.pq li{padding-left:calc(100%/12*2.2)}}
.mot5 .num{font:500 1rem/1 var(--sans);color:var(--gris)}
.ch5 b{background:none;-webkit-text-fill-color:currentColor;color:var(--ivoire);font:500 clamp(3rem,8vw,6rem)/1 var(--display);letter-spacing:-.04em}
.ch5 div{border-top:1px solid rgba(250,249,245,.14)}
.ch5 b small{font:500 .4em/1 var(--sans)}
.faq summary:after,details.pli>summary:after{font:400 1.5rem/1 var(--sans);color:var(--noir)}
.ct details.pli>summary:after{color:var(--ivoire)}
details.pli>summary{font-family:var(--display);font-weight:500;letter-spacing:-.01em}

/* contact : sombre, formulaire */
.ct{background:var(--nuit);border-top:0;padding:clamp(4rem,8vw,7rem) 0}
.ct input[type=text],.ct input[type=tel],.ct input[type=email],.ct textarea,.ct select{min-height:52px;border:1px solid rgba(250,249,245,.25);border-radius:2px;background:var(--ivoire);color:var(--noir);font:400 1rem var(--sans)}
.ct input:focus,.ct textarea:focus{border-color:var(--ivoire);outline:2px solid var(--or-clair);outline-offset:2px}
.ct legend{font:500 var(--t-h3)/1.25 var(--display);letter-spacing:-.01em;text-transform:none;color:var(--ivoire)}
.ct label,.ct .facultatif{font-family:var(--sans);letter-spacing:0;text-transform:none}
.tuile{background:var(--pierre);border:1px solid transparent;border-radius:0}
.tuile.txt{background:transparent;border:1px solid rgba(250,249,245,.3)}
.tuile:has(input:checked){border-color:var(--ivoire);box-shadow:none}
.tuile:has(input:focus-visible){outline:2px solid var(--or-clair)}
.tuile span{font:500 .95rem var(--sans);letter-spacing:0}
.tuile:has(input:checked) span:before{border-color:var(--ivoire)}
.tuile img{filter:saturate(.92) contrast(1.03)}
.carte-c{border:0;border-top:1px solid rgba(250,249,245,.12);padding:1.25rem 0}
.carte-c .tel2,.carte-c .tel3{font:500 1.375rem/1.2 var(--sans);font-variant-numeric:tabular-nums lining-nums}
.ct .carte-c h3{color:var(--ivoire)}
.ct .carte-c .pt a,.carte-c .pt a{color:var(--or-clair)!important}
.ct .carte-c a{color:var(--ivoire)}
.ct .role,.ct address{color:var(--sourdine)}

/* 3.9 pied de page */
footer.pied{background:var(--nuit);border-top:0;padding:clamp(4rem,7vw,6rem) 0 2.5rem}
footer.pied .pied-t{font:500 var(--t-petit)/1.4 var(--sans);color:rgba(250,249,245,.6);letter-spacing:0;text-transform:none}
footer.pied a,footer.pied li{font:400 .9375rem/2 var(--sans);color:var(--sourdine);letter-spacing:0}
footer.pied a:hover{color:var(--ivoire)}
footer.pied .reseaux a{color:var(--ivoire)}
footer.pied .legal-liens{border-top:1px solid rgba(250,249,245,.12)}
footer.pied .legal-liens a{font-size:.8125rem;color:var(--sourdine)}
footer.pied .zones li.np{color:var(--sourdine)}
.legal-page .entete{background:var(--nuit)}

/* showroom : mention */
.sh5 .px,.px{background:var(--pierre)}

@media(prefers-reduced-motion:reduce){
 .js .r,.js .a8{opacity:1!important;transform:none!important;transition:none!important}
 .pg-i img,.gal .gi img,.ig-i img,.btn{transition:none!important}
 .pg-c:hover .pg-i img,.gal figure:hover .gi img,.ig-i:hover img{transform:none!important}
}

/* nettoyage des filets et cadres or restants (v4/v5/v6) : un filet fin neutre, jamais décoratif */
.an5-cols>div,.eng5>div,.ch5 div,.chiffre,.eng,.modele{border-top:1px solid var(--filet);padding-top:1.1rem}
.col.alu{border-top-color:var(--filet)}
.fab,.proj-txt,.etat-adresse,#etat,.legal-credit{border-left:0;border-top:1px solid var(--filet)}
.verif{border-color:var(--filet)}
.uw-unit,.tableau tr.alu td:first-child:after,.legende .n{color:var(--noir)}
.legende .n{background:var(--pierre);font-weight:600}
.barre .a1{border-top-color:var(--filet)}
.h5-form input,.h5 .h5-champ input{border:1px solid rgba(250,249,245,.25);border-radius:2px;background:var(--ivoire);color:var(--noir);font:400 1rem var(--sans);min-height:52px}
.ct-form{background:transparent;border:1px solid rgba(250,249,245,.14);border-radius:0}
.etapes li{font-family:var(--sans);letter-spacing:0;text-transform:none}
.etapes li.on{color:var(--ivoire);border-top-color:var(--ivoire)}
.etapes li.ok{color:var(--ivoire);border-top-color:rgba(250,249,245,.5)}
.mode:has(input:checked){border-color:var(--ivoire);background:rgba(250,249,245,.06);box-shadow:none}
.ct .rgpd input{accent-color:var(--ivoire)}
.ct details.pli>summary{border-top:1px solid rgba(250,249,245,.14);border-bottom:1px solid rgba(250,249,245,.14)}
.ct .btn:disabled,.ct .btn[disabled]{opacity:.5}
.btn.ligne-fonce{color:var(--noir);border-color:var(--noir)}
.ct .btn.ligne-fonce,.bd-noir .btn.ligne-fonce{color:var(--ivoire);border-color:rgba(250,249,245,.7)}
.wa-fin.wa-sombre{border-color:rgba(250,249,245,.7)}
.filtres button{border-color:var(--noir);color:var(--noir);font-family:var(--sans);border-radius:2px}
.filtres button[aria-pressed="true"]{background:var(--noir);color:var(--ivoire)}
footer.pied a{text-decoration:none;border-bottom:0}
footer.pied .legal-liens a,footer.pied .reseaux a{border-bottom:0;text-decoration:none}
.entete .btn.petit,.entete .wa-entete{border-radius:2px}
.pers5 .corps,.mot5 .corps,.md5 .corps{padding:1.1rem 0 0}
.pers5 .role{color:var(--gris);font-weight:500;font-size:.9375rem}
.pers5 figcaption,.pers5 .ini small{font:500 .75rem/1.2 var(--sans);letter-spacing:0;border-radius:0}
.pers5 h3{font-size:var(--t-h3)}
.entete .droite .fin{display:none}
@media(min-width:1366px){.entete .droite .fin{display:inline-flex}}
@media(min-width:760px){.h5 .hp-mention{top:auto!important;bottom:1.25rem!important;right:clamp(1.4rem,4vw,3rem)!important}}
.pers5 blockquote,.bd .pers5 blockquote,.pers5 .corps blockquote{border-left:0!important;padding-left:0!important;font:400 var(--t-chapo)/1.5 var(--sans)}
.bd .cta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:var(--e4)}
.bd .cta .btn{margin:0}
.st5 li:before,.bd .st5 li:before{font:500 1rem/1 var(--sans);color:var(--gris);letter-spacing:0;margin-bottom:.6rem}
details.pli>summary{font:500 1rem/1.3 var(--display);letter-spacing:-.01em;border-top:1px solid var(--filet);color:var(--noir)}
.ct details.pli>summary{color:var(--ivoire);border-top:1px solid rgba(250,249,245,.14)}
.bd-ivoire .kicker,.bd-sable .kicker{color:var(--gris)}
.bd .sans-eng,.bd-ivoire .sans-eng,.bd-sable .sans-eng{color:var(--gris);text-shadow:none;font-size:var(--t-petit)}
/* plus de petits tirets : listes de faits en lignes séparées par un filet */
.faits li:before,.bd .faits li:before{content:none;display:none}
.faits li{padding-left:0;border-top:1px solid var(--filet);padding-top:.9rem;padding-bottom:.9rem}
.faits li:last-child{border-bottom:1px solid var(--filet)}
.pc .nb b,.mot5 .nb b,.baies5 .mot5 .nb b,.bd-ivoire .mot5 .nb b,.bd-sable .mot5 .nb b{color:var(--noir);font:500 1.5rem/1.1 var(--display);letter-spacing:-.02em}
.pc .nb span,.mot5 .nb span,.baies5 .mot5 .nb span{font-size:.8125rem}
.etapes-fine li:before{color:var(--gris);font:500 1rem var(--sans)}
.pers5 .pres{border-left:0;padding-left:0;color:var(--encre)}
.faits{gap:0}
.bd-ivoire .ch5 b,.bd-sable .ch5 b{color:var(--noir)}
.bd-ivoire .ch5 div,.bd-sable .ch5 div{border-top-color:var(--filet)}
.bd-ivoire .ch5 span,.bd-sable .ch5 span{color:var(--encre)}
.bd-ivoire .ch5 em,.bd-sable .ch5 em,.bd-sable .sources,.bd-ivoire .sources{color:var(--gris)}
.bd-sable .uw-ligne,.bd-ivoire .uw-ligne{color:var(--encre);font:500 var(--t-chapo)/1.4 var(--display)}
.bd-sable h2,.bd-ivoire h2{color:var(--noir)}
footer.pied a,footer.pied .zones a,footer.pied .liens a{border-bottom:0!important;text-decoration:none!important}
footer.pied a:hover{text-decoration:underline!important;text-decoration-thickness:1px;text-underline-offset:.2em}


/* ===== v10 : ouverture « baie coulissante » (une fois par visite). Sans JS : rien. Images : img/intro/ ===== */
:root{--iA:url(img/intro/neige-A-exterieur-16x9.jpg);--iB:url(img/intro/neige-B-interieur-16x9-m.jpg)}
@media(orientation:portrait){:root{--iA:url(img/intro/neige-A-exterieur-9x16-m.jpg);--iB:url(img/intro/neige-B-interieur-9x16-m.jpg)}}
.intro{display:none}
.intro-on .intro{display:block;position:fixed;inset:0;z-index:1000;overflow:hidden;background:#141412;opacity:1;animation:intro-fin 0s linear 10s forwards}
.intro-on.intro-fini .intro{display:none}
@keyframes intro-fin{to{visibility:hidden;opacity:0}}
.intro .i-b{position:absolute;inset:0;transform:scale(1.06)}
.intro-sec .intro .i-b{background:var(--iB) center/cover no-repeat}
.ouvre .intro .i-b{transform:scale(1);transition:transform 2.2s cubic-bezier(.22,.61,.36,1)}
.intro .vt{position:absolute;top:0;bottom:0;width:50%;overflow:hidden;transition:transform 1.6s cubic-bezier(.77,0,.18,1);will-change:transform}
.intro .vt i{position:absolute;top:0;bottom:0;width:200%;background:var(--iA) center/cover no-repeat}
.intro .vt-g{left:0}.intro .vt-g i{left:0}
.intro .vt-d{right:0;transition-delay:.14s}.intro .vt-d i{right:0}
.ouvre .intro .vt-g{transform:translateX(-101%)}
.ouvre .intro .vt-d{transform:translateX(101%)}
/* halo de lumière chaude dans la fente, au début de l'ouverture */
.intro .fente{position:absolute;top:0;bottom:0;left:50%;width:16vw;margin-left:-8vw;opacity:0;background:radial-gradient(closest-side,rgba(255,236,200,.8),rgba(255,236,200,0));mix-blend-mode:screen;pointer-events:none}
.ouvre .intro .fente{animation:intro-lumiere 1.5s cubic-bezier(.4,0,.2,1) .05s both}
@keyframes intro-lumiere{0%{opacity:0;transform:scaleX(.2)}30%{opacity:1;transform:scaleX(1)}100%{opacity:0;transform:scaleX(2.6)}}
.intro .i-mention{position:absolute;right:.9rem;bottom:.9rem;font:500 .75rem/1.2 var(--sans);color:rgba(250,249,245,.92);background:rgba(17,17,16,.7);padding:.3rem .5rem}
/* fondu final vers l'ouverture de l'accueil, qui garde son léger zoom */
.intro-on.fondu .intro{opacity:0;transition:opacity .5s ease}
.intro-on.ouvre .h5-media img{transform:scale(1.06);transition:transform 3s cubic-bezier(.22,.61,.36,1)}
@media(prefers-reduced-motion:reduce){.intro,.intro-on .intro{display:none!important}.intro-on .h5-media img{transform:none}}

/* Robin et Thibault en duo : un seul bloc, deux portraits de même taille, un seul texte */
.duo-b{display:grid;grid-template-columns:1fr 1fr;gap:var(--gout);margin-top:var(--e4);max-width:56rem}
.duo-f{margin:0;aspect-ratio:4/5;overflow:hidden;background:var(--pierre)}
.duo-f img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 30%;filter:saturate(.92) contrast(1.03)}
.duo-t{grid-column:1/-1;margin:.5rem 0 0;max-width:40rem;font:400 var(--t-chapo)/1.5 var(--sans);color:var(--encre)}
#equipe h2{max-width:24ch}

/* vidéo d'ouverture (Runway) : par-dessus l'animation de secours, qui reste en dessous */
.intro .i-v{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;opacity:0;background:#141412}
.intro-vid .intro .i-v{opacity:1}
.intro .i-passer{position:absolute;top:.9rem;right:.9rem;z-index:3;font:500 .8125rem/1 var(--sans);color:rgba(250,249,245,.92);background:rgba(17,17,16,.5);border:1px solid rgba(250,249,245,.45);border-radius:2px;padding:.5rem .8rem;cursor:pointer}
.intro .i-passer:hover{background:rgba(17,17,16,.75)}
.intro .i-passer:focus-visible{outline:2px solid var(--or-clair);outline-offset:2px}
.intro .i-mention{z-index:3}

/* écran d'entrée (logo + « Entrer »), son, ouverture qui part de l'image intro-B */
.intro .i-entree{position:absolute;inset:0;z-index:2;background:#141412;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.25rem;transition:opacity .5s ease}
.intro .i-entree img{width:clamp(150px,16vw,230px);height:auto}
.intro .i-entrer{font:500 .9375rem/1 var(--sans);letter-spacing:.02em;color:var(--ivoire);background:transparent;border:1px solid rgba(250,249,245,.55);border-radius:2px;min-height:48px;padding:0 2.2rem;cursor:pointer;transition:background-color .2s var(--ease)}
.intro .i-entrer:hover{background:rgba(250,249,245,.08)}
.intro .i-entrer:focus-visible,.intro .i-son:focus-visible{outline:2px solid var(--or-clair);outline-offset:2px}
.intro-go .intro .i-entree{opacity:0;pointer-events:none}
.intro .i-mention{opacity:0;transition:opacity .4s ease}.intro-go .intro .i-mention{opacity:1}
.intro .i-son{position:absolute;left:.9rem;bottom:.9rem;z-index:3;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;color:rgba(250,249,245,.92);background:rgba(17,17,16,.5);border:1px solid rgba(250,249,245,.45);border-radius:2px;cursor:pointer}
.intro .i-son[hidden]{display:none}
.intro .i-son .i-off{display:none}.intro .i-son[aria-pressed="true"] .i-on{display:none}.intro .i-son[aria-pressed="true"] .i-off{display:inline}
/* le contenu de l'ouverture apparaît par-dessus l'image, en fondu, quand l'ouverture est finie */
.intro-on .h5-in{opacity:0;animation:intro-in 0s linear 10.2s forwards}
.intro-on.intro-fini .h5-in{opacity:1;transition:opacity .9s ease .15s}
@keyframes intro-in{to{opacity:1}}
/* léger travelling qui continue, sans à-coup */
.intro-on.ouvre .h5-media img{transform:none;transition:none}
.intro-on.fondu .h5-media img{transform:scale(1.05);transition:transform 10s cubic-bezier(.22,.61,.36,1)}
@media(prefers-reduced-motion:reduce){.intro-on .h5-in{opacity:1;animation:none}}
/* bande de saison sous l'ouverture (image seule, chargée à la volée) */
.saison-b{position:relative;margin:0;background:var(--pierre);aspect-ratio:16/7;max-height:70svh;overflow:hidden}
.saison-b img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.03)}
.saison-b .hp-mention{position:absolute;right:clamp(1.4rem,4vw,3rem);bottom:1rem;left:auto;top:auto!important}
@media(max-width:759px){.saison-b{aspect-ratio:4/3}}

/* micro-détails : veuves et orphelines, focus clavier, survols réguliers */
p,li,figcaption,.chapo,.sous{text-wrap:pretty}
h1,h2,h3,.pg-n b{text-wrap:balance}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--or-texte);outline-offset:3px;border-radius:2px}
.h5 a:focus-visible,.h5 button:focus-visible,.h5 input:focus-visible,.ct a:focus-visible,.ct button:focus-visible,.ct input:focus-visible,.ct textarea:focus-visible,footer.pied a:focus-visible,.entete a:focus-visible,.entete summary:focus-visible{outline-color:var(--or-clair)}
.pg-c:focus-visible{outline:2px solid var(--or-texte);outline-offset:4px}
a{transition:color .2s var(--ease),text-decoration-color .2s var(--ease)}
img{max-width:100%;height:auto}
.pg-i img,.gal .gi img,.ig-i img,.h5-media img,.hp-media img,.duo-f img,.saison-b img{height:100%}
.ig-i img{height:auto}
.h5-media img{height:100%!important}
.bd p a:not(.btn):hover{text-decoration-color:var(--noir)}
@media(max-width:759px){h1,h2,h3,p,li,a,button,summary{overflow-wrap:break-word;hyphens:manual}}
.saison-b .hp-mention{bottom:.9rem!important;top:auto!important;right:clamp(1.4rem,4vw,3rem)!important;left:auto!important}
/* lisibilité du titre sur l'image intro-B (canapés clairs au centre) */
.h5:before{background:linear-gradient(180deg,rgba(20,20,18,.5) 0%,rgba(20,20,18,.06) 26%,rgba(20,20,18,.5) 52%,rgba(20,20,18,.88) 100%)}
@media(max-width:759px){.h5:before{background:linear-gradient(180deg,rgba(20,20,18,.5) 0%,rgba(20,20,18,.08) 24%,rgba(20,20,18,.62) 48%,rgba(20,20,18,.9) 100%)}}

/* page Notre histoire */
.histoire{max-width:40rem;margin-top:var(--e4)}
.histoire p{font:400 var(--t-chapo)/1.55 var(--sans);color:var(--encre);margin:0 0 1.25rem}
.histoire .sig-h{font:500 var(--t-h3)/1.25 var(--display);color:var(--noir);margin-top:2rem}

/* =====================================================================
   v11 (13/11) : corrections après contrôles v10 (Mila, Noé) et arbitrages de Bastien
   ===================================================================== */
/* titres : interlettrage desserré */
h1,.h5 h1,.hp h1{letter-spacing:-.015em}
.bd h2,.ct h2,.bd-noir h2{letter-spacing:-.012em}
/* voile sous le menu : le logo reste lisible sur les photos claires */
.entete:not(.fond):before{content:"";position:absolute;left:0;right:0;top:0;height:calc(100% + 56px);background:linear-gradient(180deg,rgba(20,20,18,.62) 0%,rgba(20,20,18,.28) 60%,rgba(20,20,18,0) 100%);pointer-events:none;z-index:-1}
.entete .logo img{filter:drop-shadow(0 1px 6px rgba(0,0,0,.35))}
.entete.fond .logo img{filter:none}
.entete summary{min-height:44px}
.entete .droite .fin,.entete.fond .droite .fin{display:none!important}
/* premier écran : une seule action ; la bulle WhatsApp ne couvre plus le texte */
.h5-in .sans-eng{margin-top:.9rem}
@media(max-width:759px){
 .h5-in,.hp-in{padding-bottom:calc(8.5rem + env(safe-area-inset-bottom))}
 .wa-flot{width:48px;height:48px;right:.75rem}
 .h5 .sous{margin-bottom:1.1rem}
}
@media(min-width:760px){.h5-in{padding-bottom:clamp(3rem,7vh,5rem)}}
/* ouverture : vidéo de 10 s, filet de sécurité CSS à 13 s si le script ne termine pas */
.intro-on .intro{animation-delay:13s}
.intro-on .h5-in{animation-delay:13.2s}
.intro .i-v{opacity:1}
.intro .i-mention{opacity:1}
.intro .i-son{width:auto;height:44px;padding:0 .95rem 0 .8rem;gap:.55rem;font:500 .875rem/1 var(--sans);letter-spacing:0;background:rgba(17,17,16,.72);border:1px solid rgba(250,249,245,.75);color:#FAF9F5;left:.9rem;bottom:.9rem}
.intro .i-son .i-t{white-space:nowrap}
.intro .i-son.actif{border-color:rgba(250,249,245,.45)}
.intro .i-son .i-on{display:none}
.intro .i-son.actif .i-on{display:inline}.intro .i-son.actif .i-off{display:none}
.intro .i-son[aria-pressed="false"] .i-off{display:inline}
@media(max-width:759px){.intro .i-son{bottom:calc(.9rem + env(safe-area-inset-bottom))}.intro .i-mention{bottom:calc(.9rem + env(safe-area-inset-bottom));right:.9rem}}
/* duo Robin et Thibault : pleine largeur, deux portraits de même taille, même cadrage, même étalonnage */
.duo-b{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gout);margin-top:var(--e4);max-width:none;width:100%}
.duo-f{margin:0;aspect-ratio:auto;overflow:visible;background:none}
.duo-f .cadre{display:block;overflow:hidden;aspect-ratio:4/5;background:var(--pierre)}
.duo-f img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;filter:saturate(.72) contrast(1.04) brightness(1) sepia(.06)}
.duo-f img.p-robin{object-position:45% 15%;transform:scale(1.7);transform-origin:45% 20%}
.duo-f img.p-thibault{object-position:50% 24%;filter:saturate(.7) contrast(1.04) brightness(.96) sepia(.06)}
.duo-f figcaption{padding:.8rem 0 0;font:500 .9375rem/1.35 var(--sans);color:var(--gris)}
.duo-f figcaption b{display:block;font:500 1.125rem/1.3 var(--display);color:var(--noir);font-weight:500}
.duo-t{margin:1.5rem 0 0;max-width:40rem;font:400 var(--t-chapo)/1.5 var(--sans);color:var(--encre)}
@media(min-width:760px){.duo-f .cadre{aspect-ratio:1/1}}
/* carte : étiquettes de droite recadrées */
.c-villes text.fin-d{text-anchor:end}
/* bouton « Continuer » désactivé : pas l'air cassé */
.ct .btn:disabled,.ct .btn[disabled]{background:transparent;color:rgba(250,249,245,.55);border:1px solid rgba(250,249,245,.3);opacity:1;cursor:not-allowed}
/* pas de bande noire sous le pied de page */
html{background:var(--nuit)}
body{background:var(--ivoire)}
@media(max-width:999px){footer.pied{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}}
/* note de source discrète */
.note-src{font-size:.75rem;color:var(--gris)}
.duo-f .cadre{position:relative}
.duo-f .cadre img{position:absolute;inset:0}
.duo-f img.p-thibault{transform:scale(1.03);transform-origin:50% 20%}
.btn{line-height:1.25;text-align:center;padding-top:.6rem;padding-bottom:.6rem}
.tuile span{background:linear-gradient(0deg,rgba(17,17,16,.82),rgba(17,17,16,0));padding:1.4rem .6rem .5rem;color:#FAF9F5}
@media(max-width:759px){.hp .sans-eng,.h5 .sans-eng{padding-right:3.8rem}}
.js .vu .rid{clip-path:inset(0 0 0 0)}

/* v12 : badge « Image d’illustration » sous l’en-tête sur téléphone (ne chevauche plus le surtitre) */
@media(max-width:759px){.h5 .hp-mention{top:4.6rem!important;bottom:auto!important}}

/* v12 : vidéo de Thibault au showroom (lecture au clic) */
.vt12{margin:2rem 0 0;max-width:46rem}
.vt12-c{position:relative;aspect-ratio:16/9;max-width:100%;background:var(--nuit);overflow:hidden}
.vt12-p,.vt12-v{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.vt12-b{position:absolute;left:1rem;bottom:1rem;display:inline-flex;align-items:center;gap:.6rem;padding:.75rem 1.1rem;border:0;background:rgba(17,17,16,.78);color:var(--ivoire);font:500 .95rem/1 var(--sans);cursor:pointer}
.vt12-b svg{width:1.2rem;height:1.2rem}
.vt12-b:hover,.vt12-b:focus-visible{background:rgba(17,17,16,.92)}
.vt12-b:focus-visible{outline:2px solid var(--or);outline-offset:2px}
.vt12 figcaption{margin-top:.7rem;font-size:var(--t-petit);color:var(--sourdine)}
.vt12-cta{margin-top:1.4rem}
/* v12 : transition discrète à la sélection d'un mode de rendez-vous */
.rdv5 .choisi12{border-color:var(--or)!important;box-shadow:inset 0 0 0 1px var(--or)}
@keyframes sig12{0%{opacity:.35;transform:translateY(10px)}100%{opacity:1;transform:none}}
@keyframes sig12b{0%{box-shadow:0 0 0 0 rgba(179,155,106,.55)}100%{box-shadow:0 0 0 12px rgba(179,155,106,0)}}
fieldset.sig12{animation:sig12 .45s cubic-bezier(.2,.7,.2,1) both}
button.sig12{animation:sig12b .9s ease-out 2}
@media (prefers-reduced-motion:reduce){fieldset.sig12,button.sig12{animation:none}}

/* v12 : page Showroom sur téléphone, pas de pastille WhatsApp flottante (le bouton WhatsApp est déjà dans la page) */
@media(max-width:759px){body[data-mode="Au showroom"] .wa-flot{display:none!important}}

/* v12 : bloc « Oser la durabilité » sur deux colonnes à partir de la tablette */
@media(min-width:900px){
#durer .r{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:clamp(2.5rem,6vw,6rem);row-gap:1.1rem;align-items:start}
#durer .r>.filet,#durer .r>.kicker{grid-column:1}
#durer .r>h2{grid-column:1;grid-row:2/span 6;max-width:14ch}
#durer .r>.chapo{grid-column:2;max-width:60ch;margin:0}
#durer .r>.chapo:first-of-type{grid-row:1/span 2}
}

/* v13 : bandeau « Yeterna, comme éternel » — grande typographie */
.nom13 h2{font-size:clamp(2.6rem,9vw,7.5rem);line-height:.98;letter-spacing:-.035em;max-width:none;font-weight:500}
.nom13 h2 span{display:block;color:var(--or)}
.nom13 .chapo{max-width:46ch;margin-top:1.4rem}

/* v13 : formulaire pro, les boutons radio masqués restent dans leur carte (pas de débordement sur téléphone) */
#formpro .mode{position:relative;overflow:hidden}
#formpro .et{margin-bottom:1.4rem}
#formpro .et+.et{border-top:0}
#pro .ct-side a{color:var(--ivoire);text-decoration:underline;text-underline-offset:3px}
#pro .ct-side p{color:rgba(250,249,245,.85)}
/* v14 (13/11) : menu bureau entre 1000 et 1180 px, le bouton « Étude gratuite » n'est plus coupé */
@media (min-width:900px) and (max-width:1180px){header nav.bureau{gap:1rem!important;font-size:.88rem}header .in{padding-left:1.25rem!important;padding-right:1.25rem!important}header .droite{gap:.5rem}}
/* v15 (13/11) : fenêtres en avant, pas de chatbot */
.pg-l li:nth-child(-n+2){grid-column:span 12}
.pg-l li:nth-child(n+3){grid-column:span 6}
@media(min-width:760px){.pg-l li:nth-child(-n+2){grid-column:span 6}.pg-l li:nth-child(n+3){grid-column:span 4}.pg-l li:nth-child(n+3) .pg-i{aspect-ratio:4/3}.pg-l li:nth-child(-n+2) .pg-i{aspect-ratio:3/2}}
@media(max-width:759px){.pg-l li:nth-child(n+3) .pg-i{aspect-ratio:4/3}}
.fen15-g{display:grid;gap:1.4rem;margin-top:2rem}
.fen15-g article{background:#fff;border-top:4px solid var(--noir-mat);padding:1.6rem 1.3rem}
.fen15-g h3{margin:.3rem 0 1rem}
.rep15{list-style:none;margin:0 0 1.2rem;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:1rem}
.rep15 b{display:block;font:500 1.5rem/1.1 var(--display)}
.rep15 span{display:block;font-size:.9rem;color:var(--gris)}
@media(min-width:900px){.fen15-g{grid-template-columns:1fr 1fr;gap:1.6rem}.fen15-g article{padding:2.2rem 2rem}}
.pas-bot{font-weight:600;margin:0 0 1rem}
/* pages produit fenêtres */
.tab-sc{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%;margin-top:1.6rem}
.tab-sc table{border-collapse:collapse;min-width:34rem;width:100%;font-size:.95rem}
.tab-sc th,.tab-sc td{text-align:left;padding:.8rem .7rem;border-bottom:1px solid rgba(33,35,32,.18);vertical-align:top}
.tab-sc th{font-size:.78rem;color:var(--gris);border-bottom:2px solid var(--noir-mat)}
.tab-sc td:first-child{font-weight:600}
.gam15{display:grid;gap:1.4rem;margin-top:2rem}
.gam15 article{background:#fff;border-top:4px solid var(--noir-mat);padding:1.6rem 1.3rem}
.gam15 h3{margin:.2rem 0 .8rem}
.gam15 ul{margin:.8rem 0 0;padding-left:1.1rem}.gam15 li{margin:.3rem 0}
.gam15 .src{display:block;margin-top:.8rem;font-size:.78rem;color:var(--gris)}
@media(min-width:900px){.gam15{grid-template-columns:1fr 1fr}.gam15 article{padding:2rem}}
.choix15{margin:1.6rem 0 0;padding-left:1.1rem}.choix15 li{margin:.6rem 0}
/* v15 (13/11) : bouton WhatsApp de l'en-tête bien cadré (le texte ne touche plus le bord, aucun rétrécissement) */
.entete .droite{flex-shrink:0}
.entete .droite>*{flex-shrink:0}
.entete .wa-entete{box-sizing:border-box;width:auto;min-width:max-content;padding:.6rem 1.05rem;gap:.55rem;line-height:1}
.entete .wa-entete span{display:inline-block;line-height:1}
@media(min-width:1000px) and (max-width:1599px){.entete .wa-entete{padding:.6rem .7rem;min-width:0}.entete .wa-entete span{display:none}}
/* v15 : slogan de marque en pied de page */
.pied .slogan{font-family:var(--f-titre,inherit);font-size:1.05rem;letter-spacing:.01em;color:var(--or);margin:.9rem 0 .4rem}
.pied .slogan{display:flex;flex-direction:column;gap:.15rem}
.pied .slogan b{font-weight:600;letter-spacing:.18em;font-size:.95rem;color:var(--ivoire)}
.pied .slogan span{font-size:.92rem;color:rgba(250,249,245,.75);font-style:italic}
.h5 .kicker .base{display:block;margin-top:.25rem;font-style:italic;font-weight:400;text-transform:none;letter-spacing:0;opacity:.9}
