:root{
  --bg:#0b1220;
  --card:#101a33;
  --text:#e8eefc;
  --muted:#a9b7e6;
  --primary:#3b82f6;
  --primary2:#60a5fa;
  --green:#22c55e;
  --border:rgba(255,255,255,.10);
  --shadow: 0 18px 40px rgba(0,0,0,.35);
  --radius: 16px;
}

*{ box-sizing:border-box; }
html,body{ height:100%; }
body{
  margin:0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background:
    radial-gradient(900px 500px at 20% 10%, rgba(59,130,246,.25), transparent 60%),
    radial-gradient(900px 500px at 80% 20%, rgba(34,197,94,.14), transparent 55%),
    var(--bg);
  color:var(--text);
  line-height:1.5;
}

a{ color:inherit; text-decoration:none; }
.container{ width:min(1100px, 92vw); margin:0 auto; }

/* Top */
.top{
  position:sticky; top:0; z-index:50;
  backdrop-filter: blur(12px);
  background: rgba(11,18,32,.65);
  border-bottom:1px solid var(--border);
}
.top__inner{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 0;
}
.brand{ display:flex; gap:12px; align-items:center; }
.brand__mark{
  width:44px; height:44px; border-radius:12px;
  display:grid; place-items:center;
  background: linear-gradient(135deg, rgba(59,130,246,.35), rgba(34,197,94,.18));
  border:1px solid var(--border);
  box-shadow: var(--shadow);
  font-weight:800;
}
.brand__name{ font-weight:900; letter-spacing:.6px; }
.brand__name span{ color: var(--green); }
.brand__tag{ font-size:12px; color:var(--muted); margin-top:2px; }

.nav{ display:flex; gap:16px; align-items:center; }
.nav a{ color:var(--muted); font-weight:600; font-size:14px; }
.nav a:hover{ color:var(--text); }

/* Buttons */
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 16px;
  border-radius: 14px;
  border:1px solid var(--border);
  font-weight:800;
  letter-spacing:.2px;
  transition: transform .08s ease, background .2s ease, border-color .2s ease;
}
.btn:hover{ transform: translateY(-1px); }
.btn--primary{
  background: linear-gradient(135deg, rgba(59,130,246,.95), rgba(96,165,250,.85));
  border-color: rgba(59,130,246,.45);
}
.btn--soft{
  background: rgba(255,255,255,.06);
}
.btn--ghost{
  background: transparent;
}
.btn--full{ width:100%; }

/* Hero */
.hero{ padding: 42px 0 18px; }
.hero__grid{
  display:grid;
  grid-template-columns: 1.25fr .75fr;
  gap: 22px;
  align-items: start;
}
.pill{
  display:inline-flex;
  gap:10px;
  align-items:center;
  padding: 8px 12px;
  border:1px solid var(--border);
  border-radius: 999px;
  color: var(--muted);
  background: rgba(255,255,255,.04);
  font-weight:700;
  width: fit-content;
}
.hero h1{
  margin: 14px 0 10px;
  font-size: clamp(30px, 4vw, 46px);
  line-height: 1.12;
}
.hero h1 span{ color: var(--primary2); }
.subtitle{ color: var(--muted); font-size: 16px; max-width: 52ch; }

.cta{ display:flex; gap:12px; flex-wrap: wrap; margin-top: 18px; }

.trust{
  margin-top: 18px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 12px;
}
.trust__item{
  padding: 12px;
  border:1px solid var(--border);
  border-radius: var(--radius);
  background: rgba(255,255,255,.04);
}
.trust__item strong{ display:block; }
.trust__item span{ color: var(--muted); font-size: 13px; }

/* Card form */
.card{
  padding: 18px;
  border:1px solid var(--border);
  border-radius: var(--radius);
  background: rgba(16,26,51,.78);
  box-shadow: var(--shadow);
}
.card h2{ margin: 0 0 6px; }
.card .muted{ margin: 0 0 14px; }

.form{ display:grid; gap: 10px; }
label{ display:grid; gap: 6px; font-weight: 700; font-size: 13px; color: var(--muted); }
input{
  border-radius: 12px;
  border: 1px solid var(--border);
  padding: 12px 12px;
  background: rgba(255,255,255,.04);
  color: var(--text);
  outline: none;
}
input:focus{
  border-color: rgba(96,165,250,.65);
}
.card__note{
  margin-top: 12px;
  padding: 12px;
  border-radius: 12px;
  border:1px dashed rgba(255,255,255,.18);
  background: rgba(255,255,255,.03);
}
.card__note p{ margin: 6px 0; }
.tiny{ color: var(--muted); font-size: 12px; margin: 10px 0 0; }

/* Sections */
.section{ padding: 46px 0; }
.section--alt{
  background: rgba(255,255,255,.03);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
h2{ font-size: 28px; margin:0 0 6px; }
.muted{ color: var(--muted); }

.grid3{
  margin-top: 18px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}
.box{
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: rgba(255,255,255,.04);
}
.box h3{ margin: 0 0 6px; }

/* Steps */
.steps{ display:grid; gap: 12px; margin-top: 18px; }
.step{
  display:flex; gap: 12px; align-items:flex-start;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: rgba(255,255,255,.04);
}
.step__n{
  width: 34px; height: 34px; border-radius: 12px;
  display:grid; place-items:center;
  border: 1px solid var(--border);
  background: rgba(59,130,246,.18);
  font-weight: 900;
}
.center{ display:flex; justify-content:center; margin-top: 18px; }

/* Pricing */
.pricing{ margin-top: 18px; display:flex; justify-content:center; }
.pricing__card{
  width:min(520px, 100%);
  padding: 18px;
  border-radius: var(--radius);
  border:1px solid rgba(96,165,250,.35);
  background: rgba(16,26,51,.78);
  box-shadow: var(--shadow);
}
.pricing__header{ margin-bottom: 10px; }
.price{ font-size: 34px; font-weight: 950; margin: 6px 0; }
.price span{ font-size: 14px; color: var(--muted); font-weight: 700; }
.list{ margin: 12px 0 16px; padding-left: 18px; }
.list li{ margin: 8px 0; color: var(--text); }

/* FAQ */
.faq{
  margin-top: 12px;
  padding: 14px;
  border-radius: var(--radius);
  border:1px solid var(--border);
  background: rgba(255,255,255,.04);
}
.faq summary{ cursor:pointer; font-weight: 850; }
.faq p{ margin: 10px 0 0; color: var(--muted); }

/* Contact */
.contact{
  display:grid;
  grid-template-columns: 1fr .7fr;
  gap: 14px;
  align-items:start;
}
.contact__cards{ display:grid; gap: 10px; margin-top: 12px; }
.contact__card{
  padding: 14px;
  border-radius: var(--radius);
  border:1px solid var(--border);
  background: rgba(255,255,255,.04);
}
.contact__card strong{ display:block; }
.contact__card span{ color: var(--muted); font-size: 13px; }

.legal{
  padding: 16px;
  border-radius: var(--radius);
  border:1px solid var(--border);
  background: rgba(255,255,255,.03);
}

/* Responsive */
@media (max-width: 920px){
  .hero__grid{ grid-template-columns: 1fr; }
  .trust{ grid-template-columns: 1fr; }
  .grid3{ grid-template-columns: 1fr; }
  .contact{ grid-template-columns: 1fr; }
  .nav{ display:none; }
}
