/* Shared accessibility refinements; individual case art direction is preserved. */
html { scroll-padding-top: 1.5rem; scroll-padding-bottom: 7.5rem; }
:target { scroll-margin-block: 1.5rem 7.5rem; }
[tabindex="-1"]:focus { outline: none; }
a:focus-visible, button:focus-visible, video:focus-visible { outline: 3px solid #7650ad; outline-offset: 5px; }
.floating-nav { max-width: calc(100% - 24px); }
.floating-nav a { display: inline-flex; align-items: center; min-height: 44px; }
.credit-title { font: 700 1.25rem/1.3 'Space Grotesk', sans-serif; margin: 0 0 14px; }
.gallery-return { max-width: 1280px; margin: 32px auto 0; padding: 0 40px; }
.gallery-return a { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; font-size: 1rem; text-decoration: underline; text-underline-offset: 5px; }
@media (max-width: 480px) {
 .floating-nav { gap: 14px; padding: 8px 16px; }
 .floating-nav img { width: 80px; }
 .floating-nav a { font-size: 14px; }
 .gallery-return { padding-inline: 20px; }
}
@media (prefers-reduced-motion: reduce) {
 html { scroll-behavior: auto; }
 *, *::before, *::after { animation: none !important; transition: none !important; }
}
