.article-media-section {
  margin-top: 44px;
  padding-top: 28px;
  border-top: 2px solid var(--ink);
}

.article-media-section > h2 { margin-top: 0; }
.article-inline-media { margin: 28px 0 36px; }
.article-inline-media a { display: block; }
.article-inline-media img { display: block; width: 100%; height: auto; border: 2px solid var(--ink); background: var(--soft); }
.article-media-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.article-media-gallery figure { margin: 0; }
.article-media-gallery img,
.article-media-gallery video { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border: 2px solid var(--ink); background: var(--soft); }
.article-media-gallery figcaption { margin-top: 7px; color: var(--muted); font: 700 .68rem var(--mono); }
.article-documents { display: grid; gap: 9px; margin-top: 27px; }
.article-documents h3 { margin: 0 0 4px; }
.article-documents a { display: grid; grid-template-columns:auto 1fr auto; gap: 12px; align-items: center; padding: 13px 15px; border: 2px solid var(--ink); background: #fff; text-decoration: none; }
.article-documents a:hover { background: var(--lime); }
.article-documents span,
.article-documents small { font: 800 .65rem var(--mono); text-transform: uppercase; }
.article-documents strong { overflow-wrap: anywhere; }

@media (max-width: 620px) {
  .article-media-gallery { grid-template-columns: 1fr; }
  .article-documents a { grid-template-columns: 1fr auto; }
  .article-documents a span { grid-column: 1 / -1; }
}

@media print {
  .article-video video { display: none; }
  .article-documents a { border: 1px solid #999; }
}
