.home-blog { background: #f4f7fb; }
.home-blog-track { display:flex; gap:24px; overflow-x:auto; contain: inline-size paint; scroll-snap-type:x mandatory; padding:4px 0 18px; scrollbar-width:none; -ms-overflow-style:none; }
.home-blog-track::-webkit-scrollbar { display:none; }
.home-blog-track > div { flex:0 0 calc((100% - 48px)/3); width:auto; scroll-snap-align:start; }
.blog-slider-controls { display:flex; gap:10px; justify-content:flex-end; margin-top:20px; }
@media(max-width:991.98px) { .home-blog-track > div { flex-basis:calc((100% - 24px)/2); } }
@media(max-width:575.98px) { .home-blog-track > div { flex-basis:88%; } }
.blog-card { height: 100%; display: flex; flex-direction: column; }
.blog-card-image { display: block; overflow: hidden; border-radius: 5px; aspect-ratio: 4 / 3; background: var(--pale); }
.blog-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease-out; }
.blog-card-content { display: flex; flex-direction: column; flex: 1; padding-top: 22px; }
.blog-topic { color: var(--blue); font-size: 11px; font-weight: 500; margin-bottom: 13px; }
.blog-card h3 { font-size: 22px; line-height: 1.45; letter-spacing: -.025em; margin-bottom: 14px; }
.blog-card p { font-size: 12px; line-height: 1.9; margin-bottom: 22px; }
.blog-card .text-link { margin-top: auto; align-self: flex-start; }
.home-blog .section-heading { display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 24px; }
.home-blog .section-heading p { margin: 20px 0 0; max-width: 52ch; }
.inner-page:has(.article-section) .inner-hero h1 { max-width: 24ch; font-size: clamp(32px, 3.4vw, 48px); }
.article-cover { overflow: hidden; border-radius: 5px; background: var(--pale); }
.article-cover img { width: 100%; max-height: 440px; object-fit: cover; }
.article-body { max-width: 72ch; padding-top: 32px; }
.article-body .article-lead { color: var(--navy); font-size: 17px; line-height: 1.8; }
.article-body h2 { font-size: 27px; line-height: 1.4; margin: 40px 0 19px; }
.article-body p { font-size: 14px; line-height: 1.95; margin-bottom: 20px; }
.article-source { display: flex; gap: 20px; padding: 26px; background: var(--pale); margin-top: 35px; border-radius: 5px; }
.article-source > i { font-size: 28px; color: var(--blue); }
.article-source strong { color: var(--navy); font-size: 13px; }
.article-source p { font-size: 12px; margin: 9px 0 16px; }
.blog-related { padding-top: 65px; margin-top: 65px; border-top: 1px solid var(--line); }
.blog-related .catalog-toolbar h2, .blog-list .catalog-toolbar h2 { font-size: 26px; }
@media (hover: hover) and (pointer: fine) { .blog-card-image:hover img { transform: scale(1.025); } }
@media (max-width: 991.98px) { .article-section .row.g-5 { --bs-gutter-x: 32px; } }
@media (max-width: 767.98px) {
    .blog-card h3 { font-size: 21px; }
    .blog-card-content { padding-top: 18px; }
    .article-body .article-lead { font-size: 16px; }
    .article-body h2 { font-size: 24px; margin-top: 30px; }
    .article-body p { font-size: 13px; }
    .article-source { padding: 20px; gap: 13px; }
    .blog-related { margin-top: 45px; padding-top: 45px; }
}
