@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(../media/8298327da6d5bcce-s.132ro2ak-rvxq.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(../media/44fac91e6f2d2b1b-s.0f~sf101j6mzi.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2b402d8aebffd579-s.0dskwooysu3cf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a88409fdd7dc121c-s.0ir_pxtv760h..woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e8f2fbee2754df70-s.p.0fzkl03jw-sdz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(../media/8298327da6d5bcce-s.132ro2ak-rvxq.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(../media/44fac91e6f2d2b1b-s.0f~sf101j6mzi.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2b402d8aebffd579-s.0dskwooysu3cf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a88409fdd7dc121c-s.0ir_pxtv760h..woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e8f2fbee2754df70-s.p.0fzkl03jw-sdz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/8298327da6d5bcce-s.132ro2ak-rvxq.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/44fac91e6f2d2b1b-s.0f~sf101j6mzi.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2b402d8aebffd579-s.0dskwooysu3cf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/a88409fdd7dc121c-s.0ir_pxtv760h..woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e8f2fbee2754df70-s.p.0fzkl03jw-sdz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/8298327da6d5bcce-s.132ro2ak-rvxq.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/44fac91e6f2d2b1b-s.0f~sf101j6mzi.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2b402d8aebffd579-s.0dskwooysu3cf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/a88409fdd7dc121c-s.0ir_pxtv760h..woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e8f2fbee2754df70-s.p.0fzkl03jw-sdz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat Fallback;src:local(Arial);ascent-override:85.79%;descent-override:22.25%;line-gap-override:0.0%;size-adjust:112.83%}.montserrat_a30e6be7-module__Am22sa__className{font-family:Montserrat,Montserrat Fallback;font-style:normal}.montserrat_a30e6be7-module__Am22sa__variable{--font-heading:"Montserrat", "Montserrat Fallback"}
@font-face{font-family:Poppins;font-style:normal;font-weight:300;font-display:swap;src:url(../media/7e832ad540183e91-s.0pw-43bjt5~5_.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:300;font-display:swap;src:url(../media/2094fb60fd9c8287-s.13c6n_dh74ayc.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:300;font-display:swap;src:url(../media/c875c6f5d3e977ac-s.p.0g_ng0t~d_b9n.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/41e95f694c5c4549-s.0r1jrq7neqdsq.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6c55a692938ebbbc-s.0g6rbszwfgn9y.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a218039a3287bcfd-s.p.17-1enzs_j91b.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/bdc7e24a509eb931-s.0apt5mko2.qn3.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0da9c7f357bd9d4d-s.0ek5sshv8wk3m.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/8e6fa89aa22d24ec-s.p.0uvzar8hswo3p.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins Fallback;src:local(Arial);ascent-override:93.62%;descent-override:31.21%;line-gap-override:8.92%;size-adjust:112.16%}.poppins_eaf9a064-module__bP-6Ka__className{font-family:Poppins,Poppins Fallback;font-style:normal}.poppins_eaf9a064-module__bP-6Ka__variable{--font-body:"Poppins", "Poppins Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/04c5164763c40239-s.0h-nw9_c8d~-_.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/26f284dcc38c84c0-s.10hk62x1-0d9n.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7e7f32a39836f228-s.0bmyfaahigzds.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fa39153a3fc630ba-s.0-0ft90hthv3~.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6a5386fd6038edbe-s.16fk0g~ypa53a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/051742360c26797e-s.p.0f97p8c3305p~.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/04c5164763c40239-s.0h-nw9_c8d~-_.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/26f284dcc38c84c0-s.10hk62x1-0d9n.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7e7f32a39836f228-s.0bmyfaahigzds.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fa39153a3fc630ba-s.0-0ft90hthv3~.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/6a5386fd6038edbe-s.16fk0g~ypa53a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/051742360c26797e-s.p.0f97p8c3305p~.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_70b60163-module__7Ns5vW__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_70b60163-module__7Ns5vW__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
﻿ *,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}:root{--font-display:var(--font-heading), "Montserrat", sans-serif;--font-body:var(--font-body), "Poppins", sans-serif;--font-ui:-apple-system, "SF Pro Display", "Helvetica Neue", sans-serif;--font-mono-stack:var(--font-mono), "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace;--bg:#0000000a;--bg-elevated:#00000014;--ink:#111;--ink-soft:#333;--ink-mute:#666;--rule:#00000024;--rule-soft:#00000012;--accent:#b8421a;--status:#2f7a3f;--max:640px;--gutter:28px}html[data-theme=dark]{--bg:#0a0a0a;--bg-elevated:#1e1e1e;--ink:#f0f0f0;--ink-soft:#c8c8c8;--ink-mute:#999;--rule:#ffffff1f;--rule-soft:#ffffff0f;--accent:#e8714a;--status:#5dba72}html,body{color:var(--ink);font-family:var(--font-body), "Poppins", sans-serif;font-feature-settings:"kern";background:#fff;font-size:16px;font-weight:400;line-height:1.6;transition:background-color .4s cubic-bezier(.4,0,.2,1),color .4s cubic-bezier(.4,0,.2,1),border-color .4s cubic-bezier(.4,0,.2,1)}*,:before,:after{transition-property:background-color,color,border-color,box-shadow,opacity;transition-duration:.4s;transition-timing-function:cubic-bezier(.4,0,.2,1)}body:before{content:"";pointer-events:none;z-index:100;opacity:.018;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:fixed;inset:0}html[data-theme=dark],html[data-theme=dark] body{background:#000}html[data-theme=dark] body:before{opacity:.04;mix-blend-mode:screen}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0}::selection{background:var(--accent);color:var(--bg)}.page{max-width:var(--max);padding:32px var(--gutter) 96px;margin:0 auto;animation:.6s ease-out both fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.nav{font-family:var(--font-ui);letter-spacing:.01em;justify-content:space-between;align-items:baseline;padding-block:8px 64px;font-size:13px;display:flex}.nav-mark{font-family:var(--font-display);letter-spacing:-.04em;font-size:20px;font-weight:700}.switch{-webkit-tap-highlight-color:transparent;cursor:pointer;align-items:center;margin-left:6px;display:inline-flex;position:relative}.switch__input{-webkit-tap-highlight-color:transparent;cursor:pointer;appearance:none;background:linear-gradient(135deg,#eda01d,#e9730c);border-radius:999px;width:2.6em;height:1.35em;font-size:14px;transition:background .45s cubic-bezier(.65,0,.35,1),box-shadow .45s cubic-bezier(.65,0,.35,1);display:block;position:relative;box-shadow:inset 0 1px 3px #00000040,inset 0 0 0 1px #0000001f,0 1px #ffffff1f}.switch__input:before{content:"";background:linear-gradient(160deg,#fff 0%,#f0ece8 100%);border-radius:50%;width:1.075em;height:1.075em;transition:transform .45s cubic-bezier(.65,0,.35,1),background .45s cubic-bezier(.65,0,.35,1),box-shadow .45s cubic-bezier(.65,0,.35,1);display:block;position:absolute;top:.1375em;left:.1375em;box-shadow:0 1px 4px #00000047,0 .5px 1px #0000002e,inset 0 .5px #ffffffe6}.switch__icon,.switch__icon-part{display:block;position:absolute;top:0;left:0}.switch__icon{pointer-events:none;background-color:#f7c845;border-radius:50%;width:1.075em;height:1.075em;font-size:14px;transition:transform .45s cubic-bezier(.65,0,.35,1),background-color .45s cubic-bezier(.65,0,.35,1);top:.1375em;left:.1375em;overflow:hidden}.switch__icon-part{transition:box-shadow .45s cubic-bezier(.65,0,.35,1),transform .45s cubic-bezier(.65,0,.35,1),background-color .45s cubic-bezier(.65,0,.35,1)}.switch__icon-part--1,.switch__icon-part--2,.switch__icon-part--3{border-radius:50%}.switch__icon-part--1{background-color:#f7c845;width:.75em;height:.75em;top:calc(50% - .375em);left:calc(50% - .375em)}.switch__icon-part--2{background-color:#262b36;width:.5em;height:.5em;top:calc(50% - .4375em);left:calc(50% - .0625em);transform:translate(-.1875em,.1875em)scale(.2)}.switch__icon-part--3{width:1em;height:1em;transform:scale(.25);box-shadow:inset 0 0 0 .625em #262b36}.switch__icon-part--3~.switch__icon-part{transform-origin:50% 0;background-color:#e6970f;border-radius:.0625em;width:.125em;height:.1875em;top:50%;left:50%}.switch__icon-part--4{transform:translate(-50%)rotate(0)translateY(.25em)}.switch__icon-part--5{transform:translate(-50%)rotate(45deg)translateY(.25em)}.switch__icon-part--6{transform:translate(-50%)rotate(90deg)translateY(.25em)}.switch__icon-part--7{transform:translate(-50%)rotate(135deg)translateY(.25em)}.switch__icon-part--8{transform:translate(-50%)rotate(180deg)translateY(.25em)}.switch__icon-part--9{transform:translate(-50%)rotate(225deg)translateY(.25em)}.switch__icon-part--10{transform:translate(-50%)rotate(270deg)translateY(.25em)}.switch__icon-part--11{transform:translate(-50%)rotate(315deg)translateY(.25em)}.switch__sr{width:1px;height:1px;position:absolute;overflow:hidden}.switch__input:checked{background:linear-gradient(135deg,#283248,#1c2036);box-shadow:inset 0 1px 3px #00000080,inset 0 0 0 1px #0000004d,0 0 0 1px #788cc81a,0 0 8px #6478c81f}.switch__input:checked:before{background:linear-gradient(160deg,#dde4f0 0%,#c8d2e8 100%);box-shadow:0 1px 4px #0006,0 .5px 1px #0000004d,inset 0 .5px #fff9}.switch__input:checked:before,.switch__input:checked~.switch__icon{transform:translate(1.25em)}.switch__input:checked~.switch__icon,.switch__input:checked~.switch__icon .switch__icon-part--1{background-color:#343c51}.switch__input:checked~.switch__icon .switch__icon-part--2{background-color:#acbcd2;transform:translate(0)scale(1)}.switch__input:checked~.switch__icon .switch__icon-part--3{transform:scale(1);box-shadow:inset 0 0 0 .25em #bacade}.switch__input:checked~.switch__icon .switch__icon-part--4{transform:translate(-50%)rotate(0)translateY(.625em)scale(0)}.switch__input:checked~.switch__icon .switch__icon-part--5{transform:translate(-50%)rotate(45deg)translateY(.625em)scale(0)}.switch__input:checked~.switch__icon .switch__icon-part--6{transform:translate(-50%)rotate(90deg)translateY(.625em)scale(0)}.switch__input:checked~.switch__icon .switch__icon-part--7{transform:translate(-50%)rotate(135deg)translateY(.625em)scale(0)}.switch__input:checked~.switch__icon .switch__icon-part--8{transform:translate(-50%)rotate(180deg)translateY(.625em)scale(0)}.switch__input:checked~.switch__icon .switch__icon-part--9{transform:translate(-50%)rotate(225deg)translateY(.625em)scale(0)}.switch__input:checked~.switch__icon .switch__icon-part--10{transform:translate(-50%)rotate(270deg)translateY(.625em)scale(0)}.switch__input:checked~.switch__icon .switch__icon-part--11{transform:translate(-50%)rotate(315deg)translateY(.625em)scale(0)}.hero{flex-direction:column;gap:36px;padding-block:16px 80px;display:flex}.hero-profile{align-items:flex-start;gap:28px;display:flex}.avatar{background:var(--bg-elevated);border:1px solid var(--rule);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:171px;height:171px;display:flex;position:relative;overflow:hidden}.avatar:after{content:"";pointer-events:none;background:radial-gradient(circle at 30% 30%,#ffffff14 0%,#0000 60%);border-radius:6px;position:absolute;inset:0}.avatar-initials{font-family:var(--font-mono-stack);letter-spacing:.08em;color:var(--ink-mute);text-transform:uppercase;font-size:13px;font-weight:500}.hero-identity{flex-direction:column;gap:12px;padding-top:4px;display:flex}.eyebrow{font-family:var(--font-mono-stack);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);align-items:center;gap:8px;font-size:11.5px;display:inline-flex}.dot{background:var(--status);width:7px;height:7px;box-shadow:0 0 0 0 var(--status);border-radius:50%;flex-shrink:0;animation:2.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--status) 50%, transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--status) 0%, transparent)}}.display{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin:0;font-size:clamp(26px,5vw,40px);font-weight:700;line-height:1.1}.display em{color:var(--ink-soft);font-style:normal;font-weight:400}.period{color:var(--accent)}.hero-meta{flex-direction:column;gap:8px;display:flex}.hero-location{font-family:var(--font-mono-stack);color:var(--ink-mute);letter-spacing:.02em;align-items:center;gap:5px;font-size:12px;display:inline-flex}.hero-roles{flex-wrap:wrap;gap:6px;list-style:none;display:flex}.hero-roles li{font-family:var(--font-mono-stack);letter-spacing:.04em;color:var(--ink-soft);border:1px solid var(--rule);background:var(--bg-elevated);border-radius:999px;padding:3px 10px;font-size:11px}.lede{font-family:var(--font-body), "Poppins", sans-serif;color:var(--ink-soft);max-width:46ch;font-size:17px;font-weight:300;line-height:1.7}.section{border-top:1px solid var(--rule);padding-block:56px;scroll-margin-top:32px}.section-title{font-family:var(--font-mono-stack);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-mute);margin-bottom:36px;font-size:12px;font-weight:500}.timeline{flex-direction:column;padding-left:0;list-style:none;display:flex;position:relative}.timeline:before{content:"";background:var(--rule);width:1px;position:absolute;top:10px;bottom:10px;left:56px}.timeline-item{grid-template-columns:56px 1fr;align-items:flex-start;gap:24px;padding:20px 0;display:grid;position:relative}.timeline-item:before{content:"";border:1.5px solid var(--ink-mute);z-index:1;background:0 0;border-radius:50%;width:9px;height:9px;position:absolute;top:27px;left:52px}.timeline-item--education:before{border-color:var(--accent);background:var(--accent)}.timeline-item--work:before{border-color:var(--status);background:var(--status)}.timeline-item--milestone:before{border-color:var(--ink-soft)}.timeline-year{font-family:var(--font-mono-stack);color:var(--ink-mute);letter-spacing:.02em;padding-top:2px;font-size:12px}.timeline-body{flex-direction:column;gap:4px;display:flex}.timeline-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);font-size:18px;font-weight:600;line-height:1.2}.timeline-org{font-family:var(--font-mono-stack);color:var(--ink-soft);letter-spacing:.02em;font-size:12px}.stack-split{grid-template-columns:1fr 1fr;align-items:start;gap:56px;display:grid}.stack-split__certs,.stack-split__tech{flex-direction:column;gap:24px;display:flex}.cert-list{flex-direction:column;gap:16px;display:flex}.cert-card{border:1px solid var(--rule-soft);background:var(--bg-elevated);border-radius:8px;align-items:flex-start;gap:18px;padding:16px;transition:border-color .2s,background .2s;display:flex}.cert-card:hover{border-color:var(--rule)}.cert-badge{flex-shrink:0;width:120px}.cert-info{flex-direction:column;gap:4px;padding-top:6px;display:flex}.cert-name{font-family:var(--font-body);color:var(--ink);font-size:13.5px;font-weight:500;line-height:1.3}.cert-issuer{font-family:var(--font-mono-stack);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute);margin-top:2px;font-size:10.5px}.cert-year{font-family:var(--font-mono-stack);color:var(--ink-mute);font-size:11px}.cert-view{font-family:var(--font-body);color:var(--accent);align-items:center;gap:5px;margin-top:8px;font-size:12px;text-decoration:none;transition:gap .18s,opacity .18s;display:inline-flex}.cert-view:hover{gap:8px}.cert-view .arrow{font-size:11px;transition:transform .2s cubic-bezier(.2,.8,.2,1)}.cert-view:hover .arrow{transform:translate(3px,-3px)}.stack-preview{flex-direction:column;gap:16px;display:flex}.stack-tabs{border-bottom:1px solid var(--rule-soft);gap:2px;padding-bottom:0;display:flex}.stack-tab{font-family:var(--font-body);color:var(--ink-mute);cursor:pointer;letter-spacing:.01em;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:6px 12px 8px;font-size:12px;font-weight:400;transition:color .16s,border-color .16s}.stack-tab:hover{color:var(--ink-soft)}.stack-tab--active{color:var(--ink);border-bottom-color:var(--accent);font-weight:500}.stack-pills--preview .stack-pill{animation:.28s ease-out both fadeIn}.stack-view-more{align-self:flex-start;margin-top:4px}.fullstack-grid{grid-template-columns:1fr 1fr;gap:48px 56px;margin-bottom:80px;display:grid}.fullstack-group{flex-direction:column;gap:16px;display:flex}.fullstack-group .stack-pill{animation:.32s ease-out both fadeIn}.stack-label{font-family:var(--font-mono-stack);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-mute);margin-bottom:4px;font-size:11px;font-weight:500}.stack-pills{flex-wrap:wrap;gap:8px;list-style:none;display:flex}.stack-pill{font-family:var(--font-mono-stack);letter-spacing:.02em;color:var(--ink-soft);border:1px solid var(--rule);background:var(--bg-elevated);border-radius:4px;padding:5px 12px;font-size:12px;transition:color .16s,border-color .16s,background .16s}.stack-pill:hover{color:var(--ink);border-color:var(--ink-soft)}.projects{flex-direction:column;list-style:none;display:flex}.project{border-top:1px solid var(--rule-soft)}.project:last-child{border-bottom:1px solid var(--rule-soft)}.project-link{grid-template-columns:56px 1fr;align-items:baseline;gap:24px;padding:22px 0;transition:padding .24s cubic-bezier(.2,.8,.2,1);display:grid}.project-link:hover{padding-left:8px;padding-right:0}.project-year{font-family:var(--font-mono-stack);color:var(--ink-mute);letter-spacing:.02em;font-size:12px}.project-body{flex-direction:column;gap:6px;display:flex}.project-name{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);align-items:center;gap:10px;font-size:20px;font-weight:600;line-height:1.2;display:inline-flex}.project-desc{color:var(--ink-soft);max-width:48ch;font-size:14.5px;line-height:1.55}.arrow{font-family:var(--font-mono-stack);color:var(--ink-mute);font-size:14px;transition:transform .26s cubic-bezier(.2,.8,.2,1),color .2s;display:inline-block;transform:translate(0)}.project-link:hover .arrow{color:var(--accent);transform:translate(4px,-4px)}.prose{flex-direction:column;gap:18px;max-width:56ch;display:flex}.prose p{color:var(--ink-soft);font-size:15.5px;line-height:1.7}.prose p:first-child:first-line{color:var(--ink)}.links{flex-direction:column;margin-top:8px;list-style:none;display:flex}.links li{border-top:1px solid var(--rule-soft)}.links li:last-child{border-bottom:1px solid var(--rule-soft)}.links a{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);justify-content:space-between;align-items:center;padding:16px 0;font-size:18px;font-weight:600;transition:padding .24s cubic-bezier(.2,.8,.2,1);display:flex}.links a:hover{padding-left:8px}.links a:hover .arrow{color:var(--accent);transform:translate(4px)}.links .arrow{transition:transform .26s cubic-bezier(.2,.8,.2,1),color .2s}.footer{border-top:1px solid var(--rule);font-family:var(--font-mono-stack);color:var(--ink-mute);letter-spacing:.02em;justify-content:center;margin-top:80px;padding-top:24px;font-size:11.5px;display:flex}.view-more-wrap{margin-top:32px;display:flex}.view-more-btn{font-family:var(--font-mono-stack);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);border:1px solid var(--rule);background:var(--bg-elevated);border-radius:4px;align-items:center;gap:8px;padding:10px 20px;font-size:12px;transition:color .16s,border-color .16s,background .16s,padding .2s;display:inline-flex}.view-more-btn:hover{color:var(--ink);border-color:var(--ink-soft);padding-right:28px}.view-more-btn:hover .arrow{color:var(--accent);transform:translate(4px)}.view-more-btn .arrow{transition:transform .24s cubic-bezier(.2,.8,.2,1),color .16s}.work-header{border-bottom:1px solid var(--rule);flex-direction:column;gap:20px;margin-bottom:0;padding-block:16px 56px;display:flex}.back-btn{font-family:var(--font-mono-stack);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute);align-items:center;gap:7px;width:fit-content;font-size:12px;transition:color .16s,gap .18s;display:inline-flex}.back-btn:hover{color:var(--ink);gap:12px}.back-arrow{transition:transform .22s cubic-bezier(.2,.8,.2,1);display:inline-block}.back-btn:hover .back-arrow{transform:translate(-4px)}.work-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);font-size:clamp(32px,6vw,52px);font-weight:700;line-height:1}.work-subtitle{font-family:var(--font-body), "Poppins", sans-serif;color:var(--ink-mute);font-size:15px;font-weight:300}.projects--full .project{animation:.4s ease-out both fadeIn}.project-tags{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.project-tag{font-family:var(--font-mono-stack);letter-spacing:.04em;color:var(--ink-mute);border:1px solid var(--rule-soft);background:var(--bg-elevated);border-radius:3px;padding:2px 8px;font-size:10.5px}.project-link--disabled{cursor:default;opacity:.6;grid-template-columns:56px 1fr;gap:20px;padding:16px 0;display:grid}.project-private{font-family:var(--font-mono-stack);letter-spacing:.08em;text-transform:uppercase;color:#c0392b;vertical-align:middle;background:#c0392b14;border:1px solid #c0392b59;border-radius:3px;margin-left:8px;padding:1px 6px;font-size:9px}.work-filters{border-bottom:1px solid var(--rule-soft);flex-wrap:wrap;gap:4px;margin-bottom:40px;padding-bottom:0;display:flex}.work-filter-btn{font-family:var(--font-body);color:var(--ink-mute);cursor:pointer;letter-spacing:.01em;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-bottom:-1px;padding:8px 14px 10px;font-size:13px;font-weight:400;transition:color .18s,border-color .18s;display:inline-flex}.work-filter-btn:hover{color:var(--ink-soft)}.work-filter-btn--active{color:var(--ink);border-bottom-color:var(--accent);font-weight:500}.work-filter-count{font-family:var(--font-mono-stack);letter-spacing:.04em;color:var(--ink-mute);background:var(--bg-elevated);border:1px solid var(--rule-soft);text-align:center;border-radius:10px;min-width:18px;padding:1px 6px;font-size:10px}.work-filter-btn--active .work-filter-count{color:var(--accent);background:#b8421a12;border-color:#b8421a4d}.avatar-duo{width:100%;height:100%;display:block;position:relative}.avatar-img{opacity:1;border-radius:6px;width:100%;height:100%;transition:opacity .5s cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset:0}.avatar-img--hidden{opacity:0}.page-reveal{display:contents}.page-reveal--in>*{animation:.48s cubic-bezier(.4,0,.2,1) both pageReveal}@keyframes pageReveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.skeleton-page{max-width:var(--max);padding:32px var(--gutter) 96px;margin:0 auto}.skel{background:linear-gradient(90deg, var(--bg-elevated) 25%, var(--rule) 50%, var(--bg-elevated) 75%);background-size:600px 100%;border-radius:4px;animation:1.4s ease-in-out infinite shimmer}.skeleton-nav{border-bottom:1px solid var(--rule-soft);justify-content:space-between;align-items:center;margin-bottom:32px;padding-block:24px 32px;display:flex}.skeleton-nav-links{align-items:center;gap:20px;display:flex}.skel--mark{border-radius:3px;width:28px;height:20px}.skel--navlink{width:54px;height:13px}.skel--toggle{border-radius:999px;width:34px;height:17px}.skeleton-hero{align-items:flex-start;gap:28px;padding-block:16px 80px;display:flex}.skeleton-hero-text{flex-direction:column;flex:1;gap:14px;padding-top:4px;display:flex}.skel--avatar{border-radius:6px;flex-shrink:0;width:171px;height:171px}.skel--eyebrow{width:140px;height:11px}.skel--name{border-radius:5px;width:280px;height:36px}.skel--meta{width:180px;height:13px}.skeleton-section{border-top:1px solid var(--rule-soft);flex-direction:column;gap:14px;padding-block:40px;display:flex}.skel--section-title{width:100px;height:12px;margin-bottom:6px}.skel--line{width:100%;height:13px}.skel--line-short{width:60%}.skel--line-mid{width:80%}.skeleton-pills{flex-wrap:wrap;gap:8px;display:flex}.skel--pill{border-radius:4px;width:72px;height:26px}.skel--project-row{border-radius:4px;width:100%;height:56px}.footer-meta{text-align:right}.nav-links--desktop{color:var(--ink-soft);align-items:baseline;gap:22px;display:flex}.nav-links--desktop a{transition:color .16s;position:relative}.nav-links--desktop a:hover{color:var(--ink)}.nav-links--desktop a:not(.switch):after{content:"";background:currentColor;height:1px;transition:right .22s;position:absolute;bottom:-3px;left:0;right:100%}.nav-links--desktop a:not(.switch):hover:after{right:0}.nav-links--mobile{align-items:center;gap:12px;display:none}.nav-hamburger{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;padding:4px;display:flex}.nav-hamburger__bar{background:var(--ink-soft);transform-origin:50%;border-radius:2px;width:100%;height:1.5px;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .2s,background .2s;display:block}.nav-hamburger__bar--open:first-child{transform:translateY(6.5px)rotate(45deg)}.nav-hamburger__bar--open:nth-child(2){opacity:0;transform:scaleX(0)}.nav-hamburger__bar--open:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.nav-drawer{z-index:200;justify-content:flex-end;align-items:flex-start;display:flex;position:fixed;inset:0}.nav-drawer__backdrop{-webkit-backdrop-filter:blur(4px);background:#0006;animation:.2s both fadeIn;position:absolute;inset:0}.nav-drawer__panel{z-index:1;background:var(--bg);border-left:1px solid var(--rule-soft);flex-direction:column;width:min(280px,82vw);height:100%;padding:80px 32px 48px;animation:.28s cubic-bezier(.4,0,.2,1) both slideIn;display:flex;position:relative}@keyframes slideIn{0%{opacity:.8;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.nav-drawer__links{flex-direction:column;gap:0;display:flex}.nav-drawer__link{border-bottom:1px solid var(--rule-soft);font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);align-items:baseline;gap:14px;padding:18px 0;font-size:22px;font-weight:600;transition:color .16s,padding-left .2s;animation:.32s both fadeIn;display:flex}.nav-drawer__link:hover{color:var(--accent);padding-left:6px}.nav-drawer__num{font-family:var(--font-mono-stack);letter-spacing:.08em;color:var(--ink-mute);padding-bottom:2px;font-size:10px;font-weight:400}@media (max-width:600px){.nav-links--desktop{display:none}.nav-links--mobile{display:flex}:root{--gutter:20px}.hero{padding-block:12px 56px}.hero-profile{flex-direction:column;gap:20px}.avatar{width:100px;height:100px}.display{font-size:clamp(28px,8vw,36px)}.section{padding-block:40px}.stack-split{grid-template-columns:1fr;gap:40px}.cert-card{flex-direction:row;gap:14px}.cert-badge{width:80px}.project-link{grid-template-columns:40px 1fr;gap:14px;padding:18px 0}.project-link--disabled{grid-template-columns:40px 1fr;gap:14px}.project-name{font-size:17px}.project-year{font-size:11px}.timeline:before{left:44px}.timeline-item{grid-template-columns:44px 1fr;gap:14px}.timeline-item:before{left:40px}.timeline-title{font-size:16px}.work-title{font-size:clamp(28px,7vw,42px)}.work-filters{gap:2px;margin-bottom:28px}.work-filter-btn{padding:7px 10px 9px;font-size:12px}.fullstack-grid{grid-template-columns:1fr;gap:32px}.skel--avatar{width:100px;height:100px}.skel--name{width:200px}.skeleton-nav-links{gap:12px}.skel--navlink{display:none}.skel--navlink:last-child{width:32px;display:block}.footer{text-align:center;flex-direction:column;gap:4px}}@media (max-width:380px){:root{--gutter:16px}.display{font-size:26px}.cert-card{flex-direction:column}.cert-badge{width:100px}.nav-drawer__panel{border-left:none;width:100vw;padding:72px 24px 40px}.nav-drawer__link{font-size:20px}.project-link,.project-link--disabled{grid-template-columns:1fr;gap:4px}.project-year{display:none}.work-filter-btn{padding:6px 8px 8px;font-size:11px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
