@font-face { font-family:'Archive Mona Sans'; src:url('/assets/site/mona-sans-latin.woff2') format('woff2'); font-style:normal; font-weight:200 900; font-display:swap; }
html { --archive-bar-height:48px; scroll-padding-top:calc(var(--archive-bar-height) + 100px); }
.archive-notice { position:sticky; top:0; z-index:1100; height:var(--archive-bar-height); box-sizing:border-box; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 4%; background:#000; color:#aaa; font:11px/1.6 monospace; letter-spacing:.04em; border-bottom:1px solid #262626; }
.archive-notice a { display:inline-flex; align-items:center; min-height:44px; color:#fff; text-decoration:none; white-space:nowrap; }
/* These controls belong to the new site, not the preserved event typography. */
.archive-notice,.archive-notice * { font-family:'Archive Mona Sans',Arial,sans-serif!important; font-size:11px!important; font-weight:550!important; letter-spacing:.025em!important; line-height:1.6!important; }
.archive-notice a:hover { text-decoration:underline; text-underline-offset:5px; }
.archive-nav { position:sticky; top:var(--archive-bar-height); z-index:1000; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:20px 4%; background:#000; border-bottom:1px solid #262626; }
.archive-logo { width:240px; max-width:45vw; height:auto; display:block; }
.archive-menu { display:flex; align-items:center; gap:28px; }
.archive-menu a { color:#fff; font:12px/1.4 Arial,sans-serif; text-decoration:none; }
.archive-menu a:hover { text-decoration:underline; text-underline-offset:6px; }
.archive-menu-toggle { display:none; }
.archive-event-label { background:#000; color:white; padding:32px 4%; display:flex; align-items:baseline; justify-content:space-between; gap:24px; }
.archive-event-label h1 { margin:0; font:700 clamp(28px,4vw,56px)/1.1 Arial,sans-serif; letter-spacing:-.04em; }
.archive-event-label p { margin:0; font:12px/1.6 monospace; color:#aaa; }
.archive-closed { display:inline-block; padding:14px 22px; color:#fff; background:#151515; border:1px solid #444; font:12px/1.5 Arial,sans-serif; letter-spacing:.03em; }
.archive-faq summary { cursor:pointer; padding:24px; list-style-position:inside; font-weight:700; }
.archive-faq .faq-01__answer { display:block!important; height:auto!important; max-height:none!important; opacity:1!important; padding:0 24px 24px; }
.archive-faq:not([open]) .faq-01__answer { display:none!important; }
.site-footer { display:flex; justify-content:space-between; gap:30px; padding:44px 4%; background:#000; border-top:1px solid #262626; color:#fff; }
.site-footer .official-brand { width:275px; max-width:100%; height:auto; }
.site-footer p,.site-footer a { font:12px/1.5 Arial,sans-serif; color:#999; text-decoration:none; }
.site-footer p { margin:24px 0 0; }
.site-footer .footer-links { display:flex; flex-direction:column; justify-content:space-between; gap:24px; }
.site-footer .footer-socials,.site-footer .footer-utility { display:flex; justify-content:flex-end; gap:28px; }
.site-footer .footer-socials a { display:flex; align-items:center; justify-content:center; min-width:24px; min-height:24px; color:#eee; }
.site-footer .back-top { display:flex; align-items:center; gap:12px; text-transform:uppercase; }
:focus-visible { outline:2px solid white; outline-offset:5px; }
@media(max-width:800px) {
 .archive-notice { gap:12px; font-size:10px; letter-spacing:0; }
 .archive-notice,.archive-notice * { font-size:10px!important; letter-spacing:0!important; }
 .archive-menu-toggle { display:block; color:white; background:none; border:1px solid #555; padding:12px; cursor:pointer; }
 .archive-menu { display:none; position:absolute; left:0; right:0; top:100%; background:#000; padding:24px 4%; flex-direction:column; align-items:flex-start; border-bottom:1px solid #333; }
 .archive-menu.is-open { display:flex; }.archive-event-label { flex-direction:column; gap:12px; }
 .site-footer { flex-direction:column; }.site-footer .footer-socials,.site-footer .footer-utility { justify-content:flex-start; }
 .site-footer .official-brand { width:245px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto!important; } *,*::before,*::after { animation:none!important; transition:none!important; } }

/* Keep the original visual hero; title remains available to assistive technology. */
.archive-event-label { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
