@font-face{font-family:Zilla Slab;font-style:normal;font-weight:400;font-display:swap;src:url(../media/77ff06b584ce5c3b-s.3566d968.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Zilla Slab;font-style:normal;font-weight:400;font-display:swap;src:url(../media/f8a66589f2577848-s.p.747539f4.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Zilla Slab;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0ec8b6964dca4738-s.20ec7cb7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Zilla Slab;font-style:normal;font-weight:500;font-display:swap;src:url(../media/49bcce62f8e09af8-s.p.07817659.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Zilla Slab;font-style:normal;font-weight:600;font-display:swap;src:url(../media/8cd2bc38ce1bfc5d-s.227d0b37.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Zilla Slab;font-style:normal;font-weight:600;font-display:swap;src:url(../media/c3191a2e06136a6d-s.p.fcc7e440.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Zilla Slab;font-style:normal;font-weight:700;font-display:swap;src:url(../media/16e00d4466991d3a-s.23fc9ea4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Zilla Slab;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b8256b1b99fdd790-s.p.0242e5c4.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Zilla Slab Fallback;src:local(Times New Roman);ascent-override:88.36%;descent-override:23.96%;line-gap-override:0.0%;size-adjust:106.83%}.zilla_slab_1919a1a-module__JcvyNW__className{font-family:Zilla Slab,Zilla Slab Fallback;font-style:normal}.zilla_slab_1919a1a-module__JcvyNW__variable{--font-zilla:"Zilla Slab","Zilla Slab Fallback"}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.c949a514.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.a3ed597e.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.319fa961.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.323431dc.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0f2c7ba8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.af4fcd24.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.c949a514.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.a3ed597e.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.319fa961.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.323431dc.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0f2c7ba8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.af4fcd24.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.c949a514.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.a3ed597e.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.319fa961.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.323431dc.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0f2c7ba8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.af4fcd24.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_827e4989-module__IHogDW__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_827e4989-module__IHogDW__variable{--font-plex-sans:"IBM Plex Sans","IBM Plex Sans Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.a82ecf4e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.afa48be3.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.764b43eb.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.cb53f04b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.64b9304e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.6b5ea6af.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1dcddae6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.8da66e7f.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.e6cd1753.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.19510058.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_78ccebc2-module__sm23LG__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_78ccebc2-module__sm23LG__variable{--font-plex-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}
:root{--navy:#003264;--gold:#fbb03b;--gold-deep:#e09112;--slate:#2d3e50;--sans:var(--font-plex-sans),"IBM Plex Sans",system-ui,sans-serif;--slab:var(--font-zilla),"Zilla Slab",Georgia,serif;--mono:var(--font-plex-mono),"IBM Plex Mono",monospace;--bg:#04182f;--bg-2:#062244;--panel:#ffffff12;--line:#8caacd2e;--line-hi:#fbb03b8c;--tx:#eef3f9;--tx-2:#9db3ca;--tx-3:#6f8aa6;--chipbg:#ffffff0d}body.card[data-theme=paper]{--bg:#f6f3ec;--bg-2:#efeae0;--panel:#fff;--line:#e0d9ca;--line-hi:#e09112;--tx:#13243a;--tx-2:#4c5b6e;--tx-3:#8595a8;--chipbg:#faf8f2}*{box-sizing:border-box;margin:0;padding:0}html:has(body.card){scroll-behavior:smooth;scroll-snap-type:y proximity;scrollbar-width:none}html::-webkit-scrollbar{width:0;height:0;display:none}body::-webkit-scrollbar{display:none}body.card{font-family:var(--sans);background:var(--bg);color:var(--tx);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.6;transition:background .35s,color .35s}body.card:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(760px 420px at 50% -10%,#fbb03b1a,#0000 62%),radial-gradient(700px 520px at 100% 110%,#005ab424,#0000 58%);position:fixed;inset:0}body.card[data-theme=paper]:before{background:radial-gradient(760px 420px at 50% -10%,#fbb03b24,#0000 62%),radial-gradient(700px 520px at 100% 110%,#0032640f,#0000 58%)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.page{z-index:1;max-width:1020px;margin:0 auto;padding:0 28px;position:relative}.hero{scroll-snap-align:start;justify-content:center;align-items:center;min-height:100svh;padding:24px 0 110px;display:flex;position:relative}.hero-core{text-align:center;flex-direction:column;align-items:center;display:flex}.hero .logo{width:min(430px,78vw)}.hero .slogan{font-family:var(--slab);color:var(--tx);letter-spacing:-.01em;margin-top:34px;font-size:clamp(22px,3.2vw,32px);font-weight:600}.hero .slogan em{color:var(--gold);font-style:normal}body.card[data-theme=paper] .hero .slogan em{color:var(--gold-deep)}.hero .sub{color:var(--tx-2);max-width:520px;margin-top:26px;font-size:15.5px}.hero .rule{background:var(--gold);border-radius:2px;width:min(520px,72vw);height:3px;margin-top:34px}.dock{z-index:60;box-shadow:none;background:0 0;border:none;gap:6px;padding:0;display:flex;position:fixed;bottom:14px;left:50%;transform:translate(-50%)}.thumb{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:8px 9px 7px;transition:transform .2s,border-color .2s,background .2s;display:flex}.thumb:hover{border-color:var(--line);transform:translateY(-3px)}.thumb .dt{font-family:var(--mono);letter-spacing:.06em;color:var(--tx-2);text-transform:uppercase;font-size:10px}.thumb.on .dt{color:var(--gold)}body.card[data-theme=paper] .thumb.on .dt{color:var(--gold-deep)}.tface{justify-content:center;align-items:center;width:76px;height:48px;transition:filter .25s;display:flex;position:relative;overflow:visible}.thumb.on .tface{filter:drop-shadow(0 3px 12px #fbb03b80)}.mini{pointer-events:none;-webkit-user-select:none;user-select:none;transform-origin:50%;flex:none}.socials{gap:12px;margin-top:30px;display:flex}.socials a{border:1px solid var(--line);background:var(--panel);width:42px;height:42px;color:var(--tx-2);border-radius:50%;place-items:center;transition:transform .2s,border-color .2s,color .2s;display:grid}.socials a:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-3px)}body.card[data-theme=paper] .socials a:hover{border-color:var(--gold-deep);color:var(--gold-deep)}.bstats{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:center;gap:18px 54px;margin-top:44px;padding-top:30px;display:flex}.bstat{text-align:left}.bstat .bn{font-family:var(--slab);color:var(--tx);font-size:26px;font-weight:700;line-height:1.1}.bstat .bl{color:var(--tx-2);margin-top:4px;font-size:13px}.copyright{z-index:55;font-family:var(--mono);color:var(--tx-3);letter-spacing:.04em;font-size:11px;position:fixed;bottom:18px;left:20px}@media (max-width:560px){.copyright{display:none}}.dockscrim{z-index:50;pointer-events:none;background:linear-gradient(180deg,transparent,var(--bg)45%);height:190px;position:fixed;bottom:0;left:0;right:0}.topbar{z-index:60;gap:10px;display:flex;position:fixed;top:18px;right:22px}.tbtn{border:1px solid var(--line);background:var(--bg-2);width:42px;height:42px;color:var(--tx-2);cursor:pointer;font-family:var(--mono);letter-spacing:.04em;border-radius:12px;place-items:center;font-size:12.5px;font-weight:600;transition:transform .2s,border-color .2s,color .2s;display:grid}.tbtn:hover{border-color:var(--gold);color:var(--tx);transform:translateY(-2px)}body.card[data-theme=paper] .tbtn:hover{border-color:var(--gold-deep)}@media (max-width:640px){.topbar{top:12px;right:14px}}section{scroll-snap-align:start;flex-direction:column;justify-content:center;min-height:100svh;padding:24px 0;display:flex}.label{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);align-items:center;gap:14px;margin-bottom:26px;font-size:12px;display:flex}body.card[data-theme=paper] .label{color:var(--gold-deep)}.label:after{content:"";background:var(--line);flex:1;height:1px}.stackgrid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.scard{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px 22px 16px;transition:border-color .25s;position:relative;overflow:hidden}.scard:before{content:"";opacity:0;background:linear-gradient(90deg,#0000,#fbb03b80,#0000);height:1px;transition:opacity .3s;position:absolute;top:0;left:22px;right:22px}.scard:hover{border-color:var(--line-hi)}.scard:hover:before{opacity:1}.scard.wide{grid-column:1/-1}.shead{justify-content:space-between;align-items:baseline;margin-bottom:14px;display:flex}.shead .t{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--tx-2);font-size:11.5px}.shead .n{font-family:var(--mono);color:var(--gold);opacity:.75;font-size:11px}.titems{grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:6px;display:grid}.titem{border:1px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:9px;padding:14px 4px 12px;transition:transform .2s,border-color .2s,background .2s;display:flex}.titem:hover{border-color:var(--line);background:var(--chipbg);transform:translateY(-3px)}.titem img{object-fit:contain;width:32px;height:32px}body.card[data-theme=navy] .titem img.inv{filter:invert()}.titem .abbr{width:32px;height:32px;font-family:var(--mono);color:var(--gold);background:#fbb03b17;border:1px solid #fbb03b66;border-radius:9px;place-items:center;font-size:11.5px;font-weight:600;display:none}.titem.noimg img{display:none}.titem.noimg .abbr{display:grid}.titem .tl{font-family:var(--mono);color:var(--tx-2);text-align:center;font-size:11.5px;line-height:1.3}.practices{border:1px dashed var(--line);border-radius:14px;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:9px;padding:14px 18px;display:flex}.practices .pt{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--tx-3);margin-right:6px;font-size:11.5px}.chip{font-family:var(--mono);color:var(--tx-2);border:1px solid var(--line);background:var(--chipbg);border-radius:7px;padding:6px 13px;font-size:13px;transition:border-color .2s,color .2s}.chip:hover{border-color:var(--line-hi);color:var(--tx)}.workgrid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.work{background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;padding:26px;transition:transform .22s,border-color .22s,box-shadow .22s;display:flex}.work:hover{border-color:var(--line-hi);transform:translateY(-4px)}body.card[data-theme=paper] .work{background:#fff;box-shadow:0 1px 2px #13243a0a,0 12px 32px -16px #13243a29}body.card[data-theme=paper] .work:hover{box-shadow:0 30px 70px -34px #13243a59}.work .top{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.work .kind{font-family:var(--mono);letter-spacing:.03em;white-space:nowrap;border:1px solid #0000;border-radius:7px;padding:5px 11px;font-size:11.5px}.kind.dev{color:#ffc977;background:#fbb03b1a;border-color:#fbb03b40}.kind.infra{color:#7fd1ff;background:#7fd1ff1a;border-color:#7fd1ff40}.kind.full{color:#9be59b;background:#9be59b1a;border-color:#9be59b40}body.card[data-theme=paper] .kind.dev{color:#b06a00;background:#fbb03b29;border-color:#0000}body.card[data-theme=paper] .kind.infra{color:#0a4f86;background:#0a4f861a;border-color:#0000}body.card[data-theme=paper] .kind.full{color:#1c6e3f;background:#1c6e3f1a;border-color:#0000}.work .yr{font-family:var(--mono);color:var(--tx-3);font-size:12px}.work h3{font-family:var(--slab);color:var(--tx);font-size:21px;font-weight:600;line-height:1.2}.work p{color:var(--tx-2);flex:1;margin-top:10px;font-size:14px}.work .wtags{flex-wrap:wrap;gap:7px;margin-top:18px;display:flex}.wtag{font-family:var(--mono);color:var(--tx-2);border:1px solid var(--line);background:var(--chipbg);white-space:nowrap;border-radius:6px;padding:4px 9px;font-size:11.5px}.prodgrid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.pcard{background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:12px;padding:12px 12px 18px;transition:transform .22s,border-color .22s,box-shadow .22s;display:flex}.pcard:hover{border-color:var(--line-hi);transform:translateY(-4px)}body.card[data-theme=paper] .pcard{background:#fff;box-shadow:0 1px 2px #13243a0a,0 12px 32px -16px #13243a29}.pcard image-slot{aspect-ratio:16/10;width:100%;display:block}.pcard .pname{font-family:var(--slab);color:var(--tx);padding:0 8px;font-size:18.5px;font-weight:600;line-height:1.25}.pcard .pdesc{color:var(--tx-2);margin-top:-6px;padding:0 8px;font-size:13.5px;line-height:1.55}.contact{border:1px solid var(--line);background:var(--panel);text-align:center;border-radius:18px;padding:44px 36px;position:relative;overflow:hidden}.contact:before{content:"";pointer-events:none;background:radial-gradient(420px 200px at 50% 0,#fbb03b1a,#0000 70%);position:absolute;inset:0}.contact>*{position:relative}.contact h2{font-family:var(--slab);color:var(--tx);font-size:clamp(24px,3vw,32px);font-weight:700}.email-btn{background:var(--gold);color:var(--navy);font-family:var(--slab);border-radius:11px;align-items:center;gap:11px;margin-top:22px;padding:15px 28px;font-size:19px;font-weight:700;transition:transform .15s,box-shadow .2s;display:inline-flex}.email-btn:hover{transform:translateY(-2px);box-shadow:0 16px 40px -12px #fbb03b80}.contact .links{flex-wrap:wrap;justify-content:center;gap:12px 26px;margin-top:26px;display:flex}.contact .links a{font-family:var(--mono);color:var(--tx-2);align-items:center;gap:7px;font-size:13.5px;transition:color .2s;display:inline-flex}.contact .links a:hover{color:var(--gold)}body.card[data-theme=paper] .contact .links a:hover{color:var(--gold-deep)}.footline{text-align:center;font-family:var(--mono);color:var(--tx-3);padding-top:36px;font-size:12px;line-height:1.8}@media (prefers-reduced-motion:no-preference){body.card:not([data-anims=off]) .hero .logo{animation:.85s cubic-bezier(.2,.7,.2,1) both riseIn}body.card:not([data-anims=off]) .hero .slogan{animation:.85s cubic-bezier(.2,.7,.2,1) .14s both riseIn}body.card:not([data-anims=off]) .hero .bstats{animation:.8s cubic-bezier(.2,.7,.2,1) .28s both riseIn}body.card:not([data-anims=off]) .hero .rule{animation:.7s cubic-bezier(.2,.7,.2,1) .44s both ruleIn}body.card:not([data-anims=off]) .hero .sub{animation:.85s cubic-bezier(.2,.7,.2,1) .56s both riseIn}body.card:not([data-anims=off]) .hero .socials{animation:.8s cubic-bezier(.2,.7,.2,1) .68s both riseIn}}@keyframes riseIn{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes ruleIn{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fly{width:100%}body.card{height:100svh;overflow:hidden}body.card .page{max-width:none;height:100svh;margin:0;padding:0;position:relative}.snapsec{scrollbar-width:none;opacity:0;visibility:hidden;pointer-events:none;flex-direction:column;justify-content:flex-start;min-height:0;margin:0;padding:24px 28px 132px;display:flex;position:absolute;inset:0;overflow-y:auto}.snapsec::-webkit-scrollbar{display:none}.snapsec .fly{max-width:1020px;margin:auto}.snapsec.is-active{opacity:1;visibility:visible;pointer-events:auto}@media (max-height:640px){.snapsec{padding-bottom:158px}.hero .logo{width:min(340px,70vw)}.hero .slogan{margin-top:22px}.hero .rule,.socials{margin-top:20px}.bstats{gap:14px 40px;margin-top:24px;padding-top:20px}.bstat .bn{font-size:22px}}html.fly-ready body.card:not([data-anims=off]) .snapsec{transition:opacity .28s,visibility 0s linear .5s}html.fly-ready body.card:not([data-anims=off]) .snapsec.is-active{transition:opacity .22s,visibility}html.fly-ready body.card:not([data-anims=off]) #hero.snapsec{transition:opacity .5s,transform .8s cubic-bezier(.3,1.18,.35,1),visibility 0s linear .8s;transform:scale(.055)}html.fly-ready body.card:not([data-anims=off]) #hero.snapsec.is-active{transition:opacity .3s,transform .85s cubic-bezier(.16,1,.3,1),visibility;transform:none}html.fly-ready body.card:not([data-anims=off]) section .label{opacity:0;transform:translate(var(--fx,0px),var(--fy,60px))scale(.2);transition:opacity .45s .12s,transform .75s cubic-bezier(.18,.9,.26,1) .12s}html.fly-ready body.card:not([data-anims=off]) section.is-active .label{opacity:1;transform:none}html.fly-ready body.card:not([data-anims=off]) .snapsec .scard{opacity:0;transform:translate(var(--fx,0px),var(--fy,60px))scale(.12);transition:opacity .7s cubic-bezier(.22,.9,.28,1),transform .75s cubic-bezier(.18,.9,.26,1);transition-delay:calc(var(--d,0s) + .2s)}html.fly-ready body.card:not([data-anims=off]) section.is-active .scard{opacity:1;transform:none}html.fly-ready body.card:not([data-anims=off]) .snapsec .scard .titem{opacity:0;transition:opacity .5s cubic-bezier(.34,1.56,.64,1),transform .5s cubic-bezier(.34,1.56,.64,1);transition-delay:calc(var(--d,0s) + .38s + var(--i,0)*45ms);transform:scale(.4)}html.fly-ready body.card:not([data-anims=off]) section.is-active .scard .titem{opacity:1;transform:none}html.fly-ready body.card:not([data-anims=off]) .snapsec .practices{opacity:0;transform:translate(var(--fx,0px),var(--fy,60px))scale(.15);transition:opacity .7s,transform .75s cubic-bezier(.18,.9,.26,1);transition-delay:calc(var(--d,0s) + .2s)}html.fly-ready body.card:not([data-anims=off]) section.is-active .practices{opacity:1;transform:none}html.fly-ready body.card:not([data-anims=off]) .snapsec .practices .chip{opacity:0;transition:opacity .45s,transform .45s cubic-bezier(.22,.9,.28,1);transition-delay:calc(var(--d,0s) + .34s + var(--i,0)*50ms);transform:translate(-16px)}html.fly-ready body.card:not([data-anims=off]) section.is-active .practices .chip{opacity:1;transform:none}.workgrid{perspective:1000px}html.fly-ready body.card:not([data-anims=off]) .snapsec .work{opacity:0;transform:translate(var(--fx,0px),var(--fy,60px))scale(.12);transition:opacity .7s cubic-bezier(.22,.9,.28,1),transform .75s cubic-bezier(.18,.9,.26,1);transition-delay:calc(var(--d,0s) + .22s)}html.fly-ready body.card:not([data-anims=off]) section.is-active .work{opacity:1;transform:none}html.fly-ready body.card:not([data-anims=off]) .snapsec .pcard{opacity:0;transform:translate(var(--fx,0px),var(--fy,60px))scale(.12);transition:opacity .7s cubic-bezier(.22,.9,.28,1),transform .75s cubic-bezier(.18,.9,.26,1);transition-delay:calc(var(--d,0s) + .22s)}html.fly-ready body.card:not([data-anims=off]) section.is-active .pcard{opacity:1;transform:none}html.fly-ready body.card:not([data-anims=off]) .snapsec .contact{opacity:0;transform:translate(var(--fx,0px),var(--fy,60px))scale(.15);transition:opacity .75s cubic-bezier(.22,.9,.28,1) .15s,transform .8s cubic-bezier(.18,.9,.26,1) .15s}html.fly-ready body.card:not([data-anims=off]) section.is-active .contact{opacity:1;transform:none}html.fly-ready body.card:not([data-anims=off]) .snapsec .contact h2,html.fly-ready body.card:not([data-anims=off]) .snapsec .contact .email-btn,html.fly-ready body.card:not([data-anims=off]) .snapsec .contact .links,html.fly-ready body.card:not([data-anims=off]) .snapsec .footline{opacity:0;transition:opacity .6s cubic-bezier(.22,.9,.28,1),transform .6s cubic-bezier(.22,.9,.28,1);transform:translateY(16px)}html.fly-ready body.card:not([data-anims=off]) section.is-active .contact h2{opacity:1;transition-delay:.3s;transform:none}html.fly-ready body.card:not([data-anims=off]) section.is-active .contact .email-btn{opacity:1;transition-delay:.44s;transform:none}html.fly-ready body.card:not([data-anims=off]) section.is-active .contact .links{opacity:1;transition-delay:.58s;transform:none}html.fly-ready body.card:not([data-anims=off]) section.is-active .footline{opacity:1;transition-delay:.7s;transform:none}html.fly-ready body.card:not([data-anims=off]) section.is-leaving .label{opacity:0;transform:translate(var(--fx,0px),var(--fy,60px))scale(.2);transition:opacity .24s,transform .3s cubic-bezier(.55,0,.85,.45)}html.fly-ready body.card:not([data-anims=off]) .snapsec.is-leaving .scard,html.fly-ready body.card:not([data-anims=off]) .snapsec.is-leaving .work,html.fly-ready body.card:not([data-anims=off]) .snapsec.is-leaving .pcard,html.fly-ready body.card:not([data-anims=off]) .snapsec.is-leaving .practices{opacity:0;transform:translate(var(--fx,0px),var(--fy,60px))scale(.12);transition:opacity .26s,transform .3s cubic-bezier(.55,0,.85,.45);transition-delay:calc(var(--d,0s)*.35)}html.fly-ready body.card:not([data-anims=off]) .snapsec.is-leaving .contact{opacity:0;transform:translate(var(--fx,0px),var(--fy,60px))scale(.15);transition:opacity .26s 40ms,transform .3s cubic-bezier(.55,0,.85,.45) 40ms}html.fly-ready body.card:not([data-anims=off]) .snapsec.is-leaving .scard .titem{opacity:0;transition:opacity .2s,transform .24s cubic-bezier(.55,0,.85,.45);transition-delay:calc(var(--i,0)*16ms);transform:scale(.4)}html.fly-ready body.card:not([data-anims=off]) .snapsec.is-leaving .practices .chip{opacity:0;transition:opacity .2s,transform .22s;transition-delay:calc(var(--i,0)*14ms);transform:translate(-16px)}html.fly-ready body.card:not([data-anims=off]) .snapsec.is-leaving .contact h2{opacity:0;transition:opacity .22s,transform .24s;transform:translateY(16px)}html.fly-ready body.card:not([data-anims=off]) .snapsec.is-leaving .contact .email-btn{opacity:0;transition:opacity .22s 50ms,transform .24s 50ms;transform:translateY(16px)}html.fly-ready body.card:not([data-anims=off]) .snapsec.is-leaving .contact .links{opacity:0;transition:opacity .22s .1s,transform .24s .1s;transform:translateY(16px)}html.fly-ready body.card:not([data-anims=off]) .snapsec.is-leaving .footline{opacity:0;transition:opacity .22s .15s,transform .24s .15s;transform:translateY(16px)}.titem img,.titem .abbr{transition:transform .35s cubic-bezier(.34,1.56,.64,1)}.titem:hover img,.titem:hover .abbr{transform:scale(1.16)}body.card:before{transition:opacity 1.4s,filter 1.4s}body.card[data-sec=stack]:before{filter:hue-rotate(10deg)saturate(1.1)}body.card[data-sec=work]:before{filter:hue-rotate(-12deg)}body.card[data-sec=products]:before{filter:hue-rotate(16deg)}body.card[data-sec=contact]:before{filter:hue-rotate(-18deg)saturate(1.15);opacity:.85}body.card[data-anims=off]:before{filter:none;opacity:1}@media (max-width:640px){.dock{gap:2px;bottom:10px}.thumb{padding:6px 6px 5px}.tface{width:56px;height:36px}.thumb .dt{font-size:9px}.bstats{gap:14px 28px}.bstat .bn{font-size:21px}}@media (max-width:760px){.workgrid{grid-template-columns:1fr}.prodgrid{grid-template-columns:1fr 1fr}.stackgrid{grid-template-columns:1fr}.hero{padding:24px 0 96px}}@media (max-width:520px){.prodgrid{grid-template-columns:1fr}section{padding:20px 0}}.hero .logo-paper,body.card[data-theme=paper] .hero .logo-navy{display:none}body.card[data-theme=paper] .hero .logo-paper{display:block}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
