.news-section { padding: 4rem 0 6rem; }
.news-category-filter { display: flex; flex-wrap: wrap; gap: .55rem; margin-bottom: 2rem; }
.news-category-filter button, .news-category-filter a { background: #fff; border: 1px solid var(--aal-line); color: var(--aal-ink); cursor: pointer; font: inherit; font-size: .84rem; font-weight: 700; padding: .55rem .85rem; text-decoration: none; }
.news-category-filter button:hover, .news-category-filter button.is-active, .news-category-filter a:hover { background: var(--aal-primary); border-color: var(--aal-primary); color: #fff; text-decoration: none; }
.news-category-filter button:focus-visible, .news-category-filter a:focus-visible { outline: 3px solid var(--aal-gold); outline-offset: 2px; }
.news-category-count { align-items: center; background: rgba(20, 36, 58, .1); border-radius: 999px; display: inline-flex; font-size: .75rem; height: 1.45rem; justify-content: center; margin-left: .3rem; min-width: 1.45rem; padding: 0 .3rem; }
.news-category-filter button:hover .news-category-count, .news-category-filter button.is-active .news-category-count, .news-category-filter a:hover .news-category-count { background: rgba(255, 255, 255, .22); }
.news-grid { display: grid; gap: 1.25rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.news-card { background: #fff; border: 1px solid var(--aal-line); display: flex; flex-direction: column; min-width: 0; }
.news-card-image { aspect-ratio: 16 / 9; object-fit: cover; width: 100%; }
.news-card-body { display: flex; flex: 1; flex-direction: column; padding: 1.35rem; }
.news-card-meta { align-items: center; display: flex; flex-wrap: wrap; gap: .45rem; }
.news-card-new { align-items: center; background: #fff0f1; border-radius: 999px; color: var(--aal-primary); display: inline-flex; font-size: .68rem; font-weight: 800; gap: .3rem; letter-spacing: .04em; padding: .16rem .48rem; text-transform: uppercase; }
.news-card-new span { background: currentColor; border-radius: 50%; height: .42rem; width: .42rem; }
.news-card time { color: var(--aal-muted); font-size: .8rem; margin-top: .85rem; }
.news-card h3 { font-family: Georgia, serif; font-size: 1.42rem; line-height: 1.15; margin: .65rem 0; }
.news-card p { color: var(--aal-muted); font-size: .92rem; margin: 0; }
.news-card h3 a { color: inherit; text-decoration: none; }
.news-card h3 a:hover { color: var(--aal-primary); }
.news-card-text { color: var(--aal-muted); font-size: .92rem; margin-top: .85rem; overflow-wrap: anywhere; }
.news-card-text > :first-child { margin-top: 0; }
.news-card-text > :last-child { margin-bottom: 0; }
.news-card-text p { margin: 0 0 .7rem; }
.news-card-text a { color: var(--aal-primary); font-weight: 700; text-decoration: underline; }
.news-card-text ul, .news-card-text ol { margin: 0 0 .7rem; padding-left: 1.25rem; }
.news-card-text li + li { margin-top: .2rem; }
.news-card-text img { height: auto; margin: .7rem 0; max-width: 100%; }
.news-card-detail { align-self: flex-end; color: var(--aal-primary); font-size: .84rem; font-weight: 750; margin-top: auto; padding-top: 1.2rem; text-decoration: none; }
.news-card-detail:hover { color: var(--aal-navy); text-decoration: underline; }
.news-card-detail:focus-visible { outline: 3px solid var(--aal-primary); outline-offset: 3px; }
.news-list-heading { align-items: end; display: flex; justify-content: space-between; margin-bottom: 1.8rem; }
.news-list-heading p:last-child { color: var(--aal-muted); font-size: .9rem; margin: 0; }
.news-more { display: flex; justify-content: center; margin-top: 2.25rem; }
.news-more button { border: 0; cursor: pointer; font: inherit; }
.news-more button:disabled { cursor: wait; opacity: .65; }
.news-detail { max-width: 900px; padding-bottom: 6rem; padding-top: 3rem; }
.news-back { color: var(--aal-primary); display: inline-block; font-weight: 700; margin-bottom: 1.5rem; }
.news-detail-image { margin-bottom: 1.6rem; max-height: 560px; object-fit: contain; width: 100%; }
.news-detail time { color: var(--aal-muted); display: block; font-size: .9rem; margin-bottom: 1.4rem; }
.news-detail-text { color: var(--aal-ink); font-size: 1.03rem; line-height: 1.7; overflow-wrap: anywhere; }
.news-detail-text > :first-child { margin-top: 0; }
.news-detail-text > :last-child { margin-bottom: 0; }
.news-detail-text a { color: var(--aal-primary); font-weight: 700; text-decoration: underline; }
.news-detail-text img { height: auto; margin: 1.25rem auto; max-width: 100%; }
.news-detail-text h2, .news-detail-text h3 { font-family: Georgia, serif; line-height: 1.15; margin: 1.75rem 0 .75rem; }
.news-detail-text li + li { margin-top: .35rem; }
@media (max-width: 800px) { .news-section { padding: 3.5rem 0; } .news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .news-grid { grid-template-columns: 1fr; } }
