/* =====================================================================
   Yeterna v6 : direction de style CLAIRE
   À charger APRÈS v4.css et v5.css. Ne change aucune structure.
   Base : ivoire et sable, grande typographie noire. Noir = ouverture, chiffres, contact, pied.
   Or = filets, numéros, boutons. Aucun bleu.
   Polices : voir v10.css (Inter Tight et Inter).
   ===================================================================== */

:root{
 --noir:#121210;--ebene:#1C1812;--encre:#25231E;--gris:#5A564D;
 --ivoire:#FEFEF9;--sable:#F4EFE3;--pierre:#EFEDE4;--blanc:#FFFFFF;
 --or:#B6A47C;--or-clair:#D8C79A;--or-profond:#9A8657;--or-texte:#6D6247;
 --sourdine:#B5AFA0;--ivoire-doux:#E6E1D3;
 --filet:rgba(18,18,16,.16);--filet-or:rgba(182,164,124,.45);
 --or-grad:linear-gradient(100deg,#8F7B4D 0%,#D8C79A 30%,#B6A47C 52%,#EBDDB4 74%,#A08B5B 100%);
 --serif:var(--display);--accent:var(--display);
 /* on remplace les anciennes variables : plus de gris-vert ni de bleu */
 --nuit:#121210;--noir-mat:#1C1812;--ardoise:#1C1812;--encre:#25231E;
 --ease:cubic-bezier(.22,.61,.36,1)
}
body{background:var(--ivoire);color:var(--encre);font:400 17px/1.7 var(--sans),system-ui,sans-serif;font-feature-settings:"lnum" 1}
main{counter-reset:sec}

/* ---------- titres : var(--display) seulement en grand, noir sur fond clair ---------- */
h1,h2,h3{font-family:var(--serif);font-weight:400;color:var(--noir)}
.bd h2,.ct h2{font:400 clamp(2.1rem,4.7vw,4.3rem)/1.07 var(--display);letter-spacing:0;max-width:18ch;color:var(--noir)}
.ct h2,.bd-noir h2{color:var(--ivoire)}
h3{font:500 1.02rem/1.35 var(--display);letter-spacing:0;text-transform:none}
.mot5 h3,.pers5 h3,.md5 h3{font-size:1.4rem;letter-spacing:0}
/* l'italique d'accent : un mot ou un groupe de mots par titre, jamais plus */
em.it{font:500 1.16em/.9 var(--accent);letter-spacing:0;text-transform:none;color:var(--or-texte);padding-right:.04em}
.bd-noir em.it,.ct em.it,.h5 em.it{background:var(--or-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--or-clair)}

/* sur-titres numérotés : 01 / TEXTE (le numéro vient d'un compteur, rien à saisir) */
.kicker{font:600 .72rem/1.4 var(--sans);letter-spacing:0;text-transform:none;color:var(--or-texte)}
.filet+.kicker:before{counter-increment:sec;content:counter(sec,decimal-leading-zero) "\00a0\00a0/\00a0\00a0";font:500 1.5em/1 var(--accent);letter-spacing:0;text-transform:none;color:var(--or-texte)}
.bd-noir .kicker,.ct .kicker,.h5 .kicker{color:var(--or-clair)}
.bd-noir .filet+.kicker:before{color:var(--or-clair)}
.bd .filet{display:block;width:3.6rem;height:2px;background:var(--or-grad);margin:0 0 1.5rem}

/* texte courant et chapô */
.bd .chapo{font:500 clamp(1.35rem,2.1vw,1.85rem)/1.38 var(--accent);letter-spacing:0;color:var(--encre);max-width:36rem;margin:1.6rem 0 0}
.bd-noir .chapo{color:var(--ivoire-doux)}
.bd p{font-weight:400}
.bd .cta{margin-top:2.6rem}

/* ---------- bandes : ivoire, sable, noir (rare) ---------- */
.bd{padding:clamp(4.2rem,10vw,9.5rem) 0}
.bd-ivoire{background:var(--ivoire);color:var(--encre)}
.bd-sable{background:var(--sable);color:var(--encre)}
.bd-noir{background:var(--noir);color:var(--ivoire)}
.bd-noir h2,.bd-noir h3{color:var(--ivoire)}
.bd-ivoire .kicker,.bd-sable .kicker{color:var(--or-texte)}

/* ---------- boutons ---------- */
.btn{font:600 .74rem/1 var(--sans);letter-spacing:0;text-transform:none;padding:1.15rem 2.1rem;border-radius:0;transition:background-position .7s var(--ease),background-color .4s var(--ease),color .4s var(--ease),border-color .4s var(--ease),transform .4s var(--ease),box-shadow .5s var(--ease)}
.btn.petit,.entete .btn.petit{padding:.75rem 1.1rem;font-size:.68rem;letter-spacing:0}
.btn.or,.entete .btn.petit:not(.fin){background:var(--or-grad);background-size:220% 100%;background-position:0 0;border-color:transparent;color:var(--noir)}
.btn.or:hover,.entete .btn.petit:not(.fin):hover{background:var(--or-grad);background-size:220% 100%;background-position:100% 0;border-color:transparent;transform:translateY(-2px);box-shadow:0 14px 28px -16px rgba(154,134,87,.9)}
.btn.fil{background:transparent;color:var(--ivoire);border:1px solid rgba(254,254,249,.8)}
.btn.fil:hover{background:var(--ivoire);color:var(--noir)}
.bd-ivoire .btn.ligne-fonce,.bd-sable .btn.ligne-fonce,.mot5 .btn.ligne-fonce{background:transparent;color:var(--noir);border:1px solid var(--noir)}
.bd-ivoire .btn.ligne-fonce:hover,.bd-sable .btn.ligne-fonce:hover,.mot5 .btn.ligne-fonce:hover{background:var(--noir);color:var(--ivoire)}
.btn:focus-visible,.filtres button:focus-visible{outline:2px solid var(--or-texte);outline-offset:3px}

/* ---------- en-tête : transparent sur l'ouverture, ivoire dès qu'on défile ---------- */
.entete.fond{background:rgba(254,254,249,.95);-webkit-backdrop-filter:blur(14px) saturate(1.1);backdrop-filter:blur(14px) saturate(1.1);box-shadow:0 1px 0 rgba(18,18,16,.1)}
.entete.fond .logo img{filter:brightness(0)}
.entete.fond nav a,.entete.fond .tel,.entete.fond summary{color:var(--noir)}
.entete.fond summary,.entete.fond .wa-entete,.entete.fond .btn.petit.fin{border-color:rgba(18,18,16,.45);color:var(--noir);background:transparent}
.entete details nav{background:var(--ivoire);box-shadow:0 24px 44px -22px rgba(18,18,16,.5);border:1px solid var(--filet)}
.entete details nav a{color:var(--noir)}
@media(min-width:1280px){.entete nav.bureau a{font-size:.7rem;font-weight:700;letter-spacing:0;text-transform:none}}

/* ---------- 1. ouverture : le seul grand moment sombre, titre en deux voix ---------- */
.h5{background:var(--noir)}
.h5:before{background:linear-gradient(180deg,rgba(18,18,16,.5) 0%,rgba(18,18,16,0) 26%,rgba(18,18,16,0) 46%,rgba(18,18,16,.8) 100%)}
.h5 h1{font:400 clamp(3.1rem,9.4vw,8.8rem)/.95 var(--display);letter-spacing:0;color:var(--ivoire);text-shadow:0 2px 40px rgba(18,18,16,.4)}
.h5 h1 em.it{display:inline-block;font-size:1.14em;margin-top:.04em}
.h5 .kicker{font-size:.72rem;text-shadow:0 1px 14px rgba(18,18,16,.8)}
.h5 .sous{font:500 clamp(1.3rem,2vw,1.8rem)/1.35 var(--accent);color:var(--ivoire);text-shadow:0 1px 18px rgba(18,18,16,.7);max-width:30rem}
/* cadre fin or, ordinateur seulement */
@media(min-width:900px){.h5:after{content:"";position:absolute;inset:18px;border:1px solid rgba(216,199,154,.5);z-index:1;pointer-events:none}}

/* ---------- 2. produits : cartes claires, légende sous la photo ---------- */
.tu{background:var(--ivoire);padding:clamp(1rem,2.4vw,2.4rem) clamp(1rem,2.4vw,2.4rem) clamp(3rem,6vw,6rem)}
.tu ul{max-width:1440px;gap:clamp(.7rem,1.5vw,1.5rem);counter-reset:t}
.tu li{counter-increment:t}
.tu a{aspect-ratio:auto;background:var(--blanc);color:var(--noir);border:1px solid rgba(18,18,16,.08);transition:box-shadow .6s var(--ease),transform .6s var(--ease)}
.tu a:before{display:none}
.tu img{position:relative;inset:auto;display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.tu-nom{position:relative;z-index:2;left:auto;right:auto;bottom:auto;transform:none;background:var(--blanc);padding:1rem 1rem 1.3rem;gap:.35rem}
.tu-nom:before{content:"0" counter(t);font:500 1.7rem/1 var(--accent);color:var(--or-texte)}
.tu-nom b{font:500 clamp(.92rem,1.2vw,1.1rem)/1.25 var(--display);letter-spacing:0;text-transform:none;color:var(--noir)}
.tu-nom i{opacity:1;color:var(--or-texte);font-size:.66rem;letter-spacing:0}
.tu-nom i:before{width:1.4rem;background:var(--or-profond)}
.tu a:hover,.tu a:focus-visible{box-shadow:0 30px 50px -34px rgba(18,18,16,.55);transform:translateY(-4px)}
.tu a:hover .tu-nom,.tu a:focus-visible .tu-nom{transform:none}
.tu a:hover .tu-nom i:before,.tu a:focus-visible .tu-nom i:before{width:3rem}
.tu .tu-mention{top:.6rem;right:.6rem;background:rgba(18,18,16,.72)}
@media(min-width:900px){.tu a{aspect-ratio:auto}}

/* ---------- colonnes, cartes, numéros ---------- */
.an5-cols>div,.eng5>div,.rep5>div{border-top:1px solid var(--filet);padding-top:1.2rem}
.an5-cols h3,.eng5 h3,.fab5 h3,.rep5 h3{color:var(--noir);font-size:.95rem;margin-bottom:.8rem}
.an5-cols cite,.rep5 cite{color:var(--gris)}
.fab5{border-top-color:var(--filet)}
.legal5{color:var(--gris)}
.eng5 .sig{color:var(--or-texte)}

.mot5{background:var(--blanc);border:1px solid rgba(18,18,16,.08);transition:box-shadow .6s var(--ease),transform .6s var(--ease)}
.mot5:hover{box-shadow:0 34px 50px -36px rgba(18,18,16,.5);transform:translateY(-4px)}
.mot5 .num{font:500 3rem/1 var(--accent);color:var(--or-texte)}
.mot5 h3{color:var(--noir)}
.mot5 p{color:var(--encre)}
.mot5 .src{color:var(--gris)}
.mot5 .corps{padding:1.6rem 1.6rem 1.8rem}

/* ---------- 3. chiffres : l'autre moment noir, chiffres en or dégradé ---------- */
.ch5 div{border-top:1px solid var(--filet-or)}
.ch5 b{font:400 clamp(3.6rem,9vw,7.4rem)/1 var(--display);background:var(--or-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--or-clair);padding-bottom:.06em}
.ch5 b small{font:500 .4em/1 var(--accent);letter-spacing:0;margin-left:.2em}
.ch5 span{color:var(--ivoire);font-weight:500}
.ch5 em,.bd-noir .sources{color:var(--sourdine)}
.bd-noir .sources{margin:2rem 0 0;font-size:.8rem;text-align:center}
.bd-noir .uw-ligne{text-align:center;margin:2.2rem auto 0;max-width:42rem;color:var(--ivoire-doux);font:500 1.35rem/1.4 var(--accent)}

/* ---------- 4. citation : photo claire, texte sur carte ivoire ---------- */
.cit:after{background:linear-gradient(180deg,rgba(18,18,16,0) 50%,rgba(18,18,16,.3))}
.cit blockquote{background:var(--ivoire);padding:clamp(1.8rem,4vw,3.6rem);max-width:40rem;color:var(--noir);box-shadow:0 40px 70px -40px rgba(18,18,16,.6)}
.cit blockquote:before{width:3.6rem;height:2px;background:var(--or-grad)}
.cit blockquote p{font:500 clamp(1.6rem,3.1vw,2.6rem)/1.2 var(--accent);color:var(--noir);letter-spacing:0}
.cit blockquote p:before{content:"\00ab\00a0"}
.cit blockquote p:after{content:"\00a0\00bb"}
.cit footer{color:var(--or-texte);font-size:.72rem;letter-spacing:0;border:0}

/* ---------- 5. réalisations : mosaïque sur fond ivoire ---------- */
.filtres button{color:var(--noir);border:1px solid rgba(18,18,16,.3);font-size:.72rem;letter-spacing:0;text-transform:none;padding:.7rem 1.1rem}
.filtres button:hover{background:var(--sable)}
.filtres button[aria-pressed="true"]{background:var(--noir);color:var(--ivoire);border-color:var(--noir)}
.re-note{color:var(--gris)}
.mosaique{gap:10px}
.mo figcaption{font-size:.66rem;letter-spacing:0}

/* ---------- 6. showroom et équipe ---------- */
.sh5 p{color:var(--encre)}
.js .rid{clip-path:inset(0 100% 0 0);opacity:1;transition:clip-path 1.5s var(--ease)}
.js .rid.vu{clip-path:inset(0 0 0 0)}
@media(prefers-reduced-motion:reduce){.js .rid{clip-path:none;transition:none}}
.pers5{background:var(--blanc);border:1px solid rgba(18,18,16,.08)}
.pers5 .ini{background:linear-gradient(160deg,#F4EFE3,#E8DFCB);border-bottom:1px solid var(--or)}
.pers5 .ini span{color:var(--or-texte);font-weight:400}
.pers5 .ini small{color:var(--gris)}
.pers5 h3{color:var(--noir)}
.pers5 .role{color:var(--or-texte)}
.pers5 blockquote{color:var(--encre);border-left:1px solid var(--or);font:500 1.3rem/1.4 var(--accent)}
.pers5 blockquote footer{color:var(--gris);font:600 .72rem var(--sans);letter-spacing:0;text-transform:none}
.pers5 .avenir{color:var(--gris)}

/* ---------- 7. contact : noir, cartes sobres, champs or ---------- */
.ct{background:var(--noir);border-top:1px solid var(--or)}
.ct-form{background:var(--ebene);border:1px solid var(--filet-or)}
.ct legend{font-family:var(--display);font-weight:400}
.etapes li{color:var(--sourdine);border-top-color:rgba(254,254,249,.22)}
.etapes li.on{color:var(--or-clair);border-top-color:var(--or)}
.ct input[type=text],.ct input[type=tel],.ct textarea{border:1px solid var(--or);background:var(--ivoire)}
.ct .facultatif,.mode small,.pers5 .ini small.sombre{color:var(--sourdine)}
.tuile{background:var(--ebene)}
.mode{border-color:rgba(254,254,249,.3)}
.carte-c{border-color:var(--filet-or)}
.carte-c .role{color:var(--or-clair)}
.rdv5 small,.note-v,.baies5 .mot5 .nb span{color:var(--sourdine)}
.mot5 .nb span{color:var(--gris)}
footer{background:var(--noir);border-top:1px solid var(--filet-or)}

/* ---------- curseur or (ordinateur, souris seulement) : la vraie flèche reste affichée ---------- */
.curseur{display:none}
@media(hover:hover) and (pointer:fine){
 .curseur{display:block;position:fixed;left:0;top:0;width:34px;height:34px;margin:-17px 0 0 -17px;border:1px solid var(--or-profond);border-radius:50%;pointer-events:none;z-index:300;opacity:0;transition:opacity .3s,width .35s var(--ease),height .35s var(--ease),margin .35s var(--ease),background .35s,border-color .35s;mix-blend-mode:normal}
 .curseur.on{opacity:.9}
 .curseur.gros{width:70px;height:70px;margin:-35px 0 0 -35px;background:rgba(182,164,124,.18);border-color:var(--or)}
}
@media(prefers-reduced-motion:reduce){.curseur{display:none!important}}

/* ---------- téléphone : respirations réduites, rien ne déborde ---------- */
@media(max-width:759px){
 .bd{padding:3.6rem 0}
 .h5 h1{font-size:clamp(2.9rem,13.4vw,4rem)}
 .tu{padding:.8rem .8rem 2.4rem}
 .tu-nom{padding:.8rem .7rem 1rem}
 .cit blockquote{padding:1.6rem 1.4rem}
 .ch5 b{font-size:3.4rem}
}

/* ouverture : sur photo claire, l'or doit rester lisible (dégradé plus clair, ombre portée, sur-titre ivoire) */
.h5 h1 em.it{background:linear-gradient(100deg,#E3D3A6 0%,#F6EBC9 50%,#DCCB9D 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 16px rgba(18,18,16,.55))}
.h5 .kicker{color:var(--ivoire);font-weight:700}
.bd .kicker{margin-bottom:1.4rem}
/* téléphone : l'italique fin doit rester lisible sur la photo */
.h5 .sous{font-weight:600}
@media(max-width:759px){.h5:before{background:linear-gradient(180deg,rgba(18,18,16,.5) 0%,rgba(18,18,16,.05) 22%,rgba(18,18,16,.3) 44%,rgba(18,18,16,.86) 100%)}.h5 h1 em.it{font-weight:600}}

/* =====================================================================
   v6 : application aux autres pages et corrections
   ===================================================================== */
/* ouverture des pages intérieures : même écriture que l'accueil */
.hp{background:var(--noir)}
.hp:before{background:linear-gradient(180deg,rgba(18,18,16,.5) 0%,rgba(18,18,16,0) 26%,rgba(18,18,16,0) 46%,rgba(18,18,16,.82) 100%)}
.hp h1{font:400 clamp(2.5rem,7.2vw,6.2rem)/.97 var(--display);letter-spacing:0;color:var(--ivoire);max-width:15ch;text-shadow:0 2px 40px rgba(18,18,16,.4)}
.hp h1 em.it{display:inline-block;font-size:1.14em;margin-top:.04em;background:linear-gradient(100deg,#E3D3A6 0%,#F6EBC9 50%,#DCCB9D 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 16px rgba(18,18,16,.55))}
.hp .kicker{color:var(--ivoire);font-weight:700;font-size:.72rem;letter-spacing:0}
.hp .sous{font:600 clamp(1.3rem,2vw,1.8rem)/1.35 var(--accent);color:var(--ivoire);text-shadow:0 1px 18px rgba(18,18,16,.7);max-width:32rem}
@media(min-width:900px){.hp:after{content:"";position:absolute;inset:18px;border:1px solid rgba(216,199,154,.5);z-index:1;pointer-events:none}}
@media(max-width:759px){.hp h1{font-size:clamp(2.3rem,10.6vw,3.4rem)}.hp h1 em.it{font-weight:600}.hp:before{background:linear-gradient(180deg,rgba(18,18,16,.5) 0%,rgba(18,18,16,.05) 22%,rgba(18,18,16,.3) 44%,rgba(18,18,16,.86) 100%)}}
.hp-mention,.hp-pause{border-radius:0}

/* composants conçus pour le fond sombre en v5, passés en clair */
.md5{background:var(--blanc);border:1px solid rgba(18,18,16,.08);transition:box-shadow .6s var(--ease),transform .6s var(--ease)}
.md5:hover{box-shadow:0 34px 50px -36px rgba(18,18,16,.5);transform:translateY(-4px)}
.md5 h3{color:var(--noir);font-size:1.4rem;letter-spacing:0}
.md5 .mk,.baies5 .mk{color:var(--or-texte)}
.md5 .spec{color:var(--encre)}
.md5 .btn.ligne-fonce{background:transparent;color:var(--noir);border:1px solid var(--noir)}
.md5 .btn.ligne-fonce:hover{background:var(--noir);color:var(--ivoire)}
.rdv5 button{color:var(--noir);background:var(--blanc);border:1px solid rgba(18,18,16,.2);border-radius:0}
.rdv5 button:hover{background:var(--ivoire);border-color:var(--or-profond)}
.rdv5 b{font-family:var(--display);font-weight:500;letter-spacing:0}
.rdv5 small{color:var(--gris)}
.rdv5 button:after{color:var(--or-texte)}
.st5 li{border-top:1px solid var(--filet)}
.st5 li:before{font-family:var(--accent);font-style:normal;font-weight:500;color:var(--or-texte)}
.st5 h3,.st5 p{color:var(--noir)}.st5 p{color:var(--encre)}
.acces5{background:var(--blanc);border-color:var(--filet)}
.acces5 address{color:var(--noir)}
.acces5 p{color:var(--encre)}
.det5 figure{background:var(--blanc);border-color:rgba(18,18,16,.08)}
.det5 figcaption{color:var(--encre)}
.det5 figcaption b{color:var(--noir);font-weight:500;letter-spacing:0}
.det5 figcaption small{color:var(--gris)}
.bd-ivoire .note-v,.bd-sable .note-v{color:var(--gris)}
.faits li:before{background:var(--or-grad)}
.bd-ivoire .mot5 .nb b,.bd-sable .mot5 .nb b{color:var(--or-texte)}
.mot5 .px .credit{display:none}

/* Thibault : portrait avec de l'air au-dessus de la tête (le fond du mur prolonge la photo) */
.pers5 figure.pt-f{background:linear-gradient(90deg,#DCE4E4 0%,#F1F3F0 45%,#FEF3DD 100%)}
.pers5 .pt{position:absolute;left:0;top:auto;bottom:0;width:100%;height:88%;object-fit:cover;object-position:50% 14%;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 16%);mask-image:linear-gradient(180deg,transparent 0,#000 16%)}
@media(max-width:759px){.pers5 figure.pt-f{aspect-ratio:1/1}}

/* téléphone : rien ne dépasse de 393 px */
html,body{max-width:100%;overflow-x:hidden}
.bd .chapo,.hp .sous,.h5 .sous,.cit blockquote p,.pers5 blockquote,.bd h2,.hp h1,.h5 h1,.ct h2{overflow-wrap:break-word;hyphens:manual}
.bd .chapo{max-width:100%}
.barre a{min-width:0;padding-left:.2rem;padding-right:.2rem;font-size:.82rem;letter-spacing:0;white-space:nowrap}
@media(max-width:420px){.barre a{font-size:.74rem;letter-spacing:0}}
@media(max-width:759px){.bd .chapo{font-size:clamp(1.2rem,5.2vw,1.45rem)}.bd h2{font-size:clamp(1.9rem,8vw,2.4rem)}}
/* coupe du profilé : dessin repris pour le fond clair */
.bd-ivoire .coupe-svg text,.bd-sable .coupe-svg text{fill:var(--encre)}
.bd-ivoire .coupe-svg .dim,.bd-sable .coupe-svg .dim{fill:var(--or-texte)}
.bd-ivoire .coupe-svg .pin text,.bd-sable .coupe-svg .pin text{fill:var(--noir)}
.bd-ivoire .coupe-svg .bloc,.bd-sable .coupe-svg .bloc{fill:var(--blanc);stroke:var(--or-profond)}
.bd-ivoire .coupe-svg .vitre,.bd-sable .coupe-svg .vitre{fill:rgba(154,134,87,.25);stroke:var(--or-profond)}
.bd-ivoire .coupe-svg .lien,.bd-sable .coupe-svg .lien{stroke:var(--or-profond)}
.bd-ivoire .legende b,.bd-sable .legende b{color:var(--noir);font-weight:500;letter-spacing:0}
.bd-ivoire .legende span,.bd-sable .legende span{color:var(--encre)}
.tu li{display:flex}.tu a{width:100%;display:flex;flex-direction:column}.tu-nom{flex:1}
.pers5 .pres{color:var(--encre)}
.bd-ivoire .btn.fil,.bd-sable .btn.fil{color:var(--noir);border:1px solid rgba(18,18,16,.6)}
.bd-ivoire .btn.fil:hover,.bd-sable .btn.fil:hover{background:var(--noir);color:var(--ivoire)}
.baies5 .mot5 .nb span{color:var(--gris)}
.bd-ivoire .note-fine,.bd-sable .note-fine{color:var(--gris)}

/* =====================================================================
   v6, correctifs de contrôle qualité : bande vide, WhatsApp, longueur sur téléphone
   ===================================================================== */
/* ouverture pleine hauteur : plus de bande ivoire (bloc encore invisible) sous le premier écran */
.hp,.hp.court{min-height:100vh;min-height:100svh}

/* blocs repliables (fermés sous 760 px par le script « repli mobile », toujours ouverts sinon) */
details.pli{margin-top:1.6rem}
details.pli>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.05rem 0;border-top:1px solid var(--or-profond);border-bottom:1px solid var(--filet);font:600 .72rem/1.3 var(--sans);letter-spacing:0;text-transform:none;color:var(--noir)}
details.pli>summary::-webkit-details-marker{display:none}
details.pli>summary:after{content:"+";font:500 1.9rem/1 var(--accent);letter-spacing:0;color:var(--or-texte)}
details.pli[open]>summary:after{content:"\2013"}
details.pli>summary:focus-visible{outline:2px solid var(--or-texte);outline-offset:3px}
details.pli[open]>*:not(summary){margin-top:1.2rem}
@media(min-width:760px){details.pli{margin-top:0}details.pli>summary{display:none}details.pli[open]>*:not(summary){margin-top:0}}

@media(max-width:759px){
 /* un seul WhatsApp : le bouton flottant ; celui de l'ouverture est masqué */
 .hp-act a[href*="wa.me"]{display:none}
 /* mosaïques : 6 photos, sans filtre */
 .mosaique .mo:nth-child(n+7){display:none}
 .filtres{display:none}
 .re-t{margin-bottom:1rem}
 /* cartes en carrousel horizontal (scroll-snap, sans librairie) */
 .md5-g,.mots5,.vis4,.det5,.baies5{display:flex;gap:.9rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;margin:1.4rem -1.4rem 0;padding:.3rem 1.4rem 1.1rem;scrollbar-width:none;overscroll-behavior-x:contain}
 .md5-g::-webkit-scrollbar,.mots5::-webkit-scrollbar,.vis4::-webkit-scrollbar,.det5::-webkit-scrollbar,.baies5::-webkit-scrollbar{display:none}
 .md5-g>*,.mots5>*,.vis4>*,.det5>*,.baies5>*{flex:0 0 80%;max-width:20rem;scroll-snap-align:start;scroll-margin-left:1.4rem}
 .md5 .vis{aspect-ratio:3/2}
 .mot5 .px{aspect-ratio:3/2}
 /* marges verticales réduites */
 .bd{padding:2.5rem 0}
 .ct{padding:2.5rem 0 2rem}
 .bd .cta{margin-top:1.4rem}
 .bd .filet{margin-bottom:.9rem}
 .bd .kicker{margin-bottom:.8rem}
 .bd .chapo{margin-top:.9rem}
 .an5-cols,.rep5,.st5,.eng5,.rdv5,.fab5{margin-top:1.3rem;gap:1.1rem}
 .an5-cols>div,.eng5>div,.rep5>div{padding-top:.9rem}
 .st5 li:before{font-size:2.4rem;margin-bottom:.3rem}
 .cit{min-height:52svh}
 .cit .wrap{padding-top:3rem;padding-bottom:3rem}
 .tu{padding:.6rem .6rem 1.6rem}
 .h5 .sous,.hp .sous{margin:1rem 0 1.3rem}
 .rdv5 button{padding:.9rem 1rem}
 .rdv5 button:after{margin-top:.5rem}
 .acces5{margin-top:1.4rem;padding:1.1rem}
 footer.pied{padding:2.2rem 0 5.5rem}
 footer.pied .liens{display:grid;grid-template-columns:1fr 1fr;gap:.35rem 1rem}
 footer.pied .liens .pied-t{grid-column:1/-1}
 footer.pied .grille{gap:1.4rem}
}
@media(max-width:759px){
 .duo5,.compare,.st5,.rdv5{display:flex;gap:.9rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;margin:1.3rem -1.4rem 0;padding:.3rem 1.4rem 1rem;scrollbar-width:none;overscroll-behavior-x:contain;counter-reset:st}
 .duo5::-webkit-scrollbar,.compare::-webkit-scrollbar,.st5::-webkit-scrollbar,.rdv5::-webkit-scrollbar{display:none}
 .duo5>*,.compare>*,.st5>*,.rdv5>*{flex:0 0 82%;max-width:22rem;scroll-snap-align:start;scroll-margin-left:1.4rem}
 .st5>li{flex-basis:76%}
 .rdv5>button{flex-basis:68%;width:auto}
 .tuiles{gap:.45rem}
 .tuile{aspect-ratio:16/10}
 .tuile.txt{aspect-ratio:auto;min-height:3.2rem;grid-column:1/-1}
 .ct-form{padding:1.2rem 1rem}
 .ct legend{margin-bottom:.8rem}
 footer.pied .liens{display:none}
 .carte-c{padding:1rem}
}
@media(max-width:759px){
 .bd{padding:2.2rem 0}
 .baies5 .mot5 .px,.md5 .vis{aspect-ratio:16/10}
 .ct details.pli>summary{color:var(--ivoire);border-top-color:var(--or);border-bottom-color:var(--filet-or)}
 .ct details.pli>summary:after{color:var(--or-clair)}
 .ct details.pli[open]>.ct-cote{margin-top:1rem}
 .ct-grille{gap:1.2rem}
 .bd .chapo{font-size:clamp(1.15rem,4.8vw,1.35rem)}
}
.ct-err{border-color:#b3413a}.ct-err b{color:#b3413a}

/* ===== v6b (12/11) : menu déroulant, pages modèles, produits Dako, zones, FAQ ===== */
.entete nav.bureau .dd{position:relative;display:inline-flex}
.entete nav.bureau .dd-l{display:none;position:absolute;left:-1.1rem;top:100%;padding-top:.9rem;min-width:13.5rem;z-index:60}
.entete nav.bureau .dd:hover .dd-l,.entete nav.bureau .dd:focus-within .dd-l{display:block}
.entete nav.bureau .dd-in{display:flex;flex-direction:column;background:var(--ivoire);border:1px solid var(--filet);box-shadow:0 24px 44px -22px rgba(18,18,16,.5);padding:.6rem 1.2rem}
.entete nav.bureau .dd-in a{color:var(--noir);font-size:.8rem;font-weight:600;letter-spacing:0;text-transform:none;padding:.55rem 0;border-bottom:1px solid var(--filet)}
.entete nav.bureau .dd-in a:last-child{border-bottom:0}
.entete nav.bureau .dd-in a:hover,.entete nav.bureau .dd-in a[aria-current]{color:var(--or-texte);border-color:var(--filet)}
.entete details nav a.sub{padding-left:1rem;font-size:.82rem;opacity:.85}
.fiche-g{display:grid;gap:2rem;margin-top:2rem}
@media(min-width:900px){.fiche-g{grid-template-columns:1.15fr .85fr;gap:3.4rem;align-items:start}}
.fiche-g .faits{margin-top:0}
dl.car{margin:0;border-bottom:1px solid var(--filet)}
dl.car>div{display:flex;justify-content:space-between;gap:1.2rem;border-top:1px solid var(--filet);padding:.75rem 0}
dl.car dt{color:var(--gris);font-size:.78rem;letter-spacing:0;text-transform:none;font-weight:700;flex:none}
dl.car dd{margin:0;color:var(--noir);text-align:right;font-weight:600}
.fiche-photos{display:grid;gap:1rem;margin-top:2rem}
@media(min-width:760px){.fiche-photos{grid-template-columns:1fr 1fr}}
.fiche-photos figure{margin:0}
.fiche-photos img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.fiche-photos figcaption{font-size:.8rem;color:var(--gris);margin-top:.5rem}
.liens-cartes{display:grid;grid-template-columns:repeat(auto-fit,minmax(13.5rem,1fr));gap:1rem;margin-top:2rem}
.lc{display:block;background:var(--blanc);border:1px solid rgba(18,18,16,.1);padding:1.3rem 1.3rem 1.4rem;text-decoration:none;color:var(--noir);transition:box-shadow .5s var(--ease),transform .5s var(--ease)}
.lc:hover{box-shadow:0 26px 40px -30px rgba(18,18,16,.5);transform:translateY(-3px)}
.lc b{display:block;font:500 1.15rem/1.25 var(--display);letter-spacing:0;margin-bottom:.35rem}
.lc span{display:block;color:var(--gris);font-size:.88rem}
.pc-g{display:grid;gap:1.2rem;margin-top:2rem}
@media(min-width:900px){.pc-g{grid-template-columns:repeat(3,1fr)}}
.pc{background:var(--blanc);border:1px solid rgba(18,18,16,.1);padding:1.6rem 1.5rem;display:flex;flex-direction:column;gap:.75rem}
.pc .mk{margin:0;color:var(--or-texte);font:600 .7rem var(--sans);letter-spacing:0;text-transform:none}
.pc h3{margin:0;color:var(--noir);font-size:1.3rem;letter-spacing:0}
.pc .nb{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}
.pc .nb b{display:block;font:500 1.5rem/1.1 var(--display);color:var(--or-profond);font-variant-numeric:lining-nums}
.pc .nb span{display:block;font-size:.72rem;color:var(--gris);max-width:11rem}
.pc p{margin:0;font-size:.97rem}
.pc .src{margin-top:auto;font-size:.78rem;color:var(--gris)}
.aconf{margin-top:1.6rem;border:1px dashed var(--or-profond);background:rgba(182,164,124,.14);padding:1.1rem 1.3rem;max-width:46rem;display:flex;flex-direction:column;gap:.3rem;color:var(--encre)}
.aconf b{font:600 .7rem var(--sans);letter-spacing:0;text-transform:none;color:var(--or-texte)}
.faq{margin-top:2rem;max-width:50rem;border-bottom:1px solid var(--filet)}
.faq details{border-top:1px solid var(--filet)}
.faq summary{cursor:pointer;list-style:none;position:relative;padding:1.15rem 2.4rem 1.15rem 0;font-weight:700;color:var(--noir)}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:.1rem;top:.55rem;font:500 1.9rem/1 var(--accent);color:var(--or-texte)}
.faq details[open] summary:after{content:"\2013"}
.faq summary:focus-visible{outline:2px solid var(--or-texte);outline-offset:3px}
.faq .rep{padding:0 0 1.3rem}
.faq .rep p{margin:0 0 .7rem}
footer.pied .zones{margin-top:2rem;padding-top:1.2rem;border-top:1px solid rgba(254,254,249,.18)}
footer.pied .zones .pied-t{margin-bottom:.5rem}
footer.pied .zones ul{list-style:none;margin:0 0 1.1rem;padding:0;display:flex;flex-wrap:wrap;gap:.35rem 1.5rem}
footer.pied .zones a{color:var(--ivoire);text-decoration:none;border-bottom:1px solid rgba(182,164,124,.5)}
footer.pied .zones a:hover{color:var(--or-clair)}
@media(max-width:759px){
 .pc-g{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;margin:1.3rem -1.4rem 0;padding:.3rem 1.4rem 1rem;gap:.9rem;scrollbar-width:none}
 .pc-g::-webkit-scrollbar{display:none}
 .pc-g>*{flex:0 0 84%;max-width:21rem;scroll-snap-align:start;scroll-margin-left:1.4rem}
 dl.car>div{flex-direction:column;gap:.15rem}dl.car dd{text-align:left}
 .liens-cartes{grid-template-columns:1fr 1fr;gap:.7rem}.lc{padding:1rem}.lc b{font-size:1rem}
}
/* argumentaire (Hadassa, intégré 12/11) */
.sans-eng{margin:.9rem 0 0;font-size:.82rem;color:var(--ivoire-doux);letter-spacing:0}
.hp .sans-eng,.h5 .sans-eng{color:#EFEDE4;text-shadow:0 1px 10px rgba(0,0,0,.6)}
ol.pq{list-style:none;margin:2rem 0 0;padding:0;display:grid;gap:1.1rem;max-width:52rem;counter-reset:pq}
ol.pq li{position:relative;padding:0 0 0 3rem;counter-increment:pq}
ol.pq li:before{content:counter(pq);position:absolute;left:0;top:-.15rem;font:500 1.9rem/1 var(--accent);color:var(--or-texte)}
ol.pq b{color:var(--noir)}
.tu-nom .ph{display:block;font:400 .74rem/1.3 var(--sans);font-style:normal;letter-spacing:0;margin:.15rem 0 .25rem;opacity:.92}

/* =====================================================================
   v7 (12/11) : façon Dako, clair et net. Même charte (noir, or, ivoire), mêmes polices.
   ===================================================================== */
:root{--sable:#F8F6EF;--hh:clamp(250px,50vh,540px)}
.bd{padding:clamp(2.8rem,5.6vw,5rem) 0}
.bd-sable{background:#F8F6EF}
.bd h2{font-size:clamp(1.7rem,3.2vw,2.8rem);max-width:26ch;line-height:1.1}
.bd .chapo{max-width:44rem}
.bd .cta{margin-top:1.8rem}
/* ouvertures des pages intérieures : bandeau photo sans voile, titre sur fond clair */
.hp,.hp.court{min-height:0;display:block;background:var(--ivoire);color:var(--encre);overflow:visible}
.hp:before{inset:0 0 auto 0;bottom:auto;height:120px;background:linear-gradient(180deg,rgba(18,18,16,.45),rgba(18,18,16,0))}
.hp:after{display:none!important}
.hp-media{position:relative;inset:auto;height:var(--hh);overflow:hidden}
.hp-media img{animation:none}
.hp-in{padding:2.2rem 1.4rem 2.8rem}
.hp h1{font-size:clamp(1.9rem,4vw,3.3rem);line-height:1.05;max-width:24ch;color:var(--noir);text-shadow:none}
.hp h1 em.it{display:inline;font-size:1.12em;margin:0;background:none;-webkit-background-clip:border-box;background-clip:border-box;-webkit-text-fill-color:currentColor;color:var(--or-texte);filter:none}
.hp .kicker{color:var(--or-texte);text-shadow:none;font-size:.7rem}
.hp .sous{color:var(--gris);text-shadow:none;font-size:clamp(1.15rem,1.6vw,1.4rem);max-width:40rem;margin:.9rem 0 1.4rem}
.hp .btn.fil{color:var(--noir);border-color:rgba(18,18,16,.45);background:transparent}
.hp .btn.fil:hover{background:var(--noir);color:var(--ivoire)}
.hp .sans-eng{color:var(--gris);text-shadow:none}
.hp-mention,.hp-pause{top:calc(var(--hh) - 2.3rem)!important;bottom:auto!important}
@media(max-width:759px){.hp{min-height:0}.hp h1{font-size:clamp(1.8rem,8vw,2.4rem)}.hp-in{padding:1.7rem 1.4rem 2.2rem}.hp:before{background:linear-gradient(180deg,rgba(18,18,16,.45),rgba(18,18,16,0))}:root{--hh:clamp(210px,34vh,320px)}}
/* ouverture de l'accueil : vidéo conservée, voile léger, titre court sur une ligne */
.h5{min-height:78vh;min-height:78svh}
.h5:before{background:linear-gradient(90deg,rgba(18,18,16,.5) 0%,rgba(18,18,16,.12) 55%,rgba(18,18,16,0) 100%),linear-gradient(180deg,rgba(18,18,16,.4) 0%,rgba(18,18,16,0) 22%,rgba(18,18,16,0) 70%,rgba(18,18,16,.3) 100%)}
.h5:after{display:none!important}
.h5 h1{font-size:clamp(2.3rem,5.6vw,4.8rem);line-height:1.02}
.h5 h1 br{display:none}
.h5 h1 em.it{font-size:1.1em;margin:0}
.h5 .sous{font-size:clamp(1.15rem,1.7vw,1.5rem);max-width:28rem;margin:.9rem 0 1.4rem}
.h5-in{padding-bottom:3.6rem}
@media(max-width:759px){.h5{min-height:84svh}.h5 h1{font-size:clamp(2.1rem,10vw,3rem)}}
/* grille de produits (accueil) */
.pg-l{list-style:none;margin:2rem 0 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}
@media(min-width:760px){.pg-l{grid-template-columns:repeat(3,1fr);gap:1.3rem}}
@media(min-width:1100px){.pg-l{grid-template-columns:repeat(4,1fr)}}
.pg-c{display:block;height:100%;text-decoration:none;color:var(--encre);background:#fff;border:1px solid rgba(18,18,16,.1);transition:box-shadow .4s var(--ease),border-color .4s var(--ease),transform .4s var(--ease)}
.pg-c:hover,.pg-c:focus-visible{border-color:var(--or);box-shadow:0 18px 34px -24px rgba(18,18,16,.5);transform:translateY(-2px)}
.pg-i{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#f1efe8}
.pg-i img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pg-t{position:absolute;left:.5rem;bottom:.5rem;font:600 .56rem/1 var(--sans);letter-spacing:0;text-transform:none;font-style:normal;background:rgba(255,255,255,.94);color:var(--gris);padding:.3rem .45rem}
.pg-n{display:block;padding:.9rem 1rem 1.1rem}
.pg-n b{display:block;font:500 1rem/1.2 var(--display);letter-spacing:0;text-transform:none;color:var(--noir)}
.pg-n em{display:block;font:500 1.08rem/1.3 var(--accent);color:var(--gris);margin:.3rem 0 .6rem}
.pg-n u{text-decoration:none;font:600 .64rem/1 var(--sans);letter-spacing:0;text-transform:none;color:var(--or-texte);border-bottom:1px solid var(--or);padding-bottom:.2rem}
@media(max-width:759px){.pg-n{padding:.7rem .75rem .9rem}.pg-n b{font-size:.86rem}.pg-n em{font-size:.98rem}}
/* galerie de modèles du fabricant (portes, volets) */
.gal{list-style:none;margin:2rem 0 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}
@media(min-width:900px){.gal{grid-template-columns:repeat(3,1fr);gap:1.3rem}}
.gal figure{margin:0;background:#fff;border:1px solid rgba(18,18,16,.1);height:100%}
.gal .gi{display:block;aspect-ratio:4/3;overflow:hidden;background:#fff}
.gal .gi img{width:100%;height:100%;object-fit:contain;display:block}
.gal .gi.c img{object-fit:cover}
.gal figcaption{display:flex;flex-direction:column;gap:.2rem;padding:.8rem .9rem 1rem;border-top:1px solid rgba(18,18,16,.08)}
.gal figcaption b{font:600 .92rem/1.3 var(--sans);color:var(--noir)}
.gal figcaption span{font:600 .6rem/1 var(--sans);letter-spacing:0;text-transform:none;color:var(--or-texte)}
.gal-s .note-v{margin-top:1.2rem}
/* finance et bande de fin : courts */
#financement.bd{padding:2.2rem 0}
#financement .chapo{font-size:1.05rem}
:root{--hh:clamp(280px,56vh,600px)}
.hp-mention{left:auto!important;right:1.4rem!important}
@media(max-width:759px){:root{--hh:clamp(220px,36vh,330px)}}
@media(max-width:759px){.h5:before{background:linear-gradient(180deg,rgba(18,18,16,.38) 0%,rgba(18,18,16,.28) 35%,rgba(18,18,16,.66) 100%)}.h5 .sous,.h5 .sans-eng{text-shadow:0 1px 14px rgba(18,18,16,.85)}}

/* ===== v9 (12/11) : galeries d'illustrations, avant/après, carte de zone, showroom ===== */
.ig{display:grid;gap:10px;margin-top:2rem}
.ig3{grid-template-columns:repeat(3,1fr)}.ig4{grid-template-columns:repeat(4,1fr)}
.ig-i{margin:0;position:relative}.ig-i picture{display:block;overflow:hidden;background:#e9e6da}
.ig-i img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .9s var(--ease)}
.ig-i:hover img{transform:scale(1.03)}
.ig-i figcaption{font:600 .68rem var(--sans);letter-spacing:0;text-transform:none;padding:.55rem .2rem 0;color:var(--or-texte)}
.ig-leg{font-size:.78rem;line-height:1.5;margin:.9rem 0 0;max-width:46rem;opacity:.8}
@media(max-width:760px){.ig3,.ig4{grid-template-columns:1fr 1fr;gap:8px}.ig3 .ig-i:last-child:nth-child(odd){grid-column:1/-1}.ig-i figcaption{font-size:.6rem;letter-spacing:0}}
@media(max-width:480px){.ig-i img{aspect-ratio:1/1}.ig3 .ig-i:last-child:nth-child(odd) img{aspect-ratio:16/9}}
.ba-g{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;margin-top:2rem}
.ba-g.ba-un{grid-template-columns:minmax(0,820px);justify-content:center}
.ba{margin:0}
.ba-w{position:relative;aspect-ratio:4/3;overflow:hidden;background:#222;user-select:none;-webkit-user-select:none}
.ba-w img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.ba-b{clip-path:inset(0 calc(100% - var(--p,50%)) 0 0)}
.ba-bar{position:absolute;top:0;bottom:0;left:var(--p,50%);width:2px;margin-left:-1px;background:var(--ivoire);box-shadow:0 0 0 1px rgba(33,35,32,.25);pointer-events:none}
.ba-bar:after{content:"\2039  \203A";position:absolute;top:50%;left:50%;width:44px;height:44px;margin:-22px;border-radius:50%;background:rgba(33,35,32,.88);border:1.5px solid var(--or);color:var(--ivoire);font:600 20px/41px var(--sans);text-align:center;white-space:pre;letter-spacing:-.1em}
.ba-r{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y;-webkit-appearance:none;appearance:none}
.ba-w:focus-within{outline:2px solid var(--or);outline-offset:2px}
.ba-t{position:absolute;top:.7rem;font:600 .66rem var(--sans);letter-spacing:0;text-transform:none;color:var(--ivoire);background:rgba(33,35,32,.72);padding:.25rem .5rem;border-radius:2px;pointer-events:none}
.ba-t1{left:.7rem}.ba-t2{right:.7rem}
.ba-m{position:absolute;left:.7rem;bottom:.6rem;font:600 .62rem var(--sans);letter-spacing:0;text-transform:none;color:var(--ivoire);background:rgba(33,35,32,.72);padding:.2rem .45rem;border-radius:2px;pointer-events:none}
.ba figcaption{font-size:.84rem;padding:.6rem 0 0}
@media(max-width:760px){.ba-g{grid-template-columns:1fr}}
.zone9{display:grid;gap:2.2rem;align-items:center}
@media(min-width:900px){.zone9{grid-template-columns:1fr 1fr;gap:4rem}}
.zone9 .chapo{color:#EFEDE4}.zone9-n{font-size:.95rem;color:#D8D5C8;max-width:34rem}
.carte{margin:0}.carte-svg{display:block;width:100%;max-width:560px;height:auto;margin:0 auto;border:1px solid rgba(182,164,124,.4)}
.carte figcaption{font-size:.74rem;color:#D8D5C8;max-width:560px;margin:.6rem auto 0}
footer.pied .zones li.np{color:rgba(254,254,249,.78)}
.sh-adr{font-style:normal;margin:.9rem 0 0;line-height:1.5}
.zone9 h2{color:var(--ivoire)}.zone9 .kicker{color:#D8C79A}
