:root{--ink:#080808;--paper:#f3efe8;--muted:#b9b4ad;--red:#d91f26;--red-dark:#780b10;--line:rgba(255,255,255,.16);--display:"Bebas Neue",Impact,sans-serif;--body:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#fff;font-family:var(--body);overflow-x:hidden}a{color:inherit}.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:1rem;top:1rem;z-index:99;background:#fff;color:#000;padding:.8rem}
.site-header{position:fixed;inset:0 0 auto 0;height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,4vw,4rem);z-index:30;background:linear-gradient(#080808f2,#08080800);backdrop-filter:blur(4px)}.brand{display:flex;align-items:center;text-decoration:none}.brand-logo{display:block;width:104px;height:84px;object-fit:contain;mix-blend-mode:screen}.footer-logo{width:150px;height:150px}.site-header nav{display:flex;align-items:center;gap:2rem}.site-header nav a{text-decoration:none;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.site-header nav a:hover{color:#ff5057}.nav-cta{border:1px solid #fff;padding:.75rem 1rem}.menu-toggle{display:none;background:none;border:1px solid #777;color:#fff;padding:.6rem .8rem;text-transform:uppercase;letter-spacing:.1em}
.hero{min-height:100svh;position:relative;display:flex;align-items:center;padding:8rem clamp(1.2rem,8vw,8rem) 8rem;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 75% 38%,#5d0a0f 0,transparent 28%),linear-gradient(125deg,#050505 30%,#180606 100%)}.hero:after{content:"";position:absolute;inset:0;z-index:-3;background:repeating-linear-gradient(105deg,transparent 0 85px,rgba(255,255,255,.025) 86px 88px)}.light{position:absolute;width:18vw;height:110vh;top:-25%;filter:blur(20px);opacity:.25;z-index:-2;transform-origin:top}.light-one{right:14%;background:linear-gradient(#fff,transparent);transform:rotate(24deg)}.light-two{right:38%;background:linear-gradient(var(--red),transparent);transform:rotate(-18deg)}.noise{position:absolute;inset:0;opacity:.1;z-index:-1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}.hero-content{max-width:900px}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.23em;font-size:.75rem;font-weight:700;color:#ff5a60}.hero h1{font:clamp(5rem,14vw,12rem)/.76 var(--display);text-transform:uppercase;letter-spacing:-.02em;margin:.25rem 0 1.5rem}.hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:2px #fff}.hero-lede{max-width:560px;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.6;color:#d5d0c9}.hero-actions,.visit-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:2rem}.button{display:inline-flex;justify-content:center;text-decoration:none;text-transform:uppercase;font-weight:800;font-size:.75rem;letter-spacing:.12em;padding:1rem 1.35rem;border:1px solid transparent;transition:.2s ease}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--red);color:#fff}.button-primary:hover{background:#f52b33}.button-ghost{border-color:#777}.button-light{background:#fff;color:#111}.now-card{position:absolute;right:clamp(1rem,6vw,6rem);bottom:7.5rem;width:250px;padding:1.4rem;border:1px solid var(--line);background:#0d0d0dc7;backdrop-filter:blur(12px)}.now-card p{display:inline;margin-left:.5rem;text-transform:uppercase;font-size:.7rem;letter-spacing:.12em;color:#ccc}.now-card strong,.now-card small{display:block}.now-card strong{font:2.1rem var(--display);margin:.7rem 0}.now-card small{color:#aaa}.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#ff333b;box-shadow:0 0 14px #ff333b}.hero-marquee{position:absolute;bottom:0;left:0;display:flex;width:max-content;background:var(--red);padding:.7rem 0;font:1.25rem var(--display);letter-spacing:.12em;animation:marquee 20s linear infinite}.hero-marquee span{width:max-content}@keyframes marquee{to{transform:translateX(-50%)}}
.intro{display:grid;grid-template-columns:1.15fr .85fr;gap:5rem;padding:clamp(5rem,10vw,10rem) clamp(1.2rem,8vw,8rem);background:var(--paper);color:#111}.intro h2,.events h2,.booking h2,.visit h2{font:clamp(3.5rem,8vw,7.5rem)/.88 var(--display);text-transform:uppercase;margin:.5rem 0}.intro-copy{align-self:end;max-width:550px;font-size:1.1rem;line-height:1.8;color:#4c4945}.intro-copy p:first-child{font-size:1.4rem;color:#111}.features{display:grid;grid-template-columns:repeat(3,1fr)}.feature{min-height:430px;padding:3rem;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;border-right:1px solid var(--line);background:linear-gradient(160deg,#202020,#090909)}.feature:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 25%,rgba(217,31,38,.45),transparent 30%);transition:.4s}.feature-pour:before{background:linear-gradient(120deg,transparent,#83101666)}.feature-night:before{background:radial-gradient(circle at 50% 20%,#fff2,transparent 22%)}.feature>*{position:relative}.feature>span{position:absolute;top:2rem;left:2rem;color:#888;font:1rem var(--display)}.feature h3{font:3rem var(--display);text-transform:uppercase;margin:0}.feature p{color:#aaa;line-height:1.6;max-width:300px}.feature:hover:before{transform:scale(1.15)}
.cocktails{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(2rem,7vw,7rem);padding:clamp(5rem,10vw,10rem) clamp(1.2rem,8vw,8rem);background:linear-gradient(145deg,#190507,#080808 42%);border-top:1px solid #321014}.cocktail-heading{align-self:start;position:sticky;top:110px}.cocktail-heading h2{font:clamp(4.5rem,9vw,8rem)/.82 var(--display);text-transform:uppercase;margin:.55rem 0 1.25rem}.cocktail-heading>p:not(.kicker){max-width:330px;color:#aaa;line-height:1.7}.cocktail-list{border-top:1px solid #4a282a}.cocktail-card{display:grid;grid-template-columns:1fr minmax(180px,.8fr) auto;gap:1.25rem;align-items:center;padding:1.35rem .25rem;border-bottom:1px solid #3b292a;transition:.2s ease}.cocktail-card:hover{padding-left:1rem;background:#ffffff08}.cocktail-card>div{display:flex;align-items:baseline;gap:1rem}.cocktail-card span{color:#8f6d6f;font:.85rem var(--display)}.cocktail-card h3{margin:0;font:clamp(1.8rem,3vw,2.65rem)/1 var(--display);text-transform:uppercase;letter-spacing:.02em}.cocktail-card p{margin:0;color:#aaa;font-size:.82rem;line-height:1.55}.cocktail-card strong{font:2rem var(--display);color:#ff5a60}.featured-cocktail{background:linear-gradient(90deg,#d91f261c,transparent)}.tax-note{text-align:right;text-transform:uppercase;letter-spacing:.16em;color:#977477;font-size:.64rem;margin:1rem 0 0}
.food-menu{display:grid;grid-template-columns:.68fr 1.32fr;gap:clamp(2rem,7vw,7rem);padding:clamp(5rem,10vw,10rem) clamp(1.2rem,8vw,8rem);background:var(--paper);color:#111}.food-brand h2{font:clamp(4rem,8vw,7rem)/.84 var(--display);text-transform:uppercase;margin:.55rem 0 1.2rem}.food-brand>p:not(.kicker){max-width:390px;line-height:1.7;color:#4c4945}.food-catering{color:var(--red)!important;font-weight:800;text-transform:uppercase;letter-spacing:.07em;font-size:.78rem}.food-styles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:2px solid #111;border-left:1px solid #ccc}.food-styles article{position:relative;padding:1.5rem;min-height:180px;border-right:1px solid #ccc;border-bottom:1px solid #ccc}.food-styles span{color:#999;font:.85rem var(--display)}.food-styles h3{font:2.4rem var(--display);text-transform:uppercase;margin:.8rem 0 .2rem}.food-styles p{color:#777;margin:0;padding-right:3rem}.food-styles strong{position:absolute;right:1.25rem;top:1.15rem;color:var(--red);font:2rem var(--display)}.food-steps{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}.food-steps>div{padding:1.25rem;background:#e7e0d6}.food-steps small{text-transform:uppercase;letter-spacing:.15em;color:var(--red);font-weight:800}.food-steps p{line-height:1.7;margin:.55rem 0 0}.food-extras{grid-column:1/-1}.food-extras span{color:#aaa;margin:0 .45rem}.food-footer{display:flex;justify-content:space-between;gap:1rem;margin-top:1.5rem;padding-top:1.1rem;border-top:1px solid #bbb;text-transform:uppercase;letter-spacing:.1em;font-size:.65rem;font-weight:800}
.media-showcase{display:grid;grid-template-columns:.62fr 1.38fr;gap:4rem;padding:clamp(5rem,9vw,9rem) clamp(1.2rem,6vw,6rem);background:#151515;border-top:1px solid #252525}.media-heading{position:sticky;top:110px;align-self:start}.media-heading h2{font:clamp(4rem,8vw,7.5rem)/.84 var(--display);text-transform:uppercase;margin:.55rem 0 1.2rem}.media-heading>p:not(.kicker){max-width:330px;color:#aaa;line-height:1.7}.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;align-items:start}.social-frame{background:#090909;border:1px solid #333;overflow:hidden}.instagram-frame{min-height:470px;padding:4px}.instagram-frame .instagram-media{min-width:0!important;width:100%!important;margin:0!important;background:#fff}.video-frame{grid-column:1/-1}.video-wrap{position:relative;aspect-ratio:16/9;background:#000}.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.media-caption{display:flex;justify-content:space-between;gap:1rem;padding:1.1rem 1.3rem;text-transform:uppercase}.media-caption span{font-size:.68rem;letter-spacing:.14em;color:#ff5960}.media-caption strong{font-size:.78rem;letter-spacing:.08em}
.photo-frame{margin:0}.photo-frame img{display:block;width:100%;height:320px;object-fit:cover;filter:saturate(.88) contrast(1.08);transition:transform .45s ease,filter .45s ease}.photo-frame:hover img{transform:scale(1.025);filter:saturate(1.08) contrast(1.08)}.photo-wide{grid-column:1/-1}.photo-wide img{height:clamp(320px,42vw,560px)}.photo-frame figcaption{display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.2rem;text-transform:uppercase}.photo-frame figcaption span{font-size:.65rem;letter-spacing:.14em;color:#ff5960}.photo-frame figcaption strong{font-size:.75rem;letter-spacing:.08em}.media-source-note{grid-column:1/-1;color:#777;font-size:.62rem;line-height:1.5}.media-source-note a{color:#aaa}
.events{display:grid;grid-template-columns:.78fr 1.22fr;gap:6rem;padding:clamp(5rem,10vw,10rem) clamp(1.2rem,8vw,8rem);background:#0c0c0c}.events-intro{max-width:390px;color:#999;line-height:1.7}.event-board{align-self:center;border-top:1px solid #444}.event-line{display:grid;grid-template-columns:74px 1fr auto;align-items:center;padding:1.5rem 0;border-bottom:1px solid #333;gap:1.25rem}.event-line time{display:grid;justify-items:center;border-right:1px solid #3b3b3b;padding-right:1.2rem}.event-line time b{color:#ff5960;font-size:.62rem;letter-spacing:.15em}.event-line time em{font:2.2rem/1 var(--display);font-style:normal}.event-line>div{display:flex;flex-direction:column;gap:.2rem}.event-line span{font:2rem var(--display);text-transform:uppercase}.event-line small{color:#888;line-height:1.4}.event-line strong{text-transform:uppercase;color:#ff5960;font-size:.72rem;letter-spacing:.12em;text-align:right}.featured-event{background:linear-gradient(90deg,#d91f261f,transparent);padding-left:.75rem}.event-actions{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;margin-top:1.5rem}.event-actions .text-link{margin-top:0}.text-link{display:inline-flex;gap:.7rem;text-decoration:none;margin-top:1.7rem;padding-bottom:.35rem;border-bottom:1px solid currentColor;font-weight:700}.text-link:hover{color:#ff5960}.booking{display:grid;grid-template-columns:.8fr 1.2fr;gap:6rem;padding:clamp(5rem,10vw,9rem) clamp(1.2rem,8vw,8rem);background:var(--red);position:relative;overflow:hidden}.booking:after{content:"BACKSTAGE";position:absolute;right:-2vw;bottom:-5vw;color:#0002;font:20vw/.7 var(--display)}.booking>*{position:relative;z-index:1}.booking .kicker{color:#180000}.booking-copy>p:not(.kicker){max-width:500px;font-size:1.1rem;line-height:1.6}.booking-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-self:center}.booking-form label{display:grid;gap:.45rem;text-transform:uppercase;font-weight:700;font-size:.7rem;letter-spacing:.1em}.booking-form input,.booking-form select,.booking-form textarea{width:100%;border:1px solid #600;background:#fff;color:#111;border-radius:0;padding:.9rem;font:inherit;letter-spacing:0}.booking-form textarea{resize:vertical}.form-wide{grid-column:1/-1}.booking-form button{border:0;cursor:pointer}.form-note{margin:0!important;font-size:.78rem!important}.form-success{background:#fff;color:#111;padding:1rem;margin:0!important;font-weight:700}.form-trap{position:absolute!important;left:-10000px!important}.visit{padding:clamp(5rem,10vw,10rem) clamp(1.2rem,8vw,8rem);background:var(--paper);color:#111}.visit{display:grid;grid-template-columns:.85fr 1.15fr;column-gap:6rem}.visit-grid{display:grid;grid-template-columns:repeat(2,1fr);align-content:center}.visit-grid>div{padding:1.8rem;border-top:1px solid #bbb}.visit-grid small{text-transform:uppercase;letter-spacing:.15em;color:#777}.visit-grid p{font-size:1.05rem;line-height:1.55;margin:.7rem 0}.visit-actions{grid-column:2}.visit .text-link{margin-top:0}.visit .button-primary{color:#fff}
.parking-info{grid-column:1/-1;display:grid;grid-template-columns:.85fr 1.15fr;gap:6rem;margin-top:4.5rem;padding-top:3rem;border-top:1px solid #bbb}.parking-heading h3{font:clamp(2.8rem,5vw,5rem)/.9 var(--display);text-transform:uppercase;margin:.5rem 0 1rem}.parking-heading>p:last-child{max-width:520px;color:#5d5954;line-height:1.7}.parking-options{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#c7c1b8;border:1px solid #c7c1b8}.parking-options article{background:#f7f3ed;padding:1.5rem}.parking-options small{text-transform:uppercase;letter-spacing:.12em;color:#777}.parking-options h4{font:1.7rem var(--display);text-transform:uppercase;margin:.65rem 0}.parking-options p{color:#5d5954;line-height:1.55;font-size:.94rem}.parking-options .text-link{font-size:.82rem}
footer{padding:3rem clamp(1.2rem,8vw,8rem);display:grid;grid-template-columns:1fr auto auto;gap:2rem;align-items:center;border-top:1px solid #222;color:#aaa}.footer-brand{color:#fff}.footer-brand+p{text-transform:uppercase;letter-spacing:.15em;font-size:.7rem}footer>div{display:flex;gap:1.5rem}footer>div a{text-decoration:none;font-size:.8rem}footer>small{grid-column:1/-1;padding-top:2rem;border-top:1px solid #222;font-size:.65rem}
@media(max-width:900px){.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:72px;left:1rem;right:1rem;flex-direction:column;align-items:stretch;background:#111;border:1px solid #333;padding:1.5rem}.site-header nav.open{display:flex}.hero{align-items:flex-start;padding-top:9rem}.now-card{position:relative;right:auto;bottom:auto;margin:3rem 0 2rem}.intro,.events,.visit,.media-showcase,.cocktails,.food-menu,.booking{grid-template-columns:1fr;gap:2rem}.media-heading,.cocktail-heading{position:static}.features{grid-template-columns:1fr}.feature{min-height:300px}.visit-actions{grid-column:1}.visit-grid{grid-template-columns:1fr 1fr}footer{grid-template-columns:1fr}footer>small{grid-column:1}.hero h1{font-size:clamp(5rem,24vw,8rem)}}
@media(max-width:900px){.parking-info{grid-template-columns:1fr;gap:2rem}.parking-options{grid-template-columns:1fr}}
@media(max-width:560px){.site-header{height:78px}.brand-logo{width:86px;height:70px}.footer-logo{width:140px;height:140px}.hero{display:block}.hero-lede{font-size:1rem}.now-card{width:100%}.visit-grid,.media-grid,.food-styles,.food-steps,.booking-form{grid-template-columns:1fr}.booking-form>*{grid-column:1}.video-frame{grid-column:auto}.food-extras{grid-column:auto}.food-footer{flex-direction:column}.cocktail-card{grid-template-columns:1fr auto}.cocktail-card p{grid-column:1/-1}.event-line{grid-template-columns:58px 1fr;align-items:start}.event-line strong{grid-column:2;text-align:left}.event-line span{font-size:1.6rem}.intro-copy p:first-child{font-size:1.2rem}footer>div{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-marquee{animation:none}.button{transition:none}}
