/* Blog: matches styles.css tokens (Cinzel / Oswald, white main, red + gold accents) */
.topbar nav a.is-active{color:var(--gold)}
@media(max-width:700px){.topbar nav{display:block}.topbar nav a:not(.nav-blog){display:none}.topbar nav a.nav-blog{margin-left:0}}
.blog-hero{background:var(--ink);color:#fff;text-align:center;padding:56px 20px 44px;border-bottom:3px solid var(--gold)}
.blog-hero .hero-logo{width:min(440px,80vw);margin:0 auto 14px}
.blog-hero .eyebrow{color:var(--gold)}
.blog-hero h1{font-family:"Cinzel",serif;font-size:clamp(30px,5vw,48px);margin:6px 0 4px}
.blog-hero .sub{color:#cfc7bb;max-width:620px;margin:0 auto}
.blog-sec{background:#fff}
.post-list{display:grid;gap:22px;grid-template-columns:1fr}
@media(min-width:760px){.post-list{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.post-list{grid-template-columns:repeat(3,1fr)}}
.post-card{background:#fff;border:1px solid #ece7df;box-shadow:0 10px 30px rgba(0,0,0,.06);display:flex;flex-direction:column}
.post-card>a{text-decoration:none;color:inherit;display:flex;flex-direction:column;height:100%}
.post-card img{width:100%;aspect-ratio:1;object-fit:cover;height:auto}
.post-card .body{padding:18px 20px 22px;border-top:3px solid var(--red);display:flex;flex-direction:column;gap:6px;flex:1}
.post-card h3{font-family:"Cinzel",serif;font-size:22px;line-height:1.25;letter-spacing:.02em}
.post-meta{color:var(--gold);font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:600}
.post-meta .song{color:var(--red)}
.post-card p.excerpt{color:var(--muted)}
.post-card .more{margin-top:auto;padding-top:8px;color:var(--red);letter-spacing:.14em;text-transform:uppercase;font-size:13px;font-weight:600}
.empty{color:var(--muted);font-style:italic}
.post{background:#fff;padding:56px 20px 64px}
.post .wrap{max-width:760px}
.post h1{font-family:"Cinzel",serif;font-size:clamp(28px,4.4vw,44px);line-height:1.2;margin:6px 0 10px}
.post .cover{width:100%;max-width:420px;aspect-ratio:1;object-fit:cover;height:auto;margin:0 0 26px;border-top:3px solid var(--red)}
.song-box{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;background:var(--ink);color:#fff;padding:16px 20px;border-top:3px solid var(--gold);margin:0 0 30px}
.song-box .lbl{color:var(--gold);font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:600}
.song-box .t{font-family:"Cinzel",serif;font-size:22px;color:#fff}
.post-body{font-family:Georgia,"Times New Roman",serif;font-size:19px;line-height:1.75;color:#2b2724}
.post-body p,.post-body ul,.post-body ol,.post-body blockquote{margin:0 0 1.1em}
.post-body ul,.post-body ol{padding-left:1.4em}
.post-body h2{font-size:clamp(22px,3vw,30px);margin:1.4em 0 .5em}
.post-body h3{font-family:"Cinzel",serif;font-size:22px;margin:1.3em 0 .4em}
.post-body a{color:var(--red)}
.post-body blockquote{border-left:3px solid var(--gold);padding:4px 0 4px 18px;font-family:"Cinzel",serif;font-size:21px;line-height:1.45;color:var(--ink)}
.post-body img{max-width:100%;height:auto;margin:1em 0}
.post-credit{margin-top:34px;padding-top:18px;border-top:1px solid #ece7df;color:var(--muted);font-size:14px;letter-spacing:.08em}
.post-nav{margin-top:30px;display:flex;flex-wrap:wrap;gap:12px}
.post-motto{background:var(--paper)}
@media(max-width:600px){.post{padding:36px 18px 48px}.post-body{font-size:18px}.song-box .btn{width:100%;text-align:center}}
.post-body{overflow-wrap:anywhere;word-break:break-word}
