/* Article detail readability fixes */
.hero-section__article-preview {
  background: #ffffff;
  color: #1f2937;
  border: 1px solid #e5e7eb;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
}

.hero-section__article-preview .section-content,
.hero-section__article-preview p,
#articleBody,
#articleBody p {
  color: #1f2937;
}

.hero-section__meta,
.hero-section__date,
.hero-section__read-time {
  color: #4b5563;
}

#articleAttachments,
#articleAttachments *,
#articleAttachments a {
  color: #1f2937;
}

.hero-section__article-preview h1,
.hero-section__article-preview h2,
.hero-section__article-preview h3,
.hero-section__article-preview strong {
  color: #111827;
}

/* Safari / cross-browser safety fixes */

.navigation-wrapper,
.footer-wrapper {
  display: block;
}

.nml-article-card__image-wrap {
  position: relative;
  display: block;
  height: 220px;
}

.nml-article-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* fallback-ish layout safety */
@supports not (aspect-ratio: 16 / 9) {
  .nml-article-card__image-wrap {
    height: 220px;
  }
}

/* Prevent giant logos/images from blowing up layouts */
img {
  max-width: 100%;
  height: auto;
}

/* Make dialog less catastrophic if browser support is odd */
dialog {
  max-width: min(92vw, 720px);
  border: none;
  border-radius: 16px;
}

dialog::backdrop {
  background: rgba(0, 0, 0, 0.45);
}
