:root{
  --ink-900:#0a1b2a; --ink-800:#11293d; --ink-700:#17364e; --ink-deep:#040b17;
  --paper:#ffffff;
  --limestone-100:#efe9de; --limestone-200:#e3dacb; --sand-50:#f7f3ec;
  --mimosa:#ffc93c; --cta-yellow:#f5c41c;
  --azure-400:#4fb8e8; --azure-500:#2e9bd6; --azure-600:#1d6e9b;
  --coral:#ff5b49; --teal:#12b3a6;
  --on-dark:#c9d8e4; --on-dark-soft:#8aa2b5; --on-light:#0a1b2a; --on-light-soft:#44586a;
  --hero-sub:#c7d1e0;
  --page-pad:clamp(20px,5.5vw,88px);
  --util-pad:clamp(16px,4vw,64px);
  --h2:clamp(32px,3.25vw,52px);
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{background:var(--ink-900);overflow-x:clip;max-width:100%}
body{font-family:'Archivo',sans-serif;-webkit-font-smoothing:antialiased;width:100%;max-width:none}
body.page{max-width:none;width:100%;margin:0}
div.page{width:100%;max-width:1600px;margin:0 auto;position:relative;background:var(--ink-900);overflow-x:clip}
a{text-decoration:none;color:inherit}
img{display:block}
.mono{font-family:'IBM Plex Mono',monospace}
/* Eyebrow barcode */
.eyebrow{display:flex;gap:9px;align-items:center}
.barcode{display:flex;gap:2px}
.barcode i{display:block;width:2px;height:9px}
.eyebrow .label{font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:11px;line-height:1.4;letter-spacing:1.8px;text-transform:uppercase;white-space:nowrap}
/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 24px;font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:12.5px;line-height:1.2;letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.btn-yellow{background:var(--mimosa);color:var(--ink-900)}.btn-yellow:hover{background:#ffd45a}
.btn-navy{background:var(--ink-900);color:var(--paper)}
.btn-outline-azure{border:1px solid var(--azure-500);color:var(--azure-500);transition:background-color .2s ease,color .2s ease,border-color .2s ease}.btn-outline-azure:hover{background:var(--azure-500);color:#fff}
.btn-outline-azure4{border:1px solid var(--azure-400);color:var(--azure-400)}
.btn-link{font-family:'IBM Plex Mono',monospace;font-weight:600;letter-spacing:1.5px;text-decoration:underline;text-underline-position:from-font}
/* Section headers */
.sec-head{display:flex;gap:64px;align-items:flex-end;width:100%}
.sec-head .lhs{flex:1 0 0;min-width:1px;display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.d3{font-weight:900;font-size:52px;line-height:.96;letter-spacing:-1.8px}
.lede{font-weight:500;font-size:19px;line-height:1.62}

/* ============ 01 UTILITY BAR ============ */
.utility{width:100%;max-width:none;background:#060e1b;border-bottom:1px solid rgba(245,196,28,.65)}
.utility-inner{height:60px;width:100%;max-width:1600px;margin:0 auto;padding:0 var(--page-pad);display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0}
.utility,.utility *{font-family:'IBM Plex Mono',monospace;font-size:13.5px;letter-spacing:.5px;white-space:nowrap}
.utility .left{display:flex;gap:14px;align-items:center}
.utility .date{font-weight:700;color:var(--cta-yellow)}
.utility .sep{font-weight:600;color:#66788c}
.utility .loc{font-weight:600;color:#ede8db}
.utility .pulse{display:flex;gap:8px;align-items:center}
.utility .pulse .dot{width:7px;height:7px;border-radius:50%;background:var(--cta-yellow)}
.utility .pulse span{font-weight:600;color:var(--cta-yellow)}
.utility .right{display:flex;gap:28px;align-items:center}
.utility .email{font-weight:600;color:#d9e0eb;transition:color .2s ease}.utility .email:hover{color:var(--cta-yellow)}
.utility .sponsor-btn{border:1.5px solid var(--cta-yellow);color:var(--cta-yellow);font-weight:700;padding:8px 16px;display:flex;align-items:center;transition:background-color .2s ease,color .2s ease}.utility .sponsor-btn:hover{background:var(--cta-yellow);color:#080f1a}

/* ============ 02 NAVIGATION ============ */
.nav{width:100%;background:var(--ink-900);border-bottom:1px solid var(--ink-700);position:relative;z-index:60}
.nav-inner{height:96px;width:100%;max-width:1600px;margin:0 auto;padding:0 var(--page-pad);display:flex;gap:clamp(16px,3.25vw,52px);align-items:center;min-width:0}
.wordmark{display:flex;gap:12px;align-items:center;flex-shrink:0}
.wordmark .wm{font-weight:900;font-size:26px;line-height:1.1;letter-spacing:-.8px;color:var(--paper);white-space:nowrap}
.wordmark .yr{background:var(--mimosa);padding:5px 9px;font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:11px;line-height:1.4;letter-spacing:1.8px;color:var(--ink-900)}
.wordmark img.logo-img,.wordmark img.logo-img-mini,.footer .brandline img.logo-img,.footer .brandline img.logo-img-mini{height:40px;width:auto;max-width:220px;object-fit:contain}
.wordmark.has-logo,.footer .brandline.has-logo{gap:0}
.nav .links{flex:1 0 0;min-width:0;display:flex;gap:clamp(12px,2.1vw,34px);align-items:stretch;align-self:stretch;font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:clamp(11px,.9vw,14px);line-height:1.4;letter-spacing:.8px;text-transform:uppercase;color:var(--on-dark);white-space:nowrap}.nav .links a{color:inherit;transition:color .2s ease,background-color .2s ease}.nav .links a:hover,.nav .links a:focus-visible{color:var(--cta-yellow)}
.f-col ul{display:contents;list-style:none;margin:0;padding:0}
.f-col li{display:contents}.nav .links .nav-list{display:flex;gap:inherit;align-items:stretch;list-style:none;margin:0;padding:0;height:100%}.nav .links .nav-item{position:relative;display:flex;align-items:center}.nav .links .nav-item > a{position:relative;display:flex;align-items:center;gap:7px;height:100%;color:inherit}.nav .links .nav-item > a::before{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--cta-yellow);transform:scaleX(0);transform-origin:left center;transition:transform .22s ease}.nav .links .has-drop > a::after{content:'';width:5px;height:5px;margin-top:-2px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .2s ease,margin .2s ease;flex-shrink:0}.nav .links .nav-item:hover > a,.nav .links .nav-item:focus-within > a,.nav .links .current-menu-item > a,.nav .links .current-menu-ancestor > a,.nav .links .current-menu-parent > a{color:var(--cta-yellow)}.nav .links .nav-item:hover > a::before,.nav .links .nav-item:focus-within > a::before,.nav .links .current-menu-item > a::before,.nav .links .current-menu-ancestor > a::before,.nav .links .current-menu-parent > a::before{transform:scaleX(1)}.nav .links .has-drop:hover > a::after,.nav .links .has-drop:focus-within > a::after{transform:rotate(225deg);margin-top:2px}.nav .links .drop{display:none;position:absolute;top:100%;left:0;min-width:100%;width:max-content;padding:8px 0;background:var(--ink-800);border:1px solid var(--ink-700);z-index:50;list-style:none;margin:0}.nav .links .nav-item:hover .drop,.nav .links .nav-item:focus-within .drop{display:block}.nav .links .drop li{display:block}.nav .links .drop a{display:block;padding:10px 16px;white-space:nowrap}.nav .links .drop a:hover,.nav .links .drop a:focus-visible,.nav .links .drop .current-menu-item > a{color:var(--cta-yellow);background:rgba(255,255,255,.04)}.m-menu .nav-list{display:flex;flex-direction:column;list-style:none;margin:0;padding:0;width:100%}.m-menu .nav-item,.m-menu .drop li{display:block}.m-menu .drop{display:block;list-style:none;margin:0;padding:0;background:var(--ink-900)}.m-menu .drop a{padding-left:36px;font-size:11px}.m-menu .nav-item > a::before,.m-menu .has-drop > a::after{display:none}.m-menu .current-menu-item > a,.m-menu .current-menu-ancestor > a{color:var(--cta-yellow)}
.nav .cta{display:flex;gap:10px;flex-shrink:0}
.nav .btn-ghost{height:44px;padding:0 24px;border:1.5px solid rgba(255,255,255,.75);color:var(--paper);display:inline-flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:14px;letter-spacing:1px;text-transform:uppercase;white-space:nowrap;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.nav .btn-ghost:hover{background:#fff;color:var(--ink-900)}
.nav .btn-tix{height:44px;padding:0 24px;background:var(--cta-yellow);color:#080f1a;display:inline-flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-weight:700;font-size:14px;letter-spacing:1px;text-transform:uppercase;white-space:nowrap;transition:background-color .2s ease}.nav .btn-tix:hover{background:#ffd45a}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:0}
.burger i{display:block;width:22px;height:2px;background:#fff}


/* ============ 18 FOOTER ============ */
.footer{width:100%;max-width:none;background:var(--ink-800);padding:0}.footer-inner{width:100%;max-width:1600px;margin:0 auto;padding:96px var(--page-pad);display:flex;flex-direction:column;gap:56px}
.footer .brand{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.footer .brandline{display:flex;gap:9px;align-items:center}
.footer .wm{font-weight:900;font-size:26px;line-height:1.1;letter-spacing:-.8px;color:var(--paper);white-space:nowrap}
.footer .yr{background:var(--mimosa);padding:3px 7px;font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:11px;line-height:1.4;letter-spacing:1.8px;color:var(--ink-900)}
.footer .desc{font-weight:500;font-size:15px;line-height:1.55;color:var(--on-dark-soft);width:auto;max-width:640px}
.footer .brand .ctas{display:flex;gap:10px}
.f-cols{display:flex;width:100%;white-space:nowrap}
.f-col{flex:1 0 0;min-width:1px;display:flex;flex-direction:column;gap:14px;padding-right:24px}
.f-col .h{font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:11px;line-height:1.4;letter-spacing:1.8px;text-transform:uppercase;color:var(--azure-500)}
.f-col a{font-weight:500;font-size:15px;line-height:1.55;color:var(--on-dark);transition:color .2s ease}.f-col a:hover{color:var(--cta-yellow)}
.f-bar{border-top:1px solid var(--ink-700);padding:26px 0;display:flex;align-items:center;justify-content:space-between;width:100%;font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:11px;line-height:1.4;letter-spacing:1.6px;text-transform:uppercase;color:var(--on-dark-soft);white-space:pre}.f-bar a{color:inherit;transition:color .2s ease}.f-bar a:hover,.f-bar a:focus-visible{color:var(--cta-yellow)}
/* ============ RESPONSIVE ============ */
.m-only{display:none}
.m-menu{display:none !important}

@media (max-width:1599px){
  div.page{width:100%;max-width:1600px}
  .nav .links{gap:24px}
  .footer .desc{width:auto;max-width:640px}
}
@media (max-width:1400px){
  .nav .links,.nav .btn-ghost{display:none}
  .nav .burger.m-only{display:flex !important;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:0}
  .nav .cta{gap:16px;align-items:center}
  .m-menu.open{display:flex !important;flex-direction:column;background:var(--ink-800);border-top:1px solid var(--ink-700)}
  .m-menu a{padding:15px 20px;border-bottom:1px solid var(--ink-700);font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--on-dark)}
}
@media (max-width:1100px){
  .utility-inner{padding:0 24px}
  .utility .loc{display:none}
  .nav-inner{padding:0 24px;gap:24px}
  .nav .links{display:none}
  .nav .btn-ghost{display:none}
  .nav .burger.m-only{display:flex !important}
  .m-menu.open{display:flex !important;flex-direction:column;background:var(--ink-800);border-top:1px solid var(--ink-700)}
  .m-menu a{padding:15px 20px;border-bottom:1px solid var(--ink-700);font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--on-dark)}
  .footer-inner{padding-left:24px;padding-right:24px}
}
@media (max-width:767px){
  .d-only{display:none !important}
  .m-only{display:flex}
  span.m-only,p.m-only{display:block}
  .utility-inner{height:auto;padding:10px 16px}
  .utility,.utility *{font-size:11px}
  .utility .sep,.utility .pulse,.utility .email,.utility .sponsor-btn,.utility .loc{display:none}
  .utility .m-only.mcity{display:block;font-weight:600;color:#ede8db}
  .nav-inner{height:auto;padding:14px 20px 14px 16px;gap:14px;justify-content:space-between}
  .nav .links{display:none}
  .wordmark .wm{font-size:18px;letter-spacing:-.5px}
  .wordmark .yr{font-size:10px;letter-spacing:1px;padding:3px 6px}
  .nav .cta{gap:14px;align-items:center}
  .nav .btn-ghost{display:none}
  .nav .btn-tix{height:auto;padding:9px 14px;background:none;border:1.5px solid var(--cta-yellow);color:var(--cta-yellow);font-size:11px;letter-spacing:.6px}
  .burger{display:flex;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:0}
  .burger i{display:block;width:22px;height:2px;background:#fff}
  .m-menu{display:none !important;flex-direction:column;background:var(--ink-800);border-top:1px solid var(--ink-700)}
  .m-menu.open{display:flex !important}
  .m-menu a{padding:15px 20px;border-bottom:1px solid var(--ink-700);font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--on-dark)}
  .footer-inner{padding:64px 20px;gap:36px}
  .footer .desc{width:100%}
  .f-cols{flex-wrap:wrap;white-space:normal;gap:24px 0}
  .f-col{flex:1 0 46%}
  .f-bar{flex-direction:column;gap:10px;align-items:flex-start;white-space:normal}
  img{max-width:100%}
}
