img.svelte-1q8sh7o,.placeholder.svelte-1q8sh7o{width:100%;height:100%;border-radius:inherit}img.svelte-1q8sh7o{object-fit:cover;outline:1px solid rgb(0 0 0 / .1);outline-offset:-1px}.placeholder.svelte-1q8sh7o{background:var(--color-bg-placeholder)}.section.svelte-7a8mnf{margin-block-start:clamp(4rem,9vw,7.5rem);padding-block-start:1.25rem;border-block-start:1px solid var(--color-border);scroll-margin-block-start:1.5rem}.head.svelte-7a8mnf{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-block-end:clamp(1.75rem,4vw,3rem)}h2.svelte-7a8mnf{font-size:clamp(1.875rem,3.2vw,2.75rem);font-weight:500;line-height:1.1;letter-spacing:-.01em}.index.svelte-7a8mnf{color:var(--color-text-muted);font-family:var(--font-mono);font-size:.8125rem;font-weight:400;line-height:1.5}.page.svelte-1uha8ag{max-width:var(--content-max);margin-inline:auto;padding-inline:var(--page-inline)}main.svelte-1uha8ag:focus{outline:none}.topbar.svelte-1uha8ag{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 2rem;padding-block:.75rem;font-family:var(--font-mono);font-size:.8125rem;font-weight:400;line-height:1.5}.topbar.svelte-1uha8ag a:where(.svelte-1uha8ag){display:inline-block;padding-block:.75rem;text-decoration-color:transparent}@media(hover:hover){.topbar.svelte-1uha8ag a:where(.svelte-1uha8ag):hover{text-decoration-color:var(--color-text-hover)}}.wordmark.svelte-1uha8ag{font-weight:500}.topbar.svelte-1uha8ag ul:where(.svelte-1uha8ag){display:flex;flex-wrap:wrap;gap:0 1.5rem}.hero.svelte-1uha8ag{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(2rem,6vw,5rem);align-items:end;padding-block-start:clamp(2.5rem,8vw,6.5rem)}h1.svelte-1uha8ag{font-size:clamp(2.75rem,6.4vw,5.5rem);font-weight:500;line-height:1.02;letter-spacing:-.015em;text-wrap:balance}.intro.svelte-1uha8ag{max-width:34rem;margin-block-start:1.75rem;font-size:clamp(1.375rem,2vw,1.625rem);line-height:1.4;text-wrap:pretty}.actions.svelte-1uha8ag{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.75rem;margin-block-start:2.25rem}.button.svelte-1uha8ag{display:inline-flex;align-items:center;min-height:2.75rem;padding:.625rem 1.25rem;border:1px solid transparent;border-radius:var(--radius);background:var(--color-bg-inverse);color:var(--color-text-inverse);font-family:var(--font-mono);font-size:.875rem;font-weight:500;line-height:1.5;text-decoration-line:none;transition-property:background-color,scale;transition-duration:.15s;transition-timing-function:ease-out}@media(hover:hover){.button.svelte-1uha8ag:hover{background:var(--color-bg-inverse-hover);color:var(--color-text-inverse)}}@media(prefers-reduced-motion:no-preference){.button.svelte-1uha8ag:active{scale:.96}}.hero-photo.svelte-1uha8ag{aspect-ratio:4 / 5;border-radius:var(--radius)}.rows.svelte-1uha8ag{margin:0;padding:0;list-style:none}.row.svelte-1uha8ag{display:grid;gap:.75rem clamp(1.25rem,3vw,2.5rem);padding-block:1.75rem;border-block-start:1px solid var(--color-border)}.row.svelte-1uha8ag:first-child{padding-block-start:0;border-block-start:0}.row.svelte-1uha8ag:last-child{padding-block-end:0}.project.svelte-1uha8ag{grid-template-columns:2.5rem minmax(0,1fr) minmax(0,11rem)}.role.svelte-1uha8ag{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}h3.svelte-1uha8ag{font-size:clamp(1.5rem,2.2vw,1.75rem);font-weight:600;line-height:1.2;letter-spacing:0;overflow-wrap:break-word}.summary.svelte-1uha8ag{max-width:36rem;font-size:1.3125rem;text-wrap:pretty}.project.svelte-1uha8ag .summary:where(.svelte-1uha8ag){margin-block-start:.5rem}.number.svelte-1uha8ag,.mono.svelte-1uha8ag,.tech.svelte-1uha8ag{color:var(--color-text-muted);font-family:var(--font-mono);font-size:.8125rem;font-weight:400;line-height:1.5}.number.svelte-1uha8ag{padding-block-start:.5rem;font-variant-numeric:tabular-nums}.tech.svelte-1uha8ag{display:flex;flex-direction:column;gap:.25rem;padding-block-start:.5rem}.role.svelte-1uha8ag .mono:where(.svelte-1uha8ag){margin-block-start:.375rem}.prose.svelte-1uha8ag{display:grid;gap:1.25rem;max-width:44rem;font-size:clamp(1.5rem,2.3vw,1.875rem);line-height:1.4;text-wrap:pretty}.interests.svelte-1uha8ag{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem clamp(1.5rem,4vw,3rem)}.interests.svelte-1uha8ag .summary:where(.svelte-1uha8ag){margin-block-start:.5rem}.contact.svelte-1uha8ag{margin-block-start:clamp(4rem,9vw,7.5rem);padding:clamp(1.75rem,6vw,4.5rem);border-radius:calc(var(--radius) * 2);scroll-margin-block-start:1.5rem}.contact.svelte-1uha8ag .mono:where(.svelte-1uha8ag){color:inherit;font-weight:400}.lead.svelte-1uha8ag{margin-block-start:clamp(1.5rem,4vw,3rem);font-size:1.3125rem}.email.svelte-1uha8ag{display:inline-block;margin-block:.5rem 1.75rem;font-size:clamp(1.75rem,5.6vw,4rem);font-weight:500;line-height:1.15;letter-spacing:-.01em;overflow-wrap:anywhere}.footer.svelte-1uha8ag{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 1.5rem;padding-block:1.5rem;color:var(--color-text-muted);font-family:var(--font-mono);font-size:.8125rem;font-weight:400;line-height:1.5}.footer.svelte-1uha8ag a:where(.svelte-1uha8ag){display:inline-block;padding-block:.75rem}@media(max-width:767px){.hero.svelte-1uha8ag{grid-template-columns:minmax(0,1fr)}.hero-photo.svelte-1uha8ag{max-width:24rem}.project.svelte-1uha8ag{grid-template-columns:2.25rem minmax(0,1fr)}.tech.svelte-1uha8ag{grid-column:2;flex-direction:row;flex-wrap:wrap;gap:.25rem 1rem;padding-block-start:0}.role.svelte-1uha8ag,.interests.svelte-1uha8ag{grid-template-columns:minmax(0,1fr)}}
