.site{--u:calc(min(100vw, 1920px) / 1440);--pad:calc(var(--u) * 155);position:relative;width:100%;max-width:1920px;margin-inline:auto;overflow-x:clip;color:var(--black);background:var(--white);font-variation-settings:"GRAD" 0,"ROND" 0,"wdth" 100;letter-spacing:-.02em}@media (max-width:767px){.site{--u:calc(100vw / 390);--pad:calc(var(--u) * 16)}}.site :where(h1,h2,h3,p){margin:0;font-weight:inherit}.site a{text-decoration:none}.site .accent{color:var(--purple)}.site strong{font-weight:600}.skip{position:absolute;left:16px;top:-60px;z-index:100;padding:10px 14px;background:var(--black);color:var(--white);border-radius:4px;transition:top .2s var(--ease-out)}.skip:focus{top:12px}.bleed{box-shadow:0 0 0 100vmax var(--bleed,var(--purple));-webkit-clip-path:inset(0 -100vmax);clip-path:inset(0 -100vmax)}.header{position:fixed;inset:0 0 auto 0;z-index:150;max-width:1920px;margin-inline:auto;pointer-events:none;display:flex;align-items:flex-start;justify-content:space-between;padding:24px calc(var(--u) * 40) 0 calc(var(--u) * 56)}.header>*{pointer-events:auto}.brand{display:inline-block;line-height:0}.brand__logo--auto{aspect-ratio:194/181;color:var(--purple);transition:color .35s var(--ease-in-out)}.brand__logo--auto[data-tone=black]{color:var(--black)}.brand__logo--auto[data-tone=white]{color:var(--white)}.brand__logo{display:block;width:auto;height:48px}.btn-nav{display:inline-flex;align-items:center;justify-content:center;min-width:calc(var(--u) * 116);padding:8px 12px;border-radius:4px;background:var(--black);color:var(--white);font-size:16px;line-height:1.2;letter-spacing:-.02em;transition:background-color .35s var(--ease-in-out),transform .35s var(--ease-out)}.btn-nav:hover{background:var(--purple)}.btn-nav:active{transform:scale(.97)}.btn-nav[aria-current=page]{background:var(--purple)}@media (max-width:767px){.header{padding:24px 16px 0}.brand__logo{height:40px}.btn-nav{min-width:0;padding:7px 10px;font-size:13px}}.menu-btn{display:inline-flex;align-items:center;gap:14px;height:40px;padding:0 12px;border:0;border-radius:100px;background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--black);font-size:16px;font-weight:500;line-height:normal;white-space:nowrap;cursor:pointer;transition:background-color .35s var(--ease-in-out),color .35s var(--ease-in-out),transform .35s var(--ease-out)}.menu-btn__label{min-width:44px;text-align:right}.menu-btn:hover,.menu-btn[aria-expanded=true]{background:var(--purple);color:var(--white)}.menu-btn:active{transform:scale(.96)}.menu-btn__icon{display:block;flex:none;width:22px;height:15px;overflow:visible}.mi-dash{stroke-width:2.14;stroke-linecap:round;opacity:0}.mi-dash,.mi-line{transition:opacity .35s ease}@media (prefers-reduced-motion:no-preference){.menu-btn:is(:hover,:focus-visible) .mi-line{opacity:0}.menu-btn:is(:hover,:focus-visible) .mi-dash{opacity:1;--p:21.6px;stroke-dasharray:4 3.6 2 3.6 5 3.4;animation:mi-dash 1.6s linear infinite}.menu-btn:is(:hover,:focus-visible) .mi-dash--bot{stroke-dasharray:3 3 5 3.6 2.4 4.6}.menu-btn:is(:hover,:focus-visible) .mi-arrow{animation:mi-arrow .55s cubic-bezier(.45,0,.35,1) infinite}}@keyframes mi-dash{to{stroke-dashoffset:calc(var(--p) * -1)}}@keyframes mi-arrow{0%,to{transform:translateX(0)}50%{transform:translateX(-2.6px)}}.menu-btn__img{display:block;max-width:28px;max-height:28px}.sheet{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:16px;border:0;background:rgba(0,0,0,0);color:var(--black);overflow:clip;transition:background-color .6s var(--ease-in-out)}.sheet::-webkit-backdrop{background:transparent}.sheet::backdrop{background:transparent}.sheet.is-open{background:rgba(0,0,0,.22)}.sheet:not([open]){display:none}.sheet__panel{position:absolute;top:16px;right:16px;bottom:16px;display:flex;flex-direction:column;width:min(440px,calc(100vw - 32px));padding:88px 40px 40px;border-radius:16px;background:var(--white);box-shadow:0 24px 80px rgba(0,0,0,.18),0 2px 8px rgba(0,0,0,.06);transform:translate3d(calc(100% + 32px),0,0);transition:transform .6s cubic-bezier(.32,.72,0,1)}.sheet.is-open .sheet__panel{transform:none}.sheet__close{position:absolute;top:20px;right:20px;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid rgba(0,0,0,.12);border-radius:999px;background:var(--white);color:inherit;cursor:pointer;transition:background-color .3s var(--ease-in-out),transform .4s var(--ease-out)}.sheet__close:hover{background:var(--grey-100);transform:rotate(90deg)}.sheet__nav ul{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.sheet__nav a{display:inline-block;font-size:clamp(36px,calc(var(--u) * 56),56px);line-height:1.15;letter-spacing:-.02em;color:inherit;transition:color .35s var(--ease-in-out),transform .5s var(--ease-out)}.sheet__nav a:hover,.sheet__nav a[aria-current=page]{color:var(--purple)}.sheet__nav a:hover{transform:translateX(8px)}.sheet__lang{margin-top:40px;padding-top:24px;border-top:1px solid rgba(0,0,0,.12)}.sheet__lang-title{margin:0 0 14px;font-size:14px;letter-spacing:.02em;color:rgba(0,0,0,.55)}.sheet__flags{display:flex;gap:20px}.sheet__flag{padding:0;border:0;background:none;cursor:pointer;font-size:22px;line-height:1;letter-spacing:-.02em;color:var(--grey-500);transition:color .3s var(--ease-in-out)}.sheet__flag:hover{color:var(--black)}.sheet__flag[aria-pressed=true]{color:var(--purple)}.sheet__flag:focus-visible{outline:2px solid var(--purple);outline-offset:3px}.sheet__contact{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-top:auto}.sheet__contact a,.sheet__social a{font-size:22px;line-height:1;letter-spacing:-.02em;color:inherit;text-decoration:none;transition:color .35s var(--ease-in-out)}.sheet__contact a span,.sheet__social a span{display:inline-block;transition:transform .4s var(--ease-out)}.sheet__contact a:hover,.sheet__social a:hover{color:var(--purple)}.sheet__contact a:hover span,.sheet__social a:hover span{transform:translate3d(2px,-2px,0)}.sheet__social{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:40px;padding-top:36px;border-top:1px solid rgba(0,0,0,.12)}.sheet__contact,.sheet__lang,.sheet__nav li,.sheet__social{opacity:0;transform:translate3d(24px,0,0);transition:opacity .4s var(--ease-out),transform .6s var(--ease-out)}.sheet.is-open .sheet__contact,.sheet.is-open .sheet__lang,.sheet.is-open .sheet__nav li,.sheet.is-open .sheet__social{opacity:1;transform:none;transition-delay:calc(.12s + var(--i, 0) * 60ms)}@media (max-width:767px){.menu-btn{margin-top:0}.sheet{padding:8px}.sheet__panel{top:8px;right:8px;bottom:8px;width:calc(100vw - 16px);padding:80px 24px 32px}}@media (prefers-reduced-motion:reduce){.sheet,.sheet__nav li,.sheet__panel,.sheet__social{transition:none}}.captions{position:fixed;left:0;right:0;bottom:40px;z-index:25;display:flex;justify-content:space-between;padding:0 calc(min(100vw, 1920px) / 1440 * 40);max-width:1920px;margin-inline:auto;pointer-events:none;font-size:18px;line-height:1.2}.captions__tagline{font-weight:300}.captions a{pointer-events:auto}.captions__item{color:var(--black);transition:color .5s var(--ease-in-out)}.captions[data-tone-left=dark] .captions__tagline,.captions[data-tone-right=dark] .captions__social{color:var(--white)}.captions__social a{display:inline-block;transition:transform .4s var(--ease-out)}.captions__social a:hover{transform:translateY(-2px);text-decoration:underline;text-underline-offset:4px}@media (max-width:767px){.captions{font-size:12px;bottom:40px;padding:0 16px}}.frame{position:relative;overflow:hidden;aspect-ratio:var(--ratio,16/9);background:var(--grey-300);border-radius:var(--radius,0);isolation:isolate}.frame__inner{position:absolute;inset:-8% 0;will-change:transform}.frame--flat .frame__inner{inset:0}.vctl{position:absolute;z-index:3;left:16px;bottom:16px;display:flex;align-items:center;gap:4px;padding:6px 12px 6px 6px;border-radius:999px;background:rgba(0,0,0,.5);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--white);opacity:0;transition:opacity .3s var(--ease-out)}.frame:hover .vctl,.vctl:focus-within{opacity:1}@media (hover:none){.vctl{opacity:1}}.vctl__btn{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:none;color:inherit;cursor:pointer}.vctl__btn:hover{background:rgba(255,255,255,.16)}.vctl__vol{width:88px;accent-color:var(--white);cursor:pointer}.frame__inner:has(>.frame__embed){container-type:size}.frame__embed{display:block;width:100%;height:100%;border:0}.frame__embed--cover{top:50%;left:50%;width:max(100cqw,100cqh * 16/9);height:max(100cqh,100cqw * 9/16);transform:translate(-50%,-50%)}.frame__embed--cover,.frame__pattern{position:absolute;pointer-events:none}.frame__pattern{z-index:2;inset:0;display:grid;grid-template-columns:repeat(4,calc(var(--u) * 32));grid-template-rows:repeat(6,calc(var(--u) * 32));justify-content:space-between;align-content:space-between}.frame__pattern img{display:block;opacity:0;transition:opacity .6s var(--ease-out);width:calc(var(--u) * 32);height:calc(var(--u) * 32);max-width:none;align-self:start;justify-self:start}.frame__inner>.ph,.frame__inner>img,.frame__inner>video,.frame__media{width:100%;height:100%;object-fit:cover}.frame__media{display:block}.frame--whole .frame__inner>video,.frame--whole .frame__media{object-fit:contain}.frame--gray .frame__media{filter:grayscale(1)}.ph{background:var(--grey-300)}.js .site [data-reveal=up]:not(.is-in){opacity:0;transform:translate3d(0,calc(var(--u) * 36),0)}.js .site [data-reveal=up]{transition:opacity .9s var(--ease-out) var(--d,0s),transform 1.2s var(--ease-out) var(--d,0s)}.js .site [data-reveal=flag]:not(.is-in){opacity:0}.js .site [data-reveal=flag]{transition:opacity .9s var(--ease-out) var(--d,0s)}.js .site [data-reveal=mask]:not(.is-in){-webkit-clip-path:inset(9% 0 0 0);clip-path:inset(9% 0 0 0);opacity:0}.js .site [data-reveal=mask]{transition:opacity .8s var(--ease-out) var(--d,0s),-webkit-clip-path 1.3s var(--ease-out) var(--d,0s);transition:clip-path 1.3s var(--ease-out) var(--d,0s),opacity .8s var(--ease-out) var(--d,0s);transition:clip-path 1.3s var(--ease-out) var(--d,0s),opacity .8s var(--ease-out) var(--d,0s),-webkit-clip-path 1.3s var(--ease-out) var(--d,0s)}.js .site [data-reveal=mask] .frame__media{transition:transform 1.8s var(--ease-out) var(--d,0s)}.js .site [data-reveal=mask]:not(.is-in) .frame__media{transform:scale(1.12)}.w{overflow:hidden;vertical-align:top;padding-bottom:.3em;margin-bottom:-.3em}.w,.wi{display:inline-block}.js .site [data-reveal=words] .wi{transition:transform 1.1s var(--ease-out);transition-delay:calc(var(--i, 0) * 45ms + var(--d, 0s))}.js .site [data-reveal=words]:not(.is-in) .wi{transform:translate3d(0,145%,0)}@property --hv{syntax:"<number>";inherits:true;initial-value:0}.intro{position:relative;z-index:1}.intro__text{margin:0;white-space:nowrap;font-size:calc(var(--u) * 152);line-height:.908;letter-spacing:-.02em;font-weight:400}.hero{position:relative;height:calc(var(--u) * 1685)}.hero__pin{position:absolute;z-index:2;inset:0 0 auto 0;padding:calc(var(--u) * 236) 0 0 calc(var(--u) * 155);pointer-events:none}.hero__pin:after{content:"";display:block;height:calc(var(--u) * (605 + 540 - 236) - var(--hero-title-h, calc(var(--u) * 552)) / 2)}.hero__title{position:-webkit-sticky;position:sticky;top:calc(50svh - var(--hero-title-h, calc(var(--u) * 552)) / 2);z-index:2;width:calc(var(--u) * 1040);pointer-events:auto;transition:color .45s var(--ease-in-out);font-size:calc(var(--u) * 152);line-height:.908;letter-spacing:-.02em;font-weight:400}.hero__title.is-over-media{color:var(--white)}.hero-trail{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:0}.hero-trail.is-on{opacity:1}.hero__portrait{position:absolute;z-index:1;left:0;right:0;top:calc(var(--u) * 605);height:calc(var(--u) * 1080);--ratio:auto;aspect-ratio:auto}@media (max-width:767px){.hero{height:auto;padding-top:calc(var(--u) * 118)}.hero__pin{position:static;padding:0}.hero__pin:after{content:none}.hero__title{position:relative;top:auto;width:auto;margin:0 var(--pad);font-size:calc(var(--u) * 56);line-height:.96}.hero__portrait{position:relative;top:auto;height:auto;margin-top:calc(var(--u) * -26);aspect-ratio:390/520}}.case{position:relative;margin-top:calc(var(--u) * 135);padding:0 var(--pad)}.case__title{position:relative;z-index:5;margin-bottom:calc(var(--u) * 24);font-size:calc(var(--u) * 88);line-height:1.2;letter-spacing:-.02em;pointer-events:none}.case__banner{position:relative;display:block}.case__banner .frame{--ratio:1360/680}.hover-fill{position:absolute;inset:0;z-index:3;background:rgba(73,35,244,.2);opacity:0;pointer-events:none;transition:opacity .45s var(--ease-in-out)}:is(.case__banner,.work-card):is(:hover,:focus-visible) .hover-fill{opacity:1}@media (max-width:767px){.case{margin-top:calc(var(--u) * 64)}.case__title{margin-bottom:calc(var(--u) * 12);font-size:calc(var(--u) * 52)}.case__banner .frame{--ratio:358/300}}.work-card{position:relative;display:block}.work-card .frame{--ratio:901/476;--radius:16px}.work-card .hover-fill{border-radius:16px}.work-card .frame__media{transition:transform 1.2s var(--ease-out)}.work-card:focus-visible .frame__media,.work-card:hover .frame__media{transform:scale(1.045)}.work-label{position:absolute;left:calc(var(--u) * 24);right:calc(var(--u) * 24);bottom:calc(var(--u) * 24);z-index:4;display:flex;flex-direction:column;gap:calc(var(--u) * 10);padding:calc(var(--u) * 24);border-radius:calc(var(--u) * 24);background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),inset 0 0 0 1px rgba(255,255,255,.18);color:var(--white);letter-spacing:-.02em;line-height:normal}.work-label__name{display:flex;align-items:center;justify-content:space-between;gap:calc(var(--u) * 16);font-size:calc(var(--u) * 48)}.work-label__name>span:last-child{transition:transform .5s var(--ease-out)}:is(.work-card,.case__banner):is(:hover,:focus-visible) .work-label__name>span:last-child{transform:translateX(calc(var(--u) * 8))}.work-label__kind{font-size:calc(var(--u) * 24)}.work-card__title{display:none}@media (max-width:767px){.work-card .frame{--ratio:4/3}.work-label{left:calc(var(--u) * 12);right:calc(var(--u) * 12);bottom:calc(var(--u) * 12);gap:4px;padding:calc(var(--u) * 14) calc(var(--u) * 16);border-radius:calc(var(--u) * 16)}.work-label__name{font-size:calc(var(--u) * 24)}.work-label__kind{font-size:calc(var(--u) * 14)}}.wl{position:relative;background:var(--white);scroll-margin-top:40px}.wl--empty{padding:calc(var(--u) * 80) calc(var(--u) * 130)}.wl__title{margin:0;padding:calc(var(--u) * 40) calc(var(--u) * 130);font-size:calc(var(--u) * 62);line-height:calc(138 / 62);letter-spacing:-.02em;font-weight:400}.wl__list{margin:0;padding:0;list-style:none}.wl__item{border-bottom:.5px solid var(--grey-200)}.wl__row{display:flex;align-items:center;justify-content:space-between;gap:calc(var(--u) * 40);min-height:calc(var(--u) * 229);padding:calc(var(--u) * 49) calc(var(--u) * 130);text-decoration:none;font-weight:300;letter-spacing:-.02em;line-height:normal}.wl__name{font-size:calc(var(--u) * 88);line-height:1.1;color:var(--grey-500)}.wl__cat,.wl__name{transition:color .35s var(--ease-out)}.wl__cat{flex-shrink:0;font-size:calc(var(--u) * 22);color:var(--black);white-space:nowrap}.wl__row:is(.is-active,:focus-visible) :is(.wl__name,.wl__cat){color:var(--purple)}.wl__preview{display:none}@media (max-width:767px){.wl__title{padding:calc(var(--u) * 24) var(--pad);font-size:calc(var(--u) * 36);line-height:1.6}.wl__row{flex-direction:column;align-items:flex-start;gap:6px;min-height:0;padding:20px var(--pad)}.wl__name{font-size:calc(var(--u) * 40)}.wl__cat{font-size:calc(var(--u) * 14);white-space:normal}}.home-stage{position:relative}@media (min-width:768px){.home-stage{--bd-h:max(calc(var(--u) * 1080),100svh)}.home-backdrop{position:absolute;inset:0;z-index:0}.home-backdrop .hero__portrait{position:-webkit-sticky;position:sticky;top:calc(50svh - var(--bd-h) / 2);left:0;right:0;height:var(--bd-h);margin-top:calc(var(--intro-h, 0px) - var(--intro-overlap, 0px) + var(--u) * 1145 - var(--bd-h) / 2);transform:translate3d(0,calc((1 - var(--rise, 1)) * 22svh),0)}.home-stage.has-intro{--intro-h:150svh;--intro-overlap:80svh}.intro{height:var(--intro-h)}.home-stage.has-intro>.hero{margin-top:calc(var(--intro-overlap) * -1)}.intro__stick{position:-webkit-sticky;position:sticky;top:0;display:flex;align-items:center;height:100svh;padding-left:var(--pad)}.intro .w{--q:max(0,var(--p,0) - 0.3);transform:translate3d(0,calc(var(--q) * var(--k, 1) * -90svh),0);opacity:calc(1 - var(--q) * 2);will-change:transform,opacity}.home-stage>.case,.home-stage>.hero{position:relative;z-index:1}.home-stage>.case{--case-w:min(calc(var(--u) * 1360),(100svh - 160px) * 2);--case-h:calc(var(--case-w) / 2);margin-top:calc(var(--u) * 135);padding:0;height:calc(var(--case-h) + 60svh)}.case__stick{position:-webkit-sticky;position:sticky;top:calc(50svh - var(--case-h) / 2);width:var(--case-w);margin-inline:auto}.home-stage .case__title{position:absolute;z-index:5;top:28px;left:40px;margin:0;color:var(--white)}.home-stage .case__banner:after{content:"";position:absolute;inset:0 0 auto 0;z-index:2;height:45%;background:linear-gradient(180deg,rgba(0,0,0,.38),rgba(0,0,0,0));pointer-events:none}.home-stage>.wl{z-index:2;margin-top:calc(var(--u) * 135);padding-bottom:calc(var(--u) * 100)}.home-stage>.hero+.wl{margin-top:calc(100svh - var(--u) * 540)}.wl__preview{z-index:3;top:0;left:calc(var(--u) * 499);width:calc(var(--u) * 562);height:calc(var(--u) * 299.4);margin-top:calc(var(--u) * -149.7);pointer-events:none;perspective:1400px;will-change:transform}.wl__media,.wl__preview{display:block;position:absolute}.wl__media{--hv:0;inset:0;opacity:0;transform:scale(.96);transition:opacity .35s var(--ease-out),transform .6s var(--ease-out)}.wl__media.is-on{opacity:1;transform:none}.wl--instant .wl__media{transition:none}.wl__media>.frame{height:100%}.paper{position:absolute;inset:0;transform-style:preserve-3d;pointer-events:none}.paper__sheet{position:absolute;inset:-10%;overflow:hidden;background:var(--grey-300);-webkit-clip-path:inset(calc(100% / 12));clip-path:inset(calc(100% / 12));will-change:transform,clip-path}.paper__sheet img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}.paper__light{position:absolute;inset:0;background:radial-gradient(60% 80% at var(--lx,50%) var(--ly,50%),rgba(255,255,255,calc(var(--lh, 0) * .12)),transparent 70%),radial-gradient(90% 120% at calc(100% - var(--lx, 50%)) calc(100% - var(--ly, 50%)),rgba(0,0,0,calc(var(--lh, 0) * .25)),transparent 70%),rgba(0,0,0,calc(var(--hv) * .6))}}@media (max-width:767px){.home-stage{display:flex;flex-direction:column}.intro{padding:calc(var(--u) * 118) var(--pad) 0}.intro__text{white-space:normal;font-size:calc(var(--u) * 56);line-height:.96}.home-stage>.hero{order:1}.home-backdrop{order:2;position:relative;z-index:0}.home-backdrop .hero__portrait{margin-top:calc(var(--u) * -26)}.home-stage>.case{order:3}.home-stage>.wl{order:4}}@media (min-width:768px){.site:has(.home-stage) .footer{display:flex;flex-direction:column;justify-content:flex-end;min-height:100svh;margin-top:0}}.about__head{position:relative;height:calc(var(--u) * 1225)}.about__title{position:absolute;z-index:2;left:calc(var(--u) * 155);top:calc(var(--u) * 185);width:calc(var(--u) * 1130);font-size:calc(var(--u) * 88);line-height:1.19;letter-spacing:-.02em}.about__portrait{position:absolute;z-index:1;left:calc(var(--u) * 247);right:0;top:calc(var(--u) * 460);height:calc(var(--u) * 765);aspect-ratio:auto}.about__bio{position:relative;z-index:2;margin:calc(var(--u) * 114) 0 calc(var(--u) * -52) calc(var(--u) * 155);width:calc(var(--u) * 1130);font-size:calc(var(--u) * 56);line-height:calc(80 / 56);font-weight:300;letter-spacing:-.02em}.about__bio .accent,.about__bio strong{font-weight:500}.skills{position:relative;display:grid;grid-template-columns:calc(var(--u) * 577) calc(var(--u) * 438);grid-column-gap:calc(var(--u) * 115);column-gap:calc(var(--u) * 115);align-items:start;min-height:calc(var(--u) * 1479);padding:calc(var(--u) * 495) 0 calc(var(--u) * 200) calc(var(--u) * 155)}.skills__mark{position:absolute;left:calc(var(--u) * (40 - 143));top:0;z-index:0;font-size:calc(var(--u) * 694);line-height:1.2;font-weight:500;letter-spacing:-.02em;color:var(--grey-100);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.skills__groups{position:relative;z-index:1;display:flex;flex-direction:column;gap:calc(var(--u) * 40);font-size:calc(var(--u) * 24);line-height:calc(37 / 24);font-weight:300;letter-spacing:-.02em}.skills__groups h3{font-weight:500}.skills__statement{position:-webkit-sticky;position:sticky;z-index:1;top:max(calc(var(--u) * 160),calc(50svh - var(--u) * 176));margin-top:calc(var(--u) * 39);font-size:calc(var(--u) * 80);line-height:1.1;letter-spacing:-.02em}.disciplines{--bleed:var(--purple);position:relative;min-height:calc(var(--u) * 656);padding:calc(var(--u) * 156) 0 calc(var(--u) * 120) calc(var(--u) * 156);background:var(--purple);color:var(--white)}.disciplines .accent{color:var(--lime)}.disciplines ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:calc(var(--u) * 4);width:calc(var(--u) * 1130);font-size:calc(var(--u) * 48);line-height:1.2;letter-spacing:-.02em}@media (max-width:767px){.about__head{height:auto;padding-top:calc(var(--u) * 118)}.about__title{width:auto;margin:0 var(--pad);font-size:calc(var(--u) * 36);line-height:1.12}.about__portrait,.about__title{position:relative;left:auto;top:auto}.about__portrait{height:auto;margin-top:calc(var(--u) * -18);aspect-ratio:390/420}.about__bio{width:auto;margin:calc(var(--u) * 48) var(--pad) 0;font-size:calc(var(--u) * 26);line-height:1.3}.skills{display:block;min-height:0;margin-top:calc(var(--u) * 56);padding:0 0 calc(var(--u) * 72)}.skills__mark{left:var(--pad);top:calc(var(--u) * -30);font-size:calc(var(--u) * 190)}.skills__groups,.skills__statement{position:relative;left:auto;top:auto;width:auto;margin:0 var(--pad)}.skills__groups{padding-top:calc(var(--u) * 80);font-size:16px;line-height:1.5}.skills__statement{margin-top:calc(var(--u) * 56);font-size:calc(var(--u) * 44)}.disciplines{min-height:0;padding:calc(var(--u) * 64) var(--pad) calc(var(--u) * 72)}.disciplines ul{width:auto;font-size:calc(var(--u) * 32)}}.work{--accent:var(--purple)}.work[data-accent=lime]{--accent:var(--lime)}.work[data-accent=black]{--accent:var(--black)}.work__head{padding:calc(var(--u) * 125) var(--pad) 0 calc(var(--u) * 155)}.work__back{display:block;width:-moz-fit-content;width:fit-content;margin-bottom:calc(var(--u) * 24);font-size:calc(var(--u) * 64);line-height:1;color:var(--purple);transition:transform .45s var(--ease-out)}.work__back:focus-visible,.work__back:hover{transform:translateX(calc(var(--u) * -10))}.crumbs{font-size:12px;font-weight:300;line-height:1.4}.crumbs ol{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none}.crumbs li+li:before{content:"/";margin:0 .5em}.crumbs a:hover{text-decoration:underline;text-underline-offset:3px}.crumbs [aria-current=page]{color:var(--purple)}.work__title{margin-top:calc(var(--u) * 24);font-size:calc(var(--u) * 122);line-height:calc(138 / 122);width:calc(var(--u) * 1034)}.work__intro,.work__title{letter-spacing:-.02em;max-width:100%}.work__intro{margin-top:calc(var(--u) * 30);width:calc(var(--u) * 1130);font-size:calc(var(--u) * 40);line-height:1.2}.work__intro p+p{margin-top:0}.work__hero{margin-top:calc(var(--u) * 78)}.work__hero .frame{--ratio:16/9}.work__meta{--bleed:var(--grey-50);background:var(--grey-50);padding:calc(var(--u) * 51) var(--pad) calc(var(--u) * 51) calc(var(--u) * 155);display:grid;grid-template-columns:calc(var(--u) * 438) calc(var(--u) * 442);grid-column-gap:calc(var(--u) * 139);column-gap:calc(var(--u) * 139);font-size:16px;line-height:1.3;letter-spacing:-.02em}.work__meta dl{display:flex;flex-direction:column;gap:12px;margin:0}.work__meta dt{font-weight:500}.work__meta dd{margin:0;white-space:pre-line}.work__blocks{margin-top:calc(var(--u) * 51)}.block+.block{margin-top:calc(var(--u) * 120)}.block--accordion+.block{margin-top:calc(var(--u) * 180)}.block--media+.block--text-body{margin-top:calc(var(--u) * 40)}.block--text-body+.block--media{margin-top:calc(var(--u) * 100)}.block--media+.block--text-statement{margin-top:calc(var(--u) * 80)}.accordion{margin:0 var(--pad)}.accordion__item{border-bottom:.5px solid var(--black)}.accordion__title{margin:0;font-size:inherit}.accordion__button{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;padding:calc(var(--u) * 16);border:0;background:none;cursor:pointer;text-align:left;font-size:calc(var(--u) * 32);line-height:1.2;letter-spacing:-.02em;transition:color .4s var(--ease-in-out),padding-left .5s var(--ease-out)}.accordion__button:hover{color:var(--purple);padding-left:calc(var(--u) * 28)}.accordion__icon{position:relative;flex:none;width:calc(var(--u) * 20);height:calc(var(--u) * 20);min-width:14px;min-height:14px}.accordion__icon:after,.accordion__icon:before{content:"";position:absolute;left:0;right:0;top:50%;height:1.5px;margin-top:-.75px;background:currentColor;transition:transform .6s var(--ease-in-out)}.accordion__icon:after{transform:rotate(90deg)}.accordion__button[aria-expanded=true] .accordion__icon:after{transform:rotate(0deg)}.accordion__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .7s var(--ease-in-out)}.accordion__panel[data-open=true]{grid-template-rows:1fr}.accordion__panel>div{overflow:hidden;min-height:0}.accordion__body{padding:calc(var(--u) * 16) calc(var(--u) * 40) calc(var(--u) * 48);font-size:18px;line-height:1.35;letter-spacing:-.02em;max-width:calc(var(--u) * 1000);opacity:0;transform:translate3d(0,-24px,0);transition:transform .7s var(--ease-in-out),opacity .35s var(--ease-in-out) .35s,visibility 0s linear .7s}.accordion__panel[data-open=true] .accordion__body{opacity:1;transform:none;transition:transform .7s var(--ease-out) .05s,opacity .5s var(--ease-out) .15s,visibility 0s}.accordion__body[inert]{visibility:hidden}.accordion__text strong{font-weight:600}.accordion__media{margin-top:calc(var(--u) * 32)}.accordion__media .frame{background:transparent}.media-block{--gap:calc(var(--u) * 24)}.media-block--full .frame{--ratio:16/9}.media-block--wide{margin-inline:var(--pad)}.media-block--wide .frame{--ratio:1360/567;--radius:24px}.media-block--offset{margin-left:calc(var(--u) * 386);width:calc(var(--u) * 899)}.media-block--offset .frame{--ratio:901/507}.media-block--split{margin-inline:var(--pad);display:grid;align-items:start;grid-template-columns:1fr 1fr;grid-gap:var(--gap);gap:var(--gap)}.media-block--split .frame{--ratio:4/3}.media-block--phones{margin-inline:var(--pad);display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--gap);gap:var(--gap)}.phone{display:flex;justify-content:center;align-items:flex-start;background:var(--white)}.phone .frame{--ratio:317/685;--radius:calc(var(--u) * 16);width:72.2%}.media-caption{margin-top:10px;font-size:14px;font-weight:300;line-height:1.4}.text-body{margin-left:calc(var(--u) * 386);width:calc(var(--u) * 899);max-width:calc(100% - calc(var(--u) * 386) - var(--pad));font-size:18px;line-height:1.35;letter-spacing:-.02em}.text-body p,.text-statement p{white-space:pre-line}.text-body p+p,.text-statement p+p{margin-top:1.2em}.text-statement{margin-left:calc(var(--u) * 155);width:calc(var(--u) * 1130);max-width:calc(100% - calc(var(--u) * 155) - var(--pad));font-size:calc(var(--u) * 40);line-height:1.2;letter-spacing:-.02em}.more{margin-top:calc(var(--u) * 168);padding:0 var(--pad)}.more__title{margin-left:calc(var(--u) * 37 - var(--pad) + var(--pad));font-size:calc(var(--u) * 104);line-height:1.2;letter-spacing:-.02em}.more__grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:calc(var(--u) * 24);gap:calc(var(--u) * 24);margin-top:calc(var(--u) * 30)}.more__card{display:block}.more__card .frame{--ratio:324/381}.more__card .frame__media{transition:transform 1.2s var(--ease-out)}.more__card:focus-visible .frame__media,.more__card:hover .frame__media{transform:scale(1.045)}.more__name{margin-top:12px;font-size:20px;line-height:1.2;transition:color .35s var(--ease-in-out)}.more__card:hover .more__name{color:var(--purple)}@media (max-width:767px){.work__head{padding:calc(var(--u) * 100) var(--pad) 0}.work__back{font-size:calc(var(--u) * 40);margin-bottom:calc(var(--u) * 16)}.work__title{font-size:calc(var(--u) * 56);line-height:1;width:auto}.work__intro{width:auto;font-size:calc(var(--u) * 22);line-height:1.25}.work__hero{margin-top:calc(var(--u) * 36)}.work__hero .frame{--ratio:4/5}.work__meta{grid-template-columns:1fr;padding:28px var(--pad);row-gap:16px}.work__blocks{margin-top:28px}.block+.block,.block--accordion+.block,.block--text-body+.block--media{margin-top:calc(var(--u) * 56)}.block--media+.block--text-body{margin-top:20px}.accordion__button{font-size:22px;padding:16px 4px}.accordion__button:hover{padding-left:4px}.accordion__body{padding:4px 4px 28px;font-size:18px}.media-block--full .frame{--ratio:4/5}.media-block--offset,.text-body,.text-statement{margin-left:var(--pad);margin-right:var(--pad);width:auto;max-width:none}.media-block--offset .frame,.media-block--wide .frame{--ratio:4/3}.media-block--split{grid-template-columns:1fr}.media-block--phones{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.phone{background:none}.phone .frame{width:100%;--radius:8px}.text-body{font-size:18px;line-height:1.35}.text-statement{font-size:calc(var(--u) * 26)}.more{margin-top:calc(var(--u) * 80)}.more__title{margin-left:0;font-size:calc(var(--u) * 52)}.more__grid{grid-template-columns:repeat(2,1fr);gap:16px 8px}}.footer{position:relative;z-index:2;background:var(--white);margin-top:calc(var(--u) * 200);padding:0 var(--pad) calc(40px + 22px + 40px);scroll-margin-top:40px}.footer__inner{display:flex;flex-wrap:wrap;gap:16px 48px;align-items:baseline;justify-content:space-between;padding-top:calc(var(--u) * 48)}.footer__note{max-width:32ch;font-size:20px;line-height:1.3}.footer__links{display:flex;flex-wrap:wrap;gap:8px 32px;margin:0;padding:0;list-style:none;font-size:calc(var(--u) * 32);line-height:1.2}.footer__links a{transition:color .35s var(--ease-in-out)}.footer__links a:hover{color:var(--purple)}.footer__cta{font-size:calc(var(--u) * 132);line-height:1;letter-spacing:-.03em}.footer__contact{display:flex;flex-wrap:wrap;gap:12px 40px;margin-top:calc(var(--u) * 40);font-size:22px;line-height:1;letter-spacing:-.02em}.footer__contact a{text-decoration:none}.footer__contact a span{display:inline-block;transition:transform .4s var(--ease-out)}.footer__contact a:hover span{transform:translate3d(2px,-2px,0)}.site main:has(>.disciplines:last-child)+.footer{margin-top:0;padding-top:calc(var(--u) * 80)}@media (max-width:767px){.footer{margin-top:72px;padding-bottom:calc(40px + 15px + 40px)}.footer__cta{font-size:calc(var(--u) * 56)}.footer__links{font-size:22px}.site main:has(>.disciplines:last-child)+.footer{padding-top:40px}}.preview-bar{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 16px;padding:8px 16px;background:var(--black);color:var(--white);font-size:14px;letter-spacing:0}.preview-bar strong{font-weight:600}.preview-bar a,.preview-bar button{padding:4px 10px;border:1px solid rgba(255,255,255,.5);border-radius:4px;background:none;color:var(--white);cursor:pointer}.preview-bar a:hover{background:var(--white);color:var(--black)}.has-preview-bar .header{top:44px}.has-preview-bar{padding-top:44px}html{scroll-behavior:auto}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media (prefers-reduced-motion:reduce){.site *,.site :after,.site :before{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}.site [data-reveal],.site [data-reveal] .frame__media,.site [data-reveal] .wi{opacity:1!important;transform:none!important;-webkit-clip-path:none!important;clip-path:none!important}.site .frame__inner{inset:0!important}.site .frame__inner,.site .more__card:hover .frame__media,.site .work-card:hover .frame__media,.site [data-parallax-x],.site [data-parallax]{transform:none!important}}.not-found{min-height:80svh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:24px;padding:calc(var(--u) * 160) var(--pad) calc(var(--u) * 80) calc(var(--u) * 155)}.not-found h1{font-size:calc(var(--u) * 96);line-height:1;letter-spacing:-.02em}.not-found p{font-size:20px}@media (max-width:767px){.not-found{padding-left:var(--pad)}.not-found h1{font-size:44px}}.header{view-transition-name:site-header}::view-transition-group(work-media){animation-duration:.62s;animation-timing-function:cubic-bezier(.7,0,.2,1)}::view-transition-new(work-media),::view-transition-old(work-media){width:100%;height:100%;object-fit:cover;animation-duration:.62s;animation-timing-function:cubic-bezier(.7,0,.2,1)}::view-transition-old(root){animation:vt-fade-out .45s linear both}::view-transition-new(root){animation:vt-fade-in .45s linear both}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0}}.frame.vt-arrived,.frame.vt-arrived .frame__media{transition:none!important}.frame.vt-arrived{opacity:1!important;-webkit-clip-path:none!important;clip-path:none!important}.frame.vt-arrived .frame__media{transform:none!important}@media (max-width:767px){::view-transition-group(work-media),::view-transition-new(work-media),::view-transition-old(work-media){animation-duration:.45s}::view-transition-new(root),::view-transition-old(root){animation-duration:.3s}}@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-new(*),::view-transition-old(*){animation:none!important}}