@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@font-face{font-family:Supreme;src:url(/fonts/supreme-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Supreme;src:url(/fonts/supreme-500-normal.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Supreme;src:url(/fonts/supreme-700-normal.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Supreme;src:url(/fonts/supreme-800-normal.woff2)format("woff2");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Martian;src:url(/fonts/martian-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Supreme Fallback;src:local(Arial);size-adjust:101%;ascent-override:92%;descent-override:24%}:root{--c-bg:#eef0f2;--c-fg:#0d1014;--c-muted:#565e68;--c-faint:#8a929c;--c-line:#0d10141f;--c-line-strong:#0d101447;--c-accent:#ffb000;--c-curtain:var(--c-fg);--c-focus:#0d1014;--f-display:"Supreme", "Supreme Fallback", system-ui, sans-serif;--f-body:"Supreme", "Supreme Fallback", system-ui, sans-serif;--f-data:"Martian", ui-monospace, "SFMono-Regular", Menlo, monospace;--t-mega:clamp(3.6rem, .6rem + 12.4vw, 13.5rem);--t-xl:clamp(2.4rem, 1.2rem + 4.6vw, 5.75rem);--t-l:clamp(1.6rem, 1.15rem + 1.9vw, 2.875rem);--t-m:clamp(1.2rem, 1.05rem + .6vw, 1.6rem);--t-body:clamp(1rem, .95rem + .2vw, 1.125rem);--t-s:.875rem;--t-xs:.75rem;--u:clamp(.5rem, .35rem + .6vw, 1rem);--gutter:clamp(1rem, .6rem + 1.6vw, 2.5rem);--cols:12;--header-h:3.5rem;--radius:0px;--radius-mark:999px;--e-out:cubic-bezier(.16, 1, .3, 1);--e-soft:cubic-bezier(.215, .61, .355, 1);--z-gl:0;--z-content:1;--z-header:50;--z-cursor:80;--z-curtain:90;--z-loader:100}@media (width<=767px){:root{--cols:4;--header-h:3.25rem}}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:none;text-size-adjust:none;background:var(--c-bg);color:var(--c-fg)}body{min-height:100dvh;font-family:var(--f-body);font-size:var(--t-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-kerning:normal;line-height:1.5;overflow-x:clip}img,picture,video,canvas,svg{max-width:100%;display:block}img{height:auto}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-weight:inherit;font-size:inherit;text-wrap:balance}p{text-wrap:pretty}:focus-visible{outline:2px solid var(--c-accent);outline-offset:3px;border-radius:2px}#main:focus{outline:none}.skip-link{left:var(--gutter);top:var(--gutter);z-index:calc(var(--z-loader) + 1);background:var(--c-fg);color:var(--c-bg);padding:.6em 1em;position:fixed;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}#gl{z-index:var(--z-gl);pointer-events:none;position:fixed;inset:0}.gl-canvas{width:100%;height:100%;position:absolute;inset:0}#main,[data-layer=content]{z-index:var(--z-content);position:relative}.gl-on [data-gl] img,.gl-on [data-gl] .gl-fallback{opacity:0}.gl-on [data-gl]{background:0 0!important}[data-gl=procedural] .gl-fallback{background:radial-gradient(120% 90% at 30% 20%, var(--c-muted), var(--c-fg));position:absolute;inset:0}[data-gl]{position:relative}.motion [data-split],.motion [data-reveal]{visibility:hidden}.split-line{margin-bottom:-.08em;padding-bottom:.08em}[data-split]>*,[data-split]>*>*{text-indent:0}[data-split]>:first-child,[data-split]>:first-child>:first-child{text-indent:inherit}#curtain{z-index:var(--z-curtain);pointer-events:none;visibility:hidden;position:fixed;inset:0;overflow:hidden}.curtain__panel{background:var(--c-curtain);position:absolute;inset:0}#cursor{z-index:var(--z-cursor);pointer-events:none;opacity:0;place-items:center;width:0;height:0;display:grid;position:fixed;top:0;left:0}#cursor.is-ready{opacity:1}#cursor span{aspect-ratio:1;background:var(--c-fg);min-width:5.5rem;color:var(--c-bg);font-size:var(--t-xs);letter-spacing:.02em;border-radius:50%;place-items:center;transition:transform .5s cubic-bezier(.16,1,.3,1);display:grid;transform:translate(-50%,-50%)scale(0)}#cursor.is-active span{transform:translate(-50%,-50%)scale(1)}@media (hover:none),(pointer:coarse){#cursor{display:none}}#loader{z-index:var(--z-loader);padding:var(--gutter);background:var(--c-fg);color:var(--c-bg);clip-path:inset(0%);align-content:end;display:grid;position:fixed;inset:0}.loader__inner{justify-content:space-between;align-items:end;display:flex;overflow:hidden}.loader__count{font-variant-numeric:tabular-nums}.loader__bar{height:1px;margin-top:calc(var(--u) * 1.5);transform-origin:0;background:currentColor;transform:scaleX(0)}html:not(.js) #loader,#loader[hidden]{display:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html{background:var(--c-bg)}body{background:var(--c-bg);color:var(--c-fg);font-feature-settings:"kern"}::selection{background:var(--c-accent);color:var(--c-fg)}:focus-visible{outline:2px solid var(--c-focus);outline-offset:3px;box-shadow:0 0 0 5px var(--c-accent);border-radius:0}.skip-link{background:var(--c-fg);color:var(--c-bg);font-size:var(--t-s)}.mono,time{font-variant-numeric:tabular-nums}.grid{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));column-gap:var(--gutter);display:grid}.ulink{text-underline-offset:.22em;text-decoration:underline 1px;text-decoration-color:var(--c-line-strong);transition:text-decoration-color .3s,text-decoration-thickness .3s}@media (hover:hover){.ulink:hover{text-decoration-color:currentColor;text-decoration-thickness:2px}}.ulink:focus-visible{text-decoration-color:currentColor}.link{background:linear-gradient(var(--c-accent) 0 0) left bottom / 100% 2px no-repeat;transition:background-size .4s var(--e-out);text-decoration:none}@media (hover:hover){.link:hover{background-size:100% 100%}}.link:focus-visible{background-size:100% 100%}.brushlink{background:linear-gradient(var(--c-accent) 0 0) left 0 bottom .3em / 0% .42em no-repeat;min-height:2rem;transition:background-size .45s var(--e-out);align-items:center;gap:.35em;padding:.35em .15em;display:inline-flex;position:relative}@media (hover:hover){.brushlink:hover{background-size:100% .42em}}.brushlink:focus-visible,.brushlink[aria-current],.brushlink.is-current{background-size:100% .42em}@media (hover:hover){.brushlink:is([aria-current],.is-current):hover{background-size:100% 1.3em}}.brushlink .arrow{transition:translate .4s var(--e-out);display:inline-block}@media (hover:hover){.brushlink:hover .arrow{translate:0 3px}}.header{z-index:var(--z-header);height:var(--header-h);padding-inline:var(--gutter);justify-content:space-between;align-items:center;gap:var(--gutter);background:var(--c-bg);border-bottom:1px solid var(--c-line);font-size:var(--t-s);font-weight:500;display:flex;position:fixed;inset:0 0 auto}.header__name{letter-spacing:-.01em;align-items:center;gap:.6em;min-height:2rem;font-weight:700;display:inline-flex}.header__mark{border-radius:var(--radius-mark);background:var(--c-fg);width:1.6em;height:.62em;position:relative;overflow:hidden}.header__mark span{background:var(--c-accent);transform-origin:0;transition:scale .5s var(--e-out);position:absolute;inset:0;scale:.45 1}.header__txt{transition:translate .5s var(--e-out)}@media (hover:hover){.header__name:hover .header__mark span{scale:1}.header__name:hover .header__txt{translate:.15em}}.header__name:focus-visible .header__mark span{scale:1}.header__nav ul{gap:clamp(.75rem,2vw,2rem);padding:0;list-style:none;display:flex}.header__cv{margin-left:clamp(.5rem,2vw,2rem)}.header__menu{min-height:2.75rem;padding-inline:.5rem;font-weight:500;display:none}.menu{display:none}@media (width<=767px){.header__nav{display:none}.header__menu{align-items:center;display:inline-flex}.menu{inset:var(--header-h) 0 0;z-index:var(--z-header);padding:calc(var(--u) * 4) var(--gutter) calc(var(--u) * 4 + env(safe-area-inset-bottom));background:var(--c-fg);color:var(--c-bg);align-content:space-between;display:grid;position:fixed}.menu[hidden]{display:none}.menu ul{gap:.2rem;padding:0;list-style:none;display:grid}.menu li{overflow:clip}.menu li a{letter-spacing:-.045em;padding-block:.15em;font-size:clamp(2.6rem,13vw,4rem);font-weight:800;line-height:1.02;display:block}.menu li span{display:block}.menu a[aria-current] span{background:linear-gradient(var(--c-accent) 0 0) left bottom .12em / 100% .18em no-repeat}.menu__foot{font-family:var(--f-data);font-size:var(--t-xs)}.menu__foot .link{color:var(--c-bg)}}.career{position:relative}.hero{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));column-gap:var(--gutter);padding:calc(var(--header-h) + var(--u) * 3) var(--gutter) calc(var(--u) * 2.5);align-items:end;display:grid}.hero__name{grid-area:1/1/auto/-1;grid-template-columns:subgrid;font-family:var(--f-display);font-weight:800;font-size:var(--t-mega);letter-spacing:-.058em;line-height:.84;display:grid}.hero__word{white-space:nowrap;grid-column:1/-1;margin-left:-.055em;display:block}.hero__word--2{grid-column:1/9}.hero__line{font-size:var(--t-body);grid-area:1/9/auto/-1;align-self:end;max-width:34ch;padding-bottom:.6em;line-height:1.45}.hero__now{margin-top:calc(var(--u) * 1.2);font-size:var(--t-s);color:var(--c-muted);flex-wrap:wrap;grid-area:2/9/auto/-1;gap:.4em .8em;display:flex}.hero__now-k{color:var(--c-fg);font-weight:500}.hero__now-k:before{content:"";background:var(--c-accent);width:.55em;height:.55em;box-shadow:0 0 0 1px var(--c-fg) inset;vertical-align:.05em;border-radius:50%;margin-right:.45em;display:inline-block}.career__stage{top:var(--header-h);z-index:3;background:var(--c-bg);border-block:1px solid var(--c-line);position:sticky}.chart{--lw:clamp(5.5rem, 4rem + 6vw, 11rem);--row-h:clamp(1.9rem, 3.6svh, 2.9rem);padding:calc(var(--u) * 1.6) var(--gutter) calc(var(--u) * 1.4)}.chart__head{margin-bottom:calc(var(--u) * 2.6);font-size:var(--t-s);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.4rem 1.5rem;display:flex}.chart__title{font-weight:500}.chart__readout{font-family:var(--f-data);font-size:var(--t-xs);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:.3rem .9rem;display:flex}.chart__key{color:var(--c-muted);font-family:var(--f-body);font-size:var(--t-xs)}.chart__sel{background:var(--c-accent);border-radius:var(--radius-mark);padding:.15em .55em}.chart__len{color:var(--c-muted);min-width:9ch}.chart__body{grid-template-columns:var(--lw) minmax(0, 1fr);display:grid}.chart__labels{grid-auto-rows:var(--row-h);padding-right:.75rem;display:grid}.chart__label{color:var(--c-muted);flex-direction:column;justify-content:center;line-height:1.15;transition:color .4s;display:flex}.chart__label b{font-weight:500;font-size:var(--t-s)}.chart__label.is-on{color:var(--c-fg)}.chart__plot{height:calc(var(--row-h) * 3);touch-action:pan-y;cursor:crosshair;border-left:1px solid var(--c-fg);position:relative;container-type:inline-size}.chart__grid span{top:-.5rem;bottom:0;left:calc(var(--x) * 1%);background:var(--c-line);width:1px;position:absolute}.chart__brush{background:var(--c-accent);transform-origin:0;width:100%;transform:translateX(calc(var(--from) * 1cqi)) scaleX(calc((var(--to) - var(--from)) / 100));position:absolute;top:-.35rem;bottom:-.35rem;left:0}.chart__handle{background:var(--c-fg);width:2px;transform:translateX(calc(var(--from) * 1cqi));margin-left:-1px;position:absolute;top:-.55rem;bottom:-.55rem;left:0}.chart__handle--r{transform:translateX(calc(var(--to) * 1cqi))}.chart__draw{position:absolute;inset:0}.chart__bars{grid-template-rows:repeat(3,1fr);display:grid;position:absolute;inset:0}.chart__row{position:relative}.chart__bar{height:36%;top:50%;left:calc(var(--a) * 1%);width:calc((var(--b) - var(--a)) * 1%);border-radius:var(--radius-mark);background:var(--c-faint);position:absolute;translate:0 -50%}.chart__bars--sel{clip-path:inset(-20% calc(100% - var(--to) * 1%) -20% calc(var(--from) * 1%))}.chart__bars--sel .chart__bar{background:var(--c-fg)}.chart .chart__bars .chart__bar--live{background-image:repeating-linear-gradient(-45deg,#0000 0 5.657px,#ffffff3d 5.657px 11.314px);background-position:calc(var(--shift,0) * 1px) 0}.chart__now{background:var(--c-fg);width:1px;transform:translateX(calc(var(--now) * 1cqi));pointer-events:none;position:absolute;top:-.9rem;bottom:0;left:0}.chart__live{white-space:nowrap;font-family:var(--f-data);font-size:var(--t-xs);font-variant-numeric:tabular-nums;line-height:1;transition:opacity .3s;position:absolute;top:-.85rem;right:.55rem}.chart__dot{background:var(--c-fg);border-radius:50%;width:.5rem;height:.5rem;position:absolute;top:.05rem;right:-.88rem}.chart__dot:after{content:"";border:1.5px solid var(--c-fg);animation:live 2s var(--e-soft) infinite;border-radius:50%;position:absolute;inset:-.25rem}@keyframes live{0%{opacity:1;scale:.4}to{opacity:0;scale:1.9}}.chart__cross{pointer-events:none;background:repeating-linear-gradient(var(--c-fg) 0 3px, transparent 3px 6px);opacity:0;width:1px;transition:opacity .2s;position:absolute;top:-.9rem;bottom:0;left:0}.chart__cross span{white-space:nowrap;background:var(--c-fg);color:var(--c-bg);font-family:var(--f-data);font-size:var(--t-xs);font-variant-numeric:tabular-nums;padding:.3em .55em;position:absolute;top:0;left:.5rem}.chart__cross.is-flip span{left:auto;right:.5rem}.chart__cross.is-on{opacity:1}.chart__plot:has(.is-on) .chart__live{opacity:0}.chart__axis{border-top:1px solid var(--c-fg);grid-column:2;height:1.9rem;position:relative}.chart__axis span{left:calc(var(--x) * 1%);font-family:var(--f-data);font-size:var(--t-xs);color:var(--c-muted);font-variant-numeric:tabular-nums;padding:.45rem 0 0 .35rem;position:absolute;top:0}.chart__axis span:before{content:"";background:var(--c-fg);width:1px;height:.35rem;position:absolute;top:0;left:0}.chart__axis span:last-child{padding:.45rem .35rem 0 0;translate:-100%}.chart__axis span:last-child:before{left:auto;right:0}.chart__stack{margin-top:calc(var(--u) * 1.2);flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.chart__stack .chart__key{margin-right:.5rem}.chart__tech{border-radius:var(--radius-mark);border:1px solid var(--c-line-strong);font-family:var(--f-data);color:var(--c-muted);transition:background-color .45s var(--e-out), color .45s, border-color .45s;padding:.28em .7em;font-size:.6875rem}.chart__tech.is-on{background:var(--c-fg);color:var(--c-bg);border-color:var(--c-fg)}.chart--compact{--row-h:1.9rem;padding-inline:0}@media (width<=767px){.chart{--row-h:1.75rem;--lw:5.9rem;padding-block:.8rem .6rem}.chart__head{margin-bottom:1.5rem}.chart__title,.chart__label span{display:none}.chart__axis span:nth-child(2n),.chart__axis span:last-child{visibility:hidden}.chart__date,.chart__len,.chart__stack{display:none}.chart__live{font-size:.625rem}}.career__story{padding:0 var(--gutter)}.story__intro{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));column-gap:var(--gutter);row-gap:calc(var(--u) * 3);padding-block:calc(var(--u) * 10) calc(var(--u) * 8);display:grid}.story__h{font-size:var(--t-xl);letter-spacing:-.045em;grid-column:1/10;margin-left:-.04em;font-weight:800;line-height:.95}.story__text{font-size:var(--t-m);letter-spacing:-.01em;grid-column:5/12;max-width:46ch;line-height:1.4}.role{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));column-gap:var(--gutter);row-gap:calc(var(--u) * 1.5);min-height:54svh;padding-block:calc(var(--u) * 5) calc(var(--u) * 6);border-top:1px solid var(--c-line);align-content:start;display:grid}.role__dates{font-family:var(--f-data);font-size:var(--t-xs);border-radius:var(--radius-mark);border:1px solid var(--c-line-strong);transition:background-color .5s var(--e-out), border-color .5s;grid-column:1/5;justify-self:start;padding:.3em .65em}.role.is-active .role__dates{background:var(--c-accent);border-color:var(--c-accent)}.role__h{grid-area:2/1/span 2/5;align-self:start;gap:.4rem;display:grid}.role__company{font-size:var(--t-l);letter-spacing:-.04em;font-weight:800;line-height:.95}.role__title{font-size:var(--t-s);color:var(--c-muted);font-weight:500}.role__points{grid-area:2/5/auto/12;gap:.75rem;max-width:60ch;padding:0;list-style:none;display:grid}.role__points li{padding-left:1.4rem;line-height:1.5;position:relative}.role__points li:before{content:"";background:var(--c-fg);border-radius:50%;width:.42rem;height:.42rem;position:absolute;top:.62em;left:.1rem}.role__stack{flex-wrap:wrap;grid-area:3/5/auto/12;gap:.35rem;margin-top:.5rem;display:flex}.tag{border-radius:var(--radius-mark);border:1px solid var(--c-line-strong);font-family:var(--f-data);color:var(--c-fg);padding:.25em .7em;font-size:.6875rem}.work{padding:calc(var(--u) * 9) var(--gutter) calc(var(--u) * 10);background:var(--c-bg);z-index:4;position:relative}.work__head{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));column-gap:var(--gutter);row-gap:calc(var(--u) * 2);margin-bottom:calc(var(--u) * 4);align-items:end;display:grid}.work__h{font-size:var(--t-xl);letter-spacing:-.05em;grid-column:1/8;margin-left:-.04em;font-weight:800;line-height:.92}.work__note{color:var(--c-muted);font-size:var(--t-s);grid-column:9/-1;max-width:40ch}.work__filters{margin-bottom:calc(var(--u) * 3);flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.chip{border:1px solid var(--c-fg);border-radius:var(--radius-mark);min-height:2.5rem;font-size:var(--t-s);background:linear-gradient(var(--c-accent) 0 0) left / 0% 100% no-repeat;transition-property:background-size,background-color,color,box-shadow;transition:background-size .45s var(--e-out), background-color .3s, color .3s;align-items:center;gap:.5em;padding:0 1.05em;font-weight:500;display:inline-flex}.chip__n{font-family:var(--f-data);color:var(--c-muted);font-size:.6875rem}@media (hover:hover){.chip:hover{background-size:100% 100%}.chip:hover .chip__n{color:var(--c-fg)}}.chip:focus-visible{background-size:100% 100%}.chip:active{scale:.97}.chip[aria-pressed=true]{background-color:var(--c-fg);color:var(--c-bg);background-size:0% 100%}.chip[aria-pressed=true] .chip__n{color:var(--c-accent)}@media (hover:hover){.chip[aria-pressed=true]:hover{box-shadow:inset 0 -.3rem 0 var(--c-accent)}}.work__query{font-family:var(--f-data);font-size:var(--t-xs);color:var(--c-muted);margin-left:auto}.work__query [data-query-val]{color:var(--c-fg);background:var(--c-accent);padding:.1em .35em}.work__cols,.row__link{column-gap:var(--gutter);grid-template-columns:minmax(0,6fr) minmax(0,2fr) minmax(0,2.6fr) minmax(0,2fr) 1.5rem;align-items:baseline;display:grid}.work__cols{border-bottom:1px solid var(--c-fg);font-size:var(--t-xs);color:var(--c-muted);padding-bottom:.7rem}.work__list{padding:0;list-style:none;position:relative}.row{border-bottom:1px solid var(--c-line)}.row__link{isolation:isolate;padding:1.35rem .5rem 1.35rem 0;position:relative}.row__band{z-index:-1;background:var(--c-accent);transform-origin:0;transition:scale .6s var(--e-out);position:absolute;inset:0 -.5rem;scale:0 1}.row__title{font-size:var(--t-m);letter-spacing:-.02em;transition:translate .6s var(--e-out);font-weight:500;line-height:1.15}.row__client,.row__tags{font-size:var(--t-s);color:var(--c-muted);transition:color .3s}.row__years{font-family:var(--f-data);font-size:var(--t-xs);color:var(--c-muted);font-variant-numeric:tabular-nums;transition:color .3s}.row__arrow{transition:translate .5s var(--e-out);justify-self:end}@media (hover:hover){.row__link:hover .row__band{scale:1}.row__link:hover .row__title{translate:.6rem}.row__link:hover :is(.row__client,.row__tags,.row__years){color:var(--c-fg)}.row__link:hover .row__arrow{translate:6px}}.row__link:focus-visible .row__band{scale:1}.row__link:focus-visible .row__title{translate:.6rem}.row__link:focus-visible :is(.row__client,.row__tags,.row__years){color:var(--c-fg)}.row__link:active .row__band{transition-duration:.2s;scale:1}.work__empty{font-family:var(--f-data);font-size:var(--t-s);padding-block:2rem}@media (width<=767px){.work__h,.work__note{grid-column:1/-1}.work__filters{margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);scrollbar-width:none;flex-wrap:nowrap;padding-bottom:.25rem;overflow-x:auto}.work__filters::-webkit-scrollbar{display:none}.chip{flex:none}.work__query,.work__cols{display:none}.work__list{border-top:1px solid var(--c-fg)}.row__link{grid-template-columns:1fr auto;row-gap:.4rem;padding-block:1.15rem}.row__title{grid-column:1/-1}.row__client{grid-column:1}.row__years{grid-column:2;justify-self:end}.row__tags{font-family:var(--f-data);grid-column:1/-1;font-size:.6875rem}.row__arrow{display:none}}.facts{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));column-gap:var(--gutter);row-gap:calc(var(--u) * 5);padding:calc(var(--u) * 8) var(--gutter) calc(var(--u) * 10);border-top:1px solid var(--c-fg);display:grid}.facts__h{font-size:var(--t-l);letter-spacing:-.04em;grid-column:1/5;font-weight:800;line-height:.95}.facts__edu{gap:var(--gutter);grid-column:5/-1;grid-template-columns:1fr 1fr;padding:0;list-style:none;display:grid}.edu{align-content:start;gap:.3rem;display:grid}.edu__n{letter-spacing:-.06em;font-variant-numeric:tabular-nums;margin-left:-.05em;font-size:clamp(4rem,2rem + 8vw,10rem);font-weight:800;line-height:.82}.edu__unit{font-family:var(--f-data);font-size:var(--t-xs);color:var(--c-muted);margin-bottom:.9rem}.edu__unit:before{content:"";height:.45rem;width:calc(var(--w,.9) * 100%);border-radius:var(--radius-mark);background:linear-gradient(90deg, var(--c-fg) var(--g), var(--c-line) var(--g));margin-bottom:.6rem;display:block}.edu:first-child .edu__unit:before{--g:90%}.edu:nth-child(2) .edu__unit:before{--g:87.6%}.edu__deg{font-weight:500}.edu__school{color:var(--c-muted);font-size:var(--t-s)}.facts__skills{gap:calc(var(--u) * 2.5) var(--gutter);grid-column:5/-1;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.skill{border-top:1px solid var(--c-line);padding-top:.8rem}.skill dt{font-weight:500;font-size:var(--t-s);margin-bottom:.35rem}.skill dd{color:var(--c-muted);font-size:var(--t-s);line-height:1.5}@media (width<=1023px){.facts__h,.facts__edu,.facts__skills{grid-column:1/-1}.facts__skills{grid-template-columns:repeat(2,minmax(0,1fr))}}.footer{z-index:4;grid-template-columns:repeat(var(--cols), minmax(0, 1fr));column-gap:var(--gutter);row-gap:calc(var(--u) * 3);min-height:80svh;padding:calc(var(--u) * 10) var(--gutter) calc(var(--u) * 2 + env(safe-area-inset-bottom));background:var(--c-fg);color:var(--c-bg);align-content:end;display:grid;position:relative}.footer__lead{font-size:var(--t-m);letter-spacing:-.01em;grid-column:1/8;max-width:38ch;line-height:1.35}.footer__cta{isolation:isolate;border-block:1px solid #eef0f240;grid-column:1/-1;margin-inline:-.12em;padding:.15em .12em .2em;transition:color .35s;display:grid;position:relative;overflow:clip}.footer__cta-text{letter-spacing:-.06em;transition:translate .6s var(--e-out);margin-left:-.05em;font-size:clamp(3.4rem,.4rem + 13.6vw,15rem);font-weight:800;line-height:.9}.footer__addr{font-family:var(--f-data);font-size:var(--t-s);padding-bottom:.6rem}.footer__fill{z-index:-1;background:var(--c-accent);clip-path:circle(0%);position:absolute;inset:0}.footer__cta.is-filled,.footer__cta:active{color:var(--c-fg)}.footer__cta.is-filled .footer__cta-text{translate:.12em}.footer__cta:active .footer__fill{clip-path:circle(150%)}.footer__links{font-size:var(--t-s);flex-wrap:wrap;grid-column:1/-1;gap:.5rem 2rem;padding:0;list-style:none;display:flex}.footer__links a{align-items:center;min-height:2.5rem;display:inline-flex}.footer .ulink{text-decoration-color:#eef0f266}.footer__small{font-size:var(--t-xs);color:#a8b0ba;border-top:1px solid #eef0f22e;flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;gap:.5rem 2rem;padding-top:1rem;display:flex}.footer :focus-visible{outline-color:var(--c-bg)}@media (width<=767px){.footer__lead{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.footer__cta:focus-visible{color:var(--c-fg)}.footer__cta:focus-visible .footer__fill{clip-path:none}}@media (prefers-reduced-motion:reduce) and (hover:hover){.footer__cta:hover{color:var(--c-fg)}.footer__cta:hover .footer__fill{clip-path:none}}.case{padding:calc(var(--header-h) + var(--u) * 6) var(--gutter) 0}.case__head{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));column-gap:var(--gutter);row-gap:calc(var(--u) * 2.5);display:grid}.case__crumb{font-size:var(--t-s);grid-column:1/-1;align-items:center;gap:.35em;display:flex}.case__crumb a{align-items:center;min-height:2rem;display:inline-flex}.case__idx{font-family:var(--f-data);font-size:var(--t-xs);color:var(--c-muted)}.case__h{font-size:var(--t-xl);letter-spacing:-.05em;grid-column:1/11;margin-left:-.04em;font-weight:800;line-height:.93}.case__summary{font-size:var(--t-m);letter-spacing:-.01em;grid-column:5/12;max-width:46ch;line-height:1.38}.case__meta{gap:var(--gutter);margin-top:calc(var(--u) * 2);grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.case__meta div{border-top:1px solid var(--c-fg);padding-top:.6rem}.case__meta dt{font-size:var(--t-xs);color:var(--c-muted);margin-bottom:.25rem}.case__meta dd{font-size:var(--t-s);font-weight:500}.case__chart{margin-top:calc(var(--u) * 5);border-block:1px solid var(--c-line)}.case__fig{margin-top:calc(var(--u) * 5)}.case__fig figcaption{font-family:var(--f-data);font-size:var(--t-xs);color:var(--c-muted);max-width:70ch;margin-top:.8rem}.case__body{padding-block:calc(var(--u) * 8)}.case__block{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));column-gap:var(--gutter);padding-block:calc(var(--u) * 3);border-top:1px solid var(--c-line);row-gap:.75rem;display:grid}.case__bh{font-size:var(--t-m);letter-spacing:-.02em;grid-column:1/5;font-weight:700}.case__bt{grid-column:5/12;max-width:60ch;font-size:clamp(1.0625rem,1rem + .25vw,1.25rem);line-height:1.55}@media (width<=767px){.case__h,.case__summary,.case__bh,.case__bt{grid-column:1/-1}.case__meta{grid-template-columns:1fr 1fr}}.next{margin-inline:calc(var(--gutter) * -1);border-top:1px solid var(--c-fg)}.next__link{isolation:isolate;padding:calc(var(--u) * 5) var(--gutter) calc(var(--u) * 6);gap:.6rem;display:grid;position:relative}.next__link .row__band{inset:0}.next__k{font-size:var(--t-s);color:var(--c-muted);transition:color .3s}.next__t{font-size:var(--t-xl);letter-spacing:-.05em;max-width:18ch;transition:translate .6s var(--e-out);font-weight:800;line-height:.95}.next__m{font-family:var(--f-data);font-size:var(--t-xs);color:var(--c-muted);transition:color .3s}@media (hover:hover){.next__link:hover .row__band{scale:1}.next__link:hover .next__t{translate:.15em}.next__link:hover :is(.next__k,.next__m){color:var(--c-fg)}}.next__link:focus-visible .row__band{scale:1}.next__link:focus-visible :is(.next__k,.next__m){color:var(--c-fg)}.fig{aspect-ratio:5/3;width:100%;height:auto}.fig__ground{fill:#e2e5e9}.fig__grid{stroke:#0d101414;stroke-width:1px}.fig__ink{fill:var(--c-fg)}.fig__faint{fill:#c3c8cf}.fig__accent{fill:var(--c-accent)}.fig__accent-soft{fill:var(--c-accent);opacity:.35}.fig__chip{fill:none;stroke:var(--c-fg);stroke-width:2px}.fig__page{fill:#f7f8f9;stroke:var(--c-fg);stroke-width:2px}.fig__label{font-family:var(--f-data);fill:var(--c-muted);font-size:22px}.fig__mark{font-family:var(--f-data);fill:var(--c-fg);font-size:20px}.fig__mark--inv{fill:var(--c-bg)}.fig__stroke{fill:none;stroke:var(--c-fg);stroke-width:2px}.fig__stroke--accent{stroke:#e09a00;stroke-width:5px}.fig__curve{fill:none;stroke:var(--c-fg);stroke-width:4px}.nf{align-content:end;gap:calc(var(--u) * 2.5);min-height:88svh;padding:calc(var(--header-h) + var(--u) * 6) var(--gutter) calc(var(--u) * 8);display:grid}.nf__query{font-family:var(--f-data);font-size:var(--t-s);flex-wrap:wrap;gap:.6em;display:flex}.nf__query span:first-child{background:var(--c-accent);padding:0 .35em}.nf__query span:last-child{word-break:break-all}.nf__h{font-size:var(--t-mega);letter-spacing:-.06em;margin-left:-.05em;font-weight:800;line-height:.86}.nf__text{font-size:var(--t-m);max-width:34ch}.nf__actions{flex-wrap:wrap;align-items:center;gap:1rem 2rem;margin-top:1rem;display:flex}.btn{isolation:isolate;border:1px solid var(--c-fg);align-items:center;min-height:3rem;padding:0 1.4em;font-weight:500;display:inline-flex;position:relative;overflow:clip}.btn__fill{z-index:-1;background:var(--c-accent);clip-path:circle(0%);position:absolute;inset:0}.btn:active .btn__fill{clip-path:circle(150%)}@media (prefers-reduced-motion:reduce){.btn:focus-visible .btn__fill{clip-path:none}}@media (prefers-reduced-motion:reduce) and (hover:hover){.btn:hover .btn__fill{clip-path:none}}.curtain__panel,.curtain__brush{position:absolute;inset:0}.curtain__brush{background:var(--c-accent)}.curtain__panel{background:var(--c-fg)}.curtain__label{left:var(--gutter);bottom:var(--gutter);color:var(--c-accent);font-family:var(--f-data);font-size:var(--t-s);visibility:hidden;position:absolute}@media (width<=1023px){.hero__word--2{grid-column:1/-1}.hero__line,.hero__now{grid-area:auto/1/auto/-1}.hero__line{margin-top:calc(var(--u) * 2.5);max-width:42ch}.story__h,.story__text{grid-column:1/-1}.role__dates,.role__h,.role__points,.role__stack{grid-area:auto/1/auto/-1}}@media (width<=767px){.hero{padding-top:calc(var(--header-h) + var(--u) * 4)}.hero__name{font-size:clamp(4rem,23.5vw,8rem)}.role{min-height:50svh}}@media (width>=1700px){.chart{--row-h:3.2rem}}@media (prefers-reduced-motion:reduce){.chart__dot:after{opacity:0;animation:none}.row__band,.brushlink,.chip,.row__title{transition:none}}.nf__chart{margin-top:calc(var(--u) * 4);border-top:1px solid var(--c-line)}@media (width>=1024px){.hero__line{grid-row:1;align-self:start;padding-top:.4em}.hero__now{grid-row:1;align-self:start;margin-top:9.5rem}}.career__stage:after{content:"";background:linear-gradient(var(--c-bg), transparent);pointer-events:none;height:24px;position:absolute;top:100%;left:0;right:0}.chart__label span{font-size:.8125rem}.row__years{flex-direction:column;gap:.45rem;display:flex}.row__spark{background:var(--c-line);border-radius:999px;width:100%;max-width:9rem;height:4px;display:block;position:relative}.row__spark i{top:0;bottom:0;left:calc(var(--a) * 1%);width:calc((var(--b) - var(--a)) * 1%);background:var(--c-fg);border-radius:999px;position:absolute}.next__k,.next__m{transition:translate .6s var(--e-out), color .3s}@media (hover:hover){.next__link:hover :is(.next__k,.next__m){translate:.15em}}.footer{min-height:72svh}@media (width<=767px){.footer{min-height:0;padding-top:calc(var(--u) * 12)}.row__link{flex-wrap:wrap;align-items:center;gap:.45rem .9rem;display:flex}.row__title{flex:1 0 100%}.row__client,.row__tags,.row__years{font-family:var(--f-data);color:var(--c-muted);grid-column:1;font-size:.6875rem;display:inline}.row__meta-m{display:block}.row__years{flex-direction:row-reverse;align-items:center;gap:.6rem;margin-left:auto}.row__spark{width:4.5rem}.work__filters{mask-image:linear-gradient(90deg,#000 85%,#0000)}}
