.block-posts-list .posts-items { display: grid; gap: 24px; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.block-posts-list.variant-list .posts-items { grid-template-columns: 1fr; }
.posts-item { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--color-line, #e5e7eb); border-radius: var(--radius, 8px); background: var(--color-bg, #fff); }
.variant-list .posts-item { flex-direction: row; }
.posts-item__image { display: block; }
.posts-item__image img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.variant-list .posts-item__image { flex: 0 0 34%; }
.variant-list .posts-item__image img { height: 100%; }
.posts-item__body { display: flex; flex-direction: column; flex: 1 1 auto; padding: 18px 20px 20px; }
.posts-item__body time, .posts-meta { color: var(--color-muted, #6b7280); font-size: .9em; }
.posts-item__body h3 { margin: 6px 0 10px; }
.posts-item__body h3 a { color: inherit; text-decoration: none; }
.posts-item__body p { margin: 0 0 14px; }
.posts-more { margin-top: auto; font-weight: 700; }
.posts-empty { color: var(--color-muted, #6b7280); }
.block-posts-teaser .posts-teaser__image img { display: block; width: auto; max-width: 100%; height: auto; border-radius: var(--radius, 0); }
.block-posts-teaser .posts-teaser { display: grid; gap: 24px; align-items: center; padding: 24px; border: 1px solid var(--color-line, #e5e7eb); border-radius: var(--radius, 8px); background: var(--color-bg-alt, #f5f7f9); }
.block-posts-teaser.has-image .posts-teaser { grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); }
.block-posts-teaser .posts-teaser h2 { margin: 4px 0 10px; }
.block-posts-teaser .posts-teaser h2 a { color: inherit; text-decoration: none; }
.block-posts-teaser .posts-teaser p { margin: 0 0 14px; }
.posts-teaser__area { margin: 0; color: var(--color-accent, inherit); font-size: .85em; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.block-posts-header .posts-meta { margin: 0 0 12px; }
.block-posts-header .posts-lead { margin: 0 0 20px; font-size: 1.15em; }
.block-posts-header .posts-header__image { margin: 32px 0 28px; }
.block-posts-header .posts-header__image img { display: block; width: 100%; height: auto; border-radius: var(--radius, 0); }
.block-posts-home { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: stretch; margin: 0 0 48px; }
.block-posts-home .posts-home__post > .block, .block-posts-home .posts-home__text > .block:first-child { margin-top: 0; }
.block-posts-home .posts-home__post > .block:last-child, .block-posts-home .posts-home__text > .block:last-child { margin-bottom: 0; }
.block-posts-home .posts-teaser__image img { width: 100%; }
.posts-home__text { display: flex; flex-direction: column; }
.block-posts-home .posts-home__text .prose { max-width: none; }
.block-posts-home .posts-home__text .prose p + p { margin-top: 24px; }
.block-posts-home .posts-home__text .block-separator { display: none; }
.block-posts-home .posts-home__text .block-image { position: relative; flex: 1 1 auto; min-height: 300px; margin: 32px 0 0; }
.block-posts-home .posts-home__text .block-image .wrap, .block-posts-home .posts-home__text .block-image picture { position: absolute; inset: 0; display: block; max-width: none; }
.block-posts-home .posts-home__text .block-image img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 900px) {
    .block-posts-home { grid-template-columns: 1fr; gap: 32px; }
    .block-posts-home .posts-home__text .block-image { min-height: 0; }
    .block-posts-home .posts-home__text .block-image .wrap, .block-posts-home .posts-home__text .block-image picture { position: static; }
    .block-posts-home .posts-home__text .block-image img { height: auto; }
}
@media (max-width: 700px) {
    .variant-list .posts-item { flex-direction: column; }
    .block-posts-teaser.has-image .posts-teaser { grid-template-columns: 1fr; }
}
