:root{
  --bg:#f5f7f6; --fg:#1d2624; --muted:#5d6b67; --line:#d9e0dd; --accent:#2f6b5e;
}
@media (prefers-color-scheme:dark){
  :root{--bg:#141a19; --fg:#e4eae8; --muted:#93a19c; --line:#26312f; --accent:#6fbfac;}
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--bg); color:var(--fg);
  font:17px/1.7 Georgia,"Times New Roman",serif;
}
a{color:var(--accent);text-underline-offset:3px}
a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.wrap{max-width:660px;margin:0 auto;padding:0 22px}
header.site{padding:36px 0 22px;border-bottom:1px solid var(--line)}
header.site .title{
  font:600 22px/1.2 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--fg);text-decoration:none;letter-spacing:-.01em;
}
header.site nav{margin-top:10px;font:15px -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
header.site nav a{margin-right:18px;color:var(--muted);text-decoration:none}
header.site nav a:hover,header.site nav a[aria-current]{color:var(--fg)}
main{padding:34px 0 20px}
h1{font:600 30px/1.25 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;letter-spacing:-.015em;margin:0 0 14px}
h2{font:600 22px/1.3 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;margin:0 0 4px}
.post{padding:0 0 26px;margin:0 0 26px;border-bottom:1px solid var(--line)}
.post:last-child{border-bottom:0}
.post h2 a{color:var(--fg);text-decoration:none}
.post h2 a:hover{color:var(--accent)}
.meta{font:14px -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--muted);margin:0 0 10px}
.post p{margin:0}
.lead{color:var(--muted);margin:0 0 30px}
footer.site{padding:22px 0 44px;border-top:1px solid var(--line);color:var(--muted);
  font:14px -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
@media (max-width:480px){body{font-size:16px}h1{font-size:26px}}
