  /* Only the new /format/ listings; existing section, tag and Opinion pages stay unchanged. */
.ctx-format-archive__banner { background: #005b8a; color: #fff; padding: 28px 0; }
.ctx-format-archive__banner h1 { margin: 0; color: #fff; font-size: 24px; line-height: 1.35; font-weight: 700; }
.ctx-format-archive__inner { padding-top: 30px; padding-bottom: 48px; }
.ctx-format-archive__filter { display: grid; grid-template-columns: minmax(0, 1fr) 200px; gap: 20px; margin: 0; padding-bottom: 30px; border-bottom: 1px solid #ddd; }
.ctx-format-archive__filter select { box-sizing: border-box; width: 100%; min-width: 0; height: 56px; padding: 12px 16px; font: inherit; color: #111; background-color: #eee; border: 1px solid #ccc; border-radius: 0; }
.ctx-format-archive__filter button { min-height: 56px; background: #004a7c; color: #fff; border: 0; border-radius: 2px; font: inherit; font-weight: 700; cursor: pointer; }
.ctx-format-archive__filter button:hover { background: #006daa; }
.ctx-format-archive__filter :focus-visible { outline: 2px solid #111; outline-offset: 3px; }
.ctx-format-archive__count { margin: 0 0 30px; padding: 30px 0; border-bottom: 1px solid #ddd; font-weight: 600; }
.ctx-format-card { display: grid; grid-template-columns: minmax(0, 40%) minmax(0, 1fr); gap: 22px; margin-bottom: 30px; padding-bottom: 30px; border-bottom: 1px solid #ddd; }
.ctx-format-card--no-image { grid-template-columns: 1fr; }
.ctx-format-card__image { display: block; align-self: start; border: 0; }
.ctx-format-card__image img { width: 100%; height: auto; aspect-ratio: 100 / 58; object-fit: cover; display: block; }
.ctx-format-card__topic, .ctx-format-card__topic:visited { display: inline-block; background: #004a7c; color: #fff; padding: 5px 12px; margin-bottom: 12px; border-radius: 5px; font-size: 12px; font-weight: 700; text-transform: uppercase; text-decoration: none; }
.ctx-format-card__title { margin: 0 0 14px; font-size: 23px; line-height: 1.3; font-weight: 400; }
.ctx-format-card__title a, .ctx-format-card__title a:visited { color: #111; text-decoration: none; border: 0; }
.ctx-format-card__title a:hover, .ctx-format-card__title a:focus-visible { text-decoration: underline; }
.ctx-format-card__teaser { font-size: 18px; line-height: 1.5; margin-bottom: 12px; }
.ctx-format-card__teaser p { margin: 0; }
.ctx-format-card__authors { margin: 0 0 8px; }
.ctx-format-card__authors a, .ctx-format-card__authors a:visited { color: inherit; text-decoration: underline; }
.ctx-format-card__date { font-size: 14px; color: #6b7075; margin: 0; }
.ctx-format-archive__pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.ctx-format-archive__pagination .page-numbers { display: inline-block; padding: 8px 12px; color: #004a7c; border: 1px solid #ccc; text-decoration: none; }
.ctx-format-archive__pagination .current { color: #fff; background: #004a7c; border-color: #004a7c; }
@media (max-width: 639px) {
  .ctx-format-archive__filter { grid-template-columns: minmax(0, 1fr) 100px; gap: 12px; }
  .ctx-format-card { grid-template-columns: 1fr; }
  .ctx-format-card__title { font-size: 22px; }
}
