.nxb-blog-listing {
    padding-block: clamp(45px, 6vw, 75px);
    color: var(--fox-ink, #252525);
    scroll-margin-top: 110px;
}
.nxb-blog-listing__inner { width: min(1350px, calc(100% - 48px)); margin-inline: auto; container: blog-listing / inline-size; }
.page-content-shell--with-sidebar .nxb-blog-listing { padding-block: 0; }
.page-content-shell--with-sidebar .nxb-blog-listing__inner { width: 100%; }
.nxb-blog-listing__heading { margin: 0 0 35px; font-size: clamp(1.8rem, 3vw, 2.6rem); }
.nxb-blog-listing__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
.nxb-blog-listing__card { display: flex; flex-direction: column; min-width: 0; background: #fff; box-shadow: 0 8px 28px rgb(0 0 0 / 7%); }
.nxb-blog-listing__media-link { display: block; color: inherit; text-decoration: none; }
.nxb-blog-listing__media { aspect-ratio: 3 / 2; overflow: hidden; }
.nxb-blog-listing__media img { width: 100%; height: 100%; object-fit: cover; }
.nxb-blog-listing__content { display: flex; flex-direction: column; flex: 1; align-items: flex-start; padding: clamp(22px, 3cqw, 30px); }
.nxb-blog-listing .nxb-blog-listing__card .nxb-blog-listing__title { text-align: left; margin: 0 0 14px; font-size: clamp(1.3rem, 2.6cqw, 1.8rem); line-height: 1.35; }
.nxb-blog-listing__title a { color: inherit; text-decoration: none; }
.nxb-blog-listing__title a:hover { text-decoration: underline; text-underline-offset: .18em; }
.nxb-blog-listing__date, .nxb-blog-listing__subtitle { margin: 0 0 14px; font-size: .85rem; line-height: 1.5; letter-spacing: .03em; color: #555; }
.nxb-blog-listing__link { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; margin-top: auto; padding: 10px 18px; border: 1px solid var(--fox-gold, #e2c18a); background: var(--fox-gold, #e2c18a); color: #111; text-decoration: none; font-weight: 600; }
.nxb-blog-listing__link:hover { background: #fff; color: #111; }
.nxb-blog-listing a:focus-visible { outline: 3px solid var(--fox-green, #455337); outline-offset: 4px; }
.nxb-blog-listing__pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 40px; }
.nxb-blog-listing__pagination a, .nxb-blog-listing__pagination span { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 8px 12px; }
.nxb-blog-listing__pagination a { border: 1px solid #d7d7d7; color: inherit; text-decoration: none; }
.nxb-blog-listing__pagination a[aria-current="page"] { background: var(--fox-green, #455337); color: #fff; }
.nxb-blog-listing__empty { margin: 0; padding-block: 20px; }
@container blog-listing (max-width: 64rem) { .nxb-blog-listing__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@container blog-listing (max-width: 38rem) { .nxb-blog-listing__grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 600px) { .nxb-blog-listing__inner { width: calc(100% - 32px); } }
