.archive-sources {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  gap: 16px;
  align-items: center;
  margin: 0 0 28px;
  padding: 16px 18px;
  border: 1px solid #d5af5955;
  background: #0a2225;
  font-family: Arial, sans-serif;
}
.archive-sources strong { color: #d5af59; font-size: 13px; }
.archive-sources p { margin: 0; color: #bac3bc; font-size: 13px; line-height: 1.5; }
.archive-sources a { color: #f4eedf; font-size: 12px; white-space: nowrap; }
.flag-provenance { padding: 20px 42px; border-bottom: 1px solid #d5af5955; }
.flag-provenance h3 { margin: 0 0 8px; color: #d5af59; font-size: 15px; }
.flag-provenance p { margin: 0 0 12px; color: #bac3bc; font: 13px/1.6 Arial, sans-serif; }
.flag-provenance div { display: flex; flex-wrap: wrap; gap: 14px; }
.flag-provenance a { color: #f4eedf; font: 12px Arial, sans-serif; }
.history-entry--image { grid-template-columns: 92px 90px 1fr; align-items: start; }
.history-entry--image img { width:92px; height:58px; object-fit:contain; background:#0002; }
@media (max-width: 760px) {
  .archive-sources { grid-template-columns: 1fr; gap: 8px; }
  .archive-sources a { white-space: normal; }
  .flag-provenance { padding-inline: 22px; }
  .history-entry--image { grid-template-columns: 72px 1fr; }
  .history-entry--image img { width:72px; height:46px; }
  .history-entry--image time { grid-column: 2; }
  .history-entry--image div { grid-column: 1 / -1; }
}
