.skills-deck[data-astro-cid-2zwc476k]{max-width:30rem;color:var(--steel-text);margin-top:1rem;font-size:1.125rem;line-height:1.4}.skills-label[data-astro-cid-2zwc476k]{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;overflow-wrap:anywhere;color:var(--ink);font-size:.8125rem}.skills-filter[data-astro-cid-2zwc476k]{border:0;min-inline-size:0;margin:0;padding:0;display:none}.skills-filter[data-astro-cid-2zwc476k] legend[data-astro-cid-2zwc476k]{margin-bottom:.75rem;padding:0}.ctx-options[data-astro-cid-2zwc476k]{border:1px solid var(--ink);background:var(--rule);flex-wrap:wrap;gap:1px;display:flex}.ctx-opt[data-astro-cid-2zwc476k]{background:var(--paper);flex:max(9.5rem,33.3333% - .666667px);display:grid;position:relative}.ctx-input[data-astro-cid-2zwc476k]{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.ctx-opt[data-astro-cid-2zwc476k]:has(>.ctx-input:focus-visible){z-index:2;outline:2px solid var(--focus);outline-offset:2px}.ctx-label[data-astro-cid-2zwc476k]{flex-wrap:wrap;place-content:center space-between;align-items:baseline;column-gap:.75rem;min-height:2.75rem;padding:.5rem .75rem .5rem 1rem;display:flex;position:relative}.ctx-label[data-astro-cid-2zwc476k]:before{content:"";background:var(--signal);transform-origin:top;width:4px;position:absolute;inset-block:0;inset-inline-start:0;scale:1 0}.ctx-name[data-astro-cid-2zwc476k]{color:var(--ink);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;text-underline-offset:.35em;font-size:.75rem}.ctx-name[data-astro-cid-2zwc476k]:before{content:"";vertical-align:.05em;border:1px solid;border-radius:50%;block-size:.5rem;inline-size:.5rem;margin-inline-end:.5rem;display:inline-block}.ctx-input[data-astro-cid-2zwc476k]:checked+.ctx-label[data-astro-cid-2zwc476k] .ctx-name[data-astro-cid-2zwc476k]:before{background:currentColor}.ctx-count[data-astro-cid-2zwc476k]{color:var(--steel-text);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.9375rem;line-height:1}@media (hover:hover){.ctx-opt[data-astro-cid-2zwc476k]:hover .ctx-label[data-astro-cid-2zwc476k]{background:color-mix(in srgb, var(--ink) 6%, var(--paper))}.ctx-opt[data-astro-cid-2zwc476k]:hover .ctx-name[data-astro-cid-2zwc476k]{color:var(--ink);text-decoration:underline 1px}.ctx-opt[data-astro-cid-2zwc476k]:hover .ctx-count[data-astro-cid-2zwc476k]{color:var(--ink)}}.ctx-input[data-astro-cid-2zwc476k]:checked+.ctx-label[data-astro-cid-2zwc476k]{background:var(--ink)}.ctx-input[data-astro-cid-2zwc476k]:checked+.ctx-label[data-astro-cid-2zwc476k]:before{scale:1}.ctx-input[data-astro-cid-2zwc476k]:checked+.ctx-label[data-astro-cid-2zwc476k] .ctx-name[data-astro-cid-2zwc476k]{color:var(--paper);text-decoration:underline 2px}.ctx-input[data-astro-cid-2zwc476k]:checked+.ctx-label[data-astro-cid-2zwc476k] .ctx-count[data-astro-cid-2zwc476k]{color:var(--paper)}.skills-list[data-astro-cid-2zwc476k]{grid-template-columns:minmax(0,1fr);gap:3rem;display:grid;container-type:inline-size}.skill-group[data-astro-cid-2zwc476k]{border-top:1px solid var(--ink);padding-top:.75rem}.entries[data-astro-cid-2zwc476k]{border-bottom:1px solid var(--rule);margin-top:.75rem}.entry[data-astro-cid-2zwc476k]{border-top:1px solid var(--rule);grid-template-columns:minmax(0,1fr);gap:.5rem;padding:1.25rem 0;display:grid}.headword[data-astro-cid-2zwc476k]{font-family:var(--font-display);font-synthesis:none;text-wrap:balance;hyphens:auto;overflow-wrap:break-word;font-size:1.375rem;font-weight:400;line-height:1.15}.hw-qual[data-astro-cid-2zwc476k]{color:var(--steel-text);font-family:var(--font-mono);font-size:.8125rem;line-height:1.4}.entry-body[data-astro-cid-2zwc476k],.senses[data-astro-cid-2zwc476k]{grid-template-columns:minmax(0,1fr);gap:.5rem;display:grid}.sense-meta[data-astro-cid-2zwc476k],.entry-certs[data-astro-cid-2zwc476k]{color:var(--steel-text);font-variant-numeric:tabular-nums;overflow-wrap:break-word;font-size:.9375rem;line-height:1.45}.sense-ctx[data-astro-cid-2zwc476k],.certs-label[data-astro-cid-2zwc476k],.also-ctx[data-astro-cid-2zwc476k]{color:var(--steel-text);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:.75rem}.sense-place[data-astro-cid-2zwc476k]{color:var(--ink)}.cert-name[data-astro-cid-2zwc476k]{color:var(--ink);font-weight:500}.sense-year[data-astro-cid-2zwc476k]{white-space:nowrap}.place-index[data-astro-cid-2zwc476k]{display:none}.place-link[data-astro-cid-2zwc476k]{text-underline-offset:.3em;font-weight:500;text-decoration:underline 1px}@media (hover:hover){.place-link[data-astro-cid-2zwc476k]:hover{text-decoration-color:var(--signal);text-decoration-thickness:2px}}.entry-gloss[data-astro-cid-2zwc476k]{max-width:28rem;color:var(--ink);text-wrap:pretty;hyphens:auto;overflow-wrap:break-word;margin-top:.375rem;font-size:.9375rem;line-height:1.45;display:none}.sense-evidence[data-astro-cid-2zwc476k]{margin-top:.375rem}.sense-note[data-astro-cid-2zwc476k]{max-width:40rem;color:var(--ink);text-wrap:pretty;hyphens:auto;overflow-wrap:break-word;line-height:1.55}.sense-note[data-astro-cid-2zwc476k]+.sense-note[data-astro-cid-2zwc476k]{margin-top:.375rem}.proofs[data-astro-cid-2zwc476k]{flex-wrap:wrap;column-gap:1.5rem;display:flex}.proof-link[data-astro-cid-2zwc476k]{text-underline-offset:.3em;overflow-wrap:anywhere;align-items:flex-start;max-width:100%;min-height:2.75rem;padding-block:.6875rem;font-size:.9375rem;font-weight:500;line-height:1.45;text-decoration:underline 1px;display:inline-flex}@media (hover:hover){.proof-link[data-astro-cid-2zwc476k]:hover{text-decoration-color:var(--signal);text-decoration-thickness:2px}}.entry-also[data-astro-cid-2zwc476k]{color:var(--steel-text);overflow-wrap:break-word;font-size:.875rem}.to-filter[data-astro-cid-2zwc476k]{text-underline-offset:.3em;align-items:center;min-height:2.75rem;margin-top:2rem;font-size:.875rem;font-weight:500;text-decoration:underline 1px;display:none}@container (width>=40rem){.sense-meta[data-astro-cid-2zwc476k],.entry-certs[data-astro-cid-2zwc476k]{grid-template-columns:7rem minmax(0,1fr);align-items:baseline;display:grid}.sense-evidence[data-astro-cid-2zwc476k],.entry-also[data-astro-cid-2zwc476k]{margin-inline-start:7rem}}@container (width>=61rem){.entry[data-astro-cid-2zwc476k]{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:baseline;column-gap:4rem}.headword[data-astro-cid-2zwc476k]{font-size:1.75rem;line-height:1.1}}.entry-also[data-astro-cid-2zwc476k],.sense-scope[data-astro-cid-2zwc476k]{display:none}@media screen{@supports selector(:has(*)){.skills-filter[data-astro-cid-2zwc476k]{display:block}.to-filter[data-astro-cid-2zwc476k]{display:inline-flex}.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-all:checked) .sense-evidence[data-astro-cid-2zwc476k]{display:none}.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-all:checked) .sense-scope[data-astro-cid-2zwc476k]{display:inline}.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-all:checked) .entry[data-astro-cid-2zwc476k]:not(:has(>.entry-head>.headword:target)) .entry-gloss[data-astro-cid-2zwc476k]{display:block}.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-all:checked) .entry[data-astro-cid-2zwc476k]:not(:has(>.entry-head>.headword:target)) .place-link[data-astro-cid-2zwc476k]{display:none}.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-all:checked) .entry[data-astro-cid-2zwc476k]:not(:has(>.entry-head>.headword:target)) .place-index[data-astro-cid-2zwc476k]{display:inline}.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-all:checked) .entry[data-astro-cid-2zwc476k]:has(>.entry-head>.headword:target) .sense-evidence[data-astro-cid-2zwc476k]{display:block}.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-all:checked) .entry[data-astro-cid-2zwc476k]:has(>.entry-head>.headword:target) .sense-scope[data-astro-cid-2zwc476k],.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-internship:checked) [data-astro-cid-2zwc476k]:is(.skill-group,.entry,.sense):not([data-ctx~=internship]),.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-work:checked) [data-astro-cid-2zwc476k]:is(.skill-group,.entry,.sense):not([data-ctx~=work]),.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-freelance:checked) [data-astro-cid-2zwc476k]:is(.skill-group,.entry,.sense):not([data-ctx~=freelance]),.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-study:checked) [data-astro-cid-2zwc476k]:is(.skill-group,.entry,.sense):not([data-ctx~=study]),.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-personal:checked) [data-astro-cid-2zwc476k]:is(.skill-group,.entry,.sense):not([data-ctx~=personal]){display:none}.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-internship:checked) .entry-also[data-astro-cid-2zwc476k][data-for=internship],.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-work:checked) .entry-also[data-astro-cid-2zwc476k][data-for=work],.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-freelance:checked) .entry-also[data-astro-cid-2zwc476k][data-for=freelance],.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-study:checked) .entry-also[data-astro-cid-2zwc476k][data-for=study],.skills[data-astro-cid-2zwc476k]:has(#skills-ctx-personal:checked) .entry-also[data-astro-cid-2zwc476k][data-for=personal]{display:block}}}.entry[data-astro-cid-2zwc476k]{position:relative}.entry[data-astro-cid-2zwc476k]:has(>.entry-head>.headword:target):before{content:"";background:var(--ink);transform-origin:top;width:3px;position:absolute;inset-block:0;inset-inline-start:-.75rem}@media screen and (prefers-reduced-motion:no-preference){.ctx-input[data-astro-cid-2zwc476k]:checked+.ctx-label[data-astro-cid-2zwc476k]:before{transition:scale .22s cubic-bezier(.2,.7,.2,1)}.skills[data-astro-cid-2zwc476k]:has(.ctx-input:not([value=all]):checked) .sense-evidence[data-astro-cid-2zwc476k]{animation:.2s cubic-bezier(.2,.7,.2,1) both evidence-in}.entry[data-astro-cid-2zwc476k]:has(>.entry-head>.headword:target):before{animation:.3s cubic-bezier(.2,.7,.2,1) both landing}}@keyframes evidence-in{0%{opacity:0;translate:0 .25rem}}@keyframes landing{0%{transform:scaleY(0)}}@media (forced-colors:active){.ctx-label[data-astro-cid-2zwc476k]{border:1px solid canvastext}.ctx-input[data-astro-cid-2zwc476k]:checked+.ctx-label[data-astro-cid-2zwc476k]{forced-color-adjust:none;background:highlight}.ctx-input[data-astro-cid-2zwc476k]:checked+.ctx-label[data-astro-cid-2zwc476k] [data-astro-cid-2zwc476k]:is(.ctx-name,.ctx-count){color:highlighttext}.ctx-input[data-astro-cid-2zwc476k]:checked+.ctx-label[data-astro-cid-2zwc476k] .ctx-name[data-astro-cid-2zwc476k]{text-decoration-thickness:3px}.ctx-input[data-astro-cid-2zwc476k]:checked+.ctx-label[data-astro-cid-2zwc476k]:before{background:highlighttext}.entry[data-astro-cid-2zwc476k]:has(>.entry-head>.headword:target):before{forced-color-adjust:none;background:highlight}}@media print{.skills-filter[data-astro-cid-2zwc476k],.to-filter[data-astro-cid-2zwc476k],.entry-also[data-astro-cid-2zwc476k],.sense-scope[data-astro-cid-2zwc476k],.entry-gloss[data-astro-cid-2zwc476k],.place-link[data-astro-cid-2zwc476k]{display:none!important}.place-index[data-astro-cid-2zwc476k]{display:inline!important}.skills[data-astro-cid-2zwc476k] .sense-evidence[data-astro-cid-2zwc476k]{animation:none!important}}.grades[data-astro-cid-bl6cniha]{color:var(--steel-text);flex-wrap:wrap;gap:.25rem 1rem;margin-top:.75rem;font-size:.875rem;display:flex}.grade[data-astro-cid-bl6cniha]{color:var(--ink);font-family:var(--font-mono);font-weight:500}.section-label[data-astro-cid-bl6cniha]{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-size:.8125rem}.timeline-row[data-astro-cid-bl6cniha]{border-top:1px solid var(--rule)}.timeline-entry[data-astro-cid-bl6cniha]{overflow-wrap:break-word;grid-template-columns:minmax(0,1fr);gap:.75rem;padding:1.5rem 0;display:grid;position:relative}@media (width>=768px){.timeline-entry[data-astro-cid-bl6cniha]{grid-template-columns:minmax(8rem,3fr) minmax(0,9fr);gap:2rem;padding:2rem 0}}.responsibilities[data-astro-cid-bl6cniha]{margin-top:1rem}.timeline-entry[data-astro-cid-bl6cniha] h4[data-astro-cid-bl6cniha]{scroll-margin-top:3.5rem}@media (width>=768px){.timeline-entry[data-astro-cid-bl6cniha] h4[data-astro-cid-bl6cniha]{scroll-margin-top:0}}.timeline-entry[data-astro-cid-bl6cniha]:has(h4:target):before{content:"";background:var(--ink);transform-origin:top;width:3px;position:absolute;inset-block:0;inset-inline-start:-.75rem}@media (prefers-reduced-motion:no-preference){.timeline-entry[data-astro-cid-bl6cniha]:has(h4:target):before{animation:.3s cubic-bezier(.2,.7,.2,1) both landing}}@media (forced-colors:active){.timeline-entry[data-astro-cid-bl6cniha]:has(h4:target):before{forced-color-adjust:none;background:highlight}}.responsibilities[data-astro-cid-bl6cniha] summary[data-astro-cid-bl6cniha]{cursor:pointer;text-underline-offset:.25em;align-items:center;min-height:2.75rem;font-size:.875rem;font-weight:500;text-decoration:underline;display:inline-flex}.responsibilities[data-astro-cid-bl6cniha] summary[data-astro-cid-bl6cniha]:hover{text-decoration-color:var(--signal)}@media (forced-colors:active){.responsibilities[data-astro-cid-bl6cniha] summary[data-astro-cid-bl6cniha]{outline-offset:3px}}.bridge[data-astro-cid-fi6a2bfj]{--bar:4px;grid-template-columns:minmax(0, calc((100% - var(--bar)) * var(--split) / 100)) var(--bar) minmax(0, 1fr);cursor:pointer;height:15rem;transition:--split .3s cubic-bezier(.2,.7,.2,1)}.bridge[data-astro-cid-fi6a2bfj][data-dragging]{cursor:ew-resize;user-select:none;transition:none}@media (width>=640px){.bridge[data-astro-cid-fi6a2bfj]{height:clamp(17rem,10vw + 11.75rem,20rem)}}.bridge-panel[data-astro-cid-fi6a2bfj]{min-width:0;overflow:hidden;container-type:inline-size}.bridge-inner[data-astro-cid-fi6a2bfj]{flex-direction:column;gap:1rem;height:100%;padding:1rem;transition:opacity .15s ease-out;display:flex}@media (width>=640px){.bridge-inner[data-astro-cid-fi6a2bfj]{padding:1.5rem 2rem}}.bridge-business[data-astro-cid-fi6a2bfj] .bridge-inner[data-astro-cid-fi6a2bfj]{opacity:clamp(0, (var(--split) - 8) / 12, 1)}.bridge-tech[data-astro-cid-fi6a2bfj] .bridge-inner[data-astro-cid-fi6a2bfj]{opacity:clamp(0, (92 - var(--split)) / 12, 1)}@container (inline-size<7.5rem){.bridge-business[data-astro-cid-fi6a2bfj] .bridge-inner[data-astro-cid-fi6a2bfj]{opacity:0}}@container (inline-size<8.25rem){.bridge-tech[data-astro-cid-fi6a2bfj] .bridge-inner[data-astro-cid-fi6a2bfj]{opacity:0}}@media (width>=640px){@container (inline-size<9.5rem){.bridge-business[data-astro-cid-fi6a2bfj] .bridge-inner[data-astro-cid-fi6a2bfj]{opacity:0}}@container (inline-size<10.5rem){.bridge-tech[data-astro-cid-fi6a2bfj] .bridge-inner[data-astro-cid-fi6a2bfj]{opacity:0}}}.bridge[data-astro-cid-fi6a2bfj] .bridge-business-text{text-wrap:balance;font-size:clamp(1.125rem,10cqi,4.75rem);line-height:1.02}@media (width>=640px){.bridge[data-astro-cid-fi6a2bfj] .bridge-business-text{font-size:clamp(1.125rem,10cqi,min(4.75rem,7vw))}}.bridge[data-astro-cid-fi6a2bfj] .bridge-tech-text{white-space:pre;font-size:clamp(.75rem,5.2cqi,1.75rem);line-height:1.35}.bridge-pillar[data-astro-cid-fi6a2bfj]{z-index:1}.bridge-handle[data-astro-cid-fi6a2bfj]{background-color:var(--signal);color:#111;width:2.75rem;height:2.75rem;box-shadow:0 0 0 2px var(--ink), 0 0 0 4px var(--paper);cursor:ew-resize;touch-action:none;translate:calc(-50% + clamp(0px, (2 - var(--split)) * 3px, 6px) - clamp(0px, (var(--split) - 98) * 3px, 6px)) -50%;visibility:hidden;border-radius:9999px;place-items:center;transition:scale .12s ease-out;display:grid;position:absolute;top:50%;left:50%}@media (width<=639px){.bridge-handle[data-astro-cid-fi6a2bfj]{translate:calc(-50% + clamp(0px, (7 - var(--split)) * 4px, 28px) - clamp(0px, (var(--split) - 93) * 4px, 28px)) 0;top:auto;bottom:.75rem}}.bridge[data-astro-cid-fi6a2bfj][data-dragging] .bridge-handle[data-astro-cid-fi6a2bfj]{scale:1.08}@media (hover:hover){.bridge-handle[data-astro-cid-fi6a2bfj]:hover{scale:1.08}}.js .bridge-handle[data-astro-cid-fi6a2bfj]{visibility:visible}.bridge-hint[data-astro-cid-fi6a2bfj]{visibility:hidden}.js .bridge-hint[data-astro-cid-fi6a2bfj]{visibility:visible}.bridge-handle[data-astro-cid-fi6a2bfj]:focus-visible{outline:2px solid var(--focus);outline-offset:4px;box-shadow:0 0 0 2px var(--ink), 0 0 0 8px var(--paper)}.hero-rule[data-astro-cid-fi6a2bfj]{transform-origin:0}.intro .hero-rule[data-astro-cid-fi6a2bfj]{transform:scaleX(0)}.intro .bridge-pillar[data-astro-cid-fi6a2bfj]{transform-origin:top;transform:scaleY(0)}.intro .bridge-handle[data-astro-cid-fi6a2bfj],.intro .bridge-hint[data-astro-cid-fi6a2bfj]{opacity:0}.intro .bridge-handle[data-astro-cid-fi6a2bfj]{scale:.6}.intro.intro-bridge .hero-rule[data-astro-cid-fi6a2bfj]{transition:transform .42s cubic-bezier(.65,0,.35,1);transform:scaleX(1)}.intro.intro-bridge .bridge-pillar[data-astro-cid-fi6a2bfj]{transition:transform .26s cubic-bezier(.2,.7,.2,1) .21s;transform:none}.intro.intro-bridge .bridge-handle[data-astro-cid-fi6a2bfj]{opacity:1;transition:opacity .14s ease-out .47s,scale .24s cubic-bezier(.34,1.56,.64,1) .47s;scale:1}.intro.intro-bridge .bridge-hint[data-astro-cid-fi6a2bfj]{opacity:1;transition:opacity .2s ease-out .62s}@keyframes bridge-nudge{45%{--split:57}}.intro.intro-nudge.intro-bridge .bridge[data-astro-cid-fi6a2bfj]{animation:.36s cubic-bezier(.45,0,.55,1) .6s bridge-nudge}.hero[data-astro-cid-fi6a2bfj] .decode-ch{transition:color .14s ease-out;position:relative}.hero[data-astro-cid-fi6a2bfj] .decode-ch[data-g]{color:#0000}.hero[data-astro-cid-fi6a2bfj] .decode-ch[data-g]:after{color:var(--steel-text);content:attr(data-g);content:attr(data-g) / "";font-family:var(--font-mono);place-items:center;font-size:.5em;display:grid;position:absolute;inset:0}.hero[data-astro-cid-fi6a2bfj] .intro-skip{min-height:2.75rem;font-family:var(--font-mono);text-underline-offset:4px;padding:0 .75rem;font-size:.75rem;text-decoration:underline;transition:opacity .15s ease-out;position:absolute;top:.75rem;right:1rem}.hero[data-astro-cid-fi6a2bfj] .intro-skip.is-leaving{opacity:0;pointer-events:none}.about-grid[data-astro-cid-oxgmilyn]{overflow-wrap:break-word;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head photo""text text""certs certs""langs langs";align-items:end;gap:2.5rem 1.5rem;display:grid}@media (width>=768px){.about-grid[data-astro-cid-oxgmilyn]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"head photo""text text""certs langs";column-gap:3rem}.about-photo[data-astro-cid-oxgmilyn]{justify-self:end}}@media (width>=1024px){.about-grid[data-astro-cid-oxgmilyn]{grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"head head""text photo""text certs""langs certs";align-items:start;column-gap:4rem}.about-photo[data-astro-cid-oxgmilyn]{justify-self:start}}.about-head[data-astro-cid-oxgmilyn]{grid-area:head}.about-photo[data-astro-cid-oxgmilyn]{border-bottom:3px solid var(--signal);grid-area:photo;width:6.5rem}@media (width>=1024px){.about-photo[data-astro-cid-oxgmilyn]{width:16rem}}.about-text[data-astro-cid-oxgmilyn]{grid-area:text}.about-certs[data-astro-cid-oxgmilyn]{grid-area:certs}.about-langs[data-astro-cid-oxgmilyn]{grid-area:langs}.about-photo[data-astro-cid-oxgmilyn] .portrait{aspect-ratio:4/5;object-fit:cover;filter:grayscale()contrast(1.08);mix-blend-mode:multiply;width:100%;height:auto;display:block}[data-theme=dark] .about-photo[data-astro-cid-oxgmilyn] .portrait{filter:grayscale()contrast(1.1)brightness(.74);mix-blend-mode:normal}@media (prefers-color-scheme:dark){:root:not([data-theme]) .about-photo[data-astro-cid-oxgmilyn] .portrait{filter:grayscale()contrast(1.1)brightness(.74);mix-blend-mode:normal}}.about-label[data-astro-cid-oxgmilyn]{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-size:.8125rem}.lens[data-astro-cid-ftq3vvlr]{display:none}@supports selector(:has(*)){.lens[data-astro-cid-ftq3vvlr]{display:block}.projects[data-astro-cid-ftq3vvlr]:has(#projects-lens-tech:checked) .view-business:has(+.view-tech:not([data-empty])),.projects[data-astro-cid-ftq3vvlr]:has(#projects-lens-business:checked) .view-business:not([data-empty])+.view-tech{display:none}}.lens-options[data-astro-cid-ftq3vvlr]{--bar:4px;--split:62;grid-template-columns:minmax(0, calc((100% - var(--bar)) * var(--split) / 100)) var(--bar) minmax(0, 1fr);border:1px solid var(--ink);width:min(100%,22rem);min-height:2.75rem;transition:--split .3s cubic-bezier(.2,.7,.2,1);display:grid;position:relative}.lens-options[data-astro-cid-ftq3vvlr]:has(#projects-lens-tech:checked){--split:38}.lens-options[data-astro-cid-ftq3vvlr]:before{background-color:var(--signal);content:"";grid-area:1/2}.lens-options[data-astro-cid-ftq3vvlr]:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:3px}.lens[data-astro-cid-ftq3vvlr] input[data-astro-cid-ftq3vvlr]{opacity:0;width:1px;height:1px;position:absolute;top:0;left:0}.lens[data-astro-cid-ftq3vvlr] label[data-astro-cid-ftq3vvlr]{cursor:pointer;text-align:center;overflow-wrap:anywhere;hyphens:auto;grid-row:1;justify-content:center;align-items:center;padding:0 .5rem;line-height:1.1;transition:color .15s ease-out;display:flex}.lens-business[data-astro-cid-ftq3vvlr]{background-color:var(--paper);color:var(--steel-text);font-family:var(--font-display);font-synthesis:none;grid-column:1;font-size:1.25rem}.lens-tech[data-astro-cid-ftq3vvlr]{background-color:var(--ink);color:color-mix(in srgb, var(--paper) 70%, var(--ink));font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;grid-column:3;font-size:.8125rem}.lens-business[data-astro-cid-ftq3vvlr]:hover,.lens[data-astro-cid-ftq3vvlr] input[data-astro-cid-ftq3vvlr]:checked+.lens-business[data-astro-cid-ftq3vvlr]{color:var(--ink)}.lens-tech[data-astro-cid-ftq3vvlr]:hover,.lens[data-astro-cid-ftq3vvlr] input[data-astro-cid-ftq3vvlr]:checked+.lens-tech[data-astro-cid-ftq3vvlr]{color:var(--paper)}.lens[data-astro-cid-ftq3vvlr] input[data-astro-cid-ftq3vvlr]:checked+label[data-astro-cid-ftq3vvlr]{text-underline-offset:.35em;text-decoration:underline 2px}@media (forced-colors:active){.lens[data-astro-cid-ftq3vvlr] input[data-astro-cid-ftq3vvlr]:checked+label[data-astro-cid-ftq3vvlr]{text-underline-offset:.35em;text-decoration:underline 3px}.lens-options[data-astro-cid-ftq3vvlr]:before{forced-color-adjust:none;background-color:canvastext}}.project-meta[data-astro-cid-ftq3vvlr],.projects[data-astro-cid-ftq3vvlr] .project-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:.8125rem}.project-meta[data-astro-cid-ftq3vvlr]{color:var(--steel-text)}.projects[data-astro-cid-ftq3vvlr] .project-label{color:var(--ink)}.featured[data-astro-cid-ftq3vvlr]{border-top:1px solid var(--ink);grid-template-columns:minmax(0,1fr);gap:1.5rem;padding-top:1.5rem;display:grid;position:relative}@media (width>=1024px){.featured[data-astro-cid-ftq3vvlr]{grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:4rem}}.featured-title[data-astro-cid-ftq3vvlr]{font-family:var(--font-display);text-wrap:balance;font-synthesis:none;hyphens:auto;overflow-wrap:break-word;margin-top:.75rem;scroll-margin-top:2.5rem;font-size:1.875rem;line-height:1.08}@media (width>=640px){.featured-title[data-astro-cid-ftq3vvlr]{font-size:2.375rem}}.keyline[data-astro-cid-ftq3vvlr]{border-left:3px solid var(--signal);max-width:26rem;font-family:var(--font-display);text-wrap:balance;font-synthesis:none;hyphens:auto;overflow-wrap:break-word;margin-top:1.25rem;padding-left:1.25rem;font-size:1.375rem;line-height:1.25}@media (width>=640px){.keyline[data-astro-cid-ftq3vvlr]{font-size:1.5rem}}.featured-links[data-astro-cid-ftq3vvlr]{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.featured-links[data-astro-cid-ftq3vvlr] li[data-astro-cid-ftq3vvlr]{width:100%}@media (width>=640px){.featured-links[data-astro-cid-ftq3vvlr] li[data-astro-cid-ftq3vvlr]{width:auto}}.featured-body[data-astro-cid-ftq3vvlr] .view-tech:not([data-empty]){background-color:var(--ink);color:var(--paper);padding:1.25rem}@media (width>=640px){.featured-body[data-astro-cid-ftq3vvlr] .view-tech:not([data-empty]){padding:1.5rem 2rem}}@supports selector(:has(*)){@media (width>=1024px){.featured-body[data-astro-cid-ftq3vvlr] .view-tech:not([data-empty]){margin-top:-1.5rem}}}.featured-body[data-astro-cid-ftq3vvlr] .view-tech .project-label{color:var(--paper)}@media (prefers-reduced-motion:no-preference){.featured-body[data-astro-cid-ftq3vvlr] .view-business{animation:.26s cubic-bezier(.2,.7,.2,1) both projects-lens-from-left}.featured-body[data-astro-cid-ftq3vvlr] .view-tech{animation:.26s cubic-bezier(.2,.7,.2,1) both projects-lens-from-right}}@keyframes projects-lens-from-left{0%{opacity:0;translate:-.75rem}}@keyframes projects-lens-from-right{0%{opacity:0;translate:.75rem}}.project-links[data-astro-cid-ftq3vvlr]{gap:.25rem;margin-top:1.25rem;display:grid}.project-links[data-astro-cid-ftq3vvlr] a[data-astro-cid-ftq3vvlr]{text-underline-offset:.3em;flex-wrap:wrap;align-items:center;max-width:100%;min-height:2.75rem;font-weight:500;text-decoration:underline 1px;display:inline-flex}.project-links[data-astro-cid-ftq3vvlr] a[data-astro-cid-ftq3vvlr]:hover{text-decoration-color:var(--signal);text-decoration-thickness:2px}.projects[data-astro-cid-ftq3vvlr] .project-rows{grid-template-columns:minmax(0,1fr);gap:1.25rem;max-width:40rem;display:grid}.projects[data-astro-cid-ftq3vvlr] .project-rows dd{margin-top:.375rem}.projects[data-astro-cid-ftq3vvlr] .project-text{text-wrap:pretty;hyphens:auto;overflow-wrap:break-word;font-size:1.0625rem;line-height:1.6}.projects[data-astro-cid-ftq3vvlr] .result-marked{border-left:3px solid var(--signal);padding-left:1rem}.projects[data-astro-cid-ftq3vvlr] .chips{flex-wrap:wrap;gap:.5rem;display:flex}.projects[data-astro-cid-ftq3vvlr] .chips li{border:1px solid var(--rule);font-family:var(--font-mono);padding:.25rem .625rem;font-size:.8125rem}.more-row[data-astro-cid-ftq3vvlr]{position:relative}.featured[data-astro-cid-ftq3vvlr]:has(.featured-title:target):before,.more-row[data-astro-cid-ftq3vvlr]:has(summary:target):before{content:"";background:var(--ink);transform-origin:top;width:3px;position:absolute;inset-block:0;inset-inline-start:-.75rem}@media (prefers-reduced-motion:no-preference){.featured[data-astro-cid-ftq3vvlr]:has(.featured-title:target):before,.more-row[data-astro-cid-ftq3vvlr]:has(summary:target):before{animation:.3s cubic-bezier(.2,.7,.2,1) both landing}}@media (forced-colors:active){.featured[data-astro-cid-ftq3vvlr]:has(.featured-title:target):before,.more-row[data-astro-cid-ftq3vvlr]:has(summary:target):before{forced-color-adjust:none;background:highlight}}.more[data-astro-cid-ftq3vvlr] summary[data-astro-cid-ftq3vvlr]{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title marker""meta marker""tools marker";align-items:start;gap:.25rem 1rem;min-height:2.75rem;padding:1rem 0;list-style:none;display:grid}.more[data-astro-cid-ftq3vvlr] summary[data-astro-cid-ftq3vvlr]::-webkit-details-marker{display:none}@media (width>=640px){.more[data-astro-cid-ftq3vvlr] summary[data-astro-cid-ftq3vvlr]{grid-template-columns:6rem minmax(0,1fr) auto;grid-template-areas:"meta title marker""meta tools marker"}}.more[data-astro-cid-ftq3vvlr] summary[data-astro-cid-ftq3vvlr] .more-title{font-family:var(--font-display);font-synthesis:none;hyphens:auto;overflow-wrap:break-word;grid-area:title;font-size:1.375rem;line-height:1.2}@media (hover:hover){.more[data-astro-cid-ftq3vvlr] summary[data-astro-cid-ftq3vvlr]:hover .more-title{text-underline-offset:.2em;text-decoration:underline 1px}}.more-meta[data-astro-cid-ftq3vvlr]{color:var(--steel-text);font-family:var(--font-mono);flex-wrap:wrap;grid-area:meta;column-gap:.375rem;font-size:.8125rem;display:flex}@media (width>=640px){.more-meta[data-astro-cid-ftq3vvlr]{flex-direction:column;padding-top:.4rem}.more-meta[data-astro-cid-ftq3vvlr]>[data-astro-cid-ftq3vvlr][aria-hidden]{display:none}}.more-tools[data-astro-cid-ftq3vvlr]{font-family:var(--font-mono);grid-area:tools;font-size:.8125rem}.more-marker[data-astro-cid-ftq3vvlr]{grid-area:marker;width:.875rem;height:.875rem;margin-top:.5rem;position:relative}.more-marker[data-astro-cid-ftq3vvlr]:before,.more-marker[data-astro-cid-ftq3vvlr]:after{background-color:var(--ink);content:"";width:100%;height:1.5px;transition:transform .15s ease-out;position:absolute;top:50%;left:0}.more-marker[data-astro-cid-ftq3vvlr]:after{transform:rotate(90deg)}.more[data-astro-cid-ftq3vvlr][open] .more-marker[data-astro-cid-ftq3vvlr]:after{transform:rotate(0)}@media (forced-colors:active){.more-marker[data-astro-cid-ftq3vvlr]:before,.more-marker[data-astro-cid-ftq3vvlr]:after{forced-color-adjust:none;background-color:canvastext}}.more-body[data-astro-cid-ftq3vvlr]{padding-bottom:2rem}@media (width>=640px){.more-body[data-astro-cid-ftq3vvlr]{padding-left:7rem}}
