/* ===================================================================
   SMOOTH SWING — Demo Site Stylesheet
   Brand: Guideline v1. Two-tier: dark landing / light interior.
   Pure CSS. Fonts via Google Fonts (loaded in each HTML <head>).
   =================================================================== */

:root{
  --neon-cyan:#00EEFF;
  --neon-cyan-dk:#0090A8;
  --neon-magenta:#FF00AA;
  --neon-green:#38FF14;
  --neon-orange:#FF4400;
  --neon-yellow:#FFE81A;

  --d-bg:#0F0F0F; --d-bg2:#141414; --d-card:#171717; --d-muted:#242424;
  --d-border:#2E2E2E; --d-text:#F6F6F3; --d-dim:#A6A6A6;

  --l-bg:#FAFAF8; --l-card:#FFFFFF; --l-muted:#F0F0EC;
  --l-border:#E2E2DC; --l-text:#14160F; --l-dim:#5C5C58;

  --gradient-neon:linear-gradient(135deg,#00EEFF 0%,#FF00AA 100%);
  --gradient-fire:linear-gradient(135deg,#FF4400 0%,#FF00AA 100%);
  --glow-cyan:0 0 20px rgba(0,238,255,.55),0 0 40px rgba(0,238,255,.28);
  --glow-magenta:0 0 20px rgba(255,0,170,.55),0 0 40px rgba(255,0,170,.28);

  --radius:4px;
  --maxw:1140px;
  --font-display:'Bebas Neue',sans-serif;
  --font-body:'Space Grotesk',system-ui,sans-serif;
  --font-accent:'Permanent Marker',cursive;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}

body.dark{background:var(--d-bg);color:var(--d-text);}
body.light{background:var(--l-bg);color:var(--l-text);}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
.center{text-align:center;}

body.dark::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:linear-gradient(rgba(0,238,255,.04) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(0,238,255,.04) 1px,transparent 1px);
  background-size:48px 48px;
}
body.dark > *:not(.gate){position:relative;z-index:1;}

/* LOGO */
.logo{display:flex;align-items:center;gap:10px;}
.logo .mark{width:32px;height:32px;border-radius:6px;background:var(--gradient-neon);display:grid;place-items:center;font-family:var(--font-display);font-size:22px;color:#0F0F0F;}
.logo .word{font-family:var(--font-display);font-size:24px;letter-spacing:.06em;line-height:1;}
body.dark .logo .mark{box-shadow:var(--glow-cyan);}
body.dark .logo .word .a{color:var(--d-text);} body.dark .logo .word .b{color:var(--neon-cyan);}
body.light .logo .word .a{color:var(--l-text);} body.light .logo .word .b{color:var(--neon-cyan-dk);}

/* NAV */
.nav{position:sticky;top:0;z-index:60;backdrop-filter:blur(12px);}
body.dark .nav{background:rgba(15,15,15,.85);border-bottom:1px solid var(--d-border);}
body.light .nav{background:rgba(250,250,248,.9);border-bottom:1px solid var(--l-border);}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:66px;}
.nav-links{display:flex;gap:24px;align-items:center;}
.nav-links a{font-size:13px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;transition:color .2s;}
body.dark .nav-links a{color:var(--d-dim);} body.dark .nav-links a:hover,body.dark .nav-links a.active{color:var(--neon-cyan);}
body.light .nav-links a{color:var(--l-dim);} body.light .nav-links a:hover,body.light .nav-links a.active{color:var(--neon-cyan-dk);}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;font-size:24px;color:inherit;}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-body);font-weight:600;font-size:15px;padding:13px 26px;border-radius:var(--radius);border:none;cursor:pointer;transition:transform .15s,box-shadow .2s,background .2s;letter-spacing:.02em;line-height:1;}
.btn:hover{transform:translateY(-2px);}
.btn-fire{background:var(--gradient-fire);color:#fff;}
.btn-fire:hover{box-shadow:var(--glow-magenta);}
.btn-cyan{background:var(--neon-cyan);color:#0F0F0F;}
.btn-cyan:hover{box-shadow:var(--glow-cyan);}
.btn-ghost{background:transparent;border:1.5px solid var(--neon-cyan);color:var(--neon-cyan);}
.btn-ghost:hover{background:rgba(0,238,255,.1);box-shadow:var(--glow-cyan);}
body.light .btn-ghost{border-color:var(--neon-cyan-dk);color:var(--neon-cyan-dk);}
body.light .btn-ghost:hover{background:rgba(0,144,168,.08);box-shadow:none;}
.btn-dark{background:#14160F;color:#fff;}
.btn-dark:hover{background:#000;}
.btn-lg{padding:16px 34px;font-size:17px;}
.btn-block{width:100%;justify-content:center;}

/* SECTIONS */
section{padding:84px 0;position:relative;}
.kicker{font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;margin-bottom:12px;color:var(--neon-magenta);}
h1,h2{font-family:var(--font-display);font-weight:400;letter-spacing:.02em;line-height:.95;}
h2.sec{font-size:clamp(38px,6vw,64px);margin-bottom:16px;}
.lead{max-width:640px;margin-bottom:44px;font-size:17px;}
body.dark .lead{color:var(--d-dim);} body.light .lead{color:var(--l-dim);}
.lead.center{margin-left:auto;margin-right:auto;}

/* HERO */
.hero{padding:110px 0 84px;overflow:hidden;}
.hero::after{content:"";position:absolute;top:-25%;right:-8%;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(255,0,170,.16),transparent 62%);z-index:0;}
.hero .wrap{position:relative;z-index:2;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--neon-cyan);border:1px solid rgba(0,238,255,.4);padding:6px 14px;border-radius:999px;margin-bottom:26px;}
.eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--neon-green);box-shadow:0 0 8px var(--neon-green);}
.hero h1{font-size:clamp(60px,11vw,138px);line-height:.85;}
.hero h1 .l1{display:block;color:var(--d-text);}
.hero h1 .l2{display:block;color:var(--neon-cyan);text-shadow:var(--glow-cyan);}
.hero h1 .l3{display:block;font-family:var(--font-accent);font-size:.32em;color:var(--neon-magenta);text-shadow:var(--glow-magenta);margin-top:14px;}
.hero .sub{max-width:540px;color:var(--d-dim);font-size:18px;margin:26px 0 34px;}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;}

/* Landing hero with image banner */
.hero-banner{
  background:
    linear-gradient(90deg, rgba(15,15,15,.97) 0%, rgba(15,15,15,.85) 36%, rgba(15,15,15,.4) 68%, rgba(15,15,15,.6) 100%),
    url('../img/hero.svg') center right / cover no-repeat,
    var(--d-bg);
}
.hero-banner::after{display:none;}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;border:none;}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(15,15,15,.92) 0%,rgba(15,15,15,.72) 42%,rgba(15,15,15,.45) 100%),linear-gradient(0deg,rgba(15,15,15,.8),rgba(15,15,15,.15));}
.hero.has-video .wrap{position:relative;z-index:2;}
@media(max-width:680px){
  .hero-banner{background:
    linear-gradient(180deg, rgba(15,15,15,.92) 0%, rgba(15,15,15,.78) 60%, rgba(15,15,15,.9) 100%),
    url('../img/hero.svg') center center / cover no-repeat, var(--d-bg);}
}

/* STATS */
.stats{display:flex;gap:54px;flex-wrap:wrap;margin-top:54px;}
.stat .n{font-family:var(--font-display);font-size:52px;line-height:1;}
.stat .l{font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-top:4px;}
body.dark .stat .l{color:var(--d-dim);} body.light .stat .l{color:var(--l-dim);}
.stat.c .n{color:var(--neon-cyan);} .stat.g .n{color:var(--neon-green);} .stat.m .n{color:var(--neon-magenta);}

/* GRID + CARDS */
.grid{display:grid;gap:20px;}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-2{grid-template-columns:repeat(2,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
.card{border-radius:var(--radius);padding:26px;}
body.dark .card{background:var(--d-card);border:1px solid var(--d-border);}
body.light .card{background:var(--l-card);border:1px solid var(--l-border);box-shadow:0 1px 3px rgba(20,22,15,.04);}
.card h3{font-family:var(--font-display);font-size:26px;letter-spacing:.03em;margin-bottom:8px;}
.card p{font-size:15px;}
body.dark .card p{color:var(--d-dim);} body.light .card p{color:var(--l-dim);}
.card .ico{width:46px;height:46px;border-radius:var(--radius);background:var(--gradient-neon);display:grid;place-items:center;font-family:var(--font-display);font-size:24px;color:#0F0F0F;margin-bottom:16px;}
.card .num-ico{font-family:var(--font-display);font-size:34px;color:var(--neon-cyan);margin-bottom:6px;}
body.light .card .num-ico{color:var(--neon-cyan-dk);}

.feature{display:flex;gap:16px;align-items:flex-start;}
.feature .fi{flex:0 0 46px;width:46px;height:46px;border-radius:var(--radius);background:var(--gradient-neon);display:grid;place-items:center;font-family:var(--font-display);font-size:22px;color:#0F0F0F;}
.feature h4{font-family:var(--font-display);font-size:22px;letter-spacing:.03em;margin-bottom:4px;}
.feature p{font-size:14px;}
body.dark .feature p{color:var(--d-dim);} body.light .feature p{color:var(--l-dim);}

/* BADGES */
.badge{display:inline-block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:3px 10px;border-radius:999px;margin-bottom:14px;font-weight:600;}
.badge-green{color:var(--neon-green);border:1px solid rgba(56,255,20,.45);}
.badge-cyan{color:#0F0F0F;background:var(--neon-cyan);}
.badge-violet{color:var(--neon-magenta);border:1px solid rgba(255,0,170,.45);}

/* PRICING */
.price-tier{position:relative;border-radius:var(--radius);padding:30px 26px;}
body.dark .price-tier{background:var(--d-card);border:1px solid var(--d-border);}
body.light .price-tier{background:var(--l-card);border:1px solid var(--l-border);}
.price-tier.featured{border-color:var(--neon-cyan);}
body.dark .price-tier.featured{box-shadow:var(--glow-cyan);}
body.light .price-tier.featured{border-color:var(--neon-cyan-dk);box-shadow:0 6px 30px rgba(0,144,168,.12);}
.price-tier .tname{font-family:var(--font-display);font-size:30px;letter-spacing:.04em;}
.price-tier .amt{font-family:var(--font-display);font-size:56px;line-height:1;color:var(--neon-cyan);margin:6px 0 4px;}
body.light .price-tier .amt{color:var(--neon-cyan-dk);}
.price-tier .amt small{font-family:var(--font-body);font-size:15px;color:inherit;opacity:.6;}
.price-tier .rows{margin:18px 0 22px;border-top:1px solid var(--d-border);padding-top:16px;}
body.light .price-tier .rows{border-top-color:var(--l-border);}
.price-tier .prow{display:flex;justify-content:space-between;font-size:14px;padding:7px 0;}
.price-tier .prow span:first-child{opacity:.7;text-transform:uppercase;letter-spacing:.06em;font-size:12px;}
.price-tier .prow span:last-child{font-weight:600;}

.ptable{border-radius:var(--radius);overflow:hidden;}
body.dark .ptable{background:var(--d-card);border:1px solid var(--d-border);}
body.light .ptable{background:var(--l-card);border:1px solid var(--l-border);}
.ptable .r{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;}
.ptable .r + .r{border-top:1px solid var(--d-border);}
body.light .ptable .r + .r{border-top-color:var(--l-border);}
.ptable .r .lbl{font-family:var(--font-display);font-size:22px;letter-spacing:.03em;}
.ptable .r .meta{font-size:13px;opacity:.65;display:block;font-family:var(--font-body);letter-spacing:0;}
.ptable .r .val{font-family:var(--font-display);font-size:34px;color:var(--neon-cyan);}
body.light .ptable .r .val{color:var(--neon-cyan-dk);}

/* TESTIMONIALS */
.quote{border-radius:var(--radius);padding:26px;}
body.dark .quote{background:var(--d-card);border:1px solid var(--d-border);}
body.light .quote{background:var(--l-card);border:1px solid var(--l-border);}
.quote p{font-size:16px;margin-bottom:16px;}
.quote .who{font-family:var(--font-display);font-size:20px;letter-spacing:.04em;}
.quote .role{font-size:12px;text-transform:uppercase;letter-spacing:.1em;opacity:.6;}

/* BANDS */
.band{border-radius:var(--radius);padding:40px;display:flex;justify-content:space-between;align-items:center;gap:28px;flex-wrap:wrap;}
.band.genesis{background:linear-gradient(135deg,rgba(0,238,255,.12),rgba(56,255,20,.08));border:1px solid var(--neon-green);}
body.light .band.genesis{background:linear-gradient(135deg,rgba(0,238,255,.08),rgba(56,255,20,.06));}
.band h3{font-family:var(--font-display);font-size:38px;letter-spacing:.03em;margin-bottom:6px;}
.band p{font-size:15px;max-width:440px;}
body.dark .band p{color:var(--d-dim);} body.light .band p{color:var(--l-dim);}

/* FOOTER */
footer.foot{padding:54px 0 60px;border-top:1px solid var(--d-border);}
body.dark footer.foot{color:var(--d-dim);}
body.light footer.foot{border-top-color:var(--l-border);color:var(--l-dim);}
.foot-grid{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;margin-bottom:30px;}
.foot-grid .col h5{font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px;opacity:.7;}
.foot-grid .col a{display:block;font-size:14px;padding:4px 0;}
body.dark .foot-grid .col a:hover{color:var(--neon-cyan);}
body.light .foot-grid .col a:hover{color:var(--neon-cyan-dk);}
.foot-bottom{font-size:13px;opacity:.7;padding-top:24px;border-top:1px solid var(--d-border);}
body.light .foot-bottom{border-top-color:var(--l-border);}

/* GATE */
.gate{position:fixed;inset:0;z-index:200;background:rgba(8,8,8,.92);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:24px;}
.gate.open{display:flex;}
.gate-box{position:relative;background:var(--d-card);border:1px solid var(--neon-cyan);border-radius:var(--radius);box-shadow:var(--glow-cyan);padding:40px;max-width:420px;width:100%;text-align:center;}
.gate-box h3{font-family:var(--font-display);font-size:34px;color:var(--neon-cyan);letter-spacing:.04em;margin-bottom:8px;}
.gate-box p{color:var(--d-dim);font-size:14px;margin-bottom:22px;}
.gate-box input{width:100%;padding:14px 16px;background:var(--d-muted);border:1px solid var(--d-border);border-radius:var(--radius);color:var(--d-text);font-family:var(--font-body);font-size:16px;margin-bottom:14px;text-align:center;letter-spacing:.1em;}
.gate-box input:focus{outline:none;border-color:var(--neon-cyan);}
.gate-err{color:var(--neon-orange);font-size:13px;height:18px;margin-bottom:10px;}
.gate-close{position:absolute;top:14px;right:18px;font-size:30px;color:var(--d-dim);cursor:pointer;background:none;border:none;line-height:1;}

/* STEPS */
.steps{counter-reset:step;display:grid;gap:18px;}
.step{display:flex;gap:20px;align-items:flex-start;border-radius:var(--radius);padding:24px;}
body.dark .step{background:var(--d-card);border:1px solid var(--d-border);}
body.light .step{background:var(--l-card);border:1px solid var(--l-border);}
.step .sn{counter-increment:step;flex:0 0 auto;width:48px;height:48px;border-radius:50%;border:2px solid var(--neon-cyan);display:grid;place-items:center;font-family:var(--font-display);font-size:24px;color:var(--neon-cyan);}
body.light .step .sn{border-color:var(--neon-cyan-dk);color:var(--neon-cyan-dk);}
.step .sn::before{content:counter(step);}
.step h4{font-family:var(--font-display);font-size:24px;letter-spacing:.03em;margin-bottom:4px;}
.step p{font-size:15px;}
body.dark .step p{color:var(--d-dim);} body.light .step p{color:var(--l-dim);}

/* FAQ */
.faq{border-radius:var(--radius);overflow:hidden;border:1px solid var(--d-border);}
body.light .faq{border-color:var(--l-border);}
.faq details + details{border-top:1px solid var(--d-border);}
body.light .faq details + details{border-top-color:var(--l-border);}
.faq summary{padding:20px 24px;font-weight:600;font-size:16px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";font-family:var(--font-display);font-size:26px;color:var(--neon-cyan);}
body.light .faq summary::after{color:var(--neon-cyan-dk);}
.faq details[open] summary::after{content:"\2013";}
.faq .ans{padding:0 24px 22px;font-size:15px;}
body.dark .faq .ans{color:var(--d-dim);} body.light .faq .ans{color:var(--l-dim);}

/* LOCATION */
.loc{display:grid;grid-template-columns:1.1fr 1fr;gap:0;border-radius:var(--radius);overflow:hidden;}
body.dark .loc{background:var(--d-card);border:1px solid var(--d-border);}
body.light .loc{background:var(--l-card);border:1px solid var(--l-border);}
.loc .map{min-height:300px;background:
  linear-gradient(135deg,rgba(0,238,255,.18),rgba(255,0,170,.14)),
  repeating-linear-gradient(0deg,transparent,transparent 28px,rgba(255,255,255,.06) 28px,rgba(255,255,255,.06) 29px),
  repeating-linear-gradient(90deg,transparent,transparent 28px,rgba(255,255,255,.06) 28px,rgba(255,255,255,.06) 29px),#101010;
  display:grid;place-items:center;color:#F6F6F3;font-family:var(--font-display);font-size:24px;letter-spacing:.04em;}
.loc .info{padding:34px;}
.loc .info h3{font-family:var(--font-display);font-size:34px;letter-spacing:.03em;margin-bottom:6px;}
.loc .info .addr{font-size:15px;margin-bottom:18px;}
body.dark .loc .info .addr{color:var(--d-dim);} body.light .loc .info .addr{color:var(--l-dim);}
.loc .info .meta{display:flex;gap:30px;margin-bottom:22px;flex-wrap:wrap;}
.loc .info .meta .m .v{font-family:var(--font-display);font-size:28px;color:var(--neon-cyan);}
body.light .loc .info .meta .m .v{color:var(--neon-cyan-dk);}
.loc .info .meta .m .k{font-size:11px;text-transform:uppercase;letter-spacing:.1em;opacity:.6;}

/* BOOKING */
.booking{display:grid;grid-template-columns:1fr 340px;gap:28px;align-items:start;}
.bk-main{border-radius:var(--radius);padding:30px;background:var(--l-card);border:1px solid var(--l-border);}
.bk-steps{display:flex;gap:8px;margin-bottom:28px;flex-wrap:wrap;}
.bk-steps .s{flex:1;min-width:90px;text-align:center;font-size:11px;text-transform:uppercase;letter-spacing:.08em;padding-bottom:10px;border-bottom:2px solid var(--l-border);color:var(--l-dim);}
.bk-steps .s.active{border-color:var(--neon-cyan-dk);color:var(--neon-cyan-dk);font-weight:600;}
.bk-steps .s.done{border-color:var(--neon-green);color:#1f9e0c;}
.bk-panel{display:none;} .bk-panel.active{display:block;}
.bk-panel h3{font-family:var(--font-display);font-size:30px;letter-spacing:.03em;margin-bottom:18px;}
.opt-grid{display:grid;gap:12px;grid-template-columns:repeat(2,1fr);}
.opt{border:1px solid var(--l-border);border-radius:var(--radius);padding:16px 18px;cursor:pointer;transition:all .15s;background:var(--l-bg);}
.opt:hover{border-color:var(--neon-cyan-dk);}
.opt.sel{border-color:var(--neon-cyan-dk);background:rgba(0,144,168,.06);box-shadow:inset 0 0 0 1px var(--neon-cyan-dk);}
.opt .t{font-weight:600;font-size:15px;}
.opt .d{font-size:13px;color:var(--l-dim);}
.table-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
.slot{border:1px solid var(--l-border);border-radius:var(--radius);padding:10px 6px;text-align:center;cursor:pointer;font-size:13px;transition:all .12s;}
.slot .pr{display:block;font-size:11px;color:var(--l-dim);}
.slot:hover{border-color:var(--neon-cyan-dk);}
.slot.sel{background:var(--neon-cyan-dk);color:#fff;border-color:var(--neon-cyan-dk);}
.slot.sel .pr{color:rgba(255,255,255,.85);}
.slot.peak .pr{color:var(--neon-orange);}

/* Booking widget — dark theme overrides */
body.dark .bk-main{background:var(--d-card);border-color:var(--d-border);}
body.dark .bk-steps .s{border-color:var(--d-border);color:var(--d-dim);}
body.dark .bk-steps .s.active{border-color:var(--neon-cyan);color:var(--neon-cyan);}
body.dark .bk-steps .s.done{border-color:var(--neon-green);color:var(--neon-green);}
body.dark .opt{background:var(--d-muted);border-color:var(--d-border);color:var(--d-text);}
body.dark .opt:hover{border-color:var(--neon-cyan);}
body.dark .opt.sel{border-color:var(--neon-cyan);background:rgba(0,238,255,.1);box-shadow:inset 0 0 0 1px var(--neon-cyan);}
body.dark .opt .d{color:var(--d-dim);}
body.dark .slot{border-color:var(--d-border);color:var(--d-text);}
body.dark .slot:hover{border-color:var(--neon-cyan);}
body.dark .slot.sel{background:var(--neon-cyan);color:#0F0F0F;border-color:var(--neon-cyan);}
body.dark .slot .pr{color:var(--d-dim);}
body.dark .bk-side{border:1px solid var(--d-border);}
.bk-side{border-radius:var(--radius);padding:26px;background:#14160F;color:#fff;position:sticky;top:90px;}
.bk-side h4{font-family:var(--font-display);font-size:24px;letter-spacing:.04em;margin-bottom:18px;color:var(--neon-cyan);}
.bk-side .srow{display:flex;justify-content:space-between;font-size:14px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1);}
.bk-side .srow span:first-child{color:rgba(255,255,255,.6);}
.bk-side .total{display:flex;justify-content:space-between;font-family:var(--font-display);font-size:30px;margin-top:16px;}
.bk-side .total .v{color:var(--neon-green);}
.bk-nav{display:flex;justify-content:space-between;margin-top:26px;gap:12px;}
.bk-confirm{text-align:center;padding:30px 10px;}
.bk-confirm .check{width:70px;height:70px;border-radius:50%;background:var(--neon-green);display:grid;place-items:center;margin:0 auto 18px;font-size:38px;color:#0F0F0F;}
.bk-confirm h3{font-size:40px;}
.demo-flag{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--neon-orange);border:1px dashed var(--neon-orange);padding:5px 12px;border-radius:999px;display:inline-block;margin-bottom:20px;}

/* GENESIS */
.gen-counter{font-family:var(--font-display);font-size:clamp(70px,14vw,150px);line-height:.9;color:var(--neon-green);text-shadow:0 0 24px rgba(56,255,20,.5);}
.gen-bar{height:14px;border-radius:999px;background:var(--d-muted);overflow:hidden;margin:18px 0 8px;max-width:460px;}
.gen-bar .fill{height:100%;background:var(--gradient-neon);}
.form-card{border-radius:var(--radius);padding:30px;max-width:480px;}
body.dark .form-card{background:var(--d-card);border:1px solid var(--d-border);}
.form-card label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin:14px 0 6px;opacity:.75;}
.form-card input{width:100%;padding:13px 15px;border-radius:var(--radius);font-family:var(--font-body);font-size:15px;background:var(--d-muted);border:1px solid var(--d-border);color:var(--d-text);}
.form-card input::placeholder{color:#777;}
.form-card input:focus{outline:none;border-color:var(--neon-cyan);}

.mt-0{margin-top:0;} .mt-2{margin-top:20px;} .mt-3{margin-top:34px;} .mb-0{margin-bottom:0;}

@media(max-width:860px){
  .grid-3,.grid-4{grid-template-columns:repeat(2,1fr);}
  .booking{grid-template-columns:1fr;}
  .bk-side{position:static;}
  .loc{grid-template-columns:1fr;}
}
@media(max-width:680px){
  .nav-links{position:fixed;top:66px;left:0;right:0;flex-direction:column;gap:0;padding:10px 0;display:none;}
  body.dark .nav-links{background:var(--d-bg2);border-bottom:1px solid var(--d-border);}
  body.light .nav-links{background:var(--l-card);border-bottom:1px solid var(--l-border);}
  .nav-links.open{display:flex;}
  .nav-links a{padding:13px 28px;width:100%;}
  .nav-toggle{display:block;}
  .grid-3,.grid-4,.grid-2{grid-template-columns:1fr;}
  .opt-grid,.table-grid{grid-template-columns:repeat(2,1fr);}
  .slot-grid{grid-template-columns:repeat(3,1fr);}
  .stats{gap:32px;}
  section{padding:60px 0;}
}
