:root{
  --bg:#F7F4EE;
  --paper:#FFFFFF;
  --ink:#1E1B16;
  --muted:#5D5A52;
  --line:#E3D7C7;
  --accent:#2F6F5E;
  --accent2:#D17A4A;
  --accent3:#6C8A3E;
  --radius:18px;
  --max:1120px;
  --shadow:0 18px 48px rgba(30,27,22,.10);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color:var(--ink);
  background:
    radial-gradient(900px 520px at 12% -10%, rgba(47,111,94,.14), transparent 60%),
    radial-gradient(860px 520px at 92% 0%, rgba(209,122,74,.14), transparent 60%),
    radial-gradient(780px 520px at 55% 110%, rgba(108,138,62,.12), transparent 60%),
    var(--bg);
  line-height:1.75;
}
a{color:inherit}
a:hover{color:var(--accent)}
img{max-width:100%;height:auto;border-radius:14px}
.wrap{max-width:var(--max);margin:0 auto;padding:22px}
.topbar{
  position:sticky;top:0;z-index:30;
  backdrop-filter:saturate(1.1) blur(10px);
  background:rgba(246,248,245,.78);
  border-bottom:1px solid rgba(215,224,211,.85);
}
.navrow{display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand b{letter-spacing:.2px}
.brand img{width:34px;height:34px;border-radius:10px}
.navlinks{display:flex;flex-wrap:wrap;gap:12px}
.navlinks a{
  text-decoration:none;
  padding:8px 10px;
  border-radius:999px;
  border:1px solid rgba(215,224,211,.9);
  background:rgba(255,255,255,.6);
}
.navlinks a:hover{border-color:rgba(44,110,73,.45); box-shadow:0 10px 22px rgba(21,32,21,.08)}
.hero{padding:28px 0 10px}
.kicker{color:var(--muted);font-size:.95rem}
h1{font-size:2.2rem;line-height:1.15;margin:.35rem 0 .6rem}
h2{font-size:1.35rem;line-height:1.25;margin:1.6rem 0 .6rem}
h3{font-size:1.05rem;line-height:1.25;margin:1.2rem 0 .4rem}
.lead{font-size:1.08rem;color:var(--muted);max-width:70ch}
.rule{height:1px;background:rgba(215,224,211,.95);margin:18px 0}
.pills{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.pill{
  display:inline-flex;gap:8px;align-items:center;
  font-size:.92rem;color:var(--muted);
  padding:6px 10px;border-radius:999px;
  border:1px solid rgba(215,224,211,.95);
  background:rgba(255,255,255,.7);
  text-decoration:none;
}
.pill strong{color:var(--ink);font-weight:650}
.block{
  background:rgba(255,255,255,.72);
  border:1px solid rgba(215,224,211,.92);
  border-radius:var(--radius);
  padding:16px;
  box-shadow:0 12px 26px rgba(21,32,21,.07);
}
.list{margin:0;padding-left:18px}
.list li{margin:.35rem 0}
.meta{color:var(--muted);font-size:.92rem}
.footer{
  border-top:1px solid rgba(215,224,211,.95);
  margin-top:28px;
  padding:18px 0 30px;
  color:var(--muted);
  font-size:.92rem;
}
.footer a{color:var(--muted);text-decoration:none}
.footer a:hover{color:var(--accent)}
.article-header{display:flex;flex-direction:column;gap:12px;margin:16px 0 12px}
.article-cover{border:1px solid rgba(215,224,211,.95);border-radius:18px;overflow:hidden}
.smallnote{font-size:.92rem;color:var(--muted)}
hr{border:none;height:1px;background:rgba(215,224,211,.95);margin:18px 0}
@media (max-width:720px){
  h1{font-size:1.85rem}
  .wrap{padding:16px}
  .navlinks a{padding:7px 9px}
}


a{ text-decoration-thickness: 1px; text-underline-offset: 3px; }

::selection{ background: rgba(47,111,94,.20); }
