.blog-body { max-width:900px; padding-top:48px; padding-bottom:64px; }
.blog-body h1 { max-width:none; font-size:clamp(32px,4.5vw,54px); line-height:1.15; margin:18px 0 28px; overflow-wrap:anywhere; }
.blog-body .lead { max-width:none; font-size:20px; line-height:1.75; margin-bottom:36px; }
.blog-body .article-content { font-size:18px; line-height:1.85; overflow-wrap:anywhere; }
.blog-body .article-content p { margin:0 0 24px; white-space:pre-line; }
.blog-body .article-content h2 { font-size:30px; line-height:1.3; margin:44px 0 20px; }
.blog-body .article-content h3 { font-size:24px; line-height:1.4; margin:32px 0 16px; }
.blog-body .article-content ul,.blog-body .article-content ol { padding-left:28px; margin:0 0 28px; }
.blog-body .article-content ul { list-style:disc; }
.blog-body .article-content ol { list-style:decimal; }
.blog-body .article-content li { padding-left:6px; margin:10px 0; }
.blog-body .article-content li p { margin:0; }
.blog-body .article-content a { color:var(--coral); text-decoration:underline; }
.blog-body .article-content blockquote { border-left:4px solid var(--gold); padding:18px 24px; margin:28px 0; background:var(--cream); }
.blog-body > .blog-photo { height:auto; max-height:520px; object-fit:contain; margin:0 0 36px; }
.blog-body > .simple-card { margin-top:44px; padding:28px; }
.blog-body > .simple-card h2 { font-size:28px; margin-bottom:18px; }
.blog-body > .simple-card p { margin:12px 0; }
.article-share { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:24px 0 32px; padding:16px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); font:14px/1.5 Arial,sans-serif; }
.article-share-label { font-weight:700; margin-right:4px; }
.article-share a,.article-share button { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:9px 14px; border:1px solid var(--line); border-radius:8px; color:var(--ink); background:white; font:inherit; text-decoration:none; cursor:pointer; }
.article-share a:hover,.article-share button:hover { border-color:var(--coral); color:var(--coral); }
.article-share a:focus-visible,.article-share button:focus-visible { outline:2px solid var(--coral); outline-offset:3px; }
.article-share-status { flex-basis:100%; color:var(--muted); }
.article-share-status:empty { display:none; }
.article-share input { width:100%; padding:10px; border:1px solid var(--line); border-radius:6px; font:inherit; }
@media(max-width:600px) {
  .blog-body { padding-top:28px; padding-bottom:40px; }
  .blog-body .lead,.blog-body .article-content { font-size:17px; }
  .blog-body .article-content h2 { font-size:26px; margin-top:32px; }
  .blog-body > .simple-card { padding:22px; }
}
