@font-face{font-family:Inter Tight;src:url(/fonts/inter-tight-regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter Tight;src:url(/fonts/inter-tight-medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}:root{--paper:#f9f9f6;--ink:#1a1a1a;--muted:#73736e;--line:#deded8;--accent:#3049ec;--fluid-a:#3049ec;--fluid-b:#11cbd7;--fluid-c:#e72fc2;--fluid-d:#f3cf37;--fluid-rainbow:1;--panel:#1a1a1a;--panel-ink:#f9f9f6;--panel-copy:#c7c7c0;--panel-quiet:#b2b2a9;--panel-heading:#9b9b94;--panel-line:#45453f;--panel-hover:#9ba8ff;--particle:#bcbcb3;--theme-duration:.4s;--header-height:110px;--gutter:40px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter Tight,Helvetica,Arial,sans-serif}body,.background,.header,.hero-bottom,.footer,.experience,.education{transition:background-color var(--theme-duration) ease,color var(--theme-duration) ease,border-color var(--theme-duration) ease}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:7px}::selection{background:var(--accent);color:#fff}.grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;display:grid}.page-shell{--content-column:5;isolation:isolate;max-width:1800px;padding:0 var(--gutter);margin:auto;position:relative}.skip-link{background:var(--ink);color:#fff;z-index:20;padding:14px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:20px}.header{min-height:var(--header-height);border-bottom:1px solid color-mix(in srgb,var(--ink) 16%,transparent);align-items:center;position:relative}.wordmark{letter-spacing:-.5px;white-space:nowrap;grid-column:1/5;font-size:23px;font-weight:500}.period,.accent{color:var(--accent)}.header>.wordmark{grid-column:1/var(--content-column)}.header-description{grid-column:var(--content-column)/10;letter-spacing:.02em;font-size:13px;line-height:1.4}.header nav{grid-column:10/-1;justify-self:end;font-size:14px}.nav-link{align-items:center;gap:10px;display:flex}.nav-link-arrow{font-size:23px;transition:transform .25s}.nav-link:hover .nav-link-arrow{transform:translate(3px,3px)}.hero{padding:34px 0 0;position:relative}.hero-field{top:calc(-1 * var(--header-height));left:calc(-1 * var(--gutter));width:calc(100% + 2 * var(--gutter));height:calc(100% + var(--header-height));z-index:1;pointer-events:none;opacity:0;position:absolute}.hero-field[data-ready=true]{opacity:1}.paint-hint{z-index:10;color:#fff;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;visibility:hidden;background:#111;border-radius:12px;padding:12px 18px;font-size:13px;font-weight:500;line-height:18px;transition:opacity .15s,visibility .15s;position:fixed;top:0;left:0}.paint-hint[data-visible=true]{opacity:1;visibility:visible}.paint-hint-window{height:18px;overflow:hidden}.paint-hint-words{animation:7.5s cubic-bezier(.65,0,.35,1) infinite paused paint-hint-cycle}.paint-hint[data-visible=true] .paint-hint-words{animation-play-state:running}.paint-hint-words span{text-align:center;display:block}@keyframes paint-hint-cycle{0%,27%{transform:translateY(0)}33%,60%{transform:translateY(-18px)}66%,93%{transform:translateY(-36px)}to{transform:translateY(-54px)}}@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.paint-hint{display:none}}.hero-meta{z-index:2;align-items:center;font-size:12px;position:relative}.eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:500}.location{text-align:right;grid-column:9/-1;justify-self:end;line-height:1.5}.hero-composition{align-items:end;padding:65px 0 66px}h1,.hero-title,h2{text-wrap:balance}.hero-intro,.background-copy p,.endnote p{text-wrap:pretty}h1,.hero-title{letter-spacing:-.04em;grid-area:1/1/auto/11;margin:0;font-size:clamp(70px,8.8vw,153px);font-weight:500;line-height:.99}.line{margin-bottom:-.08em;padding-bottom:.08em;display:block;overflow:hidden}.line>span:first-child{animation:.95s cubic-bezier(.2,.65,.25,1) both rise-in;display:inline-block}.line:nth-child(2)>span{animation-delay:90ms}.line:nth-child(3)>span:first-child{animation-delay:.18s}.hero-bottom{z-index:2;border-top:1px solid color-mix(in srgb,var(--ink) 16%,transparent);align-items:start;padding:32px 0 51px;position:relative}.down-link{grid-column:1/5;align-items:center;gap:14px;font-size:12px;display:flex}.circle-arrow{border:1px solid #c3c3bc;border-radius:100%;place-items:center;width:36px;height:36px;font-size:19px;transition:background .25s,color .25s,transform .25s;display:grid}.down-link:hover .circle-arrow{background:var(--ink);color:var(--paper);transform:translateY(3px)}.hero-intro{grid-column:var(--content-column)/10;letter-spacing:-.01em;max-width:350px;margin:0;font-size:18px;line-height:1.45;position:relative}.greeting-wave{width:3em;height:3em;position:absolute;top:-.3em;left:-3.45em}.wave-hand{image-rendering:auto;background:var(--accent);transform-origin:70% 85%;width:100%;height:100%;animation:5.6s ease-in-out .5s infinite greeting-wave;display:block;-webkit-mask:url(/artwork/wave-halftone.svg) 50%/contain no-repeat;mask:url(/artwork/wave-halftone.svg) 50%/contain no-repeat}.inline-company{border-bottom:1px solid #b5b5ac}.hero-note{text-align:right;color:var(--muted);grid-column:11/-1;justify-self:end;padding-top:4px;font-size:11px;line-height:1.5}.background{background:var(--panel);color:var(--panel-ink);margin:0 calc(-1 * var(--gutter));padding:39px var(--gutter) 56px;scroll-margin-top:0}.section-top{align-items:center}.section-top>.eyebrow{grid-column:1/7}.section-aside{color:var(--panel-quiet);grid-column:9/-1;justify-self:end;font-size:11px}.background-intro{align-items:start;padding:69px 0 76px}h2{letter-spacing:-.025em;margin:0;font-weight:400;line-height:1.1}.background-intro h2{grid-column:1/8;font-size:clamp(32px,3.6vw,61px)}.background-intro h2 span{color:var(--panel-heading)}.background-copy{grid-column:9/-1;max-width:360px}.background-copy p{color:var(--panel-copy);margin:0 0 20px;font-size:15px;line-height:1.6}.background-copy p:last-child{margin-bottom:0}.experience-label{color:var(--panel-quiet);grid-column:1/4;padding-top:23px}.experience-list{--experience-gap:16px;--experience-control:14px;grid-column:var(--content-column)/-1}.experience{border-top:1px solid var(--panel-line)}.experience summary,.experience-static{grid-template-columns:2fr 2fr 1.5fr var(--experience-control);align-items:center;gap:var(--experience-gap);cursor:pointer;min-height:81px;list-style:none;display:grid}.experience-static{cursor:default}.experience summary::-webkit-details-marker{display:none}.experience-company{letter-spacing:-.015em;align-items:center;gap:9px;font-size:23px;display:flex}.current-dot{background:var(--accent);border-radius:50%;flex:none;width:6px;height:6px}.experience-role,.experience-dates{color:var(--panel-quiet);font-size:11px;line-height:1.5}.experience-dates{white-space:nowrap;font-variant-numeric:tabular-nums;justify-self:end}.expand-icon{width:12px;height:12px;position:relative}.expand-icon:before,.expand-icon:after{content:"";background:var(--panel-ink);width:12px;height:1px;transition:transform .25s;position:absolute;top:5px;left:0}.expand-icon:after{transform:rotate(90deg)}.experience[open] .expand-icon:after{transform:rotate(0)}.experience summary:hover .experience-company{color:var(--panel-hover)}.experience-detail{max-width:600px;padding:0 40px 25px 0;animation:.3s both detail-in}.experience-detail p{color:var(--panel-copy);margin:0;font-size:15px;line-height:1.6}.education{border-top:1px solid var(--panel-line);padding:23px calc(var(--experience-control) + var(--experience-gap)) 0 0;color:var(--panel-quiet);justify-content:space-between;gap:20px;font-size:11px;display:flex}.endnote{isolation:isolate;align-items:start;min-height:clamp(620px,80svh,960px);padding:clamp(110px,14svh,180px) 0 clamp(160px,20svh,240px);position:relative}.endnote>.eyebrow{grid-column:1/4;padding-top:10px}.endnote-content{grid-column:5/11}.endnote h2{letter-spacing:-.035em;font-size:clamp(44px,5vw,84px);line-height:1.04}.endnote p{color:var(--muted);margin:26px 0 0;font-size:16px;line-height:1.5}.rocket-launch{vertical-align:-.08em;width:.9em;height:.9em;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin-left:.22em;padding:0;display:inline-block;position:relative}.rocket-ship{z-index:4;pointer-events:none;display:block;position:absolute;inset:0}.rocket-idle{animation:4.8s ease-in-out infinite rocket-idle;position:absolute;inset:0}.rocket-launch[data-flying=true] .rocket-idle{animation-play-state:paused}.rocket-body,.rocket-flame{background:var(--accent);image-rendering:auto;display:block;position:absolute;inset:0}.rocket-body{-webkit-mask:url(/artwork/rocket-body-halftone.svg) 50%/contain no-repeat;mask:url(/artwork/rocket-body-halftone.svg) 50%/contain no-repeat}.rocket-flame{transform-origin:40% 60%;opacity:.75;animation:.6s ease-in-out infinite alternate rocket-fire;-webkit-mask:url(/artwork/rocket-flame-halftone.svg) 50%/contain no-repeat;mask:url(/artwork/rocket-flame-halftone.svg) 50%/contain no-repeat}.rocket-launch[data-flying=true] .rocket-flame{opacity:1;animation-duration:.15s}.particle-field{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.particle-field canvas{width:100%;height:100%;display:block}.footer{border-top:1px solid var(--line);align-items:center;padding:27px 0 34px}.footer .wordmark{letter-spacing:-.3px;font-size:18px}.footer-meta{grid-column:9/-1;justify-content:flex-end;align-items:center;gap:24px;display:flex}.copyright{color:var(--muted);white-space:nowrap;font-size:11px}.back-top{align-items:center;gap:12px;font-size:11px;display:flex}.back-top span{font-size:20px;transition:transform .25s}.back-top:hover span{transform:translateY(-4px)}@keyframes rise-in{0%{transform:translateY(110%)}to{transform:translateY(0)}}@keyframes detail-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes greeting-wave{0%,to{transform:rotate(0)}10%{transform:rotate(18deg)}18%{transform:rotate(-10deg)}26%{transform:rotate(16deg)}34%{transform:rotate(-6deg)}42%{transform:rotate(10deg)}50%,to{transform:rotate(0)}}@keyframes rocket-fire{0%{opacity:.6;transform:scale(.85)}to{opacity:1;transform:translate(-1px,1px)scale(1.12)}}@keyframes rocket-idle{0%,to{transform:translate(0)rotate(-.5deg)}35%{transform:translate(.8px,-2px)rotate(1deg)}70%{transform:translate(-.6px,-1px)rotate(-1deg)}}@media (min-width:1500px){.hero-composition{padding-top:85px;padding-bottom:85px}.hero-bottom{padding-bottom:65px}}@media (max-width:1000px){:root{--gutter:28px}.grid{column-gap:16px}.page-shell{--content-column:4}.down-link{grid-column:1/4;align-self:end}.hero-composition{padding-top:65px;padding-bottom:60px}h1,.hero-title{grid-column:1/12;font-size:9.1vw}.hero-note{display:none}.hero-intro{grid-column:var(--content-column)/-1;max-width:370px}.background-intro h2{grid-column:1/8}.background-copy{grid-column:9/-1}.background-copy p{font-size:13px}.experience-list{--experience-gap:10px;--experience-control:12px}.experience-company{font-size:20px}.experience summary,.experience-static{gap:var(--experience-gap);grid-template-columns:1.6fr 1.6fr 1.3fr var(--experience-control)}.experience-role,.experience-dates{font-size:10px}.endnote-content{grid-column:4/11}.endnote>.eyebrow{grid-column:1/4}.education{font-size:10px}}@media (max-width:650px){.page-shell{--content-column:1}:root{--header-height:86px;--gutter:20px}.grid{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:12px}.wordmark{grid-column:1/4;font-size:21px}.header>.wordmark{grid-column:1/4}.header-description{display:none}.header nav{grid-column:4;align-self:center;font-size:12px}.nav-link{gap:8px}.nav-link-arrow{font-size:19px}.hero{padding-top:25px}.location{grid-column:3/-1;gap:8px;font-size:10px}.hero-composition{row-gap:40px;padding-top:53px;padding-bottom:34px}h1,.hero-title{letter-spacing:-.04em;grid-area:1/1/auto/-1;font-size:clamp(32px,10.6vw,69px);line-height:1.07}.hero-bottom{row-gap:30px;padding:25px 0 37px}.greeting-wave{margin:0 0 16px;display:block;position:static}.hero-intro{grid-column:var(--content-column)/-1;grid-row:1;max-width:330px;font-size:19px}.down-link{grid-area:2/1/auto/-1;align-self:start;font-size:11px}.circle-arrow{width:31px;height:31px}.background{padding-top:27px;padding-bottom:33px}.section-top>.eyebrow{grid-column:1/3;font-size:9px}.section-aside{grid-column:3/-1;font-size:9px}.background-intro{row-gap:29px;padding:47px 0 43px}.background-intro h2{grid-column:1/-1;font-size:clamp(29px,7.4vw,44px)}.background-copy{grid-column:1/-1;max-width:400px}.background-copy p{font-size:15px;line-height:1.65}.experience-label{grid-column:1/-1;padding:0 0 24px;font-size:9px}.experience-list{--experience-gap:13px}.experience summary,.experience-static{grid-template-columns:1fr auto var(--experience-control);gap:6px var(--experience-gap);min-height:91px;padding:20px 0}.experience-company{grid-area:1/1;font-size:22px}.experience-role{grid-area:2/1;font-size:11px}.experience-dates{grid-area:1/2/3;font-size:10px}.expand-icon{grid-area:1/3/3}.experience-detail{padding-right:20px}.experience-detail p{font-size:14px}.education>span:last-child{text-align:right;align-self:flex-end}.education{flex-direction:column;gap:7px;font-size:11px;line-height:1.4}.endnote{align-content:start;row-gap:40px;min-height:clamp(520px,78svh,720px);padding:64px 0 110px}.endnote>.eyebrow{grid-column:1/-1;padding:0;font-size:9px}.endnote-content{grid-column:1/-1}.endnote h2{font-size:clamp(40px,10.5vw,64px)}.endnote p{max-width:320px;margin-top:23px;font-size:14px}.desktop-break{display:none}.footer{padding:25px 0}.footer .wordmark{grid-column:1/3;font-size:17px}.footer-meta{flex-wrap:wrap;grid-column:3/-1;gap:12px}.copyright{font-size:10px}.back-top{white-space:nowrap;gap:8px;font-size:10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.hero-lab{z-index:50;border:1px solid var(--line);background:var(--paper);width:min(340px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--ink);text-shadow:none;border-radius:12px;flex-direction:column;font-size:12px;line-height:1.45;display:flex;position:fixed;bottom:16px;right:16px;box-shadow:0 8px 36px #0002}.hero-lab-heading{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.hero-lab-heading strong{font-size:16px;font-weight:500;display:block}.hero-lab-heading span,.hero-lab-hint{color:var(--muted);font-size:11px}.hero-lab-body{overscroll-behavior:contain;padding:0 16px 14px;overflow-y:auto}.hero-lab-body>p:first-child{color:var(--muted);margin:0 0 16px}.hero-lab button,.hero-lab select{border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;border-radius:5px;padding:6px 9px}.hero-lab button{cursor:pointer}.hero-lab button:hover{border-color:var(--accent)}.hero-lab-actions{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.hero-lab-slider{margin:12px 0;display:block}.hero-lab-slider>span{justify-content:space-between;gap:10px;display:flex}.hero-lab output{color:var(--muted);font-variant-numeric:tabular-nums}.hero-lab input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer;margin:8px 0;display:block}.hero-lab-palette{justify-content:space-between;align-items:center;margin-top:18px;display:flex}.hero-lab-colours{grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0;font-size:10px;display:grid}.hero-lab input[type=color]{cursor:pointer;background:0 0;border:0;width:100%;height:30px;padding:0;display:block}.hero-lab summary{cursor:pointer}.hero-lab textarea{background:var(--paper);width:100%;min-height:130px;color:var(--ink);border:1px solid var(--line);resize:vertical;margin:10px 0;padding:8px;font:11px/1.5 monospace;display:block}.hero-lab-status{color:var(--muted);margin:8px 0 0;font-size:11px}.hero-lab :focus-visible{outline:2px solid var(--accent);outline-offset:3px}.hero-title-base{z-index:0;position:relative}.hero-title-blend{z-index:2;color:color-mix(in srgb,var(--accent) calc(var(--hero-text-tint,0) * 100%),transparent);mix-blend-mode:hard-light;position:relative}.hero-title-blend .accent{color:inherit}.blend-label{vertical-align:top;display:inline-block;position:relative}.blend-label-overlay{z-index:2;pointer-events:none;color:color-mix(in srgb,var(--accent) calc(var(--hero-text-tint,0) * 100%),transparent);mix-blend-mode:hard-light;position:absolute;inset:0}.blend-label-overlay .period{color:inherit}@supports not (mix-blend-mode:hard-light){.hero-title-blend{color:var(--ink)}.hero-title-blend .accent{color:var(--accent)}.blend-label-overlay{display:none}}.hero-lab-toggle{border-block:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.hero-lab-toggle strong{color:var(--muted);margin-left:6px;font-weight:400}.hero-lab-toggle input{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.page-shell[data-hero-effect=off] .hero-field{visibility:hidden}.page-shell[data-hero-effect=off] .hero:before,.page-shell[data-hero-effect=off] .blend-label-overlay{display:none}.page-shell[data-hero-effect=off] .hero-title-base{visibility:hidden}.page-shell[data-hero-effect=off] .hero-title-blend{color:var(--ink);mix-blend-mode:normal}.page-shell[data-hero-effect=off] .hero-title-blend .accent{color:var(--accent)}
