:root{--bg:#0e0e11;--surface:#18181d;--surface-2:#222229;--line:#2f2f38;--text:#f4f4f6;--muted:#b3b3bd;--red:#ff2d16;--red-dark:#d81f0b;--yellow:#ffc20e;--radius:10px;--wrap:1180px;--head:"Arial Narrow", "Roboto Condensed", "Helvetica Neue", Arial, sans-serif;--body:system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font:16px/1.6 var(--body);margin:0;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:var(--yellow);text-underline-offset:3px}a:hover{color:#fff}h1,h2,h3{font-family:var(--head);letter-spacing:.01em;margin:0 0 .5em;line-height:1.1}h1{text-transform:uppercase;font-size:clamp(2rem,7vw,3.6rem);font-weight:800}h2{text-transform:uppercase;font-size:clamp(1.6rem,5vw,2.4rem);font-weight:800}h3{font-size:1.25rem;font-weight:700}p{margin:0 0 1em}.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 16px}.small{font-size:.875rem}.muted{color:var(--muted)}.skip{background:var(--yellow);color:#000;z-index:100;padding:8px 12px;position:absolute;top:0;left:-999px}.skip:focus{left:8px}:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}.btn{min-height:48px;font:700 1rem/1 var(--body);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;white-space:nowrap;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.4em;padding:0 22px;text-decoration:none;display:inline-flex}.btn-primary{color:#fff;background:#d81f0b}.btn-primary:hover{color:#fff;background:#b51a09}.btn-ghost{color:#fff;background:#00000040;border-color:#ffffffb3}.btn-ghost:hover{color:#000;background:#fff}.btn-sm{min-height:40px;padding:0 14px;font-size:.85rem}.btn-row{flex-wrap:wrap;gap:10px;display:flex}#promo-banner{background:var(--yellow);color:#111;font-size:.9rem}.promo-inner{align-items:center;gap:8px;padding-top:8px;padding-bottom:8px;display:flex}.promo-inner p{flex:1;margin:0}.promo-close{color:#111;cursor:pointer;background:0 0;border:0;flex:none;width:40px;height:40px;font-size:1.6rem;line-height:1}.site-header{z-index:50;border-bottom:1px solid var(--line);background:#0e0e11f5;position:sticky;top:0}.header-inner{align-items:center;gap:10px;min-height:62px;display:flex}.logo{flex:none;margin-right:auto}.logo img{width:128px;height:auto}.main-nav{order:3}.desk-links{display:none}.menu summary{cursor:pointer;justify-content:center;align-items:center;width:44px;height:44px;list-style:none;display:flex}.menu summary::-webkit-details-marker{display:none}.menu-label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.burger,.burger:before,.burger:after{background:#fff;width:22px;height:2px;transition:transform .2s;display:block;position:relative}.burger:before,.burger:after{content:"";position:absolute;left:0}.burger:before{top:-7px}.burger:after{top:7px}.menu[open] .burger{background:0 0}.menu[open] .burger:before{transform:translateY(7px)rotate(45deg)}.menu[open] .burger:after{transform:translateY(-7px)rotate(-45deg)}.menu-panel{background:var(--surface);border-bottom:1px solid var(--line);max-height:calc(100vh - 62px);padding:12px 16px 20px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.menu-heading{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0 0 6px;font-size:.8rem}.menu-panel ul{margin:0;padding:0;list-style:none}.menu-activities{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.menu-panel a{color:#fff;border-bottom:1px solid var(--line);padding:10px 0;font-weight:600;text-decoration:none;display:block}.menu-panel a[aria-current]{color:var(--yellow)}.menu-links{margin-top:12px!important}.header-phone{color:#fff;order:1;justify-content:center;align-items:center;width:44px;height:44px;text-decoration:none;display:inline-flex}.header-phone-num{display:none}.site-header .btn-sm{order:2}@media (width>=960px){.logo img{width:160px}.main-nav{order:0;align-items:center;gap:8px;margin-right:8px;display:flex}.menu{position:relative}.menu summary{gap:8px;width:auto;padding:0 12px}.menu-label{clip:auto;width:auto;height:auto;font-weight:600;position:static}.menu-panel{border:1px solid var(--line);border-radius:var(--radius);width:420px;top:calc(100% + 10px);left:auto;right:0}.menu-links{display:none}.desk-links{gap:4px;margin:0;padding:0;list-style:none;display:flex}.desk-links a{color:#fff;border-radius:6px;padding:10px 12px;font-weight:600;text-decoration:none}.desk-links a:hover,.desk-links a[aria-current]{color:var(--yellow)}.header-phone{order:0;gap:6px;width:auto;font-weight:700}.header-phone-num{display:inline}}.hero{isolation:isolate;color:#fff;background:#000;position:relative}.hero>img{object-fit:cover;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.hero:after{content:"";z-index:-1;background:linear-gradient(#0003 0%,#0009 40%,#000000f0 100%);position:absolute;inset:0}.hero+.section{padding-top:32px}.hero-inner{flex-direction:column;justify-content:flex-end;min-height:56vh;padding:72px 16px 24px;display:flex}.hero-home .hero-inner{min-height:0;padding-top:110px;padding-bottom:20px}.hero-home h1{font-size:clamp(1.9rem,8.4vw,3.6rem)}.hero-home .btn{min-height:46px;padding:0 18px}.kicker{font:700 .8rem/1 var(--body);text-transform:uppercase;letter-spacing:.12em;color:var(--yellow);margin-bottom:10px;display:inline-block}.hero h1{text-shadow:0 2px 16px #00000080;margin-bottom:.3em}.hero .lead{max-width:40ch;margin-bottom:16px;font-size:1.1rem}@media (width>=760px){.hero-home .hero-inner{min-height:620px;padding-top:260px;padding-bottom:48px}.hero-inner{min-height:460px;padding-bottom:48px}}.today{background:#0009;border:1px solid #ffffff2e;border-radius:999px;align-self:flex-start;align-items:center;gap:10px;max-width:100%;margin:0 0 16px;padding:8px 14px;font-size:.92rem;display:inline-flex}.today a{color:var(--yellow)}.today .dot{background:var(--muted);border-radius:50%;flex:none;width:10px;height:10px}.today[data-state=open] .dot{background:#3adb76;box-shadow:0 0 0 4px #3adb7633}.today[data-state=later] .dot{background:var(--yellow)}.today[data-state=closed] .dot{background:var(--red)}.section{padding:48px 0}.section-alt{background:var(--surface)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:8px 16px;margin-bottom:20px;display:flex}.section-head h2,.section-head p{margin:0}@media (width>=760px){.section{padding:72px 0}}.tiles{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.tile{border-radius:var(--radius);color:#fff;aspect-ratio:1;background:var(--surface-2);isolation:isolate;text-decoration:none;display:block;position:relative;overflow:hidden}.tile img{object-fit:cover;z-index:-2;width:100%;height:100%;transition:transform .4s;position:absolute;inset:0}.tile:after{content:"";z-index:-1;background:linear-gradient(#0000 35%,#000000d9);position:absolute;inset:0}.tile:hover img{transform:scale(1.05)}.tile-body{padding:12px;position:absolute;bottom:0;left:0;right:0}.tile h3{text-transform:uppercase;margin:0;font-size:1.15rem}.tile p{color:#ddd;margin:4px 0 0;font-size:.88rem;line-height:1.4;display:none}.tile .tag{background:var(--yellow);color:#111;text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:3px 8px;font-size:.7rem;font-weight:800;position:absolute;top:10px;left:10px}@media (width>=760px){.tiles{grid-template-columns:repeat(4,1fr);gap:14px}.tile{aspect-ratio:4/5}.tile p{display:block}.tile-body{padding:16px}}.home-tiles{padding-top:20px}.home-tiles .section-head{margin-bottom:12px}.home-tiles .section-head h2{font-size:1.5rem}.specials-grid{gap:14px;display:grid}.special{background:var(--surface-2);border:1px solid var(--line);border-left:4px solid var(--yellow);border-radius:var(--radius);overflow:hidden}.special img{aspect-ratio:16/9;object-fit:cover;width:100%}.special-body{padding:16px}.special-body h3{margin-bottom:.3em}.special-body p:last-child{margin:0}@media (width>=760px){.specials-grid{grid-template-columns:repeat(3,1fr);align-items:start}}.split{gap:28px;display:grid}@media (width>=900px){.split{grid-template-columns:1.15fr .85fr;align-items:start;gap:48px}}.facts{flex-wrap:wrap;gap:8px;margin:0 0 20px;padding:0;list-style:none;display:flex}.facts li{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:.88rem;font-weight:600}.rules{margin:0 0 20px;padding:0;list-style:none}.rules li{border-bottom:1px solid var(--line);padding:10px 0 10px 28px;position:relative}.rules li:before{content:"";background:var(--red);width:10px;height:10px;position:absolute;top:18px;left:4px;transform:rotate(45deg)}.sticky-col{position:sticky;top:80px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.panel+.panel{margin-top:16px}.panel h2{font-size:1.5rem}.price-groups{gap:12px;display:grid}.price-card{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}.price-card h3{text-transform:uppercase;color:var(--yellow);margin-bottom:.4em;font-size:1.05rem}.price-card .muted{margin:-.2em 0 .5em}.price-card dl{margin:0}.price-card dl div{border-top:1px dashed var(--line);justify-content:space-between;gap:12px;padding:7px 0;display:flex}.price-card dl div:first-child{border-top:0}.price-card dd{font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-weight:800}.hours table{border-collapse:collapse;width:100%;font-size:.95rem}.hours caption{text-align:left;font:800 1.05rem var(--head);text-transform:uppercase;color:var(--yellow);padding-bottom:6px}.hours th,.hours td{text-align:left;border-top:1px solid var(--line);vertical-align:top;padding:8px 6px}.hours th{width:4.2em;font-weight:700}.hours .long{display:none}.hours .range{font-variant-numeric:tabular-nums;display:block}.hours .after{color:var(--muted);font-size:.82rem;display:block}.hours tr.is-today{background:#ffc20e1a}.hours tr.is-today th{color:var(--yellow)}.hours tr.is-today th:after{content:"Today";text-transform:uppercase;letter-spacing:.08em;font-size:.65rem;display:block}@media (width>=560px){.hours th{width:8.5em}.hours .long{display:inline}.hours .short{display:none}}.gallery{grid-template-columns:1fr 1fr;gap:8px;display:grid}.gallery img{aspect-ratio:4/3;object-fit:cover;border-radius:8px;width:100%;height:100%}@media (width>=760px){.gallery{grid-template-columns:repeat(3,1fr);gap:12px}}.jump{scrollbar-width:thin;gap:8px;margin-bottom:8px;padding:4px 0 12px;display:flex;overflow-x:auto}.jump a{background:var(--surface-2);border:1px solid var(--line);color:#fff;border-radius:999px;flex:none;padding:8px 14px;font-size:.9rem;font-weight:600;text-decoration:none}.price-section{border-top:1px solid var(--line);padding:28px 0;scroll-margin-top:80px}.price-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.price-section-head h2{margin:0;font-size:1.7rem}@media (width>=760px){.price-groups.cols{grid-template-columns:repeat(3,1fr)}}.hours-grid{gap:24px;display:grid}@media (width>=900px){.hours-grid{grid-template-columns:repeat(3,1fr)}}.form{gap:14px;display:grid}.field{gap:6px;display:grid}.field label{font-size:.95rem;font-weight:700}.field .hint{color:var(--muted);font-size:.82rem}.req{color:var(--yellow)}input,select,textarea{width:100%;min-height:48px;font:16px/1.4 var(--body);color:var(--text);background:#0b0b0d;border:1px solid #45454f;border-radius:8px;padding:10px 12px}textarea{resize:vertical;min-height:110px}input:focus,select:focus,textarea:focus{border-color:var(--yellow);outline:none;box-shadow:0 0 0 3px #ffc20e40}[aria-invalid=true]{border-color:var(--red)}.err{color:#ff8a7a;min-height:0;font-size:.85rem}.err:empty{display:none}.row-2{gap:14px;display:grid}@media (width>=560px){.row-2{grid-template-columns:1fr 1fr}}#hours-hint:empty{display:none}#hours-hint{margin:-4px 0 0}.row-3{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width>=640px){.row-3{grid-template-columns:1.3fr 1fr .7fr}}.row-3 .field:first-child{grid-column:1/-1}@media (width>=640px){.row-3 .field:first-child{grid-column:auto}}.notice{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;padding:14px 16px}.notice-warn{border-color:var(--yellow)}.notice-error{border-color:var(--red);background:#ff2d161a}.notice p:last-child{margin:0}.success{text-align:center;border-radius:var(--radius);background:#3adb7614;border:2px solid #3adb76;padding:28px 18px}.success h2{color:#3adb76}.cta-band{color:#fff;background:#d81f0b;padding:36px 0}.cta-band h2{margin-bottom:.2em}.cta-band .btn-primary{background:#111}.cta-band .btn-primary:hover{background:#000}.cta-band a:not(.btn){color:#fff}.cta-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.cta-inner p{margin:0}.map-card{border-radius:var(--radius);color:#fff;text-decoration:none;display:block;position:relative;overflow:hidden}.map-card span{position:absolute;bottom:12px;left:12px}.site-footer{border-top:3px solid var(--red);background:#08080a;padding:40px 0 16px;font-size:.95rem}.footer-grid{gap:28px;display:grid}.footer-grid img{width:140px;margin-bottom:10px}@media (width>=760px){.footer-grid{grid-template-columns:1.3fr 1fr 1fr 1fr}}.footer-h{color:var(--yellow);font-size:1rem}.site-footer address{margin-bottom:1em;font-style:normal}.footer-hours,.footer-links,.social{margin:0;padding:0;list-style:none}.footer-hours li{justify-content:space-between;max-width:220px;padding:2px 0;display:flex}.footer-links li{padding:3px 0}.footer-links a,.social a{color:var(--text);text-decoration:none}.footer-links a:hover,.social a:hover{color:var(--yellow)}.social{gap:14px;margin-top:14px;display:flex}.footer-base{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:12px;margin-top:32px;padding-top:14px;font-size:.8rem;display:flex}.staff-login{color:var(--muted)}.mobile-bar{z-index:40;border-top:1px solid var(--line);background:#0e0e11f7;gap:8px;padding:10px 16px;display:flex;position:sticky;bottom:0}.mobile-bar .btn{flex:1}@media (width>=900px){.mobile-bar{display:none}}.prose{max-width:68ch}.prose p{color:#e2e2e8}.stack>*+*{margin-top:16px}.price-section .price-groups{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.h-sub{margin-top:1.2em;font-size:1.5rem}.split img{border-radius:var(--radius)}.hero>img{border-radius:0}
