:root{
  /* Luxe palette */
  --bg:#14060a;
  --bg2:#0b0507;
  --ink:#fbf7f1; /* blanc nacré */
  --muted:rgba(251,247,241,.74);
  --line:rgba(255,255,255,.10);
  --gold:#d7b36a; /* doré luxe */
  --gold2:#f2d7a2;
  --wine:#5b0f1a; /* bordeaux */
  --wine2:#2a060e;
  --glass: rgba(255,255,255,.055);
  --shadow: 0 30px 120px rgba(0,0,0,.60);
  --radius: 22px;
  --max: 1200px;
  --fontDisplay: "Cinzel", serif; /* remplace par Citizel si tu l’as */
  --fontText: "Inter", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  --ease: cubic-bezier(.2,.75,.2,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--fontText);
  color:var(--ink);
  background:
    radial-gradient(900px 650px at 18% 20%, rgba(215,179,106,.12), transparent 60%),
    radial-gradient(900px 650px at 80% 35%, rgba(91,15,26,.22), transparent 62%),
    linear-gradient(180deg, var(--bg), var(--bg2));
  overflow-x:hidden;
}
a{color:inherit}
p{line-height:1.65}
.container{width:min(var(--max), calc(100% - 40px)); margin-inline:auto}

/* Ambient FX */
.fx{position:fixed; inset:0; z-index:-3; pointer-events:none}
.fx__vignette{
  position:absolute; inset:0;
  background: radial-gradient(circle at 40% 10%, rgba(0,0,0,.25), rgba(0,0,0,.86) 72%);
}
.fx__glow{
  position:absolute; inset:-20%;
  background:
    radial-gradient(900px 600px at 30% 15%, rgba(215,179,106,.16), transparent 60%),
    radial-gradient(900px 600px at 70% 55%, rgba(91,15,26,.22), transparent 62%),
    radial-gradient(1200px 800px at 50% 95%, rgba(215,179,106,.10), transparent 66%);
  filter: blur(18px);
  opacity:.95;
  animation: drift 10s var(--ease) infinite alternate;
}
@keyframes drift{
  from{transform: translate3d(-10px,-8px,0) scale(1.02)}
  to{transform: translate3d(12px,10px,0) scale(1.06)}
}
.fx__grid{
  position:absolute; inset:0;
  background:
    linear-gradient(to right, rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 90px 90px;
  mask-image: radial-gradient(circle at 50% 20%, rgba(0,0,0,.95), transparent 70%);
  opacity:.07;
}
.fx__grain{
  position:absolute; inset:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E");
  mix-blend-mode:overlay;
  opacity:.11;
}

/* particles */
#particles{position:fixed; inset:0; z-index:-2; pointer-events:none; opacity:.85}

/* Cursor luxe */
.cursorDot{
  position:fixed; left:0; top:0;
  width:28px; height:28px; border-radius:999px;
  pointer-events:none; z-index:9999;
  transform: translate(-50%,-50%);
  background:
    radial-gradient(circle at 30% 30%, rgba(215,179,106,.55), transparent 55%),
    radial-gradient(circle at 70% 70%, rgba(251,247,241,.22), transparent 60%);
  mix-blend-mode: screen;
  opacity:0;
}
.cursorRing{
  position:fixed; left:0; top:0;
  width:46px; height:46px; border-radius:999px;
  pointer-events:none; z-index:9998;
  transform: translate(-50%,-50%);
  border:1px solid rgba(215,179,106,.24);
  box-shadow: 0 0 30px rgba(215,179,106,.10);
  opacity:0;
}
@media (pointer: coarse){.cursorDot,.cursorRing{display:none}}

/* Scroll progress */
.progress{position:fixed; top:0; left:0; right:0; height:2px; z-index:60}
.progress__bar{
  width:0%; height:100%;
  background: linear-gradient(90deg, rgba(215,179,106,1), rgba(251,247,241,.85), rgba(91,15,26,.9));
  filter: drop-shadow(0 0 14px rgba(215,179,106,.18));
}

/* Glass + glow */
.glass{
  background: var(--glass);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  backdrop-filter: blur(14px);
}
.glow{position:relative; overflow:hidden}
.glow::before{
  content:"";
  position:absolute; inset:-2px;
  background: linear-gradient(120deg, rgba(215,179,106,.18), rgba(91,15,26,.18), rgba(251,247,241,.10));
  filter: blur(18px);
  opacity:.55;
  z-index:-1;
}

/* Buttons */
.btn{
  position:relative;
  display:inline-flex; align-items:center; justify-content:center; gap:.6rem;
  padding:.78rem 1.05rem;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.03);
  color:var(--ink);
  transition: transform .18s var(--ease), box-shadow .18s var(--ease), border-color .18s var(--ease);
  cursor:pointer;
  transform: translateZ(0);
}
.btn:hover{
  transform: translateY(-2px);
  border-color: rgba(215,179,106,.25);
  box-shadow: 0 22px 90px rgba(0,0,0,.42), 0 0 28px rgba(215,179,106,.12);
}
.btn--primary{
  background: linear-gradient(135deg, rgba(215,179,106,.24), rgba(91,15,26,.16));
  border-color: rgba(215,179,106,.26);
}
.btn--ghost{background: rgba(255,255,255,.02)}
.btn--full{width:100%}
.btn--shine{overflow:hidden}
.btn__spark{
  position:absolute; inset:-40%;
  background:
    radial-gradient(circle at 25% 35%, rgba(255,255,255,.40), transparent 35%),
    radial-gradient(circle at 70% 70%, rgba(215,179,106,.20), transparent 40%);
  transform: translateX(-40%);
  opacity:0;
}

/* Nav */
.nav{
  position:sticky; top:0; z-index:50;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.nav::before{
  content:""; position:absolute; inset:0;
  background: rgba(20,6,10,.55);
  backdrop-filter: blur(16px);
  z-index:-1;
}
.nav__inner{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  padding:.9rem 0;
  width:min(var(--max), calc(100% - 40px));
  margin:0 auto;
}
.brand{display:flex; align-items:center; gap:.75rem; text-decoration:none}
.brand__mark{
  width:38px; height:38px;
  display:grid; place-items:center;
  border-radius:14px;
  background: linear-gradient(135deg, rgba(215,179,106,.22), rgba(91,15,26,.18));
  border:1px solid rgba(215,179,106,.25);
  box-shadow: 0 0 26px rgba(215,179,106,.10);
  font-weight:700;
  font-family:var(--fontDisplay);
}
.brand__text{
  font-family:var(--fontDisplay);
  letter-spacing:.14em;
  text-transform:uppercase;
  font-size:.95rem;
  opacity:.96;
}
.nav__links{display:flex; gap:1.05rem; align-items:center}
.nav__links a{opacity:.88; text-decoration:none; transition:opacity .2s var(--ease)}
.nav__links a:hover{opacity:1}
.nav__actions{display:flex; gap:.6rem; align-items:center}
.burger{
  display:none;
  width:44px; height:44px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.03);
}
.burger span{display:block; width:18px; height:2px; background:rgba(251,247,241,.92); margin:5px auto; border-radius:2px}
.drawer{
  display:none;
  padding:1rem;
  border-top:1px solid rgba(255,255,255,.08);
}
.drawer a{
  display:block;
  padding:.85rem .7rem;
  border-radius:14px;
  background: rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  margin:.55rem 0;
  text-decoration:none;
}

/* Typography */
.kicker{
  letter-spacing:.22em;
  text-transform:uppercase;
  font-size:.78rem;
  color:rgba(251,247,241,.70);
}
.title, .h2, h3{font-family:var(--fontDisplay)}
.title{
  font-weight:600;
  font-size: clamp(2.2rem, 4.2vw, 4.4rem);
  margin:.55rem 0 .2rem;
  letter-spacing:.02em;
}
.title__gold{
  background: linear-gradient(90deg, var(--gold), var(--gold2));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  text-shadow: 0 0 45px rgba(215,179,106,.12);
}
.subtitle{color:rgba(251,247,241,.80); max-width:64ch; font-size:1.08rem}
.h2{font-weight:600; font-size: clamp(1.75rem, 2.3vw, 2.4rem); margin:0}
.lead{font-size:1.05rem; color:rgba(251,247,241,.84); max-width:75ch}
.gold{color:var(--gold)}

/* Hero */
.hero{position:relative; min-height:92vh; display:grid; align-items:center; overflow:hidden}
.hero__media{position:absolute; inset:0; z-index:-1}
.hero__video{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  transform: scale(1.08);
  filter: saturate(1.10) contrast(1.10) brightness(.85);
}
.hero__overlay{
  position:absolute; inset:0;
  background:
    radial-gradient(circle at 45% 12%, rgba(0,0,0,.18), rgba(0,0,0,.86) 72%),
    linear-gradient(180deg, rgba(91,15,26,.18), rgba(0,0,0,.65));
}
.hero__light{
  position:absolute; inset:-25%;
  background:
    radial-gradient(900px 600px at 35% 25%, rgba(215,179,106,.18), transparent 60%),
    radial-gradient(900px 600px at 70% 55%, rgba(91,15,26,.22), transparent 62%);
  filter: blur(10px);
  opacity:.9;
  animation: floatLight 8s var(--ease) infinite alternate;
}
@keyframes floatLight{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,16px,0)}}
.hero__scan{
  position:absolute; inset:-20%;
  background: linear-gradient(180deg, transparent 40%, rgba(215,179,106,.08), transparent 60%);
  transform: translateY(-35%);
  opacity:.55;
  animation: scan 6s var(--ease) infinite;
  mix-blend-mode: screen;
}
@keyframes scan{from{transform:translateY(-35%)}to{transform:translateY(35%)}}
.hero__content{padding: 84px 0 70px}
.hero__cta{display:flex; gap:.7rem; flex-wrap:wrap; margin-top:1.15rem}
.hero__meta{display:flex; gap:.7rem; flex-wrap:wrap; margin-top:1.25rem}
.pill{
  display:inline-flex; gap:.55rem; align-items:center;
  padding:.6rem .8rem;
  border-radius:999px;
  background: rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.10);
  backdrop-filter: blur(12px);
  color:rgba(251,247,241,.84);
  font-size:.92rem;
}
.dot{width:9px;height:9px;border-radius:99px}
.dot--gold{background:var(--gold); box-shadow:0 0 22px rgba(215,179,106,.18)}
.dot--wine{background:rgba(91,15,26,1); box-shadow:0 0 22px rgba(91,15,26,.20)}
.dot--pearl{background:rgba(251,247,241,.85); box-shadow:0 0 22px rgba(251,247,241,.14)}

/* Sections */
.section{padding: 96px 0}
.section__head{margin-bottom: 22px}

/* About split */
.split{
  display:grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 18px;
}
.card{padding:18px; border-radius: var(--radius)}
.card__img{
  margin-top: 14px;
  height: 240px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.12);
  background-size: cover;
  background-position:center;
  box-shadow: 0 30px 90px rgba(0,0,0,.45);
}
.chips{display:flex; flex-wrap:wrap; gap:8px; margin-top:12px}
.chip{
  display:inline-flex;
  padding:.45rem .65rem;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.03);
  color:rgba(251,247,241,.78);
  font-size:.88rem;
}

/* Filters */
.filters{display:flex; flex-wrap:wrap; gap:.6rem; margin-top: 12px}
.filter{
  padding:.55rem .8rem;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.02);
  color:rgba(251,247,241,.90);
  cursor:pointer;
  transition: transform .16s var(--ease), border-color .16s var(--ease), box-shadow .16s var(--ease);
}
.filter:hover{transform:translateY(-2px); border-color: rgba(215,179,106,.22); box-shadow:0 0 26px rgba(215,179,106,.10)}
.filter.is-active{
  background: linear-gradient(135deg, rgba(215,179,106,.14), rgba(91,15,26,.16));
  border-color: rgba(215,179,106,.26);
}

/* Menu cards */
.menuGrid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 18px;
}
.menuCard{
  position:relative;
  overflow:hidden;
  cursor:pointer;
  transform: translateZ(0);
  transition: transform .20s var(--ease), border-color .20s var(--ease);
}
.menuCard::after{
  content:"";
  position:absolute; inset:-40%;
  background: linear-gradient(120deg, transparent 35%, rgba(215,179,106,.14), transparent 65%);
  transform: translateX(-60%) rotate(10deg);
  opacity:0;
  pointer-events:none;
}
.menuCard:hover{transform: translateY(-7px); border-color: rgba(215,179,106,.20)}
.menuCard:hover::after{opacity:1; animation:sweep 1.05s var(--ease) forwards}
@keyframes sweep{from{transform: translateX(-60%) rotate(10deg)}to{transform: translateX(60%) rotate(10deg)}}
.menuCard__img{
  height: 200px;
  background-size:cover;
  background-position:center;
  transform: scale(1.03);
  transition: transform .60s var(--ease), filter .60s var(--ease);
  filter: saturate(1.10) contrast(1.10);
}
.menuCard:hover .menuCard__img{transform: scale(1.12); filter: saturate(1.18) contrast(1.14)}
.menuCard__body{padding: 14px 14px 16px}
.menuCard__top{display:flex; align-items:flex-start; justify-content:space-between; gap:10px}
.menuCard__top h3{margin:0; font-weight:600; font-size:1.05rem}
.price{color: var(--gold2); font-weight:600; letter-spacing:.02em}
.tags{display:flex; gap:8px; margin-top: 10px; flex-wrap:wrap}
.tag{
  font-size:.82rem;
  color:rgba(251,247,241,.78);
  padding:.25rem .55rem;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.02);
}
.note{margin-top:16px; padding:14px 16px; color:rgba(251,247,241,.86)}

/* Reservation */
.section--reserve{position:relative}
.reserve{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 16px;
  align-items:start;
}
.cal{padding:18px}
.cal__head{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom: 12px}
.cal__month{
  font-family: var(--fontDisplay);
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:.98rem;
  opacity:.95;
}
.cal__nav{display:flex; gap:8px}
.iconBtn{
  width:42px; height:42px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.03);
  cursor:pointer;
  transition: transform .18s var(--ease), border-color .18s var(--ease), box-shadow .18s var(--ease);
  color:var(--ink);
}
.iconBtn:hover{
  transform: translateY(-2px);
  border-color: rgba(215,179,106,.22);
  box-shadow:0 0 26px rgba(215,179,106,.10);
}
.weekdays{
  display:grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 8px;
  margin: 10px 0 8px;
  color: rgba(251,247,241,.62);
  font-size: .85rem;
}
.calendar{
  display:grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 8px;
}
.day{
  position:relative;
  height: 62px;
  border-radius: 16px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.02);
  cursor:pointer;
  transition: transform .18s var(--ease), border-color .18s var(--ease), background .18s var(--ease), box-shadow .18s var(--ease);
  overflow:hidden;
}
.day:hover{
  transform: translateY(-2px);
  border-color: rgba(215,179,106,.20);
  box-shadow: 0 0 26px rgba(215,179,106,.08);
}
.day.is-muted{opacity:.28; pointer-events:none}
.day.is-off{opacity:.22; pointer-events:none; filter: grayscale(1)}
.day.is-selected{
  background: linear-gradient(135deg, rgba(215,179,106,.16), rgba(91,15,26,.18));
  border-color: rgba(215,179,106,.28);
}
.day.is-today{border-color: rgba(251,247,241,.20)}
.dayNum{position:absolute; top:10px; left:10px; font-weight:650; font-size:.95rem}
.dayMeta{
  position:absolute; bottom:10px; left:10px; right:10px;
  display:flex; justify-content:space-between; gap:8px;
  color: rgba(251,247,241,.72);
  font-size:.78rem;
}
.pips{display:flex; gap:6px; align-items:center}
.pip{width:6px; height:6px; border-radius:999px; background:rgba(251,247,241,.28)}
.pip--ok{background: rgba(215,179,106,1); box-shadow:0 0 16px rgba(215,179,106,.14)}
.pip--warn{background: rgba(242,215,162,1); box-shadow:0 0 16px rgba(242,215,162,.12)}
.pip--no{background: rgba(91,15,26,1); box-shadow:0 0 16px rgba(91,15,26,.18)}
.pip--off{background: rgba(255,255,255,.24)}
.cal__legend{
  display:flex; flex-wrap:wrap; gap:14px;
  margin-top: 12px;
  color: rgba(251,247,241,.70);
  font-size:.9rem;
}
.cal__legend i{display:inline-block; vertical-align:middle; margin-right:6px}

/* Booking panel */
.book{padding:18px}
.book__date{
  margin:0 0 10px;
  font-family: var(--fontDisplay);
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.95rem;
  opacity:.95;
}
.muted{color:var(--muted)}
.services{display:grid; gap:12px; margin-top:12px}
.service{
  padding: 14px;
  border-radius: 18px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  position:relative;
  overflow:hidden;
}
.service::after{
  content:"";
  position:absolute; inset:-40%;
  background: linear-gradient(120deg, transparent 35%, rgba(215,179,106,.14), transparent 65%);
  transform: translateX(-60%) rotate(10deg);
  opacity:0;
}
.service:hover::after{opacity:1; animation:sweep 1.05s var(--ease) forwards}
.serviceTop{display:flex; align-items:flex-start; justify-content:space-between; gap:10px}
.serviceTitle{font-weight:650}
.badge{
  padding:.35rem .55rem;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.25);
  color: rgba(251,247,241,.82);
  font-size:.82rem;
}
.badge.ok{border-color: rgba(215,179,106,.28)}
.badge.no{border-color: rgba(91,15,26,.28)}
.serviceMeta{margin-top: 8px; display:flex; gap:10px; flex-wrap:wrap; color: rgba(251,247,241,.75); font-size:.92rem}
.serviceTimes{display:flex; gap:10px; flex-wrap:wrap; margin-top: 10px}
.timeBtn{
  padding:.55rem .75rem;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.02);
  color: rgba(251,247,241,.88);
  cursor:pointer;
  transition: transform .16s var(--ease), border-color .16s var(--ease), box-shadow .16s var(--ease);
}
.timeBtn:hover{transform: translateY(-2px); border-color: rgba(215,179,106,.22); box-shadow:0 0 24px rgba(215,179,106,.10)}
.timeBtn.is-on{
  background: linear-gradient(135deg, rgba(215,179,106,.14), rgba(91,15,26,.16));
  border-color: rgba(215,179,106,.26);
}
.timeBtn:disabled{opacity:.35; cursor:not-allowed; transform:none}

/* Form */
.form{padding:16px; margin-top:14px}
.form label{display:grid; gap:7px; font-size:.9rem; color:rgba(251,247,241,.76)}
.form input, .form select, .form textarea{
  width:100%;
  padding:.82rem .85rem;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.22);
  color: var(--ink);
  outline:none;
  transition: border-color .18s var(--ease), box-shadow .18s var(--ease);
}
.form input:focus, .form select:focus, .form textarea:focus{
  border-color: rgba(215,179,106,.30);
  box-shadow: 0 0 0 4px rgba(215,179,106,.10);
}
.form__row{display:grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 12px}
.form__full{margin-bottom: 12px}
.status{
  display:flex; gap:.6rem; align-items:center;
  margin-top: 12px;
  padding:.65rem .8rem;
  border-radius: 16px;
  background: rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.08);
}
.status__dot{
  width:10px; height:10px; border-radius:50%;
  background: rgba(251,247,241,.55);
  box-shadow: 0 0 18px rgba(251,247,241,.10);
}
.status__dot.ok{background: var(--gold); box-shadow:0 0 20px rgba(215,179,106,.18)}
.status__dot.bad{background: rgba(91,15,26,1); box-shadow:0 0 20px rgba(91,15,26,.22)}

/* SEPA panel */
.sepa{
  margin-top: 12px;
  padding: 14px;
  border-radius: 18px;
  border:1px solid rgba(215,179,106,.18);
  background: rgba(255,255,255,.03);
}
.sepa__top{display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap}
.sepa__val{font-weight:650; color: var(--gold2)}
.mono{font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}
.sepa__body{margin-top:10px}
.sepa__line{display:flex; justify-content:space-between; gap:12px; padding:6px 0; border-bottom:1px dashed rgba(255,255,255,.08)}
.sepa__line:last-child{border-bottom:0}
.sepa__help{margin-top:10px; color: rgba(251,247,241,.75); font-size:.92rem}
.tiny{margin-top:10px; font-size:.86rem}

/* Gallery */
.gallery{padding:12px}
.swiper{border-radius: 18px; overflow:hidden}
.swiper-slide img{width:100%; height: 520px; object-fit:cover; display:block; transform: scale(1.03); filter: saturate(1.10) contrast(1.10)}
.swiper-button-prev, .swiper-button-next{color: rgba(251,247,241,.90); filter: drop-shadow(0 20px 40px rgba(0,0,0,.45))}
.swiper-pagination-bullet{background: rgba(251,247,241,.55)}
.swiper-pagination-bullet-active{background: var(--gold)}

/* Contact */
.contact{display:grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items:start}
.hours{margin-top:14px; padding:14px}
.map iframe{width:100%; height: 340px; border:0; border-radius: var(--radius)}

/* Footer */
.footer{border-top:1px solid rgba(255,255,255,.08); padding:18px 0 24px; color: rgba(251,247,241,.72)}
.footer__inner{display:flex; align-items:center; justify-content:space-between; gap:12px}

/* Responsive */
@media (max-width: 980px){
  .nav__links{display:none}
  .burger{display:block}
  .drawer{display:block; max-height:0; overflow:hidden; transition:max-height .25s var(--ease);}
  .drawer.is-open{max-height: 360px}
  .split,.contact,.reserve{grid-template-columns:1fr}
  .menuGrid{grid-template-columns: 1fr 1fr}
  .swiper-slide img{height: 420px}
}
@media (max-width: 620px){
  .form__row{grid-template-columns:1fr}
  .menuGrid{grid-template-columns:1fr}
  .swiper-slide img{height: 360px}
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  *{scroll-behavior:auto !important}
  .hero__scan,.fx__glow{animation:none !important}
  .btn,.menuCard,.day,.timeBtn{transition:none !important}
}

/* Menu description */
.menuCard__desc{
  margin: 10px 0 0;
  color: rgba(251,247,241,.78);
  line-height: 1.55;
  font-size: .95rem;
}
.menuCard__desc.is-open{
  display:block;
}
@media (max-width: 620px){
  .menuCard__desc{ display: none; }
}

.brand__mark--logo{
  background-image: url("./Gemini_Generated_Image_bc53k9bc53k9bc53.png"); /* ou ./images/Gemini.png */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
