/* Base */
:root{
  --bg:#070B12;
  --card:#0F1522CC;
  --muted:#94A3B8;
  --text:#E6EDF7;
  --brand:#7C3AED;
  --brand2:#06B6D4;
  --accent:#10B981;
  --danger:#EF4444;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial;
  color:var(--text);
  background:radial-gradient(1200px 600px at 10% -10%, #12203A 0%, transparent 60%),
             radial-gradient(800px 500px at 110% 10%, #0F182D 0%, transparent 60%),
             var(--bg);
  overflow-x:hidden;
}
a{color:#A5B4FC;text-decoration:none}
.container{width:min(1150px,92%);margin-inline:auto}
.grad-text{
  background:linear-gradient(90deg,var(--brand),var(--brand2));
  -webkit-background-clip:text;background-clip:text;color:transparent
}
/* Navbar */
.navbar{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 0; position:sticky; top:0; z-index:50; backdrop-filter:blur(8px)
}
.brand{display:flex;align-items:center;gap:12px}
.logo{width:40px;height:40px}
.brand-text{display:flex;flex-direction:column;line-height:1}
.nav-links{display:flex;align-items:center;gap:18px}
.nav-links a{opacity:.9}
.btn{border:0;padding:12px 18px;border-radius:14px;cursor:pointer;font-weight:600}
.btn.primary{background:linear-gradient(90deg,var(--brand),var(--brand2));color:#fff}
.btn.ghost{border:1px solid #334155;color:#E2E8F0;background:transparent}
.btn.outline{border:1px solid #475569;color:#E2E8F0;background:transparent}
.w-100{width:100%}
.badge{padding:6px 10px;border:1px solid #2A3447;border-radius:999px;font-size:12px;opacity:.9}
.badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.hamburger{display:none;background:none;border:0;cursor:pointer}
.hamburger span{display:block;width:26px;height:2px;background:#cbd5e1;margin:6px 0;border-radius:2px}

/* Mobile menu */
.mobile-menu{
  display:none;flex-direction:column;gap:14px;padding:16px;background:#0B1220;
  position:sticky;top:72px;z-index:40;border:1px solid #1f2937;border-radius:16px;margin:0 4%
}
.mobile-menu.open{display:flex}

/* Hero */
.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;padding:40px 0 10px}
.lead{opacity:.9}
.glass.card{
  background:var(--card); border:1px solid #1F2A3C; border-radius:20px; padding:22px;
  box-shadow:0 10px 30px rgba(0,0,0,.25)
}
.card h3{margin-top:0}
.hero-visual .card ul{margin:0 0 16px 18px}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0 0}

/* Stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:20px 0 10px}
.stat{background:#0C1221;border:1px solid #1F2A3C;border-radius:16px;padding:16px;text-align:center}
.stat .count{font-size:34px;font-weight:800;display:block}
.stat small{opacity:.75}

/* Sections */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:34px;padding:40px 0}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.module,.price-card,blockquote{background:#0C1221;border:1px solid #1F2A3C;border-radius:16px;padding:18px}
.price-card .price{font-size:28px;font-weight:800;margin:8px 0 4px}
.price-card.highlight{border-color:#334155;background:linear-gradient(180deg,#0C1221,#0C1221cc)}
.checklist{list-style:none;padding-left:0}
.checklist li{position:relative;padding-left:26px;margin:8px 0}
.checklist li:before{content:"✔";position:absolute;left:0;top:0;color:var(--accent)}

/* Form */
.form-card label{display:block;font-size:14px;margin-bottom:8px}
.form-card input,.form-card select,.form-card textarea,
.modal-content input,.modal-content select,.modal-content textarea{
  width:100%;padding:12px 12px;border-radius:12px;border:1px solid #263246;background:#0B1323;color:#E2E8F0;margin-top:6px
}
.form-card .hp,.modal-content .hp{display:none !important}
.form-card .consent,.modal-content .consent{display:flex;gap:8px;align-items:flex-start;font-size:13px;margin:8px 0}
.form-card .form-note{opacity:.8;font-size:12px}
.form-status{margin-top:10px;font-size:13px}
input:invalid[focused="true"], textarea:invalid[focused="true"]{border-color:var(--danger)}

/* Modal */
.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:100}
.modal.open{display:flex}
.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55)}
.modal-content{position:relative;background:#0B1220;border:1px solid #233047;border-radius:20px;padding:18px;width:min(520px,92%);box-shadow:0 10px 40px rgba(0,0,0,.5)}
.modal-close{position:absolute;right:10px;top:6px;border:0;background:transparent;color:#CBD5E1;font-size:28px;cursor:pointer}
.tiny{opacity:.75;font-size:12px;margin-top:8px}

/* Footer */
.footer{padding:24px 0 60px;opacity:.8}

/* Background ornaments */
.bg-orb{position:fixed;border-radius:50%;filter:blur(60px);z-index:-2;opacity:.28}
.orb-1{width:320px;height:320px;background:#7C3AED;left:-120px;top:-60px;animation:float 12s ease-in-out infinite}
.orb-2{width:280px;height:280px;background:#06B6D4;right:-120px;bottom:-60px;animation:float 14s ease-in-out infinite reverse}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-20px)}}
.bg-grid{position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);background-size:60px 60px;z-index:-3;mask-image:radial-gradient(600px 600px at center, #000 40%, transparent 85%)}

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

/* Responsive */
@media (max-width: 980px){
  .hero{grid-template-columns:1fr;gap:24px}
  .two-col{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr 1fr}
  .stats{grid-template-columns:repeat(2,1fr)}
  .nav-links{display:none}
  .hamburger{display:block}
}
@media (max-width: 640px){
  .grid-3{grid-template-columns:1fr}
  .grid-2{grid-template-columns:1fr}
}
