@font-face{font-family:inter;src:url(../media/Inter_VariableFont_opsz,wght-s.p.1ci5nhn25kwyu.ttf)format("truetype");font-display:swap;font-style:normal}@font-face{font-family:inter;src:url(../media/Inter_Italic_VariableFont_opsz,wght-s.p.02txx7iev_dgs.ttf)format("truetype");font-display:swap;font-style:italic}@font-face{font-family:inter Fallback;src:local(Arial);ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.0%;size-adjust:107.89%}.inter_ae5b5a05-module__AtX2uq__className{font-family:inter,inter Fallback}.inter_ae5b5a05-module__AtX2uq__variable{--font-sans:"inter", "inter Fallback"}
@font-face{font-family:instrumentSerif;src:url(../media/InstrumentSerif_Regular-s.p.0accj_e91w0ot.ttf)format("truetype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:instrumentSerif;src:url(../media/InstrumentSerif_Italic-s.p.3kkrvz04v7cah.ttf)format("truetype");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:instrumentSerif Fallback;src:local(Arial);ascent-override:128.92%;descent-override:40.37%;line-gap-override:0.0%;size-adjust:76.79%}.instrumentserif_e169108d-module__ztRYpa__className{font-family:instrumentSerif,instrumentSerif Fallback}.instrumentserif_e169108d-module__ztRYpa__variable{--font-serif:"instrumentSerif", "instrumentSerif Fallback"}
html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}
:root{--white:#fff;--ink-900:#0e0e0e;--ink-800:#1e1e1e;--gray-50:#f4f4f4;--gray-400:#8e8e8e;--gray-500:#6e6e6e;--gray-600:#666;--sand-50:#f9f5f3;--sand-200:#ded9d6;--slate-200:#bfc0c4;--slate-400:#77777a;--slate-500:#626264;--slate-700:#3b3b3d;--pink-500:#d39aae;--black-a035:#00000009;--black-a120:#0000001f;--black-a240:#0000003d;--black-a880:#000000e0;--white-a045:#ffffff0b;--white-a140:#ffffff24;--white-a180:#ffffff2e;--white-a400:#fff6;--white-a750:#ffffffbf;--background:var(--sand-50);--text-primary:var(--ink-900);--text-secondary:var(--gray-500);--border:var(--black-a120);--surface-hover:var(--black-a035);--surface-placeholder:var(--sand-200);--accent:var(--pink-500)}[data-theme=dark]{--background:var(--ink-900);--text-primary:var(--gray-50);--text-secondary:var(--gray-400);--border:var(--white-a140);--surface-hover:var(--white-a045);--surface-placeholder:var(--ink-800)}:root{--about-background:#090e17;--about-chrome-fg:#dca8c5;--fg-on-dark:var(--white);--fg-on-light:var(--ink-900);--selection-bg:var(--accent);--selection-color:var(--fg-on-dark);--chrome-fg:var(--fg-on-dark);--chrome-fg-active:var(--gray-600);--scrim:var(--black-a880);--scrim-text:var(--white-a750);--raised-bg:var(--slate-700);--raised-border:var(--slate-500);--raised-divider:var(--slate-400);--raised-text:var(--slate-200);--raised-shadow:var(--black-a240)}
:root{--font-inter:var(--font-sans), "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-instrument:var(--font-serif), "Instrument Serif", Georgia, "Times New Roman", serif;--leading-display:.95;--leading-h1:1.05;--leading-h2:1.2;--leading-h3:1.25;--leading-body:1.35;--leading-body-sm:1.5;--leading-caption:1.4;--text-h1-sans:clamp(2.75rem, 5.5vw, 4.5rem);--tracking-h1-sans:-.065em;--weight-h1-sans:400;--text-h2-sans:clamp(1.75rem, 3.2vw, 2.5rem);--tracking-h2-sans:-.055em;--weight-h2-sans:400;--text-h3-sans:clamp(1.15rem, 1.8vw, 1.45rem);--tracking-h3-sans:-.025em;--weight-h3-sans:400;--text-body-sans:1rem;--tracking-body-sans:normal;--weight-body-sans:400;--text-body-sm-sans:.875rem;--tracking-body-sm-sans:-.01em;--weight-body-sm-sans:400;--text-caption-sans:.7rem;--tracking-caption-sans:.03em;--weight-caption-sans:400;--text-display-sans:clamp(3.5rem, 12vw, 12rem);--tracking-display-sans:-.07em;--weight-display-sans:400;--text-display-sm-sans:clamp(1.9rem, 4.2vw, 3.4rem);--tracking-display-sm-sans:-.055em;--weight-display-sm-sans:400;--text-display-xl-sans:clamp(4rem, 15vw, 15rem);--tracking-display-xl-sans:-.07em;--weight-display-xl-sans:400;--text-display-serif:clamp(3.9rem, 13.4vw, 13.4rem);--tracking-display-serif:-.075em;--weight-display-serif:400;--text-display-xl-serif:clamp(4.5rem, 16.8vw, 16.8rem);--tracking-display-xl-serif:-.075em;--weight-display-xl-serif:400;--text-h1-serif:clamp(3.25rem, 6.5vw, 5.35rem);--tracking-h1-serif:-.075em;--weight-h1-serif:400;--text-h2-serif:clamp(2rem, 3.6vw, 2.9rem);--tracking-h2-serif:-.055em;--weight-h2-serif:400;--text-h3-serif:clamp(1.25rem, 2vw, 1.6rem);--tracking-h3-serif:-.035em;--weight-h3-serif:400;--text-body-serif:1.08rem;--tracking-body-serif:-.01em;--weight-body-serif:400}.display-sans{font-family:var(--font-inter);font-size:var(--text-display-sans);line-height:var(--leading-display);letter-spacing:var(--tracking-display-sans);font-weight:var(--weight-display-sans)}.display-serif,.display-serif-italic{font-family:var(--font-instrument);font-size:var(--text-display-serif);line-height:var(--leading-display);letter-spacing:var(--tracking-display-serif);font-weight:var(--weight-display-serif)}.display-serif-italic{font-style:italic}.display-sm-sans{font-family:var(--font-inter);font-size:var(--text-display-sm-sans);line-height:var(--leading-h2);letter-spacing:var(--tracking-display-sm-sans);font-weight:var(--weight-display-sm-sans)}.display-xl-sans{font-family:var(--font-inter);font-size:var(--text-display-xl-sans);line-height:var(--leading-display);letter-spacing:var(--tracking-display-xl-sans);font-weight:var(--weight-display-xl-sans)}.display-xl-serif,.display-xl-serif-italic{font-family:var(--font-instrument);font-size:var(--text-display-xl-serif);line-height:var(--leading-display);letter-spacing:var(--tracking-display-xl-serif);font-weight:var(--weight-display-xl-serif)}.display-xl-serif-italic{font-style:italic}.h1-sans,h1.sans{font-family:var(--font-inter);font-size:var(--text-h1-sans);line-height:var(--leading-h1);letter-spacing:var(--tracking-h1-sans);font-weight:var(--weight-h1-sans)}.h2-sans,h2.sans{font-family:var(--font-inter);font-size:var(--text-h2-sans);line-height:var(--leading-h2);letter-spacing:var(--tracking-h2-sans);font-weight:var(--weight-h2-sans)}.h3-sans,h3.sans{font-family:var(--font-inter);font-size:var(--text-h3-sans);line-height:var(--leading-h3);letter-spacing:var(--tracking-h3-sans);font-weight:var(--weight-h3-sans)}.body-sans,p.sans{font-family:var(--font-inter);font-size:var(--text-body-sans);line-height:var(--leading-body);letter-spacing:var(--tracking-body-sans);font-weight:var(--weight-body-sans)}.body-sm-sans{font-family:var(--font-inter);font-size:var(--text-body-sm-sans);line-height:var(--leading-body-sm);letter-spacing:var(--tracking-body-sm-sans);font-weight:var(--weight-body-sm-sans)}.caption-sans{font-family:var(--font-inter);font-size:var(--text-caption-sans);line-height:var(--leading-caption);letter-spacing:var(--tracking-caption-sans);font-weight:var(--weight-caption-sans);text-transform:uppercase}.h1-serif,h1.serif,.h1-serif-italic{font-family:var(--font-instrument);font-size:var(--text-h1-serif);line-height:var(--leading-h1);letter-spacing:var(--tracking-h1-serif);font-weight:var(--weight-h1-serif)}.h1-serif-italic{font-style:italic}.h2-serif,h2.serif,.h2-serif-italic{font-family:var(--font-instrument);font-size:var(--text-h2-serif);line-height:var(--leading-h2);letter-spacing:var(--tracking-h2-serif);font-weight:var(--weight-h2-serif)}.h2-serif-italic{font-style:italic}.h3-serif,h3.serif,.h3-serif-italic{font-family:var(--font-instrument);font-size:var(--text-h3-serif);line-height:var(--leading-h3);letter-spacing:var(--tracking-h3-serif);font-weight:var(--weight-h3-serif)}.h3-serif-italic{font-style:italic}.body-serif,p.serif,.body-serif-italic{font-family:var(--font-instrument);font-size:var(--text-body-serif);line-height:var(--leading-body);letter-spacing:var(--tracking-body-serif);font-weight:var(--weight-body-serif)}.body-serif-italic{font-style:italic}.font-sans{font-family:var(--font-inter)}.font-serif{font-family:var(--font-instrument)}.italic{font-style:italic}.text-primary{color:var(--text-primary)}.text-muted{color:var(--text-secondary)}
:root{--space-1:.25rem;--space-2:.5rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--layout-gap:var(--space-4);--grid-gap:var(--space-12);--page-pad-x:var(--space-8);--page-pad-y:var(--space-4);--page-pad-block:var(--space-16);--block-gap:var(--space-16);--section-sm:var(--space-16);--section-md:var(--space-24);--section-lg:var(--space-24);--gap-tight:var(--space-2);--doodle-stroke:1.5px;--hero-stage-height-compact:clamp(420px, 52vh, 580px);--hero-stage-height-full:clamp(480px, 70vh, 760px);--hero-media-width:clamp(500px, 62vw, 920px);--hero-media-height:clamp(580px, 80vh, 880px);--hero-center-offset:0px}@media (max-width:860px){:root{--layout-gap:var(--space-2);--grid-gap:var(--space-6);--page-pad-x:var(--space-6);--page-pad-y:var(--space-2);--block-gap:var(--space-12);--section-sm:var(--space-12);--section-md:var(--space-16);--gap-tight:var(--space-2)}}@media (max-width:640px){:root{--layout-gap:var(--space-2);--grid-gap:var(--space-4);--page-pad-block:var(--space-16);--block-gap:var(--space-8);--section-sm:var(--space-8);--section-md:var(--space-12);--page-pad-x:var(--space-4);--hero-center-offset:0px}}
:root{--ease-standard:cubic-bezier(.2, .9, .25, 1);--ease-draw:cubic-bezier(.65, 0, .35, 1);--ease-cursor-morph:cubic-bezier(.34, 1.2, .64, 1);--cursor-grow-ease:cubic-bezier(.32, .72, 0, 1);--ease-blink:steps(1, end);--ease-linear:linear;--motion-instant:0s;--motion-theme:.35s;--motion-link-fade:.22s;--motion-underline:.55s;--motion-underline-exit:.396s;--motion-connect-draw:.7s;--motion-connect-delay:.3s;--motion-resume-arrow:.9s;--motion-tab-hover:.194s;--motion-tab-underline-enter:.282s;--motion-about-circle:.616s;--motion-about-bracket-move:.37s;--motion-about-bracket-fade:.176s;--motion-about-bracket-delay:70ms;--cursor-grow-duration:.28s;--motion-cursor-morph:.42s;--motion-cursor-move:.282s;--motion-cursor-fade:.22s;--motion-cursor-label-delay:0s;--motion-cursor-press:.2s;--motion-cursor-icon:.32s;--theme-transition:background-color var(--motion-theme) var(--ease-standard), color var(--motion-theme) var(--ease-standard), border-color var(--motion-theme) var(--ease-standard), fill var(--motion-theme) var(--ease-standard), stroke var(--motion-theme) var(--ease-standard)}
*,:before,:after{box-sizing:border-box;transition:var(--theme-transition);margin:0;padding:0;transition-property:background-color,fill,stroke}.text-primary,.text-muted,.theme-switch,.theme-switch *{transition-property:color,background-color,fill,stroke}::selection{background-color:var(--selection-bg);color:var(--selection-color)}::selection{background-color:var(--selection-bg);color:var(--selection-color)}@font-face{font-family:Caveat;src:url(/fonts/caveat/Caveat.ttf)format("truetype");font-weight:400 700;font-style:normal;font-display:swap}html,body{overflow-anchor:none;overscroll-behavior:none;background-color:var(--background);width:100%;height:100%;color:var(--text-primary);font-family:var(--font-inter);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:var(--theme-transition);overflow-x:clip}@media (max-width:640px){html,body,body *{overscroll-behavior:none!important}}html.lightbox-open,body.lightbox-open,html.lightbox-open .portfolio-scroll-container,body.lightbox-open .portfolio-scroll-container{overscroll-behavior:none!important;touch-action:none!important}html.lightbox-open .site-header,body.lightbox-open .site-header{visibility:hidden!important;pointer-events:none!important;transform:translateY(-100%)!important}html.lightbox-open .site-footer,body.lightbox-open .site-footer{visibility:hidden!important;pointer-events:none!important;transform:translateY(100%)!important}@media (prefers-reduced-motion:reduce){html.lightbox-open :is(.site-header,.site-footer),body.lightbox-open :is(.site-header,.site-footer){opacity:0!important;transform:none!important}}@supports not ((hanging-punctuation:first) and (font:-apple-system-body)){html,body,.portfolio-scroll-container{scrollbar-width:none}html::-webkit-scrollbar{display:none}body::-webkit-scrollbar{display:none}.portfolio-scroll-container::-webkit-scrollbar{display:none}}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline-offset:4px;outline:2px solid}.labeled-list{gap:var(--space-6);flex-direction:column;min-width:0;display:flex}.labeled-list-items{flex-direction:column;display:flex}.labeled-list-item{color:var(--text-primary)}.labeled-list-paragraph{color:var(--text-primary);line-height:var(--leading-caption);margin:0}
.layout-guides{z-index:9998;pointer-events:none;position:fixed;inset:0}.layout-guides>span{background:#d39aae09;border-inline:1px solid #d39aae33;grid-column:auto!important}.spacing-guides{pointer-events:none;position:fixed;inset:0}.spacing-guides>span{background:color-mix(in srgb, var(--spacing-color) 24%, transparent);outline:1px solid var(--spacing-color);position:absolute}.spacing-guides small{background:var(--spacing-color);color:#111;width:max-content;max-width:100%;font:9px/1.2 monospace;display:block;overflow:hidden}.layout-guides-line{background:#d39aae99;position:absolute}.layout-guides-line-x{height:1px;top:50%;left:0;right:0}.layout-guides-line-y{width:1px;top:0;bottom:0;left:50%}.grid-12,.grid-4,.grid-5{column-gap:var(--layout-gap);padding-inline:var(--page-pad-x);grid-template-columns:repeat(12,minmax(0,1fr));width:100%;display:grid}.col-1{grid-column:1/4}.col-2{grid-column:4/7}.col-3{grid-column:7/10}.col-4{grid-column:10/13}.col-span-2{grid-column:span 6}.col-span-4{grid-column:1/13}.grid-5>.col-1{grid-column:2/5}.grid-5>.col-2{grid-column:5/7}.grid-5>.col-3{grid-column:7/9}.grid-5>.col-4{grid-column:9/12}.grid-5>.col-span-4{grid-column:2/12}.grid-5>.grid-5>.col-span-2:nth-child(odd){grid-column:2/7}.grid-5>.col-span-2:nth-child(2n){grid-column:7/12}@media (max-width:860px){.grid-4,.grid-5{row-gap:var(--space-6)}.grid-4>:is(.col-1,.col-3){grid-column:1/7}.grid-4>:is(.col-2,.col-4){grid-column:7/13}.grid-5>:is(.col-1,.col-3){grid-column:2/7}.grid-5>:is(.col-2,.col-4,.col-2-4){grid-column:7/12}}@media (max-width:640px){.grid-4>*,.grid-5>*{width:100%;grid-column:1/-1!important}}
@supports (hanging-punctuation:first) and (font:-apple-system-body){.scroll-progress{display:none}}.scroll-progress{pointer-events:none;z-index:1000;width:3px;position:fixed;inset:0 0 0 auto}.scroll-progress-fill{background:var(--text-primary);transform-origin:top;will-change:transform;width:100%;height:100%}.header-menu-label{display:none}html[data-next-project] :is(.site-header,.site-footer){mix-blend-mode:normal!important}html:not([data-theme=dark])[data-next-project] :is(.site-header,.site-footer){filter:invert()}.nav-link{align-items:center;gap:var(--space-1);color:var(--chrome-fg);transition:opacity var(--motion-link-fade) var(--ease-standard), var(--theme-transition);display:inline-flex}.nav-link:hover{opacity:.7}.connect-group{align-items:center;gap:var(--space-2);justify-content:flex-end;display:inline-flex}.connect-arrow{background-color:currentColor;align-items:center;width:64px;height:1px;display:inline-flex;position:relative}.connect-arrow:after{content:"";border-top:1px solid;border-right:1px solid;width:7px;height:7px;position:absolute;top:-3px;right:0;transform:rotate(45deg)}.social-link{transition:opacity var(--motion-link-fade) var(--ease-standard), var(--theme-transition)}.header-col-more,.progressive-blur{display:none}.header-more-list{align-items:flex-end;gap:var(--space-2);padding:var(--space-2) 0 0;flex-direction:column;margin:0;list-style:none;display:flex;position:absolute;top:100%;right:0}.nav-button-swap{vertical-align:middle;align-items:center;height:1.4em;display:inline-flex;position:relative}.nav-link,.social-link{text-decoration:none;position:relative}.site-header .nav-link:before,.site-footer .social-link:before,.site-footer .theme-switch:before{content:"";position:absolute;inset:-.65rem}.site-header .nav-link:before{top:-6rem}.site-header .header-more-list .nav-link:before{inset:-.3rem -.65rem}.site-header .header-col-home .nav-link:before{left:calc(var(--page-pad-x) * -1);width:calc(9em + var(--page-pad-x));right:auto}.site-header .header-col-resume .nav-link:before{right:calc(var(--page-pad-x) * -1)}.site-footer .social-link:before{bottom:-6rem;left:-.6rem;right:-.6rem}.nav-link:after,.social-link:after{content:"";pointer-events:none;transform-origin:0;background:currentColor;height:1px;position:absolute;bottom:0;left:0;right:0;transform:scaleX(1)}.nav-link.underline-running:after,.social-link.underline-running:after{animation:slideUnderline var(--motion-underline) var(--ease-draw) forwards}[data-chrome=out] :is(.nav-link,.social-link):after{transition:none;transform:scaleX(0)}[data-chrome=out] .connect-arrow{clip-path:inset(-8px 100% -8px 0);transition:none}[data-chrome=in] .connect-arrow{clip-path:inset(-8px -8px -8px 0);transition:clip-path var(--motion-connect-draw) var(--ease-draw) var(--motion-connect-delay)}[data-chrome=in] :is(.nav-link,.social-link):after{transition:transform var(--motion-connect-draw) var(--ease-draw) var(--motion-connect-delay)}.nav-link[data-exiting]:after{transition:transform var(--motion-underline-exit) var(--ease-draw);transform:translate(101%)}.resume-arrow{flex:none;align-self:center;width:.72em;height:.72em;margin-left:.15em;overflow:visible}.resume-arrow-stem{transform-origin:1px 9px}.arrow-looping .resume-arrow-stem{animation:resumeArrowStem var(--motion-resume-arrow) var(--ease-linear) infinite}.arrow-looping .resume-arrow-head{animation:resumeArrowHead var(--motion-resume-arrow) var(--ease-linear) infinite}@keyframes resumeArrowStem{0%,to{transform:scale(1)}50%{transform:scale(1.32)}}@keyframes resumeArrowHead{0%,to{transform:translate(0)}50%{transform:translate(2.56px,-2.56px)}}@keyframes slideUnderline{0%{transform-origin:100%;animation-timing-function:var(--ease-draw);transform:scaleX(1)}49.9%{transform-origin:100%;transform:scaleX(0)}50%{transform-origin:0;animation-timing-function:var(--ease-standard);transform:scaleX(0)}to{transform-origin:0;transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.nav-link:after,.social-link:after{transition:none!important;animation:none!important;transform:scaleX(1)!important}.resume-arrow-stem,.resume-arrow-head{animation:none!important}.theme-switch-circle{transition:none!important}}.social-link:hover{opacity:.6}.theme-switch{width:1.6em;height:1.2em;color:var(--chrome-fg);font:inherit;cursor:pointer;--theme-switch-swap:.6em;--theme-switch-offset:-.2em;transition:var(--theme-transition);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.theme-switch-circle{width:1em;height:1em;transition:transform var(--motion-theme) var(--ease-standard);flex:none;display:block}.theme-switch-circle--ring{transform:translateX(calc(var(--theme-switch-offset) * -1))}.theme-switch-circle--disc{transform:translateX(var(--theme-switch-offset))}[data-theme=dark] .theme-switch-circle--ring{transform:translateX(calc(var(--theme-switch-swap) - var(--theme-switch-offset)))}[data-theme=dark] .theme-switch-circle--disc{transform:translateX(calc(var(--theme-switch-swap) * -1 + var(--theme-switch-offset)))}@media (max-width:860px){.footer-connect .connect-group>.body-serif-italic,.footer-connect .connect-group>.connect-arrow{display:none}.site-footer .footer-theme{display:none!important}.site-footer{grid-template-columns:repeat(12,minmax(0,1fr))}.site-footer .footer-title{grid-column:1/4}.site-footer .footer-location{grid-column:4/7}.site-footer .footer-connect{grid-column:10/13;justify-self:end}}@media (min-width:641px) and (max-width:860px){.site-header{grid-template-columns:repeat(12,minmax(0,1fr))}.site-header .header-col-home{grid-column:1/4}.site-header .header-col-resume{grid-column:10/13}}@media (max-width:640px){.site-header{column-gap:var(--section-sm)!important;grid-template-rows:auto!important;grid-template-columns:auto minmax(4rem,1fr) auto auto!important;align-items:center!important;row-gap:0!important;width:100%!important;display:grid!important}.site-header .header-col-resume{grid-area:1/4/auto/5!important;justify-self:end!important}.site-header .header-col-home{grid-area:1/1/auto/2!important}.site-footer,.site-header .header-col-resume{display:none!important}.site-header .header-col-more{grid-row:1;justify-self:end;display:flex;position:relative;grid-column:4/5!important;width:auto!important}.progressive-blur{pointer-events:none;z-index:-1;display:block;position:absolute}.header-progressive-blur{z-index:9998;height:clamp(6.5rem,15svh,8.5rem);position:fixed;inset:0 0 auto}.progressive-blur>span{-webkit-backdrop-filter:blur(calc(var(--blur-radius) * var(--blur-progress,1)));backdrop-filter:blur(calc(var(--blur-radius) * var(--blur-progress,1)));-webkit-mask-image:linear-gradient(to bottom, black 0%, transparent var(--blur-end));-webkit-mask-image:linear-gradient(to bottom, black 0%, transparent var(--blur-end));mask-image:linear-gradient(to bottom, black 0%, transparent var(--blur-end));position:absolute;inset:0}.progressive-blur>:first-child{--blur-radius:2px;--blur-end:100%}.progressive-blur>:nth-child(2){--blur-radius:4px;--blur-end:90%}.progressive-blur>:nth-child(3){--blur-radius:8px;--blur-end:80%}.progressive-blur>:nth-child(4){--blur-radius:16px;--blur-end:70%}.progressive-blur>:nth-child(5){--blur-radius:24px;--blur-end:60%}.header-more-blur{top:var(--page-pad-y);right:calc(var(--page-pad-x) - 1.5rem);z-index:9998;pointer-events:none;width:9rem;height:10.5rem;position:fixed}.header-more-blur .progressive-blur{inset:0}.header-more-blur .progressive-blur>span{-webkit-mask-image:radial-gradient(ellipse closest-side, black 25%, transparent calc(60% + var(--blur-end) * .4));-webkit-mask-image:radial-gradient(ellipse closest-side, black 25%, transparent calc(60% + var(--blur-end) * .4));mask-image:radial-gradient(ellipse closest-side, black 25%, transparent calc(60% + var(--blur-end) * .4))}}.location-clock{align-items:baseline;gap:var(--space-1);color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;white-space:nowrap;font-variant-numeric:tabular-nums;background:0 0;border:0;padding:0;display:inline-flex}.location-clock-city{perspective:160px;text-align:center;width:5ch;display:inline-grid;position:relative}.location-clock-code,.location-clock-time{grid-area:1/1}.location-clock-code,.location-clock-time>span{backface-visibility:hidden;transition:transform .36s cubic-bezier(.22,1,.36,1),opacity .18s;display:inline-block}.location-clock-time>span{opacity:0;transition-delay:var(--flip-delay);transform:translateY(-45%)rotateX(85deg)}.location-clock[data-show-time=true] .location-clock-code{opacity:0;transform:translateY(45%)rotateX(-85deg)}.location-clock[data-show-time=true] .location-clock-time>span{opacity:1;transform:translateY(0)rotateX(0)}.location-clock-label{letter-spacing:.08em;text-transform:uppercase;opacity:0;pointer-events:none;font-size:.5rem;transition:opacity .2s,transform .3s;position:absolute;bottom:calc(100% + .55rem);left:50%;transform:translate(-50%,.2rem)}.location-clock[data-show-time=true] .location-clock-label{opacity:.7;transform:translate(-50%)}.location-clock-divider{opacity:.7}.location-clock:focus-visible{outline-offset:5px;outline:1px dotted}@media (prefers-reduced-motion:reduce){.location-clock-code,.location-clock-time>span,.location-clock-label{transition:none}}.site-header .nav-link{font-size:var(--text-caption-sans);line-height:var(--leading-caption);letter-spacing:var(--tracking-caption-sans);font-weight:var(--weight-caption-sans);text-transform:uppercase}html[data-about-dark]{--chrome-fg:var(--about-chrome-fg)}html[data-about-dark] .scroll-progress-fill{background:var(--accent)}
.about-view{--about-accent:var(--accent);z-index:90;padding:var(--space-24) 0;background:var(--background);color:var(--text-primary);pointer-events:auto;align-items:center;display:flex;position:fixed;inset:0;overflow:clip auto}.about-circled-word{white-space:nowrap;display:inline-block;position:relative}.about-circled-word svg{pointer-events:none;width:calc(100% + .4em);height:1.55em;position:absolute;top:50%;left:-.2em;overflow:visible;transform:translateY(-50%)rotate(-4deg)}.about-circled-word path{fill:none;stroke:var(--about-accent);stroke-width:var(--doodle-stroke);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.about-underlined-word{white-space:nowrap;display:inline-block;position:relative}.about-underlined-word svg{pointer-events:none;width:calc(100% + .1em);height:.22em;position:absolute;bottom:-.08em;left:-.05em;overflow:visible}.about-underlined-word path{fill:none;stroke:var(--about-accent);stroke-width:var(--doodle-stroke);stroke-linecap:round;vector-effect:non-scaling-stroke}@media (prefers-reduced-motion:reduce){.about-circled-word path,.about-underlined-word path{transition:none}}@media (max-width:640px){.about-view{--view-pad-top:var(--space-24);padding-bottom:var(--space-12)!important}}.about-view{--view-pad-top:clamp(5.5rem, 9vh, 8rem);align-items:flex-start;padding-top:var(--view-pad-top)!important;justify-content:flex-start!important}@media (min-width:861px){.about-view{--view-pad-top:clamp(12rem, 23vh, 17rem)}}
.scroll-cue{align-items:center;gap:var(--space-4);text-transform:uppercase;letter-spacing:var(--tracking-caption-sans);flex-direction:column;margin:0;display:flex}.scroll-cue-dot{background:currentColor;border-radius:50%;width:8px;height:8px;animation:.9s ease-in-out infinite alternate scroll-cue-dot;display:block}@keyframes scroll-cue-dot{0%{transform:translateY(-9px)}to{transform:translateY(5px)}}@media (prefers-reduced-motion:reduce){.scroll-cue-dot{animation:none}}
.about-view.about-scroller::-webkit-scrollbar{display:none}.about-view.about-scroller{overscroll-behavior:contain;scrollbar-width:none;display:block;padding:0!important}.about-scene{position:relative}.about-sticky{height:100svh;padding-inline:var(--page-pad-x);justify-content:center;align-items:center;display:flex;position:sticky;top:0;overflow:hidden}.about-scene[data-live=false] .about-sticky{height:auto;min-height:70svh;padding-block:var(--space-20);position:relative}.about-intro-scene{height:var(--intro-height,402svh)}.about-intro-scene[data-live=false]{height:auto}.about-intro-stage{width:100%;height:100%;position:relative}.about-intro-panel{padding-inline:var(--page-pad-x);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.about-intro-copy{width:calc((100vw - 2 * var(--page-pad-x) - var(--grid-gap)) / 2);height:clamp(460px,78svh,860px);position:relative}.about-intro-card{pointer-events:none;-webkit-user-select:none;user-select:none;z-index:3;width:min(52vw,720px);height:auto;position:absolute;top:56%;translate:-50% -50%}@media (max-width:640px){.about-intro-card{width:calc(100vw - 2 * var(--page-pad-x))}}.about-intro-scene[data-live=false] .about-intro-stage{gap:var(--space-12);height:auto;display:grid}.about-intro-scene[data-live=false] .about-intro-panel{min-height:60svh;position:static}.about-intro-scene[data-live=false] .about-intro-copy{gap:var(--space-8);height:auto;display:grid;overflow:visible;-webkit-mask-image:none;mask-image:none}.about-intro-scene[data-live=false] .about-typed-flow{position:static}.about-intro-scene[data-live=false] .about-typed-word{opacity:1}.about-hero-title{text-align:center;transform-origin:50%;position:relative}.about-hero-me{z-index:2;width:.34em;height:auto;color:var(--about-accent,var(--accent));pointer-events:none;position:absolute;top:.02em;left:-.02em;overflow:visible;transform:rotate(-9deg)}.about-hero-me g path{stroke-dasharray:1 2;stroke-dashoffset:1.02px}.about-hero-me[data-animate=true] g path{animation:about-vinyl-draw .6s var(--ease-standard) var(--me-delay,0s) both}.about-hero-me[data-animate=true] g path:nth-child(2){animation-delay:calc(var(--me-delay,0s) + .5s)}.about-hero-me[data-animate=true] g path:nth-child(3){animation-delay:calc(var(--me-delay,0s) + 1s);animation-duration:.4s}.about-hero-me[data-static=true] g path{stroke-dashoffset:0}.about-projects-cue{z-index:9998;top:var(--page-pad-y);left:var(--page-pad-x);pointer-events:none;width:max-content;position:fixed}.about-projects-arrow{width:clamp(50px,5vw,70px);height:auto;stroke:var(--about-accent,var(--accent));stroke-width:var(--doodle-stroke);stroke-linecap:round;stroke-linejoin:round;pointer-events:none;position:absolute;top:0;left:0}.about-projects-arrow path{vector-effect:non-scaling-stroke}.about-scroll-cue{position:absolute;bottom:12svh;left:50%;translate:-50%}.about-scroll-reminder{z-index:4;pointer-events:none}.about-closer{white-space:nowrap;margin:0;position:absolute;top:50%;left:50%;translate:-50% -50%}.about-intro-scene[data-live=false] .about-closer{white-space:normal;position:static;translate:none}.about-typed-flow{text-align:left;margin:0;padding:.95em .5em .55em;position:absolute;top:0;left:0;right:0}.about-typed-word{white-space:nowrap;display:inline-block}.about-typed-char{opacity:0;transition:opacity .12s var(--ease-standard);position:relative}.about-typed-char[data-shown=true]{opacity:1}.about-scroll-character{transition:none}.about-typed-break{height:.7em;display:block}.about-recently{z-index:1;height:340svh}.about-recently[data-live=false]{height:auto}.about-recently .about-sticky{clip-path:inset(0);justify-content:flex-start;padding-inline:0;overflow:clip visible}.about-recently[data-live=false] .about-sticky{clip-path:none;scroll-snap-type:x proximity;scrollbar-width:none;overflow-x:auto}.about-recently[data-live=false] .about-sticky::-webkit-scrollbar{display:none}.about-recently[data-live=false] .about-recently-track{height:80svh}.about-recently-track{box-sizing:border-box;height:100%;padding:clamp(4rem, 11svh, 6.5rem) var(--page-pad-x) clamp(4rem, 11svh, 6.5rem) calc(var(--page-pad-x) + 115svh);will-change:transform;align-self:stretch;align-items:center;gap:clamp(3rem,8vw,8rem);display:flex}@media (max-width:640px){.about-recently,.about-recently[data-live=false]{height:auto}.about-recently[data-mobile=true] .about-sticky{clip-path:none;scroll-snap-type:none;height:auto;min-height:0;position:relative;overflow:visible}.about-recently[data-mobile=true] .about-recently-track{height:auto;padding:3rem var(--page-pad-x) 4rem;will-change:auto;flex-direction:column;align-items:stretch;gap:4rem;transform:none!important}.about-recently .about-origin{grid-template-rows:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1rem;width:100%;height:auto}.about-recently .about-origin-copy{grid-area:auto/1/auto/-1}.about-recently .about-origin-photo{grid-area:auto}.about-recently .about-origin-location{grid-area:auto/1/auto/-1}.about-recently .about-origin-ticket{grid-column:2;width:100%;position:relative;top:auto;left:auto}.about-recently .about-origin-arrow{display:none}.about-recently .about-recent-journey{flex-direction:column;align-items:stretch;gap:2rem;height:auto}.about-recently .about-recently-title{align-self:flex-start;padding-right:0}.about-recently .about-recent-composition{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1rem;height:auto;display:grid}.about-recently .about-recent-pair,.about-recently .about-recent-quartet{display:contents}.about-recently .about-recent-composition .about-recent{grid-area:auto}.about-recently .about-recent-anchor{grid-column:1/-1;width:100%}}.about-recently-title{flex:none;align-self:center;padding-right:clamp(2rem,6vw,6rem)}.about-recent-journey{flex:none;align-items:center;gap:clamp(3rem,8vw,8rem);height:100%;display:flex;position:relative}.about-recent{gap:var(--space-3);scroll-snap-align:center;align-self:start;min-width:0;margin:0;display:grid}.about-recent-composition{scroll-snap-align:start;flex:none;align-items:center;gap:14svh;height:100%;display:flex;position:relative}.about-recent-trail{pointer-events:none;width:100%;height:100%;color:var(--about-accent,var(--accent));position:absolute;inset:0;overflow:visible}.about-recent-trail>path{fill:none;stroke:currentColor;stroke-width:var(--doodle-stroke);vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-dasharray:8 7 11 8 7 7}.about-recent-pair,.about-recent-quartet{flex:none;grid-template-rows:repeat(16,minmax(0,1fr));grid-template-columns:repeat(8,minmax(0,1fr));column-gap:2svh;height:100%;display:grid}.about-recent-pair{width:72svh}.about-recent-pair>:first-child{grid-area:2/1/auto/3}.about-recent-pair>:last-child{grid-area:7/4/auto/9}.about-recent-pair--opening>:first-child{grid-row:1}.about-recent-pair--opening>:first-child .about-recent-frame{aspect-ratio:3/4}.about-recent-quartet{width:110svh}.about-recent-quartet>:first-child{grid-area:1/1/auto/2}.about-recent-quartet>:nth-child(2){grid-area:5/2/auto/6}.about-recent-quartet>:nth-child(3){grid-area:3/8/auto/9}.about-recent-quartet>:nth-child(4){grid-area:9/6/auto/8}.about-recent-quartet>:nth-child(4) .about-recent-frame{aspect-ratio:3/4}.about-recent-anchor{flex:none;width:72svh}.about-recent-composition>.about-recent-anchor:last-child{width:46svh}.about-recent-anchor .about-recent{position:relative}.about-recent-anchor figcaption{bottom:calc(100% + var(--space-3));position:absolute}.about-recent figcaption,.about-origin-photo figcaption{text-transform:uppercase}.about-recent-frame{aspect-ratio:1;width:100%;position:relative;overflow:hidden}.about-recent-media{position:absolute;inset:0 -12%}.about-recent-placeholder{background:color-mix(in srgb, var(--text-primary) 8%, var(--background));position:absolute;inset:0}.about-listening-stage{width:min(100%,80rem);height:min(100%,52rem);position:relative}.about-music-word{white-space:nowrap;display:inline-block;position:relative}.about-music-vinyl{width:1.05em;height:1.05em;color:var(--about-accent,var(--accent));position:absolute;top:-.65em;right:-.7em;transform:rotate(-12deg)}.about-music-vinyl g path{stroke-dasharray:1 2;stroke-dashoffset:1.02px}.about-vinyl-center{opacity:0}.about-music-vinyl[data-animate=true]{animation:10s linear 1.5s infinite about-vinyl-spin}.about-music-vinyl[data-animate=true] g path{animation:about-vinyl-draw .9s var(--ease-standard) both}.about-music-vinyl g path:nth-child(2){animation-delay:.15s}.about-music-vinyl g path:nth-child(3){animation-delay:.3s}.about-music-vinyl g path:nth-child(4){animation-delay:.45s}.about-music-vinyl g path:nth-child(5){animation-delay:.6s}.about-music-vinyl[data-animate=true] .about-vinyl-center{animation:.2s ease-out 1.1s both about-vinyl-center}@keyframes about-vinyl-draw{to{stroke-dashoffset:0}}@keyframes about-vinyl-center{to{opacity:1}}@keyframes about-vinyl-spin{0%{transform:rotate(-12deg)}to{transform:rotate(348deg)}}.about-music-earpods{width:2.3em;height:4.6em;color:var(--about-accent,var(--accent));pointer-events:none;position:absolute;top:calc(100% + .2em);left:25%;overflow:visible}.about-music-earpods path{stroke-dasharray:1 2;stroke-dashoffset:1.02px}.about-music-earpods[data-animate=true] .about-earpod-left{animation:about-vinyl-draw .65s var(--ease-standard) .3s both}.about-music-earpods[data-animate=true] .about-earpod-right{animation:about-vinyl-draw .65s var(--ease-standard) .7s both}.about-music-earpods[data-animate=true] .about-earpods-cord-left{animation:about-vinyl-draw .3s var(--ease-standard) 1.2s both}.about-music-earpods[data-animate=true] .about-earpods-cord-right{animation:about-vinyl-draw .3s var(--ease-standard) 1.3s both}.about-music-earpods[data-animate=true] .about-earpods-wire{animation:about-vinyl-draw .7s var(--ease-standard) 1.6s both}.about-music-earpods[data-animate=true] .about-earpods-wing-one{animation:.1s linear 2.3s both about-vinyl-draw}.about-music-earpods[data-animate=true] .about-earpods-wing-two{animation:.1s linear 2.4s both about-vinyl-draw}.about-music-vinyl[data-scroll=true],.about-music-vinyl[data-scroll=true] g path,.about-music-vinyl[data-scroll=true] .about-vinyl-center,.about-music-earpods[data-scroll=true] path{animation:none}.about-music-vinyl[data-scroll=true] g path{stroke-dashoffset:clamp(0, calc(1.02 - 1.02 * (var(--music-draw-progress) / .6)), 1.02)}.about-music-vinyl[data-scroll=true] g path:nth-child(2){stroke-dashoffset:clamp(0, calc(1.02 - 1.02 * ((var(--music-draw-progress) - .1) / .6)), 1.02)}.about-music-vinyl[data-scroll=true] g path:nth-child(3){stroke-dashoffset:clamp(0, calc(1.02 - 1.02 * ((var(--music-draw-progress) - .2) / .6)), 1.02)}.about-music-vinyl[data-scroll=true] g path:nth-child(4){stroke-dashoffset:clamp(0, calc(1.02 - 1.02 * ((var(--music-draw-progress) - .3) / .6)), 1.02)}.about-music-vinyl[data-scroll=true] g path:nth-child(5){stroke-dashoffset:clamp(0, calc(1.02 - 1.02 * ((var(--music-draw-progress) - .4) / .6)), 1.02)}.about-music-vinyl[data-scroll=true] .about-vinyl-center{opacity:clamp(0, calc((var(--music-draw-progress) - .85) / .15), 1)}.about-music-earpods[data-scroll=true] .about-earpod-left{stroke-dashoffset:clamp(0, calc(1.02 - 1.02 * (var(--music-draw-progress) / .35)), 1.02)}.about-music-earpods[data-scroll=true] .about-earpod-right{stroke-dashoffset:clamp(0, calc(1.02 - 1.02 * ((var(--music-draw-progress) - .15) / .35)), 1.02)}.about-music-earpods[data-scroll=true] .about-earpods-cord-left{stroke-dashoffset:clamp(0, calc(1.02 - 1.02 * ((var(--music-draw-progress) - .3) / .15)), 1.02)}.about-music-earpods[data-scroll=true] .about-earpods-cord-right{stroke-dashoffset:clamp(0, calc(1.02 - 1.02 * ((var(--music-draw-progress) - .35) / .15)), 1.02)}.about-music-earpods[data-scroll=true] .about-earpods-wire{stroke-dashoffset:clamp(0, calc(1.02 - 1.02 * ((var(--music-draw-progress) - .5) / .38)), 1.02)}.about-music-earpods[data-scroll=true] .about-earpods-wing-one{stroke-dashoffset:clamp(0, calc(1.02 - 1.02 * ((var(--music-draw-progress) - .88) / .06)), 1.02)}.about-music-earpods[data-scroll=true] .about-earpods-wing-two{stroke-dashoffset:clamp(0, calc(1.02 - 1.02 * ((var(--music-draw-progress) - .94) / .06)), 1.02)}@media (prefers-reduced-motion:reduce){.about-music-vinyl{animation:none}.about-music-vinyl g path{stroke-dashoffset:0;animation:none}.about-vinyl-center{opacity:1;animation:none}.about-music-earpods path{stroke-dashoffset:0;animation:none}}.about-listening-title{text-align:center;width:max-content;max-width:90%;position:absolute;top:50%;left:50%;translate:-50% -50%}.about-ticker-sizer{visibility:hidden}.about-music-graphics-stage{pointer-events:none}.about-ticker-character{white-space:pre}.about-ticker-text{white-space:nowrap;position:absolute;inset:0}.about-listening-card{--cover:clamp(6rem, 12vw, 10rem);left:var(--x);top:var(--y);gap:var(--space-2);width:var(--cover);margin:0;display:grid;position:absolute;translate:-50% -50%}.about-listening-card[data-size=sm]{--cover:clamp(4.5rem, 9vw, 7.5rem)}.about-listening-card[data-size=md]{--cover:clamp(6rem, 12vw, 10rem)}.about-listening-card[data-size=lg]{--cover:clamp(7.5rem, 15vw, 13rem)}.about-listening-cover{aspect-ratio:1;width:100%;position:relative;overflow:hidden}.about-listening-placeholder{background:color-mix(in srgb, var(--text-primary) 14%, var(--background));position:absolute;inset:0}.about-listening-card figcaption{text-transform:uppercase;text-align:center}.about-closing{text-align:center;min-height:100svh}.about-closing-stage{align-content:center;justify-items:center;gap:var(--space-10);width:100%;height:100svh;padding:var(--space-20) var(--page-pad-x);display:grid;position:sticky;top:0;left:0}.about-closing[data-live=false] .about-closing-stage{position:relative}.about-closing-line{appearance:none;color:inherit;text-align:inherit;background:0 0;border:0;font-family:inherit}.about-closing-work{display:inline-block;position:relative}.project-preview{z-index:91;pointer-events:none;will-change:transform;position:fixed;top:0;left:0}.project-preview-card{aspect-ratio:4/3;width:clamp(180px,19vw,300px);position:absolute;top:0;left:0;overflow:hidden}.project-preview-image{position:absolute;inset:0}.project-preview.about-work-preview{z-index:97}.about-closing-underline{width:100%;height:.14em;color:var(--about-accent,var(--accent));pointer-events:none;position:absolute;bottom:-.07em;left:0;overflow:visible}@media (max-width:860px){.about-listening-title{width:90%}.about-listening-card,.about-listening-card[data-size]{--cover:26vw}}@media (max-width:640px){.about-listening-stage .about-listening-card[data-size=sm]{--cover:20vw}.about-listening-stage .about-listening-card[data-size=md]{--cover:24vw}.about-listening-stage .about-listening-card[data-size=lg]{--cover:28vw}.about-listening-stage .about-listening-card:first-child{top:31%;left:19%}.about-listening-stage .about-listening-card:nth-child(2){top:34%;left:50%}.about-listening-stage .about-listening-card:nth-child(3){top:69%;left:24%}.about-listening-stage .about-listening-card:nth-child(4){top:66%;left:75%}.about-listening-stage .about-listening-card:nth-child(5){top:28%;left:82%}.about-listening-stage .about-music-vinyl{top:-1.6em;right:0}.about-listening-stage .about-music-earpods{width:1.6em;height:3.2em;left:39%}}.about-origin{width:calc(100vw - 2 * var(--page-pad-x));column-gap:var(--layout-gap);scroll-snap-align:start;flex:none;grid-template-rows:repeat(12,minmax(0,1fr));grid-template-columns:repeat(12,minmax(0,1fr));height:100%;display:grid;position:relative}.about-origin-copy{z-index:2;grid-area:4/1/span 6/span 7;align-self:center}.about-origin-copy>p:first-child{margin-bottom:1.5rem}.about-origin-title{margin:0 0 2rem}.about-origin-title .display-serif-italic{white-space:nowrap}.about-origin-sub{margin:0}.about-origin-sub>span{white-space:nowrap;display:block}.about-origin-sub>span:last-child{padding-left:3.2em}.about-origin-photo{align-self:start;gap:var(--space-3);min-width:0;margin:0;display:grid}.about-origin-photo .about-recent-frame{width:100%}.about-origin-photo--street{grid-area:1/8/auto/span 3}.about-origin-photo--harbour{z-index:3;grid-area:8/11/auto/span 2}.about-origin-location{grid-area:1/11/auto/span 2;margin:0}.about-origin-ticket{z-index:2;width:22%;height:auto;position:absolute;top:68%;left:52%;transform:rotate(-10deg)}.about-origin-arrow{width:10%;color:var(--about-accent,var(--accent));position:absolute;top:68%;left:42%}@media (max-width:749px){.about-origin-copy{grid-area:1/1/span 4/-1;align-self:start}.about-origin-title{margin-bottom:1rem}.about-origin-photo--street{grid-area:6/5/auto/span 6}.about-origin-photo--harbour{grid-area:10/9/auto/span 4}.about-origin-location{grid-area:6/1/auto/span 4}.about-origin-ticket{width:40%;top:83%;left:25%}.about-origin-arrow{width:23%;top:65%;left:4%}}.about-playlists{gap:var(--grid-gap);padding:0 var(--page-pad-x) clamp(5rem, 12svh, 9rem);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:-32svh;display:grid;position:relative}.about-intro-scene[data-live=false]+.about-playlists{margin-top:0}.about-song-list{grid-column:1/-1;margin:0;padding:0;list-style:none}.about-song-preview .project-preview-card{aspect-ratio:1;width:clamp(120px,12vw,180px)}.about-song-item{position:relative}.about-song-row{appearance:none;width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;align-items:baseline;column-gap:var(--grid-gap);padding-inline:0;padding-block:var(--space-4);border:0;border-top:1px solid var(--border);background:0 0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.about-song-item:last-child .about-song-row{border-bottom:1px solid var(--border)}.about-song-row:focus-visible{outline:2px solid var(--about-accent);outline-offset:4px}.about-song-row:disabled{cursor:default}.about-song-number{position:relative}.about-song-control{font-family:sans-serif;font-size:.7em;display:none}.about-song-row:not(:disabled):hover .about-song-index,.about-song-row:focus-visible .about-song-index,.about-song-row[data-playing=true] .about-song-index{display:none}.about-song-row:not(:disabled):hover .about-song-control,.about-song-row:focus-visible .about-song-control,.about-song-row[data-playing=true] .about-song-control{display:inline}.about-song-row[data-playing=true] .about-song-title{color:var(--about-accent)}.about-song-link{padding:.5rem;position:absolute;top:50%;right:0;transform:translateY(-50%)}.about-song-attribution{margin:var(--space-4) 0 0;grid-column:1/-1}.about-song-title{grid-column:2/span 2}.about-song-artist{text-align:left;padding-right:2rem}@media (max-width:749px){.about-playlists{grid-template-columns:1fr;gap:2.5rem}.about-song-list{grid-column:1}.about-song-row{grid-template-columns:2rem minmax(0,1fr) minmax(0,1fr);column-gap:.75rem}.about-song-title{grid-column:2}}@media (max-width:640px){.about-intro-copy{width:100%}}.about-commits{pointer-events:none;z-index:1;place-content:center;display:grid;position:absolute;inset:0}.about-commit-grid{display:grid;position:relative}.about-commit-field{grid-template-columns:inherit;grid-template-rows:inherit;gap:inherit;display:grid;position:absolute;inset:0}.about-commit-tile{opacity:0;background:var(--tile-color);width:100%;height:100%;transition:opacity .3s var(--ease-standard), transform .3s var(--ease-standard);transform:scale(.4)}.about-commit-tile[data-on=true]{opacity:clamp(0, calc(1 - (var(--tiles-clear,0) - var(--tile-clear-at,0)) / .2), 1);transform:none}.about-commit-tile[data-level="1"]{--tile-color:color-mix(in srgb, var(--about-accent,var(--accent)) 28%, var(--background))}.about-commit-tile[data-level="2"]{--tile-color:color-mix(in srgb, var(--about-accent,var(--accent)) 50%, var(--background))}.about-commit-tile[data-level="3"]{--tile-color:color-mix(in srgb, var(--about-accent,var(--accent)) 76%, var(--background))}.about-commit-tile[data-level="4"]{--tile-color:var(--about-accent,var(--accent))}.about-intro-panel-new,.about-intro-panel-closer{z-index:2}.about-intro-panel{pointer-events:none}.about-commit-slots{margin:auto;position:absolute;inset:0}.about-commit-slots .about-listening-card{visibility:hidden}.about-commit-cover{pointer-events:auto;z-index:3;margin:0;position:relative}.about-commit-cover-tint{background:var(--about-accent,var(--accent));position:absolute;inset:0}.about-commit-cover-media.about-listening-cover{aspect-ratio:auto;width:auto;position:absolute;inset:0}.about-commit-cover-inner{position:absolute;inset:0}.about-artist-image{transition:transform .35s var(--ease-standard);display:block;overflow:visible}.about-commit-cover-inner>.about-artist-image{position:absolute;inset:0}.about-artist-image:hover{transform:scale(1.1) rotate(var(--artist-hover-rotate,-5deg))}.about-commit-cover:has(.about-artist-image:hover){z-index:4}.about-artist-notes{width:12%;height:30%;color:var(--about-accent,var(--accent));pointer-events:none;opacity:0;transition:opacity .35s ease-out;position:absolute;top:-27%;left:96%;overflow:visible}.about-artist-image:hover .about-artist-notes{opacity:1}.about-artist-note{--note-drift:12px;--note-turn:18deg;transform-box:fill-box;transform-origin:50%;animation:3.2s linear infinite artist-note-float}.about-artist-note:nth-child(2){--note-drift:-8px;--note-turn:-14deg;animation-delay:-.8s}.about-artist-note:nth-child(3){--note-drift:22px;--note-turn:26deg;animation-delay:-1.6s}.about-artist-note:nth-child(4){--note-drift:3px;--note-turn:-8deg;animation-delay:-2.4s}@keyframes artist-note-float{0%{opacity:0;transform:translate(0)scale(.65)rotate(0)}15%{opacity:.85}55%{opacity:.75}to{opacity:0;transform:translate(var(--note-drift), -60px) scale(1) rotate(var(--note-turn))}}@media (prefers-reduced-motion:reduce){.about-artist-image,.about-artist-notes{transition:none}.about-artist-note{animation:none}}.about-commit-static{gap:var(--space-8);justify-items:center;display:grid}.about-commit-static .about-listening-title{position:static;translate:none}.about-commit-static ul{justify-content:center;gap:var(--space-6);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.about-commit-static-card{gap:var(--space-1);text-align:center;text-transform:uppercase;width:min(26vw,9rem);margin:0;display:grid}.about-ticket-layer{z-index:92;pointer-events:none;position:fixed;inset:0;overflow:hidden}.about-ticket-card{opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none;will-change:transform;height:auto;position:absolute;top:0;left:0}.about-recently[data-live=true] .about-origin-ticket{visibility:hidden}.about-recently[data-live=true] .about-origin-arrow path{stroke-dasharray:1 2;stroke-dashoffset:1.02px}.about-interests{--interest-photo:clamp(9rem, 15vw, 18rem);z-index:1;box-sizing:border-box;min-height:max(112svh,50rem);padding:clamp(4rem, 11svh, 7rem) var(--page-pad-x);position:relative}.about-interests-intro{left:var(--page-pad-x);width:min(34vw,32rem);position:absolute;top:16%}.about-interests-title{margin:0 0 var(--space-6);font-size:clamp(3rem,5.4vw,7rem);line-height:1}.about-interests-title .display-serif-italic{font-size:inherit;line-height:inherit}.about-interests-lede{max-width:16em;margin:0}.about-interests-canvas{pointer-events:none;margin:0;padding:0;list-style:none;position:absolute;inset:0}.about-interest{width:calc(var(--interest-photo) * var(--scale,1));position:absolute}.about-interest-drift{position:relative}.about-interest-photo{aspect-ratio:var(--ratio,1 / 1);background:var(--border);transform:rotate(var(--tilt,0deg));position:relative;overflow:hidden}.about-interest-photo--secondary{width:56%;aspect-ratio:var(--ratio-2,4 / 5);transform:rotate(var(--tilt-2,6deg));box-shadow:0 0 0 .45rem var(--background);position:absolute;bottom:-20%;right:-30%}.about-interest-copy{gap:var(--space-1);width:clamp(7.5rem,9.5vw,11rem);display:grid;position:absolute}.about-interest-label,.about-interest-caption{margin:0}.about-interest[data-interest=design]{--scale:1.05;--ratio:4 / 5;--tilt:-3deg;--tilt-2:7deg;--ratio-2:1 / 1;top:6%;left:41%}.about-interest[data-interest=design] .about-interest-copy{top:4%;right:calc(100% + 1.5rem)}.about-interest[data-interest=food]{--scale:1.1;--ratio:5 / 4;--tilt:3deg;top:15%;left:71%}.about-interest[data-interest=food] .about-interest-copy{width:clamp(7.5rem,11vw,12rem);top:calc(100% + 1rem);right:0}.about-interest[data-interest=lego]{--scale:1.2;--ratio:1 / 1;--tilt:-4deg;top:44%;left:28%}.about-interest[data-interest=lego] .about-interest-copy{top:calc(100% + 1rem);left:4%}.about-interest[data-interest=fashion]{--scale:.82;--ratio:3 / 4;--tilt:4deg;top:47%;left:66%}.about-interest[data-interest=fashion] .about-interest-copy{top:6%;left:calc(100% + 1.25rem)}.about-interest[data-interest=film]{--scale:1.3;--ratio:16 / 9;--tilt:-1.5deg;top:77%;left:49%}.about-interest[data-interest=film] .about-interest-copy{top:38%;left:calc(100% + 1.25rem)}.about-interest[data-interest=formula-1]{--scale:.9;--ratio:4 / 5;--tilt:2.5deg;top:66%;left:10%}.about-interest[data-interest=formula-1] .about-interest-copy{bottom:6%;left:calc(100% + 1.25rem)}.about-interest-doodle{height:auto;color:var(--about-accent,var(--accent));pointer-events:none;display:block;position:absolute;overflow:visible}.about-interest-doodle g path{stroke-dasharray:1 2;stroke-dashoffset:1.02px}.about-interest-doodle .about-doodle-fill{opacity:0}.about-interest-doodle[data-animate=true] g path{animation:about-vinyl-draw .7s var(--ease-standard) both}.about-interest-doodle[data-animate=true] g path:nth-child(2){animation-delay:.18s}.about-interest-doodle[data-animate=true] g path:nth-child(3){animation-delay:.36s}.about-interest-doodle[data-animate=true] g path:nth-child(4){animation-delay:.54s}.about-interest-doodle[data-animate=true] g path:nth-child(5){animation-delay:.72s}.about-interest-doodle[data-animate=true] g path:nth-child(6){animation-delay:.9s}.about-interest-doodle[data-animate=true] g path:nth-child(7){animation-delay:1.08s}.about-interest-doodle[data-animate=true] g path:nth-child(8){animation-delay:1.26s}.about-interest-doodle[data-animate=true] g path:nth-child(9){animation-delay:1.44s}.about-interest-doodle[data-animate=true] .about-doodle-fill{animation:.25s ease-out 1.5s both about-vinyl-center}.about-interest-doodle[data-static=true] g path{stroke-dashoffset:0}.about-interest-doodle[data-static=true] .about-doodle-fill{opacity:1}.about-interest-doodle[data-doodle=design]{width:24%;top:-12%;right:-20%;transform:rotate(28deg)}.about-interest-doodle[data-doodle=food]{width:34%;top:calc(100% + .6rem);left:-6%;transform:rotate(-6deg)}.about-interest-doodle[data-doodle=lego]{width:30%;top:-15%;left:-22%;transform:rotate(-10deg)}.about-interest-doodle[data-doodle=fashion]{width:44%;top:34%;left:-52%;transform:rotate(-12deg)}.about-interest-doodle[data-doodle=film]{width:36%;top:-64%;left:-24%;transform:rotate(-8deg)}.about-interest-doodle[data-doodle=formula-1]{width:44%;top:-12%;right:-26%;transform:rotate(8deg)}@media (max-width:749px){.about-interests{min-height:0;padding-block:var(--space-20)}.about-interests-intro{width:auto;margin-bottom:var(--space-10);position:static}.about-interests-canvas{gap:var(--space-8) var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;position:static}.about-interest,.about-interest[data-interest]{width:auto;position:static}.about-interest-photo--secondary{display:none}.about-interest-copy,.about-interest[data-interest] .about-interest-copy{width:auto;margin-top:var(--space-3);position:static}.about-interest-doodle{display:none}}.new-about-view{--background:var(--about-background);--text-primary:var(--accent);--text-secondary:color-mix(in srgb, var(--accent) 60%, transparent);--border:var(--white-a140);--about-pad-top:clamp(5rem, 11vh, 7rem);--about-split:50svh;--about-pad-bottom:clamp(4.5rem, 9vh, 6rem);align-items:start;column-gap:var(--layout-gap);padding:var(--about-pad-top) var(--page-pad-x) var(--about-pad-bottom);overscroll-behavior:contain;color:var(--text-primary);pointer-events:auto;scrollbar-width:none;grid-template-rows:auto;grid-template-columns:repeat(12,minmax(0,1fr));display:grid;position:fixed;inset:0;overflow-y:auto}.new-about-view::-webkit-scrollbar{display:none}.new-about-backdrop{z-index:-1;background:var(--background);pointer-events:none;position:fixed;inset:0}.new-about-intro{top:var(--about-pad-top);left:var(--page-pad-x);width:calc((100vw - 2 * var(--page-pad-x) - 11 * var(--layout-gap)) / 2 + 5 * var(--layout-gap));height:calc(100svh - var(--about-pad-top) - var(--about-pad-bottom));grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:fixed}.new-about-name{color:var(--accent);text-transform:uppercase;margin:0;font-size:clamp(4rem,10vw,10rem);line-height:.82}.new-about-bio{left:0;top:calc(var(--about-split) - var(--about-pad-top));max-width:28em;line-height:1.15;position:absolute}.new-about-bio p{margin:0}.new-about-bio p+p{margin-top:var(--space-6)}.new-about-links{align-self:end;margin:0;padding:0;list-style:none}.new-about-links a{text-decoration:none;display:block}.new-about-links a:hover{color:var(--accent)}.new-about-panel{padding-top:calc(var(--about-split) - var(--about-pad-top));grid-column:7/13}.new-about-columns{gap:var(--space-8) var(--layout-gap);grid-template-columns:repeat(2,minmax(0,1fr));line-height:1.15;display:grid}.new-about-exploring,.new-about-gallery{margin-top:var(--space-16)}.new-about-gallery-title{margin:0 0 var(--space-6)}.new-about-gallery-grid{align-items:start;gap:var(--space-8) var(--layout-gap);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.new-about-figure{grid-column:var(--col);gap:var(--space-3);align-self:var(--align,start);flex-direction:column;margin:0;display:flex}.new-about-photo{aspect-ratio:var(--ratio,3 / 4);position:relative}.new-about-photo img{object-fit:cover}@media (max-width:640px){.new-about-figure{grid-column:var(--col-m)}}@media (max-width:860px){.new-about-intro{row-gap:var(--space-8);grid-column:1/-1;width:auto;height:auto;position:static}.new-about-panel{margin-top:var(--space-12);grid-column:1/-1;padding-top:0}.new-about-links{margin-top:var(--space-4)}.new-about-bio{position:static}}
.projects-gallery{z-index:92;pointer-events:auto;overscroll-behavior-x:contain;scrollbar-width:none;align-items:flex-start;padding-top:36svh;display:flex;position:fixed;inset:0;overflow:auto hidden}.home-intro{--home-intro-top:clamp(5rem, 10vh, 7.5rem);top:var(--home-intro-top);z-index:93;column-gap:var(--layout-gap);padding-inline:var(--page-pad-x);pointer-events:none;grid-template-columns:repeat(12,minmax(0,1fr));display:grid;position:fixed;left:0;right:0}.home-intro-lead{grid-column:1/7}.home-intro-content{grid-template-columns:subgrid;column-gap:inherit;grid-column:1/-1;display:grid;position:relative}.home-intro-meta{gap:var(--layout-gap);grid-column:7/13;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.home-intro-statement{max-width:15em;margin:0}.hand-underlined{white-space:nowrap;display:inline-block;position:relative}.hand-underline{width:calc(100% + .46em);height:.24em;color:var(--about-accent,var(--accent));stroke:currentColor;stroke-width:var(--doodle-stroke);stroke-linecap:round;stroke-linejoin:round;pointer-events:none;position:absolute;bottom:-.04em;left:-.14em;overflow:visible}.hand-underline path{stroke-dasharray:1 2;stroke-dashoffset:1.02px}.hand-underline[data-animate=true] path{animation:about-vinyl-draw .6s var(--ease-standard) var(--underline-delay,0s) both}.hand-underline[data-animate=true] path:nth-child(2){animation-delay:calc(var(--underline-delay,0s) + .12s);animation-duration:.5s}.hand-underline[data-static=true] path{stroke-dashoffset:0}.gallery-backdrop{z-index:80;background:var(--background);pointer-events:none;position:fixed;inset:0}.projects-gallery[data-scroll-locked]{overflow:hidden}.projects-gallery::-webkit-scrollbar{display:none}.gallery-track{--gallery-stagger:8svh;--gallery-gap:var(--space-6);align-items:flex-start;gap:var(--gallery-gap);padding-inline:var(--page-pad-x);width:max-content;display:flex}.gallery-item{gap:var(--space-2);width:min(32vw,54svh);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:none;padding:0;transition:opacity .4s ease-in-out;display:grid;position:relative}.gallery-item[data-pointer-focus]:focus-visible{outline:none}.gallery-item:before{content:"";inset:0 calc(var(--gallery-gap) / -2) calc(-1 * var(--gallery-stagger));position:absolute}.gallery-item-content{gap:var(--space-2);display:grid}.projects-gallery.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.gallery-item:not(.is-intro){clip-path:none!important}.gallery-item:nth-child(2n){margin-top:var(--gallery-stagger)}.gallery-item:nth-child(2n):before{top:calc(-1 * var(--gallery-stagger));bottom:0}.gallery-cover{aspect-ratio:4/3;background:var(--surface-placeholder);display:block;position:relative;overflow:clip}.gallery-item[data-coming-soon]{cursor:default}.gallery-item[data-coming-soon] .gallery-cover img{filter:grayscale()}.gallery-cover-soon{color:#fff;text-align:center;background:#00000059;place-items:center;display:grid;position:absolute;inset:0}.gallery-item.is-intro{pointer-events:none}.gallery-caption{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.gallery-caption-title{align-items:baseline;gap:var(--space-2);min-width:0;display:flex}@media (hover:hover) and (min-width:641px){.gallery-track:has(.gallery-item:hover) .gallery-item:not(:hover){opacity:.4!important}}@media (max-width:640px){.projects-gallery{-webkit-overflow-scrolling:touch;padding-block:0;display:block;overflow:hidden auto}.gallery-track{--gallery-stagger:0px;--gallery-gap:var(--space-6);gap:var(--gallery-gap);width:100%;padding:var(--space-2) var(--page-pad-x) var(--space-24);flex-direction:column}.home-intro{padding:var(--space-24) var(--page-pad-x) var(--space-8);grid-template-columns:repeat(12,minmax(0,1fr));position:relative;top:auto;left:auto;right:auto}.home-intro-content{row-gap:var(--space-8)}.home-intro-lead{grid-column:1/-1}.home-intro-meta{gap:var(--layout-gap);grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.home-intro-statement{font-size:clamp(1.75rem,7vw,2.5rem)}.gallery-item{width:100%}.gallery-item:before{inset:0 0 calc(var(--gallery-gap) / -2)}}@media (min-width:641px) and (max-width:860px){.home-intro{column-gap:var(--layout-gap)}}@media (min-width:641px){.home-intro-lead{grid-row:1/span 2}.home-intro-meta{margin-bottom:calc(var(--text-h2-sans) * .236 - var(--text-caption-sans) * .336);grid-row:1/span 2;align-self:end}}@media (prefers-reduced-motion:reduce){.gallery-item{transition:none}}
.project-metadata-grid{min-height:clamp(8.5rem,11vw,10.5rem)}.project-overview-stage{column-gap:var(--layout-gap);row-gap:var(--space-12);padding:var(--section-lg) var(--page-pad-x) var(--space-16);background:var(--background);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start!important;height:auto!important;display:grid!important}.project-overview-stage>.project-hero-meta{mix-blend-mode:difference;color:var(--chrome-fg);grid-area:1/2/auto/12;padding:0;display:block;z-index:40!important;position:relative!important;top:auto!important;transform:none!important}.project-overview-stage .project-hero-title,.project-overview-stage .project-hero-title>div{height:auto!important;position:relative!important}.project-overview-stage .project-hero-title :is(h1,h2){color:inherit;letter-spacing:-.075em;overflow-wrap:normal;max-width:none;margin-left:-.054em;font-size:clamp(4rem,8.5vw,9rem);line-height:.95}.project-overview-stage .project-hero-year,.project-overview-stage .project-hero-meta>.col-2,.project-overview-stage .project-hero-meta>.col-3{display:none!important}.project-overview-stage>.project-hero-media{aspect-ratio:3/2;margin-top:calc(-1 * var(--space-16));grid-area:2/5/auto/12;left:auto;width:100%!important;height:auto!important}.project-overview-stage:not(.project-overview-preview)>.project-hero-media{transform:translateX(var(--media-handoff-x,0px))!important}.project-overview-details{min-width:0;padding-top:var(--space-12);grid-area:2/2/auto/5}.project-overview-details .project-metadata-grid{gap:var(--space-8);flex-direction:column;min-height:0;padding:0;display:flex;margin-bottom:0!important}.project-overview-details .project-metadata-link{order:5;margin-bottom:0}.project-overview-details .project-metadata-list{gap:0!important}.project-overview-details .labeled-list{gap:var(--space-4)}@media (min-width:861px){.project-overview-stage{box-sizing:border-box;min-height:calc(100svh - 2 * var(--page-pad-block));grid-template-rows:minmax(0,1fr) auto minmax(0,1fr);row-gap:0;padding-block:0}.project-overview-stage>.project-hero-meta{margin-bottom:calc(-1 * var(--space-16));align-self:end}.project-overview-stage>.project-hero-media{align-self:end;margin-top:0}.project-overview-details{align-self:end;align-items:flex-start;margin-top:0;padding-top:0;display:flex}}@media (max-width:860px){.project-overview-stage{row-gap:var(--space-6)}.project-overview-stage>.project-hero-media{margin-top:0}.project-overview-details{padding-top:0}}.project-metadata-link{margin-bottom:var(--page-pad-x);grid-column:2/12}.project-section-sidebar{top:50%;left:var(--page-pad-x);z-index:90;flex-direction:column;gap:0;display:flex;position:fixed;transform:translateY(-50%)}.project-section-sidebar-link{width:1.5rem;height:.875rem;color:var(--text-secondary);cursor:pointer;transition:transform var(--motion-link-fade) var(--ease-standard);background:0 0;border:0;align-items:center;padding:0;display:flex;position:relative}.project-section-sidebar-link.is-active~.project-section-sidebar-link{transform:translateY(.3rem)}.project-section-sidebar-link:has(~.project-section-sidebar-link.is-active){transform:translateY(-.3rem)}.project-section-sidebar-line{background:color-mix(in srgb, var(--text-primary) 30%, transparent);width:100%;height:1px;transition:background var(--motion-link-fade) var(--ease-standard);display:block;position:relative}.project-section-sidebar-line:after{content:"";inset-inline:0;box-sizing:border-box;border:1px solid var(--text-primary);opacity:0;height:1px;transition:height var(--motion-link-fade) var(--ease-standard), opacity var(--motion-link-fade) var(--ease-standard);background:0 0;position:absolute;top:50%;transform:translateY(-50%)}.project-section-sidebar-link:hover .project-section-sidebar-line{background:var(--text-primary)}.project-section-sidebar-link.is-active .project-section-sidebar-line{background:0 0}.project-section-sidebar-link.is-active .project-section-sidebar-line:after{opacity:1;height:1.125rem}.project-section-sidebar-label{left:calc(100% + var(--space-2));color:var(--text-primary);font-family:var(--font-inter);font-size:var(--text-caption-sans);line-height:var(--leading-caption);letter-spacing:var(--tracking-caption-sans);font-weight:var(--weight-caption-sans);text-transform:uppercase;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--motion-link-fade) var(--ease-standard);position:absolute;top:50%;transform:translateY(-50%)}.project-section-sidebar-link:hover .project-section-sidebar-label,.project-section-sidebar-link:focus-visible .project-section-sidebar-label{opacity:1}.project-hero-stage{flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex;position:relative}.project-hero-stage-detail{height:var(--hero-stage-height-compact)}.project-hero-meta{z-index:20;width:100%;position:absolute;top:50%;transform:translateY(-50%)}.project-hero-media{left:var(--hero-center-offset);width:var(--hero-media-width);height:var(--hero-media-height);max-width:100%;max-height:100%;position:relative}@media (min-width:641px) and (max-width:860px){.project-metadata-grid{row-gap:var(--space-8);min-height:auto}.project-metadata-link{grid-column:2/12}}@media (max-width:860px){.project-section-sidebar{display:none}}@media (max-width:640px){.morphing-canvas{padding-top:var(--space-4)!important}.project-transition-proxy{padding-top:calc(var(--page-pad-block) + var(--space-4))!important;padding-bottom:0!important}.project-hero-stage{row-gap:var(--space-2);padding-inline:var(--page-pad-x);will-change:height;grid-template-rows:3.5rem minmax(0,1fr) auto!important;grid-template-columns:minmax(0,1fr)!important;align-content:center!important;align-items:stretch!important;height:min(85svh,900px)!important;display:grid!important}.project-hero-stage-detail{grid-template-rows:3.5rem auto!important;height:auto!important}.project-hero-stage-detail>.project-hero-media{aspect-ratio:1440/990;height:auto!important}.project-hero-stage-detail:after{display:none}.project-hero-meta{grid-row:1;column-gap:var(--space-4)!important;pointer-events:none!important;grid-template-rows:3.5rem!important;grid-template-columns:minmax(0,1fr) auto!important;padding:0!important;display:grid!important;position:static!important;transform:none!important}.project-hero-meta>.col-2,.project-hero-meta>.col-3{display:none}.project-hero-meta .project-hero-title{width:auto;grid-area:1/1/auto/2!important;height:3.5rem!important}.project-hero-meta .project-hero-year{width:auto;min-width:5rem;grid-area:1/2/auto/3!important;justify-content:flex-end!important;height:3.5rem!important}.project-hero-year>div{padding-right:.2em!important;left:auto!important;right:0!important}.project-hero-media{contain:paint;grid-area:1/1;overflow:hidden;width:100%!important;max-width:100%!important;height:100%!important;max-height:100%!important}.project-hero-media picture{display:block;position:absolute;inset:0;transform:translateZ(0)}.project-hero-artwork{height:100%!important}.project-hero-stage-detail>.project-hero-media{transform:none!important}.project-hero-media img,.project-hero-media video{backface-visibility:hidden;transform:translateZ(0);object-fit:contain!important;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;position:absolute!important;inset:0!important}.project-hero-stage>.project-hero-media{grid-row:2}.project-hero-stage:after{content:"";height:calc(var(--space-2) + 1.3125rem);grid-area:3/1}.project-metadata-grid{gap:var(--space-6)!important;min-height:auto!important;margin-bottom:var(--space-12)!important;flex-direction:column!important;display:flex!important}.project-metadata-grid>div{width:100%}.project-metadata-grid .labeled-list{gap:var(--space-2)}.project-metadata-list{flex-wrap:wrap;align-items:baseline;flex-direction:row!important;gap:0!important}.project-metadata-list>.caption-sans{align-items:baseline;line-height:1.4;display:inline-flex}.project-metadata-list>.caption-sans:not(:last-child):after{content:"·";margin-inline:var(--space-2);color:var(--text-secondary)}}@media (min-width:641px){.project-hero-title h1,.project-hero-title h2{max-width:max(0px, calc(50vw - clamp(250px, 31vw, 460px) - var(--page-pad-x) - 1rem));white-space:normal;overflow-wrap:anywhere}}@media (min-width:641px) and (max-width:760px){.project-hero-year .h2-serif-italic{font-size:1.25rem}}@media (max-width:640px){.project-overview-stage{column-gap:var(--layout-gap);padding-top:var(--space-12);grid-template-rows:auto auto auto!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;height:auto!important}.project-overview-stage>.project-hero-meta{grid-area:1/1/auto/-1;display:block!important;position:relative!important}.project-overview-stage .project-hero-title{height:auto!important}.project-overview-stage .project-hero-title h1{font-size:clamp(3rem,13vw,5rem)}.project-overview-stage>.project-hero-media{aspect-ratio:3/2;grid-area:2/1/auto/-1;height:auto!important}.project-overview-stage>.project-overview-details{grid-area:3/1/auto/-1}.project-overview-stage:after{display:none}}
.block-grid{grid-template-columns:repeat(var(--cols,4), minmax(0, 1fr));gap:var(--cell-gap,var(--gap-tight));width:100%;display:grid}.block-grid-stretch{align-items:stretch}.block-cell{grid-column:var(--col-start,span var(--col-span,1)) / span var(--col-span,1)}.case-study-image-grid-3{--cols:3}.case-study-image-cell{flex-direction:column;width:100%;display:flex}.case-study-image-cell-empty{pointer-events:none;width:100%}.case-study-text-grid{width:100%;margin-top:var(--page-pad-y);flex-direction:column;display:flex}.case-study-text-cell{gap:var(--space-2);flex-direction:column;width:100%;display:flex}.case-study-label-row{margin-bottom:var(--space-2)}.case-study-content-row{align-items:flex-start}.case-study-stats-grid{column-gap:var(--grid-gap);row-gap:var(--space-12)}.feature-tabs-image-col{width:100%;position:relative}.feature-tabs-content-col{height:100%;min-height:100%;padding:var(--gap-tight) 0 var(--gap-tight) var(--gap-tight);flex-direction:column;grid-column:3/span 2;justify-content:space-between;display:flex}.feature-tabs-desktop-list{width:100%}.feature-tabs-tablist{flex-direction:column;width:100%;display:flex}.feature-tabs-description{column-gap:var(--gap-tight);margin-top:var(--block-gap);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.feature-tabs-description-stack{grid-column:1/2;min-height:4.5rem;display:grid}.feature-tabs-mobile-controller,.feature-tabs-mobile-image-nav{display:none}.feature-tabs-description-sizer{visibility:hidden;pointer-events:none;grid-area:1/1;display:grid}.feature-tabs-description-sizer>*{grid-area:1/1}.sticky-section-nav-title{width:fit-content;display:inline-block;position:relative}.case-study-tab-nav-item{align-items:baseline;gap:var(--gap-tight);padding:var(--space-2) 0;display:flex}.case-study-tab-nav-number{flex:0 0 1.4em}.feature-tabs-tab-title{width:fit-content;position:relative}@media (max-width:860px){.case-study-image-grid-4{--cols:2}.case-study-image-grid-4>.case-study-wide-media,.feature-tabs-image-col,.feature-tabs-content-col{grid-column:1/-1}}@media (max-width:640px){.case-study-blocks-container{padding-top:var(--space-4)}.case-study-stats-grid,.case-study-label-row,.case-study-content-row,.case-study-image-grid-2,.case-study-image-grid-3{grid-template-columns:1fr}.case-study-image-grid-2>*,.case-study-image-grid-3>*{grid-column:1/-1}.case-study-label-row{row-gap:var(--space-1);margin-bottom:var(--space-1)}.case-study-content-row{row-gap:var(--space-6)}.feature-tabs-content-col{padding:var(--space-4) 0 0}.feature-tabs-desktop-list{display:none}.feature-tabs-mobile-controller{width:100%;display:block}.feature-tabs-mobile-image-nav{z-index:2;display:flex;position:absolute;inset:0}.feature-tabs-mobile-image-nav button{cursor:pointer;background:0 0;border:0;width:50%}.feature-tabs-mobile-image-nav button:disabled{cursor:default}.feature-tabs-mobile-image-nav button:focus-visible{outline:2px solid var(--text-primary);outline-offset:-2px}.feature-tabs-mobile-dashes{align-items:center;gap:var(--space-2);width:100%;display:flex}.feature-tabs-mobile-dash{flex:1 1 0;height:3px;padding:0;position:relative}.feature-tabs-mobile-dash:before{content:"";position:absolute;inset:-12px -3px}.feature-tabs-mobile-dash-track,.feature-tabs-mobile-dash-fill{border-radius:2px;height:100%;display:block}.feature-tabs-mobile-dash-track{background-color:var(--border);width:100%;overflow:hidden}.feature-tabs-mobile-dash-fill{transform-origin:0;background-color:var(--text-primary);width:100%}.feature-tabs-mobile-title-row{align-items:center;gap:var(--space-2);margin-top:var(--space-6);display:flex}.feature-tabs-mobile-title{flex:1;min-width:0}.feature-tabs-mobile-active{align-items:baseline;gap:var(--space-2);width:100%;display:flex;overflow:hidden}.feature-tabs-mobile-arrows{gap:var(--space-1);flex:none;display:flex}.feature-tabs-mobile-arrows button{width:2.5rem;height:2.5rem;color:var(--text-primary);font:1.5rem var(--font-inter);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.feature-tabs-mobile-arrows button:disabled{color:var(--text-secondary);opacity:.4;cursor:default}.feature-tabs-mobile-arrows button:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.feature-tabs-mobile-active .h3-serif-italic{color:var(--text-secondary)}.feature-tabs-description{margin-top:var(--space-2);display:block}.feature-tabs-description>div{min-height:0}.case-study-statement-content{text-align:left!important;align-items:flex-start!important}.case-study-statement-inner{margin-left:0!important;margin-right:0!important}}.case-study-next-project-section{width:100%;height:200dvh;position:relative}.case-study-next-project-mobile{height:auto}.case-study-next-project-mobile .case-study-next-project-sticky{height:100svh;padding-top:calc(2 * var(--page-pad-block));justify-content:flex-start;position:relative}.case-study-next-project-mobile .project-hero-stage{height:calc(100svh - 3 * var(--page-pad-block))!important}.case-study-next-project-mobile .case-study-next-project-caption{margin-top:var(--space-4)}.case-study-next-project-sticky{background-color:var(--background);width:100%;height:100dvh;color:var(--text-primary);flex-direction:column;justify-content:center;align-items:center;display:flex;position:sticky;top:0;overflow:hidden}.case-study-next-project-caption{z-index:2;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;top:calc(50% + clamp(240px,32vh,380px));left:0;right:0}.case-study-next-project-word{z-index:1;white-space:nowrap;color:var(--text-primary);pointer-events:none;will-change:transform;position:absolute;top:50%;transform:translateY(-50%)}.case-study-next-project-word.is-lead{right:calc(50% + var(--next-media-width,var(--hero-media-width)) / 2 + var(--space-12))}.case-study-next-project-word.is-trail{left:calc(50% + var(--next-media-width,var(--hero-media-width)) / 2 + var(--space-12))}.case-study-next-project-reduced-motion{height:100dvh}.case-study-next-project-reduced-motion .case-study-next-project-sticky{position:relative}.case-study-sticky-sections-wrapper{width:100%;position:relative}.sticky-sections-layout{align-items:flex-start;position:relative}.sticky-sections-tabs{min-width:0;margin-bottom:var(--space-8)}.sticky-sections-tabs nav{gap:var(--space-6);display:flex;overflow-x:auto}.sticky-sections-tabs .sticky-section-nav-item{gap:var(--space-2);font-family:var(--font-inter);white-space:nowrap;border:0;flex:none;padding:0;position:relative}.sticky-sections-tabs .sticky-section-nav-item.is-active:after{content:"";pointer-events:none;background:currentColor;height:1px;position:absolute;bottom:0;left:0;right:0}.sticky-sections-tabs .sticky-section-nav-item:focus-visible{outline:2px solid var(--text-primary);outline-offset:-2px}.sticky-sections-tabs .case-study-tab-nav-number{flex:none}.sticky-sections-stack,.sticky-section-block-item{width:100%}.sticky-section-block-grid{column-gap:var(--gap-tight);row-gap:var(--page-pad-x);grid-template-columns:1fr 2fr;align-items:stretch;width:100%;display:grid}.sticky-section-img-col2,.sticky-section-title-col{grid-column:1/2;width:100%}.sticky-section-img-col34,.sticky-section-desc-col{grid-column:2/3;width:100%}.sticky-section-img-col34{height:100%}.sticky-section-title-col{padding-right:var(--grid-gap)}@media (max-width:860px){.sticky-section-block-grid{row-gap:var(--space-6);grid-template-columns:1fr}.sticky-section-title-col,.sticky-section-desc-col,.sticky-section-img-col2,.sticky-section-img-col34{grid-column:1/-1;padding-right:0}}.case-study-next-project-section:not(.case-study-next-project-mobile) .project-hero-stage{background:var(--background)!important}.case-study-blocks-container{padding-top:var(--space-12);flex-direction:column;display:flex}.case-study-block{min-width:0}.case-study-block+.case-study-block{margin-top:var(--section-md)}.case-study-block+.case-study-block[data-spacing=tight]{margin-top:var(--gap-tight)}@media (max-width:640px){.case-study-blocks-container{padding-top:var(--space-4)}}
button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;outline:none}#cursor{--cursor-size:18px;background-color:var(--accent);border-radius:calc(var(--cursor-size) / 2);height:var(--cursor-size);width:var(--cursor-size);z-index:10005;opacity:0;transition:width var(--cursor-grow-duration) var(--cursor-grow-ease), height var(--cursor-grow-duration) var(--cursor-grow-ease), border-radius var(--cursor-grow-duration) var(--cursor-grow-ease), transform var(--cursor-scale-duration,var(--cursor-grow-duration)) var(--cursor-grow-ease), opacity var(--motion-cursor-fade) var(--ease-standard), background-color var(--motion-theme) var(--ease-standard), box-shadow var(--motion-theme) var(--ease-standard);pointer-events:none;transform-origin:50%;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0;transform:translate(-50%,-50%)scale(.6)}#cursor.active{opacity:1;transform:translate(-50%,-50%)scale(1)}#cursor.hover{--cursor-size:24px;box-shadow:inset 0 0 0 .5px var(--accent);background-color:#0000;transform:translate(-50%,-50%)scale(2.4)}#cursor.magnet{transition:width var(--motion-cursor-morph) var(--ease-cursor-morph), height var(--motion-cursor-morph) var(--ease-cursor-morph), border-radius var(--motion-cursor-morph) var(--ease-cursor-morph), transform var(--motion-cursor-move) var(--ease-standard), opacity var(--motion-cursor-fade) var(--ease-standard), background-color var(--motion-theme) var(--ease-standard), box-shadow var(--motion-theme) var(--ease-standard)}#cursor.lock{transition:width var(--motion-cursor-morph) var(--ease-cursor-morph), height var(--motion-cursor-morph) var(--ease-cursor-morph), border-radius var(--motion-cursor-morph) var(--ease-cursor-morph), transform var(--motion-cursor-move) var(--ease-standard), opacity var(--motion-cursor-fade) var(--ease-standard), background-color var(--motion-theme) var(--ease-standard), box-shadow var(--motion-theme) var(--ease-standard);width:var(--lock-w,18px);height:var(--lock-h,18px);border-radius:calc(var(--lock-h,18px) / 2);transform:translate(-50%,-50%)scale(1)}#cursor.active.lock.is-clicking{transform:translate(-50%,-50%)scale(.94)}#cursor.is-clicking{--cursor-scale-duration:var(--motion-cursor-press);transform:translate(-50%,-50%)scale(.48)}#cursor.active.is-clicking,#cursor.see-project.is-clicking{transform:translate(-50%,-50%)scale(.8)}#cursor.hover.is-clicking{transform:translate(-50%,-50%)scale(1.92)}#cursor.see-project{--cursor-size:136px;background-color:var(--accent);box-shadow:none;transform:translate(-50%,-50%)scale(1)}#cursor.see-project.see-nav,#cursor.see-project.see-icon{--cursor-size:72px}#cursor-label-layer{transition:scale var(--cursor-grow-duration) var(--cursor-grow-ease);z-index:10006;pointer-events:none;justify-content:center;align-items:center;width:0;height:0;display:flex;position:fixed;top:0;left:0}#cursor.see-project.is-clicking~#cursor-label-layer{transition-duration:var(--motion-cursor-press);scale:.8}#cursor:not(.active)~#cursor-label-layer{opacity:0}#cursor.see-project.see-nav~#cursor-label-layer .cursor-label{letter-spacing:0;font-size:1.45rem;font-weight:400}#cursor.see-project.see-icon~#cursor-label-layer .cursor-label{font-variation-settings:"wght" 200;letter-spacing:0;font-size:2.75rem;font-weight:200;line-height:1}.cursor-label-icon svg{width:.6em;height:.6em;display:block;overflow:visible}.cursor-label-icon .icon-bar{fill:none;stroke:currentColor;stroke-width:1.4px;vector-effect:non-scaling-stroke}.cursor-label-icon svg,.cursor-label-icon .icon-cross{transition:transform var(--motion-cursor-icon) var(--ease-draw)}.cursor-label-icon .icon-cross{transform-box:fill-box;transform-origin:50%}.cursor-label-icon[data-icon=minus] svg{transform:rotate(180deg)}.cursor-label-icon[data-icon=minus] .icon-cross{transform:scaleY(0)}@media (prefers-reduced-motion:reduce){.cursor-label-icon svg,.cursor-label-icon .icon-cross{transition:none}}.cursor-label-char{white-space:pre;display:inline-block}.cursor-label-line{white-space:nowrap;will-change:transform;grid-area:1/1;align-self:center;display:block}.cursor-label{opacity:0;transition:opacity var(--motion-cursor-fade) var(--ease-standard), transform var(--motion-cursor-fade) var(--ease-standard);font-family:var(--font-inter);letter-spacing:.04em;text-align:center;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;color:var(--fg-on-light);flex:none;justify-items:center;margin:-.35em -.1em;padding:.35em .1em;font-size:.8125rem;font-weight:500;line-height:1;display:grid;overflow:hidden;transform:scale(.75)}#cursor.see-project~#cursor-label-layer .cursor-label{opacity:1;transition-delay:var(--motion-cursor-label-delay), var(--motion-cursor-label-delay), var(--motion-instant);transform:scale(1)}@media (pointer:fine) and (min-width:641px){.custom-cursor-ready,.custom-cursor-ready *,.custom-cursor-ready :before,.custom-cursor-ready :after{cursor:none!important}}@media (max-width:640px),(pointer:coarse){*,:before,:after,html,body{cursor:auto!important}#cursor,#cursor-label-layer{display:none!important}}
.dog-pet{left:0;bottom:calc(3rem + 16px + env(safe-area-inset-bottom));z-index:9998;pointer-events:none;-webkit-user-select:none;user-select:none;width:128px;height:96px;position:fixed}.dog-pet-shadow{fill:#292018;opacity:.18;pointer-events:none;width:80px;height:16px;position:absolute;bottom:-8px;left:24px}.dog-pet-pose{visibility:hidden;pointer-events:none;position:absolute;inset:0}.dog-pet[data-state=happy] .dog-pet-happy,.dog-pet[data-state=standing] .dog-pet-standing,.dog-pet[data-state=walking] .dog-pet-walking,.dog-pet[data-state=eating] .dog-pet-eating,.dog-pet[data-state=sleeping] .dog-pet-sleeping,.dog-pet[data-state=music] .dog-pet-music{visibility:inherit}.dog-pet-music img{filter:saturate(.705)brightness(.964);width:104px;bottom:-9.1px;left:12px}.dog-pet img{max-width:none;height:auto;image-rendering:pixelated;position:absolute}.dog-pet-happy img{width:120px;bottom:-16.25px;left:4px}.dog-pet-walking img{filter:saturate(.922)brightness(1.013);width:136px;bottom:-27.2px;left:-4px}.dog-pet-sleeping img{filter:saturate(.965)brightness(.963);width:128px;bottom:-30.4px;left:0}.dog-pet-standing img{filter:saturate(.794)brightness(.989);width:118px;bottom:-16.225px;left:5px}.dog-pet-eating img{filter:saturate(.84)brightness(1.032);width:128px;bottom:-19.2px;left:0}.dog-pet-hover-area{pointer-events:auto;position:absolute;inset:-44px -17px 0}.dog-pet-trigger{cursor:pointer;pointer-events:auto;background:0 0;border:0;border-radius:12px;position:absolute;inset:0}.dog-pet-trigger:focus-visible{outline:1px solid var(--text-primary);outline-offset:3px}.dog-pet-menu{gap:var(--space-2);width:max-content;padding-bottom:var(--space-2);color:var(--text-primary);visibility:hidden;pointer-events:none;display:flex;position:absolute;bottom:100%;left:0}.dog-pet[data-menu-open=true] .dog-pet-menu{visibility:inherit;pointer-events:auto}.dog-pet-menu button{border:1px solid color-mix(in srgb, var(--text-primary) 16%, transparent);background:var(--background);width:36px;height:36px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1.4;display:flex;position:relative;box-shadow:0 2px 8px #0000000d}.dog-pet-menu button:before{content:"";position:absolute;inset:-1px -4px}.dog-pet-menu button:hover,.dog-pet-menu button:focus-visible,.dog-pet-menu button[aria-pressed=true]{background:color-mix(in srgb, var(--text-primary) 7%, var(--background))}.dog-pet-mode{border:1px solid color-mix(in srgb, var(--text-primary) 16%, transparent);background:var(--background);border-radius:18px;height:36px;display:flex;overflow:hidden;box-shadow:0 2px 8px #0000000d}.dog-pet-menu .dog-pet-mode button{height:100%;box-shadow:none;background:0 0;border:0;border-radius:0}.dog-pet-menu .dog-pet-mode button:before{inset:-1px 0}.dog-pet-menu .dog-pet-mode button+button{border-left:1px solid color-mix(in srgb, var(--text-primary) 16%, transparent)}.dog-pet-menu .dog-pet-mode button:hover,.dog-pet-menu .dog-pet-mode button:focus-visible{background:color-mix(in srgb, var(--text-primary) 7%, var(--background))}.dog-pet-menu .dog-pet-mode button[aria-pressed=true]{background:var(--text-primary);color:var(--background)}.dog-pet-action-icon{fill:currentColor;flex-shrink:0;width:24px;height:24px}.dog-pet-treat,.dog-pet-speech{width:max-content;padding:var(--space-2);border:1px solid color-mix(in srgb, var(--text-primary) 16%, transparent);background:var(--background);color:var(--text-primary);pointer-events:none;transform-origin:50% 100%;animation:.18s steps(4,end) both dog-bubble-pop;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.dog-pet-speech svg{max-width:calc(100vw - 82px);height:auto}.dog-pet-letter{animation:1ms step-end both dog-letter-type;animation-delay:calc(.18s + var(--i) * 40ms)}@keyframes dog-bubble-pop{0%{translate:0 6px;scale:1 0}to{translate:0;scale:1}}.dog-pet-treat[data-leaving],.dog-pet-speech[data-leaving]{animation:.14s steps(3,end) both dog-bubble-out}.dog-pet-speech[data-leaving] .dog-pet-letter{animation:none}@keyframes dog-bubble-out{0%{translate:0;scale:1}to{translate:0 6px;scale:1 0}}@keyframes dog-letter-type{0%{opacity:0}to{opacity:1}}.dog-pet-sleep-particles,.dog-pet-music-particles{width:64px;height:80px;color:var(--text-primary);fill:currentColor;pointer-events:none;position:absolute;bottom:16px;left:30px;overflow:visible}.dog-pet-music-particles{color:var(--pink-500);left:100px}.dog-pet-sleep-z,.dog-pet-music-note{--z-drift:18px;animation:3.6s steps(18,end) infinite dog-sleep-float}.dog-pet-sleep-z:nth-child(2),.dog-pet-music-note:nth-child(2){--z-drift:8px;animation-delay:-1.2s}.dog-pet-sleep-z:nth-child(3),.dog-pet-music-note:nth-child(3){--z-drift:26px;animation-delay:-2.4s}@keyframes dog-sleep-float{0%{opacity:0;transform:translate(8px,68px)scale(2)}15%{opacity:.6}70%{opacity:.45}to{opacity:0;transform:translate(var(--z-drift), 10px) scale(3)}}@media (prefers-reduced-motion:reduce){.dog-pet-treat,.dog-pet-speech,.dog-pet-treat[data-leaving],.dog-pet-speech[data-leaving],.dog-pet-letter{animation:none}.dog-pet-sleep-z,.dog-pet-music-note{opacity:.5;animation:none;transform:translate(8px,68px)scale(2)}.dog-pet-sleep-z:nth-child(2),.dog-pet-music-note:nth-child(2){transform:translate(16px,48px)scale(2.5)}.dog-pet-sleep-z:nth-child(3),.dog-pet-music-note:nth-child(3){transform:translate(26px,24px)scale(3)}}

