:root{
  --paper:#F6F1E4; --paper2:#EDE5D0; --rule:#D8CDB2; --ink:#1F2A24; --muted:#5F675C;
  --fairway:#1F6B3F; --pine:#0B3D23; --pin:#C8352E;
  --serif:"New York","Source Serif 4",Georgia,"Times New Roman",serif;
  --sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Inter","Helvetica Neue",Arial,sans-serif;
}
@media (prefers-color-scheme: dark){
  :root{ --paper:#151917; --paper2:#202622; --rule:#2E3630; --ink:#ECE9DF; --muted:#A2A99C; --fairway:#4FA36D; --pine:#9FD3B4; --pin:#E0554D; color-scheme:dark; }
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
.wrap{max-width:680px;margin:0 auto;padding:40px 20px 72px}
header.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--rule);margin-bottom:32px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--pine);font-family:var(--serif);font-weight:700;letter-spacing:.18em;font-size:13px}
.brand svg{flex:0 0 auto}
nav a{color:var(--muted);text-decoration:none;font-size:15px;margin-left:18px}
nav a:hover,nav a[aria-current]{color:var(--ink)}
h1{font-family:var(--serif);font-size:40px;line-height:1.1;margin:0 0 10px;text-wrap:balance}
h2{font-family:var(--serif);font-size:24px;margin:36px 0 8px;padding-top:10px;border-top:1px solid var(--rule)}
h3{font-size:17px;margin:22px 0 4px}
p{margin:0 0 14px}
ul{margin:0 0 14px;padding-left:22px}li{margin-bottom:6px}
a{color:var(--fairway)}
.lede{font-size:19px;color:var(--muted);margin-bottom:24px}
.meta{font-size:14px;color:var(--muted)}
.card{background:var(--paper2);border:1px solid var(--rule);border-radius:14px;padding:18px 20px;margin:18px 0}
.card b{color:var(--pine)}
.cta{display:inline-block;background:var(--pine);color:#F6F1E4;text-decoration:none;font-weight:600;padding:12px 22px;border-radius:999px;margin:8px 0 20px}
@media (prefers-color-scheme: dark){ .cta{color:#151917} }
.hero{display:flex;gap:28px;align-items:center;margin:8px 0 28px}
.hero svg{flex:0 0 auto}
footer{margin-top:56px;padding-top:18px;border-top:1px solid var(--rule);font-size:14px;color:var(--muted)}
footer a{color:var(--muted)}
@media (max-width:520px){ h1{font-size:32px} .hero{flex-direction:column;align-items:flex-start} nav a{margin-left:12px} }
