:root{
  --bg:#0b0a12;
  --panel:#141228;
  --panel2:#1a1736;
  --text:#ffffff;
  --muted:rgba(255,255,255,.75);
  --muted2:rgba(255,255,255,.6);
  --brand:#b400ff;
  --brand2:#7a3cff;
  --stroke:rgba(255,255,255,.12);
  --ok:#3ddc97;
  --warn:#ffcc66;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:linear-gradient(180deg,#080713 0%, #0c0a1b 50%, #080713 100%);color:var(--text)}
a{color:inherit}
.container{max-width:1100px;margin:0 auto;padding:0 18px}
.nav{
  position:sticky;top:0;z-index:10;
  backdrop-filter: blur(10px);
  background:rgba(10,8,20,.65);
  border-bottom:1px solid var(--stroke);
}
.navInner{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:10px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}

.logo{
  width:34px;
  height:34px;
  border-radius:10px;

  background-image: url("/assets/kio-logo.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;

  box-shadow: 0 10px 30px rgba(180,0,255,.25);
}

.brand:hover .logo {
  transform: scale(1.05);
}

.logo {
  transition: transform 0.2s ease;
}

@media (min-width: 900px) {
  .logo {
    width: 38px;
    height: 38px;
  }
}


.brandName{font-weight:800;letter-spacing:.2px}
.navLinks{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.navLinks a{opacity:.9;text-decoration:none;font-size:14px}
.navLinks a:hover{opacity:1;text-decoration:underline}
.btn{
  appearance:none;border:0;cursor:pointer;
  padding:10px 14px;border-radius:12px;
  font-weight:700;font-size:14px;
  background:rgba(255,255,255,.08);
  color:var(--text);
  border:1px solid var(--stroke);
}
.btn:hover{background:rgba(255,255,255,.12)}
.btnPrimary{
  background:linear-gradient(135deg,var(--brand) 0%, var(--brand2) 100%);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 16px 40px rgba(180,0,255,.28);
}
.btnPrimary:hover{filter:brightness(1.05)}
.hero{padding:40px 0 18px}
.heroGrid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:stretch}
.card{
  background:linear-gradient(180deg,rgba(255,255,255,.06) 0%, rgba(255,255,255,.03) 100%);
  border:1px solid var(--stroke);
  border-radius:18px;
  padding:18px;
}
.heroTitle{font-size:40px;line-height:1.08;margin:0 0 10px;font-weight:900}
.heroSub{margin:0 0 16px;color:var(--muted);font-size:16px;line-height:1.5}
.badges{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.badge{
  font-size:12px;padding:8px 10px;border-radius:999px;
  border:1px solid var(--stroke);background:rgba(255,255,255,.05);
  color:var(--muted);
}
.ctaRow{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.kpiGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.kpi{padding:12px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid var(--stroke)}
.kpi strong{display:block;font-size:18px}
.kpi span{color:var(--muted2);font-size:12px}
.section{padding:16px 0}
.sectionTitle{margin:0 0 10px;font-size:22px;font-weight:900}
.sectionSub{margin:0 0 14px;color:var(--muted);line-height:1.5}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.feature{padding:14px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid var(--stroke)}
.feature h3{margin:0 0 6px;font-size:16px}
.feature p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.step{padding:14px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid var(--stroke)}
.step .num{width:28px;height:28px;border-radius:10px;display:grid;place-items:center;
  background:rgba(180,0,255,.18);border:1px solid rgba(255,255,255,.16);font-weight:800;margin-bottom:10px}
.formRow{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.input{
  width:100%;padding:12px 12px;border-radius:12px;
  border:1px solid var(--stroke);
  background:rgba(0,0,0,.25);
  color:var(--text);
  outline:none;
}
.input:focus{border-color:rgba(180,0,255,.55);box-shadow:0 0 0 4px rgba(180,0,255,.15)}
.small{font-size:12px;color:var(--muted2);line-height:1.5}
.footer{padding:22px 0;border-top:1px solid var(--stroke);margin-top:18px}
.footerGrid{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.footer a{opacity:.85;text-decoration:none}
.footer a:hover{opacity:1;text-decoration:underline}
.toast{
  position:fixed;left:50%;bottom:22px;transform:translateX(-50%);
  background:rgba(10,8,20,.92);
  border:1px solid var(--stroke);
  padding:10px 12px;border-radius:12px;
  display:none;max-width:92vw;
}
.toast.show{display:block}
hr.sep{border:0;border-top:1px solid var(--stroke);margin:14px 0}

@media(max-width:900px){
  .heroGrid{grid-template-columns:1fr}
  .grid3,.steps{grid-template-columns:1fr}
  .heroTitle{font-size:32px}
  .formRow{grid-template-columns:1fr}
}

/* ================================
   MOBILE EDGE SPACING POLISH
   Paste at END of styles.css
================================ */
@media (max-width: 520px) {
  .container {
    padding-left: 22px;
    padding-right: 22px;
  }

  /* Slightly more room between stacked sections */
  .hero { padding: 26px 0 14px; }
  .section { padding: 14px 0; }
}


/* ✅ Prevent anchor/scroll target from hiding under sticky header */
#waitlistCard{ scroll-margin-top: 90px; }

