@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/dm-sans-latin-ext-opsz-normal.oos9povj.woff2)format("woff2-variations");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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/dm-sans-latin-opsz-normal.Bf69Tn_J.woff2)format("woff2-variations");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}:root{--bg:#fafafa;--panel:#fff;--ink:#0f1115;--muted:#5c6370;--rule:#e7e8eb;--accent:#2f6feb;--accent-soft:#eaf1fe;--font:"DM Sans Variable", ui-sans-serif, system-ui, sans-serif;--side:23rem;--measure:44rem;--gutter:clamp(1rem, 5vw, 1.5rem);--label:9rem;--radius:12px;--radius-sm:6px;--ease:cubic-bezier(.2, 0, 0, 1);color-scheme:light dark}@media screen and (prefers-color-scheme:dark){:root:not([data-scheme=light]){--bg:#0d0e10;--panel:#141518;--ink:#edeef0;--muted:#9aa0aa;--rule:#24262b;--accent:#6ea0ff;--accent-soft:#16213a}}@media screen{:root[data-scheme=dark]{--bg:#0d0e10;--panel:#141518;--ink:#edeef0;--muted:#9aa0aa;--rule:#24262b;--accent:#6ea0ff;--accent-soft:#16213a;color-scheme:dark}}:root[data-scheme=light]{color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);color:var(--ink);font:400 1rem/1.55 var(--font);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}h1,h2,h3,p,ul,ol,dl,dd{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px;text-decoration-color:color-mix(in srgb, currentColor 35%, transparent)}a:hover{color:var(--accent);text-decoration-color:currentColor}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a:not(.button):focus-visible{border-radius:3px}::selection{background:color-mix(in srgb, var(--accent) 22%, transparent)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.num{font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.page{max-width:76rem;margin-inline:auto}.profile-top{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.scheme-toggle{border:1px solid var(--rule);width:2.5rem;height:2.5rem;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;padding:0;transition:color .15s,background-color .15s,border-color .15s;display:grid}.scheme-toggle:hover{border-color:color-mix(in srgb, var(--muted) 45%, var(--rule));background:var(--panel);color:var(--ink)}.scheme-toggle svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.scheme-toggle[aria-pressed=true] .icon-moon,.scheme-toggle:not([aria-pressed=true]) .icon-sun{display:none}.avatar{background:var(--accent-soft);width:56px;height:56px;color:var(--accent);letter-spacing:-.01em;user-select:none;border-radius:50%;place-items:center;font-size:1.5rem;font-weight:650;line-height:1;display:grid}h1{letter-spacing:-.02em;text-wrap:balance;margin-top:1.25rem;font-size:2.125rem;font-weight:650;line-height:1.1}.role{color:var(--muted);margin-top:.375rem;font-size:1.0625rem}.intro{text-wrap:pretty;max-width:40ch;margin-top:1.25rem;font-size:.9375rem;line-height:1.55}.facts{margin-top:1.5rem;font-size:.875rem;line-height:1.5}.facts>div{border-top:1px solid var(--rule);grid-template-columns:5.75rem minmax(0,1fr);gap:1rem;padding-block:.5rem;display:grid}.facts>div:last-child{border-bottom:1px solid var(--rule)}.facts dt,.clock{color:var(--muted)}.clock{display:block}.actions{flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-top:1.5rem;display:flex}.button{background:var(--ink);min-height:40px;color:var(--bg);border-radius:8px;align-items:center;padding:0 1rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.button:hover{background:color-mix(in srgb, var(--ink) 84%, var(--bg));color:var(--bg)}.text-link{font-size:.875rem;font-weight:600}.spy-track{position:relative}.spy a{color:var(--muted);font-size:.9375rem;font-weight:500;line-height:1.4;text-decoration:none;display:block}.spy a:hover,.spy a[aria-current]{color:var(--ink)}.spy-bar{background:var(--accent);pointer-events:none;position:absolute;top:0;left:0}.spy[data-ready]:not([data-still]) .spy-bar{transition:transform .28s var(--ease), width .28s var(--ease), height .28s var(--ease)}.social{grid-template-columns:repeat(3,max-content);gap:.25rem 1.25rem;font-size:.875rem;display:grid}.social a{color:var(--muted);padding-block:.125rem;text-decoration:none;display:inline-block}.social a:hover{color:var(--ink);text-decoration:underline}.content{container:content/inline-size}.content,.foot{max-width:var(--measure)}.section{scroll-margin-top:3rem}.section+.section{margin-top:3.5rem}h2{letter-spacing:-.01em;margin-bottom:1.25rem;font-size:1.25rem;font-weight:650;line-height:1.3}.label{color:var(--muted);font-size:.875rem;font-weight:400;line-height:1.5}.pair{grid-template-columns:minmax(0,1fr);gap:.375rem;display:grid}@container content (width>=30rem){.pair{grid-template-columns:var(--label) minmax(0, 1fr);align-items:baseline;gap:1.5rem}}.chips{flex-wrap:wrap;gap:.375rem;display:flex}.chip{border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--panel);white-space:nowrap;padding:.125rem .5rem;font-size:.8125rem;line-height:1.5}.now{border:1px solid var(--rule);border-radius:var(--radius);background:var(--panel);padding:1.5rem 1.75rem 1.75rem}.now-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1rem;font-size:.875rem;display:flex}.now-label{color:var(--accent);font-size:inherit;font-weight:600}.now-since{color:var(--muted)}.now-company{letter-spacing:-.015em;margin-top:.875rem;font-size:1.375rem;font-weight:650;line-height:1.2}.now-role{color:var(--muted);margin-top:.25rem}.now-summary{text-wrap:pretty;max-width:62ch;margin-top:1rem;font-size:.9375rem;line-height:1.6}@container content (width<30rem){.now{padding:1.25rem 1.25rem 1.5rem}}.domains{margin-top:1.5rem}.results{grid-template-columns:minmax(0,1fr);column-gap:2.5rem;display:grid}@container content (width>=34rem){.results{grid-template-columns:repeat(2,minmax(0,1fr))}}.result{grid-row:span 4;grid-template-rows:subgrid;border-top:1px solid var(--rule);row-gap:0;padding-block:1rem 1.375rem;display:grid}.r-before{color:var(--muted);grid-row:1;font-size:.875rem;line-height:1.4}.r-before s{text-decoration-thickness:1px}.r-after{letter-spacing:-.02em;grid-row:2;font-size:1.75rem;font-weight:650;line-height:1.2}.r-what{text-wrap:pretty;grid-row:3;margin-top:.375rem;font-size:.9375rem;line-height:1.5}.r-source{color:var(--muted);grid-row:4;align-self:end;margin-top:.75rem;font-size:.8125rem}.jobs{border-bottom:1px solid var(--rule)}.jobs>li{border-top:1px solid var(--rule)}.job>summary{cursor:pointer;border-radius:8px;grid-template-columns:minmax(0,1fr) 1rem;grid-template-areas:"company icon""role icon""meta icon";align-items:baseline;column-gap:1rem;margin-inline:-.75rem;padding:.875rem .75rem;list-style:none;display:grid}.job>summary::-webkit-details-marker{display:none}.job>summary:hover{background:var(--panel)}.job>summary:focus-visible{outline-offset:0}.job-company{grid-area:company;font-weight:600}.job-role{color:var(--muted);grid-area:role;font-size:.9375rem}.job-meta{color:var(--muted);grid-area:meta;margin-top:.125rem;font-size:.875rem}.job-chevron{color:var(--muted);transition:rotate .2s var(--ease);grid-area:icon;align-self:center}.job[open] .job-chevron{rotate:180deg}@container content (width>=34rem){.job>summary{grid-template-columns:minmax(0,1fr) auto 1rem;grid-template-areas:"company dates icon""role dur icon"}.job-meta{display:contents}.job-dates{color:var(--ink);text-align:end;grid-area:dates}.job-dur{text-align:end;grid-area:dur}.job-sep{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.job-body{gap:1rem;max-width:68ch;padding:.25rem 0 1.5rem;font-size:.9375rem;line-height:1.6;display:grid}.job-highlights{gap:.375rem;padding-left:1.125rem;list-style:outside;display:grid}.job-highlights li{text-wrap:pretty;padding-left:.25rem}.job-highlights li::marker{color:var(--muted)}.skills{gap:1rem;display:grid}@container content (width>=30rem){.skills{gap:.75rem}}.rows{border-bottom:1px solid var(--rule)}.row{border-top:1px solid var(--rule);padding-block:.75rem}.row dd{font-size:.9375rem}.row-value{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;display:flex}.row-value a{overflow-wrap:anywhere}.copy{border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink);font:inherit;cursor:pointer;justify-items:center;margin-block:-.25rem;padding:.25rem .625rem;font-size:.8125rem;font-weight:500;line-height:1.4;display:inline-grid}.copy:hover{border-color:color-mix(in srgb, var(--muted) 45%, var(--rule))}.copy-label{grid-area:1/1}.copy-done,.copy[data-done] .copy-idle{visibility:hidden}.copy[data-done] .copy-done{visibility:visible}.foot{color:var(--muted);margin-top:4rem;font-size:.8125rem}@media (width>=64rem){.page{grid-template-columns:var(--side) minmax(0, 1fr);display:grid}.side{border-inline-end:1px solid var(--rule);scrollbar-width:thin;flex-direction:column;align-self:start;height:100dvh;padding:3rem 2.5rem 2.5rem;display:flex;position:sticky;top:0;overflow-y:auto}.spy{flex:1 0 auto;margin-top:2.25rem}.spy-track{border-inline-start:1px solid var(--rule)}.spy a{padding:.4375rem 0 .4375rem 1rem}.spy-bar{width:2px;height:var(--spy-h,0);transform:translateY(var(--spy-y,0));border-radius:2px;left:-1px}.social{border-top:1px solid var(--rule);margin-top:2rem;padding-top:1.25rem}.col{min-width:0;padding:3rem 3rem 2.5rem}}@media (width>=64rem) and (height<55rem){.side{padding-block:2rem 1.75rem}h1{margin-top:1rem}.intro{margin-top:.875rem}.facts{margin-top:1.125rem}.facts>div{padding-block:.375rem}.actions{margin-top:1.125rem}.spy{margin-top:1.5rem}.spy a{padding-block:.3125rem}.social{margin-top:1.5rem;padding-top:1rem}.col{padding-top:2rem}.section{scroll-margin-top:2rem}}@media (width>=64rem) and (height<48rem){.side{padding-block:1.5rem 1.25rem}.side .social{display:none}.col{padding-top:1.5rem}.section{scroll-margin-top:1.5rem}}@media (width<64rem){.page{flex-direction:column;display:flex}.side{display:contents}.profile,.social,.col{width:100%;max-width:calc(var(--measure) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.profile{order:1;padding-top:2.5rem}.social{order:2;padding-top:1.25rem;padding-bottom:2rem}.spy{z-index:10;background:var(--bg);box-shadow:inset 0 -1px var(--rule);order:3;position:sticky;top:0}.spy-track{padding-inline:max(var(--gutter), (100% - var(--measure)) / 2);scrollbar-width:none;overscroll-behavior-x:contain;display:flex;overflow-x:auto}.spy-track::-webkit-scrollbar{display:none}.spy-list{flex:none;gap:1.5rem;display:flex}.spy a{white-space:nowrap;padding-block:.8125rem}.spy a:focus-visible{outline-offset:-2px}.spy-bar{width:var(--spy-w,0);height:2px;transform:translateX(var(--spy-x,0));top:auto;bottom:0}.col{order:4;padding-block:2.5rem 2rem}@media (width>=40rem){.social{flex-wrap:wrap;display:flex}}@media (width<30rem){.spy-list{flex:1 0 auto;justify-content:space-between;gap:.75rem}.spy a{font-size:.875rem}}.section{scroll-margin-top:4.5rem}.section+.section{margin-top:3rem}.button{min-height:44px}}@media print{body{background:#fff}.spy,.actions,.social,.copy,.scheme-toggle{display:none!important}.profile,.social,.col{max-width:none;padding-inline:0}.job::details-content{content-visibility:visible}.job>summary{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"company dates""role dur";margin-inline:0;padding-inline:0}.job-chevron{display:none}.result,.job,.pair{break-inside:avoid}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
