html { font-size: 16px; -webkit-text-size-adjust: 100%; }
body { min-height: 100vh; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
img, video { max-width: 100%; height: auto; display: block; object-fit: cover; }
button, a { -webkit-tap-highlight-color: transparent; }
:focus { outline: none; }
:focus-visible { box-shadow: 0 0 0 4px rgba(99,102,241,0.12); border-radius: 0.375rem; }
.container { max-width: 100%; }
.provenance-record { position: relative; }
.provenance-record::before { content: ""; position: absolute; left: 1.25rem; top: 1.25rem; bottom: 1.25rem; width: 1px; background: linear-gradient(to bottom, rgba(99,102,241,0.06), rgba(99,102,241,0.03) 30%, rgba(99,102,241,0.06)); pointer-events: none; border-radius: 1px; }
.connector { position: relative; padding-left: 1.25rem; }
.connector::before { content: ""; position: absolute; left: 0.5rem; top: 0.6rem; width: 10px; height: 10px; border-radius: 9999px; background: radial-gradient(circle at 35% 35%, rgba(99,102,241,0.18), rgba(99,102,241,0.06) 60%); box-shadow: 0 1px 2px rgba(2,6,23,0.06); }
.card-annot { border-radius: 1rem; overflow: hidden; }
.header-faux-logo svg { display: block; }
.cookie-hidden { display: none !important; }
@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration: 0.001ms !important; }
}
@media (max-width: 640px) {
  .provenance-record::before { left: 0.75rem; }
  .connector { padding-left: 0.9rem; }
  .connector::before { left: 0.25rem; }
}
