:root{--onyx: #0C0A12;--onyx-2: #17131F;--onyx-3: #201A2C;--champagne: #E9C877;--champagne-soft: #F3E2B3;--magenta: #FF2E92;--violet: #A64DFF;--ivory: #F6F1EA;--muted: #C7BDD6;--line: rgba(233, 200, 119, .18)}body{background:var(--onyx);color:var(--ivory);font-family:Manrope,system-ui,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}.wrap{width:100%;max-width:1040px;margin:0 auto;padding:0 22px}.wrap-narrow{max-width:720px}.section{padding:68px 0;position:relative}.eyebrow{font-family:Syncopate,sans-serif;font-size:.62rem;font-weight:700;letter-spacing:.34em;text-transform:uppercase;color:var(--champagne);margin:0 0 18px}.eyebrow-c{color:var(--champagne)}.h2{font-family:Syncopate,sans-serif;font-weight:700;font-size:clamp(1.35rem,5.4vw,2.15rem);line-height:1.18;letter-spacing:.01em;margin:0 0 26px;color:var(--ivory)}p{margin:0 0 16px}a{color:inherit}.btn{display:inline-flex;align-items:center;gap:10px;font-family:Manrope,sans-serif;font-weight:700;font-size:.98rem;letter-spacing:.01em;text-decoration:none;padding:14px 24px;border-radius:999px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;white-space:nowrap}.btn-primary{color:#17110a;background:linear-gradient(135deg,var(--champagne-soft),var(--champagne));box-shadow:0 10px 30px -12px #e9c87799}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 36px -12px #ff2e928c}.btn-ghost{color:var(--ivory);background:#ffffff0a;border:1px solid var(--line)}.btn-ghost:hover{transform:translateY(-2px);border-color:var(--champagne);background:#e9c87714}.btn-lg{padding:17px 32px;font-size:1.05rem}.btn .dot{width:9px;height:9px;border-radius:50%;background:#1db954;box-shadow:0 0 0 4px #1db95438}:focus-visible{outline:2px solid var(--magenta);outline-offset:3px;border-radius:4px}.hero{position:relative;min-height:calc(100svh - var(--demo-banner-h, 38px));display:flex;align-items:center;overflow:hidden;padding:40px 0 56px;background:radial-gradient(120% 80% at 50% -10%,rgba(166,77,255,.16),transparent 60%),radial-gradient(90% 60% at 80% 20%,rgba(255,46,146,.12),transparent 55%),var(--onyx)}.hero-glow{position:absolute;inset:0;background:radial-gradient(60% 40% at 50% 42%,rgba(233,200,119,.1),transparent 70%);pointer-events:none}.hero-inner{position:relative;width:100%;max-width:720px;margin:0 auto;padding:0 22px;text-align:center}.mark{position:relative;display:grid;place-items:center;margin:6px auto}.starburst{position:relative;width:min(64vw,260px);aspect-ratio:1;display:grid;place-items:center}.starburst:before{content:"";position:absolute;inset:-8%;border-radius:50%;background:repeating-conic-gradient(from 0deg,transparent 0 6deg,rgba(233,200,119,.2) 6deg 7.4deg);-webkit-mask:radial-gradient(circle,#000 26%,transparent 66%);mask:radial-gradient(circle,#000 26%,transparent 66%);animation:spin 44s linear infinite}.starburst:after{content:"";position:absolute;inset:16%;border-radius:50%;background:radial-gradient(circle,rgba(255,46,146,.3),rgba(166,77,255,.12) 55%,transparent 72%);filter:blur(4px)}.fiftyfour{position:relative;font-family:Syncopate,sans-serif;font-weight:700;font-size:clamp(3.6rem,20vw,6.4rem);letter-spacing:.03em;color:var(--champagne);text-shadow:0 0 22px rgba(233,200,119,.4),0 2px 0 rgba(0,0,0,.3)}.star{position:absolute;background:var(--champagne-soft);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);filter:drop-shadow(0 0 6px rgba(233,200,119,.8));animation:twinkle 3.2s ease-in-out infinite}.star.s1{width:20px;height:20px;top:8%;right:20%}.star.s2{width:13px;height:13px;bottom:16%;left:18%;animation-delay:1.1s}.wordmark{font-family:Syncopate,sans-serif;font-weight:700;font-size:clamp(1.6rem,7vw,2.6rem);letter-spacing:.14em;text-transform:uppercase;margin:4px 0 14px;color:var(--ivory)}.tagline{color:var(--muted);font-size:1.02rem;max-width:34ch;margin:0 auto 20px}.rating-pill{display:inline-flex;align-items:center;gap:8px;font-size:.92rem;color:var(--ivory);background:#ffffff0a;border:1px solid var(--line);padding:8px 16px;border-radius:999px;margin:0 0 24px}.rating-pill strong{color:var(--champagne)}.stars{color:var(--champagne);letter-spacing:2px}.cta-row{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.hero-photo{margin:40px auto 0;max-width:340px;position:relative}.hero-photo img{width:100%;border-radius:16px;border:1px solid var(--line);box-shadow:0 30px 60px -30px #000000e6,0 0 0 6px #e9c8770d}.hero-photo figcaption{font-size:.78rem;color:var(--muted);letter-spacing:.02em;margin-top:12px;text-transform:uppercase}.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(90deg,#ff2e920f,#a64dff0f);overflow:hidden;padding:16px 0}.marquee-track{display:inline-flex;white-space:nowrap;animation:slide 34s linear infinite}.marquee-item{font-family:Syncopate,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--champagne-soft);display:inline-flex;align-items:center}.marquee-item .sep{color:var(--magenta);margin:0 22px;font-size:.7rem}.about-grid{display:grid;gap:30px}.about-copy p{color:var(--muted)}.about-copy p:first-child{color:var(--ivory);font-size:1.08rem}.about-stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.about-stats li{background:var(--onyx-2);border:1px solid var(--line);border-radius:14px;padding:18px 10px;text-align:center}.about-stats b{display:block;font-family:Syncopate,sans-serif;font-size:1.15rem;color:var(--champagne);margin-bottom:6px}.about-stats span{font-size:.76rem;color:var(--muted)}.svc-grid{display:grid;gap:14px}.svc-card{background:var(--onyx-2);border:1px solid var(--line);border-radius:16px;padding:24px 22px;position:relative;transition:transform .25s ease,border-color .25s ease}.svc-card:hover{transform:translateY(-3px);border-color:var(--champagne)}.svc-mark{display:inline-block;width:26px;height:26px;margin-bottom:14px;background:conic-gradient(from 0deg,var(--champagne),var(--magenta),var(--violet),var(--champagne));-webkit-mask:radial-gradient(circle at 50% 50%,transparent 30%,#000 31%),conic-gradient(#000 0 0);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);border-radius:4px}.svc-card h3{font-family:Syncopate,sans-serif;font-size:.9rem;letter-spacing:.02em;margin:0 0 10px;color:var(--ivory);line-height:1.35}.svc-card p{color:var(--muted);font-size:.95rem;margin:0}.svc-note{margin-top:22px;font-size:.85rem;color:var(--muted);text-align:center}.cta-band{background:radial-gradient(80% 120% at 50% 0%,rgba(255,46,146,.14),transparent 60%),var(--onyx-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}.cta-band-inner p{color:var(--muted)}.cta-band-title{margin-bottom:12px}.starburst-mini{width:44px;height:44px;margin:0 auto 18px;background:repeating-conic-gradient(from 0deg,transparent 0 10deg,var(--champagne) 10deg 13deg);-webkit-mask:radial-gradient(circle,#000 18%,transparent 62%);mask:radial-gradient(circle,#000 18%,transparent 62%);opacity:.9}.gal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.gal-item{margin:0;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:var(--onyx-2)}.gal-item img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/4}.gal-big{grid-column:1 / -1}.gal-big img{aspect-ratio:16/11}.reviews{background:var(--onyx-2)}.rating-hero{display:flex;align-items:center;gap:18px;margin-bottom:30px}.rating-num{font-family:Syncopate,sans-serif;font-weight:700;font-size:clamp(3rem,16vw,4.6rem);line-height:1;color:var(--champagne);text-shadow:0 0 26px rgba(233,200,119,.3)}.rating-meta{display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:.9rem}.stars.big{font-size:1.2rem}.rev-grid{display:grid;gap:14px}.rev-card{background:var(--onyx);border:1px solid var(--line);border-radius:16px;padding:26px 22px 22px;position:relative}.quote-mark{position:absolute;top:6px;right:20px;font-family:Syncopate,sans-serif;font-size:3rem;color:var(--magenta);opacity:.5;line-height:1}.rev-card blockquote{margin:0 0 16px;font-size:1.02rem;line-height:1.6;color:var(--ivory)}.rev-card figcaption{display:flex;flex-direction:column}.rev-card figcaption b{color:var(--champagne);font-size:.95rem}.rev-card figcaption span{color:var(--muted);font-size:.8rem}.rev-cta{text-align:center;margin-top:26px}.loc-grid{display:grid;gap:26px}.loc-address{color:var(--muted)}.hours{width:100%;border-collapse:collapse;margin:6px 0 20px;font-size:.95rem}.hours th,.hours td{text-align:left;padding:10px 0;border-bottom:1px solid var(--line)}.hours th{font-weight:600;color:var(--ivory)}.hours td{text-align:right;color:var(--champagne-soft)}.hours tr.closed td{color:var(--magenta)}.attrs{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-wrap:wrap;gap:10px}.attrs li{font-size:.85rem;color:var(--ivory);background:#ffffff0a;border:1px solid var(--line);padding:8px 14px;border-radius:999px}.loc-actions{display:flex;flex-wrap:wrap;gap:12px}.loc-map{border-radius:16px;overflow:hidden;border:1px solid var(--line);min-height:300px;background:var(--onyx-2)}.loc-map iframe{width:100%;height:100%;min-height:300px;border:0;display:block;filter:grayscale(.2) contrast(1.05)}.faq-list{display:grid;gap:10px}.faq details{background:var(--onyx-2);border:1px solid var(--line);border-radius:12px;padding:4px 20px}.faq summary{cursor:pointer;list-style:none;padding:16px 0;font-weight:700;color:var(--ivory);display:flex;justify-content:space-between;align-items:center;gap:12px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-family:Syncopate,sans-serif;color:var(--champagne);font-size:1.1rem;transition:transform .2s ease}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{color:var(--muted);margin:0 0 16px;font-size:.95rem}.final-cta{text-align:center;background:radial-gradient(70% 90% at 50% 100%,rgba(166,77,255,.16),transparent 60%),var(--onyx)}.final-inner p{color:var(--muted);max-width:40ch;margin-left:auto;margin-right:auto}.mark.small{margin-bottom:6px}.mark.small .starburst{width:min(40vw,150px)}.mark.small .fiftyfour{font-size:clamp(2.4rem,12vw,3.6rem)}.foot{text-align:center;padding:44px 22px 96px;border-top:1px solid var(--line);color:var(--muted);font-size:.9rem}.foot-name{font-family:Syncopate,sans-serif;font-weight:700;letter-spacing:.12em;color:var(--champagne);margin-bottom:10px}.foot a{color:var(--champagne-soft);text-decoration:none}.foot-hours{margin-top:6px;font-size:.82rem}body.has-js .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}body.has-js .reveal.in{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slide{to{transform:translate(-50%)}}@keyframes twinkle{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}@media(prefers-reduced-motion:reduce){.starburst:before,.marquee-track,.star{animation:none!important}body.has-js .reveal{opacity:1;transform:none}}@media(min-width:720px){.about-grid{grid-template-columns:1.4fr 1fr;align-items:center}.svc-grid,.gal-grid{grid-template-columns:repeat(3,1fr)}.gal-big{grid-column:span 2;grid-row:span 2}.gal-big img{aspect-ratio:auto;height:100%}.rev-grid{grid-template-columns:repeat(2,1fr)}.loc-grid{grid-template-columns:1fr 1fr;align-items:stretch}.hero-photo{max-width:420px}}@media(min-width:1000px){.svc-grid{grid-template-columns:repeat(3,1fr)}}
