/* Olfaxa Distribution — V1. Jetons en :root, rien en dur ailleurs. */
@font-face{font-family:"Archivo";src:url("fonts/Archivo-latin-ext.woff2") format("woff2");font-weight:300 900;font-stretch:62% 125%;font-style:normal;font-display:swap;unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Archivo";src:url("fonts/Archivo-latin.woff2") format("woff2");font-weight:300 900;font-stretch:62% 125%;font-style:normal;font-display:swap;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:"Cantique";src:url("fonts/Cantique-Normal.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
:root{
  /* primitives */
  --c-nuit:#0b0b0c; --c-nuit-2:#141416; --c-nuit-3:#1c1c1f;
  --c-ivoire:#f2f1ec; --c-ivoire-2:#e6e4dd;
  --c-argent:#b8bbc1; --c-argent-clair:#d9dbdf; --c-argent-fonce:#5e626a;
  --c-gris-nuit:#a4a7ae; --c-gris-ivoire:#55585e;
  --c-erreur-nuit:#ff9a8f; --c-erreur-ivoire:#a3271b;
  /* sémantique */
  --fond:var(--c-nuit); --texte:var(--c-ivoire); --texte-2:var(--c-gris-nuit); --accent:var(--c-argent);
  --filet:rgba(242,241,236,.16); --filet-porteur:#6f737b;
  /* typo */
  --display:"Cantique", "Didot", serif; --display-etirement:100%; --display-graisse:400; --display-interligne:1.42; --display-chasse:0;
  --texte-f:"Switzer", "Helvetica Neue", Arial, sans-serif;
  --t-xs:.8125rem; --t-s:.9375rem; --t-m:1.0625rem; --t-l:1.375rem; --t-xl:clamp(1.75rem,3vw,2.5rem);
  --t-2xl:clamp(2.75rem,6.4vw,6.25rem); --t-3xl:clamp(3rem,8.2vw,8.4rem);
  /* espace */
  --e-1:.5rem; --e-2:1rem; --e-3:1.5rem; --e-4:2.5rem; --e-5:4rem; --e-6:7rem; --e-7:11rem;
  --gouttiere:clamp(1rem,4vw,3.5rem); --largeur:1440px; --rayon:2px;
  /* motion */
  --courbe:cubic-bezier(.2,.7,.1,1); --duree:.9s;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:auto}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-stopped{overflow:hidden}
body{margin:0;background:var(--fond);color:var(--texte);font-family:var(--texte-f);font-size:var(--t-m);line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::after{content:"";position:fixed;inset:-50%;pointer-events:none;z-index:90;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
p{margin:0 0 1em}
h1,h2,h3{margin:0;font-weight:inherit}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.evitement{position:absolute;left:var(--e-2);top:-4rem;z-index:200;background:var(--c-ivoire);color:var(--c-nuit);padding:.6rem 1rem}
.evitement:focus{top:var(--e-2)}
:focus-visible{outline:2px solid var(--c-argent-clair);outline-offset:3px}
.clair :focus-visible{outline-color:var(--c-nuit)}

/* Display */
.d{font-family:var(--display);font-weight:var(--display-graisse);font-stretch:var(--display-etirement);line-height:var(--display-interligne);letter-spacing:var(--display-chasse);text-transform:uppercase;text-wrap:balance}
.d em{font-style:italic;text-transform:none;font-weight:400}
.d-3xl{font-size:var(--t-3xl)}
.d-2xl{font-size:var(--t-2xl)}
.d-l{font-size:clamp(2.2rem,4.2vw,4.2rem)}
.d-xl{font-size:var(--t-xl);line-height:1.42}
.argent{background:linear-gradient(100deg,#8e9198 0%,#eceef1 38%,#a9acb3 55%,#f4f5f7 70%,#8e9198 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent}
.chapeau{font-size:var(--t-l);line-height:1.45;color:var(--texte);max-width:34ch}
.discret{color:var(--texte-2)}
.legende{font-size:var(--t-xs);color:var(--texte-2);letter-spacing:.02em}
.reserve{display:inline-block;font-size:var(--t-xs);color:var(--texte-2);border:1px dashed var(--filet-porteur);padding:.15rem .5rem;border-radius:var(--rayon)}
.clair .reserve{color:var(--c-gris-ivoire)}

/* Mise en page */
.cadre{max-width:var(--largeur);margin-inline:auto;padding-inline:var(--gouttiere)}
.section{padding-block:var(--e-6)}
.section--serre{padding-block:var(--e-5)}
.clair{--fond:var(--c-ivoire);--texte:var(--c-nuit);--texte-2:var(--c-gris-ivoire);--filet:rgba(11,11,12,.14);--filet-porteur:var(--c-argent-fonce);background:var(--c-ivoire) radial-gradient(120% 80% at 85% 0%,#fbfaf6 0%,transparent 60%);color:var(--texte)}
.releve{background:var(--c-nuit-2) radial-gradient(90% 70% at 15% 0%,#202024 0%,transparent 70%)}
.deux{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--e-4) var(--e-3)}

/* Boutons */
.bouton{position:relative;display:inline-flex;align-items:center;gap:.7rem;min-height:48px;padding:.85rem 1.5rem;font-size:var(--t-s);font-weight:500;letter-spacing:.01em;border-radius:999px;transition:transform .5s var(--courbe),background-color .4s,color .4s;isolation:isolate;overflow:hidden;white-space:nowrap}
.bouton--argent{color:var(--c-nuit);background:linear-gradient(120deg,#c3c6cb,#f1f2f4 45%,#b3b6bc 70%,#e4e6e9)}
.bouton--argent::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.85) 50%,transparent 70%);transform:translateX(-110%);transition:transform .9s var(--courbe)}
.bouton--argent:hover::before{transform:translateX(110%)}
.bouton--ligne{color:var(--texte);box-shadow:inset 0 0 0 1px var(--filet-porteur)}
.bouton--ligne:hover{background:var(--texte);color:var(--fond)}
.bouton:active{transform:scale(.97)}
.fleche{display:inline-block;width:1.1em;height:1px;background:currentColor;position:relative;transition:width .5s var(--courbe)}
.fleche::after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}
a:hover .fleche{width:1.7em}
.lien{display:inline-flex;align-items:center;gap:.7rem;font-weight:500;padding-block:.4rem}

/* En-tête */
.entete{position:fixed;inset:0 0 auto;z-index:88;display:flex;align-items:center;gap:var(--e-4);padding:1.1rem var(--gouttiere);transition:background-color .5s,backdrop-filter .5s,padding .5s}
body.menu-ouvert .entete{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
.entete.est-replie{background:rgba(11,11,12,.72);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);padding-block:.7rem}
.marque{display:flex;flex-direction:column;line-height:1;margin-right:auto}
.marque__nom{font-family:var(--display);font-weight:400;font-size:1.6rem;letter-spacing:.08em;text-transform:uppercase}
.marque__sous{font-size:.62rem;letter-spacing:.42em;text-transform:uppercase;color:var(--c-gris-nuit);margin-top:.35rem}
.entete__nav{display:flex;gap:1.6rem;font-size:var(--t-s)}
.entete__nav a{position:relative;color:var(--c-ivoire);opacity:.82;padding-block:.5rem;transition:opacity .3s}
.entete__nav a:hover,.entete__nav a[aria-current]{opacity:1}
.entete__nav a[aria-current]::after{content:"";position:absolute;left:0;right:0;bottom:.15rem;height:1px;background:var(--c-argent)}
.burger{display:none;position:relative;z-index:95;width:48px;height:48px;border:0;background:none;color:var(--c-ivoire);cursor:pointer}
.burger i{position:absolute;left:12px;right:12px;height:1px;background:currentColor;transition:transform .7s var(--courbe)}
.burger i:first-of-type{top:20px}.burger i:last-of-type{top:28px}
.burger[aria-expanded="true"] i:first-of-type{transform:translateY(4px) rotate(45deg)}
.burger[aria-expanded="true"] i:last-of-type{transform:translateY(-4px) rotate(-45deg)}

/* Menu plein écran (adapté de « Immersive Full Screen Navigation », 21st.dev / hyperiux) */
.menu{position:fixed;inset:0;z-index:85;background:var(--c-nuit-2);clip-path:polygon(0 0,100% 0,100% 0,0 0);overflow-y:auto}
.menu[hidden]{display:block;visibility:hidden}
.menu__dedans{min-height:100%;display:grid;grid-template-columns:1.3fr 1fr;align-content:center;gap:var(--e-4);padding:7rem var(--gouttiere) var(--e-4)}
.menu__liens{list-style:none;margin:0;padding:0}
.menu__liens a{display:inline-block;font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(2rem,3.6vw,3.4rem);line-height:1.45;letter-spacing:var(--display-chasse);padding-block:.08em}
.menu__liens a[aria-current]{color:var(--c-argent)}
.split{display:inline-block;overflow:hidden;vertical-align:bottom;line-height:1.45;height:1.45em;white-space:nowrap}
.split span{display:inline-block;white-space:pre;text-shadow:0 1.45em currentColor;transition:transform .55s cubic-bezier(.625,.05,0,1)}
a:hover .split span,a:focus-visible .split span{transform:translateY(-1.45em)}
.menu__images{display:flex;gap:var(--e-3);align-items:flex-end}
.menu__images img{width:48%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--rayon)}
.menu__images img:last-child{width:38%}
.menu__pied{grid-column:1/-1;color:var(--c-gris-nuit);font-size:var(--t-s);margin:0}

/* Hero d'accueil */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;background:var(--c-nuit)}
.hero__image,.hero__image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 50%}
.hero__brume{position:absolute;inset:0;width:100%;height:100%;mix-blend-mode:screen;opacity:.62;pointer-events:none}
.hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(11,11,12,.92) 0%,rgba(11,11,12,.55) 38%,rgba(11,11,12,0) 64%),linear-gradient(0deg,rgba(11,11,12,.95) 0%,rgba(11,11,12,0) 42%)}
.hero__contenu{position:relative;z-index:2;width:100%;padding:0 var(--gouttiere) var(--e-5);max-width:var(--largeur);margin-inline:auto}
.hero__titre{font-size:clamp(2.6rem,5.4vw,6rem);max-width:none;margin-bottom:var(--e-4)}
.hero__bas{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--e-3)}
.hero__bas .chapeau{margin:0;max-width:40ch;color:var(--c-ivoire)}
.actions{display:flex;flex-wrap:wrap;gap:.75rem}
.hero .legende{position:absolute;z-index:2;right:var(--gouttiere);top:6.2rem}

/* Tête de page intérieure */
.tete{position:relative;padding-top:calc(var(--e-7) + 2rem);padding-bottom:var(--e-5);overflow:hidden}
.tete__titre{margin-bottom:var(--e-4)}
.tete__bas{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--e-3);align-items:end}
.tete__bas .chapeau{grid-column:1/8;margin:0}
.tete__bas .actions{grid-column:9/13;justify-content:flex-end}

/* Manifeste */
.manifeste{padding-block:var(--e-7)}
.manifeste p{font-family:var(--display);font-weight:400;font-size:clamp(1.9rem,4vw,4rem);line-height:1.22;letter-spacing:var(--display-chasse);margin:0;max-width:20ch;text-wrap:balance}
.manifeste p .discret{color:#6d7077}

/* Liste éditoriale (gestes, avantages, services) */
.liste{list-style:none;margin:0;padding:0}
.liste>li{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--e-2) var(--e-3);padding-block:var(--e-4);border-top:1px solid var(--filet)}
.liste>li:last-child{border-bottom:1px solid var(--filet)}
.liste__mot{grid-column:1/6;font-family:var(--display);font-stretch:var(--display-etirement);font-weight:var(--display-graisse);text-transform:uppercase;font-size:clamp(1.6rem,3vw,2.7rem);line-height:1.42;letter-spacing:var(--display-chasse)}
.liste__texte{grid-column:7/13;margin:0;color:var(--texte-2);max-width:46ch;align-self:center}
.liste__texte strong{color:var(--texte);font-weight:500}
.prix{font-family:var(--display);font-stretch:var(--display-etirement);font-weight:var(--display-graisse);font-size:clamp(6rem,22vw,20rem);line-height:1.1;letter-spacing:0;white-space:nowrap}

/* Services : liste à image révélée au survol */
.services{position:relative}
.services>li{display:block;padding:0;border:0}
.services>li:last-child{border:0}
.services a{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--e-3);align-items:center;padding-block:var(--e-4);border-top:1px solid var(--filet);transition:padding .6s var(--courbe)}
.services li:last-child a{border-bottom:1px solid var(--filet)}
.services .liste__mot{transition:transform .6s var(--courbe),color .4s}
.services a:hover .liste__mot{transform:translateX(.6rem)}
.services .lien{grid-column:11/13;justify-self:end}
.services__vignette{position:fixed;left:0;top:0;width:min(22vw,300px);aspect-ratio:4/5;object-fit:cover;pointer-events:none;z-index:5;opacity:0;transform:translate(-50%,-50%) scale(.85);transition:opacity .35s,transform .5s var(--courbe);border-radius:var(--rayon)}
.services__vignette.est-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}

/* Galerie de lieux (adaptée de « Scroll Gallery », 21st.dev / soralabs) */
.galerie{position:relative;height:100svh;overflow:hidden;background:var(--c-nuit)}
.galerie__images,.galerie__calque{position:absolute;inset:0}
.galerie__images img{width:100%;height:100%;object-fit:cover;transform-origin:center;will-change:transform;backface-visibility:hidden}
.galerie__calque img{-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:linear-gradient(transparent,transparent);mask-image:linear-gradient(transparent,transparent)}
.galerie::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,11,12,.85),rgba(11,11,12,.15) 45%,rgba(11,11,12,.35));z-index:1}
.galerie__bande{position:absolute;z-index:2;left:0;right:0;bottom:var(--e-5);display:grid;grid-template-columns:repeat(12,1fr);gap:var(--e-3);padding-inline:var(--gouttiere);align-items:end}
.galerie__pre{grid-column:1/3;margin:0;font-size:var(--t-s);color:var(--c-gris-nuit)}
.galerie__titre{grid-column:3/12;overflow:hidden;height:1.55em;padding-top:.2em;line-height:1.1;font-size:clamp(2rem,4.6vw,4.8rem);white-space:nowrap}
.galerie__titre span{display:block}
.galerie__compte{grid-column:11/13;justify-self:end;margin:0;font-size:var(--t-s);color:var(--c-gris-nuit);font-variant-numeric:tabular-nums}
.galerie .legende{position:absolute;z-index:2;top:6.2rem;right:var(--gouttiere)}

/* Deux portes */
.portes{display:grid;grid-template-columns:1fr 1fr;min-height:90svh}
.porte{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:var(--e-3);padding:var(--e-5) var(--gouttiere);overflow:hidden;isolation:isolate}
.porte img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transform:scale(1.04);transition:transform 1.4s var(--courbe)}
.porte::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(11,11,12,.92) 10%,rgba(11,11,12,.25) 70%)}
.porte:hover img{transform:scale(1)}
.porte p{max-width:36ch;color:var(--c-ivoire);margin:0}

/* Galerie produit */
.mosaique{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--e-3);align-items:start}
.mosaique figure{margin:0}
.mosaique figure:nth-child(1){grid-column:1/6}
.mosaique figure:nth-child(2){grid-column:7/13;margin-top:var(--e-6)}
.mosaique figure:nth-child(3){grid-column:2/8;margin-top:calc(var(--e-5) * -1)}
.mosaique figure:nth-child(4){grid-column:9/13;margin-top:var(--e-5)}
.mosaique img{width:100%;border-radius:var(--rayon)}
.mosaique figcaption{margin-top:.6rem}
.ouvre{clip-path:inset(12% 8% 12% 8% round 4px)}

/* Fiche technique */
.fiche{width:100%;border-collapse:collapse;font-size:var(--t-m)}
.fiche th,.fiche td{text-align:left;vertical-align:top;padding:1.15rem 0;border-top:1px solid var(--filet)}
.fiche tr:last-child th,.fiche tr:last-child td{border-bottom:1px solid var(--filet)}
.fiche th{font-weight:500;width:38%;padding-right:var(--e-3)}

/* Formulaires (champ à étiquette flottante) */
.formulaire{display:grid;grid-template-columns:1fr 1fr;gap:var(--e-3) var(--e-4)}
.champ{position:relative;display:flex;flex-direction:column;padding-top:1.35rem}
.champ--large{grid-column:1/-1}
.champ label{position:absolute;left:0;top:2.15rem;font-size:var(--t-m);color:var(--texte-2);pointer-events:none;transform-origin:left top;transition:transform .45s var(--courbe),color .3s}
.champ input,.champ select,.champ textarea{appearance:none;width:100%;font:inherit;color:var(--texte);background:transparent;border:0;border-bottom:1px solid var(--filet-porteur);border-radius:0;padding:.7rem 0 .65rem;min-height:48px;transition:border-color .3s}
.champ textarea{min-height:9rem;resize:vertical}
.champ select{background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 12px) 55%,calc(100% - 7px) 55%;background-size:5px 5px;background-repeat:no-repeat;padding-right:2rem}
.champ input:focus,.champ select:focus,.champ textarea:focus{outline:none;border-bottom-color:var(--texte)}
.champ:focus-within{outline:none}
.champ input:focus-visible,.champ textarea:focus-visible,.champ select:focus-visible{box-shadow:0 2px 0 0 var(--texte)}
.champ.est-rempli label,.champ:focus-within label,.champ--fixe label{transform:translateY(-1.95rem) scale(.8)}
.champ:focus-within label{color:var(--texte)}
.champ__aide{font-size:var(--t-xs);color:var(--texte-2);margin-top:.45rem;min-height:1.1em}
.champ.est-invalide input,.champ.est-invalide select,.champ.est-invalide textarea{border-bottom-color:var(--c-erreur-ivoire)}
.champ.est-invalide .champ__aide{color:var(--c-erreur-ivoire)}
:not(.clair)>.formulaire .champ.est-invalide .champ__aide{color:var(--c-erreur-nuit)}
.piege{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.formulaire__pied{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--e-3);margin-top:var(--e-2)}
.formulaire__pied p{margin:0;font-size:var(--t-xs);color:var(--texte-2);max-width:52ch}
.formulaire__pied a{text-decoration:underline;text-underline-offset:3px}
.bouton--nuit{background:var(--c-nuit);color:var(--c-ivoire)}
.bouton--nuit:hover{background:#26262a}
.retour{grid-column:1/-1;padding:var(--e-3) 0 0;font-size:var(--t-m)}
.retour[hidden]{display:none}
.retour strong{font-family:var(--display);font-stretch:var(--display-etirement);text-transform:uppercase;font-size:var(--t-xl);font-weight:var(--display-graisse);display:block;line-height:1;margin-bottom:.6rem}

/* Coordonnées */
.coord{display:grid;gap:var(--e-3)}
.coord dt{font-size:var(--t-xs);color:var(--texte-2);margin-bottom:.25rem}
.coord dd{margin:0;font-size:var(--t-l)}

/* Texte long (légal) */
.prose{max-width:68ch}
.prose h2{font-family:var(--texte-f);font-size:var(--t-l);font-weight:500;margin:var(--e-4) 0 var(--e-2);text-transform:none}
.prose p,.prose li{color:var(--texte-2)}
.prose strong{color:var(--texte);font-weight:500}

/* Pied */
.pied{background:var(--c-nuit-2) radial-gradient(80% 60% at 80% 0%,#202024,transparent 70%);padding:var(--e-6) var(--gouttiere) var(--e-3);font-size:var(--t-s);color:var(--c-gris-nuit)}
.pied__haut{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:var(--e-3);padding-bottom:var(--e-5);border-bottom:1px solid var(--filet)}
.pied__appel{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(2.2rem,4.6vw,4.6rem);line-height:1.42;color:var(--c-ivoire);margin:0}
.pied__grille{display:grid;grid-template-columns:2fr 1fr 1fr;gap:var(--e-4);padding-block:var(--e-4)}
.pied__grille>*{display:flex;flex-direction:column;gap:.45rem;align-items:flex-start}
.pied__grille p{max-width:38ch}
.pied__grille a:hover{color:var(--c-ivoire)}
.pied__titre{color:var(--c-ivoire);font-weight:500;margin-bottom:.4rem}
.pied__bas{display:flex;flex-wrap:wrap;gap:var(--e-2) var(--e-4);justify-content:space-between;padding-top:var(--e-3);border-top:1px solid var(--filet);font-size:var(--t-xs)}
.pied__legal{display:flex;gap:var(--e-3)}
.pied__legal a{text-decoration:underline;text-underline-offset:3px}

/* Apparitions */
.monte{overflow:hidden;display:block;padding:.16em 0 .4em;margin:-.16em 0 -.4em}
.monte>span{display:block}
.js .apparait{opacity:0;transform:translateY(28px)}

/* Responsive */
@media (max-width:1100px){
  .entete__nav{display:none}
  .burger{display:block}
  .entete__cta{display:none}
}
@media (max-width:820px){
  :root{--e-6:5rem;--e-7:7rem}
  .menu__dedans{grid-template-columns:minmax(0,1fr);align-content:start;padding-top:6.5rem}
  .menu__images img{width:46%}
  .hero__image img{object-position:62% 50%}
  .hero::before{background:linear-gradient(0deg,rgba(11,11,12,.96) 6%,rgba(11,11,12,.6) 34%,rgba(11,11,12,0) 58%)}
  .hero__image img{object-position:50% 18%}
  .hero__brume{opacity:.4}
  .hero__titre{max-width:none}
  .hero .legende{top:5.4rem}
  .tete__bas .chapeau,.tete__bas .actions{grid-column:1/-1;justify-content:flex-start}
  .liste>li{grid-template-columns:1fr}
  .liste__mot,.liste__texte{grid-column:1/-1}
  .services a{grid-template-columns:1fr;gap:var(--e-2)}
  .services .lien{grid-column:1;justify-self:start}
  .services__vignette{display:none}
  .galerie__bande{grid-template-columns:1fr;gap:.6rem}
  .galerie__pre,.galerie__titre,.galerie__compte{grid-column:1;justify-self:start}
  .portes{grid-template-columns:1fr}
  .porte{min-height:75svh}
  .mosaique{grid-template-columns:1fr 1fr;gap:var(--e-2)}
  .mosaique figure:nth-child(n){grid-column:auto;margin-top:0}
  .mosaique figure:nth-child(2),.mosaique figure:nth-child(4){margin-top:var(--e-4)}
  .formulaire{grid-template-columns:1fr}
  .fiche th{width:44%}
  .pied__grille{grid-template-columns:1fr 1fr}
  .pied__grille>:first-child{grid-column:1/-1}
  .deux>*{grid-column:1/-1 !important}
}
@media (max-width:520px){
  .d-3xl{font-size:clamp(2.1rem,10.4vw,3.4rem)}
  .d-2xl{font-size:clamp(1.5rem,7.2vw,2.5rem)}
  .d-l{font-size:clamp(1.8rem,8vw,2.4rem)}
  .liste__mot{font-size:clamp(1.35rem,6.6vw,1.8rem)}
  .pied__appel{font-size:clamp(1.5rem,7.2vw,2.2rem)}
  .prix{font-size:clamp(4rem,24vw,6rem)}
  .galerie__titre{font-size:clamp(1.3rem,6.4vw,2.2rem)}
  .menu__liens a{font-size:clamp(1.05rem,5.2vw,1.7rem)}
  .marque__nom{font-size:1.35rem}
}
@media (max-width:420px){ .pied__grille{grid-template-columns:1fr} .fiche th,.fiche td{display:block;width:auto;border-top:0;padding:.2rem 0} .fiche tr{display:block;border-top:1px solid var(--filet);padding:.9rem 0} .fiche tr:last-child th,.fiche tr:last-child td{border-bottom:0} }
@media (prefers-reduced-motion:reduce){
  .entete,.entete__pastille,.entete__nav a,.carte,.porte img,.split span,.bouton,.bouton::before,.bouton__reflet,.champ label,.cta-flottant,.vm__point,.vm__etape{transition:none}
  .bouton--argent::before,.bouton--nuit::before,.vm__point::after{animation:none}
  .js .apparait{opacity:1;transform:none}
  .ouvre{clip-path:none}
}

/* ===== V2 (2026-11-11, retour de Mathéo) : deux polices, fonds animés tirés des clubs de référence ===== */
:root{
  --display:"Archivo","Helvetica Neue",Arial,sans-serif; --display-etirement:125%; --display-graisse:800; --display-interligne:.94; --display-chasse:-.012em;
  --texte-f:"Archivo","Helvetica Neue",Arial,sans-serif;
  --c-bleu:#2f6dff; --c-orange:#ff7a2e;
  --verre:rgba(14,16,24,.52); --verre-bord:rgba(255,255,255,.13);
}
body{font-stretch:106%;letter-spacing:-.003em}
.d,.liste__mot,.prix,.menu__liens a,.manifeste p,.pied__appel,.galerie__titre{font-stretch:125%}
.d{font-weight:800}
.liste__mot{font-weight:750;line-height:1.02}
.menu__liens a{font-weight:800;line-height:1.12}
.split{line-height:1.12;height:1.12em}
.split span{text-shadow:0 1.12em currentColor}
a:hover .split span,a:focus-visible .split span{transform:translateY(-1.12em)}
.manifeste p{font-weight:300;line-height:1.08;letter-spacing:-.02em;max-width:22ch}
.manifeste p .discret{color:#7d8089}
.prix{font-weight:800;line-height:.9;letter-spacing:-.03em}
.galerie__titre{font-weight:800;height:1.1em;padding-top:0;line-height:1.05}
.monte{padding:.06em 0 .12em;margin:-.06em 0 -.12em}
.chapeau{font-weight:400}
.d-xl{line-height:1}
.pied__appel{line-height:1.1}

/* Cantique, réservée à la marque (logo, slogan, petits titres marketing), épaissie au tracé faute de graisse grasse */
.cantique{font-family:"Cantique",serif!important;font-stretch:100%!important;font-weight:400!important;text-transform:uppercase;-webkit-text-stroke:.055em currentColor;paint-order:stroke fill;letter-spacing:.035em;line-height:1.28}
.marque__nom.cantique{font-size:1.5rem;letter-spacing:.09em;-webkit-text-stroke:.05em currentColor}
.pied__appel.cantique{font-size:clamp(2rem,4.4vw,4.4rem);line-height:1.3}
.slogan{font-size:clamp(1.9rem,3.6vw,3.6rem);margin:0}

/* Fonds animés */
.fond{position:absolute;inset:0;overflow:hidden;z-index:0;background:var(--c-nuit)}
.fond video,.fond img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fond::after{content:"";position:absolute;inset:0;background:var(--voile,linear-gradient(180deg,rgba(11,11,12,.25),rgba(11,11,12,.55) 70%,rgba(11,11,12,.95)))}
.sur-fond{position:relative;z-index:1}
.avec-fond{position:relative;overflow:hidden;isolation:isolate}

/* Hero V2 : marque géante, machine détourée qui la chevauche (référence LaunchBox) */
.hero2{position:relative;min-height:100svh;overflow:hidden;display:grid;grid-template-rows:1fr auto;isolation:isolate}
.hero2 .fond{--voile:linear-gradient(180deg,rgba(11,11,12,.15) 0%,rgba(11,11,12,.05) 45%,rgba(11,11,12,.9) 100%)}
.hero2__scene{position:relative;z-index:1;display:grid;place-items:center;padding-top:5.5rem}
.hero2__nom{position:absolute;left:0;right:0;top:50%;transform:translateY(-58%);text-align:center;font-size:clamp(4.2rem,18.5vw,19rem);color:var(--c-ivoire);margin:0;line-height:1;pointer-events:none;-webkit-text-stroke:.05em currentColor;text-shadow:0 0 60px rgba(47,109,255,.25)}
.hero2__machine{position:relative;z-index:2;height:min(74svh,760px);width:auto;filter:drop-shadow(0 30px 60px rgba(0,0,0,.65)) drop-shadow(0 0 40px rgba(47,109,255,.18))}
.hero2__bas{position:relative;z-index:3;display:grid;grid-template-columns:repeat(12,1fr);gap:var(--e-3);align-items:end;padding:0 var(--gouttiere) var(--e-4);max-width:var(--largeur);margin-inline:auto;width:100%}
.hero2__bas .slogan{grid-column:1/6}
.hero2__bas .chapeau{grid-column:6/10;margin:0;font-size:var(--t-m);color:#d9dade}
.hero2__bas .actions{grid-column:10/13;justify-content:flex-end}
.hero2 .legende{position:absolute;z-index:3;right:var(--gouttiere);top:6rem}

/* Verre (référence Structo) */
.verre{background:var(--verre);border:1px solid var(--verre-bord);border-radius:18px;backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);box-shadow:0 20px 50px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.08)}
.cartes{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--e-3)}
.carte{display:flex;flex-direction:column;gap:var(--e-2);padding:var(--e-4) var(--e-3) var(--e-3);min-height:280px;transition:transform .6s var(--courbe),border-color .4s}
.carte:hover{transform:translateY(-6px);border-color:rgba(255,255,255,.28)}
.carte h3{font-family:var(--display);font-stretch:125%;font-weight:800;text-transform:uppercase;font-size:clamp(1.4rem,2.2vw,2rem);line-height:1;margin:0}
.carte p{color:#c9cbd1;margin:0;max-width:30ch}
.carte .lien{margin-top:auto}
.section-fond{position:relative;overflow:hidden;isolation:isolate;padding-block:var(--e-6)}
.section-fond .fond{--voile:linear-gradient(180deg,rgba(11,11,12,.9) 0%,rgba(11,11,12,.35) 40%,rgba(11,11,12,.35) 70%,rgba(11,11,12,.92) 100%)}

/* Tête de page sur fond animé */
.tete.avec-fond{padding-top:calc(var(--e-7) + 2rem)}
.tete .fond{--voile:linear-gradient(90deg,rgba(11,11,12,.88) 0%,rgba(11,11,12,.5) 55%,rgba(11,11,12,.25) 100%),linear-gradient(0deg,rgba(11,11,12,1) 0%,transparent 40%)}
.tete__marketing{display:block;font-size:clamp(1.1rem,1.8vw,1.6rem);margin-bottom:var(--e-2);color:#e6e7ea}

/* Machine annotée (distributeurs) */
.vitrine{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--e-4);min-height:90svh;padding-block:var(--e-5)}
.vitrine img{height:min(80svh,820px);width:auto;filter:drop-shadow(0 30px 60px rgba(0,0,0,.7))}
.vitrine__notes{display:flex;flex-direction:column;gap:var(--e-3)}
.note{padding:var(--e-3)}
.note strong{display:block;font-stretch:125%;font-weight:800;text-transform:uppercase;font-size:var(--t-l);line-height:1.05;margin-bottom:.4rem}
.note p{margin:0;color:#c9cbd1;font-size:var(--t-s)}

/* Formulaires sur verre sombre */
.form-verre{padding:var(--e-4) clamp(1rem,3vw,2.5rem)}
.form-verre .champ input,.form-verre .champ select,.form-verre .champ textarea{color:var(--c-ivoire)}
.form-verre .champ select option{color:#0b0b0c}

@media (max-width:820px){
  .hero2__scene{padding-top:5rem}
  .hero2__nom{font-size:clamp(3.6rem,19vw,9rem);transform:translateY(-70%)}
  .hero2__machine{height:min(52svh,520px)}
  .hero2__bas{grid-template-columns:1fr;gap:var(--e-2)}
  .hero2__bas>*{grid-column:1/-1!important;justify-content:flex-start!important}
  .cartes{grid-template-columns:1fr}
  .carte{min-height:0}
  .vitrine{grid-template-columns:1fr;justify-items:center}
  .vitrine img{height:min(60svh,560px)}
}
@media (max-width:520px){ .slogan{font-size:clamp(1.6rem,8vw,2.2rem)} .pied__appel.cantique{font-size:clamp(1.3rem,6.6vw,2rem)} }
.form-verre{--verre:rgba(12,13,18,.86)}
.note{--verre:rgba(12,13,18,.62)}
.hero2__nom{font-size:clamp(3.4rem,15.5vw,16rem);letter-spacing:.02em;transform:translateY(-62%)}
.hero2__scene{padding-top:6.5rem}
.hero2__machine{height:min(60svh,640px)}
.hero2__bas .slogan{grid-column:1/8;white-space:nowrap;font-size:clamp(1.5rem,2.7vw,2.9rem);line-height:1.3}
.hero2__bas .chapeau{grid-column:1/8;grid-row:2}
.hero2__bas .actions{grid-column:9/13;grid-row:1/3;align-self:end}
@media (max-width:820px){ .hero2__bas .slogan{white-space:normal} .hero2__bas .chapeau,.hero2__bas .actions{grid-row:auto} }
.pied__appel.cantique{line-height:1.7;font-size:clamp(1.6rem,3.4vw,3.4rem)}
:root{--t-2xl:clamp(2.1rem,4.6vw,4.8rem);--t-3xl:clamp(2.6rem,6.8vw,7.2rem)}
.d-l{font-size:clamp(1.8rem,3.4vw,3.4rem)}
.galerie__titre{font-size:clamp(1.8rem,4.2vw,4.4rem)}
.liste__mot{font-size:clamp(1.3rem,2.4vw,2.2rem)}
@media (max-width:520px){ :root{--t-2xl:clamp(1.5rem,6.6vw,2.3rem);--t-3xl:clamp(1.9rem,9vw,3rem)} .d-3xl,.d-2xl{font-size:inherit} h1.d-3xl{font-size:var(--t-3xl)} h2.d-2xl{font-size:var(--t-2xl)} .liste__mot{font-size:clamp(1.1rem,5.4vw,1.5rem)} .galerie__titre{font-size:clamp(1.2rem,5.8vw,2rem)} .d-l{font-size:clamp(1.4rem,6.4vw,2rem)} }
.prix{font-size:clamp(3.6rem,10vw,10rem)}
.monte{overflow-x:visible;overflow-y:clip}
.hero2__bas .slogan{grid-column:1/9;font-size:clamp(1.4rem,2.5vw,2.7rem)}
@media (max-width:820px){
  .hero2__scene{padding-top:6.5rem}
  .hero2__machine{height:min(44svh,440px)}
  .hero2__bas .slogan{line-height:1.75;font-size:clamp(1.3rem,6.2vw,1.9rem)}
  .hero2 .legende{top:auto;bottom:.6rem}
}
@media (max-width:820px){.hero2__bas .slogan{line-height:2.05}}
.hero2__bas .actions{grid-row:1}

/* ===== V3 navigation (2026-11-11, « la barre de nav est ultra moche ») : capsule de verre flottante, pas de bandeau ===== */
.hero2__bas .actions{grid-row:1}
@media (max-width:820px){ .hero2__bas .actions{grid-row:auto} .hero2__bas .slogan{order:-1} }

.entete,.entete.est-replie,body.menu-ouvert .entete{background:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.entete{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--e-3);padding:16px var(--gouttiere);pointer-events:none;transition:transform .6s var(--courbe)}
.entete>*{pointer-events:auto}
.entete.est-cache{transform:translateY(-130%)}
body.menu-ouvert .entete{transform:none}
.marque{justify-self:start;margin:0;padding:.35rem .2rem}
.marque__nom.cantique{font-size:1.7rem;letter-spacing:.1em;line-height:1;text-shadow:0 2px 18px rgba(0,0,0,.45)}

.entete__nav{position:relative;justify-self:center;display:flex;gap:2px;padding:5px;border-radius:999px;background:rgba(12,14,22,.42);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);box-shadow:0 10px 30px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.07);transition:background-color .5s}
.entete.est-replie .entete__nav{background:rgba(12,14,22,.72)}
.entete__nav a{position:relative;z-index:1;display:inline-flex;align-items:center;min-height:40px;padding:0 1.05rem;border-radius:999px;font-size:.875rem;font-weight:500;font-stretch:112%;letter-spacing:.005em;color:rgba(242,241,236,.78);opacity:1;white-space:nowrap;transition:color .35s}
.entete__nav a:hover,.entete__nav a:focus-visible{color:var(--c-ivoire)}
.entete__nav a[aria-current]{color:var(--c-nuit)}
.entete__nav a[aria-current]::after{display:none}
.entete__pastille{position:absolute;z-index:0;top:5px;left:0;height:40px;width:0;border-radius:999px;background:rgba(255,255,255,.1);opacity:0;transition:transform .5s var(--courbe),width .5s var(--courbe),opacity .3s,background-color .3s;pointer-events:none}
.entete__pastille.est-active{background:linear-gradient(120deg,#d4d6da,#f6f6f4 45%,#c3c6cb)}

.entete__cta{justify-self:end;display:inline-flex;align-items:center;gap:.65rem;min-height:44px;padding:0 1.2rem;border-radius:999px;font-size:.875rem;font-weight:600;font-stretch:112%;color:var(--c-ivoire);background:rgba(12,14,22,.42);border:1px solid transparent;background-clip:padding-box;position:relative;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transition:color .35s,background-color .35s}
.entete__cta::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(120deg,#8e9198,#f4f5f7 40%,#9da0a7 60%,#e9eaec);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.entete__cta:hover{background:var(--c-ivoire);color:var(--c-nuit)}

.burger{display:none;justify-self:end;width:auto;height:44px;padding:0 .9rem 0 1.1rem;gap:.7rem;align-items:center;border-radius:999px;background:rgba(12,14,22,.5);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:var(--c-ivoire);font:500 .85rem/1 var(--texte-f);font-stretch:112%}
.burger__traits{position:relative;width:18px;height:10px}
.burger i{left:0;right:0;width:18px}
.burger i:first-of-type{top:0}.burger i:last-of-type{top:9px}
.burger[aria-expanded="true"] i:first-of-type{transform:translateY(4.5px) rotate(45deg)}
.burger[aria-expanded="true"] i:last-of-type{transform:translateY(-4.5px) rotate(-45deg)}
@media (max-width:1100px){
  .entete{grid-template-columns:1fr auto}
  .entete__nav,.entete__cta{display:none}
  .burger{display:inline-flex}
}
@media (max-width:420px){ .marque__nom.cantique{font-size:1.45rem} .burger__mot{display:none} .burger{padding:0 .85rem} }
.menu{background:var(--c-nuit) url("img/fond-arches.jpg") 60% 50%/cover no-repeat}
.menu::before{content:"";position:fixed;inset:0;background:linear-gradient(90deg,rgba(11,11,12,.92) 0%,rgba(11,11,12,.7) 60%,rgba(11,11,12,.45) 100%);pointer-events:none}
.menu__dedans{position:relative}
.menu__liens a{color:rgba(242,241,236,.9)}
.menu__liens a[aria-current]{color:var(--c-ivoire);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.2em}
@media (max-width:520px){ .menu__liens a{font-size:clamp(1.2rem,5.6vw,1.6rem)} }

/* ===== V3 (2026-11-15) : bouton « Metallic Button » de 21st.dev (starc007, beui.dev), porté en CSS ===== */
.bouton--argent,.bouton--nuit,.entete__cta,.cta-flottant{position:relative;isolation:isolate;overflow:hidden;color:var(--c-ivoire)!important;background:none!important;border:0;box-shadow:0 8px 22px rgba(0,0,0,.35);font-weight:600;font-stretch:112%}
.bouton--argent::before,.bouton--nuit::before,.entete__cta::before,.cta-flottant::before{content:"";position:absolute;z-index:-2;top:0;bottom:0;left:-18%;width:136%;inset-inline-start:-18%;padding:0;border-radius:inherit;-webkit-mask:none;mask:none;background:linear-gradient(105deg,#111 0%,#737373 14%,#fafafa 26%,#525252 38%,#0a0a0a 50%,#a3a3a3 64%,#fff 75%,#404040 87%,#111 100%);transform:none;animation:derive-argent 8s cubic-bezier(.65,0,.35,1) infinite}
.bouton--argent::after,.bouton--nuit::after,.entete__cta::after,.cta-flottant::after{content:"";position:absolute;z-index:-1;inset:2px;border-radius:inherit;background:linear-gradient(180deg,#1b1c21,#0e0f12);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(0,0,0,.16);transition:background-color .35s}
.bouton__reflet{position:absolute;z-index:0;top:0;bottom:0;left:-58%;width:52%;transform:skewX(-12deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.5) 48%,transparent);opacity:.5;filter:blur(3px);mix-blend-mode:screen;pointer-events:none;transition:transform 2.4s cubic-bezier(.65,0,.35,1)}
.bouton--argent:hover .bouton__reflet,.bouton--nuit:hover .bouton__reflet,.entete__cta:hover .bouton__reflet,.cta-flottant:hover .bouton__reflet{transform:translateX(310%) skewX(-12deg)}
.bouton--argent>*,.bouton--nuit>*,.entete__cta>*,.cta-flottant>*{position:relative;z-index:1}
.bouton--argent:hover::after,.bouton--nuit:hover::after,.entete__cta:hover::after,.cta-flottant:hover::after{background:linear-gradient(180deg,#24252b,#15161a)}
.entete__cta:hover{background:none!important;color:var(--c-ivoire)!important}
@keyframes derive-argent{0%,100%{transform:translateX(0)}50%{transform:translateX(13%)}}

/* Bouton d'action toujours à l'écran (registre n° 35 c) */
.cta-flottant{position:fixed;z-index:70;right:var(--gouttiere);bottom:22px;display:inline-flex;align-items:center;gap:.65rem;min-height:52px;padding:0 1.4rem;border-radius:999px;font-size:.95rem;opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .45s,transform .6s var(--courbe)}
.cta-flottant.est-visible{opacity:1;transform:none;pointer-events:auto}
@media (max-width:820px){ .cta-flottant{left:50%;right:auto;transform:translate(-50%,16px);bottom:16px} .cta-flottant.est-visible{transform:translate(-50%,0)} }

/* Hero : vraie machine (panneau mural horizontal) */
.hero2__machine{height:auto;width:min(46vw,640px);max-height:58svh;object-fit:contain}
@media (max-width:820px){ .hero2__machine{width:min(84vw,460px);height:auto;max-height:40svh} }

/* Vitrine interactive de la machine (distributeurs) */
.vm{display:grid;grid-template-columns:1.25fr 1fr;gap:var(--e-5);align-items:center;padding-block:var(--e-5)}
.vm__scene{position:relative}
.vm__scene img{width:100%;height:auto;filter:drop-shadow(0 30px 50px rgba(0,0,0,.6))}
.vm__point{position:absolute;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;border:0;padding:0;cursor:pointer;background:rgba(242,241,236,.16);box-shadow:0 0 0 1px rgba(242,241,236,.55) inset;backdrop-filter:blur(3px);color:var(--c-ivoire);font:700 .9rem/1 var(--texte-f);font-stretch:112%;transition:transform .4s var(--courbe),background-color .3s}
.vm__point::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px solid rgba(242,241,236,.5);opacity:0;animation:onde 2.2s ease-out infinite}
.vm__point.est-actif{background:var(--c-ivoire);color:var(--c-nuit);transform:scale(1.12)}
.vm__point.est-actif::after{opacity:1}
@keyframes onde{0%{transform:scale(.8);opacity:.8}100%{transform:scale(1.6);opacity:0}}
.vm__etapes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.vm__etape{display:grid;grid-template-columns:auto 1fr;gap:.2rem 1rem;align-items:baseline;width:100%;text-align:left;padding:1.1rem 1.2rem;border-radius:16px;border:1px solid transparent;background:none;color:var(--c-ivoire);cursor:pointer;font:inherit;transition:background-color .35s,border-color .35s}
.vm__etape .vm__n{font-weight:800;font-stretch:125%;font-size:1.05rem;color:var(--c-gris-nuit)}
.vm__etape strong{font-weight:800;font-stretch:125%;text-transform:uppercase;font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.1}
.vm__etape span:last-child{grid-column:2;color:var(--c-gris-nuit);font-size:var(--t-s)}
.vm__etape.est-actif{background:var(--verre);border-color:var(--verre-bord)}
.vm__etape.est-actif .vm__n{color:var(--c-ivoire)}
.vm__etape.est-actif span:last-child{color:#d4d6da}
.credit{font-size:var(--t-xs);color:var(--c-gris-nuit);margin-top:var(--e-2)}
@media (max-width:820px){ .vm{grid-template-columns:1fr;gap:var(--e-3)} .vm__point{width:36px;height:36px;margin:-18px 0 0 -18px;font-size:.8rem} }

/* Coordonnées en liens */
.coord a{text-decoration:underline;text-decoration-color:rgba(242,241,236,.35);text-underline-offset:4px;word-break:break-word}
.coord a:hover{text-decoration-color:currentColor}
.pied__grille a[href^="mailto"],.pied__grille a[href^="tel"]{word-break:break-all}

.formulaire__alerte{grid-column:1/-1;margin:0;padding:.9rem 1rem;border-radius:12px;background:rgba(255,154,143,.1);border:1px solid rgba(255,154,143,.45);color:#ffd2cc;font-size:var(--t-s)}
.formulaire__alerte a{color:inherit;text-decoration:underline}
.bouton--argent:hover::before,.bouton--nuit:hover::before{transform:none}
button[aria-busy="true"]{opacity:.7;cursor:progress}
.entete__cta,.cta-flottant,.bouton{white-space:nowrap}
.entete__cta{min-height:44px;padding:0 1.2rem}
.marque{transition:background-color .4s,padding .4s,border-color .4s;border:1px solid transparent;border-radius:999px}
.entete.est-replie .marque{background:rgba(12,14,22,.55);border-color:rgba(255,255,255,.12);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);padding:.5rem 1rem}
.entete.est-replie .marque__nom.cantique{font-size:1.4rem}
@media (max-width:820px){ .cta-flottant{font-size:.9rem;min-height:48px;padding:0 1.2rem} .vm{padding-bottom:5.5rem} }
@media (max-width:520px){ .pied__appel.cantique{font-size:clamp(1.05rem,5.4vw,2rem);letter-spacing:.015em} }
@media (max-width:360px){ :root{--t-3xl:clamp(1.6rem,8.2vw,3rem)} h1.d-3xl{font-size:var(--t-3xl)} .liste__mot{font-size:clamp(1rem,5vw,1.5rem)} }
@media (max-width:420px){ .verre .liste__mot{font-size:clamp(1.05rem,5.6vw,1.5rem)!important} }
/* Contrastes mesurés sur le rendu (15/11) */
.entete.est-replie .marque{background:rgba(12,14,22,.82)}
.entete.est-replie .entete__nav{background:rgba(12,14,22,.82)}
#demande .fond,#annonceur .fond{--voile:linear-gradient(90deg,rgba(11,11,12,.9) 0%,rgba(11,11,12,.78) 45%,rgba(11,11,12,.55) 100%)}
.vm__point{background:rgba(12,14,22,.72);box-shadow:0 0 0 1px rgba(242,241,236,.7) inset}
.galerie__pre,.galerie__compte{color:var(--c-ivoire)}
.galerie::after{background:linear-gradient(0deg,rgba(11,11,12,.9),rgba(11,11,12,.2) 45%,rgba(11,11,12,.4))}
.entete.est-replie .marque{padding:.4rem 1.05rem .8rem}
.entete.est-replie .burger,.entete.est-replie .entete__cta::after{background:rgba(12,14,22,.82)}
.entete__nav{background:rgba(12,14,22,.55)}
.verre{--verre:rgba(14,16,24,.62)}
.portes .porte:nth-child(2)::before{background:linear-gradient(0deg,rgba(11,11,12,.95) 15%,rgba(11,11,12,.55) 75%)}
@media (max-width:820px){ .tete .fond{--voile:linear-gradient(180deg,rgba(11,11,12,.6) 0%,rgba(11,11,12,.72) 45%,rgba(11,11,12,1) 100%)} }
.champ label{white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
@media (max-width:1100px){ #demande .deux>*,#annonceur .deux>*,.page-contact .deux>*{grid-column:1/-1!important} }
#demande .fond,#annonceur .fond{--voile:linear-gradient(90deg,rgba(11,11,12,.88) 0%,rgba(11,11,12,.8) 50%,rgba(11,11,12,.74) 100%)}
