:root{
  --bg:#0b0f17;
  --panel:#101826;
  --panel2:#0f1724;
  --text:#e8edf6;
  --muted:#b7c2d6;
  --line:#23314a;
  --accent:#7aa7ff;
  --accent2:#9bf0ff;
  --max:1100px;

  --radius:18px;
  --shadow:0 10px 35px rgba(0,0,0,.35);
}

*{box-sizing:border-box}
html{color-scheme:dark}
body{
  margin:0;
  font:16px/1.65 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:
    radial-gradient(1200px 700px at 20% -10%, rgba(122,167,255,.20), transparent 60%),
    radial-gradient(900px 600px at 110% 10%, rgba(155,240,255,.12), transparent 55%),
    var(--bg);
  color:var(--text);
}

img{max-width:100%; height:auto}
a{color:inherit}
p{margin:0 0 14px}
h1,h2,h3{line-height:1.15}
h2{margin:0 0 10px}
h3{margin:0 0 8px}
ul{margin:0 0 14px; padding-left: 20px}
li{margin:0 0 6px}
.small{font-size:14px; color:var(--muted)}
.kicker{letter-spacing:.12em; text-transform:uppercase; font-size:12px; color:var(--muted)}

.container{max-width:var(--max); margin:0 auto; padding:0 20px}
.section{padding:34px 0}
.section.tight{padding:22px 0}

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

.site-header{
  border-bottom:1px solid var(--line);
  background:rgba(11,15,23,.84);
  backdrop-filter:blur(10px);
  position:sticky; top:0; z-index:50;
}
.header-row{
  display:flex; align-items:center; justify-content:space-between;
  min-height:68px; gap:14px;
}
.brand{
  display:flex; align-items:center; gap:10px;
  font-weight:800; text-decoration:none;
}
.brand-badge{
  width:34px; height:34px; border-radius:12px;
  background:linear-gradient(135deg, rgba(122,167,255,.65), rgba(155,240,255,.35));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:var(--shadow);
}
.nav{
  display:flex; align-items:center; gap:10px; flex-wrap:wrap;
}
.nav a{
  padding:10px 12px;
  border-radius:14px;
  text-decoration:none;
  min-height:44px;
  display:inline-flex;
  align-items:center;
}
.nav a:hover{background:rgba(255,255,255,.05)}
.nav a[aria-current="page"]{
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
}

.hero{padding:56px 0 22px}
.hero-card{
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(16,24,38,.92), rgba(16,24,38,.72));
  border-radius:22px;
  padding:28px;
  box-shadow:var(--shadow);
}
h1{
  font-size:clamp(30px, 4vw, 48px);
  margin:10px 0 12px;
}
.lead{color:var(--muted); max-width:75ch; margin:0 0 18px}
.actions{display:flex; gap:12px; flex-wrap:wrap; margin-top:14px}

.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px}
.card{
  border:1px solid var(--line);
  background:rgba(16,24,38,.80);
  border-radius:var(--radius);
  padding:16px;
}
.card strong{display:block; margin-bottom:6px}

.pills{display:flex; gap:10px; flex-wrap:wrap; margin-top:10px}
.pill{
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  border-radius:999px;
  padding:8px 12px;
  color:var(--muted);
  font-size:14px;
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:12px 16px;
  border-radius:14px;
  border:1px solid rgba(122,167,255,.65);
  background:rgba(122,167,255,.16);
  text-decoration:none;
  font:inherit;
  font-weight:750;
  min-height:44px;
}
.btn.secondary{
  border-color:var(--line);
  background:rgba(255,255,255,.04);
  font-weight:650;
}
.btn:active{transform:translateY(1px)}

.form{max-width:720px}
.field{margin:0 0 14px}
label{display:block; font-weight:750; margin:0 0 6px}
input,textarea,select{
  width:100%;
  background:rgba(255,255,255,.03);
  border:1px solid var(--line);
  border-radius:14px;
  color:var(--text);
  padding:12px 12px;
}
.help{color:var(--muted); font-size:14px; margin-top:6px}

.site-footer{
  border-top:1px solid var(--line);
  padding:18px 0;
  color:var(--muted);
}
.footer-row{
  display:flex; align-items:flex-start; justify-content:space-between;
  gap:12px; flex-wrap:wrap;
}
.footer-nav{display:flex; gap:12px; flex-wrap:wrap}
.footer-nav a{padding:8px 10px; border-radius:12px; text-decoration:none}
.footer-nav a:hover{background:rgba(255,255,255,.05)}

/* Accessibility upgrades */
:where(h1,h2,h3,h4,h5,h6,[id]){ scroll-margin-top: 92px; }

a:focus-visible, button:focus-visible,
input:focus-visible, textarea:focus-visible, select:focus-visible{
  outline:3px solid var(--accent);
  outline-offset:3px;
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  *{ scroll-behavior:auto !important; transition:none !important; animation:none !important; }
}
