:root{
  --bg:#070b14;
  --panel:#0b1220;
  --panel2:#0e1730;
  --text:#eaf0ff;
  --muted:#a9b4d0;
  --line:rgba(255,255,255,.08);
  --shadow: 0 10px 35px rgba(0,0,0,.40);
  --shadow2: 0 20px 65px rgba(0,0,0,.55);
  --brand1:#7c5cff;
  --brand2:#21d4fd;
  --ok:#4ade80;
  --warn:#fbbf24;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:
    radial-gradient(1200px 700px at 70% 10%, rgba(124,92,255,.22), transparent 55%),
    radial-gradient(900px 500px at 20% 20%, rgba(33,212,253,.18), transparent 55%),
    radial-gradient(800px 500px at 50% 95%, rgba(124,92,255,.14), transparent 65%),
    var(--bg);
  color:var(--text);
  line-height:1.5;
}

a{color:inherit;text-decoration:none}
a:hover{opacity:.92}

.container{width:min(1120px, calc(100% - 40px)); margin:0 auto}

.skip{position:absolute; left:-999px; top:12px; background:#fff; color:#000; padding:10px 12px; border-radius:10px; z-index:10000}
.skip:focus{left:12px}

.site-header{
  position:sticky; top:0; z-index:50;
  backdrop-filter: blur(10px);
  background: rgba(7,11,20,.55);
  border-bottom:1px solid var(--line);
}
.nav{display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 0}

.brand{display:flex; align-items:center; gap:10px; font-weight:800; letter-spacing:-.02em}
.brand.small{font-weight:800}
.brand .logo{display:grid; place-items:center; width:34px; height:34px; border-radius:12px; background:linear-gradient(135deg, rgba(124,92,255,.22), rgba(33,212,253,.18)); border:1px solid var(--line)}
.brand.small .logo{width:30px;height:30px;border-radius:10px}
.brand-text{display:flex; align-items:baseline; gap:0}
.brand-name{font-size:16px}
.brand-domain{font-size:16px; color:rgba(234,240,255,.8)}

.nav-links{display:flex; gap:16px; color:rgba(234,240,255,.86); font-weight:600}
.nav-links a{padding:8px 10px; border-radius:10px}
.nav-links a:hover{background:rgba(255,255,255,.06)}

.nav-cta{display:flex; align-items:center; gap:10px}

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:11px 14px;
  border-radius:12px;
  background:linear-gradient(135deg, rgba(124,92,255,1), rgba(33,212,253,1));
  color:#081022;
  font-weight:800;
  border:0;
  box-shadow: 0 14px 35px rgba(33,212,253,.14);
  cursor:pointer;
  transition: transform .08s ease, filter .12s ease;
}
.btn:hover{filter:saturate(1.07)}
.btn:active{transform: translateY(1px)}

.btn.ghost{
  background:transparent;
  color:var(--text);
  border:1px solid var(--line);
  box-shadow:none;
}

.icon-btn{
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  color:var(--text);
  border-radius:12px;
  width:42px; height:42px;
  cursor:pointer;
}

.hero{position:relative; padding:64px 0 38px}
.hero-grid{display:grid; grid-template-columns: 1.2fr .8fr; gap:32px; align-items:start}

.eyebrow{display:inline-block; padding:8px 12px; border:1px solid var(--line); background:rgba(255,255,255,.03); border-radius:999px; color:rgba(234,240,255,.84); font-weight:700; font-size:13px}

h1{font-size: clamp(34px, 4vw, 52px); line-height:1.05; margin:16px 0 12px; letter-spacing:-.03em}

.grad{background: linear-gradient(90deg, var(--brand2), var(--brand1)); -webkit-background-clip:text; background-clip:text; color:transparent}

.subhead{font-size:16.5px; color:rgba(234,240,255,.84); max-width:62ch}

.hero-actions{display:flex; gap:12px; margin:18px 0 22px; flex-wrap:wrap}

.trust-row{display:grid; grid-template-columns: repeat(3, 1fr); gap:14px; margin-top:20px}
.trust-item{border:1px solid var(--line); background:rgba(255,255,255,.03); border-radius:16px; padding:14px}
.trust-num{font-weight:900; font-size:18px}
.trust-text{color:rgba(234,240,255,.72); font-weight:600; font-size:13px; margin-top:4px}

.hero-card{
  border-radius:18px;
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(14,23,48,.86), rgba(11,18,32,.86));
  box-shadow: var(--shadow2);
  padding:18px;
  position:sticky;
  top:86px;
}
.card-top{display:flex; gap:10px; align-items:center; justify-content:flex-start; margin-bottom:14px}
.pill{font-size:12px; font-weight:800; padding:6px 10px; border-radius:999px; border:1px solid var(--line); background:rgba(255,255,255,.03)}
.pill.subtle{color:rgba(234,240,255,.78)}

.steps{display:flex; flex-direction:column; gap:12px; padding:10px 0}
.step{display:flex; gap:10px; align-items:flex-start}
.step-dot{width:10px; height:10px; border-radius:999px; margin-top:6px; background:linear-gradient(135deg, var(--brand2), var(--brand1))}
.step-title{font-weight:800}
.step-desc{color:rgba(234,240,255,.72); font-weight:600; font-size:13px; margin-top:2px}

.card-bottom{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:14px; padding-top:14px; border-top:1px solid var(--line)}
.price{font-size:26px; font-weight:900; letter-spacing:-.02em}
.muted{color:var(--muted)}

.section{padding:64px 0}
.section.alt{background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0))}
.section-head{display:grid; grid-template-columns: 1fr; gap:8px; margin-bottom:22px}
.section-head h2{margin:0; font-size: clamp(26px, 3vw, 38px); letter-spacing:-.03em}
.section-head p{margin:0; color:rgba(234,240,255,.78); max-width:72ch; font-weight:600}

.grid-3{display:grid; grid-template-columns: repeat(3, 1fr); gap:14px}
.feature{border:1px solid var(--line); background:rgba(255,255,255,.03); border-radius:18px; padding:16px; box-shadow: var(--shadow)}
.feature h3{margin:0 0 6px; font-size:18px}
.feature p{margin:0; color:rgba(234,240,255,.74); font-weight:600}

.note{margin-top:18px; border:1px dashed rgba(255,255,255,.18); background:rgba(255,255,255,.02); border-radius:18px; padding:14px; color:rgba(234,240,255,.78); font-weight:600}

.timeline{display:grid; grid-template-columns:1fr; gap:12px}
.tl-item{display:grid; grid-template-columns: 44px 1fr; gap:12px; border:1px solid var(--line); background:rgba(255,255,255,.03); border-radius:18px; padding:16px}
.tl-num{width:44px; height:44px; border-radius:14px; display:grid; place-items:center; font-weight:900; color:#081022; background:linear-gradient(135deg, rgba(33,212,253,1), rgba(124,92,255,1))}
.tl-body h3{margin:2px 0 6px}
.tl-body p{margin:0; color:rgba(234,240,255,.74); font-weight:600}

.callout{margin-top:18px; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:18px; border-radius:22px; border:1px solid var(--line); background:linear-gradient(135deg, rgba(124,92,255,.12), rgba(33,212,253,.10)); box-shadow: var(--shadow)}
.callout h3{margin:0 0 6px}
.callout p{margin:0; color:rgba(234,240,255,.76); font-weight:600}

.pricing{display:grid; grid-template-columns: repeat(3, 1fr); gap:14px; align-items:stretch}
.price-card{border:1px solid var(--line); background:rgba(255,255,255,.03); border-radius:22px; padding:18px; box-shadow: var(--shadow); position:relative}
.price-card header h3{margin:0 0 4px; font-size:18px}
.price-card header p{margin:0}
.price-card .list{margin:14px 0 16px}
.price-card.popular{background:linear-gradient(180deg, rgba(124,92,255,.18), rgba(255,255,255,.03)); border-color: rgba(124,92,255,.35)}
.badge{position:absolute; top:12px; right:12px; font-size:12px; font-weight:900; padding:6px 10px; border-radius:999px; background:rgba(124,92,255,.22); border:1px solid rgba(124,92,255,.35)}

.list{padding-left:18px; color:rgba(234,240,255,.78); font-weight:650}
.list li{margin:8px 0}
.list.compact li{margin:6px 0}

.faq{display:grid; grid-template-columns: 1fr; gap:10px}
.faq details{border:1px solid var(--line); border-radius:18px; background:rgba(255,255,255,.03); padding:0; overflow:hidden}
.faq summary{list-style:none; cursor:pointer; padding:16px; font-weight:850}
.faq summary::-webkit-details-marker{display:none}
.faq .faq-body{padding:0 16px 16px; color:rgba(234,240,255,.76); font-weight:600}

.cta{display:grid; grid-template-columns: 1fr 0.9fr; gap:16px; align-items:start; border:1px solid var(--line); border-radius:26px; padding:18px; background:linear-gradient(180deg, rgba(14,23,48,.75), rgba(11,18,32,.75)); box-shadow: var(--shadow2)}

.form{border:1px solid var(--line); background:rgba(255,255,255,.03); border-radius:20px; padding:14px}
label{display:grid; gap:6px; margin:10px 0; font-weight:750}
input,select,textarea{
  width:100%;
  padding:11px 12px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(7,11,20,.55);
  color:var(--text);
  font: inherit;
}
input::placeholder,textarea::placeholder{color:rgba(234,240,255,.45)}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(33,212,253,.35); border-color: rgba(33,212,253,.35)}

.form-status{margin-top:10px; min-height:22px; color:rgba(234,240,255,.82); font-weight:700}

.legal{margin-top:18px; border:1px solid var(--line); background:rgba(255,255,255,.02); border-radius:18px; padding:14px; color:rgba(234,240,255,.70); font-weight:600}

.footer{padding:34px 0 46px; border-top:1px solid var(--line); background:rgba(0,0,0,.12)}
.footer-grid{display:grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap:18px}
.footer-title{font-weight:900; margin-bottom:10px}
.footer a{display:block; color:rgba(234,240,255,.82); font-weight:650; margin:8px 0}

.center{text-align:center}
.fineprint{color:rgba(234,240,255,.62); font-weight:600; font-size:12.5px}

.drawer{position:fixed; inset:0; display:none; z-index:100}
.drawer[aria-hidden="false"]{display:block}
.drawer-panel{position:absolute; right:12px; top:12px; width:min(340px, calc(100% - 24px)); background:rgba(11,18,32,.95); border:1px solid var(--line); border-radius:22px; padding:14px; box-shadow: var(--shadow2)}
.drawer-top{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:4px 4px 12px}
.drawer-title{font-weight:900}
.drawer-links{display:grid; gap:10px; padding:6px 4px 10px}
.drawer-links a{padding:10px 10px; border-radius:14px; border:1px solid var(--line); background:rgba(255,255,255,.03); font-weight:800}
.drawer-links a.btn{border:0}
.drawer-foot{margin:10px 0 0; color:rgba(234,240,255,.62); font-weight:650; font-size:12px}
.drawer-backdrop{position:absolute; inset:0; background:rgba(0,0,0,.55); border:0; width:100%; height:100%; cursor:pointer}

.hero-bg{position:absolute; inset:-2px 0 auto 0; height:520px; pointer-events:none; opacity:.75;
  background:
    radial-gradient(600px 300px at 15% 20%, rgba(33,212,253,.16), transparent 60%),
    radial-gradient(700px 300px at 90% 30%, rgba(124,92,255,.16), transparent 60%);
}

@media (max-width: 980px){
  .hero-grid{grid-template-columns:1fr;}
  .hero-card{position:relative; top:auto}
  .pricing{grid-template-columns:1fr;}
  .grid-3{grid-template-columns:1fr;}
  .cta{grid-template-columns:1fr;}
  .trust-row{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .nav-links{display:none}
  #openMenu{display:inline-flex}
}

@media (min-width: 981px){
  #openMenu{display:none}
}
