@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/space-grotesk-vietnamese-400-normal.B7xT_GF5.woff2) format("woff2"),url(/_astro/space-grotesk-vietnamese-400-normal.BIWiOVfw.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/space-grotesk-latin-ext-400-normal.CfP_5XZW.woff2) format("woff2"),url(/_astro/space-grotesk-latin-ext-400-normal.DRPE3kg4.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/space-grotesk-latin-400-normal.CJ-V5oYT.woff2) format("woff2"),url(/_astro/space-grotesk-latin-400-normal.BnQMeOim.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/space-grotesk-vietnamese-500-normal.BmEvtly_.woff2) format("woff2"),url(/_astro/space-grotesk-vietnamese-500-normal.BTqKIpxg.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/space-grotesk-latin-ext-500-normal.DUe3BAxM.woff2) format("woff2"),url(/_astro/space-grotesk-latin-ext-500-normal.3dgZTiw9.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/space-grotesk-latin-500-normal.lFbtlQH6.woff2) format("woff2"),url(/_astro/space-grotesk-latin-500-normal.CNSSEhBt.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/space-grotesk-vietnamese-600-normal.DUi7WF5p.woff2) format("woff2"),url(/_astro/space-grotesk-vietnamese-600-normal.D6zpsUhD.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/space-grotesk-latin-ext-600-normal.DxxdqCpr.woff2) format("woff2"),url(/_astro/space-grotesk-latin-ext-600-normal.VcznFIpX.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/space-grotesk-latin-600-normal.DjKNqYRj.woff2) format("woff2"),url(/_astro/space-grotesk-latin-600-normal.BflQw4A9.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/space-grotesk-vietnamese-700-normal.DMty7AZE.woff2) format("woff2"),url(/_astro/space-grotesk-vietnamese-700-normal.Duxec5Rn.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/space-grotesk-latin-ext-700-normal.BQnZhY3m.woff2) format("woff2"),url(/_astro/space-grotesk-latin-ext-700-normal.HVCqSBdx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/space-grotesk-latin-700-normal.RjhwGPKo.woff2) format("woff2"),url(/_astro/space-grotesk-latin-700-normal.CwsQ-cCU.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAAQgABAAAAAAB+wAAAPGAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbahwoBmA/U1RBVEgAXBEICoJ8gkMLFAABNgIkAyIEIAWFCgdiDAcbhQbIPg1vjKH/SZAjGKk6g0Cz4ZDoqIq9ujYKvX+56LMpeKqx39u9+yKCiGazJpasMYQkFiKJSmhkKiQRqyQSleGnud+7DTG5L6jJGPdNJriH5JbwBBG6JVISgmK/170QegCQmWgmlyggSYrYRiVCU8mVdSoUqdZWfpsHE7m10AI7gL2xGtH/pVj0d/045f9hYeqMUicC2WdxoPzP5fhug8y4jw3gwAJO/G57a1i0nm8KMKFeYGdNPGoNsbVxiQSWuba48mH8gQtyCg5ZGAvDD5agO4oAPwBQQhhCgFe5RFRvaXUzOG0xggGcWMA/AWSTcAawAQKEpdyEm4qzANWCIApAGEIZSsgghakUSrjFgCREbxu/cRzQGwWAUWtGFiE8qqmDC6iWQ71FdfCqquouvdcYFiOuCtAtgPxPewaK0aS0ggxDgXLUnlIlIIClbUaH7BBxFsMkfAAIGOGXWNkB/QSAAgPiaALiLAwBgtyUU7EC+w6DKv6QgJ+R/PPNsuFpiK5bSEIxAA+AKMALZgHrgCwgDgCl77kplpAM67LJDJl10GcCuuhI+33L9mq73u62NvsWZu3rMWb3cgvn12x/P8lffyqb/HglnFmEf+rjy4X7/ql37b5+6vY78+HB0UP1UoRu7ouL/fbFUbnaWt23vt79XKns2uzimnswMDd4/sV5T+tRyfifEJTXp0rO6M72e3+7lt5c7R9a9l9j3tdUtXfNZMugZxqkJWfd0l8q27px4E9LcXRh+Fpfy289JTldsUkNKfimSnyrbqPraoPjv2PDRXk54d4RkT5h2QXVBUA1QMDF5ccP6u/k3oV4ABGgm/SiDaYEBEz6xGt/Ouacs1M038DXTWWO5d+ncE1S92PgXGCNBfLTfYd+nQZUqml3/MkRYQsLL6dd3AEtEiDg0c5CBh22pgT47TIkwwMcReIOIh9JUMFwg9HlDax62+CQNQdOtdrtQZ2kDgJ+SbAEww1e/LyL8uEFY4z0GAYVBAwdNVYbQk1JRcB/FpjwMsWJw2Nx1EwEvFg8NZ1YRhylOHVKVSvHMNAiDMpwjAQETytGI0JJpMPgtCI4PDUjAyxJrHgJkuK1sHjCUuBqyVKuWJE6WQVKqfrUwiJGJqO4dr4JliheogRYMxUC19bqGdFobDRUQGxZM7ZQHwtvPKSkdvNFA2KxD6bEIcTgSNEBUTYW8eKokr1jKFMRKOrzf9Xm4AHl3oPChBErDnE6uwc4MkSsRYM6Pr4g3g5MjC9Mtl1gRYF8TUNxOCXjk+JT/6qR+4TujRUA) format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAAY8AA8AAAAAB9AAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABWAAAABYAAAAWABEABEdQT1MAAAFwAAAASwAAAGYrviSMR1NVQgAAAbwAAAAnAAAAKLj8uOpPUy8yAAAB5AAAAE0AAABgVhGVxlNUQVQAAAI0AAAAPAAAAEjnb8weY21hcAAAAnAAAABCAAAAXEHQ4ltnYXNwAAACtAAAAAgAAAAIAAAAEGdseWYAAAK8AAABXQAAAXztscPjaGVhZAAABBwAAAA2AAAANiKfW4FoaGVhAAAEVAAAAB8AAAAkCEwBamhtdHgAAAR0AAAAIQAAACIN3QCpbG9jYQAABJgAAAAUAAAAFAFhAextYXhwAAAErAAAABoAAAAgABwA5W5hbWUAAATIAAABIQAAAoo6Dl9McG9zdAAABewAAABOAAAAYvVu8ckAAQAAAAwAAAAAAAAAAgABAAEAAwABAAB42j3HpQECQAAAwHvBNZOZgBWQRGQAtOA2Py7XTkBVV08cjMYTze3suteU4X4XEDar816Zz2RRWVAWtUFXRxAFSRAlUfjPAyrAB5UAeNpjYGRgYOBiUANCJhc3nxAGoZzEkjwGPgYQYAER//+DSABaSQVVAHjaY2BhUmGcwMDKwMDUxRTBwMDgDaEZ4xg0GDUYUAE7EDPBOB4uzv4MBxgUFLYwv/h3kYGB+QWjvgID42SQHONbpp1ASoGBGQDyIQy4AAAAeNoNx7ENQFAYBsD7fgqhfSNYTIVE+RJrGMhwXHciJoWmsKp7P3pw9u3KLEbNgMqYh3oxyP8FhA/Q2QU+eNpjYGBgAmJmIBYBkoxgmoXBA0jzMXAA5dgYFBgcGRYwHGRkUtjy/z9QHIX//8n/A/9T/zv+Z7wfBNSNAgBlvxJCAAAAAQAB//8AD3jaPMsh0AFBGAbg99ubf79/ru1wJwisG6vfut2gCehV0QSZXuiVTK/0kejBjN4UI9pjhlGfmQcCOUAnuiACA1Zp1dZK57QOKxqHHV2CadIGAgoQM3EAIwYsWco6mttRpCgeUDzphWuP+vOFODyH2+2dRmGPsvysaCkMCACDccP559OvS/wv3oBK+RAVcUQdHvhrGVN0vfNZoRMtWSbVNLW58zUpqdDOu6JrTNaS3HHO5mmaVFmyTajxmkumFTsLmxkTw79pnGzcqg4a9sF8QRJ1/2YzRnBzCMsZK+g4S7oppLraxpjwsrI5cZvG2kiJ8vKYm/PwikurWcg5mCv5hTHOtuDkElOQ1ZPW1Na2sdYPMlUQ5+CwALrXkEmH4ScwJJgZGITNjdkNc6M7mXR6e8EyTxgTmdMZeIEySmqmxiIg9wIptpO+3rZGmlpGNr5MT1zsNTQ01R2dANfkSg4AAAAAAQAAAAMDVJ3QuIhfDzz1AAMD6AAAAADfih8IAAAAAN+a9WL/Uf7/BRAD4QAAAAYAAgAAAAAAAHjaY2BkYGB+8e8iAwOr8//Av76sAkARVMABAJYoBbwAeNpj/MtgxFTLIAjDjCwMDCDMZMAgzMDAYMhgCABUZAOSAAAAAAAAFAAvADsARgBGAEYAmQCmAL542mNgZGBg4GRoAOJkBlYwDwFYGBgBFx0BAgAAeNqMkQVKRWEQRo/dknZL2N3d3S1tv+6mcRFSrkbKZflxfd38zJ0zPcwF6vmijJLyGuCnZDrKJXSWNEe5lMaS6iiXsclvlMsZ5TvKFbTzGeVKhnmMciPz9P9zCZrVHOXyRM+SWvlro1wngmtcOHjGyRF+aTsWXnngXdqEWT6Jnhsfy0zo+RT3KurGLx7HJ7ZLu+Q1KX7BPqccGj1tvOt7gFdRv9gnzxjXIhMBVT0rci/La3RxKbeXGfWaZEo6uUdvWpfetC6JqhXV7bLDhajoLdKsfJN3xG4ieOMX6mWaScmU6Faed+n8u18atlX2q1G/pcm6tHFDn+zBjKubsBgZAV4Y59X4axMSbWtYdolJElDFhPIS08fk/xuy7ZoAB/xhkwAAAHjaY2BiAIP/7QwaDNgAJxCrMJxkZGJgZmRmZGFkZWRjc0wqSi1LZS/NyzQwcDQA0UYGTiacicmlJanJ+blJPCAZYwMzveTE4lQAH2ARFAAA) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/hanken-grotesk-vietnamese-400-normal.BLrFBAHj.woff2) format("woff2"),url(/_astro/hanken-grotesk-vietnamese-400-normal.C-iWyKLC.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/hanken-grotesk-latin-ext-400-normal.DR7lHpW4.woff2) format("woff2"),url(/_astro/hanken-grotesk-latin-ext-400-normal.DI-aIsWt.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/hanken-grotesk-latin-400-normal.BG6hkEXj.woff2) format("woff2"),url(/_astro/hanken-grotesk-latin-400-normal.CjyVwvJV.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,d09GMgABAAAAAAQIABAAAAAACAQAAAOvAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbahwoBmA/U1RBVEQAXBEICoJ8gkILFAABNgIkAyIEIAWFKAdiDAcbngYoLgpsW7F2EW5iaDHUuE4MfK2EiuDJv6h63X9mQfCkiMhBhsvo5EiaqbW2d/+I+KtIQl7tBEmQGRKRRIOu1qgM08UaQyggDm7nRPJEQ8yt/i+kPxzR/3NNvjVI8z4uSAc88SqLKssyHUVb097RKkT3pocLQBwwzNwaPrRPwsDGVWMcQ0JC6POwBxWoCUhCyEKguo4k4ImTfTHQv3MdVgf9CqgQiB2bkDroRCAUkqpCVUlDRHQ1D5JAyEKSJYGU4qidMYjDVkQilhfxV/yqRLoxLQXMUK3Eaqx0JRxVkEydutYguNe2j/N3/7OjjD5tAXQrxM/pRbRFEP1vS0MwOoKPbCliELZdqgpVFxoiFnfUoG4WEKX4FSRkNEQQ+IJTAbUDsClry2zfm5HaPlMBxKLylTdsMk58Oh9E7h2iQh1QDdQHVMcywAlAc0BDAEn61CcqhCiKKkXjYjt17Rq5VlpfK9essaPGtuqrVyaTPYvWbV+4EFc82GLJ4SPOvvlhjZsudlj0cm5z1LE76xb/63f4H3up+o2f9Fx8dDH2/HlnH2m6xk1ZuMYWNc6+eiJ9/fBDzvW/fNflgx0iu/P1135hTq0X9rzb8b2OffZaL/9ttxws1OTtcs2ifurg4aN54vRp2vBVpxF+zfPqLpPezVhxxNg+pnTtuPK4cx07sOdmLi627vZzbK74f/MIh3FRKIso5sp/ek5tZ9stN3vviznTbUYH/aNT55eOkyw+M4A7g1BFFb/4BK0uq3qaCKA26Xi+Rm22BYScFx5lvr6+ps7I36rm/B18emObqir5nt/W66/caaU8xXJTpJNusFD+f6j0OwWqxr/6J1HDioKXS30NAnrhg1DNQETNEDjokkBtj8miqIa3YiiA0D21IakdIBvtsbEwQklzh1DW1RbUNpgH6polYNfTq702JGLjxtIlUp1Y/T+ooTrma6hJqXPDpFSVZCTllBQUYfxyskpwNS4pdRU5dSROiAZMDqqiCINpQmkICaEyECVNGJQAqqRKoAFRIBTk4OOWKs38+GBCDkKSN2p7KQERManm13KxsQrWho5E+l+Aq0pBHtlMcudbNTRtQIb1TUgkRCTESGKKckhUeQgiZXmGgr0ZDlPUgECRsAZrLCjZ1sGlCWQ01AjVpCBIWm2QQhscSqioB0G+gpMNJkIr0xXKaujoKZIcOYooRbk8bv3K/ikdh3aXRCKzSD0pEVlkXes24Fju9xrSXuwQSUWKdTYSz6PSE8Ut) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/hanken-grotesk-vietnamese-500-normal.DxwlvJEc.woff2) format("woff2"),url(/_astro/hanken-grotesk-vietnamese-500-normal.DkDHNoXI.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/hanken-grotesk-latin-ext-500-normal.DLb9JDK8.woff2) format("woff2"),url(/_astro/hanken-grotesk-latin-ext-500-normal.BNvrJ0Ju.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/hanken-grotesk-latin-500-normal.DrDcrrxK.woff2) format("woff2"),url(/_astro/hanken-grotesk-latin-500-normal.Bo-NxEKf.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,d09GMgABAAAAAAQoABAAAAAACBQAAAPPAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbahwoBmA/U1RBVEQAXBEICoJ8gkQLFAABNgIkAyIEIAWFOAdiDAcbsAYArgZscK1wkCT3IhFNYz5DPm7qldBpMgqe/7f7d5878wHPl+fTgfT+owOgTZ10qYRSldRmpU2VVAIBtVb23O0DgSLUxDaggFgCgYsH4vL58iGQsX8lwzz/N2ssW5itSTCXRf3EepFFaWB193xtOsLr/8L5w/mRXT/9/eStz9e8ZyvSAU88yqPKhpE04lG0VVOmwL/pw8X5dE4v9dEEsYPKnNkNQhGQDgAUITRCQKo63dTwvCVryFxtiQXIpAP+E4CsskcCJAMBQqckE8mUfDpoUkkoAEIjFI0iiILdyA0acLkGYMdOAD38izUkQB3SSbC4EJlLU2gg2JKA0nbB8MxyHqitvY3+nLrSFwzttchpCMi/2EMIBo1EvyrkU6CO2uZ0xQS4N1t8ko7Ip1dbSIOxnAAkWW0AQAEN5NMIvDwLQCY/nESGKZe8DDHjzh8YjMRXe50B4TcNEuLSQhLkAEgBkAtSwUawD5SDfACK+qW3RCck0pP0wqjtOztNy1CzGfH0NG/aitS5W9avT5tpOTs5Ce+cKuorV+y4+jHj8LumfP8AcA6Bolz3+LoB7/Io/dChpXr8Dn5+gnZcKWx9iTO2G0PG4RWW7NSxHl3f863TFp6ZkFbwoMm/P7ygJSJbTkrgowKoyhzz9Y9smyi8OB6IhoZKaj5vF/sX9n5Z6ZQsPDx9dfaCtPHUQ27GxAeD+8aXHZ/Ltbv9rIHMFWPzprZ39q0ZKC16pbHJf2H7maPefE68ORPLay4JwmUhmlkyiaojIEmSHyKDk53CBKRBHUL36sstQ4AWX9O+/ms9L6v7P4Vqn4CPh1B65KUXSkvcz4DEWyzjFimpsxbEqcuxv5M7OfzGQjgzgg5vpzpkghYtBKTopSuhsSymCMh0VZxEKcCjML4GoiOUAyUzpAPNtKeZuh1IUOo6SNTmOMjUbxnIVq6bmSNbDYtAusJ8SXyGSsWlPi+NVLBKkJ9FwEIxFj5uVuvZuTm5xKxm5+c2LcjHZoHHbF52AYb5IoJi7KK87f9iQqKGdeoUZRXhFhIT1SHKzadDUIRTp+XmWcIaq+Zuj0CyDpNFuGTBGIr36GDq0rPiHbHAHDOWp44ftar6TnE+FpF3zW34q2YEu2GPyNn9EkM3U7cuhjVc7Axe2QoM5ZFZOeBPiYtxCYqIMjSdscbJbTVL3KwOVkF+nfwsIojEN6OcReKiOrlEwN/OaWmmCIH/p8GCKaDOkxBDC5rokiCJiVOzKfxHJW0JuE1zytRf7Dane1MWWOMxezYbknTUbPaY/elthN8PiW5ERwE=) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/hanken-grotesk-vietnamese-600-normal.Cp8QQjQf.woff2) format("woff2"),url(/_astro/hanken-grotesk-vietnamese-600-normal.DHaFH8q1.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/hanken-grotesk-latin-ext-600-normal.FY8kSObK.woff2) format("woff2"),url(/_astro/hanken-grotesk-latin-ext-600-normal.DHIm05DD.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/hanken-grotesk-latin-600-normal.CIXX6EOa.woff2) format("woff2"),url(/_astro/hanken-grotesk-latin-600-normal.NEn2C4Q3.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,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-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2) format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,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-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2) format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-cyrillic-ext-600-normal.V-xxqcpd.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-600-normal.9HEixskS.woff) format("woff");unicode-range:U+0460-052F,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-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-cyrillic-600-normal.CTOM6hUh.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-600-normal.fLZuRloM.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-vietnamese-600-normal.D2EvbN8M.woff2) format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-600-normal.iLQfcSjf.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-latin-ext-600-normal.D38SheWl.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-600-normal.DmB0ttJJ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-latin-600-normal.BgSNZQsw.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-600-normal.DWFSQ4vo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #08090a;--bg-2: #0d0f11;--panel: #0f1214;--line: #1c2126;--line-2: #2a3138;--ink: #e8edf0;--ink-dim: #9aa6ad;--ink-mute: #5f6b72;--accent: #00e08a;--accent-ink:#04140d;--amber: #ffce6b;--cyan: #5ad6ff;--red: #ff6b6b;--violet: #b794ff;--blue: #7aa2ff;--grid-rgb: 255 255 255;--grid-alpha: .022;--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "Hanken Grotesk", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--maxw: 1180px;--pad: clamp(20px, 5vw, 64px);--section-gap: clamp(96px, 14vh, 180px);--speed: .45s;--ease: cubic-bezier(.2, .7, .2, 1)}:root[data-theme=light]{--bg: hsl(160 22% 95%);--bg-2: hsl(160 18% 92%);--panel: hsl(150 30% 99%);--line: hsl(160 14% 87%);--line-2: hsl(160 12% 79%);--ink: hsl(196 24% 14%);--ink-dim: hsl(198 12% 34%);--ink-mute: hsl(198 9% 52%);--accent: #00a866;--accent-ink:#ffffff;--grid-rgb: 12 40 32;--grid-alpha: .05;--panel-shadow: 0 18px 44px -34px hsl(196 30% 15% / .38)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;position:relative}.bg-grid{position:fixed;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(to right,rgb(var(--grid-rgb) / var(--grid-alpha)) 1px,transparent 1px),linear-gradient(to bottom,rgb(var(--grid-rgb) / var(--grid-alpha)) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse 120% 90% at 50% 0%,#000 40%,transparent 100%)}.bg-glow{position:fixed;top:-30vh;left:50%;transform:translate(-50%);width:90vw;height:80vh;z-index:0;pointer-events:none;background:radial-gradient(ellipse at center,color-mix(in oklch,var(--accent) 12%,transparent),transparent 62%);filter:blur(20px);opacity:.6}.noise{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.035;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.wrap{position:relative;z-index:2}.container{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}.mono{font-family:var(--font-mono)}.eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:22px;height:1px;background:var(--accent)}.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:18px var(--pad);border-bottom:1px solid transparent;transition:background var(--speed),border-color var(--speed),backdrop-filter var(--speed)}.nav.scrolled{background:color-mix(in oklch,var(--bg) 78%,transparent);backdrop-filter:blur(14px) saturate(1.2);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}.brand-mark{width:34px;height:34px;border:1px solid var(--line-2);border-radius:8px;display:grid;place-items:center;background:var(--panel);position:relative;overflow:hidden}.brand-mark svg{width:20px;height:20px;display:block}.brand-name{display:block;font-family:var(--font-display);font-weight:700;font-size:16px;letter-spacing:-.01em}.brand-name b{color:var(--accent);font-weight:700}.brand-sub{display:block;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);margin-top:1px}.nav-links{display:flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:13px}.nav-links a{color:var(--ink-dim);text-decoration:none;padding:8px 14px;border-radius:7px;transition:color .2s,background .2s;position:relative}.nav-links a .idx{color:var(--accent);margin-right:6px;opacity:.8}.nav-links a:hover{color:var(--ink);background:var(--panel)}.nav-cta{margin-left:8px;border:1px solid var(--line-2)!important;color:var(--ink)!important}.nav-cta:hover{border-color:var(--accent)!important;color:var(--accent)!important;background:transparent!important}.nav-toggle{display:none}.hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-top:132px;padding-bottom:72px;position:relative}.hero-status{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:12px;color:var(--ink-dim);padding:7px 14px;border:1px solid var(--line);border-radius:100px;background:var(--panel);margin-bottom:26px;width:fit-content}.dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 color-mix(in oklch,var(--accent) 70%,transparent);animation:pulse 2.4s infinite}@keyframes pulse{0%{box-shadow:0 0 color-mix(in oklch,var(--accent) 60%,transparent)}70%{box-shadow:0 0 0 7px transparent}to{box-shadow:0 0 0 0 transparent}}.hero h1{font-family:var(--font-display);font-weight:700;font-size:clamp(44px,7vw,100px);line-height:.94;letter-spacing:-.03em;margin-bottom:26px}.hero h1 .accent{color:var(--accent)}.hero h1 .line{display:block;overflow:hidden}.hero h1 .line>span{display:inline-block}.hero-lede{max-width:540px;font-size:clamp(16px,1.7vw,19px);color:var(--ink-dim);line-height:1.55;margin-bottom:34px}.hero-lede b{color:var(--ink);font-weight:600}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.btn{font-family:var(--font-mono);font-size:13.5px;letter-spacing:.02em;padding:13px 22px;border-radius:9px;text-decoration:none;display:inline-flex;align-items:center;gap:10px;cursor:pointer;transition:transform .2s var(--ease),background .2s,border-color .2s,color .2s;border:1px solid transparent}.btn-primary{background:var(--accent);color:var(--accent-ink);font-weight:600}.btn-primary:hover{transform:translateY(-2px)}.btn-ghost{border-color:var(--line-2);color:var(--ink)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.btn svg{width:15px;height:15px}.hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(30px,5vw,70px);align-items:end}.hero-card{border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,var(--panel),var(--bg-2));padding:4px;font-family:var(--font-mono)}.hero-card-head{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line);font-size:11.5px;color:var(--ink-mute)}.tl{display:flex;gap:6px}.tl i{width:10px;height:10px;border-radius:50%;display:block}.tl i:nth-child(1){background:#ff5f57}.tl i:nth-child(2){background:#febc2e}.tl i:nth-child(3){background:#28c840}.hero-card-body{padding:16px;font-size:13px;line-height:1.9}.hero-card-body .k{color:var(--ink-mute)}.hero-card-body .v{color:var(--ink)}.hero-card-body .g{color:var(--accent)}.cursor:after{content:"▋";color:var(--accent);animation:blink 1.1s steps(1) infinite;margin-left:2px}@keyframes blink{50%{opacity:0}}.scroll-hint{position:absolute;bottom:28px;left:var(--pad);font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);display:flex;align-items:center;gap:10px}.scroll-hint .bar{width:1px;height:34px;background:linear-gradient(var(--accent),transparent);animation:drop 2s infinite}@keyframes drop{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.section{padding-top:var(--section-gap);position:relative}.section-head{display:flex;align-items:baseline;gap:18px;margin-bottom:56px;border-top:1px solid var(--line);padding-top:22px}.section-num{font-family:var(--font-mono);font-size:13px;color:var(--accent)}.section-title{font-family:var(--font-display);font-weight:700;font-size:clamp(28px,4vw,46px);letter-spacing:-.02em}.section-meta{margin-left:auto;font-family:var(--font-mono);font-size:12px;color:var(--ink-mute);text-align:right;align-self:center}.stack-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(30px,5vw,64px)}.stack-intro p{color:var(--ink-dim);max-width:38ch;margin-top:16px}.stack-groups{columns:2;column-gap:40px}.stack-group{break-inside:avoid;-webkit-column-break-inside:avoid;margin-bottom:26px}.stack-group .stack-label{font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:14px;display:flex;align-items:center;gap:10px}.stack-group .stack-label:after{content:"";flex:1;height:1px;background:var(--line)}.chips{display:flex;flex-wrap:wrap;gap:10px}.chip{font-family:var(--font-mono);font-size:13px;padding:9px 14px;white-space:nowrap;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink-dim);transition:color .2s,border-color .2s,transform .2s,background .2s;cursor:default;display:inline-flex;align-items:center;gap:9px}.chip:before{content:"";width:6px;height:6px;border-radius:2px;background:var(--line-2);transition:background .2s}.chip:hover{color:var(--ink);border-color:var(--line-2);transform:translateY(-2px)}.chip:hover:before{background:var(--accent)}.projects{display:flex;flex-direction:column}.project-featured{border:1px solid var(--line-2);border-radius:16px;background:linear-gradient(160deg,color-mix(in oklch,var(--accent) 5%,var(--panel)),var(--panel) 60%);padding:clamp(22px,3vw,34px);margin-bottom:30px;position:relative;overflow:hidden}.project-featured:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 90% at 100% 0,color-mix(in oklch,var(--accent) 10%,transparent),transparent 55%)}.pf-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;position:relative;z-index:1}.pf-badge{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:8px}.pf-badge .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent)}.pf-link{font-family:var(--font-mono);font-size:13px;color:var(--ink-dim);text-decoration:none;border-bottom:1px solid var(--line-2);transition:color .2s,border-color .2s}.pf-link:hover{color:var(--accent);border-color:var(--accent)}.pf-body{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(24px,4vw,52px);align-items:center;position:relative;z-index:1}.pf-info h3{font-family:var(--font-display);font-weight:700;font-size:clamp(26px,3.4vw,38px);letter-spacing:-.02em;line-height:1.05}.pf-info h3 .g{color:var(--accent)}.pf-sub{color:var(--ink);font-size:15px;margin:6px 0 14px;font-weight:500}.pf-info p.pf-desc{color:var(--ink-dim);font-size:15px;line-height:1.65;max-width:52ch}.pf-flow{display:flex;flex-direction:column;gap:0;font-family:var(--font-mono)}.pf-step{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--ink-dim);padding:7px 0}.pf-step .n{color:var(--accent);font-size:11px;width:20px}.pf-flow .pf-conn{color:var(--ink-mute);font-size:11px;padding-left:5px}.project{display:grid;grid-template-columns:64px 1fr auto;gap:clamp(20px,4vw,48px);align-items:center;padding:34px 0;border-top:1px solid var(--line);text-decoration:none;color:var(--ink);position:relative;transition:padding-left .35s var(--ease)}.project:last-child{border-bottom:1px solid var(--line)}.project:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--accent);transform:scaleY(0);transform-origin:top;transition:transform .35s var(--ease)}.project:hover{padding-left:22px}.project:hover:before{transform:scaleY(1)}.project-idx{font-family:var(--font-mono);font-size:13px;color:var(--ink-mute)}.project-main h3{font-family:var(--font-display);font-weight:600;font-size:clamp(22px,3vw,32px);letter-spacing:-.01em;margin-bottom:8px;transition:color .2s}.project:hover .project-main h3{color:var(--accent)}.project-main p{color:var(--ink-dim);max-width:54ch;font-size:15.5px}.project-tags{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.project-tags span{font-family:var(--font-mono);font-size:11.5px;color:var(--ink-mute);padding:4px 9px;border:1px solid var(--line);border-radius:6px}.project-side{text-align:right;font-family:var(--font-mono);font-size:12.5px;color:var(--ink-mute);white-space:nowrap}.project-side .metric{color:var(--ink);font-size:15px;display:block;margin-bottom:4px}.project-side .metric b{color:var(--accent)}.project-arrow{width:40px;height:40px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;transition:transform .3s var(--ease),border-color .2s,background .2s;flex-shrink:0}.project:hover .project-arrow{transform:rotate(-45deg);border-color:var(--accent);background:var(--accent)}.project:hover .project-arrow svg{stroke:var(--accent-ink)}.project-arrow svg{width:16px;height:16px;stroke:var(--ink-dim);transition:stroke .2s}.timeline{display:flex;flex-direction:column;gap:0}.tl-item{display:grid;grid-template-columns:150px 1fr;gap:clamp(20px,4vw,50px);padding:30px 0;border-top:1px solid var(--line);position:relative}.tl-item:last-child{border-bottom:1px solid var(--line)}.tl-when{font-family:var(--font-mono);font-size:13px;color:var(--ink-mute);padding-top:4px}.tl-when .now{color:var(--accent)}.tl-body h4{font-family:var(--font-display);font-size:21px;font-weight:600;margin-bottom:4px}.tl-body .role{font-family:var(--font-mono);font-size:13px;color:var(--accent);margin-bottom:12px}.tl-body .role a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}.tl-body .role a:hover{border-color:var(--accent)}.tl-body p{color:var(--ink-dim);max-width:60ch;font-size:15px}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,80px);align-items:start}.about-text p{font-size:clamp(15px,1.4vw,17px);color:var(--ink-dim);line-height:1.7;margin-bottom:18px}.about-text p b{color:var(--ink);font-weight:600}.about-text .lead{color:var(--ink);font-size:clamp(18px,1.8vw,21px);font-family:var(--font-display);line-height:1.35;letter-spacing:-.01em}.about-aside{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:24px;font-family:var(--font-mono)}.about-aside .ar{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px dashed var(--line);font-size:13px}.about-aside .ar:last-child{border-bottom:0}.about-aside .ar .k{color:var(--ink-mute)}.about-aside .ar .v{color:var(--ink);text-align:right}.about-aside .ar .v.g{color:var(--accent)}.contact{margin-top:var(--section-gap);border-top:1px solid var(--line);padding:clamp(70px,12vh,150px) 0 60px}.contact-inner{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(40px,6vw,90px);align-items:end}.contact h2{font-family:var(--font-display);font-weight:700;font-size:clamp(40px,7vw,96px);line-height:.95;letter-spacing:-.03em;margin-bottom:30px}.contact h2 .accent{color:var(--accent)}.contact-mail{font-family:var(--font-mono);font-size:clamp(16px,2.2vw,22px);color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:12px;border-bottom:1px solid var(--line-2);padding-bottom:6px;transition:color .2s,border-color .2s,gap .2s}.contact-mail:hover{color:var(--accent);border-color:var(--accent);gap:18px}.contact-links{display:flex;flex-direction:column;gap:2px}.contact-links a{font-family:var(--font-mono);font-size:14px;color:var(--ink-dim);text-decoration:none;padding:14px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;transition:color .2s,padding-left .25s var(--ease)}.contact-links a:last-child{border-bottom:1px solid var(--line)}.contact-links a:hover{color:var(--accent);padding-left:10px}.contact-links a .ext{color:var(--ink-mute);transition:transform .2s}.contact-links a:hover .ext{transform:translate(2px,-2px)}.footer{border-top:1px solid var(--line);padding:26px var(--pad);display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:12px;color:var(--ink-mute);flex-wrap:wrap;gap:12px}.footer .ft-right{display:flex;align-items:center;gap:18px}.footer a{color:var(--ink-mute);text-decoration:none;transition:color .2s}.footer a:hover{color:var(--accent)}[data-reveal],[data-reveal-stagger]>*{opacity:1;transform:none}html.anim-ok [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}html.anim-ok [data-reveal].in{opacity:1;transform:none}html.anim-ok [data-reveal-stagger]>*{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease)}html.anim-ok [data-reveal-stagger].in>*{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html.anim-ok *{animation:none!important;transition:none!important}html.anim-ok [data-reveal],html.anim-ok [data-reveal-stagger]>*{opacity:1!important;transform:none!important}}@media(max-width:880px){.nav-links{display:none}.nav-toggle{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:13px;color:var(--ink);background:var(--panel);border:1px solid var(--line-2);border-radius:8px;padding:9px 13px;cursor:pointer}.hero-grid{grid-template-columns:1fr}.hero-card{display:none}.stack-layout{grid-template-columns:1fr}.stack-groups{columns:2}.about-layout{grid-template-columns:1fr}.contact-inner{grid-template-columns:1fr;align-items:start}.pf-body{grid-template-columns:1fr;gap:26px}.project{grid-template-columns:40px 1fr}.project-side{display:none}.tl-item{grid-template-columns:1fr;gap:8px}.section-meta{display:none}}.msheet{position:fixed;inset:0;z-index:60;background:color-mix(in oklch,var(--bg) 92%,transparent);backdrop-filter:blur(16px);display:flex;flex-direction:column;justify-content:center;padding:var(--pad);gap:6px;transform:translateY(-100%);transition:transform .5s var(--ease);pointer-events:none}.msheet.open{transform:none;pointer-events:auto}.msheet a{font-family:var(--font-display);font-size:32px;font-weight:600;color:var(--ink);text-decoration:none;padding:12px 0;border-bottom:1px solid var(--line);display:flex;align-items:baseline;gap:14px}.msheet a .idx{font-family:var(--font-mono);font-size:14px;color:var(--accent)}.msheet-close{position:absolute;top:20px;right:var(--pad);background:var(--panel);border:1px solid var(--line-2);color:var(--ink);width:42px;height:42px;border-radius:9px;cursor:pointer;font-size:18px}.theme-toggle{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid var(--line-2);border-radius:8px;background:var(--panel);color:var(--ink-dim);cursor:pointer;transition:color .2s,border-color .2s,transform .2s var(--ease)}.nav-links .theme-toggle{margin-left:8px}.theme-toggle:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-2px)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-toggle svg{width:16px;height:16px;display:block}.theme-toggle .icon-sun,.theme-toggle .icon-moon{display:inline-grid;place-items:center}:root[data-theme=dark] .theme-toggle .icon-moon{display:none}:root[data-theme=light] .theme-toggle .icon-sun{display:none}.msheet-foot{margin-top:22px;display:flex;align-items:center;gap:12px}.msheet-foot .theme-toggle{width:44px;height:44px}.msheet-foot .mf-label{font-family:var(--font-mono);font-size:13px;color:var(--ink-mute)}.cv-topbar{display:flex;align-items:center;justify-content:space-between;padding:22px var(--pad);border-bottom:1px solid var(--line);max-width:var(--maxw);margin:0 auto;gap:16px;flex-wrap:wrap}.cv-topbar .cv-topbar-actions{display:flex;align-items:center;gap:10px}.cv-back{font-family:var(--font-mono);font-size:13px;color:var(--ink-dim);text-decoration:none;padding:8px 14px;border-radius:7px;border:1px solid var(--line-2);transition:color .2s,border-color .2s}.cv-back:hover{color:var(--accent);border-color:var(--accent)}.cv{padding-top:clamp(40px,8vh,80px);padding-bottom:40px}.cv-head{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(24px,5vw,60px);align-items:end;padding-bottom:40px;border-bottom:1px solid var(--line)}.cv-name{font-family:var(--font-display);font-weight:700;font-size:clamp(40px,6vw,72px);line-height:.98;letter-spacing:-.03em;margin:16px 0 10px}.cv-name .accent{color:var(--accent)}.cv-role{font-family:var(--font-mono);font-size:clamp(13px,1.5vw,15px);color:var(--ink-dim)}.cv-contact{display:flex;flex-direction:column;gap:2px}.cv-contact a,.cv-contact .cv-loc{font-family:var(--font-mono);font-size:13px;color:var(--ink-dim);text-decoration:none;padding:9px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;transition:color .2s}.cv-contact a:last-of-type{border-bottom:1px solid var(--line)}.cv-contact a:hover{color:var(--accent)}.cv-contact .cv-loc,.cv-contact .ext{color:var(--ink-mute)}.cv-section{padding-top:clamp(48px,7vh,84px)}.cv-section .section-head{margin-bottom:34px}.cv-summary p{font-size:clamp(15px,1.4vw,17px);color:var(--ink-dim);line-height:1.7;margin-bottom:16px;max-width:70ch}.cv-summary p b{color:var(--ink);font-weight:600}.cv-summary p.lead{color:var(--ink);font-family:var(--font-display);font-size:clamp(18px,1.8vw,22px);line-height:1.35;letter-spacing:-.01em}.cv-stack{display:flex;flex-direction:column;gap:26px}.cv-extras{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 40px}.cv-extras .ar{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px dashed var(--line);font-family:var(--font-mono);font-size:13px}.cv-extras .ar .k{color:var(--ink-mute)}.cv-extras .ar .v{color:var(--ink);text-align:right}.cv-extras .ar .v.g{color:var(--accent)}@media(max-width:880px){.cv-head{grid-template-columns:1fr;align-items:start}}@media print{.bg-grid,.bg-glow,.noise,.cv-topbar,.footer{display:none!important}html,body{background:#fff!important;color:#111!important}.wrap{z-index:auto}.cv{padding-top:0}.cv-name,.cv-role,.section-title,.tl-body h4{color:#111!important}.cv-summary p,.tl-body p,.cv-contact a{color:#333!important}.accent,.section-num,.tl-when .now,.tl-body .role,.cv-extras .ar .v.g,.cv-name .accent{color:#0a7a4a!important}.chip,.about-aside,.cv-extras .ar{border-color:#ccc!important;background:#fff!important}.chip{color:#333!important}a{text-decoration:none}.cv-section{padding-top:28px;break-inside:avoid}.tl-item{break-inside:avoid}}:root[data-theme=light] .hero-card,:root[data-theme=light] .about-aside,:root[data-theme=light] .project-featured,:root[data-theme=light] .project{box-shadow:var(--panel-shadow)}
