@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Franklin:ital,wght@0,500;0,700;0,900;1,500&display=swap');

:root{--premium-black:#070706;--premium-ink:#11100f;--premium-cream:#f0eadf;--premium-paper:#e7dfd2;--premium-white:#fffdfa;--premium-red:#e63917;--premium-gold:#bf9b55;--premium-muted:#91897f;--premium-line:rgba(255,255,255,.14);--premium-line-dark:rgba(17,16,15,.16)}
html{scroll-behavior:smooth}
body{background:var(--premium-black)!important;color:var(--premium-white)!important;font-family:'DM Sans',Arial,sans-serif!important;line-height:1.6!important;overflow-x:hidden}
a{text-decoration:none!important}
.wrap{width:min(1320px,calc(100% - 52px))!important;max-width:none!important;margin-inline:auto!important}

/* Global navigation */
.nav,nav.nav{position:fixed!important;inset:0 0 auto 0!important;height:72px!important;padding:0 28px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;background:rgba(7,7,6,.76)!important;backdrop-filter:blur(16px)!important;border-bottom:1px solid rgba(255,255,255,.08)!important;z-index:1000!important}
.nav .logo,.nav-logo{font-family:'Libre Franklin',Arial,sans-serif!important;font-size:13px!important;letter-spacing:.18em!important;text-transform:uppercase!important;font-weight:900!important;color:#fff!important}
.nav .logo b{color:var(--premium-red)!important}
.nav ul{display:flex!important;gap:18px!important;align-items:center!important;list-style:none!important}
.nav ul a,.nav a{font-size:9px!important;text-transform:uppercase!important;letter-spacing:.14em!important;color:#c9c1b7!important;font-weight:700!important}
.nav ul a:hover,.nav a:hover{color:#fff!important}

/* Buttons */
.btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:13px 18px!important;border:1px solid currentColor!important;border-radius:0!important;background:transparent!important;color:inherit!important;font-size:9px!important;line-height:1!important;text-transform:uppercase!important;letter-spacing:.15em!important;font-weight:700!important;box-shadow:none!important;transition:.25s ease!important}
.btn:hover{transform:none!important;background:var(--premium-white)!important;color:var(--premium-ink)!important;border-color:var(--premium-white)!important}
.btn.red{background:var(--premium-red)!important;border-color:var(--premium-red)!important;color:#fff!important}
.btn.red:hover{background:#fff!important;color:#111!important;border-color:#fff!important}

/* Editorial labels and type */
.eyebrow,.track,.tag,.label{font-size:10px!important;line-height:1.2!important;letter-spacing:.28em!important;text-transform:uppercase!important;color:var(--premium-gold)!important;font-weight:700!important}
.sec-h,.hero-pad h1,.hero h1,.page-title{font-family:'Libre Franklin',Arial,sans-serif!important;font-weight:900!important;letter-spacing:-.055em!important;line-height:.88!important;text-transform:uppercase!important;color:inherit!important}
.sec-h{font-size:clamp(42px,6.4vw,96px)!important;margin:14px 0 28px!important}
.lead-p{font-size:clamp(17px,1.6vw,22px)!important;line-height:1.55!important;color:#cfc8be!important;max-width:800px!important}

/* Secondary page hero */
.hero-pad{padding:165px 0 72px!important;text-align:left!important;position:relative!important}
.hero-pad:after{content:'';display:block;width:86px;height:4px;background:var(--premium-red);margin-top:34px}
.hero-pad h1{font-size:clamp(54px,9vw,126px)!important;max-width:1050px!important}
.hero-pad .tag{margin-top:22px!important;color:var(--premium-gold)!important;max-width:900px}
.hero-pad .loc{margin-top:13px!important;color:#8f877d!important;font-size:12px!important;letter-spacing:.07em!important}

/* Long-form content */
.body,article.body,.article,.post-body{padding:42px 0 110px!important;max-width:900px!important}
.body p,.body li,.article p,.article li,.post-body p,.post-body li{font-size:17px!important;line-height:1.82!important;color:#d7d0c7!important}
.body h2,.article h2,.post-body h2{font-family:'Libre Franklin',Arial,sans-serif!important;font-size:clamp(30px,4vw,50px)!important;line-height:1!important;letter-spacing:-.035em!important;color:#fff!important;border:0!important;border-top:1px solid var(--premium-line)!important;padding:36px 0 0!important;margin:58px 0 20px!important}
.body h3,.article h3,.post-body h3{font-family:'Libre Franklin',Arial,sans-serif!important;color:var(--premium-gold)!important;font-size:20px!important;margin:30px 0 10px!important}
.body blockquote,.article blockquote,.post-body blockquote{border:0!important;border-left:4px solid var(--premium-red)!important;padding:4px 0 4px 24px!important;margin:38px 0!important;font-family:'Libre Franklin',Arial,sans-serif!important;font-size:clamp(22px,3vw,34px)!important;line-height:1.25!important;color:#fff!important;font-style:italic!important}
.grid2{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1px!important;background:var(--premium-line)!important;margin:32px 0!important}
.grid2>div{background:#0e0d0c!important;border:0!important;border-radius:0!important;padding:28px!important}
.grid2 h4{font-size:10px!important;letter-spacing:.15em!important;text-transform:uppercase!important;color:var(--premium-gold)!important;margin-bottom:10px!important}
.grid2 p{font-size:14px!important;line-height:1.6!important;color:#aaa299!important;margin:0!important}

/* Full photo and image safety */
img{max-width:100%;height:auto}
img:not([src*='flyer']):not([src*='ann']):not([src*='downtown-throwdown']){object-position:center top!important}
.zoom img,.gallery img,.photo-grid img,.proof-wall img{object-position:center top!important}

/* Anniversary and event pages */
.hero{background:#080807!important}
.hero img.bg{filter:brightness(.42) saturate(.9)!important;object-position:center top!important}
.hero .veil{background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.2) 65%),linear-gradient(to top,#070706,rgba(7,7,6,.18) 45%)!important}
.hero .inner{text-align:left!important;width:min(1320px,calc(100% - 52px))!important;margin:auto!important;padding:190px 0 76px!important}
.hero .tag{text-align:left!important}
.hero h1{font-size:clamp(66px,11vw,168px)!important;background:none!important;-webkit-text-fill-color:initial!important;color:#fff!important;max-width:1080px!important}
.hero .sub{margin:28px 0 8px!important;max-width:760px!important;text-align:left!important;font-size:clamp(18px,1.7vw,24px)!important}
.hero .coords{text-align:left!important;color:#aaa299!important}
.hero .cta{justify-content:flex-start!important}
section.wrap{padding:112px 0!important}
.events{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin-top:45px!important}
.ecard{min-height:520px!important;border-radius:0!important;border:0!important;background:#111!important;align-items:flex-end!important;overflow:hidden!important}
.ecard img{opacity:.64!important;filter:saturate(.9)!important;object-position:center top!important}
.ecard:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.96),rgba(0,0,0,.08) 72%)}
.ecard .body{position:relative!important;z-index:2!important;padding:28px!important;max-width:none!important}
.ecard .date{font-size:9px!important;letter-spacing:.15em!important;text-transform:uppercase!important;color:var(--premium-gold)!important}
.ecard h3{font-family:'Libre Franklin',Arial,sans-serif!important;font-size:30px!important;line-height:1!important;color:#fff!important;margin:8px 0 12px!important}
.ecard p{font-size:13px!important;line-height:1.55!important;color:#d6cfc7!important}
.ann-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin-top:38px!important}
.ann-grid img{height:560px!important;object-fit:contain!important;background:#111!important;border-radius:0!important}
.capture{background:var(--premium-red)!important;border:0!important;border-radius:0!important;padding:66px!important;text-align:left!important}
.capture h2{font-family:'Libre Franklin',Arial,sans-serif!important;font-size:clamp(38px,5vw,72px)!important;line-height:.94!important;letter-spacing:-.045em!important;text-transform:uppercase!important}
.capture p{margin:18px 0 26px!important;color:#fff0e9!important;max-width:680px!important}
.capture .btn{color:#fff!important}

/* Gallery and flyer pages */
.gallery,.flyer-grid,.grid,.archive-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.gallery img,.flyer-grid img,.grid img,.archive-grid img{border-radius:0!important;transition:transform .4s ease!important}
.gallery a:hover img,.flyer-grid a:hover img,.grid a:hover img,.archive-grid a:hover img{transform:translateY(-4px)!important}

/* Blog index and article cards */
.posts,.post-grid,.blog-grid,.cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.post,.post-card,.card,.pc{border-radius:0!important;border:0!important;background:#12110f!important;overflow:hidden!important}
.post img,.post-card img,.card img,.pc img{object-position:center top!important}
.post h2,.post-card h2,.post h3,.post-card h3,.card h3,.pc h3{font-family:'Libre Franklin',Arial,sans-serif!important;line-height:1!important;letter-spacing:-.025em!important}

/* Footer */
footer{background:#070706!important;border-top:1px solid var(--premium-line)!important;padding:62px 0 30px!important;margin-top:0!important;text-align:left!important;color:#8e877e!important}
.foot-grid{display:grid!important;grid-template-columns:2fr 1fr 1fr 1fr!important;gap:38px!important}
.foot-grid h4,footer h4{font-size:9px!important;text-transform:uppercase!important;letter-spacing:.15em!important;color:var(--premium-gold)!important;margin-bottom:12px!important}
.foot-grid a,footer a{color:#8e877e!important;font-size:11px!important;padding:3px 0!important}
.foot-grid a:hover,footer a:hover{color:#fff!important}
.foot-bot{margin-top:40px!important;padding-top:18px!important;border-top:1px solid var(--premium-line)!important;text-align:left!important;color:#5f5a54!important;font-size:9px!important;text-transform:uppercase!important;letter-spacing:.12em!important}

/* Hide duplicate legacy chat button but keep booking agent */
#chat-btn{display:none!important}
#lk-chat-btn{background:var(--premium-red)!important}

@media(max-width:900px){
 .nav ul{display:none!important}.wrap{width:min(100% - 32px,1320px)!important}.hero .inner{width:min(100% - 32px,1320px)!important}.events,.ann-grid,.gallery,.flyer-grid,.grid,.archive-grid{grid-template-columns:1fr 1fr!important}.grid2{grid-template-columns:1fr!important}.foot-grid{grid-template-columns:1fr 1fr!important}.hero-pad{padding-top:138px!important}.ecard{min-height:440px!important}
}
@media(max-width:580px){
 .wrap{width:calc(100% - 28px)!important}.nav{padding:0 14px!important}.hero-pad h1{font-size:48px!important}.sec-h{font-size:42px!important}.events,.ann-grid,.gallery,.flyer-grid,.grid,.archive-grid,.posts,.post-grid,.blog-grid,.cards{grid-template-columns:1fr!important}.ann-grid img{height:auto!important}.capture{padding:38px 24px!important}.foot-grid{grid-template-columns:1fr!important}.hero h1{font-size:56px!important}.hero .inner{width:calc(100% - 28px)!important;padding-top:150px!important}
}
