@font-face{font-family:FusionPixel;src:url(/fonts/body.woff2) format("woff2");font-display:swap}@font-face{font-family:ZhengGe;src:url(/fonts/title.woff2) format("woff2");font-display:swap}:root{--ink:#1a1c2c;--plum:#5d275d;--red:#b13e53;--orange:#ef7d57;--gold:#ffcd75;--lime:#a7f070;--green:#38b764;--teal:#257179;--navy:#29366f;--blue:#3b5dc9;--sky:#41a6f6;--cyan:#73eff7;--white:#f4f4f4;--silver:#94b0c2;--slate:#566c86;--steel:#333c57;--px:4px;--body:24px;--wrap:1180px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:64px}body{background:var(--ink);color:var(--white);font-family:FusionPixel,Courier New,monospace;font-size:var(--body);line-height:1.5;-webkit-font-smoothing:none;font-smooth:never;overflow-x:hidden}body:after{content:"";position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(26,28,44,0) 0 2px,rgba(26,28,44,.18) 2px 4px);z-index:50}::selection{background:var(--gold);color:var(--ink)}img,video{display:block;width:100%;height:auto;image-rendering:pixelated;image-rendering:crisp-edges}a{color:var(--cyan);text-decoration:none}h1,h2,h3{font-family:ZhengGe,FusionPixel,monospace;font-weight:400;line-height:1.25}.px-corners{-webkit-clip-path:polygon(var(--px) 0,calc(100% - var(--px)) 0,calc(100% - var(--px)) var(--px),100% var(--px),100% calc(100% - var(--px)),calc(100% - var(--px)) calc(100% - var(--px)),calc(100% - var(--px)) 100%,var(--px) 100%,var(--px) calc(100% - var(--px)),0 calc(100% - var(--px)),0 var(--px),var(--px) var(--px));clip-path:polygon(var(--px) 0,calc(100% - var(--px)) 0,calc(100% - var(--px)) var(--px),100% var(--px),100% calc(100% - var(--px)),calc(100% - var(--px)) calc(100% - var(--px)),calc(100% - var(--px)) 100%,var(--px) 100%,var(--px) calc(100% - var(--px)),0 calc(100% - var(--px)),0 var(--px),var(--px) var(--px))}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:32px;height:56px;padding:0 24px;background:rgba(26,28,44,.94);border-bottom:var(--px) solid var(--steel)}.topbar-mark{font-family:ZhengGe,monospace;font-size:32px;color:var(--gold);letter-spacing:2px}.topbar-nav{display:flex;gap:28px;margin-left:auto}.topbar-nav a{color:var(--silver)}.topbar-nav a:hover{color:var(--gold)}.lang-toggle{font:inherit;color:var(--ink);background:var(--silver);border:0;padding:0 14px;height:36px;cursor:pointer}.lang-toggle:hover{background:var(--gold)}.hero{position:relative;padding:56px 24px 72px;overflow:hidden}.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 75% 40%,rgba(41,54,111,.85),rgba(26,28,44,0) 60%),radial-gradient(ellipse at 15% 90%,rgba(93,39,93,.45),rgba(26,28,44,0) 55%)}.hero-inner{position:relative;max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-gap:48px;gap:48px;align-items:center}.notify{display:grid;grid-template-columns:48px 1fr auto;grid-template-rows:auto auto;grid-column-gap:16px;column-gap:16px;max-width:560px;padding:16px 20px;margin-bottom:36px;background:var(--ink);border:var(--px) solid var(--silver);box-shadow:0 var(--px) 0 var(--steel);animation:notify-drop .5s cubic-bezier(.2,.9,.3,1.2) .3s both}@keyframes notify-drop{0%{transform:translateY(-120%);opacity:0}to{transform:translateY(0);opacity:1}}.notify-icon{grid-row:span 2;width:48px;height:48px;display:grid;place-items:center;background:var(--gold);color:var(--ink);font-size:24px}.notify-who{color:var(--white)}.notify-text,.notify-time{color:var(--silver)}.notify-text{grid-column:2/4}.wordmark{display:flex;flex-direction:column;font-size:96px;line-height:1;color:var(--white);text-shadow:var(--px) var(--px) 0 var(--red),calc(var(--px) * 2) calc(var(--px) * 2) 0 var(--plum);letter-spacing:4px}.wordmark span:last-child{color:var(--gold)}.hero-tagline{margin-top:28px;font-size:24px;color:var(--white)}.hero-sub{margin-top:8px;color:var(--silver)}.hero-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px}.btn{display:inline-flex;align-items:center;height:56px;padding:0 28px;font-size:24px}.btn-gold{color:var(--ink);background:var(--gold);box-shadow:inset 0 calc(var(--px) * -1) 0 var(--orange)}.btn-gold:hover{background:var(--lime);box-shadow:inset 0 calc(var(--px) * -1) 0 var(--green)}.btn-ghost{color:var(--silver);border:var(--px) solid var(--slate)}.btn-ghost:hover{color:var(--white);border-color:var(--silver)}.hero-note{margin-top:16px;color:var(--slate)}.hero-credits{list-style:none;margin-top:20px;padding-left:16px;border-left:var(--px) solid var(--slate);color:var(--silver)}.screen{display:block;position:relative;background:var(--ink);border:calc(var(--px) * 2) solid var(--steel);box-shadow:0 0 0 var(--px) var(--ink),0 calc(var(--px) * 3) 0 var(--px) var(--ink)}.hero-screen .screen{border-width:calc(var(--px) * 3)}.section{max-width:var(--wrap);margin:0 auto;padding:72px 24px 0}.section-head{margin-bottom:32px}.section-head h2{display:inline-block;font-size:48px;color:var(--gold);padding-bottom:8px;border-bottom:var(--px) solid var(--red)}.section-head p{margin-top:16px;max-width:860px;color:var(--silver)}h3{font-size:32px;color:var(--white)}.steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:24px;gap:24px}.holo{padding:16px;background:rgba(41,54,111,.55);border:var(--px) dashed var(--cyan)}.step h3{display:flex;align-items:center;gap:12px;margin-top:20px}.step-no{display:grid;place-items:center;width:40px;height:40px;background:var(--gold);color:var(--ink);font-family:FusionPixel,monospace;font-size:24px}.step p{margin-top:8px;color:var(--silver)}.month-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:40px 32px;gap:40px 32px}.month-item figcaption{margin-top:20px}.month-item p{margin-top:6px;color:var(--silver)}.month-item .screen:hover{border-color:var(--slate)}.chat{gap:16px;max-width:860px;padding:24px;background:var(--ink);border:var(--px) solid var(--steel)}.bubble,.chat{display:flex;flex-direction:column}.bubble{max-width:78%}.bubble-who{font-size:24px;color:var(--slate)}.bubble-text{padding:10px 16px;border:var(--px) solid}.bubble.them .bubble-text{background:var(--steel);border-color:var(--slate);color:var(--white)}.bubble.them:nth-child(odd) .bubble-text{border-color:var(--red)}.bubble.them:nth-child(2n) .bubble-text{border-color:var(--lime)}.bubble.me{align-self:flex-end;align-items:flex-end}.bubble.me .bubble-text{background:var(--green);border-color:var(--lime);color:var(--ink)}.paper{position:relative;background:linear-gradient(to right,transparent 64px,var(--red) 64px,var(--red) 68px,transparent 68px),repeating-linear-gradient(to bottom,var(--white) 0 52px,var(--silver) 52px 56px);color:var(--ink);padding:8px 32px 8px 96px;max-width:860px}.fact-row{display:flex;gap:24px;min-height:56px;align-items:center}.fact-key{flex:0 0 140px;color:var(--slate)}.fact-val{color:var(--ink)}.footer{margin-top:96px;padding:48px 24px 56px;border-top:var(--px) solid var(--steel);text-align:center;color:var(--slate)}.footer-mark{font-family:ZhengGe,monospace;font-size:48px;color:var(--gold)}.footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:32px;margin:20px 0}.footer-credit,.footer-links a{color:var(--silver)}.footer-credit{margin-bottom:8px}.footer-links a:hover,.toast{color:var(--gold)}.toast{position:fixed;left:50%;bottom:40px;z-index:60;transform:translateX(-50%);padding:12px 24px;background:var(--ink);border:var(--px) solid var(--gold);animation:toast-in .25s ease-out both}@keyframes toast-in{0%{transform:translate(-50%,24px);opacity:0}to{transform:translate(-50%);opacity:1}}@media (max-width:960px){.hero-inner,.month-grid,.steps{grid-template-columns:1fr}}@media (max-width:640px){:root{--px:2px}.topbar{gap:16px;padding:0 16px}.topbar-nav{display:none}.lang-toggle{margin-left:auto}.hero{padding:32px 16px 48px}.wordmark{font-size:64px}.section{padding:56px 16px 0}.section-head h2{font-size:32px}.paper{padding-left:72px;background:linear-gradient(to right,transparent 48px,var(--red) 48px,var(--red) 50px,transparent 50px),repeating-linear-gradient(to bottom,var(--white) 0 52px,var(--silver) 52px 56px)}.fact-row{flex-direction:column;align-items:flex-start;gap:0;padding:8px 0}.fact-key{flex:none}.bubble{max-width:100%}}