.blog-shell { max-width: 880px; }
.blog-header, .blog-article { margin: 2.5rem auto; max-width: 760px; }
.blog-header h1, .blog-article h1 { font-size: clamp(2rem, 6vw, 3.5rem); line-height: 1.1; margin: .4rem 0 1rem; }
.blog-list { display: grid; gap: 1rem; margin: 2rem auto; max-width: 760px; }
.blog-card { background: rgba(15, 23, 42, .72); border: 1px solid rgba(148, 163, 184, .24); border-radius: 1rem; padding: 1.4rem; }
.blog-card h2 { font-size: 1.35rem; margin: .35rem 0 .6rem; }
.blog-card h2 a { color: inherit; text-decoration: none; }
.blog-card h2 a:hover, .blog-card h2 a:focus-visible { text-decoration: underline; }
.blog-meta { color: #94a3b8; font-size: .9rem; margin: 0; }
.blog-article { font-size: 1.05rem; line-height: 1.75; }
.blog-article h2 { font-size: 1.55rem; line-height: 1.25; margin: 2.2rem 0 .6rem; }
.blog-article h3 { font-size: 1.2rem; margin: 1.7rem 0 .4rem; }
.blog-article ul { padding-left: 1.4rem; }
.blog-disclaimer { border-left: 3px solid #38bdf8; color: #cbd5e1; font-size: .95rem; margin: 2.5rem 0 1.5rem; padding-left: 1rem; }
@media (max-width: 640px) { .blog-header, .blog-article { margin: 1.6rem auto; } .blog-card { padding: 1.15rem; } }
