.news-cards-page .materials-grid,
.news-cards-page .events-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 390px), 1fr));
  gap: 16px;
}
.news-cards-page .preview-card {
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr);
  align-items: start;
  gap: 18px;
  padding: 20px;
  height: 100%;
}
.news-cards-page .preview-media {
  width: 104px;
  height: 104px;
  min-height: 0;
  border: 1px solid rgba(31, 107, 58, .12);
  border-radius: 10px;
  overflow: hidden;
}
.news-cards-page .preview-media img { width: 100%; height: 100%; object-fit: cover; }
.news-cards-page .preview-media-overlay { padding: 8px; }
.news-cards-page .preview-kicker { display: none; }
.news-cards-page .preview-emoji { font-size: 24px; }
.news-cards-page .preview-body { padding: 0; min-width: 0; }
.news-cards-page .preview-title { margin-top: 0; font-size: 1.1rem; overflow-wrap: anywhere; }
.news-cards-page .preview-excerpt { -webkit-line-clamp: 3; }
.news-cards-page .preview-meta { gap: 8px; flex-wrap: wrap; }
.article-copy::after { content: ''; display: block; clear: both; }
.article-photos { float: left; width: 180px; margin: 4px 24px 16px 0; }
.article-photos[hidden] { display: none; }
.article-photos .article-cover[hidden] { display: none; }
.article-photos .article-cover[hidden] { display: none; }
.article-photos .article-cover,
.article-photo {
  display: block;
  width: 180px;
  height: 180px;
  min-height: 0;
  margin: 0 0 12px;
  border: 1px solid #dce8df;
  border-radius: 10px;
  overflow: hidden;
  background: #eff5f1;
}
.article-photos img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.article-photos a:focus-visible { outline: 3px solid #1f6b3a; outline-offset: 3px; }
#item-extra { clear: both; padding-top: 12px; overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .news-cards-page .preview-card { grid-template-columns: 76px minmax(0, 1fr); gap: 12px; padding: 14px; }
  .news-cards-page .preview-media { width: 76px; height: 76px; }
  .news-cards-page .preview-title { font-size: 1rem; }
  .article-photos { width: 104px; margin: 4px 16px 12px 0; }
  .article-photos .article-cover, .article-photo { width: 104px; height: 104px; }
}
