:root{
  --blue:#2b6cff;
  --blue-2:#4f8bff;
  --purple:#8a5cff;
  --purple-2:#c16bff;
  --bg:#05060f;
  --bg-2:#0a0b1e;
  --ink:#ffffff;
  --ink-dim:#b9bccf;
  --ink-mute:#7a7f9a;
  --line:rgba(255,255,255,.08);
  --card:rgba(255,255,255,.035);
  --card-hi:rgba(255,255,255,.06);
  --grad:linear-gradient(100deg,#4f8bff 0%,#8a5cff 55%,#c16bff 100%);
  --radius:18px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  background:var(--bg);
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  line-height:1.55;
  overflow-x:hidden;
}

/* ---------- Background layers ---------- */
.bg-layer{
  position:fixed;inset:0;z-index:-3;
  background:
    radial-gradient(1200px 800px at 20% 10%, rgba(79,139,255,.18), transparent 60%),
    radial-gradient(1000px 700px at 85% 30%, rgba(193,107,255,.18), transparent 60%),
    url('assets/image1.png') center top / cover no-repeat,
    linear-gradient(180deg,#05060f 0%, #080826 40%, #05060f 100%);
}
.bg-layer::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(5,6,15,.2) 0%, rgba(5,6,15,.85) 60%, #05060f 100%);
}
.bg-grid{
  position:fixed;inset:0;z-index:-2;pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size:60px 60px;
  mask-image:radial-gradient(ellipse at 50% 0%, #000 30%, transparent 75%);
}
.bg-glow{position:fixed;z-index:-1;border-radius:50%;filter:blur(120px);opacity:.45;pointer-events:none}
.glow-1{width:520px;height:520px;background:#2b6cff;top:-120px;left:-120px}
.glow-2{width:620px;height:620px;background:#8a5cff;top:20%;right:-180px}

/* ---------- Shared ---------- */
.grad{
  background:var(--grad);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.tag,.band__tag{
  display:inline-block;
  font-family:'Space Grotesk',sans-serif;
  font-size:12px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--ink-dim);
  padding:8px 14px;border:1px solid var(--line);border-radius:999px;
  background:rgba(255,255,255,.03);
  margin-bottom:22px;
}
h1,h2,h3,h4{font-family:'Space Grotesk',sans-serif;font-weight:700;letter-spacing:-.01em;margin:0}
h1{font-size:clamp(40px,6vw,78px);line-height:1.02;letter-spacing:-.02em}
h2{font-size:clamp(28px,3.6vw,48px);line-height:1.1}
h3{font-size:20px}
p{color:var(--ink-dim)}

.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:14px 22px;border-radius:999px;
  font-weight:600;font-size:15px;
  text-decoration:none;cursor:pointer;border:1px solid transparent;
  transition:transform .2s ease, box-shadow .3s ease, background .3s;
}
.btn--primary{
  color:#fff;background:var(--grad);background-size:200% 200%;
  box-shadow:0 10px 40px -10px rgba(138,92,255,.55), inset 0 0 0 1px rgba(255,255,255,.12);
}
.btn--primary:hover{transform:translateY(-2px);background-position:100% 0}
.btn--ghost{
  color:var(--ink);border-color:var(--line);background:rgba(255,255,255,.03);
  backdrop-filter:blur(10px);
}
.btn--ghost:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.2)}

/* ---------- Nav ---------- */
.nav{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  padding:18px clamp(20px,5vw,60px);
  backdrop-filter:blur(18px);
  background:linear-gradient(180deg, rgba(5,6,15,.7), rgba(5,6,15,.2));
  border-bottom:1px solid var(--line);
}
.nav__brand img{height:64px;display:block}
.nav__links{display:flex;gap:34px}
.nav__links a{
  color:var(--ink-dim);text-decoration:none;font-size:14px;font-weight:500;
  transition:color .2s;
}
.nav__links a:hover{color:#fff}
.nav__cta{padding:10px 18px;font-size:14px}

@media(max-width:820px){.nav__links{display:none}}

/* ---------- Hero ---------- */
.hero{
  padding:clamp(60px,10vw,140px) clamp(20px,5vw,60px) 80px;
  max-width:1280px;margin:0 auto;
}
.hero__inner{max-width:900px}
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  padding:8px 14px;border-radius:999px;
  border:1px solid var(--line);background:rgba(255,255,255,.03);
  font-size:13px;color:var(--ink-dim);
  margin-bottom:28px;
}
.dot{
  width:8px;height:8px;border-radius:50%;
  background:#4fff9b;box-shadow:0 0 12px #4fff9b;
  animation:pulse 2s infinite;
}
@keyframes pulse{50%{opacity:.4}}
.lede{
  max-width:680px;font-size:clamp(17px,1.4vw,20px);
  color:var(--ink-dim);margin:26px 0 36px;
}
.lede strong{color:#fff;font-weight:600}
.hero__cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:48px}
.hero__slogan{
  display:flex;align-items:center;gap:18px;flex-wrap:wrap;
  font-family:'Space Grotesk',sans-serif;font-size:14px;letter-spacing:.15em;
  text-transform:uppercase;color:var(--ink-dim);
}
.hero__slogan .sep{width:28px;height:1px;background:linear-gradient(90deg,var(--blue),var(--purple))}
.hero__stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;
  margin-top:60px;max-width:720px;
}
.hero__stats>div{
  padding:24px;border:1px solid var(--line);border-radius:var(--radius);
  background:var(--card);backdrop-filter:blur(10px);
}
.hero__stats strong{
  display:block;font-family:'Space Grotesk',sans-serif;
  font-size:32px;background:var(--grad);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero__stats span{font-size:13px;color:var(--ink-mute)}

/* ---------- Bands ---------- */
.band{
  max-width:1080px;margin:60px auto;padding:70px clamp(20px,5vw,60px);
  border:1px solid var(--line);border-radius:28px;
  background:linear-gradient(160deg, rgba(79,139,255,.08), rgba(138,92,255,.05) 60%, transparent);
  backdrop-filter:blur(10px);
}
.band h2{max-width:880px}
.band__sub{margin-top:22px;max-width:720px;font-size:17px}

/* ---------- Features ---------- */
.features{max-width:1280px;margin:0 auto;padding:100px clamp(20px,5vw,60px)}
.section-head{margin-bottom:50px;max-width:760px}
.section-head h2{margin-top:4px}
.grid{
  display:grid;gap:22px;
  grid-template-columns:repeat(auto-fit,minmax(290px,1fr));
}
.grid--two{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));max-width:980px}
.grid--two .card{padding:44px}
.grid--two .card p{font-size:16px}
.card{
  position:relative;overflow:hidden;
  padding:32px;border:1px solid var(--line);border-radius:var(--radius);
  background:var(--card);backdrop-filter:blur(10px);
  transition:transform .3s ease, border-color .3s ease, background .3s;
}
.card::before{
  content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;
  background:linear-gradient(140deg, transparent 40%, rgba(138,92,255,.5), transparent 70%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  opacity:0;transition:opacity .3s;
}
.card:hover{transform:translateY(-4px);background:var(--card-hi);border-color:rgba(255,255,255,.14)}
.card:hover::before{opacity:1}
.card__icon{
  width:48px;height:48px;border-radius:12px;
  display:grid;place-items:center;font-size:22px;
  background:linear-gradient(140deg, rgba(79,139,255,.2), rgba(138,92,255,.2));
  border:1px solid var(--line);margin-bottom:20px;
}
.card h3{margin-bottom:10px}
.card p{margin:0;font-size:15px}

/* ---------- Vision ---------- */
.vision{padding:80px clamp(20px,5vw,60px);max-width:1280px;margin:0 auto}
.vision__card{
  position:relative;
  padding:clamp(40px,6vw,80px);
  border-radius:32px;overflow:hidden;
  background:
    radial-gradient(800px 400px at 10% 20%, rgba(79,139,255,.25), transparent 60%),
    radial-gradient(700px 400px at 90% 80%, rgba(193,107,255,.25), transparent 60%),
    linear-gradient(160deg, rgba(255,255,255,.04), rgba(255,255,255,.01));
  border:1px solid var(--line);
}
.vision__card h2{max-width:880px;margin-top:4px}
.vision__card p{max-width:680px;margin-top:22px;font-size:17px}

/* ---------- Values ---------- */
.values{max-width:1280px;margin:0 auto;padding:100px clamp(20px,5vw,60px)}
.values__grid{
  display:grid;gap:20px;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.val{
  padding:28px;border:1px solid var(--line);border-radius:var(--radius);
  background:var(--card);
}
.swatch{
  display:block;width:36px;height:36px;border-radius:50%;margin-bottom:18px;
  box-shadow:0 0 30px currentColor;
}
.val--blue .swatch{background:#2b6cff;color:#2b6cff}
.val--purple .swatch{background:#8a5cff;color:#8a5cff}
.val--white .swatch{background:#fff;color:#fff;box-shadow:0 0 30px rgba(255,255,255,.5)}
.val--gray .swatch{background:#8a90a8;color:#8a90a8}
.val h4{margin-bottom:8px;font-size:18px}
.val p{margin:0;font-size:14px}

/* ---------- CTA ---------- */
.cta{padding:100px clamp(20px,5vw,60px)}
.cta__inner{
  max-width:860px;margin:0 auto;text-align:center;
  padding:clamp(50px,7vw,90px) clamp(24px,5vw,60px);
  border-radius:32px;position:relative;overflow:hidden;
  background:
    radial-gradient(600px 300px at 50% 0%, rgba(138,92,255,.3), transparent 70%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.01));
  border:1px solid var(--line);
}
.cta__inner::before{
  content:"";position:absolute;inset:0;
  background:conic-gradient(from 90deg at 50% 50%, transparent, rgba(138,92,255,.15), transparent 30%);
  animation:spin 14s linear infinite;z-index:-1;
}
@keyframes spin{to{transform:rotate(1turn)}}
.cta__inner p{max-width:540px;margin:18px auto 36px;font-size:17px}
.cta__form{
  display:flex;gap:10px;max-width:520px;margin:0 auto;
  padding:8px;border:1px solid var(--line);border-radius:999px;
  background:rgba(255,255,255,.04);backdrop-filter:blur(10px);
}
.cta__form input{
  flex:1;background:transparent;border:0;outline:0;color:#fff;
  padding:0 18px;font-size:15px;font-family:inherit;
}
.cta__form input::placeholder{color:var(--ink-mute)}
.cta__form button{border:0}
.cta__slogan{justify-content:center;margin-top:36px}
.cta__status{
  display:none;max-width:520px;margin:14px auto 0;
  padding:10px 14px;border-radius:12px;font-size:14px;text-align:center;
}
.cta__status.show{display:block}
.cta__status.err{
  color:#ffb8b8;background:rgba(255,107,107,.08);
  border:1px solid rgba(255,107,107,.25);
}

@media(max-width:640px){
  .cta__form{flex-direction:column;border-radius:20px;padding:14px}
  .cta__form input{padding:14px 10px;text-align:center}
  .hero__stats{grid-template-columns:1fr;max-width:380px}
}

/* ---------- Footer ---------- */
.footer{
  border-top:1px solid var(--line);
  padding:40px clamp(20px,5vw,60px);
  display:flex;justify-content:space-between;align-items:center;gap:30px;
  flex-wrap:wrap;
}
.footer__brand{display:flex;align-items:center;gap:18px}
.footer__brand img{height:54px}
.footer__brand p{margin:0;font-size:13px;color:var(--ink-mute)}
.footer__links{display:flex;gap:26px}
.footer__links a{color:var(--ink-dim);font-size:13px;text-decoration:none}
.footer__links a:hover{color:#fff}

/* ---------- Reveal ---------- */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease, transform .8s ease}
.reveal.in{opacity:1;transform:none}
