
/* === Polices self-hostées (woff2 variable, subset latin) === */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/inter-latin.woff2') format('woff2');}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400 900;font-display:swap;src:url('fonts/playfair-latin.woff2') format('woff2');}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400 900;font-display:swap;src:url('fonts/playfair-italic-latin.woff2') format('woff2');}
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.z-10{z-index:10}.z-20{z-index:20}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-7{margin-bottom:1.75rem}.ml-auto{margin-left:auto}.mt-1{margin-top:.25rem}.mt-3{margin-top:.75rem}.mt-6{margin-top:1.5rem}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-11{height:2.75rem}.h-16{height:4rem}.h-6{height:1.5rem}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-14{width:3.5rem}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:42rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-lg{max-width:32rem}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-px{gap:1px}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:1rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-beige\/5{border-color:hsla(39,35%,92%,.05)}.border-brun\/10{border-color:rgba(123,63,32,.1)}.bg-beige{--tw-bg-opacity:1;background-color:rgb(242 237 228/var(--tw-bg-opacity,1))}.bg-beige-mid{--tw-bg-opacity:1;background-color:rgb(230 221 208/var(--tw-bg-opacity,1))}.bg-beige\/15{background-color:hsla(39,35%,92%,.15)}.bg-brun{--tw-bg-opacity:1;background-color:rgb(123 63 32/var(--tw-bg-opacity,1))}.bg-noir{--tw-bg-opacity:1;background-color:rgb(28 18 10/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.object-cover{-o-object-fit:cover;object-fit:cover}.p-7{padding:1.75rem}.p-8{padding:2rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-7{padding-top:1.75rem;padding-bottom:1.75rem}.pb-16{padding-bottom:4rem}.pb-8{padding-bottom:2rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.text-center{text-align:center}.font-sans{font-family:Inter,system-ui,sans-serif}.font-serif{font-family:Playfair Display,Georgia,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-\[1\.1\]{line-height:1.1}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-widest{letter-spacing:.1em}.text-beige{--tw-text-opacity:1;color:rgb(242 237 228/var(--tw-text-opacity,1))}.text-beige\/25{color:hsla(39,35%,92%,.25)}.text-beige\/30{color:hsla(39,35%,92%,.3)}.text-beige\/40{color:hsla(39,35%,92%,.4)}.text-beige\/50{color:hsla(39,35%,92%,.5)}.text-beige\/55{color:hsla(39,35%,92%,.55)}.text-beige\/60{color:hsla(39,35%,92%,.6)}.text-beige\/65{color:hsla(39,35%,92%,.65)}.text-beige\/70{color:hsla(39,35%,92%,.7)}.text-beige\/75{color:hsla(39,35%,92%,.75)}.text-brun{--tw-text-opacity:1;color:rgb(123 63 32/var(--tw-text-opacity,1))}.text-dore{--tw-text-opacity:1;color:rgb(197 160 107/var(--tw-text-opacity,1))}.text-dore\/70{color:hsla(35,44%,60%,.7)}.text-noir{--tw-text-opacity:1;color:rgb(28 18 10/var(--tw-text-opacity,1))}.text-noir\/60{color:rgba(28,18,10,.6)}.text-noir\/70{color:rgba(28,18,10,.7)}.text-pierre{--tw-text-opacity:1;color:rgb(158 142 122/var(--tw-text-opacity,1))}.text-pierre\/40{color:hsla(33,16%,55%,.4)}.text-pierre\/45{color:hsla(33,16%,55%,.45)}.text-pierre\/60{color:hsla(33,16%,55%,.6)}.opacity-55{opacity:.55}.opacity-90{opacity:.9}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-sm,.shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.hover\:text-beige\/90:hover{color:hsla(39,35%,92%,.9)}.hover\:text-dore:hover{--tw-text-opacity:1;color:rgb(197 160 107/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:text-left{text-align:left}}@media (min-width:768px){.md\:col-span-5{grid-column:span 5/span 5}.md\:col-span-7{grid-column:span 7/span 7}.md\:mb-16{margin-bottom:4rem}.md\:block{display:block}.md\:inline-block{display:inline-block}.md\:flex{display:flex}.md\:h-14{height:3.5rem}.md\:w-1\/2{width:50%}.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-10{gap:2.5rem}.md\:p-10{padding:2.5rem}.md\:p-12{padding:3rem}.md\:px-14{padding-left:3.5rem;padding-right:3.5rem}.md\:py-20{padding-top:5rem;padding-bottom:5rem}.md\:py-32{padding-top:8rem;padding-bottom:8rem}.md\:text-left{text-align:left}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-\[2\.6rem\]{font-size:2.6rem}.md\:text-\[2\.8rem\]{font-size:2.8rem}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}}

/* === Custom styles === */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { background-color: #F2EDE4; color: #1C120A; font-family: 'Inter', sans-serif; -webkit-font-smoothing: antialiased; }

/* ---- Space card images ---- */
.espace-photo { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }

/* ---- Mosaïque bento espaces ---- */
.espace-mosaic { position: relative; display: grid; gap: 4px; overflow: hidden; }
.espace-mosaic .espace-photo { transition: transform 0.7s ease; }
.espace-block:hover .espace-mosaic .espace-photo { transform: scale(1.04); }

/* Hero (Le Restaurant) : 1 grande à gauche + 2 empilées à droite */
.espace-mosaic--hero {
  grid-template-columns: 1.8fr 1fr;
  grid-template-rows: 1fr 1fr;
  aspect-ratio: 21 / 9;          /* grande case ≈ 1.5 (restaurant-3), vignettes ≈ 1.7 */
}
.espace-mosaic--hero .espace-photo:nth-child(1) { grid-row: 1 / 3; grid-column: 1; }
.espace-mosaic--hero .espace-photo:nth-child(2) { grid-row: 1; grid-column: 2; }
.espace-mosaic--hero .espace-photo:nth-child(3) { grid-row: 2; grid-column: 2; }

/* Compact (Caveau, Salon) : 1 grande + 2 petites côte-à-côte en dessous */
.espace-mosaic--compact {
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 2fr 1fr;
  height: 340px;
}
.espace-mosaic--compact .espace-photo:nth-child(1) { grid-row: 1; grid-column: 1 / 3; }
.espace-mosaic--compact .espace-photo:nth-child(2) { grid-row: 2; grid-column: 1; }
.espace-mosaic--compact .espace-photo:nth-child(3) { grid-row: 2; grid-column: 2; }

/* Duo (Salon) : 1 grande à gauche + 1 photo à droite */
.espace-mosaic--duo {
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr;
  aspect-ratio: 13 / 5;          /* 2 cases ≈ 1.3, compromis paysage à mi-largeur */
}
.espace-mosaic--duo .espace-photo:nth-child(1) { grid-column: 1; }
.espace-mosaic--duo .espace-photo:nth-child(2) { grid-column: 2; }

/* Overlay tag/capacité en bas de la mosaïque */
.espace-mosaic-overlay {
  position: absolute; left: 0; right: 0; bottom: 0;
  padding: 1rem 1.4rem;
  display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem;
  background: linear-gradient(to top, rgba(28,18,10,0.9) 0%, rgba(28,18,10,0.4) 60%, transparent 100%);
  pointer-events: none;
  z-index: 2;
}

@media (max-width: 768px) {
  .espace-mosaic--hero {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1.5fr 1fr;
    aspect-ratio: 1 / 1;
  }
  .espace-mosaic--hero .espace-photo:nth-child(1) { grid-row: 1; grid-column: 1 / 3; }
  .espace-mosaic--hero .espace-photo:nth-child(2) { grid-row: 2; grid-column: 1; }
  .espace-mosaic--hero .espace-photo:nth-child(3) { grid-row: 2; grid-column: 2; }
  .espace-mosaic--compact, .espace-mosaic--duo { aspect-ratio: 5 / 2; }
}

/* ---- Buttons ---- */
.btn {
  display: inline-block; font-family: 'Inter', sans-serif; font-weight: 500;
  letter-spacing: 0.1em; text-transform: uppercase; font-size: 0.7rem;
  padding: 0.9rem 2rem; cursor: pointer; border: none;
  transition: background-color 0.2s, color 0.2s, border-color 0.2s;
  text-decoration: none; text-align: center;
}
.btn-primary   { background: #7B3F20; color: #F2EDE4; }
.btn-primary:hover { background: #5C2D14; }
.btn-ghost-light {
  background: transparent; color: rgba(242,237,228,0.75);
  border: 1px solid rgba(242,237,228,0.35);
}
.btn-ghost-light:hover { border-color: #F2EDE4; color: #F2EDE4; background: rgba(242,237,228,0.08); }
.btn-ghost-dark {
  background: transparent; color: #7B3F20;
  border: 1px solid #7B3F20;
}
.btn-ghost-dark:hover { background: #7B3F20; color: #F2EDE4; }

/* ---- Form ---- */
.field-label { display: block; color: rgba(242,237,228,0.45); font-size: 0.65rem; letter-spacing: 0.18em; text-transform: uppercase; margin-bottom: 0.45rem; font-family: 'Inter', sans-serif; }
.field {
  width: 100%; background: rgba(242,237,228,0.07); border: 1px solid rgba(242,237,228,0.2);
  color: #F2EDE4; font-family: 'Inter', sans-serif; font-size: 0.875rem;
  padding: 0.85rem 1rem; outline: none; transition: border-color 0.2s;
  appearance: none; -webkit-appearance: none;
}
.field::placeholder { color: rgba(242,237,228,0.3); }
.field:focus { border-color: #C5A06B; }
.field option { background: #2A1A0E; color: #F2EDE4; }

/* ---- Animations ---- */
.reveal { opacity: 0; transform: translateY(22px); transition: opacity 0.65s ease, transform 0.65s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); }

/* ---- Misc ---- */
.divider { width: 40px; height: 1px; background: #C5A06B; display: inline-block; }
.tag { font-family: 'Inter', sans-serif; font-size: 0.65rem; letter-spacing: 0.25em; text-transform: uppercase; }

/* ---- Lock scroll horizontal (anti swipe latéral mobile / iOS) ---- */
html, body { max-width: 100%; overflow-x: hidden; overscroll-behavior-x: none; }

/* ---- Sticky Nav ---- */
body { padding-top: 58px; }
#priv-sticky-nav {
  position: fixed; top: 0; left: 0; right: 0; width: 100%; height: 58px;
  background: rgba(242,237,228,0.96); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(123,63,32,0.14);
  display: flex; align-items: center; justify-content: center; gap: 2px;
  z-index: 9999; box-shadow: 0 2px 20px rgba(28,18,10,0.07);
}
#priv-sticky-nav a {
  font-family: 'Inter', sans-serif; font-size: 0.68rem; font-weight: 600;
  letter-spacing: 0.1em; text-transform: uppercase; color: rgba(28,18,10,0.6);
  text-decoration: none; padding: 7px 14px; border-radius: 40px;
  transition: all 0.2s ease; white-space: nowrap;
}
#priv-sticky-nav a:hover { background: rgba(123,63,32,0.1); color: #7B3F20; }
#priv-sticky-nav a.active { color: rgba(28,18,10,0.85); background: rgba(123,63,32,0.12); }
#priv-sticky-nav a.nav-cta { background: #7B3F20; color: #F2EDE4; margin-left: 6px; }
#priv-sticky-nav a.nav-cta:hover { background: #5C2D14; }
.priv-nav-anchor { scroll-margin-top: 70px; }
#priv-sticky-nav .nav-lbl-short { display: none; }
@media (max-width: 700px) {
  #priv-sticky-nav { gap: 0; padding: 0 6px; }
  #priv-sticky-nav a { font-size: 0.6rem; padding: 6px 8px; letter-spacing: 0.07em; }
  #priv-sticky-nav a.nav-cta { margin-left: 2px; }
  #priv-sticky-nav .nav-lbl-full { display: none; }
  #priv-sticky-nav .nav-lbl-short { display: inline; }
}

/* ---- Stats bar ---- */
.statsbar {
  background: #0f0905; position: relative; overflow: hidden;
}
.statsbar::before, .statsbar::after {
  content: ''; position: absolute; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(197,160,107,0.45) 25%, rgba(197,160,107,0.45) 75%, transparent 100%);
}
.statsbar::before { top: 0; }
.statsbar::after  { bottom: 0; }
.statsbar-inner {
  display: grid; grid-template-columns: repeat(4, 1fr); max-width: 100%;
}
.statsbar-item {
  padding: 32px 24px; text-align: center; position: relative;
  display: flex; flex-direction: column; align-items: center; gap: 8px;
}
.statsbar-item + .statsbar-item::before {
  content: ''; position: absolute; left: 0; top: 20%; bottom: 20%; width: 1px;
  background: linear-gradient(180deg, transparent, rgba(197,160,107,0.2) 50%, transparent);
}
.statsbar-ornament {
  display: block; width: 24px; height: 1px; margin-bottom: 4px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
}
.statsbar-num {
  font-family: 'Playfair Display', Georgia, serif; font-size: clamp(2rem, 3.5vw, 2.8rem);
  font-weight: 400; font-style: italic; color: #ffffff; line-height: 1; letter-spacing: -0.01em;
}
.statsbar-label {
  font-family: 'Inter', sans-serif; font-size: 0.62rem; letter-spacing: 0.22em;
  text-transform: uppercase; color: rgba(197,160,107,0.8); line-height: 1.4;
}
@media (max-width: 700px) {
  .statsbar-inner { grid-template-columns: repeat(2, 1fr); }
  .statsbar-item { padding: 24px 16px; }
  .statsbar-item:nth-child(3)::before { display: none; }
}

/* ---- Galerie Carrousel ---- */
.galerie-carousel { position: relative; overflow: hidden; }
.galerie-track {
  display: flex; gap: 12px;
  overflow-x: auto; overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
  padding: 0 calc((100vw - min(1152px, 100vw - 48px)) / 2);
  scrollbar-width: none;
}
.galerie-track::-webkit-scrollbar { display: none; }

.galerie-slide {
  flex: 0 0 auto;
  width: clamp(280px, 70vw, 720px);
  height: 460px;
  scroll-snap-align: center;
  margin: 0;
  overflow: hidden;
  background: #1a0e06;
  position: relative;
}
.galerie-slide img {
  width: 100%; height: 100%;
  object-fit: cover; object-position: center;
  display: block;
  transition: transform 0.7s ease;
}
.galerie-slide:hover img { transform: scale(1.03); }
.galerie-slide--portrait { width: clamp(220px, 50vw, 480px); }

/* Façade vidéo réutilisable (vidéo locale, chargée au clic) */
.video-facade {
  position: relative;
  aspect-ratio: 16 / 9;
  background: #1a0e06;
  overflow: hidden;
}
.video-facade-btn {
  width: 100%; height: 100%;
  padding: 0; border: 0; margin: 0;
  cursor: pointer; display: block;
  background: #1a0e06; position: relative;
}
.video-facade-btn img {
  width: 100%; height: 100%;
  object-fit: cover; object-position: center;
  display: block; transition: transform 0.7s ease;
}
.video-facade-btn:hover img { transform: scale(1.03); }
.video-facade-play {
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 76px; height: 76px; border-radius: 50%;
  background: rgba(28,18,10,0.72);
  color: #F2EDE4; font-size: 1.6rem;
  display: flex; align-items: center; justify-content: center;
  padding-left: 6px;
  box-shadow: 0 4px 18px rgba(0,0,0,0.4);
  transition: background-color 0.25s, transform 0.25s;
  pointer-events: none;
}
.video-facade-btn:hover .video-facade-play {
  background: #C5A06B;
  transform: translate(-50%, -50%) scale(1.06);
}
.video-facade video { width: 100%; height: 100%; object-fit: cover; display: block; background: #1a0e06; }

/* Section #atouts — grille vidéo / contenu (CSS custom : classes gap-* absentes du build) */
.atouts-grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; }
.atouts-reasons > * + * { margin-top: 2.25rem; }
@media (min-width: 768px) {
  .atouts-grid {
    grid-template-columns: 1fr 1fr;
    column-gap: 5.5rem;
    align-items: start;
  }
}

@media (max-width: 768px) {
  .galerie-slide { height: 360px; width: 84vw; }
  .galerie-slide--portrait { width: 64vw; }
  .galerie-track { gap: 8px; padding: 0 8vw; }
}

.galerie-arrow {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 48px; height: 48px;
  background: rgba(242,237,228,0.95);
  color: #1C120A;
  border: none; border-radius: 50%;
  font-size: 1.4rem; line-height: 1;
  cursor: pointer; z-index: 5;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 16px rgba(0,0,0,0.25);
  transition: background-color 0.2s, transform 0.2s;
  font-family: 'Playfair Display', Georgia, serif;
  padding: 0;
}
.galerie-arrow:hover { background: #C5A06B; color: #fff; transform: translateY(-50%) scale(1.05); }
.galerie-arrow--prev { left: 16px; }
.galerie-arrow--next { right: 16px; }
@media (max-width: 768px) {
  .galerie-arrow { display: none; }
}

/* ---- Logo Marquee ---- */
.marquee-outer { overflow: hidden; -webkit-mask-image: linear-gradient(to right, transparent 0%, black 8%, black 92%, transparent 100%); mask-image: linear-gradient(to right, transparent 0%, black 8%, black 92%, transparent 100%); }
.marquee-track { display: flex; align-items: center; width: max-content; animation: marquee-scroll 40s linear infinite; }
.marquee-track:hover { animation-play-state: paused; cursor: default; }
.marquee-item { display: flex; align-items: center; padding: 0 56px; flex-shrink: 0; }
.marquee-logo { height: 26px; width: auto; max-width: 140px; filter: brightness(0) invert(1); opacity: 0.85; transition: opacity 0.25s ease; object-fit: contain; display: block; }
.marquee-logo:hover { opacity: 1; }
.marquee-logo-tall { height: 36px; }
.marquee-sep { width: 1px; height: 24px; background: rgba(255,255,255,0.08); flex-shrink: 0; }
.marquee-text-logo { font-family: 'Inter', sans-serif; font-size: 0.78rem; font-weight: 600; letter-spacing: 0.05em; color: rgba(255,255,255,0.85); white-space: nowrap; transition: color 0.25s; user-select: none; }
.marquee-text-logo:hover { color: rgba(255,255,255,1); }
@keyframes marquee-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ---- Footer (copié de wineyouwant-club-lp) ---- */
#footer { background: #443a36; color: #fff; font-weight: 300; padding: 60px 20px; font-family: 'Inter', sans-serif; }
#footer a, #footer a:visited, #footer a:link { color: #fff; text-decoration: none; }
#footer a:hover { text-decoration: underline; color: #fff; }
#footer .titre { font-size: 2rem; font-weight: 500; padding-bottom: 1.8rem; font-family: 'Playfair Display', Georgia, serif; }
#footer ul { list-style: none; padding: 0; margin: 0; }
#footer ul li { padding-bottom: 1.5rem; }
#footer ul li:last-child { padding-bottom: 0; }
.footer_top { display: flex; justify-content: space-between; max-width: 1200px; margin: 0 auto; }
.footer_top > div { padding: 0 20px; flex: 1; }
.flogo img { height: auto; max-height: 90px; width: auto; }
.fsocial ul { display: flex; margin: 20px -8px 0; padding: 0; }
.fsocial ul li { padding: 0 8px; }
.footer_gm { padding-top: 25px; display: flex; gap: 15px 0; flex-wrap: wrap; }
.footer_gm > div { flex: 0 0 100%; }
.footer_gm a { display: flex; align-items: center; font-size: 16px; gap: 15px; }
.footer_gm .logo { line-height: 0; }
.footer_gm .logo img { height: 55px; width: auto; }
.footer_bottom { border-top: 1px solid #665d58; max-width: 1200px; margin: 30px auto 0; padding-top: 25px; text-align: center; }
.footer_bottom ul { list-style: none; padding: 0; margin: 0; }
.footer_bottom ul li { display: inline-block; padding-bottom: 0; }
.footer_bottom ul li:after { content: " -"; padding: 0 10px; }
.footer_bottom ul li:last-child:after { display: none; }
.footer_bottom .copy { font-size: 14px; margin-top: 15px; }
@media (max-width: 768px) {
  #footer { padding: 40px 20px; }
  .footer_top { display: block; }
  .footer_top > div { padding: 5px 0; }
  #footer .titre { padding-bottom: 1rem; font-size: 1.5rem; padding-top: 20px; }
  #footer ul { display: flex; flex-wrap: wrap; gap: 0 1rem; padding: 0 0 5px; }
  #footer ul li { padding-bottom: 0.6rem; }
  .flogo img { max-height: 70px; }
  .fsocial ul { padding: 0 !important; margin: 10px 0 0; }
  .footer_bottom ul { display: flex; justify-content: center; flex-wrap: wrap; gap: 4px 1.2rem; }
  .footer_bottom ul li:after { display: none; }
}
