/* Shared compact news cards: original images, short excerpts, stable reading order. */
/* SunEditor media alignment also applies to saved article content. */
#content .se-image-container { display: flow-root; }
#content .se-image-container > figure { max-width: 100%; margin: 0; }
#content .se-image-container.__se__float-center > figure { margin-inline: auto; }
#content .se-image-container.__se__float-center { float: none; margin-inline: auto; }
#content .se-image-container.__se__float-center > figure > img,
#content .se-image-container.__se__float-center > figure > a > img {
    display: block;
    margin-inline: auto;
}
#content .se-image-container.__se__float-right > figure { margin-left: auto; }
#content .se-image-container.__se__float-left > figure { margin-right: auto; }
.civic-news-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.civic-news-grid--home { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.civic-news-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid var(--civic-border); border-radius: 12px; background: #fff; box-shadow: 0 8px 24px rgba(15,62,108,.045); }
.civic-news-card__image { display: block; overflow: hidden; aspect-ratio: 16 / 9; background: var(--civic-ice-100); }
.civic-news-card__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.civic-news-card__body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0; padding: 22px; }
.civic-news-card__date { color: var(--civic-muted); font-size: 13px; line-height: 1.5; }
.civic-news-card__department { display: block; overflow: hidden; max-width: 100%; color: var(--civic-muted); font-size: 12px; line-height: 1.5; text-overflow: ellipsis; white-space: nowrap; }
.civic-news-card__department:hover { color: var(--civic-blue-600); text-decoration: underline; }
.civic-news-card .civic-news-card__title, #content .civic-news-card .civic-news-card__title { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; margin: 0; font-family: "IBM Plex Sans", sans-serif; font-size: 21px; font-weight: 600; line-height: 1.35; letter-spacing: -.015em; text-transform: none; }
.civic-news-card__title a, #content .civic-news-card__title a { color: var(--civic-navy-800); }
.civic-news-card__title a:hover { color: var(--civic-blue-600); text-decoration: underline; text-underline-offset: 4px; }
.civic-news-card .civic-news-card__excerpt, #content .civic-news-card .civic-news-card__excerpt { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; margin: 0; color: var(--civic-muted); font-family: "IBM Plex Sans", sans-serif; font-size: 16px; font-style: normal; line-height: 1.6; text-align: left; }
.civic-news-card__more { display: inline-flex; min-height: 44px; align-items: center; justify-content: space-between; gap: 14px; margin-top: auto; padding-top: 6px; color: var(--civic-blue-600); font-size: 15px; font-weight: 600; line-height: 1.4; }
.civic-news-card__more:hover { color: var(--civic-navy-800); text-decoration: underline; text-underline-offset: 4px; }
.civic-news-card__more svg { flex: 0 0 auto; }
.civic-news-layout { display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 28px; align-items: start; }
.civic-news-main, .civic-news-sidebar { min-width: 0; }
.civic-news-toolbar { margin-bottom: 24px; }
.civic-news-filter { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 12px; margin: 0; }
.civic-news-filter__field { min-width: 0; }
.civic-news-filter label { display: block; margin: 0 0 8px; color: var(--civic-navy-800); font-size: 14px; font-weight: 600; }
.civic-news-filter select { width: 100%; max-width: 100%; min-height: 48px; border: 1px solid #bdcfe1; border-radius: 9px; background: #fff; color: var(--civic-ink); font-size: 15px; }
.civic-news-filter button { min-height: 48px; padding: 10px 16px; border: 1px solid var(--civic-border); border-radius: 9px !important; background: var(--civic-ice-100); color: var(--civic-navy-800); font: inherit; font-weight: 600; }
.civic-news-filter button:hover { background: var(--civic-navy-800); color: #fff; }
.civic-news-pagination { display: flex; justify-content: center; margin-top: 32px; }
.civic-news-pagination .pagination { flex-wrap: wrap; row-gap: 8px; }
.civic-news-sidebar > .civic-news-archive-link { display: flex; min-height: 48px; align-items: center; justify-content: center; margin-bottom: 24px; padding: 12px 16px; border: 1px solid var(--civic-navy-800); border-radius: 9px; background: var(--civic-navy-800); color: #fff; font-weight: 600; }
.civic-news-archive-link:hover { background: var(--civic-blue-600); }
.civic-news-grid .civic-empty { grid-column: 1 / -1; margin: 0; padding: 24px; color: var(--civic-muted); }
@media (max-width: 1099px) {
    .civic-news-layout { grid-template-columns: minmax(0, 1fr) 220px; gap: 22px; }
    .civic-news-card__body { padding: 18px; }
    .civic-news-card .civic-news-card__title, #content .civic-news-card .civic-news-card__title { font-size: 20px; }
}
@media (max-width: 991px) {
    .civic-news-layout { grid-template-columns: 1fr; gap: 40px; }
    .civic-news-grid--home { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .civic-news-sidebar { border-top: 1px solid var(--civic-border); padding-top: 28px; }
}
@media (max-width: 639px) {
    .civic-news-grid, .civic-news-grid--home { grid-template-columns: 1fr; gap: 20px; }
    .civic-news-card__body { padding: 20px; }
    .civic-news-filter { grid-template-columns: 1fr; gap: 10px; }
    .civic-news-filter button { justify-self: start; }
    .civic-news-filter select { font-size: 16px; }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
    .civic-news-card { transition: border-color .18s ease, box-shadow .18s ease; }
    .civic-news-card:hover { border-color: #93b7d8; box-shadow: 0 12px 28px rgba(15,62,108,.08); }
}

#content .article-editor-content figure.se-flex-component {
    clear: both;
    max-width: 100%;
    margin: 0;
    overflow-x: auto;
}
#content .article-editor-content figure.se-flex-component > table { width: 100%; }
#content .article-editor-content table.se-table-layout-fixed { table-layout: fixed; }
#content .article-editor-content :is(table, th, td) { border: 1px solid transparent; }
