.blog-page { background: #edf2f5; color: #102b49; }
.blog-page .blog-header { position: static; background: #102b49; padding: 24px 0; }
.blog-header .container { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.blog-header a { color: #fff; text-decoration: none; }
.blog-header .blog-home { font-size: 14px; }
.blog-main { max-width: 1000px; margin: auto; padding: clamp(36px, 7vw, 80px) 24px 80px; }
.blog-main h1 { font-size: clamp(30px, 5vw, 52px); line-height: 1.12; letter-spacing: -.025em; text-transform: none; margin: 16px 0 24px; }
.blog-main .blog-date { color: #536879; font-size: 14px; }
.blog-main .blog-body { max-width: 760px; font-size: 18px; line-height: 1.8; margin-top: 38px; overflow-wrap: anywhere; }
.blog-body p { margin: 0 0 22px; }
.blog-body h2, .blog-body h3 { margin: 36px 0 18px; font-size: 28px; line-height: 1.3; }
.blog-body a, .blog-main .blog-back { color: #184e70; text-underline-offset: 4px; }
.blog-body li { margin: 0 0 12px 22px; }
.blog-body figure { margin: 30px 0; }
.blog-body img, .blog-cover { display: block; width: 100%; height: auto; max-height: 480px; object-fit: contain; border-radius: 8px; }
.blog-body figcaption { font-size: 14px; color: #536879; margin-top: 8px; }
.blog-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 36px; }
.blog-card { background: #fff; padding: 28px; border-radius: 10px; box-shadow: 0 8px 28px #102b4909; }
.blog-card h2 { font-size: 24px; line-height: 1.3; margin: 14px 0; }
.blog-card h2 a { color: #102b49; text-decoration: none; }
.blog-card h2 a:hover { text-decoration: underline; }
.blog-card p { color: #536879; line-height: 1.6; }
.blog-contact { margin-top: 52px; padding-top: 28px; border-top: 1px solid #ccd8df; }
.blog-contact a { color: #184e70; }
@media (max-width: 680px) { .blog-list { grid-template-columns: 1fr; } .blog-main { padding-inline: 20px; } .blog-card { padding: 24px; } }
