@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-cyrillic-ext-wght-normal.d45eAU9y.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-cyrillic-wght-normal.BAAhND-U.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-greek-wght-normal.CmyJS8uq.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-vietnamese-wght-normal.Dg1JeJN0.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-latin-ext-wght-normal.CIII54If.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:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-latin-wght-normal.IvpUvPa2.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{--paper:#f4f6f8;--surface:#fff;--ink:#13233a;--ink-soft:#3a4a5f;--muted:#5b6b7f;--line:#d8e0e8;--blue:#1a5c9c;--blue-deep:#103f6e;--blue-wash:#e8f0f8;--ok:#23845a;--kind-dev:#a8c3de;--kind-lead:#5a8ec4;--kind-ops:#123f6d;--font:"IBM Plex Sans Variable", "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--step--1:.875rem;--step-0:1.0625rem;--step-1:1.25rem;--step-2:1.625rem;--step-3:2.125rem;--step-4:clamp(2.5rem, 6vw, 4.25rem);--gutter:clamp(1rem, 4vw, 2.5rem);--max:72rem;--radius:6px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5rem}body{background:var(--paper);color:var(--ink);font-family:var(--font);font-size:var(--step-0);font-feature-settings:"kern", "liga";text-rendering:optimizelegibility;margin:0;line-height:1.6}img,svg{max-width:100%;display:block}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;font-weight:650;line-height:1.2}p{margin:0}a{color:var(--blue);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--blue-deep)}:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:2px}ul{margin:0;padding:0}.wrap{width:100%;max-width:var(--max);padding-inline:var(--gutter);margin-inline:auto}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;background:var(--ink);color:#fff;border-radius:var(--radius);padding:.5rem 1rem;position:absolute;top:-3rem;left:1rem}.skip-link:focus{color:#fff;top:1rem}.icon{flex:none;width:1.1em;height:1.1em}.icon svg{width:100%;height:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.no-print{display:none!important}body{background:#fff}}.career[data-astro-cid-4qmlcvwa]{margin:0}.career-head[data-astro-cid-4qmlcvwa]{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1rem;margin-bottom:.75rem;display:flex}.career-title[data-astro-cid-4qmlcvwa]{white-space:nowrap;font-weight:600;font-size:var(--step--1);color:var(--ink-soft)}.career-hint[data-astro-cid-4qmlcvwa]{color:var(--muted);font-size:.75rem}.career-svg[data-astro-cid-4qmlcvwa]{width:100%;height:3.5rem;overflow:visible}.career-svg[data-astro-cid-4qmlcvwa] rect[data-astro-cid-4qmlcvwa]{transform-box:fill-box;transform-origin:50% 100%;animation:.5s cubic-bezier(.2,.7,.2,1) both grow;animation-delay:calc(var(--i) * 14ms)}.career-svg[data-astro-cid-4qmlcvwa] a[data-astro-cid-4qmlcvwa]:hover rect[data-astro-cid-4qmlcvwa],.career-svg[data-astro-cid-4qmlcvwa] a[data-astro-cid-4qmlcvwa]:focus-visible rect[data-astro-cid-4qmlcvwa]{opacity:.75}.career-svg[data-astro-cid-4qmlcvwa] a[data-astro-cid-4qmlcvwa]:focus-visible{outline:none}.career-svg[data-astro-cid-4qmlcvwa] a[data-astro-cid-4qmlcvwa]:focus-visible rect[data-astro-cid-4qmlcvwa]{stroke:var(--ink);stroke-width:1.5px}.kind-dev[data-astro-cid-4qmlcvwa]{fill:var(--kind-dev);background:var(--kind-dev)}.kind-lead[data-astro-cid-4qmlcvwa]{fill:var(--kind-lead);background:var(--kind-lead)}.kind-ops[data-astro-cid-4qmlcvwa]{fill:var(--kind-ops);background:var(--kind-ops)}.kind-none[data-astro-cid-4qmlcvwa]{fill:var(--line)}@media (prefers-reduced-motion:reduce){.career-svg[data-astro-cid-4qmlcvwa] rect[data-astro-cid-4qmlcvwa]{animation:none}}@keyframes grow{0%{transform:scaleY(.04)}to{transform:scaleY(1)}}.career-axis[data-astro-cid-4qmlcvwa]{height:1.4rem;color:var(--muted);font-variant-numeric:tabular-nums;margin-top:.35rem;font-size:.75rem;position:relative}.career-axis[data-astro-cid-4qmlcvwa] span[data-astro-cid-4qmlcvwa]{position:absolute;top:0}.career-axis[data-astro-cid-4qmlcvwa] .end[data-astro-cid-4qmlcvwa]{right:0}.career-legend[data-astro-cid-4qmlcvwa]{font-size:var(--step--1);color:var(--ink-soft);flex-wrap:wrap;gap:.35rem 1.25rem;margin-top:.5rem;list-style:none;display:flex}.career-legend[data-astro-cid-4qmlcvwa] li[data-astro-cid-4qmlcvwa]{align-items:center;gap:.45rem;display:flex}.swatch[data-astro-cid-4qmlcvwa]{border-radius:2px;width:.7rem;height:.7rem}.topbar[data-astro-cid-j6a35wjm]{z-index:10;backdrop-filter:saturate(1.4)blur(8px);border-bottom:1px solid var(--line);background:#ffffffeb;position:sticky;top:0}.topbar-inner[data-astro-cid-j6a35wjm]{align-items:center;gap:1.5rem;min-height:3.75rem;display:flex}.brand[data-astro-cid-j6a35wjm]{color:var(--ink);margin-right:auto;font-weight:650;text-decoration:none}.topnav[data-astro-cid-j6a35wjm]{gap:1.5rem;display:none}.topnav[data-astro-cid-j6a35wjm] a[data-astro-cid-j6a35wjm]{color:var(--ink-soft);font-size:var(--step--1);font-weight:500;text-decoration:none}.topnav[data-astro-cid-j6a35wjm] a[data-astro-cid-j6a35wjm]:hover{color:var(--blue)}.topbar-actions[data-astro-cid-j6a35wjm]{align-items:center;gap:.75rem;display:flex}.lang-switch[data-astro-cid-j6a35wjm]{font-size:var(--step--1);color:var(--ink-soft);border:1px solid var(--line);border-radius:var(--radius);padding:.35rem .6rem;font-weight:600;text-decoration:none}.lang-switch[data-astro-cid-j6a35wjm]:hover{border-color:var(--blue);color:var(--blue)}@media (width>=52rem){.topnav[data-astro-cid-j6a35wjm]{display:flex}}.btn[data-astro-cid-j6a35wjm]{border-radius:var(--radius);background:var(--blue);color:#fff;border:1px solid var(--blue);align-items:center;gap:.5rem;padding:.7rem 1.1rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:background-color .15s;display:inline-flex}.btn[data-astro-cid-j6a35wjm]:hover{background:var(--blue-deep);border-color:var(--blue-deep);color:#fff}.btn-ghost[data-astro-cid-j6a35wjm]{background:var(--surface);color:var(--blue);border-color:var(--line)}.btn-ghost[data-astro-cid-j6a35wjm]:hover{background:var(--blue-wash);border-color:var(--blue);color:var(--blue-deep)}.btn-small[data-astro-cid-j6a35wjm]{font-size:var(--step--1);padding:.4rem .8rem}.hero[data-astro-cid-j6a35wjm]{background:var(--surface);border-bottom:1px solid var(--line);padding-block:clamp(2.5rem,6vw,5rem)}.hero-grid[data-astro-cid-j6a35wjm]{align-items:start;gap:clamp(2rem,5vw,4rem);display:grid}@media (width>=64rem){.hero-grid[data-astro-cid-j6a35wjm]{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}}.identity[data-astro-cid-j6a35wjm]{align-items:center;gap:clamp(1rem,3vw,1.5rem);display:flex}.portrait[data-astro-cid-j6a35wjm]{aspect-ratio:1;object-fit:cover;width:clamp(80px,18vw,112px);height:auto;box-shadow:0 0 0 4px var(--surface), 0 0 0 5px var(--line);border-radius:50%}.name[data-astro-cid-j6a35wjm]{font-size:var(--step-4);letter-spacing:-.03em;font-weight:700;line-height:1}.role[data-astro-cid-j6a35wjm]{font-size:clamp(1.15rem, 2.6vw, var(--step-2));color:var(--blue);margin-top:.5rem;font-weight:600;line-height:1.25}.focus[data-astro-cid-j6a35wjm]{color:var(--muted);margin-top:1.5rem;font-weight:500}.pitch[data-astro-cid-j6a35wjm]{font-size:var(--step-1);max-width:38ch;color:var(--ink);margin-top:.5rem;line-height:1.5}.environments[data-astro-cid-j6a35wjm]{max-width:52ch;color:var(--ink-soft);margin-top:.75rem}.current[data-astro-cid-j6a35wjm]{color:var(--ink-soft);align-items:baseline;gap:.6rem;margin-top:1.25rem;display:flex}.dot[data-astro-cid-j6a35wjm]{background:var(--ok);border-radius:50%;flex:none;width:.6rem;height:.6rem;transform:translateY(-.05em);box-shadow:0 0 0 3px #23845a2e}.cta-row[data-astro-cid-j6a35wjm]{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}@media (width<=40rem){.cta-row[data-astro-cid-j6a35wjm] .btn[data-astro-cid-j6a35wjm]{flex:100%;justify-content:center}}.contact-line[data-astro-cid-j6a35wjm]{font-size:var(--step--1);color:var(--ink-soft);flex-wrap:wrap;gap:.5rem 1.4rem;margin-top:1.75rem;list-style:none;display:flex}.contact-line[data-astro-cid-j6a35wjm] li[data-astro-cid-j6a35wjm]{align-items:center;gap:.4rem;display:flex}.contact-line[data-astro-cid-j6a35wjm] .icon[data-astro-cid-j6a35wjm]{color:var(--muted)}.board[data-astro-cid-j6a35wjm]{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:clamp(1.25rem,3vw,1.75rem)}.certs[data-astro-cid-j6a35wjm]{gap:.5rem;list-style:none;display:grid}.certs[data-astro-cid-j6a35wjm] li[data-astro-cid-j6a35wjm]{align-items:center;gap:.6rem;font-size:.95rem;font-weight:600;display:flex}.certs[data-astro-cid-j6a35wjm] .icon[data-astro-cid-j6a35wjm]{color:var(--blue);width:1.3em;height:1.3em}.facts[data-astro-cid-j6a35wjm]{border-block:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0;padding-block:1.25rem;display:grid}.facts[data-astro-cid-j6a35wjm] div[data-astro-cid-j6a35wjm]{flex-direction:column-reverse;justify-content:flex-end;display:flex}.facts[data-astro-cid-j6a35wjm] dd[data-astro-cid-j6a35wjm]{font-size:var(--step-3);color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-weight:700;line-height:1}.facts[data-astro-cid-j6a35wjm] dt[data-astro-cid-j6a35wjm]{color:var(--muted);margin-top:.4rem;font-size:.8rem;line-height:1.35}.section[data-astro-cid-j6a35wjm]{padding-block:clamp(3rem,7vw,5.5rem)}.section-alt[data-astro-cid-j6a35wjm]{background:var(--surface);border-block:1px solid var(--line)}.section-title[data-astro-cid-j6a35wjm]{font-size:var(--step-3);letter-spacing:-.02em;margin-bottom:clamp(1.75rem,4vw,2.75rem)}.pillars[data-astro-cid-j6a35wjm]{gap:2.25rem clamp(2rem,5vw,4rem);display:grid}@media (width>=48rem){.pillars[data-astro-cid-j6a35wjm]{grid-template-columns:repeat(2,minmax(0,1fr))}}.pillar[data-astro-cid-j6a35wjm]{border-top:2px solid var(--ink);padding-top:1.1rem}.pillar[data-astro-cid-j6a35wjm] h3[data-astro-cid-j6a35wjm]{font-size:var(--step-1)}.pillar[data-astro-cid-j6a35wjm] p[data-astro-cid-j6a35wjm]{color:var(--ink-soft);max-width:60ch;margin-top:.6rem}.pillar[data-astro-cid-j6a35wjm] .proof[data-astro-cid-j6a35wjm]{border-left:3px solid var(--blue);color:var(--ink);margin-top:1rem;padding-left:.9rem;font-size:.95rem}.timeline[data-astro-cid-j6a35wjm]{margin:0;padding:0;list-style:none}.job[data-astro-cid-j6a35wjm]{border-top:1px solid var(--line);gap:.5rem 2.5rem;padding-block:2rem;display:grid}.job[data-astro-cid-j6a35wjm]:first-child{border-top:0;padding-top:0}@media (width>=52rem){.job[data-astro-cid-j6a35wjm]{grid-template-columns:11rem minmax(0,1fr)}}.job-period[data-astro-cid-j6a35wjm]{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}.job-place[data-astro-cid-j6a35wjm]{font-size:var(--step--1);color:var(--muted)}.job-role[data-astro-cid-j6a35wjm]{font-size:var(--step-1)}.job-company[data-astro-cid-j6a35wjm]{color:var(--blue);margin-top:.15rem;font-weight:600}.job-context[data-astro-cid-j6a35wjm]{color:var(--muted);max-width:70ch;margin-top:.6rem;font-size:.95rem}.job-bullets[data-astro-cid-j6a35wjm]{gap:.5rem;max-width:75ch;margin-top:1rem;padding-left:1.1rem;list-style:outside;display:grid}.job-bullets[data-astro-cid-j6a35wjm] li[data-astro-cid-j6a35wjm]::marker{color:var(--kind-lead)}.env[data-astro-cid-j6a35wjm]{margin-top:1.25rem}.earlier[data-astro-cid-j6a35wjm]{gap:1.1rem;max-width:75ch;margin-top:1rem;list-style:none;display:grid}.earlier-meta[data-astro-cid-j6a35wjm]{color:var(--muted);font-size:var(--step--1);margin-left:.6rem}.dossier-note[data-astro-cid-j6a35wjm]{color:var(--ink-soft);margin-top:1.5rem;font-size:.95rem}.dossier-note[data-astro-cid-j6a35wjm] a[data-astro-cid-j6a35wjm]{margin-left:.35rem;font-weight:600}.chips[data-astro-cid-j6a35wjm]{flex-wrap:wrap;gap:.45rem;list-style:none;display:flex}.chips[data-astro-cid-j6a35wjm] li[data-astro-cid-j6a35wjm]{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);padding:.3rem .7rem;font-size:.9rem;line-height:1.3}.chips-small[data-astro-cid-j6a35wjm] li[data-astro-cid-j6a35wjm]{background:var(--paper);color:var(--ink-soft);border-color:#0000;padding:.2rem .55rem;font-size:.8rem}.skills[data-astro-cid-j6a35wjm]{gap:1.75rem 3rem;display:grid}@media (width>=48rem){.skills[data-astro-cid-j6a35wjm]{grid-template-columns:repeat(2,minmax(0,1fr))}}.skill-group[data-astro-cid-j6a35wjm] h3[data-astro-cid-j6a35wjm]{color:var(--ink);margin-bottom:.7rem;font-size:1rem}.credentials[data-astro-cid-j6a35wjm]{border-top:1px solid var(--line);gap:2rem 3rem;margin-top:clamp(3rem,6vw,4.5rem);padding-top:2rem;display:grid}@media (width>=60rem){.credentials[data-astro-cid-j6a35wjm]{grid-template-columns:repeat(3,minmax(0,1fr))}}.credentials[data-astro-cid-j6a35wjm] h3[data-astro-cid-j6a35wjm]{margin-bottom:.9rem;font-size:1rem}.cred-list[data-astro-cid-j6a35wjm]{color:var(--ink-soft);gap:.7rem;font-size:.95rem;list-style:none;display:grid}.cred-list[data-astro-cid-j6a35wjm] li[data-astro-cid-j6a35wjm]{justify-content:space-between;gap:1rem;display:flex}.cred-note[data-astro-cid-j6a35wjm]{font-size:var(--step--1);color:var(--muted);margin-top:.2rem;display:block}.cred-date[data-astro-cid-j6a35wjm]{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.contact[data-astro-cid-j6a35wjm]{background:var(--ink);color:#dfe7f0;padding-block:clamp(3.5rem,8vw,6rem)}.contact[data-astro-cid-j6a35wjm] a[data-astro-cid-j6a35wjm]{color:#fff}.contact-grid[data-astro-cid-j6a35wjm]{gap:2.5rem;display:grid}@media (width>=56rem){.contact-grid[data-astro-cid-j6a35wjm]{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:end}}.contact-title[data-astro-cid-j6a35wjm]{font-size:var(--step-3);color:#fff}.contact-text[data-astro-cid-j6a35wjm]{max-width:48ch;margin-top:.75rem}.contact-email[data-astro-cid-j6a35wjm]{letter-spacing:-.02em;word-break:break-word;margin-top:1.5rem;font-size:clamp(1.4rem,4.5vw,2.4rem);font-weight:650;text-decoration-thickness:2px;display:inline-block}.contact-links[data-astro-cid-j6a35wjm]{flex-wrap:wrap;gap:.6rem 1.5rem;margin-top:1.5rem;list-style:none;display:flex}.contact-links[data-astro-cid-j6a35wjm] li[data-astro-cid-j6a35wjm]{align-items:center;gap:.45rem;display:flex}.contact-links[data-astro-cid-j6a35wjm] .icon[data-astro-cid-j6a35wjm]{color:var(--kind-dev)}.contact-docs[data-astro-cid-j6a35wjm] h3[data-astro-cid-j6a35wjm]{color:#fff;margin-bottom:.8rem;font-size:1rem}.doc[data-astro-cid-j6a35wjm]{border-radius:var(--radius);border:1px solid #ffffff38;align-items:center;gap:.75rem;margin-top:.6rem;padding:.9rem 1rem;font-weight:600;text-decoration:none;transition:background-color .15s,border-color .15s;display:flex}.doc[data-astro-cid-j6a35wjm]:hover{background:#ffffff14;border-color:#ffffff80}.footer[data-astro-cid-j6a35wjm]{color:#93a3b6;background:#0d1a2c;padding-block:2rem;font-size:.8rem}.footer-title[data-astro-cid-j6a35wjm]{color:#c4cfdb;margin-bottom:.5rem;font-size:.85rem}.footer[data-astro-cid-j6a35wjm] p[data-astro-cid-j6a35wjm]+p[data-astro-cid-j6a35wjm]{margin-top:.25rem}@media print{.hero[data-astro-cid-j6a35wjm],.section-alt[data-astro-cid-j6a35wjm]{border:0}.contact[data-astro-cid-j6a35wjm]{color:var(--ink);background:#fff}.contact[data-astro-cid-j6a35wjm] a[data-astro-cid-j6a35wjm],.contact-title[data-astro-cid-j6a35wjm]{color:var(--ink)}}
