.news-event-index {
  max-width: 1200px;
  margin: 0 auto 4rem;
  color: #26364a;
}

.news-event-index [hidden] { display: none !important; }

.news-event-intro {
  margin: -0.25rem 0 2rem;
  color: #596a7c;
  text-align: center;
  font-size: 1.05rem;
}

.news-event-toolbar { max-width: 520px; margin: 0 0 2rem; }
.news-event-search-label { display: block; margin-bottom: 0.5rem; font-weight: 600; }
.news-event-search-wrap { position: relative; }
.news-event-search-icon { position: absolute; left: 1rem; top: 50%; width: 15px; height: 15px; transform: translateY(-60%); border: 2px solid #60758a; border-radius: 50%; }
.news-event-search-icon::after { content: ''; position: absolute; width: 7px; height: 2px; right: -6px; bottom: -3px; transform: rotate(45deg); background: #60758a; border-radius: 2px; }
.news-event-search {
  display: block;
  width: 100%;
  min-height: 48px;
  padding: 0.65rem 1rem 0.65rem 2.8rem;
  border: 1px solid #cbd7e3;
  border-radius: 10px;
  background: #fff;
  color: #26364a;
  font: inherit;
}
.news-event-search:focus { outline: 2px solid #26a9e0; outline-offset: 2px; border-color: #0038c6; }

.news-event-feature,
.news-event-card { overflow: hidden; background: #fff; border: 1px solid #e3eaf1; border-radius: 14px; }
.news-event-feature { margin-bottom: 2.5rem; }
.news-event-feature-link { display: flex; min-height: 300px; }
.news-event-index .news-event-feature-link,
.news-event-index .news-event-card-link { color: #26364a; text-decoration: none; }
.news-event-index .news-event-feature-link:hover,
.news-event-index .news-event-card-link:hover { color: #0038c6; text-decoration: none; }
.news-event-feature-image { width: 55%; flex: 0 0 55%; }
.news-event-image { display: block; overflow: hidden; background: #edf3f8; }
.news-event-index .news-event-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.news-event-feature-body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; justify-content: center; padding: 2rem 2.5rem; }
.news-event-badge { display: inline-block; margin-bottom: 1rem; padding: 0.25rem 0.8rem; border-radius: 20px; background: #e7f6fc; color: #005d86; font-size: 0.85rem; font-weight: 700; }
.news-event-feature-title { display: block; font-size: 1.55rem; font-weight: 700; line-height: 1.45; }
.news-event-read-more { display: block; margin-top: auto; padding-top: 1.25rem; color: #0038c6; font-size: 0.95rem; font-weight: 700; }
.news-event-read-more span { margin-left: 0.25rem; }

.news-event-list-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: 1.25rem; }
.news-event-list-heading h3 { margin: 0; color: #0038c6; font-size: 1.35rem; font-weight: 700; }
.news-event-grid-cell { display: flex; margin-bottom: 1.5rem; }
.news-event-card { display: flex; flex: 1; transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s; }
.news-event-card:hover,
.news-event-feature:hover { border-color: #a6d4eb; box-shadow: 0 10px 25px rgba(0, 56, 198, 0.08); }
.news-event-card:hover { transform: translateY(-3px); }
.news-event-card-link { display: flex; flex: 1; flex-direction: column; }
.news-event-card .news-event-image { aspect-ratio: 16 / 9; }
.news-event-card-body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 1.1rem 1.25rem 1.25rem; }
.news-event-card-title { display: block; font-size: 1.08rem; font-weight: 700; line-height: 1.5; }
.news-event-index a:focus-visible,
.news-event-more:focus-visible { outline: 3px solid #26a9e0; outline-offset: 3px; }
.news-event-empty { padding: 2.5rem 1rem; text-align: center; color: #667789; }
.news-event-more-wrap { margin-top: 0.75rem; text-align: center; }
.news-event-more { min-height: 48px; padding: 0.65rem 2rem; border: 1px solid #0038c6; border-radius: 24px; background: #fff; color: #0038c6; font: inherit; font-weight: 700; cursor: pointer; }
.news-event-more:hover { background: #0038c6; color: #fff; }

@media (max-width: 767.98px) {
  .news-event-index { margin-bottom: 2.5rem; }
  .news-event-intro { margin-bottom: 1.5rem; }
  .news-event-toolbar { margin-bottom: 1.5rem; }
  .news-event-feature-link { display: block; min-height: 0; }
  .news-event-feature-image { width: 100%; aspect-ratio: 16 / 9; }
  .news-event-feature-body { min-height: 0; padding: 1.25rem; }
  .news-event-feature-title { font-size: 1.2rem; }
  .news-event-feature { margin-bottom: 2rem; }
  .news-event-card-body { padding: 1rem 1.1rem 1.2rem; }
  .news-event-grid-cell { margin-bottom: 1rem; }
}
