/* Reading cards use one editorial rhythm on the news index and the home feed. */
.news-index-featured {
  border-radius: 1.1rem !important;
  background: linear-gradient(140deg, #103448, #173f43) !important;
  box-shadow: 0 12px 34px rgba(16, 52, 72, .16);
  text-align: center;
}
.news-index-featured .news-headline-featured,
.news-home-lead .news-headline-featured {
  max-width: 26ch;
  margin-inline: auto;
  text-align: center;
  text-wrap: balance;
}
.news-home-lead-meta { text-align: left; }
.news-home-lead-meta small {
  margin-left: auto;
  text-align: right;
  white-space: nowrap;
}
.news-index-featured .news-headline a,
.news-home-lead .news-headline a {
  text-decoration: none;
}
.news-index-featured .news-headline a:hover,
.news-home-lead .news-headline a:hover {
  text-decoration: underline;
  text-decoration-thickness: 1px;
}
.news-index-featured > p:not(:first-child),
.news-home-lead .lead,
.news-index-card .news-card-summary,
.news-home-card .card-body > p {
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  line-height: 1.55;
}
.news-index-featured .news-featured-cta,
.news-home-lead .btn-light {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  width: auto;
  min-height: 44px;
  padding: .65rem 1.1rem;
  border-radius: 999px;
  font-weight: 700;
  box-shadow: 0 3px 12px rgba(0, 0, 0, .12);
}
.news-index-featured .news-featured-time {
  display: block;
  margin-top: .65rem;
  font-size: .82rem;
  opacity: .8;
}
.news-index-card,
.news-home-card {
  border: 1px solid #d9e4dc;
  border-radius: 1rem;
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease;
}
.news-index-card:hover,
.news-home-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 26px rgba(16, 52, 72, .12) !important;
}
.news-index-card .news-headline-card,
.news-home-card .news-headline-card {
  text-align: center;
  text-wrap: balance;
}
.news-index-card .news-card-cta {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: .55rem;
  width: fit-content;
  margin-inline: auto;
  padding: .42rem .85rem;
  border: 1px solid #b8d0cc;
  border-radius: 999px;
  color: #115b61;
  font-size: .91rem;
  font-weight: 700;
  line-height: 1.2;
}
.news-index-card:hover .news-card-cta {
  border-color: #115b61;
  background: #edf6f2;
}
.community-index-card .news-card-cta { text-decoration: none; }
.community-index-card .badge { white-space: normal; text-align: left; }
.community-card-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .35rem 1rem;
  padding-top: .35rem;
  border-top: 1px solid #e4ece7;
  font-size: .88rem;
  text-align: center;
}
.community-card-links a { color: #115b61; }
.news-filter-panel { text-align: center; }
.news-filter-panel summary {
  display: inline-block;
  list-style: none;
  cursor: pointer;
  padding: .45rem .85rem;
  border: 1px solid #b8d0cc;
  border-radius: 999px;
  color: #115b61;
  font-weight: 700;
  font-size: .9rem;
}
.news-filter-panel summary::-webkit-details-marker { display: none; }
.news-filter-panel summary::before { content: '⌕'; margin-right: .4rem; font-size: 1.1rem; }
.news-filter-panel[open] summary { margin-bottom: .75rem; }
.news-filter-form {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .55rem;
  max-width: 48rem;
  margin-inline: auto;
}
.news-filter-form .form-control { flex: 1 1 13rem; }
.news-filter-form .form-select { flex: 1 1 10rem; }
.news-filter-form .btn { flex: 0 0 auto; }
.news-week-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .35rem;
  max-width: 43rem;
  margin-inline: auto;
}
.news-week-day {
  display: flex;
  flex: 0 0 4.35rem;
  min-height: 3.7rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid #0b7973;
  border-radius: .8rem;
  color: #075e58;
  text-decoration: none;
  font-size: .82rem;
  font-weight: 800;
  line-height: 1.1;
}
.news-week-day small { font-size: .72rem; font-weight: 600; margin-top: .25rem; }
.news-week-day:hover, .news-week-day:focus-visible { background: #e9f4ef; color: #064b49; }
.news-week-day.is-current { background: #003d4a; color: #fff; border-color: #003d4a; }
.news-search-pager { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .65rem; }
@media (max-width: 575px) {
  .news-index-featured .news-headline-featured,
  .news-home-lead .news-headline-featured { font-size: clamp(1.55rem, 6.3vw, 1.9rem); line-height: 1.18; }
  .news-index-featured .news-featured-cta,
  .news-home-lead .btn-light { max-width: 100%; }
  .news-filter-form .form-control,
  .news-filter-form .form-select,
  .news-filter-form .btn { flex: 1 1 100%; }
  .news-week-nav { gap: .18rem; }
  .news-week-day { min-height: 3.3rem; border-radius: .55rem; font-size: .7rem; }
  .news-week-day small { font-size: .64rem; }
}
@media (prefers-reduced-motion: reduce) {
  .news-index-card,
  .news-home-card { transition: none; }
}
