.blog-page .blog-meta{color:var(--color-muted);font-size:.95rem}
.blog-page .blog-list{align-items:stretch}
.blog-page .blog-list .card{display:flex;flex-direction:column;gap:.6rem}
.blog-page .blog-list h2{font-size:1.35rem;line-height:1.35;margin:0}
.blog-page .blog-list h2 a{color:var(--color-ink);text-decoration:underline;text-underline-offset:.2em}
.blog-page .blog-list p{margin:0}
.blog-page .blog-list .blog-read{margin-top:auto;padding-top:.8rem;font-weight:700}
.blog-page .blog-category{color:var(--color-blue);font-weight:700;font-size:.9rem}
.blog-page .blog-article-header .container{max-width:960px}
.blog-page .blog-breadcrumb{margin-bottom:1.5rem;font-size:.95rem;overflow-wrap:anywhere}
.blog-page .blog-breadcrumb a{color:var(--color-blue);text-decoration:underline}
.blog-page .blog-article-header h1{max-width:23ch}
.blog-page .blog-prose{max-width:76ch;margin-inline:auto;font-size:1.075rem;line-height:1.75;overflow-wrap:anywhere}
.blog-page .blog-prose h2{font-size:clamp(1.45rem,2.8vw,1.85rem);line-height:1.3;margin:2.25rem 0 1rem;scroll-margin-top:110px}
.blog-page .blog-prose p{margin:0 0 1.15rem}
.blog-page .blog-prose a{text-decoration:underline;text-underline-offset:.15em}
.blog-page .blog-prose li{margin:.55rem 0}
.blog-page .blog-toc{border-block:1px solid var(--color-line);padding:1.2rem 0;margin-bottom:2rem}
.blog-page .blog-toc ol{padding-left:1.4rem;margin-bottom:0}
.blog-page .blog-table{overflow-x:auto;margin:1.5rem 0 2rem;border:1px solid var(--color-line);border-radius:var(--radius-sm)}
.blog-page .blog-table table{border-collapse:collapse;width:100%;min-width:580px;font-size:.95rem;line-height:1.6}
.blog-page .blog-table caption{text-align:left;font-weight:700;padding:1rem}
.blog-page .blog-table th,.blog-page .blog-table td{padding:1rem;text-align:left;vertical-align:top;border-top:1px solid var(--color-line)}
.blog-page .blog-table thead{background:var(--color-surface)}
.blog-page .blog-prose blockquote{margin:1.5rem 0;padding:1.25rem;border-left:3px solid var(--color-blue);background:var(--color-surface)}
.blog-page .blog-prose blockquote p{margin:0}
.blog-page .blog-article-cta{margin-top:2rem}
@media(max-width:700px){.blog-page .blog-list{grid-template-columns:1fr}.blog-page .blog-prose{font-size:1rem}.blog-page .blog-article-header h1{font-size:clamp(2rem,8vw,2.8rem)}.blog-page .blog-breadcrumb{font-size:.85rem}}
