/* ═══════════════════════════════════════════════════════════════════════════
   marketing/site/site.css — LE STYLE DU NOUVEAU SITE (v2-77, 9 octobre 2026)

   Les couleurs et les caractères sont ceux des pages de marketing (le-pressoir.php) :
   or, olive, papier, nuit ; titres en Cinzel Decorative, texte en Lato.
   Une page est une suite de bandes (.s) ; une bande contient des grilles (.g) de
   colonnes (.c), des tuiles photo (.tuile), des cartes (.carte), des bandes de
   photos à faire glisser (.defile), des questions (.acc).
   ═══════════════════════════════════════════════════════════════════════════ */
:root{--or:#876f27;--or2:#c9a24b;--olive:#909564;--olive2:#6d7249;--papier:#efefeb;--creme:#f8f5ec;--encre:#323232;--nuit:#23261b;--ligne:#ddd6c2;
  --titre:'Cinzel Decorative','Cormorant Garamond',Georgia,serif;--texte:Lato,'Helvetica Neue',Arial,sans-serif;--gap:28px;--tete:76px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--tete) + 16px)}
html.fige{overflow:hidden}
body{margin:0;background:var(--papier);color:var(--encre);font-family:var(--texte);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
body.l-zh{font-family:Lato,'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC',sans-serif}
img,video{max-width:100%;height:auto;display:block}
a{color:var(--or);text-underline-offset:3px}
a:hover{color:#5f4d18}
p{margin:0 0 16px}
ul,ol{margin:0 0 16px;padding-left:22px}
li{margin:4px 0}
hr{border:0;border-top:1px solid var(--ligne);margin:28px 0}
h1,h2,h3,h4{font-family:var(--titre);font-weight:400;line-height:1.18;margin:0 0 18px;text-wrap:balance;color:var(--nuit)}
h1{font-size:clamp(32px,5vw,58px)}
h2{font-size:clamp(25px,3.3vw,38px)}
h3{font-size:clamp(19px,2.1vw,24px)}
h4,h5,h6{font-size:17px;margin:0 0 10px}
h5,h6{font-family:var(--texte);font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:12.5px;color:var(--or)}
h1 b,h2 b,h1 strong,h2 strong{font-weight:400}
.t1{font-size:clamp(34px,5.6vw,66px)}.t2{font-size:clamp(25px,3.3vw,38px)}.t3{font-size:clamp(19px,2.1vw,24px)}.t5{font-size:15px}
.or{color:var(--or)}.cinzel{font-family:var(--titre)}
.ctr{text-align:center}.drt{text-align:right}
.chapo{font-size:20px;line-height:1.65}.grand{font-size:19px}.petit{font-size:14.5px;color:#6b6659}
.etroit{max-width:760px}.etroit.ctr{margin-left:auto;margin-right:auto}
.e-s{max-width:220px}.e-m{max-width:360px}.e-l{max-width:560px}.e-xl{max-width:780px}.e-2xl{max-width:1000px}
.w{max-width:1180px;margin:0 auto;padding:0 22px}
.saut{position:absolute;left:-9999px;top:0;background:#fff;color:var(--nuit);padding:10px 16px;z-index:999}
.saut:focus{left:8px;top:8px}
:focus-visible{outline:2px solid var(--or2);outline-offset:3px}

/* ── boutons ── */
.btn{display:inline-block;padding:14px 26px;border:1px solid var(--or);background:var(--or);color:#fff;text-decoration:none;font-family:var(--texte);font-size:12.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;line-height:1.2;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.btn:hover{background:#6e5a1e;border-color:#6e5a1e;color:#fff}
.btn.trace{background:transparent;color:var(--or)}
.btn.trace:hover{background:var(--or);color:#fff}
.btn.sombre{background:var(--nuit);border-color:var(--nuit)}
.btn.fil{background:none;border:0;border-bottom:1px solid currentColor;padding:4px 0;color:inherit;letter-spacing:.2em}
.btn.fil:hover{background:none;color:var(--or2)}

/* ── bandeau et en-tête ── */
.bandeau{background:var(--nuit);color:#fff;text-align:center;font-size:13.5px;letter-spacing:.02em;line-height:1.5;padding:9px 16px}
.bandeau .etoile{color:var(--or2)}
.bandeau a{display:inline-block;margin-left:8px;background:var(--or2);color:#1e2016;padding:5px 14px;border-radius:30px;text-decoration:none;font-weight:700;text-transform:uppercase;font-size:11.5px;white-space:nowrap}
.tete{position:sticky;top:0;z-index:60;background:var(--nuit);color:#fff;transition:background .3s,box-shadow .3s}
.tete-in{max-width:1400px;margin:0 auto;padding:0 22px;height:var(--tete);display:flex;align-items:center;gap:22px}
.sur-photo .tete{background:linear-gradient(180deg,rgba(20,18,10,.62),rgba(20,18,10,0));margin-bottom:calc(-1 * var(--tete))}
.sur-photo .tete.plein{background:var(--nuit);box-shadow:0 6px 24px rgba(0,0,0,.18)}
.logo{color:#fff;font-family:var(--titre);font-size:15px;text-decoration:none;line-height:1.2}
.logo img{height:52px;width:auto}
.barre{flex:1;display:none;min-width:0}
.barre-menu{list-style:none;margin:0;padding:0;display:flex;gap:4px;justify-content:center}
.barre-menu>li{position:relative;margin:0}
.barre-menu a,.barre-menu summary{display:block;padding:10px 11px;color:#f0ecdc;text-decoration:none;font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;cursor:pointer;list-style:none}
.barre-menu summary::-webkit-details-marker{display:none}
.barre-menu summary::after{content:"";display:inline-block;margin-left:7px;border:4px solid transparent;border-top-color:var(--or2);transform:translateY(2px)}
.barre-menu a:hover,.barre-menu summary:hover,.barre-menu [aria-current],.barre-menu .actif{color:var(--or2)}
.barre-menu details>ul{position:absolute;left:0;top:100%;min-width:250px;margin:0;padding:8px 0;list-style:none;background:var(--nuit);box-shadow:0 18px 40px rgba(0,0,0,.28)}
.barre-menu details>ul a{padding:11px 20px;letter-spacing:.12em}
.outils{margin-left:auto;display:flex;align-items:center;gap:16px}
.outils a{color:#f0ecdc;text-decoration:none;font-size:12.5px;letter-spacing:.06em}
.outils a:hover{color:var(--or2)}
.o-tel,.o-cadeau{display:none}
.langues{display:flex;gap:2px}
.langues a{white-space:nowrap;padding:6px 6px;font-size:11.5px;font-weight:700;letter-spacing:.1em;opacity:.7}
.langues a[aria-current]{opacity:1;color:var(--or2)}
.outils .o-reserver{color:#fff;padding:11px 18px;font-size:11.5px}
.outils .o-reserver:hover{color:#fff}
.burger{display:flex;flex-direction:column;gap:5px;padding:10px 4px}
.burger span{display:block;width:26px;height:2px;background:#f0ecdc}
@media(min-width:1000px){.o-tel{display:inline}}
@media(min-width:1500px){.barre{display:block}.o-cadeau{display:inline}}
@media(max-width:560px){:root{--tete:64px}.logo img{height:42px}.langues a{padding:6px 4px}.outils{gap:10px}.outils .o-reserver{padding:10px 12px;letter-spacing:.12em}.bandeau{font-size:12.5px}}

/* ── le tiroir du menu ── */
.tiroir{position:fixed;inset:0;z-index:200;visibility:hidden}
.tiroir:target,.tiroir.ouvert{visibility:visible}
.tiroir-voile{position:absolute;inset:0;background:rgba(20,18,10,.55);opacity:0;transition:opacity .3s}
.tiroir-in{position:absolute;right:0;top:0;bottom:0;width:min(440px,100vw);background:var(--nuit);color:#f0ecdc;padding:26px 30px 34px;overflow:auto;transform:translateX(30px);opacity:0;transition:transform .35s cubic-bezier(.2,.7,.2,1),opacity .3s}
.tiroir:target .tiroir-voile,.tiroir.ouvert .tiroir-voile{opacity:1}
.tiroir:target .tiroir-in,.tiroir.ouvert .tiroir-in{transform:none;opacity:1}
.tiroir-x{display:block;text-align:right;color:var(--or2);text-decoration:none;font-size:11px;letter-spacing:.24em;text-transform:uppercase;margin-bottom:12px}
.tiroir-menu,.tiroir-menu ul{list-style:none;margin:0;padding:0}
.tiroir-menu>li{border-bottom:1px solid rgba(240,236,220,.14);margin:0}
.tiroir-menu a,.tiroir-menu summary{display:block;padding:15px 0;color:#f0ecdc;text-decoration:none;font-family:var(--titre);font-size:18px;cursor:pointer;list-style:none}
.tiroir-menu summary::-webkit-details-marker{display:none}
.tiroir-menu summary::after{content:"+";float:right;color:var(--or2);font-family:var(--texte)}
.tiroir-menu details[open] summary::after{content:"–"}
.tiroir-menu details ul{padding:0 0 12px 14px}
.tiroir-menu details ul a{font-family:var(--texte);font-size:15px;padding:8px 0;color:#d9d4c2}
.tiroir-menu a:hover,.tiroir-menu summary:hover,.tiroir-menu [aria-current]{color:var(--or2)}
.tiroir-bas{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0 18px}
.tiroir-bas .btn{text-align:center;padding:14px 10px}
.tiroir-bas .btn.trace{color:var(--or2);border-color:var(--or2)}
.tiroir-liens{font-size:14px;color:#bdb8a6;line-height:2}
.tiroir-liens a{color:#e6cf8a;text-decoration:none}

/* ── l'ouverture : grande photo ou vidéo, le titre posé dessus ── */
.ouv{position:relative;color:#fff;background:#1a1410;overflow:hidden}
.ouv>.fond,.ouv>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
/* v2-92 — le film d'ouverture arrive après la page (site.js) : il se pose en fondu sur son image d'attente */
.ouv>video[data-film]{opacity:0;transition:opacity .8s ease}
.ouv>video[data-film].joue{opacity:1}
.ouv::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,14,8,.34) 0%,rgba(20,14,8,.22) 40%,rgba(20,14,8,.82) 100%)}
.ouv>.w{position:relative;z-index:1;min-height:62vh;display:flex;flex-direction:column;justify-content:flex-end;padding-top:140px;padding-bottom:56px}
.ouv.plein>.w{min-height:calc(100vh - 40px);min-height:calc(100svh - 40px);justify-content:center;align-items:center;text-align:center;padding-bottom:90px}
.ouv.nue>.w{min-height:70vh}
.ouv h1,.ouv h2,.ouv h3{color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.35)}
.ouv h1{margin:0}
.ouv h1 b,.ouv h1 .or,.ouv h1 strong{color:#e6cf8a}
.ouv p{color:#f3ecd8;max-width:640px}
.ouv a:not(.btn){color:#e6cf8a}
.ouv .g{margin:0;align-items:flex-end}
.ouv .etroit{max-width:none}
.ouv.plein .etroit{margin:0 auto}
.ouv form.contact{background:rgba(255,253,248,.96);color:var(--encre);padding:26px}

/* ── bandes ── */
.s{padding:76px 0;position:relative}
.s-fine{padding:40px 0}.s-ample{padding:104px 0}
.s+.s:not(.s-olive):not(.s-nuit):not(.s-creme):not(.s-photo){padding-top:8px}
.s-creme{background:var(--creme)}
.s-olive{background:var(--olive2);color:#f6f3e6}
.s-nuit{background:var(--nuit);color:#e9e4d2}
.s-photo{color:#fff;background:#1a1410;overflow:hidden}
.s-photo>.fond{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.s-photo::after{content:"";position:absolute;inset:0;background:rgba(20,14,8,.55)}
.s-photo>.w{position:relative;z-index:1}
.s-olive h1,.s-olive h2,.s-olive h3,.s-olive h4,.s-nuit h1,.s-nuit h2,.s-nuit h3,.s-nuit h4,.s-photo h1,.s-photo h2,.s-photo h3,.s-photo h4{color:#fff}
.s-olive a:not(.btn),.s-nuit a:not(.btn),.s-photo a:not(.btn){color:#f0dc9c}
.s-olive .or,.s-nuit .or,.s-photo .or{color:#f0dc9c}
.s-olive .btn.trace,.s-nuit .btn.trace,.s-photo .btn.trace{color:#fff;border-color:#fff}
.s-olive .btn.trace:hover,.s-nuit .btn.trace:hover,.s-photo .btn.trace:hover{background:#fff;color:var(--nuit)}
.s h2.ctr::after,.s h1.ctr::after{content:"";display:block;width:54px;height:1px;background:var(--or2);margin:20px auto 0}
.s>.w>img,.s .c>img,.s .c>a>img{width:100%;height:auto}
.clair{color:#fff}

/* ── grilles ── */
.g{display:flex;flex-wrap:wrap;gap:var(--gap);margin:30px 0}
.g:first-child{margin-top:0}.g:last-child{margin-bottom:0}
.c{flex:0 0 calc((var(--f,1)) * 100% - var(--gap) * (1 - (var(--f,1))));min-width:0}
.c.libre{flex:1 1 0}
.c>:last-child{margin-bottom:0}
@media(max-width:900px){.c,.c.libre{flex:0 0 calc((var(--fp,1)) * 100% - var(--gap) * (1 - (var(--fp,1))))}.g{--gap:20px}}

/* ── tuiles photo (l'accueil) ── */
/* v2-95 — Bertrand, 10 octobre 2026 : « ce n'est pas très joli, les textes des sections, revois le design ». Le titre était
   écrit en capitales ornées, centré, sur trois lignes, à même la photo : illisible sur une image claire. Il se pose
   maintenant en bas à gauche, en Lato fin et en minuscules, sur un voile qui ne couvre que le bas de la photo ; un filet
   doré le précède et s'allonge au survol ; « En savoir plus » devient une ligne discrète suivie d'une flèche. */
.tuile{position:relative;min-height:440px;height:100%;display:flex;align-items:flex-end;justify-content:flex-start;overflow:hidden;background:#1a1410;color:#fff;isolation:isolate}
.tuile>.fond{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.tuile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,14,8,0) 34%,rgba(20,14,8,.5) 62%,rgba(20,14,8,.9) 100%);transition:opacity .5s ease}
.tuile:hover>.fond,.tuile:focus-within>.fond{transform:scale(1.05)}
.tuile-in{position:relative;z-index:1;padding:0 30px 30px;width:100%;text-align:left}
.tuile-in::before{content:"";display:block;width:36px;height:1px;background:#e6cf8a;margin:0 0 18px;transition:width .5s cubic-bezier(.2,.7,.2,1)}
.tuile:hover .tuile-in::before,.tuile:focus-within .tuile-in::before{width:72px}
.tuile h2,.tuile h3{color:#fff;font-family:var(--texte);font-weight:300;font-size:clamp(21px,1.75vw,25px);line-height:1.28;letter-spacing:.005em;text-transform:none;text-align:left;text-wrap:balance;margin:0 0 16px;max-width:17em;text-shadow:0 1px 18px rgba(0,0,0,.35)}
.tuile h2::after{display:none!important}
.tuile .ctr{text-align:left}
.tuile a{color:#fff;text-decoration:none}
.tuile a::after{content:"";position:absolute;inset:0;z-index:2}
.tuile .btn.fil{display:inline-flex;align-items:center;gap:10px;padding:0;border:0;background:none;font-size:11px;font-weight:700;letter-spacing:.22em;color:#e6cf8a}
.tuile .btn.fil::before{content:"→";order:2;font-size:15px;letter-spacing:0;font-weight:400;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.tuile:hover .btn.fil::before,.tuile:focus-within .btn.fil::before{transform:translateX(6px)}
.tuile a:focus-visible{outline:0}
.tuile:focus-within{outline:2px solid var(--or2);outline-offset:3px}
@media(max-width:900px){.tuile{min-height:300px}.tuile-in{padding:0 22px 24px}.tuile h2,.tuile h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){.tuile>.fond,.tuile-in::before,.tuile .btn.fil::before{transition:none}.tuile:hover>.fond{transform:none}}

/* ── cartes ── */
.carte{background:#fff;border:1px solid var(--ligne);height:100%;display:flex;flex-direction:column;overflow:hidden}
.carte.olive{background:var(--olive2);border-color:var(--olive2);color:#f6f3e6}
.carte.olive h1,.carte.olive h2,.carte.olive h3,.carte.olive h4{color:#fff}
.carte.olive a:not(.btn){color:#f0dc9c}
.carte.olive .btn.trace{color:#fff;border-color:rgba(255,255,255,.75)}
.carte.olive .btn.trace:hover{background:#fff;color:var(--nuit)}
.carte-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.carte-txt{padding:24px 24px 26px;display:flex;flex-direction:column;flex:1}
.carte-txt>:last-child{margin-top:auto;margin-bottom:0;padding-top:10px}
.carte-titre,.carte h3{font-size:21px;margin:0 0 10px}
.carte ul{padding-left:18px;font-size:15.5px}
.carte .cinzel p{margin:0;font-size:18px}
.carte .cinzel a{text-decoration:none;display:block;padding:10px 0}

.carte:not(.olive){color:var(--encre)}
.carte:not(.olive) h1,.carte:not(.olive) h2,.carte:not(.olive) h3,.carte:not(.olive) h4{color:var(--nuit)}
.carte:not(.olive) .or,.carte:not(.olive) a:not(.btn){color:var(--or)}
.carte-txt>.g:last-child{margin-top:0;padding-top:0}
.carte .carte.olive{color:#f6f3e6}
.carte .carte.olive h1,.carte .carte.olive h2,.carte .carte.olive h3,.carte .carte.olive h4{color:#fff}
.carte .carte.olive a:not(.btn),.carte .carte.olive .or{color:#f0dc9c}
.carte.olive>.carte-txt>.g{align-items:center}
.s h3.ctr{margin-top:44px}
.s h3.ctr:first-child{margin-top:0}
.c>h3.ctr{margin-top:0}

/* ── bandes de photos à faire glisser ── */
.defile{position:relative;margin:30px 0}
.piste{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.piste::-webkit-scrollbar{display:none}
.vue{flex:0 0 calc((100% - (var(--par,1) - 1) * 12px) / var(--par,1));scroll-snap-align:start;position:relative;min-width:0}
.vue>img,.vue>a>img{width:100%;aspect-ratio:4/3;object-fit:cover}
.defile[style*="--par:1"] .vue>img{aspect-ratio:16/9}
/* v2-95 — Bertrand, 11 octobre 2026 : « dans la page BtoB la photo du chef est tronquée ». La photo est en hauteur (1 066 × 1 600)
   dans un cadre en largeur : le cadrage se fait par le haut, là où est le visage. */
.vue>img[src*="chef-en-cuisine"]{object-position:50% 9%}
.vue .legende{position:absolute;left:0;right:0;bottom:0;padding:40px 22px 18px;background:linear-gradient(180deg,transparent,rgba(20,14,8,.8));color:#fff}
.vue .legende h3,.vue .legende h2{color:#fff;margin:0 0 4px}
.fleche{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:0;border-radius:50%;background:rgba(35,38,27,.72);color:#fff;font-size:26px;line-height:1;cursor:pointer;z-index:3}
.fleche:hover{background:var(--or)}
.fleche.prec{left:10px}.fleche.suiv{right:10px}
@media(max-width:900px){.defile:not([style*="--par:1"]) .vue{flex-basis:78%}}

/* ── questions ── */
.accs{max-width:860px;margin:0 auto}
.acc{border-bottom:1px solid var(--ligne)}
.acc:first-child{border-top:1px solid var(--ligne)}
.acc summary{cursor:pointer;list-style:none;padding:20px 44px 20px 0;position:relative;font-weight:700;font-size:18px;line-height:1.4;color:var(--nuit)}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:26px;font-weight:300;color:var(--or)}
.acc[open] summary::after{content:"–"}
.acc-in{padding:0 0 22px;max-width:780px}
.s-olive .acc summary,.s-nuit .acc summary{color:#fff}

/* ── divers ── */
.cadre{position:relative;aspect-ratio:16/9;background:#ddd}
.cadre iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
form.contact{display:grid;gap:16px;max-width:560px}
form.contact label{display:grid;gap:6px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
form.contact input,form.contact textarea{font:inherit;text-transform:none;letter-spacing:0;font-weight:400;padding:12px 14px;border:1px solid var(--ligne);background:#fff;color:var(--encre);width:100%}
form.contact .btn{justify-self:start}
table{border-collapse:collapse;width:100%;margin:0 0 16px}
td,th{border-bottom:1px solid var(--ligne);padding:10px 12px;text-align:left;vertical-align:top}

/* ── pied de page ── */
.pied{background:#191b13;color:#bdb8a6;font-size:14.5px;padding:60px 0 28px}
.pied a{color:#e6cf8a;text-decoration:none}
.pied a:hover{color:#fff}
.pied-g{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px}
.pied-marque img{height:64px;width:auto;margin-bottom:18px}
.pied h2{font-family:var(--texte);font-size:11.5px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--or2);margin:0 0 14px}
.pied ul{list-style:none;margin:0;padding:0;columns:1}
.pied li{margin:0 0 7px}
.pied .petit{color:#8f8a79}
.pied-bas{margin-top:40px;padding-top:20px;border-top:1px solid rgba(240,236,220,.12);display:flex;flex-wrap:wrap;gap:8px 26px;font-size:13px;color:#8f8a79}
.pied-bas a{color:#bdb8a6}
@media(max-width:860px){.pied-g{grid-template-columns:1fr 1fr}.pied-marque{grid-column:1/-1}}
@media(max-width:520px){.pied-g{grid-template-columns:1fr}}

/* ── le panneau « Réserver » ── */
.rsv{position:fixed;inset:0;z-index:300;visibility:hidden}
.rsv:target,.rsv.ouvert{visibility:visible}
.rsv-voile{position:absolute;inset:0;background:rgba(23,19,16,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;transition:opacity .35s}
.rsv-in{position:absolute;left:0;right:0;top:0;max-height:100vh;overflow:auto;background:#f6f1e8;border-bottom:1px solid rgba(135,111,39,.35);padding:34px max(28px,calc((100vw - 1180px) / 2)) 26px;transform:translateY(-12px);opacity:0;transition:transform .45s cubic-bezier(.2,.7,.2,1),opacity .35s}
.rsv:target .rsv-voile,.rsv.ouvert .rsv-voile{opacity:1}
.rsv:target .rsv-in,.rsv.ouvert .rsv-in{transform:none;opacity:1}
.rsv-tete{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}
.rsv-tete h2{font-size:26px;color:var(--or);letter-spacing:.04em;margin:0}
.rsv-tete p{font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:#7a6d5e;margin:4px 0 0}
.rsv-x{border:1px solid rgba(135,111,39,.5);color:var(--or);font-size:11px;letter-spacing:.24em;text-transform:uppercase;padding:9px 14px;text-decoration:none}
.rsv-portes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rsv-porte{background:#fffdf9;border:1px solid rgba(135,111,39,.3);display:flex;flex-direction:column;overflow:hidden;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.rsv-porte:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(23,19,16,.16)}
.rsv-img{position:relative;aspect-ratio:4/3;background:#1f1a14;overflow:hidden}
.rsv-img img{width:100%;height:100%;object-fit:cover}
.rsv-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,19,16,0) 40%,rgba(23,19,16,.78) 100%)}
.rsv-img span{position:absolute;left:18px;top:16px;z-index:2;font-size:10px;letter-spacing:.3em;color:#f3e6c6;border:1px solid rgba(243,230,198,.6);padding:4px 8px}
.rsv-img h3{position:absolute;left:18px;right:18px;bottom:16px;z-index:2;font-size:21px;margin:0;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.45)}
.rsv-txt{padding:16px 20px 18px;display:flex;flex-direction:column;gap:12px;flex:1}
.rsv-txt p{font-size:14px;line-height:1.65;color:#5b5044;margin:0;flex:1}
.rsv-txt .btn{align-self:flex-start;font-size:11px;letter-spacing:.24em;padding:13px 18px}
.rsv-bas{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:18px;margin-top:18px}
.rsv-bas a{display:flex;flex-direction:column;justify-content:center;gap:4px;text-decoration:none;color:#1f1a14;padding:16px 22px;border:1px solid rgba(135,111,39,.5);background:#fffdf9}
.rsv-bas a:hover{border-color:var(--or)}
.rsv-bas .rsv-cadeau{border-color:var(--or);background:linear-gradient(90deg,#fff9ec 0%,#f6ead0 100%)}
.rsv-cadeau b{font-family:var(--titre);font-weight:400;font-size:17px;color:#4a3416;line-height:1.2}
.rsv-bas span{font-size:13px;color:#5b5044}
.rsv-cadeau span,.rsv-autre b{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--or)}
@media(max-width:900px){.rsv-in{top:auto;bottom:0;max-height:92vh;border-radius:18px 18px 0 0;padding:20px 18px 28px;transform:translateY(24px);border-bottom:0}
  .rsv-portes{grid-template-columns:1fr;gap:12px}.rsv-porte{flex-direction:row}.rsv-img{aspect-ratio:auto;flex:0 0 38%}.rsv-img h3{font-size:15px;left:12px;right:12px;bottom:12px}.rsv-img span{left:12px;top:10px;font-size:9px}
  .rsv-txt{padding:12px 14px 14px}.rsv-txt p{font-size:13px}.rsv-bas{grid-template-columns:1fr}.rsv-tete p{display:none}.rsv-tete h2{font-size:20px}}

@media(max-width:860px){.s{padding:52px 0}.s-ample{padding:64px 0}.ouv>.w{min-height:54vh;padding-top:110px;padding-bottom:40px}body{font-size:16.5px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.bandeau,.tete,.tiroir,.rsv,.fleche{display:none!important}.ouv>.w{min-height:0}}

/* ── le plan du domaine ── */
.plan-grand img{width:100%;height:auto}
/* v2-95 — Bertrand, 11 octobre 2026 : « la carte était interactive sur la page d'accueil, avec un mouse over, cette
   fonctionnalité a disparu ». Chaque bâtiment du plan redevient une zone (posée par site.js, en pourcentage de l'image) :
   au survol, au clavier ou au doigt, sa fiche s'affiche — son dessin en grand, son nom, ce qu'on y trouve — et un clic y mène.
   Sans script, le plan reste une image et la liste des lieux, dessous, mène aux mêmes pages. */
.plan-grand{position:relative}
.plan-zone{position:absolute;display:block;border-radius:50%;z-index:2;cursor:pointer;-webkit-tap-highlight-color:transparent}
.plan-zone::before{content:"";position:absolute;inset:-6%;border-radius:50%;background:radial-gradient(closest-side,rgba(201,162,75,.42),rgba(201,162,75,.16) 62%,rgba(201,162,75,0));opacity:0;transform:scale(.82);transition:opacity .3s ease,transform .45s cubic-bezier(.2,.7,.2,1)}
.plan-zone::after{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:var(--or2);box-shadow:0 0 0 3px rgba(255,255,255,.85),0 0 0 4px rgba(135,111,39,.35);animation:plan-point 2.6s ease-in-out infinite}
.plan-zone:hover::before,.plan-zone:focus-visible::before,.plan-zone.actif::before{opacity:1;transform:scale(1.06)}
.plan-zone:hover::after,.plan-zone:focus-visible::after,.plan-zone.actif::after{animation:none;transform:scale(1.25)}
.plan-zone:focus-visible{outline:2px solid var(--or);outline-offset:2px}
@keyframes plan-point{0%,100%{box-shadow:0 0 0 3px rgba(255,255,255,.85),0 0 0 4px rgba(135,111,39,.35)}50%{box-shadow:0 0 0 3px rgba(255,255,255,.85),0 0 0 10px rgba(135,111,39,0)}}
.plan-fiche{position:absolute;z-index:4;width:264px;max-width:62%;background:#fff;border:1px solid var(--ligne);box-shadow:0 22px 60px rgba(35,38,27,.24);padding:14px 16px 16px;pointer-events:none;opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .35s cubic-bezier(.2,.7,.2,1);text-align:left}
.plan-fiche.vu{opacity:1;transform:none}
.plan-fiche img{width:100%;aspect-ratio:4/3;object-fit:contain;background:var(--creme);margin:0 0 12px}
.plan-fiche b{display:block;font-family:var(--texte);font-weight:700;font-size:16px;line-height:1.3;color:var(--nuit)}
.plan-fiche small{display:block;margin-top:4px;font-size:13px;line-height:1.45;color:#6b6659}
.plan-fiche i{display:block;margin-top:10px;font-style:normal;font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--or)}
.plan-lieux li.actif{border-color:var(--or2);box-shadow:0 10px 30px rgba(35,38,27,.12)}
@media(max-width:700px){.plan-zone::after{width:7px;height:7px;margin:-3.5px 0 0 -3.5px}.plan-fiche{width:210px;padding:10px 12px 12px}.plan-fiche b{font-size:14.5px}}
@media(prefers-reduced-motion:reduce){.plan-zone::after{animation:none}.plan-zone::before,.plan-fiche{transition:none}}
.plan-lieux{list-style:none;margin:34px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px}
.plan-lieux li{margin:0;background:#fff;border:1px solid var(--ligne);display:flex;flex-direction:column}
.plan-lieux a{display:flex;flex-direction:column;text-decoration:none;color:var(--nuit);flex:1}
.plan-lieux img{width:100%;aspect-ratio:1/1;object-fit:contain;background:var(--creme);padding:10px}
.plan-lieux span{padding:14px 16px;font-size:14.5px;font-weight:700;line-height:1.35}
.plan-lieux a:hover span{color:var(--or)}
.plan-lieux .petit{margin:-8px 16px 14px;font-size:13px}
.plan-lieux li>div+.petit{margin-top:12px}
/* v2-96 — Bertrand, 11 octobre 2026 : « retire les pastilles sous le plan interactif qui sont redondantes ». Sur l'accueil
   (.plan-seul, posé par gabarit.php), la liste des lieux reste dans la page pour les zones du plan, sans s'afficher ;
   sans script, l'en-tête de gabarit.php la remontre. Le titre du plan et le plan se suivent de près. */
.plan-seul .plan-lieux{display:none}
.s:has(+.plan-seul){padding-bottom:0}
.plan-seul{padding-top:34px}

/* ══ v2-97 — LA PAGE D'ACCUEIL REPRISE (Bertrand, 11 octobre 2026 : « reregarde bien la page d'accueil et rends-la plus
   sexy ») ══ Tout ce qui suit ne vaut que sur l'accueil (body.accueil, posé par gabarit.php) ; aucun texte ne change.
   Le carrousel « À la une » (offre du moment et forfaits) porte son style avec lui : site/offres.php. */
/* le film d'ouverture : un bouton pour le mettre en pause — ou pour le lancer, quand le visiteur demande moins de mouvement */
.film-cmd{position:absolute;right:22px;bottom:22px;z-index:2;display:inline-flex;align-items:center;gap:10px;height:44px;min-width:44px;padding:0 14px;border:1px solid rgba(255,255,255,.5);background:rgba(20,18,10,.38);color:#fff;font-family:var(--texte);font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;line-height:1;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .2s,border-color .2s}
.film-cmd:hover{background:rgba(20,18,10,.7);border-color:#e6cf8a}
.film-cmd i{font-style:normal;font-size:13px;letter-spacing:0;width:14px;text-align:center}
.film-cmd.en-marche{padding:0;justify-content:center}
@media(max-width:700px){.film-cmd{right:14px;bottom:14px}}
@media print{.film-cmd{display:none}}

/* ══ v2-99 — DRAPEAUX, BULLE DE CONFIANCE, CHAT (Bertrand, 11 octobre 2026) ══ */
/* le choix de la langue : le drapeau de la langue affichée ; un clic ouvre les cinq */
.langue-choix{position:relative}
.langue-choix summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;padding:8px 6px;color:#f0ecdc;font-size:11.5px;font-weight:700;letter-spacing:.1em;line-height:1;-webkit-tap-highlight-color:transparent}
.langue-choix summary::-webkit-details-marker{display:none}
.langue-choix summary::after{content:"";width:6px;height:6px;margin:-3px 0 0 1px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);opacity:.75;transition:transform .2s}
.langue-choix[open] summary::after{transform:rotate(-135deg);margin-top:3px}
.langue-choix summary:hover{color:var(--or2)}
.drapeau{display:block;flex:none;width:24px;height:16px;border-radius:2px;box-shadow:0 0 0 1px rgba(255,255,255,.4)}
.langue-liste{position:absolute;right:0;top:calc(100% + 12px);z-index:5;min-width:184px;padding:6px;background:var(--nuit);border:1px solid rgba(230,207,138,.3);box-shadow:0 18px 44px rgba(0,0,0,.4)}
.outils .langue-liste a{display:flex;align-items:center;gap:12px;padding:10px 12px;font-size:14.5px;letter-spacing:.01em;color:#e9e4d2;white-space:nowrap}
.outils .langue-liste a:hover,.outils .langue-liste a:focus-visible{background:rgba(255,255,255,.07);color:#fff}
.outils .langue-liste a[aria-current]{color:var(--or2)}
@media(max-width:560px){.langue-choix summary b{display:none}.langue-choix summary{padding:8px 2px}}
@media print{.langue-choix{display:none}}
/* le bouton du film passe à gauche : le coin de droite est celui du chat */
.film-cmd{right:auto;left:22px}
@media(max-width:700px){.film-cmd{right:auto;left:14px}}
/* la petite bulle du bas de page (site/confiance.php), à gauche du bouton du chat : trois lignes qui alternent */
.confiance{position:fixed;right:92px;bottom:calc(env(safe-area-inset-bottom,0px) + 27px);z-index:58;display:flex;align-items:center;max-width:min(400px,calc(100vw - 104px));background:var(--nuit);color:#f3ecd8;border:1px solid rgba(230,207,138,.38);border-radius:999px;box-shadow:0 10px 30px rgba(35,38,27,.3);opacity:0;transform:translateX(10px);transition:opacity .45s ease,transform .45s ease}
.confiance[hidden]{display:none}
.confiance.la{opacity:1;transform:none}
.confiance.seule{right:18px;max-width:min(400px,calc(100vw - 36px))}
.confiance-in{display:grid;align-items:center;min-height:44px;margin:0;padding:8px 2px 8px 18px;border:0;background:none;color:inherit;font-family:var(--texte);text-align:left;cursor:pointer}
.confiance-in span{grid-area:1/1;font-size:13px;line-height:1.35;letter-spacing:.01em;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s}
.confiance-in span.vu{opacity:1;visibility:visible}
.confiance-in b{font-weight:700;color:#e6cf8a;white-space:nowrap}
.confiance-x{flex:none;width:34px;height:34px;margin:0 5px 0 2px;padding:0;border:0;border-radius:50%;background:none;color:#a9a48f;font-size:19px;line-height:1;cursor:pointer}
.confiance-x:hover{color:#fff;background:rgba(255,255,255,.08)}
.confiance~.moh-b .moh-p{display:none}                         /* l'invitation de Môh : la bulle la remplace */
@media(prefers-reduced-motion:reduce){.confiance,.confiance-in span{transition:none}}
@media print{.confiance{display:none}}
/* le texte d'ouverture : deux colonnes et une lettrine, comme l'édito d'un magazine ; la ligne des notes, entre deux filets */
.accueil .une+.s:not(.s-olive):not(.s-nuit):not(.s-creme):not(.s-photo){padding-top:84px}
.accueil .w>.e-xl.ctr:first-child{max-width:1000px;text-align:left}
.accueil .w>.e-xl.ctr:first-child>p:first-child{columns:2;column-gap:60px;font-size:17.5px;line-height:1.8}
.accueil .w>.e-xl.ctr:first-child>p:first-child::first-letter{float:left;font-family:var(--titre);font-size:76px;line-height:.82;padding:6px 14px 0 0;color:var(--or)}
@supports (initial-letter:2) or (-webkit-initial-letter:2){.accueil .w>.e-xl.ctr:first-child>p:first-child::first-letter{float:none;-webkit-initial-letter:2;initial-letter:2;font-size:inherit;line-height:inherit;padding:0 12px 0 0}}   /* la lettrine calée sur deux lignes, là où le navigateur sait le faire */
.accueil.l-zh .w>.e-xl.ctr:first-child>p:first-child::first-letter{float:none;-webkit-initial-letter:normal;initial-letter:normal;font:inherit;padding:0;color:inherit}
.accueil .w>.e-xl.ctr:first-child>p+p{margin:34px 0 0;padding:15px 0;border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne);text-align:center;font-size:14.5px;letter-spacing:.05em;color:var(--nuit)}
.accueil .w>.e-xl.ctr:first-child+.g{margin-top:60px}
/* les six tuiles en mosaïque : deux grandes en diagonale, quatre en hauteur */
/* (la page range ses tuiles en deux rangées de trois : la grande ouvre la première rangée et ferme la seconde) */
.accueil .g:has(>.c>.tuile){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:0}
.accueil .g:has(>.c>.tuile)+.g:has(>.c>.tuile){margin-top:14px}
.accueil .g:has(>.c>.tuile)>.c.grande{grid-column:span 2}
.accueil .tuile{min-height:470px}
.accueil .tuile h2{font-size:21px}
.accueil .c.grande>.tuile h2{font-size:27px}
/* le plan, plus large */
.accueil .plan-seul>.w{max-width:1320px}
/* les questions : leur titre à gauche, les réponses à droite, sur une bande olive */
.faq-accueil>.w{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.1fr);gap:20px 64px;align-items:start}
.faq-accueil h2{margin:14px 0 0;font-size:clamp(26px,2.9vw,36px);line-height:1.2}
.faq-accueil .accs{max-width:none;margin:0}
.faq-accueil .acc,.faq-accueil .acc:first-child{border-color:rgba(255,255,255,.28)}
.faq-accueil .acc summary::after{color:#f0dc9c}
.faq-accueil+.s{display:none}                                   /* la bande vide que le relevé avait laissée après les questions */
.accueil .faq-accueil+.s+.s.avis:not(.s-olive):not(.s-nuit):not(.s-creme){padding-top:84px}   /* après la bande olive, la bande suivante reprend son air */
/* « en bref » : les faits sur deux colonnes */
.accueil .essentiel .faits{max-width:none;display:grid;grid-template-columns:1fr 1fr;column-gap:60px;border-top:0}
.accueil .essentiel .faits>div{grid-template-columns:150px 1fr;border-bottom:0;border-top:1px solid var(--ligne)}
@media(max-width:1000px){
  .accueil .w>.e-xl.ctr:first-child>p:first-child{columns:1}
  .accueil .g:has(>.c>.tuile){grid-template-columns:1fr 1fr}
  .accueil .tuile{min-height:340px}
  .accueil .c.grande>.tuile h2{font-size:23px}
  .faq-accueil>.w{grid-template-columns:1fr}.faq-accueil h2{margin:0 0 8px}
  .accueil .essentiel .faits{grid-template-columns:1fr}
}
@media(max-width:600px){
  .accueil .g:has(>.c>.tuile){grid-template-columns:1fr}
  .accueil .g:has(>.c>.tuile)>.c.grande{grid-column:auto}
  .accueil .tuile{min-height:300px}
  .accueil .w>.e-xl.ctr:first-child>p:first-child::first-letter{font-size:62px}
  .accueil .essentiel .faits>div{grid-template-columns:1fr}
}

/* ── la demande de devis des professionnels ── */
.pro{max-width:860px;margin:0 auto}
.pro-tete{text-align:center;margin-bottom:30px}
.pro-tete h2::after{content:"";display:block;width:54px;height:1px;background:var(--or2);margin:20px auto 0}
.pro-f{background:#fff;border:1px solid var(--ligne);padding:34px 36px 30px}
.pro-g{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px;margin-bottom:22px}
.pro-large,.pro-coche{grid-column:1/-1}
.pro label{display:grid;gap:7px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--or)}
.pro abbr{text-decoration:none;color:#a33}
.pro input[type=text],.pro input[type=email],.pro input[type=tel],.pro select,.pro textarea{font:inherit;font-size:16.5px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--encre);padding:12px 14px;border:1px solid var(--ligne);background:var(--creme);width:100%;border-radius:0}
.pro input:focus,.pro select:focus,.pro textarea:focus{outline:2px solid var(--or2);outline-offset:0;background:#fff}
.pro textarea{resize:vertical;line-height:1.55}
.pro-choix{border:0;margin:0 0 22px;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.pro-choix legend{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--or);margin-bottom:10px;padding:0}
.pro-choix label,.pro label.pro-coche{display:inline-flex;align-items:center;gap:0;cursor:pointer;text-transform:none;letter-spacing:0;font-size:15.5px;font-weight:400;color:var(--encre)}
.pro-choix input{position:absolute;opacity:0}
.pro-choix span{border:1px solid var(--ligne);padding:9px 16px;background:var(--creme);transition:background .2s,color .2s,border-color .2s}
.pro-choix input:checked+span{background:var(--olive2);border-color:var(--olive2);color:#fff}
.pro-choix input:focus-visible+span{outline:2px solid var(--or2);outline-offset:2px}
.pro label.pro-coche{gap:10px}
.pro label.pro-coche input{width:18px;height:18px;accent-color:var(--or)}
.pro-bas{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.pro-bas .petit{margin:0;flex:1;min-width:220px}
.pro-erreur{background:#fbeeee;border-left:3px solid #a33;padding:12px 16px;color:#7a1f1f;margin:0 0 20px}
.pro-merci{background:#fff;border:1px solid var(--ligne);border-top:3px solid var(--or2);padding:40px 36px;text-align:center}
.pro-merci h2,.pro-merci h3{margin-bottom:12px}
.pro-miel{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
[hidden]{display:none!important}
@media(max-width:700px){.pro-g{grid-template-columns:1fr}.pro-f{padding:24px 18px}}

/* ── la page Presse (blocs cdc-… du site actuel) ── */
.cdc-intro{text-align:center;max-width:820px;margin:0 auto 46px}
.cdc-kicker{font-size:11.5px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--or);margin:0 0 12px}
.cdc-lead{font-size:19px;line-height:1.7}
.cdc-stats{display:flex;justify-content:center;gap:46px;flex-wrap:wrap;margin-top:26px}
.cdc-stat{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#6b6659;display:flex;flex-direction:column;align-items:center;gap:4px}
.cdc-stat b{font-family:var(--titre);font-weight:400;font-size:40px;letter-spacing:0;color:var(--or);line-height:1}
.cdc-section-h{margin:54px 0 24px;text-align:center}
.cdc-vgrid,.cdc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.cdc-vcard,.cdc-card{background:#fff;border:1px solid var(--ligne);display:flex;flex-direction:column;text-decoration:none;color:var(--encre);height:100%;transition:transform .35s,box-shadow .35s}
a.cdc-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(23,19,16,.14);color:var(--encre)}
.cdc-grid>div{display:flex;flex-direction:column}
.cdc-vplay{position:relative;display:block;background:#1a1410}
.cdc-vplay img{width:100%;aspect-ratio:16/9;object-fit:cover;opacity:.9}
.cdc-vbtn{position:absolute;left:50%;top:50%;width:62px;height:62px;margin:-31px 0 0 -31px;border-radius:50%;background:rgba(35,38,27,.78)}
.cdc-vbtn::after{content:"";position:absolute;left:25px;top:19px;border:12px solid transparent;border-left:18px solid #fff;border-right:0}
.cdc-shot{background:#f3efe4;border-bottom:1px solid var(--ligne)}
.cdc-shot-bar{display:flex;align-items:center;gap:6px;padding:8px 12px;font-size:11.5px;color:#7a6d5e;letter-spacing:.04em}
.cdc-shot-bar i{width:8px;height:8px;border-radius:50%;background:#cfc7b1;display:block}
.cdc-shot-bar i:nth-child(3){margin-right:8px}
.cdc-shot-img{position:relative}
.cdc-shot-img img{width:100%;aspect-ratio:8/5;object-fit:cover;object-position:top}
.cdc-badge{position:absolute;left:12px;bottom:12px;background:var(--nuit);color:#e6cf8a;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;padding:5px 10px}
.cdc-card-body{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1}
.cdc-meta{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--or);margin:0 0 8px}
.cdc-title{font-family:var(--texte);font-weight:700;font-size:18px;line-height:1.35;margin:0 0 8px;color:var(--nuit)}
.cdc-desc{font-size:15px;line-height:1.55;color:#5b5044;margin:0 0 14px}
.cdc-more{margin-top:auto;font-size:11.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--or);text-decoration:none}
.cdc-more--print{color:#8f8a79}
.cdc-contact{margin-top:64px;text-align:center;background:var(--nuit);color:#e9e4d2;padding:48px 24px}
.cdc-contact h2{color:#fff}
@media(max-width:900px){.cdc-vgrid,.cdc-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.cdc-vgrid,.cdc-grid{grid-template-columns:1fr}}

/* ── v2-78 : colonnes étroites, foire aux questions, cinq langues ── */
.c{container-type:inline-size}
@container (max-width:250px){h2,h3,.t2,.t3{font-size:16.5px;line-height:1.3}.t2{font-size:15px}}
@container (max-width:340px){h2,.t2{font-size:21px}}
.ouv{background:linear-gradient(160deg,#3b3f2c,#1d1f15)}
.sur{font-size:11.5px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--or);margin:0 0 12px}
.faq-tete{padding-top:calc(var(--tete) + 40px);padding-bottom:54px}
.sur-photo .faq-tete{padding-top:76px}
.faq-puces{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin:26px 0 0}
.faq-puces a{font-size:13.5px;text-decoration:none;color:var(--encre);border:1px solid var(--ligne);padding:8px 16px;background:#fff;transition:border-color .2s,color .2s}
.faq-puces a:hover{border-color:var(--or);color:var(--or)}
.faq-rubrique{padding:70px 0 0}
.faq-rubrique+.s-nuit{margin-top:70px}
.acc-in .btn.fil{color:var(--or);font-size:11.5px}
.langues a{padding:6px 5px}
@media(max-width:700px){.langues a:not([aria-current]){display:none}.langues{position:relative}}
.tiroir-langues{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 14px;font-size:14px}
.tiroir-langues a{color:#d9d4c2;text-decoration:none}
.tiroir-langues a[aria-current]{color:var(--or2)}

/* ── le bloc « Le Pressoir du Château » posé par cdc-restaurant.js : en écran étroit, sa mosaïque de photos
      débordait sur le texte du brunch (les rangées prenaient la hauteur naturelle des photos) ── */
main #cdcr .cdcr-mos{grid-template-rows:minmax(0,1fr) minmax(0,1fr)}
main #cdcr .cdcr-mos img{min-height:0;min-width:0}
main #cdcr img{max-width:100%}
main #cdcr h1,main #cdcr h2,main #cdcr h3{text-wrap:balance}
h1,h2,h3,h4,summary,.btn{overflow-wrap:break-word}
.l-de h1,.l-de h2,.l-de h3{hyphens:auto;-webkit-hyphens:auto}
.btn{max-width:100%;white-space:normal}

/* ── v2-83 : la page « Nos espaces bien-être » (spa.py) et les listes de tarifs remplies par le catalogue (site/prix.php) ── */
.surtitre{font-size:12px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--or);margin:0 0 12px}
.s-olive .surtitre,.s-nuit .surtitre{color:#f0dc9c}
.tarifs{list-style:none;padding:0;margin:16px 0 20px;border-top:1px solid var(--ligne)}
.tarifs li{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:11px 0;margin:0;border-bottom:1px solid var(--ligne)}
.tarifs li b{white-space:nowrap;color:var(--or);font-weight:700}
.carte .tarifs{padding-left:0}
.carte .tarifs li{padding-left:0;padding-right:0}
.carte .tarifs~p:last-child:not(.petit){margin-top:auto}
.s-olive .carte:not(.olive) .btn.trace{color:var(--or);border-color:var(--or)}
.s-olive .carte:not(.olive) .btn.trace:hover{background:var(--or);color:#fff}
main .s.spa-chap{padding-top:76px}
.spa-rangee{align-items:center;margin:56px 0}
.spa-rangee .defile{margin:0}
.spa-rangee h3{margin:0 0 6px}
.spa-rangee .petit{margin:0 0 14px;letter-spacing:.04em}
.spa-heures{border-left:3px solid var(--or2);padding:4px 0 4px 16px}
.spa-tuiles .tuile{min-height:320px}
.spa-tuiles .tuile p{margin:0;font-size:15px}
.ouv .chapo{max-width:640px;margin:14px 0 0;text-shadow:0 2px 18px rgba(0,0,0,.4)}
@media(max-width:900px){.spa-rangee{margin:40px 0}.spa-rangee>.c:has(.defile){order:-1}.tarifs li{gap:12px}}
@media(max-width:860px){main .s.spa-chap{padding-top:52px}}

/* ── v2-89 — « L'essentiel en bref » : les faits d'un hébergement (ou du domaine), puis ses questions ── */
.essentiel .etroit p{margin:0 0 14px}
.essentiel .chapo{font-size:19px}
.ess-fort{font-weight:700;color:var(--or)}
.faits{max-width:860px;margin:34px auto 0;border-top:1px solid var(--ligne)}
.faits>div{display:grid;grid-template-columns:230px 1fr;gap:18px;padding:13px 0;border-bottom:1px solid var(--ligne)}
.faits dt{font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:12px;line-height:1.5;color:var(--or);padding-top:4px}
.l-zh .faits dt{letter-spacing:.08em;font-size:13.5px}
.faits dd{margin:0}
.essentiel h3.ctr{margin:46px 0 18px}
.ess-liens{list-style:none;margin:30px auto 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 28px;justify-content:center;font-size:14.5px}
.ess-liens li{margin:0}
@media(max-width:640px){.faits>div{grid-template-columns:1fr;gap:2px;padding:11px 0}.faits dt{padding-top:0}}

/* ── v2-93 — « Ils en parlent » : la note Google et des avis cités mot pour mot (fabriqué par avis.py) ── */
.avis .sur{margin-bottom:10px}
.avis-note{text-align:center;margin:26px 0 40px}
.avis-chiffre{font-family:var(--titre);font-size:58px;line-height:1;color:var(--nuit)}
.avis-chiffre small{font-family:var(--texte);font-size:17px;color:#6b6659;margin-left:4px;letter-spacing:.04em}
.avis-etoiles{color:var(--or2);letter-spacing:.2em;font-size:17px;line-height:1}
.avis-note .avis-etoiles{font-size:21px;margin:12px 0 10px}
.avis-note .petit{margin:0;letter-spacing:.04em}
.avis-g{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap);align-items:stretch}
.avis-g.par-2{grid-template-columns:repeat(2,1fr);max-width:900px;margin-left:auto;margin-right:auto}
.avis-carte{margin:0;background:#fff;border:1px solid var(--ligne);border-top:2px solid var(--or2);padding:28px 26px 24px;display:flex;flex-direction:column}
.avis-carte .avis-5{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.avis-carte blockquote{margin:16px 0 22px;padding:0;border:0;font-family:Georgia,'Times New Roman',serif;font-size:17.5px;line-height:1.68;color:var(--encre);flex:1}
.avis-carte blockquote p{margin:0 0 12px}
.avis-carte blockquote p:last-child{margin-bottom:0}
.avis-carte blockquote .avis-coupe{color:#8f8a79;font-family:var(--texte);font-size:15px;letter-spacing:.1em}
.avis-carte figcaption{border-top:1px solid var(--ligne);padding-top:14px;font-size:13.5px;line-height:1.5;color:#6b6659}
.avis-nom{font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:12px;color:var(--or)}
.avis-ext{font-style:italic}
.avis-pied{max-width:760px;margin:34px auto 0;text-align:center}
.avis-pied .petit{margin:0 0 20px}
@media(max-width:1000px){.avis-g,.avis-g.par-2{grid-template-columns:1fr;max-width:640px;margin-left:auto;margin-right:auto}.avis-chiffre{font-size:48px}.avis-carte{padding:24px 20px 20px}.avis-carte blockquote{font-size:17px}}

/* ── v2-93 — « Comment venir » ── */
.venir .faits{margin-top:30px}
.venir h2+p{margin-top:0}
.venir .etroit+h2{margin-top:44px}
.venir .c h2{font-size:26px;margin-top:34px}
.venir .c h2:first-child{margin-top:0}
.venir ul{padding-left:20px;margin:0 0 16px}
.venir li{margin:0 0 8px}
.venir-btn{margin-top:38px;display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
