:root{
  --bg:#f7f8fb;
  --card:#ffffff;
  --accent:#0366d6;
  --muted:#6b7280;
  --radius:12px;
  --max:1000px;
  font-family:Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  color-scheme: light;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background:var(--bg);
  color:#111827;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.45;
}

.container{
  max-width:var(--max);
  margin:0 auto;
  padding:1.25rem;
}

.site-header{
  background:transparent;
  padding:0.75rem 0;
}
.logo{margin:0;font-size:1.125rem}
.nav{display:flex;gap:1rem;align-items:center}
.nav a{color:var(--muted);text-decoration:none;font-weight:600}
.nav a:hover{color:var(--accent)}

.hero{
  background:linear-gradient(90deg,rgba(3,102,214,0.06),transparent);
  padding:2rem;
  border-radius:var(--radius);
  margin:1rem 0;
}
.hero h2{margin:0 0 .5rem}
.cta{
  display:inline-block;
  background:var(--accent);
  color:#fff;
  padding:.5rem .75rem;
  border-radius:8px;
  text-decoration:none;
}

.card{
  background:var(--card);
  padding:1rem;
  border-radius:var(--radius);
  margin:1rem 0;
  box-shadow:0 6px 18px rgba(12,14,23,0.06);
}

.grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:0}
.grid li{background:linear-gradient(180deg,rgba(3,102,214,0.03),transparent);padding:.75rem;border-radius:10px}

.list{margin:0;padding-left:1rem}
.site-footer{padding:1rem 0;color:var(--muted)}

@media (min-width:780px){
  .site-header .container{display:flex;align-items:center;justify-content:space-between}
  .nav a{font-size:0.95rem}
}