/* ============================= TOKENS ============================= */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --bg:#0a0617;
  --bg-2:#0d081f;
  --ink:#0a0617;
  --panel:#130b2b;
  --panel-2:#160e30;
  --white:#f6f3fc;
  --paper:#f4f1fb;
  --muted:#b6a8d6;
  --muted-dim:#8577a8;
  --purple:#8b3ffc;
  --purple-light:#b17dff;
  --violet:#7A3BF0;
  --cyan:#2fe0d1;
  --blue:#3fb6ff;
  --magenta:#ff4fc3;
  --yellow:#ffc93c;
  --lime:#C8F53D;
  --border:rgba(168,116,255,0.22);
  --border-strong:rgba(168,116,255,0.42);
  --grad-brand:linear-gradient(95deg,#a855f7 0%,#7c3aed 26%,#3fb6ff 66%,#2fe0d1 100%);
  --grad-btn:linear-gradient(95deg,#7c3aed 0%,#3fb6ff 68%,#2fe0d1 100%);
  --ease:cubic-bezier(.22,1,.36,1);
}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--white);font-family:'Plus Jakarta Sans',sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.5;}
h1,h2,h3,h4{font-family:'Bricolage Grotesque',sans-serif;line-height:1.05;font-weight:800;letter-spacing:-.01em;}
a{color:inherit;text-decoration:none;}
img,svg{display:block;max-width:100%;}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
ul{list-style:none;}
input,select{font-family:inherit;}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px;}
::selection{background:var(--purple);color:#fff;}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:4px;}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}.marquee-track{animation:none!important;}}

.gradient-text{background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:220% auto;animation:gradShift 6s ease-in-out infinite;}
@keyframes gradShift{0%,100%{background-position:0% 50%;}50%{background-position:100% 50%;}}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease);}
.reveal.in{opacity:1;transform:translateY(0);}

#scroll-progress{position:fixed;top:0;left:0;height:3px;width:0%;background:var(--grad-btn);z-index:1000;transition:width .1s linear;}

/* ============================= BUTTONS ============================= */
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;border-radius:12px;font-weight:700;font-size:14.5px;white-space:nowrap;position:relative;overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s,background .3s;}
.btn::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.3) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s var(--ease);}
.btn:hover::after{transform:translateX(120%);}
.btn-grad{background:var(--grad-btn);color:#fff;box-shadow:0 10px 28px -8px rgba(124,58,237,.7);}
.btn-grad:hover{transform:translateY(-3px);box-shadow:0 16px 40px -10px rgba(63,182,255,.65);}
.btn-outline{background:rgba(255,255,255,.02);border:1.5px solid var(--border-strong);color:#fff;}
.btn-outline:hover{border-color:var(--cyan);transform:translateY(-3px);background:rgba(47,224,209,.06);box-shadow:0 12px 30px -12px rgba(47,224,209,.5);}
.btn-full{width:100%;justify-content:center;padding:16px;}

.btn-store{display:inline-flex;align-items:center;gap:10px;background:#000;border:1px solid rgba(255,255,255,.16);padding:9px 18px 9px 14px;border-radius:10px;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s;}
.btn-store:hover{transform:translateY(-2px);border-color:var(--cyan);box-shadow:0 10px 26px -12px rgba(47,224,209,.5);}
.btn-store .gp-icon{width:24px;height:24px;flex-shrink:0;object-fit:contain;}
.btn-store .store-txt{display:flex;flex-direction:column;line-height:1.1;text-align:left;}
.btn-store .store-txt small{font-size:9px;color:#c9c9d6;letter-spacing:.08em;}
.btn-store .store-txt strong{font-size:15px;font-weight:600;color:#fff;}
.btn-store-lg .gp-icon{width:26px;height:26px;}
.btn-store-lg .store-txt strong{font-size:16px;}

/* ============================= RIBBON MARQUEE ============================= */
.ribbon{background:linear-gradient(90deg,#7c3aed,#3fb6ff 55%,#2fe0d1);color:#fff;overflow:hidden;padding:9px 0;position:relative;z-index:60;}
.marquee{overflow:hidden;white-space:nowrap;}
.marquee-track{display:inline-flex;animation:scrollLeft 24s linear infinite;}
.marquee-track span{padding:0 22px;font-weight:700;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;}
@keyframes scrollLeft{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ============================= HEADER ============================= */
header{position:sticky;top:0;z-index:50;background:rgba(10,6,23,.85);backdrop-filter:blur(14px) saturate(140%);border-bottom:1px solid var(--border);transition:background .3s,box-shadow .3s;}
header.scrolled{background:rgba(8,5,20,.92);box-shadow:0 10px 30px -18px rgba(0,0,0,.8);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 28px;max-width:1180px;margin:0 auto;gap:20px;}
.logo{display:flex;align-items:center;}
.logo img{height:72px;width:auto;object-fit:contain;transition:transform .5s var(--ease);}
.logo:hover img{transform:rotate(-8deg) scale(1.06);}
.nav-links{display:flex;gap:30px;}
.nav-links a{font-weight:600;font-size:14.5px;color:var(--muted);position:relative;padding:6px 0;transition:color .3s;}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--grad-brand);transition:width .35s var(--ease);}
.nav-links a:hover{color:#fff;}
.nav-links a:hover::after{width:100%;}
.nav-right{display:flex;align-items:center;gap:12px;}
.nav-toggle{display:none;width:40px;height:40px;border-radius:10px;border:1px solid var(--border);align-items:center;justify-content:center;}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{content:"";display:block;width:18px;height:2px;background:#fff;position:relative;transition:.3s;}
.nav-toggle span::before{position:absolute;top:-6px;}
.nav-toggle span::after{position:absolute;top:6px;}
.nav-toggle.open span{background:transparent;}
.nav-toggle.open span::before{transform:rotate(45deg);top:0;}
.nav-toggle.open span::after{transform:rotate(-45deg);top:0;}
@media (max-width:820px){.nav-links{display:none;}.nav-toggle{display:flex;}}

/* Keep header CTA buttons visible on mobile — shrink them so they don't overflow */
@media (max-width:820px){
  .nav{padding:12px 16px;gap:10px;}
  .nav-right{gap:8px;}
  .nav-right .btn{padding:9px 14px;font-size:13px;border-radius:10px;}
  .logo img{height:56px;}
}
@media (max-width:560px){
  .nav{padding:10px 12px;gap:8px;}
  .nav-right{gap:6px;}
  .nav-right .btn{padding:8px 11px;font-size:11.5px;gap:5px;}
  .logo img{height:48px;}
  .nav-toggle{width:36px;height:36px;}
}
@media (max-width:400px){
  .nav-right .btn{padding:7px 9px;font-size:10.5px;}
}

/* ============================= HERO ============================= */
.hero{position:relative;padding:80px 28px 64px;overflow:hidden;background:#0a0617;}
.hero-bg{position:absolute;inset:0;z-index:0;background:url('assets/hero-bg.png') center/cover no-repeat;opacity:.5;}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,6,23,.6),rgba(10,6,23,.75) 60%,var(--bg)),radial-gradient(60% 50% at 50% 30%,rgba(139,63,252,.35),transparent 70%);}
.hero-spotlight{position:absolute;width:520px;height:520px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(139,63,252,.22),transparent 70%);left:var(--sx,50%);top:var(--sy,30%);transform:translate(-50%,-50%);transition:left .3s ease-out,top .3s ease-out;z-index:1;mix-blend-mode:screen;}
.halftone{position:absolute;border-radius:50%;background-image:radial-gradient(rgba(168,116,255,.5) 2.4px,transparent 2.6px);background-size:15px 15px;opacity:.12;pointer-events:none;z-index:1;}
.h1{top:-160px;right:-160px;width:560px;height:560px;}
.h2{bottom:-200px;left:-180px;width:480px;height:480px;opacity:.08;}
.hero-inner{max-width:900px;margin:0 auto;text-align:center;position:relative;z-index:3;padding-top:26px;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(47,224,209,.12);border:1.5px solid var(--cyan);border-radius:100px;padding:8px 18px;font-weight:700;font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--cyan);margin-bottom:26px;}
.hero h1{font-size:clamp(38px,7vw,84px);letter-spacing:-.02em;}
.hero h1 .hl{display:inline;}
.hero p.sub{font-size:18px;line-height:1.6;color:var(--muted);max-width:580px;margin:24px auto 32px;font-weight:500;}
.hero-ctas{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.hero-proof{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:34px;}
.avatar-stack{display:flex;}
.avatar-stack .avatar{width:40px;height:40px;border-radius:50%;border:2.5px solid var(--bg);margin-left:-12px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff;}
.avatar-stack .avatar:first-child{margin-left:0;}
.hero-proof .proof-txt{font-size:14px;color:var(--muted);}
.hero-proof .proof-txt b{color:#fff;font-size:16px;}

.sticker{position:absolute;z-index:3;border:2.5px solid rgba(255,255,255,.14);border-radius:14px;padding:10px 16px;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.02em;box-shadow:0 10px 24px -10px rgba(0,0,0,.6);backdrop-filter:blur(6px);}
.s1{background:rgba(255,201,60,.92);color:#231600;top:100px;left:3%;transform:rotate(-9deg);}
.s2{background:rgba(47,224,209,.92);color:#052b28;top:76px;right:3%;transform:rotate(7deg);}
.s3{background:rgba(139,63,252,.92);color:#fff;bottom:20px;left:7%;transform:rotate(6deg);}
.s3 span{color:var(--yellow);}
@media (max-width:1180px){.s1,.s2{display:none;}}
@media (max-width:900px){.s3{position:static;display:inline-block;transform:none!important;margin:0 auto 18px;}}

/* ============================= CATEGORY BAND ============================= */
.cat-band{background:var(--violet);color:#fff;padding:20px 0;border-top:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);overflow:hidden;}
.cat-band .marquee-track{animation-duration:40s;}
.cat-band span{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:19px;padding:0 24px;text-transform:uppercase;letter-spacing:-.01em;}
.cat-band span.sep{color:var(--yellow);}

/* ============================= SECTION SHELLS ============================= */
section{padding:92px 0;}
section.alt{background:var(--bg-2);}
.section-head{text-align:center;max-width:640px;margin:0 auto 52px;}
.section-head .tag{display:inline-block;font-weight:700;font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:6px 15px;border-radius:100px;margin-bottom:16px;}
.tag{background:rgba(255,255,255,.06);border:1px solid var(--border-strong);color:var(--white);}
.tag-cyan{background:rgba(47,224,209,.14);border-color:var(--cyan);color:var(--cyan);}
.tag-magenta{background:rgba(255,79,195,.14);border-color:var(--magenta);color:var(--magenta);}
.tag-yellow {
  background: rgba(255,201,60,.14);
  border-color: var(--yellow);
  color: var(--yellow);
  padding: 7px 25px;
  border-radius: 25px;
}
.section-head h2{font-size:clamp(30px,5vw,52px);margin-bottom:14px;}
.section-head p{font-size:16.5px;color:var(--muted);line-height:1.6;}

/* ============================= BENEFITS ============================= */
.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.b-card{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:28px 24px;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s;}
.b-card:hover{transform:translateY(-6px);border-color:var(--cyan);box-shadow:0 20px 38px -18px rgba(47,224,209,.4);}
.b-icon{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;transition:transform .4s var(--ease);}
.b-card:hover .b-icon{transform:scale(1.12) rotate(-6deg);}
.i-magenta{background:linear-gradient(135deg,#ff4fc3,#8b3ffc);}
.i-cyan{background:linear-gradient(135deg,#2fe0d1,#3fb6ff);}
.i-violet{background:linear-gradient(135deg,#7c3aed,#b17dff);}
.b-card h3{font-size:17px;margin-bottom:8px;}
.b-card p{font-size:14px;color:var(--muted);line-height:1.6;}
@media (max-width:980px){.benefits{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.benefits{grid-template-columns:1fr;}}

/* ============================= CATEGORY WALL ============================= */
.cat-wall{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;padding:10px 0;}
.chip{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--border-strong);border-radius:100px;padding:10px 18px;font-weight:700;font-size:12.5px;background:var(--panel);color:var(--white);transition:transform .25s var(--ease),border-color .25s,background .25s,box-shadow .25s;}
.chip .chip-emoji{font-size:14px;}
.chip:hover{transform:translateY(-4px) rotate(0deg)!important;border-color:var(--cyan);background:linear-gradient(150deg,rgba(139,63,252,.2),rgba(47,224,209,.08));box-shadow:0 12px 24px -14px rgba(47,224,209,.5);}
.cat-note{text-align:center;margin-top:36px;font-weight:600;color:var(--muted);}
.cat-note span{color:#fff;text-decoration:underline;text-decoration-color:var(--magenta);text-decoration-thickness:3px;text-underline-offset:3px;cursor:pointer;}

/* ============================= STEPS ============================= */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.step{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:26px 22px;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s;opacity:0;transform:translateY(22px);}
.step.in{opacity:1;transform:translateY(0);}
.step:hover{transform:translateY(-6px);border-color:var(--purple-light);box-shadow:0 20px 38px -18px rgba(124,58,237,.5);}
.step-num{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:15px;color:#fff;background:var(--grad-btn);width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:0 8px 18px -8px rgba(63,182,255,.6);}
.step h3{font-size:17px;margin-bottom:8px;}
.step p{color:var(--muted);font-size:14px;line-height:1.6;}
@media (max-width:980px){.steps{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.steps{grid-template-columns:1fr;}}

/* ============================= DASHBOARD (on-ink) ============================= */
.on-ink{background:linear-gradient(180deg,#0d0820,#0a0617);}
.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.d-card{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:18px;padding:26px 22px;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s;}
.d-card:hover{transform:translateY(-6px);border-color:var(--cyan);box-shadow:0 20px 38px -18px rgba(47,224,209,.35);}
.d-icon{width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;transition:transform .4s var(--ease);}
.d-card:hover .d-icon{transform:scale(1.12) rotate(-6deg);}
.d-card h3{font-size:17px;margin:14px 0 8px;}
.d-card p{font-size:14px;color:var(--muted);line-height:1.6;}
@media (max-width:980px){.dash-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.dash-grid{grid-template-columns:1fr;}}

.stats-strip{display:flex;justify-content:center;gap:56px;flex-wrap:wrap;margin-top:52px;padding-top:40px;border-top:1px solid var(--border);}
.stats-strip .stat{text-align:center;}
.stats-strip .stat b{display:block;font-family:'Bricolage Grotesque',sans-serif;font-size:32px;font-weight:800;background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;}
.stats-strip .stat span{font-size:13px;color:var(--muted);font-weight:600;}

/* ============================= REVIEWS ============================= */
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.r-card{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:26px;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s;}
.r-card:hover{transform:translateY(-8px);border-color:var(--cyan);box-shadow:0 22px 40px -18px rgba(47,224,209,.3);}
.r-top{display:flex;align-items:center;gap:12px;}
.r-av{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;color:#fff;}
.r-top b{font-size:14.5px;}
.r-stars{color:#ffb800;font-size:12px;margin-top:2px;letter-spacing:1px;}
.r-card p{margin-top:14px;font-size:13.8px;color:var(--muted);line-height:1.6;}
@media (max-width:820px){.reviews-grid{grid-template-columns:1fr;}}

/* ============================= FAQ ============================= */
.faq{max-width:760px;margin:0 auto;}
details{border:1px solid var(--border-strong);border-radius:14px;padding:20px 22px;margin-bottom:14px;background:var(--panel);transition:border-color .3s;}
details[open]{border-color:var(--cyan);}
summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:16px;font-family:'Plus Jakarta Sans',sans-serif;}
summary::-webkit-details-marker{display:none;}
.plus{width:24px;height:24px;flex:none;position:relative;margin-left:16px;border:2px solid var(--border-strong);border-radius:50%;}
.plus::before,.plus::after{content:'';position:absolute;background:var(--cyan);top:50%;left:50%;transform:translate(-50%,-50%);}
.plus::before{width:11px;height:2px;}
.plus::after{width:2px;height:11px;transition:transform .2s ease,opacity .2s;}
details[open] .plus::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0;}
details p{margin:14px 0 0;color:var(--muted);font-size:14.5px;line-height:1.65;}

/* ============================= FOOTER ============================= */
footer{background:#0d081f;border-top:1px solid var(--border);padding:56px 0 26px;}
.foot-top{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;margin-bottom:36px;}
.foot-brand .logo img{height:99px;}
.foot-brand p{margin-top:14px;font-size:13.5px;max-width:280px;color:var(--muted);line-height:1.6;}
.app-badges{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap;}
.app-badge{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border-strong);border-radius:10px;padding:9px 14px;font-size:12.5px;font-weight:600;color:var(--white);transition:.3s;}
.app-badge:hover{border-color:var(--cyan);background:rgba(47,224,209,.06);}
.foot-col h4{font-family:'Plus Jakarta Sans',sans-serif;text-transform:uppercase;font-size:12.5px;letter-spacing:.06em;color:#fff;margin-bottom:14px;font-weight:800;}
.foot-col ul{display:flex;flex-direction:column;gap:10px;}
.foot-col a{color:var(--muted);font-size:14px;transition:color .25s,padding-left .25s;}
.foot-col a:hover{color:var(--cyan);padding-left:4px;}
.foot-col li{color:var(--muted);font-size:14px;}
.social-row{display:flex;gap:9px;}
.social-row a{width:36px;height:36px;border-radius:50%;border:1px solid var(--border-strong);display:flex;align-items:center;justify-content:center;color:var(--muted);transition:.3s;}
.social-row a svg{width:16px;height:16px;}
.social-row a:hover{background:var(--grad-btn);border-color:transparent;color:#fff;transform:translateY(-4px) rotate(8deg);}
.foot-bottom{border-top:1px solid var(--border);padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12.5px;color:var(--muted-dim);}

/* ============================= CELEBRATION ============================= */
.confetti-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:2000;}

/* ============================= BACK TO TOP ============================= */
#back-to-top{position:fixed;right:26px;bottom:26px;width:46px;height:46px;border-radius:50%;background:var(--grad-btn);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 30px -10px rgba(63,182,255,.6);opacity:0;pointer-events:none;transform:translateY(16px);transition:opacity .35s,transform .35s;z-index:500;font-size:18px;}
#back-to-top.show{opacity:1;pointer-events:auto;transform:translateY(0);}
#back-to-top:hover{transform:translateY(-4px) scale(1.06);}

/* ============================= MOBILE NAV DRAWER ============================= */
@media (max-width:820px){
  .nav-links{position:fixed;top:104px;left:16px;right:16px;background:rgba(10,6,23,.97);border:1px solid var(--border);border-radius:16px;padding:18px;flex-direction:column;align-items:flex-start;gap:16px;transform:translateY(-14px);opacity:0;pointer-events:none;transition:.3s var(--ease);backdrop-filter:blur(14px);display:flex;z-index:55;}
  .nav-links.open{transform:translateY(0);opacity:1;pointer-events:auto;}
  .stats-strip{gap:32px;}
}

/* ===== Onboarding Tabs (Venue / Services) ===== */
.onb-tabs{
  display:flex;
  gap:6px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  padding:5px;
  margin-bottom:20px;
}
.onb-tab{
  flex:1;
  border:0;
  cursor:pointer;
  font:inherit;
  font-weight:700;
  font-size:14px;
  letter-spacing:-.1px;
  color:#b6a8d6;
  background:transparent;
  padding:11px 12px;
  border-radius:10px;
  transition:color .2s ease, background .25s ease, box-shadow .25s ease;
}
.onb-tab:hover{ color:#fff; }
.onb-tab.active{
  color:#fff;
  background:linear-gradient(95deg,#7c3aed,#3fb6ff);
  box-shadow:0 6px 18px rgba(124,58,237,.35);
}
.onb-pane[hidden]{ display:none; }

@media (max-width:520px){
  .onb-tab{ font-size:13px; padding:10px 8px; }
}

/* ============================= LEGAL / SUPPORT PAGES ============================= */
.page-hero{position:relative;padding:84px 0 56px;text-align:center;overflow:hidden;background:radial-gradient(ellipse at 50% 0%,rgba(139,63,252,.28),transparent 62%),var(--bg);border-bottom:1px solid var(--border);}
.page-hero .tag{display:inline-block;font-weight:700;font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:6px 15px;border-radius:100px;margin-bottom:16px;}
.page-hero h1{font-size:clamp(34px,6vw,60px);margin-bottom:14px;}
.page-hero p{color:var(--muted);font-size:15px;}
.page-hero p b{color:var(--white);}
.legal{padding:64px 0 96px;}
.legal-layout{display:grid;grid-template-columns:240px 1fr;gap:48px;align-items:start;}
.legal-toc{position:sticky;top:120px;max-height:calc(100vh - 140px);overflow-y:auto;padding:18px;border:1px solid var(--border);border-radius:16px;background:var(--panel);}
.legal-toc h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#fff;margin-bottom:12px;}
.legal-toc ol{list-style:none;display:flex;flex-direction:column;gap:2px;}
.legal-toc a{display:block;font-size:13px;color:var(--muted);padding:6px 10px;border-radius:8px;line-height:1.35;transition:background .2s,color .2s;}
.legal-toc a:hover{background:rgba(139,63,252,.16);color:#fff;}
.legal-body{max-width:780px;min-width:0;}
.legal-body h2{font-size:clamp(22px,2.6vw,28px);margin:44px 0 14px;padding-top:6px;scroll-margin-top:110px;}
.legal-body h2:first-child{margin-top:0;}
.legal-body h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:16.5px;font-weight:800;color:#fff;margin:26px 0 10px;}
.legal-body p{color:var(--muted);font-size:15.5px;line-height:1.75;margin-bottom:14px;overflow-wrap:anywhere;}
.legal-body p strong,.legal-body .addr strong{color:var(--white);}
.legal-body a{color:var(--cyan);text-decoration:underline;text-underline-offset:3px;}
.legal-body ul,.legal-body ol{margin:0 0 18px;padding-left:4px;display:flex;flex-direction:column;gap:8px;}
.legal-body ul li,.legal-body ol li{position:relative;padding-left:24px;color:var(--muted);font-size:15px;line-height:1.65;}
.legal-body ul li::before{content:"";position:absolute;left:4px;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--grad-btn);}
.legal-body ol{counter-reset:li;}
.legal-body ol li{counter-increment:li;}
.legal-body ol li::before{content:counter(li) ".";position:absolute;left:2px;color:var(--cyan);font-weight:700;}
.legal-body .addr{border:1px solid var(--border-strong);background:var(--panel);border-radius:14px;padding:16px 20px;margin:0 0 18px;color:var(--muted);font-size:15px;line-height:1.7;}
@media (max-width:900px){.legal-layout{grid-template-columns:1fr;gap:28px;}.legal-toc{position:static;max-height:none;}}

.support-wrap{padding:64px 0 0;}
.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:56px;}
.s-card{background:var(--panel);border:1px solid var(--border-strong);border-radius:18px;padding:28px;transition:transform .3s var(--ease),border-color .3s;}
.s-card:hover{transform:translateY(-4px);border-color:var(--cyan);}
.s-card .b-icon{margin-bottom:16px;}
.s-card h3{font-size:20px;margin-bottom:8px;}
.s-card p{color:var(--muted);font-size:14.5px;line-height:1.6;margin-bottom:16px;}
.s-card .s-link{color:var(--cyan);font-weight:700;font-size:15px;overflow-wrap:anywhere;}
.s-card .s-link:hover{text-decoration:underline;text-underline-offset:3px;}
.map-frame{display:block;width:100%;height:440px;border:0;border-top:1px solid var(--border);filter:saturate(.9);}
@media (max-width:900px){.support-grid{grid-template-columns:1fr;}.map-frame{height:340px;}}

/* ============================= ABOUT ============================= */
.about-rows{display:flex;flex-direction:column;gap:72px;}
.about-row{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.about-row.flip .about-media{order:2;}
.about-media{border-radius:20px;overflow:hidden;border:1px solid var(--border-strong);box-shadow:0 30px 60px -30px rgba(124,58,237,.6);}
.about-media img{width:100%;height:auto;transition:transform .8s var(--ease);}
.about-row:hover .about-media img{transform:scale(1.04);}
.about-phone{max-width:380px;justify-self:center;}
.about-copy h3{font-size:clamp(24px,3vw,32px);margin-bottom:16px;}
.about-copy p{color:var(--muted);font-size:16px;line-height:1.75;margin-bottom:14px;}
.about-kicker{color:var(--white)!important;font-weight:700;padding:14px 18px;border-radius:12px;background:rgba(139,63,252,.14);border:1px solid var(--border-strong);}
@media (max-width:900px){.about-row{grid-template-columns:1fr;gap:28px;}.about-row.flip .about-media{order:0;}.about-rows{gap:56px;}}

/* ============================= VIDEO ============================= */
.video-card{max-width:760px;margin:0 auto;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:var(--panel);border:1px solid var(--border-strong);box-shadow:0 30px 60px -30px rgba(124,58,237,.6);position:relative;}
.video-card iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.video-poster{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 50%,rgba(139,63,252,.3),transparent 65%);}
.video-poster img{width:min(34%,220px);opacity:.9;}
.video-play{position:absolute;width:72px;height:72px;border-radius:50%;background:var(--grad-btn);display:flex;align-items:center;justify-content:center;box-shadow:0 12px 34px -8px rgba(63,182,255,.7);}
.video-play svg{width:30px;height:30px;margin-left:4px;}
.video-caption{text-align:center;max-width:640px;margin:30px auto 0;}
.video-caption h3{font-size:clamp(19px,2.4vw,24px);margin-bottom:10px;}
.video-caption p{color:var(--muted);font-size:15.5px;line-height:1.6;}

/* ============================= APP BAND ============================= */
.app-band{padding:56px 0;background:linear-gradient(135deg,rgba(139,63,252,.22),rgba(47,224,209,.08)),#0d0820;border-top:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);}
.app-band-inner{display:flex;align-items:center;gap:32px;flex-wrap:wrap;}
.app-band-logo{width:96px;height:96px;object-fit:contain;flex:none;}
.app-band-copy{flex:1;min-width:240px;}
.app-band-copy h2{font-size:clamp(26px,3.6vw,38px);margin-bottom:8px;}
.app-band-copy p{color:var(--muted);font-size:15.5px;}
.app-band-btns{display:flex;gap:14px;flex-wrap:wrap;}
.store-txt{display:flex;flex-direction:column;line-height:1.1;text-align:left;}
.store-txt small{font-size:9.5px;letter-spacing:.06em;color:rgba(255,255,255,.75);}
.store-txt strong{font-size:16px;font-weight:700;}
@media (max-width:640px){.app-band-inner{flex-direction:column;text-align:center;}.app-band-btns{justify-content:center;}}

/* ============================= CONTACT ============================= */
.contact-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:32px;max-width:980px;margin:0 auto;align-items:start;}
.contact-card{background:var(--panel);border:1px solid var(--border-strong);border-radius:20px;padding:30px;box-shadow:0 30px 60px -30px rgba(124,58,237,.6);}
.c-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;}
.c-field label{font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--muted);}
.c-field input,.c-field textarea{padding:13px 14px;border-radius:10px;border:1.5px solid var(--border);background:rgba(255,255,255,.03);font-size:14.5px;color:#fff;font-family:inherit;transition:border-color .25s,background .25s,box-shadow .25s;}
.c-field textarea{resize:vertical;min-height:120px;line-height:1.5;}
.c-field input::placeholder,.c-field textarea::placeholder{color:var(--muted-dim);}
.c-field input:focus,.c-field textarea:focus{outline:none;border-color:var(--cyan);background:rgba(47,224,209,.05);box-shadow:0 0 0 4px rgba(47,224,209,.12);}
.c-field.err input,.c-field.err textarea{border-color:var(--magenta);}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0;}
.c-status{margin-top:12px;font-size:14px;text-align:center;min-height:1.2em;color:var(--muted);}
.c-status.ok{color:var(--cyan);}
.c-status.bad{color:var(--magenta);}
.contact-info{display:flex;flex-direction:column;gap:14px;}
.ci-item{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:16px;background:var(--panel);border:1px solid var(--border);transition:border-color .3s,transform .3s var(--ease);}
.ci-item:hover{border-color:var(--cyan);transform:translateY(-2px);}
.ci-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex:none;}
.ci-item h4{font-size:17px;margin-bottom:4px;}
.ci-item p,.ci-item a{color:var(--muted);font-size:14.5px;}
.ci-item a:hover{color:var(--cyan);}
@media (max-width:820px){.contact-grid{grid-template-columns:1fr;}}
