:root{
  --bg:#0b0f1c;
  --card:#11162a;
  --muted:#aab3cf;
  --text:#ecf1ff;
  --brand:#35e0ff;
  --brand2:#7b61ff;
  --ring:0 0 0 3px rgba(53,224,255,.25);
  --radius:18px;
  --shadow:0 10px 30px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.03);
}

/* Base */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial;
  color:var(--text);
  background:
    radial-gradient(1200px 700px at 80% -10%, #151a33, transparent),
    radial-gradient(800px 500px at 10% 10%, #0f1430, transparent),
    var(--bg);
  line-height:1.6;
}
a{color:var(--brand); text-decoration:none}
.wrap{max-width:1200px; margin:0 auto; padding:0 20px}

/* Header / Nav */
header{
  position:sticky; top:0; z-index:50; backdrop-filter:saturate(160%) blur(10px);
  background:linear-gradient(180deg, rgba(10,14,28,.9), rgba(10,14,28,.6));
  border-bottom:1px solid rgba(255,255,255,.06);
}
.nav{display:flex; align-items:center; justify-content:space-between; padding:14px 0}
.brand{display:flex; gap:12px; align-items:center; font-weight:800; letter-spacing:.4px}
.logo{width:36px; height:36px}
nav ul{display:flex; gap:18px; list-style:none; padding:0; margin:0}
nav a{padding:8px 12px; border-radius:12px; color:var(--text); opacity:.9}
nav a:hover, nav a.active{background:rgba(255,255,255,.06)}
.cta{display:flex; gap:10px}
.btn{
  border:0; padding:10px 16px; border-radius:14px; font-weight:600; cursor:pointer;
  color:#001016; background:linear-gradient(135deg,var(--brand),var(--brand2));
  box-shadow:0 6px 20px rgba(123,97,255,.35);
}
.btn.outline{background:transparent; color:var(--text); border:1px solid rgba(255,255,255,.18)}

/* Hero */
.hero{padding:80px 0 40px; position:relative; overflow:hidden}
.grid{display:grid; grid-template-columns:1.1fr .9fr; gap:30px}
.tag{
  display:inline-flex; gap:8px; align-items:center; font-size:14px; color:var(--muted);
  padding:8px 12px; border:1px solid rgba(255,255,255,.1); border-radius:999px
}
h1{font-size:44px; line-height:1.15; margin:16px 0 10px}
.lead{color:#c9d2f4; font-size:18px}
.badges{display:flex; gap:10px; flex-wrap:wrap; margin:22px 0 28px}
.badge{
  font-size:14px; padding:6px 10px; border-radius:12px; background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08); color:#d9e1ff
}
.panel{
  background:linear-gradient(180deg,rgba(17,22,42,.75),rgba(17,22,42,.55));
  border:1px solid rgba(255,255,255,.08); border-radius:var(--radius); padding:22px; box-shadow:var(--shadow)
}

/* Cards */
.cards{display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:20px}
.card{
  background:linear-gradient(180deg,rgba(17,22,42,.8),rgba(17,22,42,.6));
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px; padding:16px; box-shadow:var(--shadow);
  transition:transform .25s
}
.card:hover{transform:translateY(-4px)}
.icon{width:44px; height:44px; margin-bottom:8px}
h3{margin:.4rem 0}

/* Sections */
section{padding:64px 0}
.section-title{font-size:28px; margin:0 0 10px}
.section-sub{color:var(--muted); margin:0 0 24px}

/* Steps */
.steps{display:grid; grid-template-columns:repeat(4,1fr); gap:16px}
.step{padding:18px; border-radius:16px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08)}
.num{
  display:inline-flex; width:28px; height:28px; border-radius:50%; align-items:center; justify-content:center;
  background:linear-gradient(135deg,var(--brand),var(--brand2)); color:#001016; font-weight:800; margin-bottom:8px
}

/* Two columns & lists */
.two{display:grid; grid-template-columns:1fr 1fr; gap:20px}
ul.clean{margin:0; padding-left:18px}

/* FAQ */
details{background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); border-radius:14px; padding:12px 14px}
details + details{margin-top:10px}
summary{cursor:pointer; font-weight:600}

/* Footer */
footer{padding:36px 0 60px; color:#b9c2e5; border-top:1px solid rgba(255,255,255,.07)}
.foot{display:grid; grid-template-columns:2fr 1fr 1fr; gap:20px}
.small{font-size:13px; color:#aab3cf}

/* Responsive */
@media (max-width:1100px){
  .grid{grid-template-columns:1fr}
  .cards{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .foot{grid-template-columns:1fr 1fr}
}
@media (max-width:680px){
  .cards{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .two{grid-template-columns:1fr}
  h1{font-size:34px}
}

/* Focus */
:focus-visible{outline:none; box-shadow:var(--ring)}
