.row.svelte-1ngh72h{align-items:baseline;gap:var(--sp-1);display:flex}.row.svelte-1ngh72h+.row:where(.svelte-1ngh72h){margin-block-start:.5rem}dt.svelte-1ngh72h{font-family:var(--ff-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tr-label);color:var(--ap-ink-dim);flex:0 0 4.5rem}dd.svelte-1ngh72h{margin:0}a.svelte-1ngh72h{font-family:var(--ff-mono);font-size:var(--fs-contact);text-decoration:underline;-webkit-text-decoration-color:var(--ap-line-strong);text-decoration-color:var(--ap-line-strong);text-underline-offset:.3em;transition:color var(--dur-med) var(--ease-out), text-decoration-color var(--dur-med) var(--ease-out), text-underline-offset var(--dur-med) var(--ease-out);text-decoration-thickness:1px}a.svelte-1ngh72h:hover{color:var(--ap-violet);-webkit-text-decoration-color:var(--ap-violet);text-decoration-color:var(--ap-violet);text-underline-offset:.18em}.row.svelte-1ngh72h dt:where(.svelte-1ngh72h){transition:color var(--dur-med) var(--ease-out)}.row.svelte-1ngh72h:hover dt:where(.svelte-1ngh72h){color:var(--ap-ink)}dialog.svelte-12wdoub{border:0;border-left:1px solid var(--ap-line-strong);background:var(--ap-surface);width:min(33rem,100%);max-width:100%;height:100dvh;max-height:100dvh;color:var(--ap-ink);transition:transform .46s var(--ease-out), overlay .46s allow-discrete, display .46s allow-discrete;margin:0 0 0 auto;padding:0;overflow:hidden auto;transform:translate(100%)}dialog[open].svelte-12wdoub{transform:translate(0)}@starting-style{dialog[open].svelte-12wdoub{transform:translate(100%)}}dialog.svelte-12wdoub::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity .46s var(--ease-out), overlay .46s allow-discrete, display .46s allow-discrete;background:#06070aad}dialog[open].svelte-12wdoub::backdrop{opacity:1}@starting-style{dialog[open].svelte-12wdoub::backdrop{opacity:0}}.panel.svelte-12wdoub{min-height:100%;padding:var(--sp-4) var(--sp-3);flex-direction:column;justify-content:center;display:flex;position:relative}dialog[open].svelte-12wdoub .stagger:where(.svelte-12wdoub){animation:svelte-12wdoub-rise-in .56s var(--ease-out) backwards;animation-delay:calc(.22s + var(--i,0) * 55ms)}@keyframes svelte-12wdoub-rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.eyebrow.svelte-12wdoub{font-family:var(--ff-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tr-label);color:var(--ap-violet);margin-block-end:var(--sp-1)}.heading.svelte-12wdoub{text-transform:uppercase;letter-spacing:-.012em;margin-block-end:.75rem;font-size:clamp(1.5rem,3.4vw,2rem);font-weight:700;line-height:1.05}.lede.svelte-12wdoub,.confirmation.svelte-12wdoub{max-width:32ch;color:var(--ap-ink-dim);margin-block-end:var(--sp-3);line-height:1.55}.close.svelte-12wdoub{width:2rem;height:2rem;color:var(--ap-ink-dim);cursor:pointer;transition:color var(--dur-med) var(--ease-out), border-color var(--dur-med) var(--ease-out), transform var(--dur-med) var(--ease-spring);background:0 0;border:1px solid #0000;place-items:center;font-size:1.25rem;line-height:1;display:grid;position:absolute;inset-block-start:var(--sp-2);inset-inline-end:var(--sp-2)}.close.svelte-12wdoub:hover{color:var(--ap-ink);border-color:var(--ap-line-strong);transform:rotate(90deg)}.field.svelte-12wdoub{margin-block-end:var(--sp-2)}label.svelte-12wdoub{font-family:var(--ff-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tr-label);color:var(--ap-ink-dim);transition:color var(--dur-med) var(--ease-out);margin-block-end:.4rem;display:block}.field.svelte-12wdoub:focus-within label:where(.svelte-12wdoub){color:var(--ap-violet)}.control.svelte-12wdoub{position:relative}.control.svelte-12wdoub:after{content:"";background:var(--ap-violet);transform-origin:0;height:1px;transition:transform .42s var(--ease-out);position:absolute;inset-block-end:0;inset-inline:0;transform:scaleX(0)}.control.svelte-12wdoub:focus-within:after{transform:scaleX(1)}input.svelte-12wdoub,textarea.svelte-12wdoub{border:0;border-bottom:1px solid var(--ap-line-strong);width:100%;transition:border-color var(--dur-med) var(--ease-out);background:0 0;border-radius:0;padding:.55rem 0;font-size:1rem;display:block}:is(input.svelte-12wdoub,textarea.svelte-12wdoub):hover{border-bottom-color:var(--ap-ink-dim)}:is(input.svelte-12wdoub,textarea.svelte-12wdoub):focus-visible{outline:none}:is(input.svelte-12wdoub,textarea.svelte-12wdoub)[aria-invalid=true]{border-bottom-color:var(--ap-violet)}textarea.svelte-12wdoub{resize:vertical;min-height:5.5rem}.error.svelte-12wdoub{font-family:var(--ff-mono);font-size:var(--fs-label);line-height:var(--lh-mono);color:var(--ap-violet);animation:svelte-12wdoub-error-in .3s var(--ease-out);margin-block-start:.5rem}@keyframes svelte-12wdoub-error-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.actions.svelte-12wdoub{align-items:center;gap:var(--sp-1) var(--sp-2);flex-wrap:wrap;margin-block-start:var(--sp-3);display:flex}.submit.svelte-12wdoub{padding:.8rem var(--sp-2);border:1px solid var(--ap-violet);color:var(--ap-violet);font-family:var(--ff-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tr-label);cursor:pointer;transition:color var(--dur-med) var(--ease-out);background:0 0;position:relative;overflow:hidden}.submit.svelte-12wdoub:before{content:"";background:var(--ap-violet);transform-origin:0;transition:transform var(--dur-med) var(--ease-out);position:absolute;inset:0;transform:scaleX(0)}.submit.svelte-12wdoub span:where(.svelte-12wdoub){position:relative}.submit.svelte-12wdoub:hover:not(:disabled),.submit.svelte-12wdoub:focus-visible:not(:disabled){color:var(--ap-void)}.submit.svelte-12wdoub:hover:not(:disabled):before,.submit.svelte-12wdoub:focus-visible:not(:disabled):before{transform:scaleX(1)}.submit.svelte-12wdoub:active:not(:disabled){transform:translateY(1px)}.submit.svelte-12wdoub:disabled{cursor:progress;animation:1.2s ease-in-out infinite svelte-12wdoub-pulse}@keyframes svelte-12wdoub-pulse{0%,to{opacity:1}50%{opacity:.5}}.alternative.svelte-12wdoub{font-family:var(--ff-mono);font-size:var(--fs-label);color:var(--ap-ink-dim)}.alternative.svelte-12wdoub a:where(.svelte-12wdoub){color:var(--ap-ink);text-decoration:underline;-webkit-text-decoration-color:var(--ap-line-strong);text-decoration-color:var(--ap-line-strong);text-underline-offset:.3em;transition:color var(--dur-med) var(--ease-out), text-decoration-color var(--dur-med) var(--ease-out)}.alternative.svelte-12wdoub a:where(.svelte-12wdoub):hover{color:var(--ap-violet);-webkit-text-decoration-color:var(--ap-violet);text-decoration-color:var(--ap-violet)}.done.svelte-12wdoub{animation:svelte-12wdoub-rise-in .52s var(--ease-out) backwards;animation-delay:60ms}.done-mark.svelte-12wdoub{width:18px;height:18px;background:var(--ap-violet);animation:svelte-12wdoub-mark-in .62s var(--ease-spring) .16s backwards;margin-block-end:var(--sp-2);display:block}@keyframes svelte-12wdoub-mark-in{0%{transform:scale(0)rotate(-40deg)}to{transform:scale(1)rotate(0)}}.confirmation.svelte-12wdoub:focus{outline:none}.status.svelte-12wdoub:not(:empty){max-width:34ch;font-family:var(--ff-mono);font-size:var(--fs-label);line-height:var(--lh-mono);color:var(--ap-violet);animation:svelte-12wdoub-error-in .3s var(--ease-out);margin-block-start:var(--sp-2)}@media (width<=40rem){.panel.svelte-12wdoub{padding:var(--sp-4) var(--sp-2)}}.mark.svelte-byj55g{width:var(--ap-logo-size,2.75rem);height:auto;display:block;overflow:visible}rect.svelte-byj55g{fill:currentColor}rect.svelte-byj55g,.altered-anchor.svelte-byj55g{transform-box:fill-box;transform-origin:50%}.pixel.svelte-byj55g{transform:scale(var(--ap-logo-block-scale,1));transition:transform .62s var(--ease-spring-strong);transition-delay:calc(var(--distance,0) * 55ms);animation:svelte-byj55g-settle var(--settle,.56s) var(--ease-spring) backwards;animation-delay:calc(var(--order,0) * 46ms)}.altered-anchor.svelte-byj55g{transform:translate(var(--ap-logo-shift-x,7px), var(--ap-logo-shift-y,-7px)) rotate(var(--ap-logo-shift-rotate,-14deg));transition:transform .94s var(--ease-spring-strong);animation:svelte-byj55g-escape 1.02s var(--ease-out) .3s backwards}.altered.svelte-byj55g{fill:var(--ap-violet);animation:7s ease-in-out 1.3s infinite svelte-byj55g-adrift}@keyframes svelte-byj55g-settle{0%{opacity:0;transform:translate(var(--ox,0), var(--oy,0)) rotate(var(--tilt,0deg)) scale(.4)}to{opacity:1;transform:translate(0)rotate(0)scale(1)}}@keyframes svelte-byj55g-escape{0%{opacity:0;transform:translate(0)rotate(0)scale(.4)}44%{opacity:1;transform:translate(0)rotate(0)scale(1)}to{opacity:1;transform:translate(7px,-7px)rotate(-14deg)scale(1)}}@keyframes svelte-byj55g-adrift{0%{transform:translate(0)rotate(0)scale(1)}25%{transform:translate(3.2px,-1.6px)rotate(11deg)scale(1.1)}50%{transform:translate(.8px,-4px)rotate(0)scale(1)}75%{transform:translate(-2.8px,-1.4px)rotate(-11deg)scale(.93)}to{transform:translate(0)rotate(0)scale(1)}}canvas.svelte-1njlp1j{z-index:0;pointer-events:none;position:fixed;inset:0;-webkit-mask-image:radial-gradient(46% 82% at 96% 46%,#000 0% 24%,#0000 84%);mask-image:radial-gradient(46% 82% at 96% 46%,#000 0% 24%,#0000 84%)}@media (width<=60rem){canvas.svelte-1njlp1j{opacity:.7;-webkit-mask-image:radial-gradient(96% 26% at 74% 106%,#000 0%,#0000 74%);mask-image:radial-gradient(96% 26% at 74% 106%,#000 0%,#0000 74%)}}.skills.svelte-181gmww{font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ap-ink-dim);flex-wrap:wrap;align-items:center;row-gap:.4rem;font-size:.8125rem;line-height:1.5;display:flex}li.svelte-181gmww{white-space:nowrap;transition:color var(--dur-med) var(--ease-out);align-items:center;display:flex}li.svelte-181gmww:hover{color:var(--ap-ink)}li.svelte-181gmww:not(:last-child):after{content:"";background:color-mix(in srgb, var(--ap-violet) 55%, transparent);width:4px;height:4px;transition:transform var(--dur-med) var(--ease-spring), background-color var(--dur-med) var(--ease-out);flex:none;margin-inline:.7em}li.svelte-181gmww:hover:after{background:var(--ap-violet);transform:scale(1.75)}.page.svelte-1n46o8q{z-index:1;min-height:100svh;padding:var(--sp-4) var(--sp-3);align-items:center;display:flex;position:relative}.column.svelte-1n46o8q{width:min(37rem,100%);margin-inline-start:min(7vw, var(--sp-8))}.wordmark.svelte-1n46o8q{--ap-logo-size:.92em;font-size:var(--fs-mark);font-weight:300;line-height:var(--lh-mark);letter-spacing:var(--tr-mark);text-transform:uppercase;text-wrap:balance;align-items:center;gap:.42em;display:flex}.masthead.svelte-1n46o8q:hover .wordmark:where(.svelte-1n46o8q){--ap-logo-shift-x:0px;--ap-logo-shift-y:0px;--ap-logo-shift-rotate:0deg;--ap-logo-block-scale:1.1}.role.svelte-1n46o8q{font-family:var(--ff-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tr-label);color:var(--ap-ink-dim);margin-block-start:var(--sp-1)}.blurb.svelte-1n46o8q{max-width:38ch;font-size:var(--fs-blurb);line-height:var(--lh-blurb);text-wrap:pretty;margin-block-start:var(--sp-3)}.skills.svelte-1n46o8q,.contact.svelte-1n46o8q{margin-block-start:var(--sp-3)}.cta.svelte-1n46o8q{padding:.875rem var(--sp-2);border:1px solid var(--ap-line-strong);color:var(--ap-ink);font-family:var(--ff-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:var(--tr-label);cursor:pointer;transition:border-color var(--dur-med) var(--ease-out), color var(--dur-med) var(--ease-out);background:0 0;margin-block-start:var(--sp-2);position:relative;overflow:hidden}.cta.svelte-1n46o8q:before{content:"";background:var(--ap-violet);transform-origin:0;transition:transform var(--dur-med) var(--ease-out);position:absolute;inset:0;transform:scaleX(0)}.cta.svelte-1n46o8q span:where(.svelte-1n46o8q){position:relative}.cta.svelte-1n46o8q:hover,.cta.svelte-1n46o8q:focus-visible{border-color:var(--ap-violet);color:var(--ap-void)}.cta.svelte-1n46o8q:hover:before,.cta.svelte-1n46o8q:focus-visible:before{transform:scaleX(1)}.cta.svelte-1n46o8q:active{transform:translateY(1px)}.masthead.svelte-1n46o8q,.blurb.svelte-1n46o8q,.skills.svelte-1n46o8q,.contact.svelte-1n46o8q,.cta.svelte-1n46o8q{animation:svelte-1n46o8q-rise .64s var(--ease-out) backwards}.masthead.svelte-1n46o8q{animation-delay:40ms}.blurb.svelte-1n46o8q{animation-delay:.15s}.skills.svelte-1n46o8q{animation-delay:.23s}.contact.svelte-1n46o8q{animation-delay:.31s}.cta.svelte-1n46o8q{animation-delay:.39s}@keyframes svelte-1n46o8q-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (width<=60rem){.page.svelte-1n46o8q{padding:var(--sp-4) var(--sp-2);align-items:flex-start}.column.svelte-1n46o8q{margin-inline-start:0}}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/space-grotesk-latin-wght-normal.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}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-mono-latin-400-normal.woff2)format("woff2")}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body,h1,h2,p,dl,dd,ul{margin:0}ul{padding:0;list-style:none}body{background:var(--ap-void);min-height:100svh;color:var(--ap-ink);font-family:var(--ff-display);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-weight:300;line-height:1.5}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--ap-violet);outline-offset:3px;border-radius:1px}:focus:not(:focus-visible){outline:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}:root{--ap-mod:32px;--ap-mod-half:16px;--sp-1:var(--ap-mod-half);--sp-2:var(--ap-mod);--sp-3:48px;--sp-4:64px;--sp-6:96px;--sp-8:128px;--ap-void:#101118;--ap-ink:#eff0f6;--ap-ink-dim:#9096a6;--ap-violet:#a586ff;--ap-violet-soft:#c4aeff;--ap-grid-far:#1b1d29;--ap-grid-near:#8a63f0;--ap-line:#262935;--ap-line-strong:#363a4a;--ap-surface:#15171f;--ap-surface-raised:#1a1c26;--ff-display:"Space Grotesk Variable", ui-sans-serif, system-ui, sans-serif;--ff-mono:"Space Mono", ui-monospace, "SF Mono", monospace;--fs-mark:clamp(2rem, 5.4vw, 3.5rem);--fs-blurb:clamp(1.0625rem, 1.55vw, 1.3125rem);--fs-contact:clamp(.9375rem, 1.1vw, 1.0625rem);--fs-body:1rem;--fs-label:.75rem;--lh-mark:.95;--lh-blurb:1.55;--lh-mono:1.45;--tr-mark:.015em;--tr-label:.16em;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.5, .42, 1);--ease-spring-strong:cubic-bezier(.3, 1.72, .4, 1);--dur-fast:.14s;--dur-med:.32s;--dur-slow:.62s}
