/* Small archive-only controls; the site's own styles stay intact. */
html{scroll-behavior:smooth}
.archive-note{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);z-index:9999;max-width:calc(100% - 24px);width:max-content;padding:9px 16px;border:1px solid #ddd;border-radius:30px;background:#fffffff2;color:#555;font:12px/1.5 system-ui,sans-serif;box-shadow:0 2px 12px #0001;text-align:center}
.archive-note a{text-decoration:underline;text-underline-offset:3px;color:#111}
.archive-dialog{position:fixed;inset:0;max-width:1100px;width:calc(100% - 32px);max-height:90vh;margin:auto;padding:44px 16px 16px;border:1px solid #444;border-radius:16px;background:#161616;color:white}
.archive-dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}
.archive-dialog video{display:block;width:100%;max-height:75vh}
.archive-close{position:absolute;right:14px;top:8px;border:0;background:transparent;color:white;font:26px system-ui;cursor:pointer;padding:0 8px}
.archive-mobile-nav{position:fixed;inset:78px 16px auto;z-index:1000;padding:20px;display:grid;gap:16px;border:1px solid #ddd;border-radius:16px;background:white;box-shadow:0 8px 30px #0001;font:18px system-ui}
.archive-mobile-nav[hidden]{display:none}
@media(prefers-reduced-motion:no-preference){.hero-title,.hero-subtitle,.hero-cta{animation:archive-enter .8s both}.hero-subtitle{animation-delay:.1s}.hero-cta{animation-delay:.2s}.hero-bob{animation:archive-float 6s ease-in-out infinite alternate}.hero-bob:nth-child(even){animation-delay:-3s}}
@keyframes archive-enter{from{opacity:0;translate:0 16px}to{opacity:1;translate:0 0}}
@keyframes archive-float{from{translate:0 -4px}to{translate:0 4px}}

/* The original feature collage uses coordinates on a 1440px canvas. */
@media (min-width: 75rem) {
  .archive-features-canvas { width: 1440px; max-width: none; }
}
