*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; font: 1rem/1.6 system-ui, sans-serif; }
h1, h2, p, figure { margin: 0; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
a:focus-visible { outline: 3px solid var(--focus, currentColor); outline-offset: 5px; }
.wrap { width: min(100% - 2.5rem, 72rem); margin-inline: auto; }
.skip { position: absolute; z-index: 1; top: .5rem; left: .5rem; padding: .6rem 1rem; background: #fff; color: #111; transform: translateY(-180%); }
.skip:focus { transform: none; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
