:root{--color-background:#0a0a0a;--color-foreground:#f1f1ec;--color-muted:#8a8a84;--color-subtle:#f1f1ec1f;--color-surface:#111;--font-display:"Movatif", "Helvetica Neue", Helvetica, Arial, sans-serif;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-editorial:cubic-bezier(.77, 0, .18, 1);--duration-fast:.25s;--duration-base:.55s;--duration-slow:.9s;--panel-width:clamp(19.5rem, 26vw, 27rem);--page-gutter:clamp(1.125rem, 3.5vw, 3rem)}
*,:before,:after{box-sizing:border-box}html{background:var(--color-background);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:geometricprecision;-webkit-font-smoothing:antialiased;min-width:20rem;overflow-x:clip}body{background:var(--color-background);color:var(--color-foreground);font-family:var(--font-display);min-width:20rem;margin:0;overflow-x:clip}button,a{color:inherit;font:inherit}button{border:0}a{text-decoration:none}::selection{background:var(--color-foreground);color:var(--color-background)}main,.portfolio-experience{min-height:100vh}@supports (min-height:100svh){main,.portfolio-experience{min-height:100svh}}.portfolio-experience{background:var(--color-background);isolation:isolate;padding:max(var(--page-gutter), env(safe-area-inset-top)) max(var(--page-gutter), env(safe-area-inset-right)) max(var(--page-gutter), env(safe-area-inset-bottom)) max(var(--page-gutter), env(safe-area-inset-left));place-items:center;display:grid;position:relative;overflow:hidden}.intro-numbers-screen{background:var(--color-background);color:var(--color-foreground);pointer-events:none;z-index:30;place-items:center;display:grid;position:absolute;inset:0}.intro-number-value{font-variant-numeric:tabular-nums;letter-spacing:.12em;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:500;line-height:1}.identity-panel{color:var(--color-foreground);letter-spacing:.055em;text-transform:uppercase;width:var(--panel-width);z-index:2;font-size:clamp(.7rem,.61rem + .28vw,.87rem);font-weight:500;line-height:1.25;position:relative;transform:translateY(-1.5vh)}.identity-panel p,.identity-panel h1{font:inherit;margin:0}.identity-row{align-items:center;display:grid}.identity-name-row{grid-template-columns:minmax(0,1fr) auto}.identity-name{white-space:nowrap}.identity-role{white-space:nowrap;margin-top:.34rem!important}.identity-meta-row{grid-template-columns:1fr auto 1fr;margin-top:.34rem}.identity-dash{color:var(--color-muted);justify-self:center}.identity-selected{text-align:right;justify-self:end}.current-date{font-variant-numeric:tabular-nums;min-width:4.25ch;display:inline-block}.looped-typing{display:inline-grid;position:relative}.looped-typing:before,.looped-typing-animated{white-space:pre;grid-area:1/1}.looped-typing:before{content:attr(data-text);visibility:hidden}.looped-typing-character{will-change:opacity;display:inline-block}.reveal-mask{overflow:hidden}.identity-asterisk{place-items:center;width:1.8rem;height:1.8rem;margin-inline-start:1rem;display:grid}.identity-clown{object-fit:contain;width:100%;height:100%;transform:scale(1.55)}.navigation-mask{margin:clamp(4.5rem,10vh,7.25rem) -.75rem -.75rem}.primary-navigation{isolation:isolate;grid-template-columns:1fr 1fr;align-items:center;display:grid}.nav-action{cursor:pointer;text-transform:uppercase;min-height:2.75rem;transition:color var(--duration-base) var(--ease-out-expo);will-change:transform;background:0 0;align-items:center;padding:.75rem;display:inline-flex;position:relative}.scramble-text{white-space:pre;display:inline-block}.works-link{justify-self:start;gap:.62rem}.works-link:after{content:"";transform-origin:100%;height:1px;transition:transform var(--duration-base) var(--ease-editorial);background:currentColor;width:calc(100% - 1.5rem);position:absolute;bottom:.6rem;left:.75rem;transform:scaleX(0)}.works-index{color:var(--color-muted);opacity:0;transition:opacity var(--duration-base) var(--ease-out-expo), transform var(--duration-base) var(--ease-out-expo);font-size:.62rem;transform:translate(-.25rem)}.works-link:hover:after,.works-link:focus-visible:after{transform-origin:0;transform:scaleX(1)}.works-link:hover .works-index,.works-link:focus-visible .works-index{opacity:1;transform:translate(0)}.products-action{color:var(--color-muted);cursor:default;justify-content:flex-end;justify-self:end;gap:.62rem;min-width:10.5rem}.products-action:after{content:"";transform-origin:0;height:1px;transition:transform var(--duration-base) var(--ease-editorial);background:currentColor;width:calc(100% - 1.5rem);position:absolute;bottom:.6rem;right:.75rem;transform:scaleX(0)}.products-action:hover,.products-action:focus-visible{color:var(--color-foreground)}.products-action:hover:after,.products-action:focus-visible:after{transform-origin:100%;transform:scaleX(1)}.products-index{color:var(--color-muted);opacity:0;transition:opacity var(--duration-base) var(--ease-out-expo), transform var(--duration-base) var(--ease-out-expo);order:-1;font-size:.62rem;transform:translate(.25rem)}.products-action:hover .products-index,.products-action:focus-visible .products-index{opacity:1;transform:translate(0)}.products-label{text-align:right;display:grid;overflow:hidden}.products-label>span{grid-area:1/1}.nav-action:focus-visible{outline:1px solid var(--color-foreground);outline-offset:.18rem}.nav-action:active{opacity:.68}.ambient-backdrop{pointer-events:none;z-index:-1;position:absolute;inset:0;overflow:hidden}.ambient-backdrop:before{content:"";background:linear-gradient(90deg,#0000 calc(50% - .5px),#f1f1ec09 50%,#0000 calc(50% + .5px)),linear-gradient(#0000 calc(50% - .5px),#f1f1ec06 50%,#0000 calc(50% + .5px));position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 4%,#000 28% 72%,#0000 96%);mask-image:linear-gradient(#0000 4%,#000 28% 72%,#0000 96%)}.ambient-frame{will-change:opacity, transform;border:1px solid #f1f1ec29;position:absolute}.ambient-frame:before,.ambient-frame:after{content:"";position:absolute}.ambient-frame-primary{background:linear-gradient(108deg, transparent 0 37%, #f1f1ec21 37.2% 37.45%, transparent 37.65% 100%), var(--color-surface);clip-path:polygon(0 9%,92% 0,100% 90%,8% 100%);width:clamp(13rem,28vw,30rem);height:clamp(18rem,54vh,36rem);top:50%;left:clamp(-12rem,-9vw,-4rem);transform:translateY(-50%)}.ambient-frame-primary:before{border:1px solid #f1f1ec30;inset:9% 12%;transform:rotate(-7deg)}.ambient-frame-primary:after{background:#f1f1ec1f;width:1px;height:22%;top:17%;right:18%}.ambient-frame-secondary{background:repeating-linear-gradient(0deg, transparent 0 2.7rem, #f1f1ec0d 2.7rem calc(2.7rem + 1px)), var(--color-surface);clip-path:polygon(7% 0,100% 12%,91% 100%,0 88%);width:clamp(14rem,30vw,32rem);height:clamp(16rem,42vh,29rem);bottom:clamp(-8rem,-10vh,-3rem);right:clamp(-10rem,-6vw,-2rem)}.ambient-frame-secondary:before{border-left:1px solid #f1f1ec24;border-right:1px solid #f1f1ec24;inset:0 29%;transform:rotate(11deg)}.ambient-signal{bottom:max(1.35rem, env(safe-area-inset-bottom));left:max(1.35rem, env(safe-area-inset-left));align-items:center;gap:.32rem;display:flex;position:absolute}.ambient-signal span{background:var(--color-foreground);width:2px;height:2px;display:block}.ambient-signal span:nth-child(2){opacity:.5}.ambient-signal span:nth-child(3){opacity:.2}.exit-wipe{background:var(--color-foreground);pointer-events:none;transform-origin:100%;z-index:10;position:absolute;inset:0}@media (max-width:36rem){:root{--panel-width:100%}.portfolio-experience{padding-inline:max(clamp(1.125rem, 5vw, 1.5rem), env(safe-area-inset-left)) max(clamp(1.125rem, 5vw, 1.5rem), env(safe-area-inset-right))}.identity-panel{letter-spacing:.042em;font-size:clamp(.68rem,2.9vw,.79rem)}.identity-asterisk{margin-inline-start:.75rem}.navigation-mask{margin-top:clamp(4rem,12vh,6rem)}.ambient-frame-primary{width:68vw;left:-48%;opacity:.055!important}.ambient-frame-secondary{width:72vw;right:-46%;opacity:.025!important}}@media (max-width:22rem){.identity-panel{letter-spacing:.025em;font-size:.64rem}.products-action{min-width:9.25rem}}@media (max-height:34rem) and (orientation:landscape){.portfolio-experience{padding-block:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-bottom))}.identity-panel{transform:none}.navigation-mask{margin-top:clamp(2.5rem,11vh,4rem)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.ambient-frame{transform:none!important}.exit-wipe{display:none}}@media (forced-colors:active){.ambient-backdrop{display:none}.nav-action:focus-visible{outline:2px solid canvastext}}
