/* Venue-first public homepage: loaded after the legacy website styles. */
.website-first-load.website-hero-fallback{
  min-height:100svh;
  display:flex;
  align-items:flex-end;
  justify-content:flex-start;
  padding:clamp(28px,6vw,88px);
  text-align:left;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(14,5,48,.96) 0%,rgba(24,10,70,.8) 42%,rgba(24,10,70,.23) 100%),
    linear-gradient(0deg,rgba(8,2,34,.42),rgba(8,2,34,.08)),
    url('/restaurant/media/hero-venue.jpg') center 58% / cover no-repeat,
    #201060;
}
.website-hero-fallback .fallback-copy{max-width:650px;display:grid;gap:15px;align-items:start}
.website-hero-fallback img{width:54px;height:54px;object-fit:contain;padding:4px;border-radius:14px;background:#fff}
.website-hero-fallback strong{font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,5vw,72px);line-height:.95;letter-spacing:-.045em}
.website-hero-fallback p{max-width:420px;margin:0;color:#f1edff;font-size:15px;font-weight:750}

.hero.hero-venue{
  position:relative;
  min-height:min(780px,100svh);
  isolation:isolate;
  overflow:hidden;
  background:#201060;
}
.hero-slides{position:absolute;inset:0;z-index:-2;background:#201060}.hero-slides::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,5,48,.97) 0%,rgba(23,9,72,.83) 43%,rgba(23,9,72,.18) 100%),linear-gradient(0deg,rgba(8,2,34,.52),rgba(8,2,34,.08));z-index:2}.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background-size:cover;background-repeat:no-repeat;opacity:0;transform:scale(1.035);transition:opacity .8s ease,transform 7s ease}.hero-slide.active{opacity:1;transform:scale(1)}
.hero.hero-venue .hero-wrap{
  min-height:min(780px,100svh);
  display:flex;
  align-items:flex-end;
  gap:0;
  padding:clamp(110px,14vh,156px) 0 clamp(54px,9vh,92px);
}
.hero.hero-venue .hero-copy{max-width:670px}
.hero.hero-venue .eyebrow{padding:8px 11px;border:1px solid rgba(238,191,72,.48);background:rgba(16,6,56,.34);border-radius:999px;color:#ffe08d}
.hero.hero-venue h1{max-width:670px;font-size:clamp(58px,7.4vw,102px);text-wrap:balance}
.hero.hero-venue p{max-width:560px;color:#f0ecff;font-size:clamp(16px,1.45vw,20px)}
.hero.hero-venue .hero-actions{margin-top:30px}
.hero.hero-venue .button-secondary{background:rgba(255,255,255,.08);backdrop-filter:blur(8px)}
.hero.hero-venue .hero-status{gap:12px;margin-top:38px}
.hero.hero-venue .hero-status span{min-width:180px;padding:11px 13px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(11,4,43,.42);backdrop-filter:blur(9px)}
.hero.hero-venue .hero-visit{margin-top:22px}
.hero-carousel-controls{position:absolute;right:clamp(18px,4vw,64px);bottom:clamp(24px,5vw,54px);display:flex;align-items:center;gap:12px}.hero-carousel-controls>button{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(14,5,48,.55);color:#fff;font-size:18px;backdrop-filter:blur(8px)}.hero-dots{display:flex;gap:8px}.hero-dots button{width:9px;height:9px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.45)}.hero-dots button.active{width:28px;background:var(--gold)}

@media(max-width:820px){
  .website-first-load.website-hero-fallback{padding:28px 20px;background-position:56% 50%}
  .website-hero-fallback strong{font-size:clamp(42px,13vw,66px)}
  .hero.hero-venue{min-height:690px}
  .hero.hero-venue .hero-wrap{min-height:690px;padding:122px 0 42px}
  .hero.hero-venue h1{font-size:clamp(52px,14vw,74px);max-width:540px}
  .hero.hero-venue .hero-status{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .hero.hero-venue .hero-status span{min-width:0;padding:9px 10px}
}

@media(max-width:480px){
  .hero.hero-venue{min-height:650px}
  .hero.hero-venue .hero-wrap{min-height:650px;padding-top:103px;padding-bottom:28px}
  .hero.hero-venue .eyebrow{font-size:9px;letter-spacing:.1em}
  .hero.hero-venue h1{margin:13px 0 16px;font-size:clamp(46px,14.2vw,60px)}
  .hero.hero-venue p{font-size:15px;line-height:1.55}
  .hero.hero-venue .hero-actions{display:grid;margin-top:23px}
  .hero.hero-venue .button-primary,.hero.hero-venue .button-secondary{min-height:49px}
  .hero.hero-venue .hero-status{margin-top:22px}
  .hero.hero-venue .hero-status b{font-size:12px}
  .hero.hero-venue .hero-status span{font-size:10px}
  .hero-carousel-controls{right:16px;bottom:18px;gap:8px}.hero-carousel-controls>button{width:36px;height:36px}.hero-dots{gap:6px}.hero-dots button{width:7px;height:7px}.hero-dots button.active{width:20px}
}
