/* ============================================================
   Blog — extends site.css. Loaded AFTER /assets/css/site.css.
   Uses the site's own tokens: pine / bone / brass, Newsreader + Public Sans.
   ============================================================ */

.crumbs{font-family:var(--sans);font-size:.79rem;color:var(--muted);
  padding:1.4rem 0 0}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0}
.crumbs li+li::before{content:"/";margin-right:.4rem;color:var(--rule)}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--pine);text-decoration:underline}

.post{max-width:38rem;margin:0 auto;padding-bottom:4.5rem}

.post__topic{font-family:var(--sans);font-size:.79rem;font-weight:600;
  letter-spacing:.04em;color:var(--brass);margin:2.6rem 0 .9rem}

.post h1{font-size:clamp(1.85rem,5vw,2.7rem);line-height:1.15;margin:0 0 1rem;
  text-wrap:balance}

.post__deck{font-family:var(--serif);font-size:clamp(1.08rem,2.3vw,1.24rem);
  line-height:1.55;color:var(--muted);margin:0 0 1.8rem}

.post__by{font-family:var(--sans);font-size:.85rem;line-height:1.65;color:var(--muted);
  border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
  padding:.9rem 0;margin:0 0 2.4rem}
.post__by b{font-weight:600;color:var(--ink)}

.post p{margin:0 0 1.3rem}
.post h2{font-size:1.5rem;line-height:1.3;margin:2.8rem 0 1rem}
.post h3{font-size:1.14rem;font-family:var(--sans);font-weight:640;margin:2.1rem 0 .6rem}
.post ul{margin:0 0 1.3rem;padding-left:1.25rem}
.post li{margin-bottom:.55rem}

.post__note{font-family:var(--sans);font-size:.87rem;line-height:1.65;
  color:var(--muted);background:var(--pine-soft);border-left:3px solid var(--pine);
  padding:1rem 1.15rem;margin:0 0 2rem}

.post__pull{margin:2.6rem 0;padding-left:1.4rem;border-left:2px solid var(--brass);
  font-size:1.28rem;line-height:1.5;color:var(--pine-deep);font-style:italic}

.post__rule{border:0;border-top:1px solid var(--rule);margin:3.4rem 0}

.post__author{background:var(--pine-soft);padding:1.6rem;margin-top:3.4rem}
.post__author h2{font-size:1.1rem;margin:0 0 .6rem}
.post__author p{font-family:var(--sans);font-size:.89rem;line-height:1.65;
  color:var(--muted);margin:0 0 .9rem}
.post__author p:last-child{margin-bottom:0}

.post__disc{font-family:var(--sans);font-size:.79rem;line-height:1.7;color:var(--muted);
  border-top:1px solid var(--rule);padding-top:1.2rem;margin-top:2.6rem}

/* blog index */
.blogindex{max-width:38rem;margin:0 auto;padding-bottom:4.5rem}
.blogindex h1{margin:2.6rem 0 .8rem}
.blogindex__lede{font-family:var(--serif);font-size:1.12rem;line-height:1.6;
  color:var(--muted);margin:0 0 2.4rem}
.posts{list-style:none;margin:0;padding:0}
.posts li{border-top:1px solid var(--rule);padding:1.9rem 0}
.posts li:last-child{border-bottom:1px solid var(--rule)}
.posts h2{font-size:1.4rem;line-height:1.28;margin:.4rem 0 .65rem}
.posts h2 a{text-decoration:none;color:var(--ink)}
.posts h2 a:hover{color:var(--pine);text-decoration:underline;text-underline-offset:3px}
.posts p{margin:0 0 .7rem;color:var(--muted)}
.posts .post__topic{margin:0}
.posts__meta{font-family:var(--sans);font-size:.79rem;color:var(--muted)}
