:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-obsidian:#0a0a13;--color-nav:#040407;--color-surface:#08080c;--color-halo:#181826;--color-text:#fcfcfc;--color-muted:#a3a3b3;--color-muted-large:#757580;--color-iris:#6199f6;--color-violet-border:#4f4f80;--color-hairline:#2a2a32;--page:var(--color-obsidian);--nav:var(--color-nav);--surface:var(--color-surface);--halo-surface:var(--color-halo);--halo-border:var(--color-violet-border);--ink:var(--color-text);--muted:var(--color-muted);--accent:var(--color-iris);--line:var(--color-hairline);--font-sans:"Inter", "Inter Fallback", Arial, sans-serif;--font-mono:"JetBrains Mono", "JetBrains Mono Fallback", "Courier New", monospace;--sans:var(--font-sans);--font-body:var(--font-sans);--content-width:80rem;--section-space:4rem;--text-display:clamp(2.75rem, 6vw, 5rem);--text-section:clamp(2rem, 4vw, 3.5rem);--text-feature:clamp(2.25rem, 3.4vw, 3.125rem);--text-metadata:.875rem;--text-technology:1rem;--text-diagram:1rem;--radius-container:10px;--radius-feature:24px;--radius-pill:100px;--duration-press:.2s;--duration-enter:.4s;--ease-out:cubic-bezier(.25, 1, .5, 1);--ease-expo:cubic-bezier(.16, 1, .3, 1);--gradient-page:radial-gradient(ellipse at 76% 4%, #4f4f802e, transparent 26%), radial-gradient(ellipse at 8% 38%, #4f4f801f, transparent 22%), radial-gradient(ellipse at 86% 75%, #181826e6, transparent 27%);--gradient-section:radial-gradient(ellipse at 100% 0%, #4f4f801f, transparent 68%);--brand-primary:var(--accent);--brand-secondary:var(--accent);--brand-accent:var(--accent);--neutral-0:var(--ink);--neutral-50:var(--ink);--neutral-100:var(--ink);--neutral-200:var(--muted);--neutral-300:var(--muted);--neutral-400:var(--muted);--neutral-500:var(--muted);--neutral-700:var(--color-violet-border);--neutral-800:var(--color-halo);--neutral-900:var(--page);--neutral-950:var(--surface);--text-heading-brand:var(--ink);--text-body-brand:1rem;--text-muted-brand:var(--muted);--text-link-brand:var(--accent);--surface-page-brand:var(--page);--surface-card-brand:var(--surface);--surface-elevated-brand:var(--color-halo);--surface-divider-brand:var(--line);--gradient-footer-brand:var(--gradient-section);--gradient-glow-brand:linear-gradient(90deg, transparent, #6199f614, transparent);--font-heading-brand:var(--font-sans);--font-body-brand:var(--font-sans);--font-display-brand:var(--font-sans);--font-mono-brand:var(--font-mono);--text-h1-brand:var(--text-display);--text-h2-brand:var(--text-section);--text-h3-brand:1.5rem;--text-h4-brand:1.25rem;--text-h5-brand:1.125rem;--text-h6-brand:1rem;--text-body-lg-brand:1.125rem;--text-body-sm-brand:.875rem;--text-label-brand:.75rem;--text-overline-brand:.75rem;--text-btn-brand:1rem;--text-btn-nav-brand:.875rem;--text-btn-footer-brand:1rem;--space-4:.25rem;--space-8:.5rem;--space-12:.75rem;--space-16:1rem;--space-20:1.25rem;--space-24:1.5rem;--space-32:2rem;--space-48:3rem;--space-64:4rem;--space-80:5rem;--space-small:var(--space-8);--space-medium:var(--space-16);--space-large:var(--space-32);--radius-sm-brand:var(--radius-container);--radius-md-brand:var(--radius-container);--radius-lg-brand:var(--radius-feature);--radius-xl-brand:var(--radius-feature);--radius-pill-brand:var(--radius-pill);--duration-fast-brand:.2s;--duration-normal-brand:.3s;--duration-slow-brand:.4s;--ease-default-brand:var(--ease-out);--ease-out-brand:var(--ease-expo);--ease-linear-brand:linear}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:var(--color-violet-border) var(--page);scroll-padding-top:7rem}body{background:var(--gradient-page), var(--page);color:var(--ink);font:400 1rem/1.6 var(--font-sans);font-feature-settings:"ss01" 1, "cv11" 1;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;caret-color:var(--accent);margin:0}a{color:var(--accent);text-underline-offset:.2em;text-decoration-thickness:1px}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit}button{color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-pill);cursor:pointer;transition:transform var(--duration-press) var(--ease-out);padding:.6rem .9rem}button,.icon-button{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}button:active{transform:translateY(1px)}button:disabled{cursor:not-allowed}button:disabled:active{transform:none}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.skip-link{z-index:100;background:var(--page);border-radius:var(--radius-container);padding:1rem;position:absolute;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:none}.not-found{max-width:45rem;min-height:100dvh;margin:auto;padding:15dvh 1.5rem}.contact-detail-email,.not-found a{align-items:center;min-height:44px;display:inline-flex}@media (prefers-reduced-motion:reduce),(prefers-reduced-data:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);color:var(--ink);text-wrap:balance;font-weight:400}h1{font-size:var(--text-display);letter-spacing:-.04em;line-height:.96}h2{font-size:var(--text-section);letter-spacing:-.04em;line-height:1.08}code,kbd,pre{font-family:var(--font-mono)}img,svg{max-width:100%}::selection{background:var(--accent);color:var(--page)}.legacy-sections :is(.main-button,.ap-link){background:var(--surface);color:var(--accent)}.legacy-sections .card-image{filter:grayscale()}@font-face{font-family:Agustina Regular;src:url(/assets/Agustina-signature-CzcC-a7l.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url(/assets/InterVariable-latin-Bim-2Yyd.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap}@font-face{font-family:Inter Fallback;src:local(Arial);font-style:normal;font-weight:400 700;size-adjust:106.52%;ascent-override:90.95%;descent-override:22.65%;line-gap-override:0%}@font-face{font-family:JetBrains Mono;src:url(/assets/JetBrainsMonoVariable-latin-DVrlQGWP.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap}@font-face{font-family:JetBrains Mono Fallback;src:local(Courier New);font-style:normal;font-weight:400 700;size-adjust:99.98%;ascent-override:102.02%;descent-override:30%;line-gap-override:0%}.rubber-segment{--rs-track:#27272a;--rs-thumb:#fafafa;--rs-ink:#fafafa;--rs-ink-active:#18181b;--rs-radius:10px;--rs-inset:3px;--rs-thumb-radius:7px;--rs-h:36px;--rs-font:13px;--rs-pad:14px;--rs-min:44px;--rs-idle:.7;--rs-hover:.9;--rs-ease-out:cubic-bezier(.23, 1, .32, 1);vertical-align:middle;padding:var(--rs-inset);border-radius:var(--rs-radius);background:var(--rs-track);touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;grid-auto-columns:auto;grid-auto-flow:column;font-family:inherit;display:inline-grid;position:relative}.rubber-segment[data-equal]{grid-auto-columns:minmax(0,1fr)}.rubber-segment[aria-disabled=true]{opacity:.5;pointer-events:none}.rubber-segment__item{height:calc(var(--rs-h) - var(--rs-inset) * 2);min-width:var(--rs-min);padding:0 var(--rs-pad);border-radius:var(--rs-thumb-radius);color:var(--rs-ink);opacity:var(--rs-idle);font:inherit;font-size:var(--rs-font);white-space:nowrap;cursor:pointer;transition:opacity .16s ease, transform .16s var(--rs-ease-out);background:0 0;border:0;outline:none;justify-content:center;align-items:center;gap:6px;margin:0;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.rubber-segment__item:is([aria-checked=true],[aria-current=location]){cursor:default}.rubber-segment:not([data-measured]) .rubber-segment__item:is([aria-checked=true],[aria-current=location]){background:var(--rs-thumb);color:var(--rs-ink-active);opacity:1}.rubber-segment[data-draggable] .rubber-segment__item:is([aria-checked=true],[aria-current=location]){cursor:grab}.rubber-segment[data-held],.rubber-segment[data-held] .rubber-segment__item{cursor:grabbing}.rubber-segment__item[data-pressed]{transform:scale(.96)}.rubber-segment__item:focus-visible{outline:2px solid var(--rs-thumb);outline-offset:3px}@media (hover:hover) and (pointer:fine){.rubber-segment__item:not([aria-checked=true],[aria-current=location]):hover{opacity:var(--rs-hover)}}.rubber-segment__thumb{inset:var(--rs-inset);background:var(--rs-thumb);color:var(--rs-ink-active);pointer-events:none;grid-auto-columns:auto;grid-auto-flow:column;display:grid;position:absolute}.rubber-segment:not([data-measured]) .rubber-segment__thumb{visibility:hidden}.rubber-segment[data-equal] .rubber-segment__thumb{grid-auto-columns:minmax(0,1fr)}.rubber-segment__copy{color:inherit;opacity:1;cursor:default}@media (prefers-reduced-motion:reduce){.rubber-segment__item{transition:opacity .16s}}.header{z-index:10;justify-content:space-between;align-items:center;gap:24px;max-width:1328px;min-height:104px;margin-inline:auto;padding-inline:24px;display:flex;position:relative}.header-brand{width:208px;color:var(--ink);white-space:nowrap;flex:none;align-items:center;min-height:44px;font-size:16px;font-weight:500;text-decoration:none;display:inline-flex}.header-brand__bracket{color:var(--muted)}.header-brand__signature{font-variant-ligatures:no-common-ligatures;padding-inline:8px;font-family:Agustina Regular,cursive;font-size:24px;font-weight:700}.navigation{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--nav,#040407);align-items:center;display:flex;position:fixed;top:24px;left:50%;transform:translate(-50%)}.navigation .rubber-segment{--rs-track:var(--nav);--rs-thumb:var(--accent);--rs-ink:var(--ink);--rs-ink-active:var(--nav);--rs-radius:100px;--rs-inset:4px;--rs-thumb-radius:96px;--rs-h:44px;--rs-font:14px;--rs-pad:18px;--rs-min:48px}.navigation .rubber-segment__item{min-height:44px;text-decoration:none}.availability{min-height:44px;color:var(--muted);white-space:nowrap;align-items:center;gap:8px;font-size:12px;text-decoration:none;display:inline-flex}.availability:hover{color:var(--accent)}.status-dot{background:var(--accent);border-radius:50%;flex:none;width:6px;height:6px;position:relative}.status-dot:after{content:"";border-radius:inherit;background:radial-gradient(circle, var(--accent), transparent 70%);opacity:.25;animation:3.2s ease-in-out infinite paused status-glow;position:absolute;inset:-8px}.header[data-motion=running] .status-dot:after{animation-play-state:running}.header[data-motion=static] .status-dot:after{animation:none}@keyframes status-glow{0%,to{opacity:.15;transform:scale(.8)}50%{opacity:.6;transform:scale(1.15)}}@media (max-width:1100px){.header{min-height:80px}.navigation{top:auto;bottom:calc(16px + env(safe-area-inset-bottom));width:400px;max-width:calc(100% - 32px)}.navigation .rubber-segment{width:100%}.navigation .rubber-segment__item{min-width:0;padding-inline:6px;font-size:12px}}@media (max-width:400px){.header{gap:8px}.availability{white-space:normal;max-width:144px}}@media (max-width:600px){.header-brand{width:168px;font-size:14px}.header-brand__signature{padding-inline:6px;font-size:20px}}@media (max-width:359px){.header{padding-inline:16px}.availability{max-width:120px}.navigation .rubber-segment__item{padding-inline:4px;font-size:11px}.header-brand{width:152px}.header-brand__signature{padding-inline:4px;font-size:18px}}@media (prefers-reduced-motion:reduce),(prefers-reduced-data:reduce){.status-dot:after{animation:none}}.request-trace{isolation:isolate;border:1px solid var(--halo-border);background:radial-gradient(ellipse at 90% 0, #181826 0, transparent 65%), var(--surface,#08080c);width:100%;color:var(--ink,#fcfcfc);font-family:var(--font-mono,"JetBrains Mono", monospace);font-size:var(--text-metadata);box-sizing:border-box;border-radius:16px;margin:0;padding:24px;line-height:1.5;position:relative}.request-trace__heading,.request-trace__waterfall-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.request-trace__heading{border-bottom:1px solid var(--line,#2a2a32);font-size:1rem;font-family:var(--font-sans);padding-bottom:16px}.request-trace__annotation{color:var(--muted,#a3a3b3);font-size:var(--text-metadata)}.request-trace__description{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.request-trace__graph{grid-template-rows:repeat(2,88px);grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 0;margin:24px 0;display:grid;position:relative}.request-trace__connections{fill:none;width:100%;height:100%;stroke:var(--line,#2a2a32);stroke-width:1px;position:absolute;inset:0;overflow:visible}.request-trace__connections path{vector-effect:non-scaling-stroke}.request-trace__direction{stroke:var(--accent,#6199f6)}.request-trace__connections--compact{display:none}.request-trace__node{flex-direction:column;align-items:center;gap:8px;min-width:0;display:flex;position:relative}.request-trace__node--service{grid-area:2/3}.request-trace__node--data{grid-area:2/2}.request-trace__node--queue{grid-area:2/1}.request-trace__node-icon{border:1px solid var(--line,#2a2a32);background:var(--surface,#08080c);width:48px;height:48px;color:var(--accent,#6199f6);box-sizing:border-box;border-radius:10px;justify-content:center;align-items:center;display:flex}.request-trace__node-icon svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.request-trace__node--service .request-trace__node-icon{border-color:var(--accent,#6199f6)}.request-trace__node-label{max-width:100%;font-family:var(--font-sans);text-align:center;color:var(--muted,#a3a3b3)}.request-trace__node--service .request-trace__node-label{color:var(--ink,#fcfcfc)}.request-trace__packet{stroke:none;opacity:0;animation:6s linear infinite paused request-packet}.request-trace__waterfall{border-top:1px solid var(--line,#2a2a32);padding-top:16px}.request-trace__waterfall-heading{color:var(--muted,#a3a3b3);margin-bottom:16px}.request-trace__waterfall-heading>:last-child{color:var(--accent,#6199f6)}.request-trace__spans{gap:8px;display:grid}.request-trace__span{grid-template-columns:152px minmax(0,1fr);align-items:center;gap:16px;min-height:24px;display:grid}.request-trace__span-label{color:var(--muted,#a3a3b3)}.request-trace__span-track{background:var(--page,#0a0a13);border-radius:4px;height:16px;display:block;overflow:hidden}.request-trace__span-segment{background:var(--accent,#6199f6);opacity:.7;border-radius:4px;width:48%;height:100%;animation:6s ease-out infinite paused request-span;display:block}.request-trace__span:nth-child(2) .request-trace__span-segment{width:24%;margin-left:16%;animation-delay:-5s}.request-trace__span:nth-child(3) .request-trace__span-segment{width:60%;margin-left:24%;animation-delay:-4s}.request-trace__span:nth-child(4) .request-trace__span-segment{width:28%;margin-left:48%;animation-delay:-3s}.request-trace__span:nth-child(5) .request-trace__span-segment{width:20%;margin-left:80%;animation-delay:-2s}.request-trace__note{color:var(--muted,#a3a3b3);font-family:var(--font-body,"Inter", sans-serif);margin:24px 0 0;font-size:14px}.request-trace[data-motion=running] .request-trace__packet,.request-trace[data-motion=running] .request-trace__span-segment{animation-play-state:running}.request-trace[data-motion=static] .request-trace__packet{display:none}.request-trace[data-motion=static] .request-trace__span-segment{animation:none}@keyframes request-packet{0%,to{opacity:0}4%,94%{opacity:1}}@keyframes request-span{0%,to{opacity:.7}30%{opacity:1}}@media (max-width:600px){.request-trace__connections--wide{display:none}.request-trace__connections--compact{display:block}.request-trace{padding:16px}.request-trace__graph{grid-template-rows:repeat(2,80px);grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 0;margin-block:16px}.request-trace__node-icon{background:0 0;border:none;width:32px;height:32px}.request-trace__node{gap:8px}.request-trace__node-label{font-size:var(--text-metadata)}.request-trace__span{grid-template-columns:140px minmax(0,1fr);gap:8px}.request-trace__spans{gap:8px}.request-trace__waterfall{display:none}.request-trace__span-segment{height:8px}.request-trace__note{margin-top:16px}}@media (prefers-reduced-motion:reduce),(prefers-reduced-data:reduce){.request-trace__packet{display:none}.request-trace__span-segment{animation:none}}.overview-hero{width:min(var(--content-width), 100% - 48px);color:var(--ink);margin-inline:auto;padding-top:48px}.overview-hero-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:64px;display:grid}.overview-copy,.overview-trace{min-width:0}.overview-identity{margin-bottom:24px}.overview-name{margin:0 0 8px;font-size:18px;font-weight:500;line-height:1.4}.overview-role{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.overview-role span{color:var(--accent);margin-inline:4px}.overview-headline{color:var(--ink);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(44px,5.56vw,80px);font-weight:400;line-height:.96}.overview-headline span{display:block}.overview-description{max-width:55ch;color:var(--muted);margin:32px 0 0;font-size:18px;line-height:1.65}.overview-actions{flex-wrap:wrap;gap:16px;margin-top:32px;display:flex}.overview-action{border:1px solid var(--halo-border,#4f4f80);border-radius:var(--radius-pill);min-height:48px;color:var(--ink);background:0 0;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:500;line-height:1.5;text-decoration:none;transition:transform .24s cubic-bezier(.16,1,.3,1);display:inline-flex}.overview-action svg{color:var(--accent);flex:none}.overview-action:hover{transform:translateY(-2px)}.overview-action:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.overview-action-primary{border-color:var(--accent);color:var(--nav,#040407);background:var(--accent)}.overview-action-primary svg{color:inherit}.overview-proof{border-block:1px solid var(--line);grid-column:1/-1;grid-template-columns:auto 1fr;align-items:center;gap:40px;padding-block:24px;display:grid}.overview-proof p{color:var(--muted);font-family:var(--font-sans);font-size:var(--text-metadata);margin:0;line-height:1.5}.overview-proof ul{grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:24px;margin:0;padding:0;list-style:none;display:grid}.overview-proof li{color:var(--ink);white-space:nowrap;font-size:18px;font-weight:500;line-height:1.4}@media (max-width:1100px){.overview-hero-layout{gap:40px}.overview-proof{grid-template-columns:1fr;gap:24px}}@media (max-width:900px){.overview-hero-layout{grid-template-columns:1fr;gap:40px}.overview-description{max-width:55ch}.overview-trace{width:100%;max-width:640px}}@media (max-width:600px){.overview-hero{padding-top:24px}.overview-identity{margin-bottom:24px}.overview-description{margin-top:24px;font-size:16px;line-height:1.6}.overview-actions{flex-direction:column;gap:12px;margin-top:24px}.overview-action{width:100%}.overview-proof{gap:24px;margin-top:40px}.overview-proof ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.overview-proof li{font-size:16px}}@media (max-width:359px){.overview-hero{width:calc(100% - 32px)}}@media (prefers-reduced-motion:reduce){.overview-action{transition:none}.overview-action:hover{transform:none}}@media (max-width:600px){.overview-hero-layout{gap:24px}.overview-copy{order:0}.overview-proof{order:1;gap:16px;margin-top:0;padding-block:16px}.overview-trace{order:2}.overview-proof ul{gap:16px}.overview-identity{margin-bottom:16px}}.overview-capabilities{width:min(var(--content-width), 100% - 48px);margin:var(--section-space) auto 0;color:var(--ink)}.capabilities-header{margin-bottom:24px}.capabilities-header h2{color:var(--ink);font-size:var(--text-section);letter-spacing:-.04em;text-wrap:balance;margin:0;font-weight:400;line-height:1.1}.capabilities-header p{max-width:60ch;color:var(--muted);margin:16px 0 0;font-size:16px;line-height:1.6}.capabilities-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;display:grid}.capability{border-top:1px solid var(--line);min-width:0;padding-top:24px}.capability h3{color:var(--ink);letter-spacing:-.02em;text-wrap:balance;margin:0 0 12px;font-size:20px;font-weight:500;line-height:1.3}.capability-description{color:var(--muted);margin:0;font-size:16px;line-height:1.65}.capability-technologies{color:var(--muted);font-family:var(--font-sans);font-size:var(--text-technology);margin:16px 0 0;line-height:1.8}.capabilities-fluency{color:var(--ink);margin:24px 0 0;font-size:16px;line-height:1.6}.capabilities-fluency span{color:var(--muted);margin-right:8px}@media (max-width:1100px){.capabilities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px}}@media (max-width:600px){.capabilities-header{margin-bottom:32px}.capabilities-header p{font-size:16px}.capabilities-grid{grid-template-columns:1fr;gap:24px}.capability h3{margin-top:0;margin-bottom:12px;font-size:20px}.capability-technologies{margin-top:16px}.capabilities-fluency{margin-top:32px}}@media (max-width:359px){.overview-capabilities{width:calc(100% - 32px)}}.section-heading{margin-bottom:24px}.section-heading h2{color:var(--ink);font-size:var(--text-section);letter-spacing:-.04em;text-wrap:balance;margin:0;font-weight:400;line-height:1.1}.section-heading__description{max-width:65ch;color:var(--muted);margin:16px 0 0;font-size:16px;line-height:1.6}@media (max-width:600px){.section-heading{margin-bottom:24px}.section-heading__description{font-size:16px}}.education-section{width:min(var(--content-width), 100% - 48px);margin:var(--section-space) auto 0}.education-record{border-block:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;padding-block:24px;display:grid}.education-record h3{letter-spacing:-.03em;margin:0;font-size:24px;font-weight:400;line-height:1.2}.education-degree{color:var(--muted);margin:16px 0;font-size:16px;line-height:1.65}.education-period{color:var(--muted);font-family:var(--font-sans);font-size:var(--text-metadata);margin:0;line-height:1.8}.education-activities{color:var(--muted);align-self:center;margin:0;padding-left:18px;font-size:16px;line-height:1.65}.education-activities li+li{margin-top:8px}.education-activities li::marker{color:var(--accent)}@media (max-width:600px){.education-record{grid-template-columns:1fr;gap:24px}}@media (max-width:359px){.education-section{width:calc(100% - 32px)}}.selected-systems{width:min(var(--content-width), 100% - 48px);margin:96px auto 0}.selected-systems .section-heading{margin-bottom:32px}.selected-systems{color:var(--ink)}.selected-systems-tab-controls{margin-bottom:24px;position:relative}.selected-systems-tab-controls:before,.selected-systems-tab-controls:after{z-index:1;pointer-events:none;content:"";width:32px;position:absolute;top:0;bottom:8px}.selected-systems-tab-controls:before{background:linear-gradient(to right, var(--page), transparent);left:0}.selected-systems-tab-controls:after{background:linear-gradient(to left, var(--page), transparent);right:0}.selected-systems-tab-controls:has(.selected-systems-tabs[data-scroll-start=false]):before{display:none}.selected-systems-tab-controls:has(.selected-systems-tabs[data-scroll-end=false]):after{display:none}.selected-systems-tabs{overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--halo-border) transparent;gap:24px;margin:-4px -4px -12px;padding:4px 4px 12px;display:flex;position:relative;overflow-x:auto}.selected-systems-tabs button{min-height:44px;color:var(--muted);font-family:var(--font-sans);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:none;padding:12px 0;font-size:1rem;font-weight:500;line-height:1.5}.selected-systems-tabs button:hover{border-color:var(--accent);color:var(--ink)}.selected-systems-tabs button[aria-selected=true]{border-bottom-color:var(--accent);color:var(--accent)}.selected-systems-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.selected-system-panel{border:1px solid var(--halo-border);background:radial-gradient(ellipse at 75% 0, var(--halo-surface), transparent 70%), var(--surface);border-radius:16px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:48px;padding:40px;display:grid}.selected-system-panel[hidden]{display:none}.selected-system-panel:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.selected-system-copy{min-width:0}.selected-system-copy h3{letter-spacing:-.03em;text-wrap:balance;max-width:24ch;margin:0;font-size:clamp(24px,2.3vw,32px);font-weight:400;line-height:1.2}.selected-system-copy>p{max-width:65ch;color:var(--muted);margin:24px 0 0;font-size:16px;line-height:1.65}.selected-system-tools{margin:32px 0 0}.selected-system-tools dt{color:var(--ink);font-family:var(--font-sans);font-size:var(--text-metadata);line-height:1.5}.selected-system-tools dd{margin:12px 0 0}.selected-system-tools ul{color:var(--muted);font-family:var(--font-sans);font-size:var(--text-technology);flex-wrap:wrap;gap:8px 16px;margin:0;padding:0;line-height:1.6;list-style:none;display:flex}.selected-system-diagram{min-width:0;margin:0}.selected-system-diagram figcaption{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:16px;font-size:1rem;font-weight:500;line-height:1.5;display:flex}.system-diagram-annotation{color:var(--muted);font-size:var(--text-metadata);flex:none;font-weight:400}.system-diagram-description{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:0;padding:0;position:absolute;overflow:hidden}.system-diagram-graph{margin-block:32px}.system-diagram-node{border:1px solid var(--line);border-radius:var(--radius-container);background:var(--surface);min-width:0;min-height:72px;color:var(--ink);font-family:var(--font-sans);font-size:var(--text-diagram);text-align:center;overflow-wrap:break-word;justify-content:center;align-items:center;padding:12px 8px;font-weight:500;line-height:1.5;display:flex}.system-flow-arrow,.system-diagram-connections{fill:none;stroke:var(--accent);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;display:block;overflow:visible}.system-flow-arrow path,.system-diagram-connections path{vector-effect:non-scaling-stroke}.system-flow-arrow{width:24px;height:24px}.system-linear-flow{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.system-linear-flow--2{grid-template-columns:repeat(2,minmax(0,1fr))}.system-flow-step{min-width:0;padding-inline:12px;position:relative}.system-flow-step .system-diagram-node{height:100%}.system-flow-arrow--next{position:absolute;top:calc(50% - 12px);right:-12px}.system-diagram-connections--narrow{display:none}.system-notifications-diagram>.system-diagram-connections{width:100%;height:48px}.system-notification-channels{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.system-notification-channels .system-diagram-node{min-height:48px;margin-inline:12px}.system-identity-diagram{grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr) 40px minmax(0,1fr);align-items:center;display:grid}.system-identity-side{gap:32px;display:grid}.system-identity-connections{width:40px;height:176px}.system-booking-diagram{grid-template-columns:minmax(0,1fr) 72px minmax(0,2fr);align-items:center;display:grid}.system-diagram-scope{color:var(--muted);font-family:var(--font-sans);font-size:var(--text-metadata);margin:0 0 16px;line-height:1.5}.system-booking-origin>.system-diagram-node{border-style:dashed}.system-booking-migration{color:var(--muted);font-family:var(--font-sans);font-size:var(--text-metadata);flex-direction:column;align-items:center;gap:8px;line-height:1.5;display:flex}.system-booking-destination{border:1px solid var(--halo-border);border-radius:var(--radius-container);padding:16px}.system-booking-destination .system-flow-step{padding-inline:8px}.system-booking-destination .system-flow-arrow--next{width:16px;right:-8px}.system-diagram-note{max-width:65ch;color:var(--muted);margin:0;font-size:14px;line-height:1.6}.selected-system-panel--featured{grid-template-columns:minmax(0,1fr);gap:48px;padding:48px}.selected-system-panel--featured .selected-system-copy{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;column-gap:64px;display:grid}.selected-system-panel--featured .selected-system-copy h3{max-width:23ch;font-size:var(--text-feature);grid-row:span 2;line-height:1.12}.selected-system-panel--featured .selected-system-copy>p{margin:0;font-size:18px}.selected-system-panel--featured .selected-system-tools{margin-top:24px}.selected-system-panel--featured .selected-system-diagram figcaption{font-size:18px}.selected-system-panel--featured .system-diagram-node{min-height:88px}.selected-system-panel--featured .system-notification-channels .system-diagram-node{min-height:56px}html:not(.js) .selected-systems-tab-controls{display:none}html:not(.js) .selected-system-panel[hidden]{display:grid}html:not(.js) .selected-system-panel+.selected-system-panel{margin-top:24px}@media (max-width:1100px){.selected-system-panel{gap:32px;padding:32px}}@media (max-width:900px){.selected-system-panel{grid-template-columns:minmax(0,1fr);gap:32px}.selected-system-copy h3{max-width:34ch}.selected-system-tools{margin-top:24px}.selected-system-panel--featured .selected-system-copy{grid-template-columns:minmax(0,1fr)}.selected-system-panel--featured .selected-system-copy h3{grid-row:auto}.selected-system-panel--featured .selected-system-copy>p{margin-top:24px}}@media (max-width:600px){.selected-systems{margin-top:64px}.selected-systems-tabs{gap:24px}.selected-system-panel{gap:32px;padding:24px 16px}.selected-system-copy>p{margin-top:16px}.selected-system-diagram figcaption{align-items:flex-start;gap:8px}.system-diagram-graph{margin-block:24px}.system-linear-flow{grid-template-columns:minmax(0,1fr);gap:24px}.system-flow-step{padding-inline:0}.system-flow-step .system-diagram-node{min-height:56px}.system-flow-arrow--next{inset:auto auto -24px calc(50% - 12px);transform:rotate(90deg)}.system-diagram-connections--wide{display:none}.system-diagram-connections--narrow{display:block}.system-notification-channels .system-diagram-node{margin-inline:4px}.system-identity-diagram{grid-template-columns:minmax(0,1fr)}.system-identity-side{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.system-identity-connections{width:100%;height:40px}.system-booking-diagram{grid-template-columns:minmax(0,1fr);gap:16px}.system-booking-migration{flex-direction:row;justify-content:center}.system-booking-migration .system-flow-arrow{transform:rotate(90deg)}.system-booking-destination .system-flow-step{padding-inline:0}.system-booking-destination .system-flow-arrow--next{width:24px;right:auto}}@media (max-width:359px){.selected-systems{width:calc(100% - 32px)}}.career-trace{width:min(var(--content-width), 100% - 48px);margin:var(--section-space) auto 0;color:var(--ink)}.career-trace__axis{color:var(--muted);font-family:var(--font-sans);font-size:var(--text-metadata);font-variant-numeric:tabular-nums;justify-content:space-between;margin:0 136px 16px calc(32% + 32px);line-height:1.5;display:flex}.career-trace__list{margin:0;padding:0;list-style:none;position:relative}.career-trace__item{border-top:1px solid var(--line);position:relative}.career-trace__item:last-child{border-bottom:1px solid var(--line)}.career-trace__summary{cursor:pointer;grid-template-columns:32% minmax(0,1fr) 104px;align-items:center;gap:16px 32px;padding-block:20px;list-style:none;display:grid}.career-trace__summary::-webkit-details-marker{display:none}.career-trace__summary:focus-visible{outline:2px solid var(--accent);outline-offset:8px;border-radius:var(--radius-container)}.career-trace__summary:hover .career-trace__company,.career-trace__summary:focus-visible .career-trace__company{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:5px;text-decoration-thickness:1px}.career-trace__summary:hover .career-trace__span,.career-trace__summary:focus-visible .career-trace__span{opacity:1}.career-trace__identity{gap:8px;min-width:0;display:grid}.career-trace__company{color:var(--ink);font-size:20px;font-weight:500;line-height:1.3}.career-trace__title{color:var(--muted);font-size:var(--text-metadata);font-weight:400;line-height:1.5}.career-trace__contribution{max-width:70ch;color:var(--ink);grid-column:1/-1;font-size:16px;line-height:1.6}.career-trace__period{gap:16px;min-width:0;display:grid}.career-trace__date-line{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.career-trace__date-line .experience-text-date,.career-trace__now{color:var(--muted);font-family:var(--font-sans);font-size:var(--text-metadata);font-variant-numeric:tabular-nums;margin:0;font-weight:400;line-height:1.5}.career-trace__track{height:16px;display:block;position:relative}.career-trace__track:before{content:"";background:var(--line);height:1px;position:absolute;inset:7px 0 auto}.career-trace__span{inset-block:4px;left:var(--span-start);width:max(2px, var(--span-length));border-radius:var(--radius-pill);background:var(--accent);opacity:.75;transition:opacity var(--duration-press) var(--ease-out);position:absolute}.career-trace__disclosure{color:var(--muted);font-size:var(--text-metadata);white-space:nowrap;justify-content:flex-end;align-items:center;gap:8px;line-height:1.5;display:inline-flex}.career-trace__disclosure svg{color:var(--accent);transition:transform var(--duration-press) var(--ease-out);flex:none}.career-trace__role[open] .career-trace__disclosure svg{transform:rotate(180deg)}.career-trace__details{max-width:70ch;margin:0 136px 32px calc(32% + 32px);padding-top:16px}.career-trace__details .experience-text-desc{color:var(--muted);margin:0;font-size:16px;line-height:1.7}.career-trace__technology-label{color:var(--ink);font-size:var(--text-metadata);margin:24px 0 16px;line-height:1.5}.career-trace__technologies{color:var(--muted);font-size:var(--text-technology);gap:8px;margin:0;padding-left:18px;line-height:1.7;display:grid}.career-trace__technologies li::marker{color:var(--accent)}.career-trace__overlap-note{max-width:72ch;color:var(--muted);font-size:var(--text-metadata);margin:24px 0 0;line-height:1.6}@media (max-width:900px){.career-trace__axis{display:none}.career-trace__list:before{content:"";background:var(--halo-border);width:1px;position:absolute;top:32px;bottom:32px;left:8px}.career-trace__item{margin-left:40px}.career-trace__item:before{content:"";border:1px solid var(--accent);background:var(--page);border-radius:50%;width:8px;height:8px;position:absolute;top:31px;left:-36px}.career-trace__summary{grid-template-columns:minmax(0,1fr) 24px;align-items:start;gap:16px}.career-trace__period{grid-column:1;gap:8px}.career-trace__disclosure{grid-area:1/2}.career-trace__disclosure span{display:none}.career-trace__details{max-width:70ch;margin:0 0 32px}}@media (max-width:600px){.career-trace__company{font-size:18px}.career-trace__summary{padding-block:20px}.career-trace__item{margin-left:32px}.career-trace__item:before{left:-28px}}@media (max-width:359px){.career-trace{width:calc(100% - 32px)}}@media (prefers-reduced-motion:reduce){.career-trace__span,.career-trace__disclosure svg{transition:none}}.off-the-clock{width:min(var(--content-width), 100% - 48px);margin:var(--section-space) auto 0;color:var(--ink)}.personal-interests{border-block:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:12px 32px;margin:0;padding:24px 0;font-size:1rem;line-height:1.6;list-style:none;display:flex}@media (max-width:359px){.off-the-clock{width:calc(100% - 32px)}}.earlier-builds{width:min(var(--content-width), 100% - 48px);margin:var(--section-space) auto 0;color:var(--ink)}.earlier-builds-list,.more-builds-list{padding:0;list-style:none}.earlier-builds-list{border-bottom:1px solid var(--line);margin:24px 0 0}.earlier-build{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:64px;padding-block:32px;display:grid}.earlier-build-heading{min-width:0}.earlier-build-heading h3{letter-spacing:-.03em;margin:0;font-size:clamp(24px,2.2vw,32px);font-weight:400;line-height:1.2}.earlier-build-heading p{color:var(--muted);font-family:var(--font-sans);font-size:var(--text-metadata);margin:16px 0 0;line-height:1.8}.earlier-build--archived{padding:0;display:block}.earlier-build--archived summary{cursor:pointer;grid-template-columns:minmax(0,1fr) minmax(0,2fr) 24px;align-items:center;gap:32px;padding-block:20px;list-style:none;display:grid}.earlier-build--archived summary::-webkit-details-marker{display:none}.earlier-build--archived summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.earlier-build--archived summary:hover h3{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:5px}.earlier-build--archived summary h3{font-size:24px}.earlier-build--archived summary p{margin:0}.earlier-build--archived summary svg{color:var(--accent)}.earlier-build--archived[open] summary svg{transform:rotate(180deg)}.earlier-build--archived .earlier-build-body{max-width:70ch;margin-left:calc(33.3333% + 2.66667px);padding-bottom:24px}.earlier-build-body{min-width:0}.earlier-build-description{max-width:65ch;color:var(--muted);margin:0;font-size:16px;line-height:1.65}.earlier-build-technologies{color:var(--muted);font-family:var(--font-sans);font-size:var(--text-technology);margin:16px 0 0;line-height:1.6}.earlier-build-links{flex-wrap:wrap;gap:0 24px;margin:8px 0 0;padding:0;list-style:none;display:flex}.earlier-build-links a{min-height:44px;color:var(--accent);text-underline-offset:4px;align-items:center;font-size:14px;line-height:1.5;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.earlier-build-links a:hover{text-decoration-thickness:2px}.more-builds{border-bottom:1px solid var(--line);margin-top:24px}.more-builds summary{color:var(--ink);cursor:pointer;padding-block:24px;font-size:20px;line-height:1.4}.more-builds summary::marker{color:var(--accent)}.earlier-build-links a:focus-visible,.more-builds summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.more-builds-introduction{max-width:65ch;color:var(--muted);margin:0 0 24px;padding-top:8px;font-size:16px;line-height:1.65}.more-builds-list{margin:0}.more-builds-list .earlier-build-heading h3{font-size:24px}@media (max-width:900px){.earlier-build{gap:32px}}@media (max-width:600px){.earlier-builds-list{margin-top:32px}.earlier-build{grid-template-columns:1fr;gap:16px;padding-block:24px}.earlier-build-heading p{margin-top:8px}.earlier-build--archived{padding:0}.earlier-build--archived summary{grid-template-columns:minmax(0,1fr) 24px;gap:8px 16px}.earlier-build--archived summary h3{font-size:22px}.earlier-build--archived summary p{grid-column:1}.earlier-build--archived summary svg{grid-area:1/2}.earlier-build--archived .earlier-build-body{margin-left:0}}@media (max-width:359px){.earlier-builds{width:calc(100% - 32px)}}.original-illustration{width:100%;position:relative}.original-illustration .poster,.original-illustration .animation{width:100%;height:100%;position:absolute;inset:0}body .original-illustration .poster{object-fit:contain;aspect-ratio:auto}.original-illustration .poster.is-playing{visibility:hidden}.greeting-image-div{position:relative}.intro-illustration{pointer-events:none;width:72px;position:absolute;top:0;right:0}@media (prefers-reduced-motion:reduce),(prefers-reduced-data:reduce){.original-illustration .animation{visibility:hidden}.original-illustration .poster.is-playing{visibility:visible}}.contact-div-main{display:flex}:root:not([data-theme=light]) .contact-text-div a{color:#fcfcfc}.contact-div-main>*{flex:1}.contact-title{font-size:65px;font-weight:400}.contact-detail,.contact-detail-email{color:var(--muted);margin-top:20px;font-size:40px;font-weight:400;text-decoration:none}.contact-detail:hover,.contact-detail-email:hover{color:#fcfcfc;text-shadow:2px 1px 2px #0000;transition:all .3s}.contact-subtitle{text-transform:inherit}.contact-text-div{margin-top:1.5rem}.contact-margin-top{margin-top:4rem}.contact-image-div>img{max-width:100%;height:auto;margin-top:-4rem;margin-left:1.5rem}@media (max-width:1380px),(max-width:768px){.contact-title{text-align:center;text-align:center;font-size:40px;font-weight:400}.contact-subtitle{text-align:center;font-size:16px;line-height:normal}.contact-text-div{text-align:center;margin-top:1.5rem}.contact-detail,.contact-detail-email{font-size:20px}.contact-image-div{display:none}}.social-media-div{font-size:2em}.icon-button{--size:2.6rem;--fg:$textColorDark;width:var(--size);height:var(--size);color:#fcfcfc;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;margin:0 5px 10px;transition:background-color .2s,color .2s,transform .15s;display:inline-flex}.icon-button .icon{font-size:1.3rem}.icon-button.facebook,.icon-button.linkedin,.icon-button.github,.icon-button.gitlab,.icon-button.google,.icon-button.twitter,.icon-button.medium,.icon-button.instagram{background-color:#181826}.icon-button:hover,.icon-button:focus-visible{color:#fcfcfc;transform:translateY(-1px)}@media (max-width:768px){.social-media-div{text-align:center}}.icon-button{min-width:44px;min-height:44px;text-decoration:none}.footer-shell{background:radial-gradient(ellipse at 50% 120%, #1a163b88, transparent 70%), var(--nav,#040407);border-top:1px solid var(--line);padding:48px 24px 24px}.footer-inner{max-width:var(--content-width);margin:auto}.footer-topline,.footer-links{justify-content:space-between;align-items:center;gap:24px;display:flex}.footer-topline p{color:var(--muted);margin:0;font-size:14px}.footer-name{letter-spacing:-.03em;color:var(--ink);padding-block:12px;font-size:20px;font-weight:500;text-decoration:none}.footer-links{margin-top:24px}.footer-links nav,.footer-links .footer-social{flex-wrap:wrap;gap:8px 24px;display:flex}.footer-links a{min-height:44px;color:var(--muted);align-items:center;font-size:13px;text-decoration:none;display:inline-flex}.footer-links a:hover,.footer-links a:focus-visible{color:var(--accent)}.footer-copyright{color:var(--muted);font-family:var(--font-mono);margin:32px 0 0;font-size:12px;line-height:1.5}@media (max-width:768px){.footer-topline{flex-direction:column;align-items:flex-start;gap:16px}.footer-links{grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.footer-links .footer-social{flex-direction:column}}@media (max-width:359px){.footer-shell{padding-inline:16px}}.site{overflow:clip}.overview-region{background:radial-gradient(at 85% 20%,#1a163b66,#0000 55%),radial-gradient(at 10% 85%,#18182699,#0000 50%)}.depth-region{background:radial-gradient(at 85% 8%,#1a163b66,#0000 30%),radial-gradient(at 10% 38%,#181826aa,#0000 35%),radial-gradient(at 90% 76%,#1a163b55,#0000 30%);display:flow-root}.legacy-sections{padding-block:var(--section-space);background:radial-gradient(at 15% 35%,#1a163b55,#0000 65%);display:flow-root}.legacy-sections .main{width:min(var(--content-width), 100% - 48px);margin:0 auto;padding:0}.legacy-sections h2{text-align:left;font-size:var(--text-section);letter-spacing:-.04em;margin-block:16px 32px;font-weight:400;line-height:1.1}.legacy-sections p{line-height:1.65}.legacy-sections .social-media-div a{border:1px solid var(--line);box-shadow:none;background:var(--surface)!important;color:var(--accent)!important}.legacy-sections .contact-image-div{display:none}@media (max-width:359px){.legacy-sections .main{width:calc(100% - 32px)}}@media (max-width:1000px){.site{padding-bottom:calc(88px + env(safe-area-inset-bottom))}}
