/* News rich text: keep the approved article card and improve its contents. */
.news-detail-page .nd-body > :first-child { margin-top: 0; }
.news-detail-page .nd-body > :last-child { margin-bottom: 0; }
.news-detail-page .nd-body hr {
  height: 0;
  border: 0;
  border-top: 1px solid var(--border);
  margin: 36px 0;
}
.news-detail-page .nd-body h2 { font-size: 22px; line-height: 1.65; margin: 40px 0 18px; }
.news-detail-page .nd-body hr + h2 { margin-top: 28px; }
.news-detail-page .nd-body h3 { font-size: 19px; line-height: 1.75; }
.news-detail-page .nd-body ul, .news-detail-page .nd-body ol { padding-left: 1.4em; margin: 18px 0 28px; }
.news-detail-page .nd-body ul { list-style: disc outside; }
.news-detail-page .nd-body ol { list-style: decimal outside; }
.news-detail-page .nd-body li { padding-left: .2em; margin: 10px 0; }
.news-detail-page .nd-body li > p { margin: 0; }
.news-detail-page .nd-body blockquote { margin: 24px 0 32px; }
.news-detail-page .nd-body blockquote > :last-child { margin-bottom: 0; }
.news-detail-page .nd-body figure + figure { margin-top: 32px; }
.news-detail-page .nd-body .nd-image-credit { font-size: 12px; line-height: 1.8; color: var(--muted-foreground); margin-top: -26px; text-align: center; }
.news-detail-page .nd-body .nd-event-detail { display: grid; grid-template-columns: 5.2em minmax(0, 1fr); column-gap: 10px; margin: 0 0 12px; }
.news-detail-page .nd-body .nd-event-detail strong { font-weight: 600; }
.news-detail-page .nd-body a { text-decoration-thickness: 1px; line-break: strict; }
.news-detail-page .nd-title, .news-detail-page .nd-body, .news-detail-page .nd-neighbor h3 { line-break: strict; }
@media (max-width: 600px) {
  .news-detail-page .nd-body h2 { font-size: 19px; margin: 32px 0 16px; }
  .news-detail-page .nd-body h3 { font-size: 17px; }
  .news-detail-page .nd-body hr { margin: 28px 0; }
  .news-detail-page .nd-body ul, .news-detail-page .nd-body ol { padding-left: 1.3em; }
  .news-detail-page .nd-body li { margin: 12px 0; padding-left: .15em; }
  .news-detail-page .nd-body blockquote { padding: 18px 16px; margin: 24px 0 28px; }
  .news-detail-page .nd-body .nd-event-detail { display: block; margin-bottom: 16px; }
  .news-detail-page .nd-body .nd-event-detail strong { display: block; margin-bottom: 2px; }
  .news-detail-page .nd-body .nd-image-credit { margin-top: -16px; }
  .news-detail-page .nd-body figure + figure { margin-top: 28px; }
}

.news-detail-page .nd-body li { padding-inline-end: .5em; text-wrap: pretty; }
.news-detail-page .nd-body .nd-event-fragment { display: inline-block; white-space: nowrap; }

/* Similar visual scale, natural image ratios, and no padded display frame. */
.news-detail-page .nd-body .nd-media {
  width: 100%;
  max-width: 720px;
  margin-inline: auto;
}
.news-detail-page .nd-body .nd-media-visual {
  display: block;
  width: 100%;
  max-width: min(var(--news-image-max-width, 720px), var(--news-image-fluid-limit, 100%));
  margin-inline: auto;
  line-height: 0;
}
.news-detail-page .nd-body .nd-media-visual img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: none;
  margin: 0;
}
.news-detail-page .nd-body .nd-media-link {
  display: block;
  color: var(--brand-red);
  text-decoration: none;
}
.news-detail-page .nd-body .nd-media-action {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 16px 12px;
  font-size: 14px;
  line-height: 1.8;
  text-decoration: underline;
  text-underline-offset: 5px;
}
.news-detail-page .nd-body .nd-media-action > span { flex: 0 0 auto; }
.news-detail-page .nd-body .nd-media-link:hover .nd-media-action { text-decoration-thickness: 2px; }
.news-detail-page .nd-body .nd-media-link:focus-visible { outline: 2px solid var(--brand-red); outline-offset: 4px; }
@media (max-width: 600px) {
  .news-detail-page .nd-body .nd-media-action { gap: 10px; font-size: 13px; }
}
