.blog-content, .blog-page-2-content { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.blog-card { --link-color: #000; --link-hover-color: #000; --link-decoration: none; display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #e5e7eb; border-radius: 16px; background: #fff; color: #000; text-decoration: none; }
.blog-card__photo { display: block; overflow: hidden; background: #f3f4f6; }
.blog-card__image { display: block; width: 100%; height: 230px; object-fit: cover; }
.blog-card__body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 24px; }
.blog-card__date { color: #6b7280; font-size: 14px; line-height: 1.5; }
.blog-card__title { margin: 12px 0 24px; color: #000; text-decoration: none; font-size: var(--mobile-heading-font-size,21px); line-height: 1.35; font-weight: 600; }
.blog-card__link { display: inline-flex; align-items: center; margin-top: auto; color: #d72027; font-size: 15px; font-weight: 600; text-decoration: none; }
.blog-card:hover { color: #000; text-decoration: none; }
.blog-card:hover .blog-card__link { text-decoration: underline; }
.blog-card:focus-visible { outline: 2px solid #d72027; outline-offset: 4px; }
@media (max-width: 1000px) { .blog-content, .blog-page-2-content { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; } }
@media (max-width: 600px) { .blog-content, .blog-page-2-content { grid-template-columns: minmax(0, 1fr); gap: 20px; } .blog-card__image { height: 220px; } .blog-card__body { padding: 20px; } .blog-card__title { font-size: var(--mobile-heading-font-size,20px); } }

.blog-card__link svg { flex-shrink: 0; margin-left: 10px; }

/* Shared editorial metadata and stable topic chips. */
.blog-tags { display: flex; flex-wrap: wrap; align-items: flex-start; align-content: flex-start; list-style: none; margin: 0 -6px 18px 0; padding: 0; }
.blog-tags__item { display: block; align-self: flex-start; max-width: 100%; margin: 0 6px 6px 0; padding: 0; color: #41309b; font-size: 12px; line-height: 2.3; font-weight: 500; }
.blog-tags__label { padding: 5px 11px; border-radius: 12px; background: #f0edf8; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.article-meta { margin: 0 0 28px; }
.article-meta__line { display: flex; flex-wrap: wrap; margin: 0 0 12px; color: #656575; font-size: 14px; line-height: 1.6; }
.article-meta__line span { margin-right: 24px; margin-bottom: 6px; }
.article-meta .blog-tags { margin-bottom: 0; }
.article-practice { margin: 32px 0 0; padding: 24px; border: 1px solid #e5e7eb; border-radius: 16px; background: #f8f7fb; }
.article-practice__title { margin: 0 0 16px; font-size: var(--mobile-heading-font-size,24px); line-height: 1.35; color: #000; }
.article-practice__list { padding-left: 22px; margin: 0 0 18px; }
.article-practice__list li { margin-bottom: 12px; }
.article-figure { margin: 0 0 24px; }
.article-figure img { display: block; width: 100%; max-width: 700px; height: auto; border-radius: 12px; }
.article-figure figcaption { margin-top: 8px; color: #656575; font-size: 14px; }
.blog-pagination { display: flex; justify-content: center; margin: 32px 0; }
.blog-pagination__link, .blog-pagination__current { --link-color: #41309b; --link-decoration: none; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin: 0 5px; border: 1px solid #e5e7eb; border-radius: 10px; }
.blog-pagination__current { color: #fff; background: #41309b; border-color: #41309b; }
@media (max-width: 600px) { .article-meta__line { display: block; } .article-meta__line span { display: block; margin-right: 0; } .article-practice { padding: 20px; } .article-practice__title { font-size: var(--mobile-heading-font-size,21px); } }

@media(max-width:480px){
.blog-pagination{margin:16px 0}
.blog-pagination__link,.blog-pagination__current{box-sizing:border-box;width:32px;height:32px;margin:0 3px;border-radius:8px;font-size:12px;line-height:1}
.blog-content,.blog-page-2-content{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-bottom:0}
.blog-card{--mobile-heading-font-size:14px;--h2-font-size:14px;border-radius:12px}
.blog-card__image{height:104px}
.blog-card__body{padding:12px;overflow-wrap:break-word}
.blog-card__date{font-size:11px;line-height:1.35}
.blog-card__title{max-width:100%;min-width:0;--mobile-heading-font-size:14px;--h2-font-size:14px;line-height:1.3;margin:8px 0 12px}
.blog-card__link{font-size:12px;line-height:1.3}
.blog-card__link svg{width:16px;height:16px;margin-left:5px}
.blog-card .blog-tags{margin:0 -4px 10px 0}
.blog-card .blog-tags__item{max-width:100%;box-sizing:border-box;font-size:10px;line-height:1.9;margin:0 4px 4px 0}
.blog-card .blog-tags__label{padding:3px 7px;border-radius:8px}
}
