:root {
  --ink: #14261c;
  --muted: #3d5a4a;
  --leaf: #1f6b45;
  --cream: #f7fbf8;
  --mist: #e7f2eb;
  --border: rgba(20, 38, 28, 0.12);
  --max: 40rem;
}
* { box-sizing: border-box; }
html, body {
  margin: 0;
  background: var(--cream);
  color: var(--ink);
  font: 16px/1.55 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
header, main, footer { max-width: var(--max); margin: 0 auto; padding: 1.25rem 1.25rem; }
header { display: flex; justify-content: space-between; align-items: baseline; }
header > a { color: inherit; text-decoration: none; }
a { color: var(--leaf); }
nav a { margin-left: 1rem; text-decoration: none; font-weight: 600; }
h1 { font-size: 2rem; line-height: 1.2; margin: 0.4rem 0 0.8rem; }
h2 { font-size: 1.15rem; margin-top: 1.6rem; }
.card {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 1.1rem 1.2rem;
}
.muted { color: var(--muted); }
footer { color: var(--muted); font-size: 0.9rem; }
