@font-face{font-family:'IBM Plex Mono';src:url('/fonts/ibm-plex-mono-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:'IBM Plex Mono';src:url('/fonts/ibm-plex-mono-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#000;color:#00ff00;font-family:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace}body{height:100svh;overflow:hidden}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid #00ff00;outline-offset:6px}#matrix{position:fixed;inset:0;pointer-events:none;background:#000;z-index:1}main{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;z-index:10;padding:0 16px;pointer-events:none}h1{font-size:96px;line-height:1;letter-spacing:.05em;font-weight:700;margin:0;text-shadow:0 0 10px rgb(0 255 0 / 70%)}main p{font-size:24px;line-height:32px;margin:16px 0 0;opacity:.75;text-shadow:0 0 5px rgb(0 255 0 / 50%)}.origin{position:fixed;top:96px;left:50%;transform:translateX(-50%);z-index:50;display:flex;align-items:center;gap:8px;background:rgb(0 0 0 / 90%);border:1px solid #00ff00;padding:8px 16px;border-radius:6px;font-size:16px;line-height:24px;white-space:nowrap;text-shadow:0 0 5px rgb(0 255 0 / 50%);transition:background .2s}.origin:hover{background:rgb(0 255 0 / 10%)}footer{position:absolute;bottom:0;left:0;right:0;z-index:20;background:rgb(0 0 0 / 60%);backdrop-filter:blur(4px);border-top:1px solid #00ff00;padding:16px}.footer-inner{max-width:1400px;margin:auto;padding:0 32px;display:flex;align-items:center;gap:16px}.event{flex-grow:1}footer a{transition:opacity .2s}footer a:hover{opacity:.7}h2{font-size:18px;line-height:28px;font-weight:400;margin:0}footer p{font-size:14px;line-height:20px;color:rgb(0 255 0 / 70%);margin:0}.recap{font-size:14px;line-height:20px;flex-shrink:0}@media(max-width:767px){h1{font-size:clamp(38px,10vw,60px)}main p{font-size:20px;line-height:28px;max-width:95%}.footer-inner{padding:0 8px;flex-direction:column;align-items:flex-start;gap:12px}.origin{top:clamp(24px,10vh,96px)}footer p{max-width:44ch}main{padding-bottom:60px}}@media(max-height:500px){.origin{top:20px}main{padding-bottom:30px}h1{font-size:56px}main p{font-size:18px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Match the original delayed, gently bouncing Origin Story entrance. */
@keyframes slide-in-top{0%{transform:translate(-50%,-300%);opacity:0}60%{transform:translate(-50%,10%);opacity:1}80%{transform:translate(-50%,-4%);opacity:1}100%{transform:translate(-50%,0);opacity:1}}
.origin{animation:slide-in-top 1.6s cubic-bezier(.34,1.3,.64,1) 2s both}
@media(prefers-reduced-motion:reduce){.origin{animation:none}}

.footer-links{display:flex;align-items:center;gap:24px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:767px){.footer-links{justify-content:flex-start;gap:8px 20px}main{padding-bottom:84px}}
