:root{
  --brand-green:#0a6b00;
  --brand-blue:#0e2b63;
  --text:#0f172a;
  --bg:#ffffff;
  --muted:#475569;
  --card:#f8fafc;
  --radius:16px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Inter, Arial, sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.6;
}
.container{max-width:1100px;margin-inline:auto;padding:0 1.25rem}
a{color:var(--brand-blue);text-decoration:none}
header, footer{background:var(--card)}
.logo{height:42px;display:block}
.grid{display:grid;gap:1rem}
.grid-3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{
  background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius);
  padding:1.25rem; box-shadow: 0 1px 2px rgba(0,0,0,.04);
}
.btn{
  display:inline-block;padding:.75rem 1rem;border-radius:12px;
  background:var(--brand-green);color:#fff;font-weight:600;
}
.btn.secondary{background:var(--brand-blue)}
.hero{
  padding:3rem 0 2rem;
}
.hero h1{font-size:clamp(2rem,4vw,3rem);margin:.25rem 0 .5rem}
.kicker{color:var(--brand-green);font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.badge{display:inline-block;background:var(--brand-blue);color:#fff;padding:.2rem .5rem;border-radius:8px;font-size:.8rem}
ul.clean{list-style:none;padding:0;margin:0}
ul.clean li{margin:.2rem 0; padding-left:1.4rem; position:relative}
ul.clean li::before{content:"•"; position:absolute; left:0; color:var(--brand-green)}
