@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-cyrillic-ext-400-normal-W3Dto7M0.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-400-normal-DLdKLAvx.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-cyrillic-400-normal-DD2KOZkl.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-400-normal-CVFrM67f.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-vietnamese-400-normal-6K-YXo6g.woff2) format("woff2"),url(/assets/cormorant-garamond-vietnamese-400-normal-4uxlocMh.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-ext-400-normal-Drx2k2n9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-400-normal-uvC0WHQr.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-normal-B-1hWBU7.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-400-normal-B7YtguxJ.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:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-cyrillic-ext-400-italic-BEGvmv_3.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-400-italic-C_Uk1MUY.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:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-cyrillic-400-italic-D3GtrbRZ.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-400-italic-AH1vqu4S.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-vietnamese-400-italic-BoXDRTEW.woff2) format("woff2"),url(/assets/cormorant-garamond-vietnamese-400-italic-CJpMwFnN.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:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-ext-400-italic-BdEzgT7i.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-400-italic-CQvLaSWn.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:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-italic-Dc_OZ8oc.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-400-italic-BLh7T8o8.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-cyrillic-ext-700-normal-Do0rx6yy.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-700-normal-BaW-xaxb.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-cyrillic-700-normal-SLG_-a_c.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-700-normal-D3uyJ5DH.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-vietnamese-700-normal--OtHbi1I.woff2) format("woff2"),url(/assets/cormorant-garamond-vietnamese-700-normal-GOTdnRS1.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-latin-ext-700-normal-CNjt5vTB.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-700-normal-qRbaVVD7.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-latin-700-normal-DajfzrDU.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-700-normal-O25Qpphb.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:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-cyrillic-ext-700-italic-NsDH2uls.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-700-italic-2UQlV184.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:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-cyrillic-700-italic-Cdx03uAH.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-700-italic-CFMfdyIu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-vietnamese-700-italic-Bevo937Z.woff2) format("woff2"),url(/assets/cormorant-garamond-vietnamese-700-italic-Bmaj8Mug.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:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-latin-ext-700-italic-BjnJtIVJ.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-700-italic-BzNLSFOF.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:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-latin-700-italic-1ifP4r4a.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-700-italic-Bzi8PaWU.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=) 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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2) format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,d09GMgABAAAAAASUABAAAAAACRAAAAQ3AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVEwAdBEICoRkg3oLIAABNgIkAzoEIAWFHgeBFAwHG3AHKB4HzukrRjyF5Gb4kQ/B873d17mv8TWkoqUUGaHodJCtoqntw7m8tiPWyGkfWDU/IMpzVk4zAs9Czv3c7Os5NvKFG1Ht9vBVXySRZpJc4tTrbM3sTRFcLa3zVboKWRIoAksKSKgqUQWEwlSoqjp44V5J9/kjd0+Fi5xaFjwJArgBAIJgIAgCCAI4CdNMqGuYXYUKdADLAkAAJwl6iX0+bZqEm1AH0Hu9rvrJHwxQG1Q/gFYwWYbgTRWgwEESVzbmtjQAt3DXO7Tu/+9Q/KNKWhTCgZ8fQSWoL0CUUgTBjgL8iEAcce7YHBeA8ZvogieCnxI0BCVeACCAAhBD/oDcAdUPABSgAX4kBPBTwjCAjwYSCneiqF65LUo/qXdYFrRwTujtMrKm07plTbSqLQFAiHBN7E4DG5wkiGXhCYBNETh3K/AciHN69iFfQjFOr9EXQQAAQXRNszs8PR0OH4fDV/dwGe76CHdj1MQa11DXYGcfZ6+B1X0OfwjY+i7KpQ1w9d+1z3/HydCB1f3U8A0fRFv+0bXxPWrZu3d9Nn4UcbLs/QCXLH/j3PCKblKOiZxLOR78W9brPo7eGTLz/F27ZPmePQdCB1YP4nJU91o4gU9cy64L3c3SPu8GfDn6ZXD2cGmllVqSxtD5vCXHm5xaeHlnpffx7DcPvXog5NnjA//cPz2btsz3yf+0MI8ri33tuv7upNbYmW5STbosW8bYItV/SPzxvXC0KnpWnFdC91oojit5Lyo6WcJQ1YzwBYbi52ohJVpcxfcHBqsv0nFz8U74rzS6M7r0RVlXZ3jJC4G92O//7Lm78VOtnUx+aQxAzsqPnrRr1t9zDrezKePvZ027x+fGte4s4NXu7/jEp3G9cM1bICYgACbuETUUD5wmenGXA/IBpAKVrl0AEJ5cqr6Q89tGq+SpqkDfX2DtG+pZ9teuae0AX98c301CX179InyErnSG8WCiABB4HFbVrw/lpTdBIOk82nXbpHKoQGyBpUovAAD4XQA8ZTUCeBJHIpI0v0FRrgcnckV3ANckrwYJKXEihQfdSKPER6XeExmEeEMmSe6QBwWmkZdmSOSthhibgIkBlUYreBKd/0NeVAE9WAyEaQpH6KikDWlUVg43Jy2FOmaYlsZhDEGZXO3mWEyWHI6zuaJkMlcSQ9k4F+KidIiFyZItGDc7r1pUj6wP6zrWB0/fbeeFeHl4YOvETMNiM8Ny+7OO6Qh2wur20YVxFts5dlORdl5Kwd5utR7SRcxqX8RA5Ehacha76hg7c6yzNm/Xf6vOLNrv544lIEkWg7xWo/ItBAeIJEmt0XgBwgM8gTifoiiLJroYYooNTeziEKe4zOoR/wvIKp89hSr+6jFAqw/LaonjmZHSscMNg4iPlWpFrO1RN3zkMU+/xUP+JQ99TbvTl1Vg0gtirT6lbwYAAAA=) 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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2) format("woff2"),url(/assets/jetbrains-mono-greek-500-normal-D7SFKleX.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAAQAABAAAAAACEwAAAOmAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbahwoBmA/U1RBVEgAZBEICoMkgmcLFgABNgIkAyYEIAWFNAdiDAcb3wYgngU5GW9qFpxcIlPzNPVjx7JSP3iet+s9971Zzn7Q8yEHG1C91aUi2aFP6j1c07wqko0ssGwl8RDyRPehgRL1M2Z+akJOifHwcbX3d1ZvWowiysMskA0v3NL0wohiuX//l5EDn7gc/6xs+9oikSbyg6LCvegvncOw87lpLFr4wF0a4AIKCLJtSQTXJ0FUc+nW+HePCPAAAEUITQhwS1VELdq2lyi7mSBClGUAfAiQcQoLURwIEAbFSTgpoQyQKZ5QAIQmFC1RkEIyQbp0pOgGEpLm3PgkW7FBndVwEN1qI7KmHk2wjgMoN/MuNwf0QzU7Z/j7kmFrZXIicgFQg/oLEmlS/KkQSoFU6jDNFoqGGVviKyYilIFgeICEGqgfEltBPQFQQINQmoBQhgEQgQJp4CdRoy9ui0o85+N8br7clI0pPwej4FsISZ8AAG4AocADpkJsAmKJAgaVDFMxCCmFTiMiwqAEjpMAFgtkLp3maM5wD/V4R2VGmtOOnpVldz6417+z3Hs/fjQ3vH/P8VTm8PUfPsiyszHmoVMsvf3e3PCx2Nz17t3UTWLjVinvrCiLufT6svGmhrWE6j1tzjbHRH9FSDV/huK83vrzvQ3fI6ndj0Zy4vGOxfHp5Y1xeSVeq2vI33SA3qppmjKsHF6ZEGh7/N5KGlGRkPj/ZcXKUFbp4I6/swFaqzO4Ma0xdWffCXO6Pk1bcMKYilvTUptzO3JeZGW9yGnPTWl2rULNEeDgdJnXYLs0jrQATKiT/q1eKoDq8x6fmt/6kqv5H9f6D+D76dxIgF8Hd4wmlf/C2bAnARD8c2b1CGD+x+Y/y3RXsZSaYiOmkDkC4A/SVw6msSjArYwhliYAAAAUAab1aFK6gHsy1ZSJ5GiRKf5RJtNa/MsMRW7JbKqsltnlGy71VyZZRzQe4YCJuAlcAgYBASK0IhA+h+aGwWGxiY5BNcKNFPyXRTSMIyJwXYs4fF3zMJaefnNbRz6JWyM8BCMQF4gQ1zGIwSL5COaageEcIIQVyWcpV6jaNCYBAB/3oC9fpXzFLGNS1cPDhIcenLt9c3odbByMS851lFpG5gSIfGIfNo4VsYQ1kdcJGCW/zusPwACXQSNgjSTBBhgOyzwy+zRO0LeRVF2TgEDPYsADhE8RQ4/8DQob9KVubTdI9VgUOrQYYhO7OOyNE6/83y22ZK7Ttxot1TzIenBoNZW4JkySwrgAB+bE17sUW2WXxLfqlLEJAA==) 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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-vietnamese-400-normal-Cg2kxhWu.woff2) format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-400-normal-B8TCSmUq.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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-latin-ext-400-normal-D127hM_v.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-400-normal-2ppkqaOR.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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-latin-400-normal-Dhut76fR.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-400-normal-BDKaGhyp.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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,d09GMgABAAAAAAQwABAAAAAACHQAAAPWAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbahwoBmA/U1RBVEQAZBEICoMkgmULFgABNgIkAyYEIAWFXgdiDAcbAwdRlE3OAiA/C2NnWmqDevE1lV86rytbx0YiXN7GJix16cheg+c///7dZ+Z+SEzSUhXoEkLHLqv//fu/tfY3nUm+g2lnlqwhYmnWZ232zf5BQiV0qzxKoR5UjVQLFR7+uVfv+5lDN4WzaUwPWEASTFvwak+Pl2rLqgUqWr/l7mqeJpR5FlJkbclrawv4WyBZaRDdxDX5/xelhdVKE4m2zbooInWEO19jURQVPvBuOvDkAcHeliEDXwoiZxo1/tstIsAWAChCaEKAtVDJ1GlxfR+yN4oBZBkAkwkC5GqIAOJAgDAoloQlxZUBIvkTCoDQhKLN8VKYRQwXjizagXkAs434JyuYQT2rCECN1YtcoBrzICIWQLla63ltC57YDcVwpmCYNY1OyAtAdew3EEiTvR8LrhQIpZ4sGxUNU3fqKTYIVwZ6wxb4twhACrICgAIauNIEuDI0Ahw50sBOoCL3fkMFiomxx/Jz8zHHWET500Ih1xCSmuAAwBqAK7AF44Bd4MsRYFApIMBjEJKlWhoePhvhmMSB1Ro5D2fWZibFkofp/bPMacp6vCkbxnNyp3atz66P1K75BuuPeXZe/3xXNlQfm0uF9U+mqV1rYHNKX80eoYGO1L5bZLBZ37LabkggZnym3HIxRqivANhY/1+NlKncG/kn6rGEPYd8ufSeriuFFF+iE7bqaWxa2cwaeQv2IOd05Pu/v386CWdDv/T35UJC4mam3WgqVPQregeerWBu3ebN2oUbvNYNa6rhi42eyuXw8IeI7mbYQmSZbagRBFiwdM8fzreS7vMYYAP1qq91voMA1Q4fa+5fH3DIfZZa/wf49R3rCfj7vreXVLqyajqYUwAEL5tOveUx/znVL7LYKlnPKrmnolmug3QdfFMwL6AAa+kMvjQBAACgCLB3Q4ZkrYDnMeuxRGJMWIp9xLO0Yn/tRhXLTLY7LHOxtrLspWtkOQoWz3RiK1gvGpDu7RYZwAZpLaN/Ac04HxVYgSgPozliYCw2tMGgYyTfNo8UIapRLkpAFNGCCkRsCIUiIwkSrKIRmBCKtK3CeNoWCJaOBovWO1eiGjtbu6AdMojvZ7gAkSxeogxJckwwIY7zRM50xcsSL0Wivtr+a7VlzZbxdGA3ZJE8avQ8Osn60jlc6Io43TCRLFEbA7XGAKPhvtpGjuUcBq3PuCISsnGiorvImzBPYPxsJFXbCM7XsRrn4tCVkKHD7hpFxJrGULWyNQj1JhQ6tBhiJuZiYV6k/hXAuNiagHXH+8Rkbte5sz8+pJaoJtH4Rg5JTJoeMxsvf4RbbhkZAA==) 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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-vietnamese-500-normal-DiU8zqi-.woff2) format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-500-normal-CvE5C8T-.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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-latin-ext-500-normal-9VZagAe1.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-500-normal-CqEEAICU.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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-latin-500-normal-Bf-nb4oT.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-500-normal-DYtqi0QS.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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,d09GMgABAAAAAAQcABAAAAAACIgAAAPAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbahwoBmA/U1RBVEQAZBEICoMogmULFgABNgIkAyYEIAWFbgdiDAcbEwcgnge2zWYrRGrW2DqMIvVrh6cG/6B/9ecmGb7Z3Q/IFcgSYAe7BJC/X2tvBdPop7KYypr+m92/iE0nEhIeMkO6SiJfo3oCmXALgMKT3MtvBPKJY8aL5MhAnUgFTTtot/MqGvHOs2lU9Q389/gPWGD8OnXqgVcTwoAOlml+fY8ISAAABiEsQkCcfJqR9RrMrkL5sN7YgnIcgPcI0ND+tgWFgADhMEQRUQzp0EAhDQgMAMIiDJZGIQw0QxcQglR7gIaTAJxem07kgZk/RAFNG1EPIqmPikUAw83adWYBsiTlOuSSfR4QSqV+uYBYAWCym1dALhRa/LaQDgnkQ44ZqGCCgsHPGkQJIh1aQkoANhOAoqYTABjAAulQCCZ961aAVCpRQBK5DLnlpEyuQ94T/Fr/y+9P+P6+tpe2EKiCkPekgIyzOB0gAQwALACyIQkcxisYPoeQo0Vdxox0UqqeqmCkgYx4y2BooMbXE6tdS7YDeeteTdtzKT7/TrH4xvv3gwV37zJ1VaZO8+/d07S1WYNNu5i6+2Kw4H7JYN2dOwOKxHpeyepQljdHsPpoGnc8Z7AqpeqGBtHxiIV+RCkJvVwuTza50nPJys9dUz5nzMrN/fWWXWob/8YVjM3kb7y63KydGR+YGNbat1O1Nnf72eOGw1t7d6vW5M7MrDmEiZ9XoOg04PBxEtup5mrNDdy0qDUPziYfVw7bRInVXCoWmYxZcvMFXJlxd3WrOJAFIIAIUfZw5V4co5j3UgAEYLbbT8PLfUCASVM8W/aXnim937L2JcDT/cUyAcCLrSu6UeK/TuuPMAYAwdtmNYcI8P8ZNcFsjcfMVKpdBkNmL3wDzEaKAUbCCCBOBTTZUBRazyAgmT1Y5GLAGU102aJcGrENyarCtjTwX+lo7BBVvLLDlHLNTqaCVXYqPs2W1NCdIrIkyFCvaAoQQOIa5z+BNhATyzIFYxlUvA0ilUyBrRCZVMMQg2CRweXwmMbSsWwYy2MFy+JQYFiGo1tamoNnU2VgjhSHypCC2GRpC8bNls4Wo9ROLoW+TmRvokIsHs1SGB2a9JBJMET+vGMHI6VLSgvG3tG8qxbMWNCzBMByXOYyUOzG1PYUSR+BZJyytzvh0YwxNo/VIEAsuvgmi2yIRsTDPIa4MAViU2pHHotDpuKvcXFSeIgpDUN0CHYqQ5RGIIpElfr+RKwdB/J5k8HKyimksCLh2n1+E6BbgTtCZZihUmTdNt4Hm5nhckW9+7pY/GgOVVCd79LCtL/Iz9rnFgEAAAA=) 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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-vietnamese-600-normal-Y4VTTRme.woff2) format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-600-normal-5YsyKbU1.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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-latin-ext-600-normal-DQgPU_Cg.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-600-normal-B0WRRYJ1.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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-latin-600-normal-DLTa1BUW.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-600-normal-BR_Ojra4.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,:root[data-theme=dark]{--bg: #111113;--bg-deep: #0a0a0c;--surface: #1a1a1f;--surface-2: #202027;--border: rgba(255, 255, 255, .07);--border-strong: rgba(255, 255, 255, .14);--mint: #a8d8c8;--lavender: #c4b5e8;--peach: #f4b8a4;--sky: #9ec8e8;--text: #f0eee8;--text-muted: #8a8a8f;--tag-peach-bg: rgba(244, 184, 164, .08);--tag-peach-bd: rgba(244, 184, 164, .22);--tag-sky-bg: rgba(158, 200, 232, .08);--tag-sky-bd: rgba(158, 200, 232, .22);--tag-mint-bg: rgba(168, 216, 200, .06);--link: var(--mint);--focus-ring: var(--mint);--pulse: #7ec9a8;--logo-dot: #c4b5e8;--logo-dot-on-light: #534ab7;--logo-glyph: #f0eee8;--logo-glyph-on-light: #111113;--logo-divider: rgba(255, 255, 255, .1);--text-primary: #f0eee8;--text-secondary: #8a8a8f;--font-display: "Cormorant Garamond", "Times New Roman", serif;--font-body: "Plus Jakarta Sans", -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace;--fs-hero: clamp(56px, 9vw, 132px);--fs-h2: clamp(32px, 3.5vw, 48px);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--sp-16: 64px;--sp-20: 80px;--sp-24: 96px;--r-sm: 4px;--r-md: 8px;--r-lg: 14px;--r-pill: 999px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .16s;--dur-med: .28s;--dur-slow: .4s;--container: 1200px;--gutter: 32px;--z-nav: 50;--z-terminal: 9999;--z-cursor: 99999}:root[data-theme=light]{--bg: #faf7f0;--bg-deep: #f1ede2;--surface: #ffffff;--surface-2: #f4f0e6;--border: rgba(24, 22, 30, .1);--border-strong: rgba(24, 22, 30, .22);--mint: #1f7a5e;--lavender: #5a44a8;--peach: #b3553a;--sky: #2a6a98;--text: #18161e;--text-muted: #5e5b66;--tag-peach-bg: rgba(179, 85, 58, .07);--tag-peach-bd: rgba(179, 85, 58, .3);--tag-sky-bg: rgba(42, 106, 152, .06);--tag-sky-bd: rgba(42, 106, 152, .28);--tag-mint-bg: rgba(31, 122, 94, .07);--pulse: #1f7a5e;--logo-dot: #534ab7;--logo-glyph: #111113;--logo-divider: rgba(0, 0, 0, .1);--text-primary: #18161e;--text-secondary: #5e5b66}html[data-theme=light] ::selection{background:var(--mint);color:#fff}html,body,.nav,.surface,.project-card,.xp-card,.proof-pill,.skill-tag,.tag-peach,.tag-sky,.terminal,.terminal-bar,.terminal-input-row,.footer{transition:background-color var(--dur-med) var(--ease-out-expo),color var(--dur-med) var(--ease-out-expo),border-color var(--dur-med) var(--ease-out-expo)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none}html,body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.7;overflow-x:hidden;width:100%}body{min-height:100vh}a{color:var(--link);text-decoration:none}button{font-family:inherit;cursor:pointer}::selection{background:var(--mint);color:var(--bg)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:2px}.container{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}@media(max-width:700px){:root,:root[data-theme]{--gutter: 20px}}.display{font-family:var(--font-display);font-weight:400;line-height:1.1;letter-spacing:-.01em}.mono{font-family:var(--font-mono)}.label-sc{font-family:var(--font-body);font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;color:var(--lavender)}.nav{position:fixed;top:0;left:0;right:0;z-index:var(--z-nav);padding:20px 0;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:color-mix(in oklab,var(--bg) 75%,transparent);border-bottom:1px solid transparent;container-type:inline-size;container-name:navbar}.nav.scrolled{border-bottom-color:var(--border)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-8)}.nav-inner>*{min-width:0}@container navbar (max-width: 1080px){.nav-inner,.nav-links{gap:var(--sp-4)}}.nav-brand{font-family:var(--font-display);font-size:20px;font-style:italic;color:var(--text);letter-spacing:-.01em;display:inline-flex}.nav-brand .nb-l{display:inline-block;font-style:normal;transition:font-style 0ms,transform .24s var(--ease-out-expo),color .24s;will-change:transform}.nav-brand:hover .nb-l{font-style:italic;color:var(--mint)}.nav-brand:hover .nb-l:nth-child(1){transition-delay:0ms}.nav-brand:hover .nb-l:nth-child(2){transition-delay:40ms}.nav-brand:hover .nb-l:nth-child(3){transition-delay:80ms}.nav-brand:hover .nb-l:nth-child(4){transition-delay:.12s}.nav-brand:hover .nb-l:nth-child(5){transition-delay:.16s}.nav-brand:hover .nb-l:nth-child(6){transition-delay:.2s}.nav-brand:hover .nb-l:nth-child(7){transition-delay:.24s}.nav-links{display:flex;gap:var(--sp-8);align-items:center;min-width:0}.nav-actions{display:flex;align-items:center;gap:var(--sp-4);margin-left:auto}.nav-design-scroll{display:flex;gap:var(--sp-6);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:4px}.nav-design-scroll::-webkit-scrollbar{display:none}.nav-design-scroll>*{scroll-snap-align:start;flex-shrink:0}@container navbar (max-width: 920px){.nav-links:not(.mobile-drawer-links) a:not(.nav-back-link){display:none!important}.nav-hamburger{display:flex!important}}.back-to-top{position:fixed;right:32px;bottom:32px;width:44px;height:44px;background:var(--surface);border:1px solid var(--border-strong);border-radius:50%;color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:150;transition:all var(--dur-med) var(--ease-out-expo);box-shadow:0 4px 20px #0003}.back-to-top:hover{background:var(--surface-2);transform:translateY(-4px);border-color:var(--mint);color:var(--mint)}.nav-links a,.nav-link-btn{font-size:13px;color:var(--text-muted);letter-spacing:.02em;transition:color var(--dur-fast) linear;background:none;border:none;padding:0;position:relative}.nav-links a:hover,.nav-link-btn:hover{color:var(--text)}.nav-link-btn:after,.nav-links a:not(.nav-term):not(.nav-brand):after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:var(--mint);transform-origin:left center;transform:scaleX(0);transition:transform .24s var(--ease-out-expo)}.nav-link-btn:hover:after,.nav-links a:not(.nav-term):not(.nav-brand):hover:after{transform:scaleX(1)}.nav-term{font-family:var(--font-mono);font-size:12px;padding:8px 14px;border:1px solid var(--border-strong);border-radius:var(--r-sm);color:var(--mint);background:transparent}.nav-term:hover{border-color:var(--mint);background:var(--tag-mint-bg)}.theme-toggle{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;height:32px;padding:0 12px;border:1px solid var(--border-strong);border-radius:var(--r-sm);background:transparent;color:var(--text-muted);position:relative;overflow:hidden;transition:color var(--dur-fast) linear,border-color var(--dur-fast) linear,background var(--dur-fast) linear}.theme-toggle .tt-prompt{color:var(--mint);font-weight:500;transition:transform var(--dur-fast)}.theme-toggle .tt-icon{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;color:var(--mint);transition:transform .6s var(--ease-out-expo)}.theme-toggle .tt-icon svg{width:14px;height:14px;display:block}.theme-toggle .tt-label{text-transform:lowercase;color:var(--text)}.theme-toggle:hover{border-color:var(--mint);background:var(--tag-mint-bg)}.theme-toggle:hover .tt-prompt{transform:translate(2px)}.theme-toggle:hover .tt-icon{transform:rotate(20deg)}.theme-toggle:active{transform:translateY(1px)}.theme-toggle:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,color-mix(in oklab,var(--mint) 35%,transparent) 50%,transparent 100%);transform:translate(-110%);pointer-events:none}.theme-toggle.is-flashing:after{animation:tt-flash .6s var(--ease-out-expo) forwards}.theme-toggle.is-flashing .tt-icon{animation:tt-spin .6s var(--ease-out-expo)}@keyframes tt-flash{0%{transform:translate(-110%)}to{transform:translate(110%)}}@keyframes tt-spin{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.4)}to{transform:rotate(360deg) scale(1)}}html.is-theme-flipping,html.is-theme-flipping body,html.is-theme-flipping .nav,html.is-theme-flipping .hero,html.is-theme-flipping .section,html.is-theme-flipping .project-card,html.is-theme-flipping .xp-card,html.is-theme-flipping .skill-group,html.is-theme-flipping .skill-tag,html.is-theme-flipping .about-deco,html.is-theme-flipping .contact-row,html.is-theme-flipping .footer,html.is-theme-flipping .proof,html.is-theme-flipping .proof-pill{transition:background-color .38s var(--ease-out-expo),color .38s var(--ease-out-expo),border-color .38s var(--ease-out-expo)!important}.mobile-drawer-overlay{position:fixed;inset:0;background:color-mix(in oklab,#0a0a0c 85%,transparent);backdrop-filter:blur(32px) saturate(180%);-webkit-backdrop-filter:blur(32px) saturate(180%);z-index:200;display:flex;flex-direction:column;padding:120px 40px;border-left:1px solid rgba(255,255,255,.05);box-shadow:-20px 0 50px #00000080}.mobile-drawer-links{display:flex;flex-direction:column;gap:var(--sp-6)}.mobile-drawer-links a{font-family:var(--font-display);font-size:32px;color:var(--text);text-decoration:none;font-weight:500;text-wrap:balance}.nav-hamburger{display:none;align-items:center;justify-content:center;width:38px;height:38px;background:transparent;border:1px solid var(--border-strong);border-radius:50%;color:var(--text);cursor:pointer;z-index:210;transition:all var(--dur-med) var(--ease-out-expo)}.nav-hamburger:hover{border-color:var(--mint);color:var(--mint);transform:translateY(-2px)}.nav-hamburger:active{transform:translateY(0)}@media(max-width:720px){.nav-link-btn{display:none}.hide-on-mobile{display:none!important}}.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:140px 0 var(--sp-24);overflow:hidden}.hero>.container{width:100%}.hero-status{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted)}.hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-6);margin-bottom:var(--sp-12)}.hero-loc{display:inline-flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted)}.hero-loc svg{width:11px;height:11px;color:var(--peach)}.pulse{position:relative;width:8px;height:8px;border-radius:50%;background:var(--pulse)}.pulse:after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--pulse);animation:pulse-ring 9s ease-out 2s infinite;opacity:0}@keyframes pulse-ring{0%{transform:scale(1);opacity:.5}18%,to{transform:scale(2.4);opacity:0}}.pulse-glow{animation:none}.hero-title{font-family:var(--font-display);font-weight:400;font-size:var(--fs-hero);line-height:1.02;letter-spacing:-.02em;margin:0 0 var(--sp-6);max-width:16ch}.hero-title em{font-style:italic;font-weight:400;color:var(--lavender)}.hero-tagline{font-size:18px;color:var(--text-muted);line-height:1.5;max-width:54ch;margin:0 0 var(--sp-12)}.hero-tagline strong{color:var(--text);font-weight:500}.hero-ctas{display:flex;gap:var(--sp-4);flex-wrap:wrap}.hero-quiet{display:flex;gap:var(--sp-6);flex-wrap:wrap;margin-top:var(--sp-5)}.hero-quiet-link{font:inherit;font-family:var(--font-mono);font-size:12px;color:var(--text-muted);background:none;border:0;padding:6px 0;cursor:pointer;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:4px;transition:color var(--dur-fast),text-decoration-color var(--dur-fast)}.hero-quiet-link:hover,.hero-quiet-link:focus-visible{color:var(--text);text-decoration-color:var(--mint)}.hero-quiet-link .prompt{color:var(--mint)}.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:var(--r-sm);font-size:14px;font-weight:500;border:1px solid var(--border-strong);background:transparent;color:var(--text);transition:border-color var(--dur-fast),color var(--dur-fast),background var(--dur-fast),transform var(--dur-fast)}.btn:hover{transform:translateY(-1px)}.btn-ghost-mint{border-color:var(--mint);color:var(--mint)}.btn-ghost-mint:hover{background:color-mix(in oklab,var(--mint) 10%,transparent)}.btn-term{font-family:var(--font-mono);font-size:13px;color:var(--text);border-color:var(--border-strong)}.btn-term:hover{border-color:var(--text)}.btn-mono{font-family:var(--font-mono);font-size:13px}.btn-term .prompt{color:var(--mint)}.stagger>*{opacity:0;transform:translateY(10px);animation:stagger-in .9s var(--ease-out-expo) forwards}.stagger>*:nth-child(1){animation-delay:.1s}.stagger>*:nth-child(2){animation-delay:.16s}.stagger>*:nth-child(3){animation-delay:.22s}.stagger>*:nth-child(4){animation-delay:.28s}.stagger>*:nth-child(5){animation-delay:.34s}.stagger>*:nth-child(6){animation-delay:.4s}@keyframes stagger-in{to{opacity:1;transform:translateY(0)}}.hero-title .ht-line{display:block;opacity:0;transform:translateY(6px);animation:ht-settle .7s var(--ease-out-expo) forwards}.hero-title .ht-line:nth-child(1){animation-delay:.36s}.hero-title .ht-line:nth-child(2){animation-delay:.44s}.hero-title .ht-line:nth-child(3){animation-delay:.72s}@keyframes ht-settle{to{opacity:1;transform:translateY(0)}}.hero-title em.bloom{position:relative;display:inline-block}.hero-title em.bloom:after{content:"";position:absolute;left:0;right:0;bottom:.04em;height:1px;background:var(--lavender);transform-origin:left center;transform:scaleX(0);animation:bloom-sweep .6s 1.1s var(--ease-out-expo) forwards;opacity:.55}@keyframes bloom-sweep{to{transform:scaleX(1)}}.proof{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:var(--sp-8) 0;background:var(--bg);animation:slide-from-left .7s .8s var(--ease-out-expo) both}@keyframes slide-from-left{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.proof-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4);row-gap:var(--sp-3)}.proof-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--border);border-radius:var(--r-pill);font-size:13px;color:var(--text-muted);background:var(--surface)}.proof-pill .dot{width:5px;height:5px;border-radius:50%;background:var(--lavender)}.proof-pill.is-active .dot{background:var(--pulse)}.proof-pill.is-link{color:var(--text-muted);text-decoration:none;transition:border-color var(--dur-fast),color var(--dur-fast)}.proof-pill.is-link:hover,.proof-pill.is-link:focus-visible{border-color:var(--mint);color:var(--text)}@media(max-width:700px){.proof{padding:var(--sp-6) 0}.proof-row{gap:var(--sp-2) var(--sp-5)}.proof-pill{padding:2px 0;border:none;background:none}}.proof-pill strong{color:var(--text);font-weight:500}.section{padding:var(--sp-20) 0 var(--sp-8)}.section:last-of-type{padding-bottom:var(--sp-20)}@media(max-width:700px){.section{padding:var(--sp-16) 0 var(--sp-4)}.section:last-of-type{padding-bottom:var(--sp-16)}}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-8);margin-bottom:var(--sp-12)}.section-title{font-family:var(--font-display);font-weight:400;font-size:var(--fs-h2);line-height:1.1;letter-spacing:-.01em;margin:0;color:var(--text);text-wrap:balance}.section-title em{font-style:italic;color:var(--lavender)}.section-head .count{font-family:var(--font-mono);font-size:12px;color:var(--text-muted)}.reveal{opacity:0;transform:translateY(10px);transition:opacity .6s var(--ease-out-expo),transform .6s var(--ease-out-expo)}.reveal.in{opacity:1;transform:translateY(0)}.scroll-reveal,.scroll-reveal-left{opacity:0}.contact-h em,.about-text h2 em{position:relative;display:inline-block}.contact-h em:after,.about-text h2 em:after{content:"";position:absolute;left:0;right:0;bottom:.04em;height:1px;background:currentColor;transform-origin:left center;transform:scaleX(0);opacity:0;transition:transform .6s var(--ease-out-expo),opacity .2s}.contact-h.reveal.in em:after,.about-text.reveal.in h2 em:after{transform:scaleX(1);opacity:.55;transition-delay:.2s}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-6)}@media(max-width:820px){.projects-grid{grid-template-columns:1fr}}.project-card{position:relative;padding:var(--sp-8);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);display:flex;flex-direction:column;gap:var(--sp-5);min-height:280px;transition:transform var(--dur-med) var(--ease-out-expo),border-color var(--dur-med) var(--ease-out-expo),background var(--dur-med) var(--ease-out-expo);text-decoration:none;color:inherit}.project-card:hover{transform:translateY(-4px);border-color:var(--accent, var(--mint));background:var(--surface-2)}.project-card.featured{grid-column:span 2;min-height:340px}@media(max-width:820px){.project-card.featured{grid-column:span 1}}.project-card-top{display:flex;justify-content:space-between;align-items:flex-start}.project-index{font-family:var(--font-mono);font-size:12px;color:var(--text-muted)}.project-card-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px 14px;font-family:var(--font-mono);font-size:12px;color:var(--text-muted)}.project-status{display:inline-flex;align-items:center;gap:6px}.project-status .status-dot{width:6px;height:6px;border-radius:50%;border:1px solid var(--text-muted)}.project-status.status-live{color:var(--text)}.project-status.status-live .status-dot{background:var(--pulse);border-color:var(--pulse)}.project-status.status-released .status-dot{background:var(--mint);border-color:var(--mint)}.project-year{font-family:var(--font-mono);font-size:12px;color:var(--text-muted)}.project-title{font-family:var(--font-display);font-weight:400;font-size:38px;line-height:1.1;letter-spacing:-.01em;margin:0;color:var(--text)}.project-card.featured .project-title{font-size:52px}.project-desc{color:var(--text-muted);font-size:15px;line-height:1.6;margin:0;max-width:52ch}.project-tags{display:flex;flex-wrap:wrap;gap:6px}.tag-peach{display:inline-flex;padding:4px 10px;border-radius:var(--r-pill);background:var(--tag-peach-bg);border:1px solid var(--tag-peach-bd);color:var(--peach);font-size:11px;font-family:var(--font-mono);letter-spacing:.02em}.tag-sky{display:inline-flex;padding:4px 10px;border-radius:var(--r-pill);background:var(--tag-sky-bg);border:1px solid var(--tag-sky-bd);color:var(--sky);font-size:11px;font-family:var(--font-mono);letter-spacing:.02em}.project-footer{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:var(--sp-4);border-top:1px solid var(--border)}.project-footer .gh{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12px;color:var(--text-muted);transition:color var(--dur-fast)}.project-card:hover .gh{color:var(--text)}.project-footer .arrow{font-size:20px;color:var(--text-muted);transition:transform var(--dur-med) var(--ease-out-expo),color var(--dur-med)}.project-card:hover .arrow{transform:translate(4px);color:var(--mint)}.project-index{opacity:0;transform:rotate(-90deg);transition:opacity .6s var(--ease-out-expo),transform .6s var(--ease-out-expo)}.project-card.in .project-index{opacity:1;transform:rotate(0)}.tag-peach.pop{opacity:0;transform:scale(.92);transition:opacity .4s var(--ease-out-expo),transform .4s var(--ease-out-expo)}.project-card.in .tag-peach.pop{opacity:1;transform:scale(1)}.arrow-stack{position:relative;display:inline-block;width:24px;height:24px}.arrow-stack .arrow{position:absolute;inset:0;display:inline-flex;align-items:center;justify-content:flex-start}.arrow-stack .arrow-ghost{color:var(--mint);opacity:0;transform:translate(0);transition:transform var(--dur-med) var(--ease-out-expo) 60ms,opacity var(--dur-med) 60ms}.project-card:hover .arrow-stack .arrow-ghost{opacity:.35;transform:translate(4px)}.xp-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-10);display:flex;flex-direction:column;gap:var(--sp-8);margin-bottom:var(--sp-6)}.xp-card-link{color:inherit;text-decoration:none;transition:opacity .7s var(--ease-out-expo),transform .7s var(--ease-out-expo),border-color var(--dur-med),background-color var(--dur-med)}.xp-card-link:hover,.xp-card-link:focus-visible{border-color:color-mix(in srgb,var(--accent, var(--mint)) 55%,var(--border));background:var(--surface-2)}@media(max-width:720px){.xp-card{padding:var(--sp-6)}}.xp-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-4) var(--sp-6);padding-bottom:var(--sp-6);border-bottom:1px solid var(--border)}.xp-company{font-family:var(--font-display);font-weight:400;font-size:clamp(28px,3.2vw,38px);line-height:1.1;color:var(--text);margin:0;flex:1 1 auto}.xp-role{color:var(--lavender);font-size:14px;font-weight:500;letter-spacing:.01em;margin:0;white-space:nowrap}.xp-date{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:12px;color:var(--text-muted);white-space:nowrap}.xp-date .live{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border:1px solid rgba(168,216,200,.3);border-radius:var(--r-pill);color:var(--mint);font-size:11px;text-transform:uppercase;letter-spacing:.12em}.xp-date .live .pulse{width:5px;height:5px}.xp-bullets{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-4)}.xp-bullets li{display:flex;align-items:baseline;gap:var(--sp-3);font-size:15px;line-height:1.65;color:var(--text)}.xp-bullets li>span{flex:1 1 auto;min-width:0}.xp-bullets li b{font-weight:500;color:var(--text)}.xp-bullets li:before{content:"→";color:var(--mint);font-family:var(--font-mono);font-size:14px;flex-shrink:0;width:16px;overflow:hidden;white-space:nowrap;opacity:0;transform:translate(-8px);transition:opacity .5s var(--ease-out-expo),transform .5s var(--ease-out-expo)}.xp-card.in .xp-bullets li:before{opacity:1;transform:translate(0)}.xp-card.in .xp-bullets li:nth-child(1):before{transition-delay:.2s}.xp-card.in .xp-bullets li:nth-child(2):before{transition-delay:.28s}.xp-card.in .xp-bullets li:nth-child(3):before{transition-delay:.36s}.xp-card.in .xp-bullets li:nth-child(4):before{transition-delay:.44s}.live-pulse{animation:live-border-pulse 10s ease-in-out infinite}@keyframes live-border-pulse{0%,80%,to{border-color:var(--border-strong)}90%{border-color:#a8d8c873}}.tag-sky.float-in{opacity:0;transform:translateY(4px);transition:opacity .4s var(--ease-out-expo),transform .4s var(--ease-out-expo)}.xp-card.in .tag-sky.float-in{opacity:1;transform:translateY(0)}.xp-stack{margin:0;padding-top:var(--sp-6);border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:6px}.xp-stack-label{width:100%;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--sp-3);font-family:var(--font-mono)}.skills-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-8)}@media(max-width:960px){.skills-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.skills-grid{grid-template-columns:1fr}}.skill-group-label{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted);margin:0 0 var(--sp-5);padding-bottom:var(--sp-3);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.skill-group-label .num{font-family:var(--font-mono);letter-spacing:0}.skill-tags{display:flex;flex-wrap:wrap;gap:6px}.skill-group-header{display:flex;gap:.5ch;margin-bottom:var(--sp-3);font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--text-muted)}.skill-bracket{color:var(--sky)}.skill-tag{padding:6px 12px;background:var(--tag-sky-bg);border:1px solid var(--tag-sky-bd);color:var(--sky);border-radius:var(--r-sm);font-size:12px;font-family:var(--font-mono);letter-spacing:.01em}.skill-tag.cascade{opacity:0;transform:translateY(6px);transition:opacity .36s var(--ease-out-expo),transform .36s var(--ease-out-expo)}.skill-group.in .skill-tag.cascade{opacity:1;transform:translateY(0)}.about-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:var(--sp-16);align-items:start}@media(max-width:820px){.about-grid{grid-template-columns:1fr;gap:var(--sp-10)}}.about-text h2{font-family:var(--font-display);font-weight:400;font-size:var(--fs-h2);line-height:1.1;margin:0 0 var(--sp-6);letter-spacing:-.01em;max-width:18ch}.about-text h2 em{font-style:italic;color:var(--lavender)}.about-text p{color:var(--text-muted);font-size:17px;line-height:1.7;max-width:54ch;margin:0 0 var(--sp-4)}.about-text p strong{color:var(--text);font-weight:500}.about-deco{display:flex;justify-content:flex-end;position:relative;padding-top:70px}@media(max-width:820px){.about-deco{justify-content:flex-start;padding-top:0}}.about-deco-terminal{width:100%;max-width:420px;background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--r-md);font-family:var(--font-mono);font-size:13px;line-height:1.7;color:var(--text);overflow:hidden}.adt-bar{display:flex;gap:6px;padding:12px 16px;border-bottom:1px solid var(--border)}.adt-dot{width:8px;height:8px;border-radius:50%;border:1px solid var(--border-strong)}.adt-body{padding:16px 18px 20px;min-height:9.5em}.adt-line{display:flex;gap:1ch;white-space:pre-wrap;overflow-wrap:anywhere}.adt-prompt{color:var(--mint);flex-shrink:0}.adt-out{color:var(--text-muted)}.adt-dim{color:var(--text-muted);opacity:.7}.adt-mint{color:var(--mint)}.adt-blink{color:var(--mint);margin-left:1px;animation:adt-blink 1s steps(1) infinite}@keyframes adt-blink{50%{opacity:0}}.about-deco-num{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:clamp(180px,28vw,360px);line-height:1;color:transparent;-webkit-text-stroke:1px var(--lavender);opacity:.55;user-select:none}.about-deco-label{position:absolute;bottom:12%;right:6%;font-family:var(--font-mono);font-size:11px;color:var(--text-muted);letter-spacing:.18em;text-transform:uppercase}.about-deco-ring{position:absolute;inset:18%;border:1px solid var(--border);border-radius:50%}.spin-slow{animation:spin-slow 60s linear infinite}@keyframes spin-slow{to{transform:rotate(360deg)}}.contact-wrap>*{max-width:900px}.contact-h{font-family:var(--font-display);font-weight:400;font-size:clamp(48px,7vw,96px);line-height:1.05;margin:0 0 var(--sp-12);letter-spacing:-.02em}.contact-h em{font-style:italic;color:var(--mint)}.contact-links{border-top:1px solid var(--border)}.contact-row{display:grid;grid-template-columns:1fr 2fr auto;gap:var(--sp-4);align-items:center;padding:var(--sp-8) 0;border-bottom:1px solid var(--border);color:inherit;position:relative}.contact-row:before{content:"";position:absolute;left:0;top:50%;width:18px;height:1px;background:var(--mint);transform:scaleX(0);transform-origin:left center;transition:transform var(--dur-med) var(--ease-out-expo)}.contact-row:hover:before{transform:scaleX(1)}.contact-value{transition:transform var(--dur-med) var(--ease-out-expo)}.contact-row:hover .contact-value{transform:translate(32px)}.contact-label{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--text-muted);transition:transform var(--dur-med) var(--ease-out-expo),color var(--dur-fast)}.contact-row:hover .contact-label{transform:translate(30px);color:var(--mint)}.contact-value{font-family:var(--font-body);font-size:clamp(16px,1.5vw,19px);color:var(--text);overflow-wrap:anywhere}.contact-note{margin:var(--sp-6) 0 0;font-family:var(--font-mono);font-size:12px;color:var(--text-muted)}.contact-arrow{color:var(--text-muted);font-family:var(--font-mono);transition:color var(--dur-fast),transform var(--dur-med)}.contact-row:hover .contact-arrow{color:var(--mint);transform:translate(4px)}@media(max-width:640px){.contact-row{grid-template-columns:1fr;gap:var(--sp-2);padding:var(--sp-6) 0}.contact-arrow{display:none}}.footer{border-top:1px solid var(--border);padding:var(--sp-10) var(--gutter);display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:12px;color:var(--text-muted);gap:var(--sp-4);flex-wrap:wrap}.footer a{color:var(--text-muted);display:inline-block;padding:12px 2px;margin:-12px -2px}.footer a:hover{color:var(--text)}.terminal{position:fixed;inset:0;background:var(--bg-deep);z-index:var(--z-terminal);display:none;flex-direction:column;font-family:var(--font-mono);font-size:14px;color:var(--text);opacity:0;transition:opacity .4s var(--ease-out-expo)}.terminal.open{display:flex;opacity:1}.terminal-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-bottom:1px solid var(--border);font-size:12px;color:var(--text-muted);letter-spacing:.02em}.terminal-bar .title{display:flex;align-items:center;gap:14px}.terminal-bar .dots{display:inline-flex;gap:6px}.terminal-bar .dots span{width:10px;height:10px;border-radius:50%;background:var(--border-strong)}.terminal-bar .dots span:first-child{background:var(--peach)}.terminal-bar .dots span:nth-child(2){background:var(--lavender)}.terminal-bar .dots span:last-child{background:var(--mint)}.terminal-bar .close{background:none;border:1px solid var(--border);color:var(--text-muted);width:28px;height:28px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);transition:color var(--dur-fast),border-color var(--dur-fast)}.terminal-bar .close:hover{color:var(--text);border-color:var(--text)}.terminal-body{flex:1;overflow-y:auto;padding:24px 28px 12px;line-height:1.7;scroll-behavior:smooth}.terminal-body .line{white-space:pre-wrap;word-break:break-word}.terminal-body .sys{color:var(--text-muted)}.terminal-body .ok{color:var(--mint)}.terminal-body .warn{color:var(--peach)}.terminal-body .info{color:var(--sky)}.terminal-body .label{color:var(--lavender)}.terminal-body .cmd{color:var(--text)}.terminal-body .cmd .prompt{color:var(--mint)}.terminal-body table{border-collapse:collapse;margin:8px 0}.terminal-body td{padding:2px 22px 2px 0;vertical-align:top}.terminal-body td.k{color:var(--text-muted);white-space:nowrap}.terminal-body td.v{color:var(--text)}.terminal-body .ascii{color:var(--mint);line-height:1.15;font-size:12px;white-space:pre}.terminal-body ul{list-style:none;padding:0;margin:4px 0}.terminal-body .proj{border-left:2px solid var(--border);padding:4px 0 4px 14px;margin:8px 0}.terminal-body .proj .ptitle{color:var(--text)}.terminal-body .proj .pdesc{color:var(--text-muted)}.terminal-input-row{display:flex;align-items:center;padding:14px 28px 22px;border-top:1px solid var(--border);gap:10px}.terminal-input-row .prompt{color:var(--mint);white-space:nowrap}.terminal-input-row input{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-family:var(--font-mono);font-size:14px;caret-color:transparent;padding:0}@keyframes terminal-blink{0%,to{opacity:1}50%{opacity:0}}.terminal-cursor{animation:terminal-blink 1s step-end infinite}@media(hover:hover)and (pointer:fine){html.has-custom-cursor body,html.has-custom-cursor a,html.has-custom-cursor button,html.has-custom-cursor [data-cursor-hover]{cursor:none}html.has-custom-cursor input,html.has-custom-cursor textarea{cursor:text}}.cursor-dot{position:fixed;top:-4px;left:-4px;width:8px;height:8px;background:var(--mint);border-radius:50%;pointer-events:none;z-index:var(--z-cursor);opacity:0;will-change:transform;transition:opacity .2s ease}.cursor-dot.cursor-active{opacity:1}.cursor-dot.cursor-hovering{opacity:0}.cursor-ring{position:fixed;top:-18px;left:-18px;width:36px;height:36px;border:1.5px solid var(--mint);border-radius:50%;background:transparent;pointer-events:none;z-index:var(--z-cursor);opacity:0;will-change:transform;transition:border-color .3s ease,opacity .2s ease}.cursor-ring.cursor-active{opacity:1}.cursor-ring.cursor-hovering{border-color:var(--lavender)}.markdown-content{font-size:16px;line-height:1.8;color:var(--text-muted)}.markdown-content h1{font-family:var(--font-display);font-weight:400;font-size:clamp(32px,4vw,52px);line-height:1.1;letter-spacing:-.01em;color:var(--text);margin:3rem 0 1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.markdown-content h2{font-family:var(--font-display);font-weight:400;font-size:clamp(24px,3vw,38px);line-height:1.15;letter-spacing:-.01em;color:var(--text);margin:2.5rem 0 1rem}.markdown-content h3{font-family:var(--font-mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--lavender);margin:2rem 0 .75rem}.markdown-content h4,.markdown-content h5,.markdown-content h6{font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin:1.5rem 0 .5rem}.markdown-content p{margin:0 0 1.4rem;line-height:1.8}.markdown-content strong{color:var(--text);font-weight:500}.markdown-content em{color:var(--text);font-style:italic}.markdown-content code:not(pre code){background:var(--surface-2);color:var(--peach);font-family:var(--font-mono);padding:2px 7px;border-radius:3px;font-size:.88em;border:1px solid var(--border)}.markdown-content pre{background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:22px 24px;margin-bottom:2rem;overflow-x:auto;font-family:var(--font-mono);font-size:13px;line-height:1.65;position:relative}.markdown-content pre:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,var(--mint),transparent);opacity:.4}.markdown-content blockquote{border-left:2px solid var(--mint);padding:4px 0 4px 20px;margin:0 0 1.5rem;color:var(--text-muted);font-style:italic}.markdown-content table{width:100%;border-collapse:collapse;margin-bottom:2rem;font-size:14px;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.markdown-content th{background:var(--surface);color:var(--text);text-align:left;padding:10px 14px;border-bottom:1px solid var(--border-strong);font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.markdown-content td{padding:10px 14px;border-bottom:1px solid var(--border);color:var(--text-muted)}.markdown-content tr:hover td{background:var(--surface);color:var(--text)}.markdown-content a{color:var(--mint);transition:opacity .16s}.markdown-content a:hover{opacity:.7;text-decoration:underline}.markdown-content img{max-width:100%;border-radius:4px;margin-bottom:2rem;border:1px solid var(--border)}.markdown-content ul,.markdown-content ol{padding-left:20px;margin-bottom:1.5rem}.markdown-content ul{list-style:none;padding-left:0}.markdown-content ul li{padding-left:20px;position:relative;margin-bottom:6px}.markdown-content ul li:before{content:"→";position:absolute;left:0;color:var(--mint);font-family:var(--font-mono);font-size:12px}.markdown-content ol li{margin-bottom:6px}.markdown-content hr{border:none;border-top:1px solid var(--border);margin:2.5rem 0}.markdown-content details{border:1px solid var(--border);border-radius:4px;padding:12px 16px;margin-bottom:1.5rem}.markdown-content summary{cursor:pointer;color:var(--text);font-weight:500}.resume-board{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--sp-6);padding-bottom:var(--sp-24)}.rc{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-8);position:relative;min-width:0;box-sizing:border-box}.rc-label{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--sp-5)}.rc-role{font-family:var(--font-mono);font-size:11px;color:var(--lavender);letter-spacing:.16em;text-transform:uppercase;margin:0 0 4px}.rc-when{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);margin:0 0 var(--sp-5)}.rc-edu-entry{margin-bottom:var(--sp-5)}.rc-edu-entry:last-child{margin-bottom:0}.rc-edu-entry+.rc-edu-entry{padding-top:var(--sp-5);border-top:1px solid var(--border)}.rc-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.rc-list li{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.6;color:var(--text)}.rc-list li:before{content:"→";color:var(--mint);font-family:var(--font-mono);font-size:11px;padding-top:2px;flex-shrink:0}.rc-list li span{flex:1;min-width:0}.rc-list li b{font-weight:500}.rc-skills-tbl{display:grid;grid-template-columns:140px 1fr;row-gap:var(--sp-3);column-gap:var(--sp-5);align-items:start}.rc-s-cat{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);padding-top:5px}.rc-proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-6)}.rc-proj-item{padding:var(--sp-5);border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg);transition:border-color var(--dur-med) var(--ease-out-expo)}.rc-proj-item:hover{border-color:var(--mint)}.s-7{grid-column:1 / span 7}.s-5{grid-column:8 / span 5}.s-8{grid-column:1 / span 8}.s-4{grid-column:9 / span 4}.s-12{grid-column:1 / span 12}@media(max-width:880px){.resume-board>*{grid-column:1 / -1!important}.rc-proj-grid{grid-template-columns:1fr 1fr}.rc-skills-tbl{grid-template-columns:120px 1fr}}@media(max-width:560px){.rc-proj-grid,.rc-skills-tbl{grid-template-columns:1fr}.rc-s-cat{padding-top:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.hero-title .ht-line{animation:none;opacity:1;transform:none}.hero-title em.bloom:after,.contact-h em:after,.about-text h2 em:after{display:none}.pulse-glow,.spin-slow,.live-pulse{animation:none}}.proj-nav{max-width:900px;margin:0 auto;padding:0 32px 96px}.proj-nav-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4);border-top:1px solid var(--border);padding-top:var(--sp-8)}.proj-nav-link{display:flex;flex-direction:column;gap:6px;padding:var(--sp-5);border:1px solid var(--border);border-radius:var(--r-md);text-decoration:none;color:inherit;transition:border-color var(--dur-med),background var(--dur-med)}.proj-nav-link:hover,.proj-nav-link:focus-visible{border-color:var(--mint);background:var(--surface-2)}.proj-nav-next{text-align:right;align-items:flex-end}.proj-nav-dir{font-family:var(--font-mono);font-size:12px;color:var(--text-muted);letter-spacing:.04em}.proj-nav-title{font-family:var(--font-display);font-size:20px;color:var(--text)}@media(max-width:640px){.proj-nav-row{grid-template-columns:1fr}.proj-nav-next{text-align:left;align-items:flex-start}}.blog-prose{font-family:var(--font-body);color:var(--text);font-size:17px;line-height:1.8}.blog-prose>*+*{margin-top:1.6em}.blog-prose h1,.blog-prose h2,.blog-prose h3,.blog-prose h4{font-family:var(--font-display);font-weight:400;line-height:1.15;letter-spacing:-.01em;color:var(--text);margin-top:1.8em;margin-bottom:.8em}.blog-prose h1{font-size:42px}.blog-prose h2{font-size:32px;padding-bottom:10px;border-bottom:1px solid var(--border)}.blog-prose h3{font-size:24px;font-style:italic;color:var(--lavender)}.blog-prose h4{font-size:16px;font-family:var(--font-mono);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.blog-prose p{color:var(--text)}.blog-prose a{color:var(--mint);text-decoration:none;border-bottom:1px solid color-mix(in oklab,var(--mint) 35%,transparent);transition:border-bottom-color .2s ease}.blog-prose a:hover{border-bottom-color:var(--mint)}.blog-prose strong{color:var(--text);font-weight:600}.blog-prose em{font-style:italic;color:var(--lavender)}.blog-prose ul,.blog-prose ol{padding-left:1.5em;color:var(--text)}.blog-prose li{margin:.4em 0}.blog-prose ul li::marker{color:var(--mint)}.blog-prose code{font-family:inherit;font-size:inherit;color:var(--peach)}.blog-prose pre{width:max-content;max-width:100%;background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--r-md);padding:20px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;margin-top:1.5em;margin-bottom:1.5em}.blog-prose pre::-webkit-scrollbar{display:none}.blog-prose pre code{font-family:var(--font-mono);background:transparent;color:var(--text);padding:0;border:none;font-size:13px;line-height:1.6;word-break:normal}.blog-prose blockquote{margin:2em 0;padding:1rem 1.5rem;border-left:3px solid var(--mint);background:color-mix(in oklab,var(--surface) 50%,transparent);border-radius:0 var(--r-md) var(--r-md) 0;color:var(--text-muted)}.blog-prose blockquote p{color:var(--text-muted);font-style:italic;margin:0}.blog-prose table{width:100%;border-collapse:collapse;font-family:var(--font-body);font-size:15px;margin:2em 0;display:block;overflow-x:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md)}.blog-prose th,.blog-prose td{padding:16px 20px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}.blog-prose th{background:color-mix(in oklab,var(--bg-deep) 60%,transparent);color:var(--text-muted);font-size:12px;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-weight:500;border-bottom:2px solid var(--border)}.blog-prose tbody tr:last-child td{border-bottom:none}.blog-prose tbody tr:hover td{background:color-mix(in oklab,var(--bg) 40%,transparent)}.blog-prose hr{margin:3em 0;border:0;height:1px;background:var(--border)}.blog-prose img{max-width:100%;border-radius:var(--r-md);border:1px solid var(--border);margin:2em auto;display:block}html{color-scheme:dark}html[data-theme=light]{color-scheme:light}h1,h2,h3,.display{text-wrap:balance}p,li{text-wrap:pretty}body{min-height:100dvh}a,button,[role=button]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}@media(hover:hover)and (pointer:fine){html:not(.has-custom-cursor) body,html:not(.has-custom-cursor) a,html:not(.has-custom-cursor) button,html:not(.has-custom-cursor) [data-cursor-hover]{cursor:auto}html:not(.has-custom-cursor) a,html:not(.has-custom-cursor) button{cursor:pointer}}.skip-link{position:fixed;top:calc(8px + env(safe-area-inset-top));left:calc(8px + env(safe-area-inset-left));z-index:calc(var(--z-terminal) + 1);padding:10px 16px;background:var(--mint);color:var(--bg);font-family:var(--font-mono);font-size:13px;border-radius:var(--r-sm);transform:translateY(-160%);transition:transform var(--dur-fast) var(--ease-out-expo)}.skip-link:focus-visible{transform:none}.read-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:calc(var(--z-nav) + 1);background:linear-gradient(90deg,var(--mint),var(--lavender),var(--peach));transform-origin:0 50%;transform:scaleX(0);pointer-events:none}.blog-figure{margin:var(--sp-8) 0}.blog-figure img{display:block;width:100%;height:auto;border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface)}.blog-figure figcaption{margin-top:var(--sp-3);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--text-muted);text-align:center}.code-block{position:relative}.code-copy{position:absolute;top:8px;right:8px;padding:4px 10px;font-family:var(--font-mono);font-size:11px;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r-sm);opacity:0;transition:opacity var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast)}.code-block:hover .code-copy,.code-copy:focus-visible,.code-copy.is-copied{opacity:1}.code-copy:hover,.code-copy.is-copied{color:var(--mint);border-color:var(--mint)}@media(hover:none){.code-copy{opacity:1}}.heading-anchor{margin-left:.35em;color:var(--text-muted);opacity:0;font-family:var(--font-mono);font-size:.6em;text-decoration:none;transition:opacity var(--dur-fast),color var(--dur-fast)}.blog-prose :is(h2,h3):hover .heading-anchor,.heading-anchor:focus-visible{opacity:1}.heading-anchor:hover{color:var(--mint)}.blog-prose :is(h2,h3){scroll-margin-top:96px}@media(hover:none){.heading-anchor{opacity:.5}}.term-chips{display:none;gap:8px;padding:0 28px 12px;overflow-x:auto;scrollbar-width:none}.term-chips::-webkit-scrollbar{display:none}.term-chip{flex-shrink:0;min-height:36px;padding:6px 14px;font-family:var(--font-mono);font-size:12px;color:var(--text-muted);background:transparent;border:1px solid var(--border-strong);border-radius:var(--r-pill);transition:color var(--dur-fast),border-color var(--dur-fast)}.term-chip:hover,.term-chip:active{color:var(--mint);border-color:var(--mint)}@media(pointer:coarse){.term-chips{display:flex}}.term-run{font:inherit;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline dotted;text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);text-underline-offset:3px}.term-run:hover{text-decoration-style:solid}.term-run:focus-visible{outline:1px solid var(--mint);outline-offset:2px}.seo-page{padding:calc(140px + env(safe-area-inset-top)) 0 var(--sp-24);min-height:100dvh}.seo-inner{max-width:1000px}.seo-hero{display:grid;grid-template-columns:auto 1fr;gap:var(--sp-12);align-items:start;margin-bottom:var(--sp-16)}.seo-avatar{width:160px;height:160px;border-radius:50%;padding:3px;background:conic-gradient(from 140deg,var(--mint),var(--lavender),var(--peach),var(--sky),var(--mint))}.seo-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;background:var(--surface);border:3px solid var(--bg)}.seo-title{font-size:clamp(44px,7vw,88px);margin:var(--sp-3) 0 var(--sp-2);letter-spacing:-.02em}.seo-role{font-family:var(--font-mono);font-size:13px;color:var(--mint);margin:0 0 var(--sp-6)}.seo-lede{font-size:18px;color:var(--text-muted);max-width:60ch;margin:0 0 var(--sp-8)}.seo-links{display:flex;flex-wrap:wrap;gap:var(--sp-3)}.seo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-6)}.seo-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-8)}.seo-card p{color:var(--text-muted);margin:0 0 var(--sp-4)}.seo-card p:last-child{margin-bottom:0}.seo-card-wide{grid-column:1 / -1}.seo-h2{font-family:var(--font-display);font-weight:400;font-size:30px;margin:0 0 var(--sp-5)}.seo-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-5)}.seo-list li{border-left:2px solid color-mix(in oklab,var(--mint) 40%,transparent);padding-left:var(--sp-4)}.seo-list strong{display:block;font-weight:600}.seo-meta{display:block;font-family:var(--font-mono);font-size:12px;color:var(--mint);margin:2px 0 6px}.seo-list p{font-size:14px}.seo-projects{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4)}.seo-projects a{display:block;height:100%;padding:var(--sp-5);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);transition:border-color var(--dur-fast),transform var(--dur-fast)}.seo-projects a:hover{border-color:var(--mint);transform:translateY(-2px)}.seo-proj-title{display:block;font-family:var(--font-display);font-size:22px;margin-bottom:4px}.seo-proj-desc{display:block;font-size:13px;color:var(--text-muted);line-height:1.6}.seo-cta{margin-top:var(--sp-12);display:flex;justify-content:center}@media(max-width:760px){.seo-hero{grid-template-columns:1fr;gap:var(--sp-8)}.seo-avatar{width:120px;height:120px}.seo-grid,.seo-projects{grid-template-columns:1fr}.seo-card{padding:var(--sp-6)}}.container{padding-left:max(var(--gutter),env(safe-area-inset-left));padding-right:max(var(--gutter),env(safe-area-inset-right))}.nav{padding-top:calc(20px + env(safe-area-inset-top))}.footer{padding-left:max(var(--gutter),env(safe-area-inset-left),calc((100% - var(--container)) / 2 + var(--gutter)));padding-right:max(calc(var(--gutter) + 56px),env(safe-area-inset-right),calc((100% - var(--container)) / 2 + var(--gutter)));padding-bottom:calc(var(--sp-10) + env(safe-area-inset-bottom))}.back-to-top{right:calc(24px + env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom))}@media(max-width:700px){.back-to-top{width:40px;height:40px;right:calc(12px + env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom))}}.terminal-bar{padding-top:calc(14px + env(safe-area-inset-top));padding-left:max(22px,env(safe-area-inset-left));padding-right:max(22px,env(safe-area-inset-right))}.terminal-body{padding-left:max(28px,env(safe-area-inset-left));padding-right:max(28px,env(safe-area-inset-right))}.terminal-input-row{padding-left:max(28px,env(safe-area-inset-left));padding-right:max(28px,env(safe-area-inset-right));padding-bottom:calc(22px + env(safe-area-inset-bottom))}.mobile-drawer-overlay{padding:calc(120px + env(safe-area-inset-top)) max(40px,env(safe-area-inset-right)) calc(40px + env(safe-area-inset-bottom)) max(40px,env(safe-area-inset-left));overflow-y:auto;overscroll-behavior:contain}.hero{min-height:100svh}.terminal{height:100dvh}@media(pointer:coarse){.nav-hamburger{width:44px;height:44px}.theme-toggle{min-height:44px}.terminal-bar .close{width:44px;height:44px}.terminal{--term-input-fs: 16px}}@media(hover:none){.btn:hover,.back-to-top:hover,.nav-hamburger:hover,.seo-projects a:hover{transform:none}}@media(max-width:414px){:root,:root[data-theme]{--gutter: 18px;--fs-hero: clamp(40px, 13vw, 56px)}.hero{padding-top:calc(112px + env(safe-area-inset-top));padding-bottom:var(--sp-16)}.hero-meta{gap:var(--sp-3) var(--sp-5);margin-bottom:var(--sp-8)}.hero-ctas .btn{flex:1 1 auto;justify-content:center}.section{padding:var(--sp-16) 0 var(--sp-4)}.section:last-of-type{padding-bottom:var(--sp-16)}.section-head{margin-bottom:var(--sp-8);flex-wrap:wrap;gap:var(--sp-2) var(--sp-4)}.mobile-drawer-links a{font-size:28px}.terminal{font-size:13px}.term-prompt-user{display:none}}@media(max-width:374px){:root,:root[data-theme]{--gutter: 16px;--fs-hero: clamp(34px, 12.5vw, 46px)}.nav{padding-bottom:14px}.nav-brand{font-size:18px}.tt-label{display:none}.hero-tagline{font-size:15px}.hero-ctas{flex-direction:column}.hero-ctas .btn{width:100%}.proof-pill{font-size:12px}.footer{flex-direction:column;align-items:flex-start}.xp-role{white-space:normal;letter-spacing:.12em}.xp-card{padding:var(--sp-5)}}@media(max-width:300px){:root,:root[data-theme]{--gutter: 12px;--fs-hero: clamp(28px, 13vw, 38px)}body{font-size:15px}.hero-status,.hero-loc{letter-spacing:.12em}.btn{padding:12px 14px;font-size:13px}.mobile-drawer-overlay{padding-left:20px;padding-right:20px}.mobile-drawer-links a{font-size:24px}.terminal-body,.terminal-input-row{padding-left:14px;padding-right:14px}.terminal-bar .title>span:last-child{display:none}.term-chips{padding:0 14px 10px}}@media(max-width:420px)and (max-height:520px){.hero{min-height:auto;padding-top:calc(88px + env(safe-area-inset-top))}.hero-tagline{display:none}.nav{padding-top:calc(10px + env(safe-area-inset-top));padding-bottom:10px}}@media(orientation:landscape)and (max-height:520px){.hero{min-height:auto;padding-top:calc(96px + env(safe-area-inset-top));padding-bottom:var(--sp-12)}.nav{padding-top:calc(10px + env(safe-area-inset-top));padding-bottom:10px}.mobile-drawer-overlay{padding-top:calc(72px + env(safe-area-inset-top))}.mobile-drawer-links{gap:var(--sp-3)}.mobile-drawer-links a{font-size:24px}.terminal-bar{padding-top:calc(8px + env(safe-area-inset-top));padding-bottom:8px}.terminal-body{padding-top:12px}.terminal-input-row{padding-top:8px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}}@media(min-width:600px)and (max-width:1100px)and (min-aspect-ratio:3/4)and (max-aspect-ratio:4/3){:root,:root[data-theme]{--gutter: 28px;--fs-hero: clamp(56px, 10vw, 104px)}.hero{min-height:auto;padding-top:calc(132px + env(safe-area-inset-top));padding-bottom:var(--sp-20)}.hero-title{max-width:14ch}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4)}.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid{grid-template-columns:1.2fr 1fr;gap:var(--sp-10)}.section{padding:var(--sp-20) 0 var(--sp-8)}.section:last-of-type{padding-bottom:var(--sp-20)}.seo-grid,.seo-projects{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(horizontal-viewport-segments:2){:root,:root[data-theme]{--fold-left: env(viewport-segment-right 0 0, 50vw);--fold-right: env(viewport-segment-left 1 0, 50vw);--fold-gap: calc(var(--fold-right) - var(--fold-left));--seg-w: env(viewport-segment-width 0 0, 50vw);--fs-hero: clamp(40px, calc(var(--seg-w) * .12), 96px)}.nav-inner,.section>.container,.hero>.container{max-width:none;margin:0;padding:0;display:grid;grid-template-columns:var(--fold-left) var(--fold-gap) minmax(0,1fr);column-gap:0}.nav-inner>*,.section>.container>*,.hero>.container>*{grid-column:1;padding-inline:var(--gutter)}.nav-inner>.nav-links,.nav-inner>.nav-actions{grid-column:3;grid-row:1}.nav-inner>.nav-links{justify-self:start}.nav-inner>.nav-actions{justify-self:end}.mobile-drawer-overlay{left:var(--fold-right)}.hero>.container>.hero-meta{grid-row:1}.hero>.container>.hero-title{grid-row:2;max-width:none}.hero>.container>.hero-tagline{grid-column:3;grid-row:1 / 3;align-self:center}.hero>.container>.hero-ctas{grid-column:3;grid-row:3}.section>.container>.section-head{grid-row:1 / span 20;align-self:start;position:sticky;top:96px;flex-direction:column;align-items:flex-start}.section>.container>.contact-h{grid-row:2 / span 20;align-self:start}.section>.container>:not(.section-head,.contact-h){grid-column:3}.projects-grid,.about-grid{grid-template-columns:minmax(0,1fr)}.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-page{display:grid;grid-template-columns:var(--fold-left) var(--fold-gap) minmax(0,1fr);align-items:start}.split-page>*{grid-column:3;max-width:none!important;margin-inline:0!important;padding-inline:var(--gutter)!important}.split-page>.split-aside{grid-column:1;grid-row:1 / span 20;position:sticky;top:72px;max-height:calc(100dvh - 72px);overflow-y:auto}.split-page>.split-divider{display:none}.seo-hero,.seo-grid{grid-template-columns:minmax(0,1fr)}.proof .container,.footer{padding-right:calc(100vw - var(--fold-left) + var(--gutter))}.terminal-body,.terminal-input-row,.term-chips{margin-right:calc(100vw - var(--fold-left))}}@media(vertical-viewport-segments:2){:root{--fold-top: env(viewport-segment-bottom 0 0, 50vh);--fold-bottom: env(viewport-segment-top 0 1, 50vh);--fold-gap-v: calc(var(--fold-bottom) - var(--fold-top))}.hero{min-height:var(--fold-top);padding-top:calc(88px + env(safe-area-inset-top));padding-bottom:var(--sp-8);margin-bottom:var(--fold-gap-v)}.hero-tagline{display:none}.terminal.open{display:grid;grid-template-rows:56px calc(var(--fold-top) - 56px) var(--fold-gap-v) minmax(0,1fr)}.terminal-bar{grid-row:1;height:56px;padding-top:0;padding-bottom:0}.terminal-body{grid-row:2;min-height:0}.terminal>.terminal-dock{grid-row:4;display:flex;flex-direction:column;justify-content:center;gap:var(--sp-3)}.terminal-input-row{border-top:none}.terminal{--term-input-fs: 18px}.term-chips{display:flex;flex-wrap:wrap;overflow:visible}.mobile-drawer-overlay{padding-top:calc(var(--fold-bottom) + var(--sp-6))}}.blog-prose .code-block{margin:1.5em 0}.blog-prose .code-block>pre{margin:0;width:100%}.proj-summary{display:grid;gap:var(--sp-3);margin:0 0 36px;padding:var(--sp-5) 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);max-width:64ch}.proj-summary-row{display:grid;grid-template-columns:9ch 1fr;gap:var(--sp-4);align-items:baseline}.proj-summary dt{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}.proj-summary dd{margin:0;font-size:15px;line-height:1.6;color:var(--text)}@media(max-width:560px){.proj-summary-row{grid-template-columns:1fr;gap:2px}}.resume-updated{align-self:center;font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 var(--sp-6);padding:0;list-style:none;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--text-muted)}.breadcrumbs li+li:before{content:"/";margin-right:6px;opacity:.5}.breadcrumbs a{color:var(--text-muted);text-decoration:none;transition:color var(--dur-fast)}.breadcrumbs a:hover,.breadcrumbs a:focus-visible{color:var(--mint)}.breadcrumbs [aria-current=page]{color:var(--text);max-width:40ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.error-page{min-height:80vh;display:flex;flex-direction:column;justify-content:center;max-width:720px;margin:0 auto;padding:120px 24px 80px}.error-kicker{font-family:var(--font-mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--peach);margin:0 0 var(--sp-4)}.error-title{font-size:clamp(40px,6vw,72px);font-weight:400;margin:0 0 var(--sp-5)}.error-title em{color:var(--lavender)}.error-text{color:var(--text-muted);font-size:17px;line-height:1.65;max-width:48ch;margin:0 0 var(--sp-8)}.error-actions{display:flex;flex-wrap:wrap;gap:var(--sp-3)}.ml-hairline{position:fixed;top:0;left:0;right:0;height:1px;z-index:calc(var(--z-nav) + 1);background:var(--mint);opacity:.55;transform-origin:left;transform:scaleX(0);pointer-events:none}html:not(.ml-on) .ml-hairline{display:none}.ml-on main{counter-reset:mlsec}.ml-on main>.section{position:relative;counter-increment:mlsec}.ml-on main>.section:before{content:"§ " counter(mlsec,decimal-leading-zero) " · " attr(id);position:absolute;top:26px;left:max(var(--gutter),calc((100vw - var(--container)) / 2 + var(--gutter)));font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);opacity:0;transition:opacity 1.2s var(--ease-out-expo)}.ml-on main>.section.ml-seen:before{opacity:.5}.ml-on .project-card:before{content:"";position:absolute;inset:-5px;pointer-events:none;--c: var(--text-muted);background:linear-gradient(var(--c),var(--c)) top left / 9px 1px no-repeat,linear-gradient(var(--c),var(--c)) top left / 1px 9px no-repeat,linear-gradient(var(--c),var(--c)) top right / 9px 1px no-repeat,linear-gradient(var(--c),var(--c)) top right / 1px 9px no-repeat,linear-gradient(var(--c),var(--c)) bottom left / 9px 1px no-repeat,linear-gradient(var(--c),var(--c)) bottom left / 1px 9px no-repeat,linear-gradient(var(--c),var(--c)) bottom right / 9px 1px no-repeat,linear-gradient(var(--c),var(--c)) bottom right / 1px 9px no-repeat;opacity:0;transition:opacity var(--dur-med),inset var(--dur-med) var(--ease-out-expo)}.ml-on .project-card:hover:before{--c: var(--accent);opacity:.8;inset:-8px}.ml-on .project-card:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .4s;background:linear-gradient(color-mix(in srgb,var(--accent) 22%,transparent) 1px,transparent 1px) 0 0 / 16px 16px,linear-gradient(90deg,color-mix(in srgb,var(--accent) 22%,transparent) 1px,transparent 1px) 0 0 / 16px 16px;mask-image:radial-gradient(160px circle at var(--mx, 50%) var(--my, 50%),#000,transparent 80%)}@media(hover:hover)and (pointer:fine){.ml-on .project-card:hover:after{opacity:1}}.project-card,.xp-card-link{--accent: var(--accent-d, var(--mint))}[data-theme=light] .project-card,[data-theme=light] .xp-card-link{--accent: var(--accent-l, var(--mint))}.ml-on .xp-card-link{position:relative;overflow:hidden}.ml-on .xp-card-link:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:color-mix(in srgb,var(--accent) 60%,transparent);transform:scaleY(0);transform-origin:top;transition:transform .5s var(--ease-out-expo);pointer-events:none}.ml-on .xp-card-link:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(220px circle at var(--mx, 50%) var(--my, 50%),color-mix(in srgb,var(--accent) 4%,transparent),transparent 72%)}.ml-on .xp-card-link:hover:before,.ml-on .xp-card-link:focus-visible:before{transform:scaleY(1)}@media(hover:hover)and (pointer:fine){.ml-on .xp-card-link:hover:after{opacity:1}}.ml-on .xp-card-link:hover .xp-company{color:var(--accent)}.ml-on .xp-company{transition:color var(--dur-med)}
