.news-tools {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) auto;
  align-items: end;
  gap: 32px;
  margin: 0 0 52px;
  padding: 0 0 30px;
  border-bottom: 1px solid #d8dde5;
}
.tools-label { display: block; margin-bottom: 10px; color: var(--muted); font-size: 10px; font-weight: 700; letter-spacing: 1.5px; }
.news-search { display: flex; align-items: center; max-width: 520px; min-height: 52px; padding: 0 17px; background: #fff; border: 1px solid #cdd4df; border-radius: 7px; color: var(--blue); box-shadow: 0 4px 18px rgb(18 38 67 / 5%); transition: border-color .2s ease, box-shadow .2s ease; }
.news-search:focus-within { border-color: var(--blue); box-shadow: 0 0 0 3px rgb(32 82 143 / 12%); }
.news-search > span { margin-right: 10px; font-size: 24px; line-height: 1; transform: rotate(-18deg); }
.news-search input { width: 100%; padding: 14px 0; border: 0; outline: 0; background: transparent; color: var(--navy); font: inherit; font-size: 14px; }
.news-search input::placeholder { color: #7e8998; }
.news-filters { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.news-filters button { min-height: 40px; padding: 9px 15px; border: 1px solid #cdd4df; border-radius: 999px; background: transparent; color: var(--navy); font: inherit; font-size: 12px; font-weight: 600; cursor: pointer; transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease; }
.news-filters button:hover { border-color: var(--blue); color: var(--blue); transform: translateY(-1px); }
.news-filters button.active { border-color: var(--navy); background: var(--navy); color: #fff; }
.news-card[href*="bezoek-coa-hilversum"] .news-image img { object-position: center 18%; }
.news-filters button:focus-visible, .news-search input:focus-visible { outline: 3px solid rgb(246 193 64 / 55%); outline-offset: 2px; }
.news-empty { margin-top: 28px; padding: 52px 25px; border: 1px dashed #bbc4d1; border-radius: 8px; text-align: center; }
.news-empty strong { font-family: Poppins, sans-serif; font-size: 24px; }
.news-empty p { margin: 8px 0 22px; color: var(--muted); }
.news-empty button { border: 0; background: none; color: var(--blue); font: inherit; font-weight: 700; cursor: pointer; }
.article-heading { margin: 30px 0 36px; padding: 54px 58px; background: var(--cream); border-left: 6px solid var(--yellow); border-radius: 5px; }
.article figure { height: auto !important; background: #edf0f4; text-align: center; }
.article figure img { display: block; width: 100%; height: auto !important; max-height: none; object-fit: contain !important; }
@media (max-width: 900px) {
  .news-tools { grid-template-columns: 1fr; gap: 20px; }
  .news-search { max-width: none; }
  .news-filters { justify-content: flex-start; }
}
@media (max-width: 720px) {
  .news-tools { margin-bottom: 38px; padding-bottom: 24px; }
  .news-filters { flex-wrap: nowrap; justify-content: flex-start; margin: 0 -23px; padding: 0 23px 5px; overflow-x: auto; scrollbar-width: none; }
  .news-filters::-webkit-scrollbar { display: none; }
  .news-filters button { flex: 0 0 auto; }
  .article-heading { margin: 24px 0 28px; padding: 35px 28px; }
}
