.blog-hero{padding:55px 0 64px}
.blog-hero .breadcrumb{margin-bottom:45px;display:flex;flex-wrap:wrap;gap:10px}
.blog-hero h1.page-heading{max-width:1050px;margin:25px 0 32px;font-size:clamp(42px,5.3vw,72px);line-height:1.12}
.blog-hero h1 span{display:block;max-width:1000px;margin-top:16px;color:var(--gold);font-size:.67em;line-height:1.25;letter-spacing:-.025em}
.blog-byline{display:flex;flex-wrap:wrap;align-items:center;gap:12px;color:#c5c8b9;font-size:13px}
.blog-byline a{color:var(--foreground)}
.blog-byline a:hover{text-decoration:underline;text-underline-offset:4px}
.blog-reading{padding:68px 0 80px}
.blog-layout{display:grid;grid-template-columns:230px minmax(0,760px);gap:80px;justify-content:center;align-items:start}
.blog-author{border-top:1px solid #b8ad8c;padding-top:22px}
.blog-author-name{display:block;font-family:var(--serif);font-size:27px;margin:18px 0 8px}
.blog-author p{font-size:13px;line-height:1.8;margin-bottom:20px}
.blog-author .text-link{font-size:13px}
.blog-prose{width:100%;min-width:0}
.blog-prose .article-body p{font-size:18px;line-height:1.9;margin-bottom:28px}
.blog-prose .article-body p:first-child{font-size:22px;line-height:1.7;color:var(--ink)}
.blog-signoff{border-top:1px solid #c3bba6;margin-top:40px;padding-top:30px}
.blog-signoff .owner-signoff{font-size:30px;margin-bottom:12px}
.blog-signoff>a,.blog-signoff p{font-size:13px;line-height:1.8;margin:10px 0}
.blog-signoff p.blog-tagline{max-width:550px;color:#69501d;font-family:var(--serif);font-size:21px;line-height:1.7;margin-top:24px}
.blog-end{display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;border-top:1px solid #c3bba6;margin-top:40px;padding-top:28px}
.blog-end a{font-size:13px}
.blog-list-hero .page-heading{max-width:900px}
.blog-list-hero .page-heading em{color:var(--gold)}
.blog-list-hero .breadcrumb{display:flex;gap:10px}
.blog-list{padding:60px 0 80px}
.blog-card{display:grid;grid-template-columns:230px minmax(0,760px);gap:80px;justify-content:center;border-top:1px solid #b8ad8c;padding-top:32px}
.blog-card-label p{font-size:13px;margin-top:18px}
.blog-card-label .small{font-size:12px;margin-top:6px}
.blog-card h2{font-family:var(--serif);text-transform:none;letter-spacing:-.025em;font-size:clamp(28px,3vw,40px);line-height:1.3;margin:0 0 22px}
.blog-card h2 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.blog-card>div>p:not(.small){line-height:1.9}
.blog-card .text-link{margin-top:24px}
@media(max-width:1050px){.blog-layout,.blog-card{grid-template-columns:180px minmax(0,1fr);gap:40px}}
@media(max-width:780px){.blog-hero{padding:32px 0 40px}.blog-hero .breadcrumb{margin-bottom:30px}.blog-hero h1.page-heading{font-size:43px}.blog-hero h1 span{font-size:29px;line-height:1.28}.blog-layout,.blog-card{grid-template-columns:1fr;gap:30px}.blog-reading,.blog-list{padding:40px 0 50px}.blog-author{display:none}.blog-prose .article-body p{font-size:17px;line-height:1.85;margin-bottom:25px}.blog-prose .article-body p:first-child{font-size:20px}.blog-list-hero .page-heading{font-size:43px}.blog-card{padding-top:24px}.blog-card-label p{margin-top:10px}.blog-card h2{font-size:30px}.blog-signoff p.blog-tagline{font-size:20px}.blog-byline{gap:8px;font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Pull quotes repeat nearby prose visually; the original text remains accessible. */
.blog-pullquote{position:relative;margin:42px 0 38px;padding:34px 40px 32px;background:var(--ink);color:var(--foreground);border-top:3px solid var(--gold)}
.blog-quote-mark{display:block;color:var(--gold);font-family:var(--serif);font-size:72px;line-height:.75;margin:8px 0 16px}
.blog-pullquote blockquote{font-family:var(--serif);font-size:clamp(25px,2.5vw,34px);line-height:1.4;letter-spacing:-.02em;margin:0;max-width:620px}
.blog-quote-credit{display:block;color:var(--gold);font-size:11px;letter-spacing:.09em;margin-top:26px;text-transform:uppercase}
.blog-quote-credit span{color:#c5c8b9}
.blog-pullquote-outline{background:transparent;border:1px solid #a99c79;border-left:4px solid #806325;color:var(--ink)}
.blog-pullquote-outline .blog-quote-mark,.blog-pullquote-outline .blog-quote-credit{color:#69501d}
.blog-pullquote-outline .blog-quote-credit span{color:#535849}
@media(max-width:780px){.blog-pullquote{margin:34px 0;padding:28px 25px}.blog-pullquote blockquote{font-size:27px;line-height:1.4}.blog-quote-mark{font-size:60px}.blog-quote-credit{line-height:1.8}.blog-quote-credit span{display:block}}

.blog-book{display:grid;grid-template-columns:190px minmax(0,1fr);gap:34px;align-items:center;margin:40px 0;padding:30px;background:#e7dfcd;border:1px solid #b9ac8b}
.blog-book-cover{display:block;max-width:190px;box-shadow:7px 10px 22px #14161126}
.blog-book-cover img{display:block;width:100%;height:auto;object-fit:contain}
.blog-book .eyebrow{font-size:10px;letter-spacing:.13em}
.blog-book h2{font-family:var(--serif);font-size:30px;line-height:1.25;text-transform:none;letter-spacing:-.025em;margin:17px 0 24px}
.blog-book a.button{font-size:13px;text-decoration:none;min-height:44px;justify-content:space-between}
.blog-book a.text-link{font-size:12px;margin-top:18px;display:inline-flex}
@media(max-width:600px){.blog-book{grid-template-columns:1fr;gap:28px;padding:28px 24px;margin:34px 0}.blog-book-cover{max-width:190px;margin:0 auto}.blog-book h2{font-size:29px;margin-top:14px}.blog-book .button{width:100%}}
.blog-prose .article-body h2{font-family:var(--serif);font-size:clamp(26px,2.6vw,34px);line-height:1.3;text-transform:none;letter-spacing:-.025em;color:var(--ink);margin:52px 0 22px}
.blog-card+.blog-card{margin-top:64px}

/* Keep navigation usable if JavaScript is disabled or the menu script fails to load. */
.blog-page:not(.blog-enhanced) .menu-toggle{display:none}
@media(max-width:1100px){
 .blog-page:not(.blog-enhanced) .nav-row{height:auto;flex-wrap:wrap;padding-top:15px;padding-bottom:15px}
 .blog-page:not(.blog-enhanced) .nav-links{display:flex;position:static;flex-direction:row;flex-wrap:wrap;order:3;width:100%;gap:12px 20px;white-space:normal}
}
