/* ---------- Blog ---------- */

.blog-hero{padding:72px 0 8px}
.blog-hero h1{
  font-family:"Fraunces",serif;font-weight:600;
  font-size:clamp(34px,5vw,52px);line-height:1.05;letter-spacing:-.02em;margin:0 0 16px;
}
.blog-hero .lede{font-size:20px;color:var(--soft);max-width:60ch;margin:0;line-height:1.55}

/* empty state */
.blog-empty{border-top:1px solid var(--line);margin-top:28px;padding:48px 0;color:var(--muted);font-size:18px}
.blog-empty p{margin:0;max-width:52ch}

/* index listing */
.post-list{list-style:none;margin:28px 0 0;padding:0}
.post-list li{border-top:1px solid var(--line)}
.post-list li:last-child{border-bottom:1px solid var(--line)}
.post-item{display:block;padding:30px 0;text-decoration:none;color:inherit}
.post-meta{
  font-size:13px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;
  color:var(--muted);margin:0 0 8px;
}
.post-item h2{font-family:"Fraunces",serif;font-weight:600;font-size:26px;line-height:1.15;margin:0 0 8px;transition:color .15s ease}
.post-item:hover h2{color:var(--gold)}
.post-item .excerpt{margin:0;color:var(--soft);font-size:17px;line-height:1.55;max-width:68ch}

/* single post */
.post{padding:60px 0 80px}
.post .back-link{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--muted);text-decoration:none;margin-bottom:26px}
.post .back-link:hover{color:var(--ink)}
.post-header{max-width:72ch;margin:0 0 30px}
.post-eyebrow{font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
.post-header h1{font-family:"Fraunces",serif;font-weight:600;font-size:clamp(30px,4.4vw,46px);line-height:1.08;letter-spacing:-.015em;margin:0 0 14px}
.post-byline{font-size:14px;font-weight:600;color:var(--muted);margin:0}
.post-body{max-width:68ch}
.post-body p{font-size:18px;color:var(--soft);line-height:1.7;margin:0 0 20px}
.post-body h2{font-family:"Fraunces",serif;font-weight:600;font-size:26px;margin:36px 0 12px}
.post-body h3{font-family:"Fraunces",serif;font-weight:600;font-size:21px;margin:28px 0 10px}
.post-body a{color:var(--gold);text-decoration:underline}
.post-body strong{color:var(--ink);font-weight:600}
.post-body blockquote{margin:24px 0;padding:4px 0 4px 22px;border-left:3px solid var(--line);color:var(--soft);font-style:italic}
.post-body ul,.post-body ol{color:var(--soft);font-size:18px;line-height:1.7;padding-left:22px;margin:0 0 20px}
.post-body li{margin:0 0 8px}
.post-body img{max-width:100%;height:auto;border-radius:var(--r);margin:24px 0}
