:root{
  --bg:#07111f;
  --bg2:#0b1730;
  --card:#101f39;
  --text:#f6f8ff;
  --muted:#b9c4d8;
  --line:rgba(255,255,255,.12);
  --accent:#46d6ff;
  --accent2:#8f7cff;
  --green:#40e29a;
  --warning:#ffd166;
  --shadow:0 22px 70px rgba(0,0,0,.35);
  --radius:22px;
  --max:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  background:
    radial-gradient(circle at top left, rgba(70,214,255,.20), transparent 36%),
    radial-gradient(circle at top right, rgba(143,124,255,.22), transparent 32%),
    linear-gradient(180deg,var(--bg),#050913 70%);
  color:var(--text);
  line-height:1.6;
}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 22px}
.topbar{
  border-bottom:1px solid var(--line);
  background:rgba(5,9,19,.78);
  backdrop-filter:blur(14px);
  position:sticky;
  top:0;
  z-index:10;
}
.nav{
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:800;
  letter-spacing:.2px;
  text-decoration:none;
}
.logo{
  width:38px;
  height:38px;
  border-radius:12px;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  display:grid;
  place-items:center;
  color:#05101e;
  font-weight:900;
  box-shadow:0 12px 32px rgba(70,214,255,.25);
}
.navlinks{
  display:flex;
  align-items:center;
  gap:18px;
  font-size:14px;
  color:var(--muted);
}
.navlinks a{text-decoration:none}
.navlinks a:hover{color:var(--text)}
.menu-button{display:none}
.hero{padding:78px 0 36px}
.hero-grid{
  display:grid;
  grid-template-columns:1.18fr .82fr;
  gap:28px;
  align-items:center;
}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.06);
  color:#dfe8ff;
  border-radius:999px;
  padding:8px 13px;
  font-size:14px;
  margin-bottom:22px;
}
h1{
  font-size:clamp(42px,7vw,78px);
  line-height:.95;
  margin:0 0 22px;
  letter-spacing:-3px;
}
.gradient{
  background:linear-gradient(90deg,var(--accent),#fff,var(--accent2));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.lead{
  font-size:clamp(18px,2.2vw,23px);
  color:var(--muted);
  max-width:780px;
  margin:0 0 30px;
}
.centered{margin-left:auto;margin-right:auto}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px solid transparent;
  border-radius:999px;
  padding:14px 22px;
  font-weight:800;
  text-decoration:none;
  transition:transform .15s ease, opacity .15s ease, border .15s ease;
  cursor:pointer;
}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#06101d}
.btn-secondary{border-color:var(--line);color:var(--text);background:rgba(255,255,255,.05)}
.btn-disabled{opacity:.55;pointer-events:none}
.section{padding:34px 0}
.section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:22px;
  margin-bottom:18px;
}
.card{
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.035));
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.hero-panel{padding:26px}
.hero-panel ul{margin:18px 0 0;padding-left:20px;color:var(--muted)}
.small-label{
  display:inline-flex;
  background:rgba(64,226,154,.12);
  color:var(--green);
  border:1px solid rgba(64,226,154,.24);
  padding:6px 10px;
  border-radius:999px;
  font-weight:900;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.feature{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:24px;
  align-items:stretch;
}
.feature-main{padding:34px}
.kicker{
  color:var(--green);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:900;
  font-size:12px;
  margin-bottom:10px;
}
h2{
  font-size:clamp(28px,4vw,44px);
  line-height:1.05;
  margin:0 0 16px;
  letter-spacing:-1.5px;
}
h3{font-size:23px;line-height:1.2;margin:0 0 10px}
p{margin:0 0 16px}
.muted{color:var(--muted)}
.pillrow{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 24px}
.pill{
  border:1px solid var(--line);
  background:rgba(255,255,255,.06);
  color:#dbe5f6;
  border-radius:999px;
  padding:8px 11px;
  font-size:13px;
  font-weight:700;
}
.example{
  background:rgba(0,0,0,.18);
  border:1px solid var(--line);
  border-radius:16px;
  padding:16px;
  margin:20px 0;
  color:#dce8ff;
}
.side{padding:26px;display:flex;flex-direction:column;gap:18px}
.mini-stat{
  padding:18px;
  border-radius:18px;
  background:rgba(255,255,255,.06);
  border:1px solid var(--line);
}
.mini-stat strong{display:block;font-size:26px;line-height:1;color:var(--accent)}
.filters{
  display:flex;
  gap:12px;
  padding:14px;
  margin:20px 0;
}
.filters input,.filters select{
  width:100%;
  border:1px solid var(--line);
  background:rgba(0,0,0,.18);
  color:var(--text);
  border-radius:14px;
  padding:14px;
  font-size:15px;
}
.filters select{max-width:240px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tool-card{
  padding:22px;
  min-height:260px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
}
.tool-icon{
  width:46px;
  height:46px;
  border-radius:15px;
  background:rgba(70,214,255,.12);
  border:1px solid rgba(70,214,255,.25);
  display:grid;
  place-items:center;
  font-size:23px;
  margin-bottom:16px;
}
.tag{
  display:inline-flex;
  width:max-content;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#06101d;
  background:var(--green);
  border-radius:999px;
  padding:5px 9px;
}
.tag.soon{background:var(--warning)}
.stars{letter-spacing:2px;color:var(--warning);font-size:14px;margin:8px 0}
.resource-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:18px}
.resource{padding:24px}
.resource a{color:var(--accent);font-weight:800;text-decoration:none}
.cta{
  text-align:center;
  padding:46px 28px;
  background:
    radial-gradient(circle at 20% 20%,rgba(70,214,255,.20),transparent 34%),
    linear-gradient(135deg,rgba(70,214,255,.10),rgba(143,124,255,.10));
}
.footer{padding:34px 0 52px;color:#8f9bb1;font-size:14px;text-align:center}
.small{font-size:13px;color:#8f9bb1}
@media (max-width:860px){
  .hero-grid,.feature,.grid,.resource-list{grid-template-columns:1fr}
  .section-head{align-items:flex-start;flex-direction:column}
  .nav{align-items:flex-start;flex-direction:column;padding:18px 0}
  .menu-button{
    display:inline-flex;
    position:absolute;
    top:18px;
    right:22px;
    border:1px solid var(--line);
    color:var(--text);
    background:rgba(255,255,255,.06);
    border-radius:999px;
    padding:8px 12px;
    font-weight:800;
  }
  .navlinks{display:none;flex-direction:column;align-items:flex-start}
  .navlinks.open{display:flex}
  .filters{flex-direction:column}
  .filters select{max-width:none}
  h1{letter-spacing:-2px}
}
