:root{
  --green:#1f4d36; --cream:#faf6ee; --beige:#f2e9da;
  --ink:#2b2b2b; --muted:#6b6b6b; --radius:14px;
  --shadow:0 6px 20px rgba(0,0,0,.06);
}
*{box-sizing:border-box}
html{font-size:16px}
body{
  margin:0;background:var(--cream);color:var(--ink);
  font:400 1rem/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,"Helvetica Neue",Arial,sans-serif;
  text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;
}
.site{min-height:100vh;display:flex;flex-direction:column}

/* Header / nav */
header.site-header{background:var(--green);color:#fff;position:sticky;top:0;z-index:10;box-shadow:var(--shadow)}
.site-header .wrap{max-width:1100px;margin:0 auto;padding:.8rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{font-weight:700;letter-spacing:.2px}
.nav a{color:#fff;text-decoration:none;padding:.5rem .75rem;border-radius:999px}
.nav a:hover{background:rgba(255,255,255,.12)}

/* Hero */
.hero{max-width:1100px;margin:2rem auto;padding:0 1rem 1rem}
.hero h1{font-size:2rem;margin:.5rem 0 0}
.hero p{color:var(--muted);margin:.25rem 0 1rem}
.cta-row{display:flex;gap:.75rem;flex-wrap:wrap}
.btn{display:inline-block;background:var(--green);color:#fff;border:none;padding:.65rem .95rem;border-radius:999px;text-decoration:none}
.btn.alt{background:#fff;color:var(--green);border:1px solid var(--green)}
.btn:hover{filter:brightness(.95)}

/* Grid/cards */
.section{padding:1rem}
.grid{max-width:1100px;margin:0 auto;display:grid;gap:1rem;padding:0 1rem 2rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:#fff;border:1px solid #eee;border-radius:var(--radius);padding:1rem;box-shadow:var(--shadow)}
.card h3{margin:.2rem 0 .5rem;font-size:1.15rem}

/* Footer */
footer.site-footer{margin-top:auto;background:var(--beige);border-top:1px solid #e7dcc6}
.site-footer .wrap{max-width:1100px;margin:0 auto;padding:1rem;color:var(--muted)}
