@font-face{font-family:Unbounded;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9a5bda4b84d685f8-s.3w7f_p1-p40wk.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:Unbounded;font-style:normal;font-weight:600;font-display:swap;src:url(../media/3383ca8b946b84c9-s.403cw4u-aurg6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded;font-style:normal;font-weight:600;font-display:swap;src:url(../media/056b57ca797dfa24-s.0aam4xq51u8ez.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:Unbounded;font-style:normal;font-weight:600;font-display:swap;src:url(../media/acc52fee236b8039-s.2--ii1rah3vw3.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Unbounded;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9d9d8fde33b299ed-s.p.3tqbdkkdqajd-.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:Unbounded;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9a5bda4b84d685f8-s.3w7f_p1-p40wk.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:Unbounded;font-style:normal;font-weight:700;font-display:swap;src:url(../media/3383ca8b946b84c9-s.403cw4u-aurg6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded;font-style:normal;font-weight:700;font-display:swap;src:url(../media/056b57ca797dfa24-s.0aam4xq51u8ez.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:Unbounded;font-style:normal;font-weight:700;font-display:swap;src:url(../media/acc52fee236b8039-s.2--ii1rah3vw3.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Unbounded;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9d9d8fde33b299ed-s.p.3tqbdkkdqajd-.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:Unbounded Fallback;src:local(Arial);ascent-override:73.93%;descent-override:18.2%;line-gap-override:0.0%;size-adjust:134.59%}.HBERoq_className{font-family:Unbounded,Unbounded Fallback;font-style:normal}.HBERoq_variable{--font-display:"Unbounded", "Unbounded Fallback"}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/44ed10da57ebfb0e-s.2e4y-bhazgt_v.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/73263b2957b73100-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/ab664c0e419cc841-s.2mglm451ism6l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/6fca7e74603dd412-s.3bjsqkuy1d2v8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/c1b11b726b36a5e5-s.0xluf1kzv7x5w.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/48eea41d8317494f-s.p.45487z7p3r8wm.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/44ed10da57ebfb0e-s.2e4y-bhazgt_v.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/73263b2957b73100-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/ab664c0e419cc841-s.2mglm451ism6l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/6fca7e74603dd412-s.3bjsqkuy1d2v8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/c1b11b726b36a5e5-s.0xluf1kzv7x5w.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/48eea41d8317494f-s.p.45487z7p3r8wm.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.yGqNIa_className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.yGqNIa_variable{--font-sans:"IBM Plex Sans", "IBM Plex Sans Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/faab88e4be272d29-s.3zhtymus0wdqb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a45aa1001bf9176f-s.3nkuoiize4urq.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/41ba59f553543ecf-s.1da667lu-u79a.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/67bba87670b402d1-s.1i05ju5aeyhye.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d6c1ff7e86974212-s.p.1dgcou5jor5q_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/49b1d53681a91a99-s.31-2bzhq1gx_9.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/123d516c9baeb953-s.3xauquyg2sixn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a74d2542cc4c775f-s.2taws-qdxmzlf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7ac0b1cd3e695dd0-s.0htwiiqufp3l9.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/916cd8a3bde3edf8-s.p.28xcb7557rbh2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.VCrZzq_className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.VCrZzq_variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:var(--sans);--font-mono:var(--mono);--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--sans);--default-mono-font-family:var(--mono);--font-display:var(--display)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--canvas:#0e1625;--panel:#152034;--ink:#e7ecf3;--ink-2:#93a0b4;--dim:#3a4760;--grid:#24324a;--ok:#3dd598;--svc-experience:#6e8cff;--svc-projects:#f2a65a;--svc-skills:#3ccfb4;--svc-achievements:#a98bff;--svc-contact:#ff7a98;--ok-text:#3dd598;--projects-text:#f2a65a;--unlit:#5f6b80;--display:var(--font-display), system-ui, sans-serif;--sans:var(--font-sans), system-ui, sans-serif;--mono:var(--font-mono), ui-monospace, monospace;--edge:clamp(16px, 3vw, 40px);--ease-out:cubic-bezier(.2, .7, .2, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--canvas:#eef1f4;--panel:#f9fafb;--ink:#172033;--ink-2:#556074;--dim:#c3cbd6;--grid:#d5dbe3;--ok:#1f9d6b;--svc-experience:#2f5bea;--svc-projects:#d9822b;--svc-skills:#12a38a;--svc-achievements:#7c4ddb;--svc-contact:#d63e62;--ok-text:#167a54;--projects-text:#b4631a;--unlit:#7d8797;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}:root[data-theme=light]{--canvas:#eef1f4;--panel:#f9fafb;--ink:#172033;--ink-2:#556074;--dim:#c3cbd6;--grid:#d5dbe3;--ok:#1f9d6b;--svc-experience:#2f5bea;--svc-projects:#d9822b;--svc-skills:#12a38a;--svc-achievements:#7c4ddb;--svc-contact:#d63e62;--ok-text:#167a54;--projects-text:#b4631a;--unlit:#7d8797;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html{-webkit-text-size-adjust:100%}body{background:var(--canvas);color:var(--ink);font:400 1.0625rem/1.6 var(--sans);-webkit-font-smoothing:antialiased;min-height:100svh;overflow-x:clip}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--svc-experience);outline-offset:3px;border-radius:4px}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.mono{font-family:var(--mono)}.skip{left:var(--edge);z-index:100;background:var(--ink);color:var(--canvas);font:500 .875rem/1 var(--sans);border-radius:8px;padding:8px 12px;position:fixed;top:8px;transform:translateY(-200%)}.skip:focus{transform:none}.field{z-index:0;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0}main,footer{z-index:1;position:relative}.edge{z-index:30;top:var(--edge);font:500 .875rem/1.3 var(--sans);align-items:center;gap:16px;display:flex;position:fixed}.edge.l{left:var(--edge)}.edge.r{right:var(--edge);text-align:right}.edge a{text-decoration:none}.edge .logo{color:var(--ink);line-height:0;transition:filter .7s,opacity .7s,transform .7s;display:block}.edge .logo svg{display:block}[data-intro=pending] .edge .logo{filter:blur(8px);opacity:0;transform:translateY(4px)}.logo-cursor{animation:1.1s step-end .9s 3 logo-blink}@keyframes logo-blink{50%{opacity:0}}.edge .muted{color:var(--ink-2)}.themebtn{border:1px solid var(--grid);width:32px;height:32px;color:var(--ink);background:0 0;border-radius:999px;place-content:center;display:grid}.themebtn svg{width:16px;height:16px}.chars .c{white-space:pre;transition:filter .7s,opacity .7s,transform .7s;transition-delay:calc(var(--i) * 18ms + var(--d,0s));display:inline-block}[data-intro=pending] .chars .c{filter:blur(8px);opacity:0;transform:translateY(.25em)}@media (max-width:767px){.edge.r .chars{display:none}}.ch{padding:0 var(--edge);position:relative}.tag{font:500 .8125rem/1 var(--mono);color:var(--ink-2);align-items:center;gap:8px;margin-bottom:22px;display:inline-flex}.tag:before{content:"";background:var(--c);border-radius:2px;width:8px;height:8px}.sec-h{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px;display:flex}.sec-h h2,.page-h{font:600 clamp(2rem, 5vw, 4rem) / 1 var(--display);letter-spacing:-.03em}.sec-h p{color:var(--ink-2);max-width:40ch}.textlink{font:500 .9375rem/1.4 var(--mono);color:var(--ink);text-underline-offset:4px;text-decoration:underline;-webkit-text-decoration-color:var(--grid);-webkit-text-decoration-color:var(--grid);-webkit-text-decoration-color:var(--grid);text-decoration-color:var(--grid)}.textlink:hover{text-decoration-color:currentColor}#hero{flex-direction:column;justify-content:center;min-height:100svh;padding-top:96px;padding-bottom:120px;display:flex}.lead{font:500 1rem/1 var(--mono);color:var(--ink-2);margin-bottom:18px}.mega{font:700 clamp(2.4rem, 9.2vw, 9.6rem) / .92 var(--display);letter-spacing:-.035em;text-transform:uppercase}.mega .ln{flex-wrap:wrap;align-items:center;gap:clamp(10px,1.6vw,26px);display:flex}.mega .ln:nth-child(2){justify-content:flex-end}.mega .w{display:inline-block}.tile{aspect-ratio:1.35;border:1px solid var(--grid);background:var(--panel);border-radius:10px;flex-direction:column;justify-content:space-between;gap:6px;width:clamp(104px,12.5vw,190px);padding:10px 12px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.tile{background:color-mix(in srgb, var(--panel) 80%, transparent)}}.tile{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font:500 .75rem/1.25 var(--mono);letter-spacing:0;text-transform:none;color:var(--ink-2);vertical-align:middle}.tile b{font:600 clamp(.95rem, 1.4vw, 1.35rem) / 1.1 var(--display);color:var(--ink);letter-spacing:-.01em}.tile i{align-items:center;gap:6px;font-style:normal;display:flex}.tile i:before{content:"";background:var(--c);border-radius:2px;width:7px;height:7px}.hero-foot{gap:28px;margin-top:clamp(28px,5vh,56px);display:grid}.hero-text{flex-direction:column;align-items:flex-start;gap:24px;display:flex}@media (min-width:900px){.hero-foot{grid-template-columns:minmax(0,1fr) minmax(380px,520px);align-items:end}}.api{--hw:30px;border:1px solid var(--grid);background:var(--panel);border-radius:12px;justify-self:end;width:100%;max-width:560px}@supports (color:color-mix(in lab, red, red)){.api{background:color-mix(in srgb, var(--panel) 80%, transparent)}}.api{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:var(--mono);overflow:hidden}.api-head{border-bottom:1px solid var(--grid);min-height:50px;font:500 .8125rem/1 var(--mono);color:var(--ink);flex-wrap:wrap;align-items:center;gap:8px;padding:9px 12px 9px 14px;display:flex}.api-verb{color:var(--ok-text)}.api-ok{margin-left:auto;padding:6px 10px}.api:not([data-phase=done]) .api-ok{opacity:0;transform:translateY(6px)}.api-tabs{flex-wrap:wrap;gap:4px;display:none}[data-js] .api-tabs{display:flex}[data-js] .api-path{display:none}.api-tab{font:500 .75rem/1 var(--mono);border:1px solid var(--grid);color:var(--ink-2);background:0 0;border-radius:999px;padding:6px 9px}.api-tab:hover{color:var(--ink);border-color:var(--ink-2)}.api-tab[aria-pressed=true]{color:var(--canvas);background:var(--ink);border-color:var(--ink)}.api-hops{justify-content:space-between;padding:10px 14px 2px;display:flex;position:relative}.api-hops .rt-line{left:calc(14px + var(--hw));right:calc(14px + var(--hw));top:15px}.api-hop{z-index:1;width:calc(var(--hw) * 2);font:400 .6875rem/1 var(--mono);color:var(--ink-2);flex-direction:column;align-items:center;gap:5px;display:flex;position:relative}.api-hop .rt-dot{width:9px;height:9px;margin:0}.api-hop.on .rt-dot{background:var(--c);border-color:var(--c);box-shadow:0 0 0 3px var(--c)}@supports (color:color-mix(in lab, red, red)){.api-hop.on .rt-dot{box-shadow:0 0 0 3px color-mix(in srgb, var(--c) 22%, transparent)}}.api-hops .rt-packet{z-index:2;left:calc(14px + var(--hw) - 4px);top:11px}.api-body{scrollbar-width:thin;scrollbar-color:var(--grid) transparent;height:calc(12.4em + 24px);font:400 .78rem/1.55 var(--mono);color:var(--ink-2);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:10px 14px 14px;overflow:hidden auto}.api-body::-webkit-scrollbar{width:6px}.api-body::-webkit-scrollbar-track{background:0 0}.api-body::-webkit-scrollbar-thumb{background:var(--grid);border-radius:999px}.api-body:focus-visible{outline-offset:-2px}.j-key{color:var(--ink)}.j-str,.j-num,.j-lit{color:var(--ok-text)}.j-link{color:var(--ok-text);text-underline-offset:3px;text-decoration:underline}.api-body a:hover .j-link{color:var(--ink)}.api-caret{vertical-align:text-bottom;background:var(--ok);width:7px;height:1.05em;display:inline-block}[data-intro=pending] .api-body .api-line,[data-intro=pending] .api-hop .rt-dot{opacity:.001}[data-intro=pending] .api-hop .rt-dot{opacity:1;background:var(--canvas);border-color:var(--grid);box-shadow:none}@media (max-width:899px){.api{justify-self:stretch;max-width:none}}@media (max-width:480px){.api-body{height:auto;min-height:calc(12.4em + 24px);font-size:.72rem;overflow-y:visible}.api-ok{margin-left:0}}.rt-line{background:var(--grid);height:1px;position:absolute}.rt-dot{border:1px solid var(--grid);background:var(--canvas);border-radius:50%;transition:background .25s,border-color .25s,box-shadow .25s;display:block}.rt-packet{background:var(--ink);width:8px;height:8px;box-shadow:0 0 10px var(--ink);opacity:0;pointer-events:none;border-radius:50%;position:absolute}.rt-packet.rt-res{background:var(--ok);box-shadow:0 0 10px var(--ok)}.intro{max-width:36ch;color:var(--ink-2);font-size:1.0625rem}.intro strong{color:var(--ink);font-weight:500}.okchip{font:500 .8125rem/1 var(--mono);color:var(--ok-text);border:1px solid;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;transition:opacity .5s,transform .5s;display:inline-flex}.okchip:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}[data-intro] .okchip{opacity:0;transform:translateY(8px)}.hint{font:400 .8125rem/1.4 var(--mono);color:var(--ink-2)}.status{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.tldr-link{font:400 .8125rem/1.4 var(--mono);color:var(--ink-2);text-underline-offset:4px;margin-top:-10px;text-decoration:underline}.tldr-link:hover{color:var(--ink)}@media (pointer:coarse){.kb{display:none}}@media (max-width:767px){.mega .ln:nth-child(2){justify-content:flex-start}.tile{aspect-ratio:auto;flex-direction:row;align-items:center;gap:10px;width:auto;padding:8px 10px}.tile b{font-size:.9rem}}#statement{height:230vh}.sticky{align-items:center;height:100svh;display:flex;position:sticky;top:0;overflow:hidden}.stmt{z-index:2;max-width:min(19ch,64vw);font:600 clamp(1.6rem, 3.7vw, 3.5rem) / 1.12 var(--display);letter-spacing:-.025em;position:relative}#statement .sticky{clip-path:inset(84px 0 0)}.stmt .w{transition:color .25s}.stmt .w.k{color:var(--projects-text)}[data-js] .stmt[data-armed] .w:not(.on){color:var(--unlit)}.float{z-index:1;border:1px solid var(--grid);background:var(--panel);will-change:transform;border-radius:12px;width:clamp(180px,20vw,300px);padding:14px;position:absolute;transform:translateY(-10vh);box-shadow:0 30px 60px -30px #00000073}.float .bar{background:var(--c);border-radius:2px;height:3px;margin-bottom:12px}.float .t{font:600 .95rem/1.2 var(--display);margin-bottom:10px}.float .l{background:var(--grid);border-radius:4px;height:7px;margin:7px 0}.float .row{gap:8px;margin-top:10px;display:flex}.float .box{border:1px solid var(--grid);border-radius:6px;flex:1;height:38px}.float .box.hl{border-color:var(--c)}@media (max-width:1023px){.float{display:none}.stmt{max-width:none}}#ring{height:200vh}#ring .sticky{justify-content:center}.ringwrap{aspect-ratio:1;width:min(78vw,620px);position:relative}.ringwrap svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ringtext{font:600 22px var(--display);letter-spacing:.02em;fill:var(--ink);text-transform:uppercase}.ringtext.sub{fill:var(--ink-2)}.clock{text-align:center;place-content:center;gap:8px;display:grid;position:absolute;inset:0}.clock b{font:600 clamp(2.4rem, 7vw, 5rem) / 1 var(--display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.clock span{font:500 .875rem/1.3 var(--mono);color:var(--ink-2)}#work,#experience,#achievements{content-visibility:auto;contain-intrinsic-size:auto 1100px}#work{padding-top:18vh;padding-bottom:12vh}.rows{border-top:1px solid var(--grid)}.prow{border-bottom:1px solid var(--grid);grid-template-columns:72px 1fr auto;align-items:baseline;gap:20px;padding:clamp(18px,3vw,34px) 0;text-decoration:none;display:grid;position:relative}.prow:after{content:"";background:var(--c);transform-origin:0;width:100%;height:2px;transition:transform .45s var(--ease-out);position:absolute;bottom:-1px;left:0;transform:scaleX(0)}.prow:hover:after,.prow:focus-visible:after{transform:scaleX(1)}.prow .n{font:500 .875rem/1 var(--mono);color:var(--ink-2)}.prow .ttl{font:600 clamp(2rem, 6.2vw, 5.6rem) / .95 var(--display);letter-spacing:-.035em;transition:transform .45s var(--ease-out);display:inline-block}.prow:hover .ttl,.prow:focus-visible .ttl{transform:translate(14px)}.prow .ep{font:400 .8125rem/1.4 var(--mono);color:var(--ink-2);letter-spacing:0;margin-top:10px;display:block}.prow .meta{text-align:right;font:400 .875rem/1.5 var(--mono);color:var(--ink-2);white-space:nowrap}.prow .sum{color:var(--ink-2);margin-top:8px;font-size:.975rem;display:none}.st{color:var(--ink-2);align-items:center;gap:6px;display:inline-flex}.st:before{content:"";background:var(--ok);border-radius:50%;width:7px;height:7px}.st.live{color:var(--ok-text)}.st.building:before{background:var(--svc-projects)}.st.code:before{background:var(--ink-2)}.queue{font:400 .9375rem/1.5 var(--mono);color:var(--ink-2);margin-top:22px}.queue a,.page-intro a,.mdx a,.kv a{color:var(--ink);text-underline-offset:4px;text-decoration:underline}.allwork{margin-top:18px;display:inline-block}.preview{z-index:40;pointer-events:none;opacity:0;background:var(--panel);border:1px solid var(--grid);border-radius:12px;width:300px;padding:16px;transition:opacity .25s;position:fixed;top:0;left:0;box-shadow:0 40px 80px -30px #00000080}.preview.on{opacity:1}.preview .bar{background:var(--c);border-radius:2px;height:3px;margin-bottom:12px}.preview h3{font:600 1.15rem/1.2 var(--display)}.preview p{color:var(--ink-2);margin-top:8px;font-size:.9rem;line-height:1.45}.preview .stk{font:400 .75rem/1.5 var(--mono);color:var(--ink-2);margin-top:10px}@media (max-width:767px){.prow{grid-template-columns:40px 1fr}.prow .meta{text-align:left;white-space:normal;grid-column:2}.prow .sum{display:block}}@media (pointer:coarse){.prow .sum{display:block}}#experience{padding-top:12vh;padding-bottom:12vh}.trace{--lab:clamp(150px, 26vw, 340px);margin-top:8px;position:relative}.axis{margin-left:var(--lab);font:400 .75rem/1 var(--mono);color:var(--ink-2);border-bottom:1px solid var(--grid);padding-bottom:10px;display:grid}.trow{grid-template-columns:var(--lab) 1fr;border-bottom:1px solid var(--grid);align-items:center;min-height:58px;display:grid}.trow .lab{padding:8px 16px 8px 0}.trow .lab b{font-size:.975rem;font-weight:500;line-height:1.35;display:block}.trow .lab span{font:400 .8125rem/1.3 var(--mono);color:var(--ink-2)}.track{height:100%;min-height:58px;position:relative}.span{background:var(--c);transform-origin:0;height:12px;transition:transform 1.1s var(--ease-out);border-radius:3px;margin-top:-6px;position:absolute;top:50%}[data-js] .trace[data-armed]:not(.in) .span{transform:scaleX(0)}.span.live:after{content:"";background:var(--c);border-radius:50%;width:10px;height:10px;margin-top:-5px;animation:1.8s infinite live;position:absolute;top:50%;right:-5px}@keyframes live{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--c) 70%, transparent)}to{box-shadow:0 0 0 12px #0000}}.nowtrack{left:var(--lab);pointer-events:none;position:absolute;top:0;bottom:0;right:0}.nowline{background:var(--ok);width:1px;position:absolute;top:-22px;bottom:0}.nowline span{font:500 .75rem/1 var(--mono);color:var(--ok-text);position:absolute;top:0;left:6px}.exp{grid-template-columns:1fr 1fr;gap:40px;margin-top:40px;display:grid}.exp h3{font:600 1.5rem/1.2 var(--display);letter-spacing:-.02em}.exp .when{font:400 .875rem/1.4 var(--mono);color:var(--ink-2);margin-top:6px}.exp ul,.prose-list{color:var(--ink-2);margin-top:14px;padding-left:18px;list-style:outside}.exp li,.prose-list li{margin:8px 0}.stack{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.stack span,.chip{font:400 .8125rem/1 var(--mono);border:1px solid var(--grid);color:var(--ink-2);border-radius:999px;padding:7px 10px}@media (max-width:767px){.exp{grid-template-columns:1fr}.axis span:nth-child(2n){visibility:hidden}}#achievements{padding-top:10vh;padding-bottom:14vh}.nums{border-top:1px solid var(--grid);grid-template-columns:repeat(4,1fr);display:grid}.num{border-bottom:1px solid var(--grid);padding:28px 20px 28px 0}.num b{font:600 clamp(2.4rem, 6vw, 5.2rem) / 1 var(--display);letter-spacing:-.04em;font-variant-numeric:tabular-nums;display:block}.num span{color:var(--ink-2);max-width:22ch;margin-top:12px;font-size:.9375rem;display:block}.extra{color:var(--ink-2);margin-top:24px}@media (max-width:900px){.nums{grid-template-columns:repeat(2,1fr)}}#contact{flex-direction:column;justify-content:flex-end;min-height:100svh;padding-bottom:9vh;display:flex}#contact>*{max-width:min(100%,50vw)}.talk{font:700 clamp(3rem, 9vw, 9.5rem) / .86 var(--display);letter-spacing:-.05em;text-transform:uppercase}.talk span{display:block}.talk span:nth-child(2){padding-left:.6em}.mecap{z-index:2;font:500 .8125rem/1 var(--mono);color:var(--ok-text);opacity:0;pointer-events:none;white-space:nowrap;transition:opacity .6s;position:fixed;top:0;left:0}.cta{flex-wrap:wrap;align-items:center;gap:12px;margin-top:40px;display:flex}.btn{border:1px solid var(--ink);background:var(--ink);height:52px;color:var(--canvas);font:500 1rem/1 var(--sans);white-space:nowrap;border-radius:999px;align-items:center;gap:10px;padding:0 22px;text-decoration:none;display:inline-flex}.btn.ghost{color:var(--ink);border-color:var(--grid);background:0 0}.btn.ghost:hover{border-color:var(--ink-2)}.btn:active{transform:translateY(1px)}.contact-line{color:var(--ink-2);max-width:46ch;margin-top:22px}@media (max-width:767px){#contact{padding-top:60vh;padding-bottom:6vh}#contact>*{max-width:100%}}.site-foot{padding:28px var(--edge) 120px;border-top:1px solid var(--grid);font:400 .8125rem/1.4 var(--mono);color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;gap:16px;display:flex}.site-foot a{text-underline-offset:4px;text-decoration:underline}.dock{z-index:50;border:1px solid var(--grid);background:var(--panel);border-radius:999px;align-items:center;gap:6px;padding:6px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab, red, red)){.dock{background:color-mix(in srgb, var(--panel) 82%, transparent)}}.dock{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);max-width:calc(100vw - 24px);box-shadow:0 20px 50px -20px #00000080}.req{background:var(--canvas);border:1px solid var(--grid);height:42px;font:500 .875rem/1 var(--mono);border-radius:999px;align-items:center;gap:8px;min-width:0;padding:0 14px;display:flex}.req:focus-within{border-color:var(--ink-2)}.req .verb{color:var(--ok-text)}.req input{width:150px;min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0}.req input::placeholder{color:var(--ink-2)}.dock nav{display:flex}.dock nav a{height:42px;font:500 .9375rem/1 var(--sans);color:var(--ink-2);border-radius:999px;align-items:center;padding:0 14px;text-decoration:none;display:inline-flex}.dock nav a:hover,.dock nav a[aria-current=page]{color:var(--ink);background:var(--canvas)}.dock .resume{background:var(--ink);height:42px;color:var(--canvas);font:500 .9375rem/1 var(--sans);border-radius:999px;align-items:center;gap:8px;padding:0 16px;text-decoration:none;display:inline-flex}.dock .resume:before{content:"";background:var(--ok);border-radius:50%;width:7px;height:7px}.kbd{font:500 .75rem/1 var(--mono);color:var(--ink-2);border:1px solid var(--grid);border-radius:5px;padding:4px 6px}@media (max-width:767px){.dock nav,.kbd{display:none}.dock{width:calc(100vw - 24px);bottom:12px}.req{flex:1}.req input{width:100%}}.toast{z-index:60;opacity:0;background:var(--ink);color:var(--canvas);font:500 .875rem/1.3 var(--mono);pointer-events:none;border-radius:8px;max-width:calc(100% - 32px);padding:10px 14px;transition:opacity .3s,transform .3s;position:fixed;bottom:86px;left:50%;transform:translate(-50%,10px)}.toast.show{opacity:1;transform:translate(-50%)}.cursor{z-index:70;pointer-events:none;background:var(--ink);border-radius:50%;width:10px;height:10px;margin:-5px 0 0 -5px;transition:width .25s,height .25s,margin .25s,background .25s;display:none;position:fixed;top:0;left:0}.cursor.big{background:var(--ink);width:54px;height:54px;margin:-27px 0 0 -27px}@supports (color:color-mix(in lab, red, red)){.cursor.big{background:color-mix(in srgb, var(--ink) 12%, transparent)}}.cursor.big{border:1px solid var(--ink)}.cursor.big:after{content:"GET";font:500 .6875rem/1 var(--mono);color:var(--ink);place-content:center;display:grid;position:absolute;inset:0}@media (pointer:fine){.cursor.ready{display:block}}.page{padding:clamp(110px, 16vh, 160px) var(--edge) 80px;min-height:100svh}.page-intro{color:var(--ink-2);max-width:60ch;margin-top:18px}.body{max-width:68ch}.body p+p{margin-top:1em}.filters{flex-wrap:wrap;gap:8px;margin:36px 0 28px;display:flex}.filters a{font:500 .875rem/1 var(--mono);border:1px solid var(--grid);color:var(--ink-2);border-radius:999px;padding:10px 14px;text-decoration:none}.filters a[aria-current=true]{color:var(--canvas);background:var(--ink);border-color:var(--ink)}.grid-work{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:16px;display:grid}.wtile{border:1px solid var(--grid);background:var(--panel);border-radius:14px;flex-direction:column;gap:12px;padding:22px;display:flex}@supports (color:color-mix(in lab, red, red)){.wtile{background:color-mix(in srgb, var(--panel) 85%, transparent)}}.wtile{min-height:240px;text-decoration:none;position:relative;overflow:hidden}.wtile[hidden]{display:none}.wtile:before{content:"";background:var(--c);width:48px;height:3px;transition:width .45s var(--ease-out);border-radius:2px}.wtile:hover:before,.wtile:focus-visible:before{width:100%}.wtile h2{font:600 1.75rem/1.05 var(--display);letter-spacing:-.03em}.wtile p{color:var(--ink-2);font-size:.975rem;line-height:1.5}.wtile .ep{font:400 .8125rem/1.4 var(--mono);color:var(--ink-2)}.wtile .foot{font:400 .8125rem/1.4 var(--mono);color:var(--ink-2);justify-content:space-between;gap:12px;margin-top:auto;display:flex}.cs-head{border-bottom:1px solid var(--grid);gap:18px;padding-bottom:36px;display:grid}.cs-title{font:700 clamp(2.6rem, 8vw, 7rem) / .95 var(--display);letter-spacing:-.04em}.cs-summary{max-width:52ch;font-size:1.2rem;line-height:1.5}.cs-meta{font:400 .875rem/1.4 var(--mono);color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex}.metrics{border-top:1px solid var(--grid);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-top:8px;display:grid}.metric{border-bottom:1px solid var(--grid);flex-direction:column-reverse;justify-content:flex-end;padding:18px 16px 18px 0;display:flex}.metric b{font:600 1.75rem/1.1 var(--display);letter-spacing:-.03em;display:block}.metric span{font:400 .8125rem/1.4 var(--mono);color:var(--ink-2);margin-top:6px;display:block}.mdx{max-width:68ch;padding-top:24px}.mdx h2{font:600 clamp(1.5rem, 3vw, 2.2rem) / 1.15 var(--display);letter-spacing:-.025em;margin:2.2em 0 .6em}.mdx h3{font:600 1.25rem/1.3 var(--display);margin:1.6em 0 .5em}.mdx p{margin:.9em 0}.mdx ul{padding-left:1.2em;list-style:outside}.mdx ol{padding-left:1.2em;list-style:decimal}.mdx li{margin:.5em 0}.mdx strong{font-weight:500}.mdx a{text-underline-offset:4px}.mdx code{font:400 .9em var(--mono);background:var(--panel);border:1px solid var(--grid);border-radius:5px;padding:1px 5px}.callout{border:1px solid var(--grid);border-left:3px solid var(--c,var(--svc-experience));background:var(--panel);border-radius:10px;margin:1.4em 0;padding:14px 18px}.figure{margin:1.8em 0}.figure img,.figure video{border:1px solid var(--grid);border-radius:12px;width:100%;height:auto}.figure figcaption{font:400 .8125rem/1.4 var(--mono);color:var(--ink-2);margin-top:8px}.cs-cover{border:1px solid var(--grid);border-radius:14px;width:100%;height:auto;margin-top:12px}.next-proj{border-top:1px solid var(--grid);margin-top:64px;padding-top:28px;text-decoration:none;display:block}.next-proj span{font:400 .875rem/1.4 var(--mono);color:var(--ink-2)}.next-proj b{font:600 clamp(2rem, 5vw, 3.6rem) / 1 var(--display);letter-spacing:-.035em;margin-top:8px;display:block}.about-grid{gap:56px;margin-top:56px;display:grid}.about-grid h2{font:600 1.5rem/1.2 var(--display);letter-spacing:-.02em;margin-bottom:12px}.kv{border-top:1px solid var(--grid)}.kv>div{border-bottom:1px solid var(--grid);grid-template-columns:minmax(120px,.4fr) 1fr;gap:16px;padding:14px 0;display:grid}.kv dt{font:400 .875rem/1.5 var(--mono);color:var(--ink-2)}.tldr-list{border-top:1px solid var(--grid);max-width:80ch;margin-top:36px}.tldr-list>div{border-bottom:1px solid var(--grid);grid-template-columns:130px 1fr;gap:16px;padding:16px 0;display:grid}.tldr-list dt{font-weight:500}.tldr-list dd{color:var(--ink-2)}@media (max-width:600px){.tldr-list>div,.kv>div{grid-template-columns:1fr;gap:4px}}.nf-code{font:700 clamp(5rem, 22vw, 16rem) / .9 var(--display);letter-spacing:-.06em}.cmd-overlay{z-index:80;background:var(--canvas);position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.cmd-overlay{background:color-mix(in srgb, var(--canvas) 60%, transparent)}}.cmd-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:start center;padding:14vh 16px 16px;display:grid}.cmd{border:1px solid var(--grid);background:var(--panel);width:min(640px,100%);font-family:var(--mono);border-radius:14px;overflow:hidden;box-shadow:0 40px 80px -30px #0000008c}.cmd [cmdk-input]{width:100%;color:var(--ink);font:500 1rem/1 var(--mono);border:0;border-bottom:1px solid var(--grid);background:0 0;outline:0;padding:18px}.cmd [cmdk-input]::placeholder{color:var(--ink-2)}.cmd [cmdk-list]{max-height:min(52vh,420px);padding:8px;overflow:auto}.cmd [cmdk-group-heading]{font:500 .75rem/1 var(--mono);color:var(--ink-2);padding:10px 10px 6px}.cmd [cmdk-item]{color:var(--ink);cursor:pointer;border-radius:8px;justify-content:space-between;gap:12px;padding:10px;font-size:.875rem;display:flex}.cmd [cmdk-item] small{color:var(--ink-2)}.cmd [cmdk-item][data-selected=true]{background:var(--canvas)}.cmd [cmdk-empty],.cmd .out{color:var(--ink-2);white-space:pre-wrap;padding:12px 10px;font-size:.875rem}::view-transition-group(.morph){animation-duration:.45s;animation-timing-function:var(--ease-out)}@media (prefers-reduced-motion:reduce){.cursor{display:none!important}.logo-cursor{animation:none}.rt-dot,.api-ok,.chars .c,.edge .logo,.span,.prow .ttl,.prow:after,.stmt .w,.wtile:before{transition:none!important}.span.live:after{animation:none}::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
