:root{--bg-canvas:#1e2530;--bg-surface:#303438;--bg-surface-hover:#3a403d;--text-primary:#fff;--text-muted:#d1d5ce;--accent-primary:#a3e635;--accent-secondary:#d5f5a1;--border-subtle:#626b62;--ease-kinetic:cubic-bezier(.16,1,.3,1);--shadow-elevation:0 12px 32px -4px rgba(0,0,0,.25);--glow-accent:0 0 24px -4px rgba(163,230,53,.22);--glass-backdrop:blur(16px) saturate(180%);--radius:4px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg-canvas);color:var(--text-primary);font:17px/1.7 system-ui,"Segoe UI",Roboto,sans-serif;overflow-wrap:anywhere;hyphens:auto}h1,h2,h3{font-weight:800;letter-spacing:-.04em;line-height:1.12;text-wrap:balance}h1{font-size:clamp(2.5rem,5.8vw,5rem);margin:.4em 0}h2{font-size:clamp(1.8rem,3vw,2.8rem);margin:0 0 .7em}h3{font-size:1.35rem;margin:.3em 0 .7em}p{margin:0 0 1.2em}a{color:var(--accent-primary);text-underline-offset:4px}a:hover{color:var(--accent-secondary)}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent-primary);outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}figure{margin:0}figcaption{font-size:.84rem;color:var(--text-muted);padding:.6rem 0}ul,ol{padding-left:1.4rem}li{margin-bottom:.6rem}.wrap{width:min(1200px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;top:-100px;left:12px;z-index:20;padding:10px;background:var(--accent-primary);color:#17200f}.skip-link:focus{top:10px}.site-header{position:relative;border-bottom:1px solid var(--border-subtle);z-index:5}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:94px;padding:16px 24px;max-width:1600px;margin:auto}.brand{display:flex;align-items:center;gap:10px;color:white;text-decoration:none;font-weight:800;font-size:1rem;letter-spacing:-.035em;white-space:nowrap}.brand-mark{display:grid;place-items:center;background:var(--accent-primary);color:#1c2615;width:32px;height:32px;border-radius:4px;font-size:1.4rem;flex-shrink:0}.site-nav{display:flex;gap:20px;align-items:center}.site-nav a{font-size:.85rem;text-decoration:none;color:var(--text-primary);white-space:nowrap}.site-nav a[aria-current=page]{color:var(--accent-primary);text-decoration:underline}.menu-toggle{display:none;background:transparent;color:white;border:1px solid var(--border-subtle);border-radius:4px;font-size:2rem;width:44px;line-height:1.1;height:44px}.eyebrow{font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-primary);font-weight:800}.hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center;padding-block:64px 72px}.hero-copy{position:relative;z-index:1}.hero-copy>p:not(.eyebrow){max-width:49ch;color:var(--text-muted);font-size:1.1rem}.hero-visual{position:relative;min-width:0}.hero-visual img{aspect-ratio:4/5;max-height:600px;filter:contrast(1.12) brightness(.82)}.hero-visual:before{content:"";position:absolute;inset:8% -3% 2% 20%;background:radial-gradient(ellipse,rgba(163,230,53,.19),transparent 70%);filter:blur(28px);animation:ambientFloat 12s ease-in-out infinite;pointer-events:none}.photo-note{position:absolute;bottom:20px;left:20px;right:20px;background:rgba(30,37,48,.85);border:1px solid var(--border-subtle);padding:16px;backdrop-filter:var(--glass-backdrop);border-radius:4px;font-size:.9rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--accent-primary);border-radius:4px;background:transparent;color:var(--accent-primary);text-decoration:none;padding:13px 18px;font-size:.77rem;line-height:1.4;font-weight:800;letter-spacing:.1em;text-transform:uppercase;transition:transform .35s var(--ease-kinetic),box-shadow .35s,background .35s}.button:hover{background:var(--bg-surface-hover);color:white;transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent)}.button.dark{border-color:#1e2530;color:#1e2530}.button.dark:hover{background:#d5f5a1;color:#1e2530}.section{padding-block:48px}.section-heading{max-width:760px;margin-bottom:30px}.section-heading p,.muted{color:var(--text-muted)}.bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"priority priority checklist" "spot music music" "seating seating menu";gap:24px}.tile{position:relative;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:4px;min-width:0;transition:transform .4s var(--ease-kinetic),box-shadow .4s,border-color .4s}.tile:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent);border-color:var(--accent-primary)}.tile-body{padding:26px}.tile p{color:var(--text-muted)}.tile a:not(.button){font-weight:700}.tile-media{position:relative}.tile-media img{aspect-ratio:4/3;border-radius:4px 4px 0 0}.badge{display:inline-block;background:var(--accent-primary);color:#1c2615;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:800;padding:5px 12px;border-radius:4px}.tile-media .badge{position:absolute;left:24px;bottom:-12px}.tile-media+.tile-body{padding-top:32px}.priority{grid-area:priority;padding:32px;background:linear-gradient(125deg,#303438,#414b31,#303438);background-size:200% 200%;animation:gradientShift 12s ease infinite}.checklist{grid-area:checklist;padding:28px}.spot{grid-area:spot}.music{grid-area:music;display:grid;grid-template-columns:1fr 1fr}.music .tile-media img{height:100%;aspect-ratio:4/5;border-radius:4px 0 0 4px}.music .badge{bottom:20px;left:16px}.seating{grid-area:seating}.menu{grid-area:menu}.check-item{display:flex;align-items:flex-start;gap:10px;margin:14px 0;color:var(--text-muted);font-size:.93rem}.check-item input{accent-color:var(--accent-primary);width:18px;height:18px;flex-shrink:0;margin-top:5px}progress{width:100%;height:8px;accent-color:var(--accent-primary)}progress::-webkit-progress-bar{background:#1e2530;border-radius:4px}progress::-webkit-progress-value{background:var(--accent-primary);border-radius:4px}.progress-copy{font-size:.85rem;color:var(--accent-secondary)}.band{background:var(--accent-primary);color:#1e2530;padding:36px 0;margin-block:40px}.band p{max-width:75ch;margin:0}.band h2{font-size:1.9rem}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.section-number{display:block;color:var(--accent-primary);font-size:.85rem;letter-spacing:.12em;margin-bottom:16px}.diagram{display:flex;align-items:center;justify-content:center;gap:12px;padding:24px 12px;background:#242b26;border:1px dashed var(--border-subtle);border-radius:4px;margin:20px 0;flex-wrap:wrap}.seat{display:grid;place-items:center;width:64px;height:64px;border:1px solid var(--accent-primary);border-radius:4px;font-size:.72rem;color:var(--accent-secondary)}.table-space{padding:18px;border:1px dashed #a6ad9f;border-radius:4px;font-size:.8rem}.callout{padding:22px 26px;border-left:3px solid var(--accent-primary);background:#292f2e;border-radius:4px;margin-block:24px}.callout p:last-child{margin-bottom:0}.page-intro{padding-block:56px 36px;max-width:850px}.page-intro h1{font-size:clamp(2.5rem,5vw,4.5rem)}.page-intro .lede{font-size:1.15rem;color:var(--text-muted);max-width:65ch}.guide-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:24px;align-items:start;padding-bottom:64px}.prose{max-width:70ch;margin:0 auto}.prose h2{font-size:1.9rem;margin-top:1.7em}.prose h3{margin-top:1.4em}.prose p,.prose li{color:var(--text-muted)}.prose strong{color:var(--text-primary)}.article-main{padding:30px}.article-main h2:first-child{margin-top:0}.guide-aside{display:grid;gap:24px}.guide-aside .tile-body{padding:22px}.banner-image{aspect-ratio:16/9;margin-bottom:32px;filter:contrast(1.1) brightness(.9)}.content-page{max-width:800px;margin:0 auto;padding:0 0 64px}.legal p,.legal li{color:var(--text-muted)}.legal h2{font-size:1.6rem;margin-top:32px}.faq-list{display:grid;gap:14px}details{border:1px solid var(--border-subtle);border-radius:4px;background:var(--bg-surface);padding:0 22px}summary{font-weight:750;cursor:pointer;padding:20px 0;line-height:1.4}details p{color:var(--text-muted);margin-bottom:22px}details[open]{border-color:var(--accent-primary)}.form-panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:4px;padding:30px}.field{margin-bottom:20px}.field label{display:block;font-weight:700;margin-bottom:7px}.field input,.field textarea{width:100%;padding:12px;color:white;background:#202628;border:1px solid #7a847a;border-radius:4px}.field textarea{min-height:150px;resize:vertical}.form-help{font-size:.88rem;color:var(--text-muted)}.actions{display:flex;gap:12px;flex-wrap:wrap}.message-preview{white-space:pre-wrap;background:#202628;padding:20px;border:1px solid var(--border-subtle);border-radius:4px;max-height:400px;overflow:auto;font:inherit}.status{min-height:1.7em;color:var(--accent-secondary);margin-top:16px}.site-footer{border-top:1px solid var(--border-subtle);padding:40px 0 30px}.footer-top{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer-brand{font-weight:800;color:white}.footer-links{display:flex;gap:20px;flex-wrap:wrap;font-size:.9rem}.footer-small{margin:20px 0 0;color:var(--text-muted);font-size:.8rem}.footer-email{font-size:.9rem}.reveal-ready{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease-kinetic),transform .7s var(--ease-kinetic)}.reveal-visible{opacity:1;transform:translateY(0)}[hidden]{display:none!important}@keyframes gradientShift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@keyframes ambientFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-18px)}}
@media(min-width:1025px){.hero{min-height:680px}.seating .tile-body{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;align-items:center}}
@media(min-width:769px) and (max-width:1024px){.header-inner{flex-wrap:wrap;gap:12px}.site-nav{width:100%;justify-content:space-between}.hero{gap:28px}.bento{grid-template-columns:1fr 1fr;grid-template-areas:"priority priority" "checklist spot" "music music" "seating menu"}.guide-grid{grid-template-columns:minmax(0,1.7fr) minmax(230px,1fr)}}
@media(max-width:768px){.wrap{width:calc(100% - 36px)}.header-inner{min-height:76px;padding:14px 18px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;left:0;right:0;top:100%;padding:22px;background:rgba(30,37,48,.98);border-bottom:1px solid var(--accent-primary);box-shadow:var(--shadow-elevation);backdrop-filter:var(--glass-backdrop)}.site-nav.is-open{display:grid;animation:menuSlide .25s var(--ease-kinetic)}.site-nav a{padding:8px;font-size:1rem}.hero{grid-template-columns:1fr;padding-block:40px;gap:30px}.hero-visual img{aspect-ratio:16/9;max-height:420px}.bento{grid-template-columns:1fr 1fr;grid-template-areas:"priority priority" "checklist spot" "music music" "seating seating" "menu menu"}.guide-grid{grid-template-columns:1fr}.guide-aside{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.page-intro{padding-top:36px}.article-main{padding:24px}.section{padding-block:32px}.band{margin-block:24px}.photo-note{font-size:.8rem;padding:12px;bottom:12px;left:12px;right:12px}.content-page{padding-bottom:40px}.footer-top{flex-direction:column}.form-panel{padding:22px}@keyframes menuSlide{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:480px){.wrap{width:calc(100% - 28px)}.brand{font-size:.86rem;gap:7px}.brand-mark{width:27px;height:27px}.header-inner{padding-inline:14px;gap:8px}.bento{grid-template-columns:1fr;grid-template-areas:"priority" "checklist" "spot" "music" "seating" "menu"}.music{display:block}.music .tile-media img{aspect-ratio:4/3;height:auto;border-radius:4px 4px 0 0}.music .badge{bottom:-12px}.tile-body,.priority,.checklist{padding:22px}.grid{grid-template-columns:1fr}.guide-aside{grid-template-columns:1fr}.hero-visual img{aspect-ratio:4/3}.diagram{gap:8px}.seat{width:54px;height:54px}.table-space{padding:12px}.actions .button{width:100%}.article-main{padding:20px}.footer-links{gap:14px}.band h2{font-size:1.65rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}.tile:hover,.button:hover{transform:none}}