
:root{
  --bg:#07030f;
  --bg-2:#0b0616;
  --surface:rgba(255,255,255,.05);
  --surface-2:rgba(255,255,255,.03);
  --stroke:rgba(255,255,255,.10);
  --stroke-strong:rgba(255,215,0,.22);
  --text:#f7f4ff;
  --muted:#cfc9df;
  --muted-2:#aba4be;
  --primary:#4B0082;
  --primary-2:#7a2df2;
  --gold:#FFD700;
  --gold-2:#ffefad;
  --success:#8ee3b2;
  --shadow-xl:0 40px 90px rgba(0,0,0,.45);
  --shadow-lg:0 28px 64px rgba(0,0,0,.34);
  --shadow-md:0 18px 40px rgba(0,0,0,.24);
  --radius-xl:34px;
  --radius-lg:24px;
  --radius-md:18px;
  --content:min(1180px, calc(100vw - 32px));
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Roboto,Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 15% 22%, rgba(103,40,217,.22), transparent 23%),
    radial-gradient(circle at 84% 60%, rgba(255,215,0,.10), transparent 18%),
    linear-gradient(180deg, #06020d 0%, #090412 24%, #080311 100%);
  overflow-x:hidden;
}
img{display:block;max-width:100%;height:auto}
a{text-decoration:none;color:inherit}
button{font:inherit}

.page-shell{position:relative;isolation:isolate}
.ambient,.noise{
  position:fixed; inset:0; pointer-events:none; z-index:-2;
}
.noise{
  opacity:.05;
  background-image:
    radial-gradient(circle at 15% 15%, rgba(255,255,255,.14) 1px, transparent 1px),
    radial-gradient(circle at 70% 35%, rgba(255,255,255,.10) 1px, transparent 1px);
  background-size:20px 20px, 28px 28px;
}
.ambient::before,.ambient::after{
  content:""; position:absolute; border-radius:999px; filter:blur(90px);
  animation:aurora 18s var(--ease) infinite alternate;
}
.ambient::before{
  width:34vw; height:34vw; left:-10vw; top:-6vw;
  background:linear-gradient(135deg, rgba(75,0,130,.55), rgba(255,215,0,.16));
}
.ambient::after{
  width:28vw; height:28vw; right:-8vw; top:24vh;
  background:linear-gradient(135deg, rgba(131,56,236,.34), rgba(255,215,0,.08));
  animation-delay:-7s;
}
@keyframes aurora{
  from{transform:translate3d(0,0,0) scale(1)}
  to{transform:translate3d(6vw,4vh,0) scale(1.15)}
}
.container{width:var(--content);margin-inline:auto}
.section{padding:88px 0; position:relative}
.section-tight{padding:72px 0}
.eyebrow{
  display:inline-flex; align-items:center; min-height:38px; padding:8px 14px;
  border-radius:999px; background:rgba(255,255,255,.035); border:1px solid var(--stroke-strong);
  color:var(--gold-2); font-size:.81rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
}
h1,h2,h3,p{margin:0}
.section-title{
  font-size:clamp(2.2rem,4.8vw,4.3rem);
  line-height:1.03; letter-spacing:-.045em; margin:18px 0 14px; max-width:14ch;
}
.section-lead{
  color:var(--muted); max-width:64ch; line-height:1.65; font-size:1.05rem;
}
.block-head{margin-bottom:28px}
.grid-2{display:grid; grid-template-columns:1.08fr .92fr; gap:40px}
.grid-3{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:24px}
.grid-4{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:20px}
.card{
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  border:1px solid var(--stroke);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-md);
}
.topbar{
  position:sticky; top:0; z-index:80;
  backdrop-filter:blur(16px);
  background:linear-gradient(180deg, rgba(6,2,13,.92), rgba(6,2,13,.62));
  border-bottom:1px solid rgba(255,255,255,.05);
}
.topbar-inner{
  min-height:84px; display:flex; align-items:center; justify-content:space-between; gap:18px;
}
.brand{display:inline-flex; align-items:center; gap:16px; min-width:0}
.brand-mark{
  width:58px; height:58px; border-radius:18px; display:grid; place-items:center;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
  border:1px solid rgba(255,215,0,.18); box-shadow:0 12px 28px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.07);
}
.brand-title{font-size:1rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.brand-subtitle{font-size:.86rem;color:var(--muted-2)}
.nav-actions{display:flex; align-items:center; gap:12px}
.btn{
  min-height:54px; padding:0 24px; border-radius:18px; border:1px solid transparent;
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  font-weight:700; transition:transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease), background .22s var(--ease);
  cursor:pointer;
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{
  background:linear-gradient(135deg, #7e32ff, #b04dff);
  color:white;
  box-shadow:0 18px 40px rgba(126,50,255,.35), 0 0 0 1px rgba(255,255,255,.08) inset;
}
.btn-secondary{
  background:rgba(255,255,255,.02);
  color:var(--gold-2);
  border-color:rgba(255,215,0,.28);
}
.btn-ghost{
  background:rgba(255,255,255,.05); color:var(--text); border-color:var(--stroke);
}
.hero{padding-top:44px; padding-bottom:56px}
.hero-grid{display:grid; grid-template-columns: minmax(0,1.02fr) minmax(420px,.98fr); gap:34px; align-items:center}
.hero-copy h1{
  font-size:clamp(3rem,6vw,6rem);
  line-height:.98; letter-spacing:-.06em; max-width:10.5ch; margin:18px 0 18px;
}
.hero-copy p{font-size:1.1rem; color:var(--muted); line-height:1.68; max-width:60ch}
.hero-actions{display:flex; flex-wrap:wrap; gap:14px; margin:28px 0 18px}
.proof-list{display:grid; gap:10px; margin:0; padding:0; list-style:none; color:var(--muted)}
.proof-list li{display:flex; gap:10px; align-items:flex-start}
.proof-list li::before{content:"✓"; color:var(--gold); font-weight:900; margin-top:1px}
.mini-stat-row{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:24px}
.mini-stat{
  padding:18px; border-radius:20px; background:rgba(255,255,255,.04); border:1px solid var(--stroke);
}
.mini-stat strong{display:block; font-size:1.55rem; letter-spacing:-.04em}
.mini-stat span{display:block; color:var(--muted); line-height:1.5; margin-top:8px}

.hero-visual{
  position:relative; min-height:720px;
}
.hero-visual::before{
  content:""; position:absolute; inset:12% 8% 8% 18%; border-radius:40px;
  background:radial-gradient(circle at 30% 15%, rgba(126,50,255,.18), transparent 34%), linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.01));
  border:1px solid rgba(255,255,255,.06);
}
.float-chip{
  position:absolute; z-index:5; padding:10px 14px; border-radius:999px;
  background:rgba(10,7,20,.92); border:1px solid rgba(255,255,255,.09); color:#fff; font-weight:700; font-size:.93rem; box-shadow:var(--shadow-md);
}
.float-chip.one{left:0; bottom:135px}
.float-chip.two{right:0; top:160px}
.float-chip.three{right:42px; bottom:80px}
.phone-stack{
  position:absolute; inset:0; display:grid; place-items:center;
}
.device{
  position:absolute;
  width:min(30vw, 300px);
  aspect-ratio: 9/19.5;
  border-radius:44px;
  background:#0b0913;
  box-shadow:0 42px 90px rgba(0,0,0,.48), 0 0 0 1px rgba(255,255,255,.09) inset;
  padding:10px;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease);
  overflow:hidden;
}
.device::before{
  content:""; position:absolute; top:10px; left:50%; transform:translateX(-50%);
  width:34%; height:20px; border-radius:0 0 16px 16px; background:#05040a; z-index:2;
}
.device::after{
  content:""; position:absolute; inset:10px; border-radius:34px; border:1px solid rgba(255,255,255,.07); pointer-events:none;
}
.device-screen{
  position:relative; width:100%; height:100%; border-radius:34px; overflow:hidden;
  background:linear-gradient(180deg,#101010,#0a0a0f);
}
.device-screen img{
  width:100%; height:100%; object-fit:cover; object-position:top center;
  transition:transform .45s var(--ease);
}
.device:hover{box-shadow:0 52px 100px rgba(0,0,0,.58), 0 0 0 1px rgba(255,255,255,.11) inset}
.device:hover .device-screen img{transform:scale(1.03)}
.device.home{left:2%; bottom:26px; transform:rotate(-11deg)}
.device.stats{right:1%; bottom:56px; transform:rotate(11deg)}
.device.music{top:10px; right:17%; width:min(26vw,250px); transform:rotate(2deg)}
.hero-orb{
  position:absolute; width:220px; height:220px; border-radius:50%; filter:blur(72px); opacity:.24;
  background:linear-gradient(135deg, rgba(126,50,255,.8), rgba(255,215,0,.35));
  right:4%; top:7%;
}
.hero-orb.two{left:10%; bottom:14%; width:160px; height:160px; opacity:.14}

.pill-row{display:flex; flex-wrap:wrap; gap:12px; margin-top:26px}
.pill{
  min-height:44px; padding:0 16px; display:inline-flex; align-items:center; border-radius:999px;
  background:rgba(255,255,255,.04); border:1px solid var(--stroke); color:var(--muted); font-weight:700;
}

.split-card{
  padding:26px; display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:24px;
}
.split-panel{
  padding:22px; border-radius:22px; background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.07);
}
.split-panel h3{font-size:1.55rem; letter-spacing:-.03em; margin:18px 0 12px}
.split-panel p{color:var(--muted); line-height:1.65}
.bullet-list{margin:16px 0 0; padding-left:18px; color:var(--muted)}
.bullet-list li{margin:8px 0}
.compare{
  margin-top:26px; display:grid; grid-template-columns:1fr 1fr; gap:22px;
}
.compare-card{padding:26px}
.compare-tag{display:inline-flex;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,215,0,.22);color:var(--gold-2);font-weight:700;font-size:.86rem;background:rgba(255,255,255,.03)}
.compare-card h3{margin:18px 0 10px;font-size:1.6rem;letter-spacing:-.03em}
.compare-card p{color:var(--muted);line-height:1.65}
.compare-card ul{margin:16px 0 0;padding-left:18px;color:var(--muted)}
.compare-card ul li{margin:8px 0}

.product-gallery{margin-top:28px; display:grid; grid-template-columns:1fr 1fr; gap:24px}
.gallery-card{
  padding:22px; display:grid; grid-template-columns:minmax(220px,.9fr) minmax(240px,.9fr); gap:22px; align-items:center;
}
.gallery-copy h3{font-size:2rem; line-height:1.05; letter-spacing:-.04em; margin:16px 0 12px}
.gallery-copy p{color:var(--muted); line-height:1.65}
.gallery-device{justify-self:end}
.gallery-device .device{position:relative; inset:auto; width:min(28vw,260px); transform:none}
.gallery-grid-mini{display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:24px}
.gallery-grid-mini .gallery-card{grid-template-columns:.95fr .85fr}
.gallery-grid-mini .gallery-device .device{width:min(22vw,220px)}

.benefits-grid{margin-top:28px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px}
.benefit-card{padding:22px}
.icon-badge{
  width:42px; height:42px; border-radius:14px; display:grid; place-items:center; margin-bottom:18px;
  background:linear-gradient(180deg, rgba(255,215,0,.14), rgba(255,255,255,.05)); border:1px solid rgba(255,215,0,.16);
}
.benefit-card h3{font-size:1.55rem; letter-spacing:-.03em; line-height:1.08; margin-bottom:10px}
.benefit-card p{color:var(--muted); line-height:1.65}

.feature-grid{margin-top:28px; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:20px}
.feature-card{padding:24px}
.feature-card h3{font-size:1.52rem; line-height:1.08; letter-spacing:-.03em; margin-bottom:10px}
.feature-card p{color:var(--muted); line-height:1.65}

.pricing-panel{padding:28px; position:relative}
.pricing-toolbar{
  display:flex; justify-content:space-between; gap:22px; align-items:center; flex-wrap:wrap; margin-bottom:24px;
}
.billing-toggle{
  display:inline-flex; padding:6px; gap:6px; background:rgba(255,255,255,.035); border-radius:999px; border:1px solid var(--stroke);
}
.billing-toggle button{
  border:0; min-height:48px; padding:0 18px; border-radius:999px; background:transparent; color:var(--text); font-weight:800; cursor:pointer;
}
.billing-toggle button.active{background:linear-gradient(135deg,#7e32ff,#b04dff); box-shadow:0 10px 24px rgba(126,50,255,.28)}
.pricing-copy{color:var(--muted); max-width:44ch; line-height:1.65}
.pricing-grid{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:20px; align-items:stretch;
}
.plan-card{padding:22px; display:flex; flex-direction:column; min-height:100%}
.plan-card.popular{
  transform:translateY(-10px);
  border-color:rgba(255,215,0,.26);
  box-shadow:0 28px 64px rgba(75,0,130,.22), 0 0 0 1px rgba(255,215,0,.10) inset;
}
.plan-top{display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom:8px}
.plan-name{font-size:2rem; letter-spacing:-.04em; line-height:1.0}
.plan-tag{display:inline-flex; padding:6px 10px; border-radius:999px; background:rgba(255,215,0,.12); color:var(--gold-2); font-size:.8rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase}
.plan-desc{color:var(--muted); line-height:1.55; min-height:3.3em; margin-bottom:18px}
.price-main{font-size:3rem; font-weight:900; letter-spacing:-.06em; line-height:1}
.price-period{color:var(--muted); margin-top:6px; min-height:24px}
.price-day{color:var(--gold-2); font-weight:800; margin-top:8px}
.plan-points{margin:18px 0 22px; padding-left:18px; color:var(--muted)}
.plan-points li{margin:8px 0}
.plan-footer{margin-top:auto}
.pricing-note{margin-top:16px; color:var(--muted-2); font-size:.95rem; line-height:1.6}
.pricing-bottom-actions{display:flex; flex-wrap:wrap; gap:14px; margin-top:18px}

.social-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:26px}
.quote-card{padding:24px}
.quote-card p{line-height:1.72; color:var(--muted); margin-bottom:18px}
.quote-card strong{display:block; font-size:1rem}
.quote-card span{display:block; color:var(--muted-2); margin-top:4px}

.faq-grid{display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:26px}
.faq-item{padding:0; overflow:hidden}
.faq-trigger{
  width:100%; background:none; border:0; color:var(--text); text-align:left; cursor:pointer;
  min-height:78px; display:flex; justify-content:space-between; align-items:center; gap:12px; padding:0 22px;
  font-weight:800; font-size:1rem;
}
.faq-icon{
  width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:rgba(255,255,255,.05);border:1px solid var(--stroke);font-weight:900;
}
.faq-content{
  max-height:0; overflow:hidden; transition:max-height .3s var(--ease), padding .3s var(--ease);
  color:var(--muted); line-height:1.68; padding:0 22px;
}
.faq-item.open .faq-content{padding:0 22px 22px; max-height:220px}
.faq-item.open .faq-icon{background:rgba(255,215,0,.12); color:var(--gold-2)}

.final-cta .final-wrap{
  padding:28px; display:grid; grid-template-columns:1.1fr .9fr; gap:24px; align-items:stretch;
}
.final-copy h2{
  font-size:clamp(2.2rem,4.8vw,4.9rem); line-height:1.02; letter-spacing:-.05em; margin:18px 0 14px; max-width:10ch;
}
.final-copy p{color:var(--muted); line-height:1.68; max-width:58ch}
.final-actions{display:flex; gap:14px; flex-wrap:wrap; margin-top:24px}
.final-points{display:grid; grid-template-columns:1fr 1fr; gap:16px}
.final-point{padding:20px}
.final-point strong{display:block; font-size:1.7rem; letter-spacing:-.04em}
.final-point span{display:block; color:var(--muted); line-height:1.55; margin-top:8px}

.footer{
  padding:28px 0 40px; border-top:1px solid rgba(255,255,255,.05); margin-top:18px;
}
.footer-inner{display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; color:var(--muted-2)}
.footer-links{display:flex; gap:16px; flex-wrap:wrap}
.footer-links a:hover{color:var(--gold-2)}

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

@media (max-width: 1160px){
  .hero-grid,.grid-2,.final-cta .final-wrap{grid-template-columns:1fr}
  .hero-visual{order:-1; min-height:580px}
  .hero-copy h1{max-width:12ch}
  .device.home{left:8%; bottom:16px}
  .device.stats{right:8%}
  .device.music{right:24%}
  .benefits-grid{grid-template-columns:repeat(2,1fr)}
  .feature-grid,.pricing-grid,.social-grid{grid-template-columns:repeat(2,1fr)}
  .product-gallery,.gallery-grid-mini,.faq-grid,.compare,.split-card{grid-template-columns:1fr}
  .gallery-card,.gallery-grid-mini .gallery-card{grid-template-columns:1fr}
  .gallery-device{justify-self:start}
}
@media (max-width: 760px){
  .topbar-inner{min-height:76px}
  .brand-subtitle{display:none}
  .nav-actions .btn-secondary{display:none}
  .section{padding:70px 0}
  .hero{padding-top:26px}
  .hero-copy h1,.section-title,.final-copy h2{font-size:clamp(2.4rem,12vw,4rem)}
  .hero-copy p,.section-lead{font-size:1rem}
  .mini-stat-row,.benefits-grid,.feature-grid,.pricing-grid,.social-grid,.final-points{grid-template-columns:1fr}
  .hero-visual{min-height:500px}
  .device{width:min(58vw,260px)}
  .device.music{top:0; right:18%; width:min(44vw,200px)}
  .device.home{left:2%; bottom:12px}
  .device.stats{right:1%; bottom:38px}
  .float-chip{display:none}
  .pricing-panel,.final-cta .final-wrap{padding:22px}
  .billing-toggle{width:100%}
  .billing-toggle button{flex:1}
  .gallery-device .device,.gallery-grid-mini .gallery-device .device{width:min(64vw,280px)}
  .split-card,.compare-card,.gallery-card,.quote-card,.faq-trigger,.benefit-card,.feature-card,.plan-card{padding-left:20px;padding-right:20px}
}
