@font-face{font-family:Mona Sans;font-style:normal;font-weight:200 900;font-stretch:75% 125%;font-display:swap;src:url(../media/931e7cc49084aee7-s.31t0fxc8q4a1k.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Mona Sans;font-style:normal;font-weight:200 900;font-stretch:75% 125%;font-display:swap;src:url(../media/7a642828b0ad1018-s.0z0hpjmp_9hhf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Mona Sans;font-style:normal;font-weight:200 900;font-stretch:75% 125%;font-display:swap;src:url(../media/c89730c3ffa99552-s.p.1zjat_zsa1d11.woff2)format("woff2");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:Mona Sans Fallback;src:local(Arial);ascent-override:104.72%;descent-override:30.74%;line-gap-override:0.0%;size-adjust:104.08%}.VIGh3W_className{font-family:Mona Sans,Mona Sans Fallback;font-style:normal}.VIGh3W_variable{--font-sans:"Mona Sans", "Mona Sans Fallback"}
:root{--tint:#fff;--gutter:clamp(16px, 3.3vw, 56px);--nav-h:72px;--t-micro:.2s;--t-ui:.4s;--t-edit:.7s;--t-cine:1.15s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-io:cubic-bezier(.65, 0, .35, 1);--fs-display:clamp(3rem, 7.9vw, 8.75rem);--fs-h2:clamp(2.25rem, 5vw, 5.25rem);--fs-h3:clamp(1.5rem, 2.5vw, 2.5rem);--fs-lead:clamp(1.0625rem, 1.25vw, 1.25rem);--fs-body:1.0625rem;--fs-small:.9375rem;--fs-meta:.8125rem;--cut:.66;--z-stage:0;--z-page:1;--z-nav:50;--z-loader:100}@media (min-width:1700px){html{font-size:112.5%}}@media (min-width:2300px){html{font-size:131.25%}}@media (max-width:899px){:root{--nav-h:60px;--fs-display:clamp(2.5rem, 12.6vw, 4.5rem);--fs-h2:clamp(2rem, 9.6vw, 3.25rem);--fs-h3:clamp(1.375rem, 6vw, 1.75rem)}}*,:before,:after{box-sizing:border-box}html{background:var(--black);color:var(--white);font-family:var(--font-sans), system-ui, sans-serif;-webkit-text-size-adjust:100%;scroll-behavior:smooth;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-color:#3a3c3e #000;font-size:100%}body{min-height:100svh;font-size:var(--fs-body);margin:0;line-height:1.5;overflow-x:clip}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0;list-style:none}img,video,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:2px solid var(--white);outline-offset:3px}[data-tone=light] :focus-visible{outline-color:var(--ink)}::selection{background:var(--white);color:var(--black)}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{left:var(--gutter);z-index:calc(var(--z-loader) + 1);background:var(--white);color:var(--black);padding:10px 14px;position:fixed;top:12px;transform:translateY(-200%)}.skip:focus{transform:none}.display{font-size:var(--fs-display);letter-spacing:-.047em;text-transform:lowercase;font-weight:540;font-stretch:100%;line-height:.9}.h2{font-size:var(--fs-h2);letter-spacing:-.042em;text-transform:lowercase;font-weight:540;line-height:.94}.h3{font-size:var(--fs-h3);letter-spacing:-.03em;text-transform:lowercase;font-weight:520;line-height:1.02}.lead{font-size:var(--fs-lead);letter-spacing:-.008em;text-wrap:pretty;line-height:1.42}.meta{font-size:var(--fs-meta);letter-spacing:.012em;text-transform:lowercase;font-weight:500;font-stretch:88%;line-height:1.35}.line{margin-block:-.09em -.13em;padding-block:.09em .13em;display:block;overflow:hidden}.line>span{will-change:transform;display:block}.stage{height:100lvh;z-index:var(--z-stage);background:var(--black);position:fixed;inset:0 0 auto}.stage canvas{display:block}main{z-index:var(--z-page);position:relative}.grain{z-index:calc(var(--z-nav) - 1);pointer-events:none;opacity:.055;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.15' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.cta{--notch:12px;background:var(--white);min-height:52px;color:var(--black);letter-spacing:-.012em;text-transform:lowercase;white-space:nowrap;clip-path:polygon(0 0, 100% 0, 100% calc(100% - var(--notch)), calc(100% - var(--notch) / var(--cut)) 100%, 0 100%);transition:--notch var(--t-ui) var(--ease-out), font-stretch var(--t-ui) var(--ease-out), background-color var(--t-micro) linear;-webkit-tap-highlight-color:transparent;align-items:center;gap:10px;padding:0 26px 0 22px;font-size:1rem;font-weight:560;font-stretch:100%;display:inline-flex;position:relative}@property --notch{syntax:"<length>";inherits:true;initial-value:12px}.cta svg{flex:none;width:18px;height:18px}@media (hover:hover){.cta:hover{--notch:22px;font-stretch:108%}}.cta:active{background:#dcdcd8}.cta--line{color:var(--white);min-height:44px;font-size:var(--fs-small);clip-path:none;transition:background-color var(--t-micro) linear, color var(--t-micro) linear, border-color var(--t-micro) linear;background:0 0;border:1px solid #ffffff6b;padding:0 20px 0 16px}@media (hover:hover){.cta--line:hover{background:var(--white);color:var(--black);border-color:var(--white);font-stretch:100%}}[data-tone=light] .cta{background:var(--ink);color:var(--white)}.link{text-transform:lowercase;letter-spacing:-.01em;align-items:center;min-height:44px;font-weight:520;display:inline-flex;position:relative}.link:after{content:"";transform-origin:0;height:1px;transition:transform var(--t-ui) var(--ease-out);background:currentColor;position:absolute;bottom:9px;left:0;right:0}@media (hover:hover){.link:after{transform:scaleX(.28)}.link:hover:after{transform:scaleX(1)}}.nav{z-index:var(--z-nav);height:var(--nav-h);padding-inline:var(--gutter);color:var(--white);transition:color var(--t-ui) linear;pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:fixed;inset:0 0 auto}.nav>*{pointer-events:auto}html[data-nav=light] .nav{color:var(--ink)}.nav-logo{align-items:center;min-height:44px;display:flex}.nav-logo svg{fill:currentColor;width:auto;height:30px}.nav-right{align-items:center;gap:clamp(18px,2.4vw,36px);display:flex}.nav-links{font-size:var(--fs-small);gap:clamp(16px,2vw,30px);display:flex}.nav-links a{text-transform:lowercase;opacity:.74;min-height:44px;transition:opacity var(--t-micro) linear, font-stretch var(--t-ui) var(--ease-out);align-items:center;font-weight:500;display:inline-flex}@media (hover:hover){.nav-links a:hover{opacity:1;font-stretch:110%}}.nav .cta--line{color:inherit;border-color:currentColor}html[data-nav=light] .nav .cta--line:hover{background:var(--ink);color:var(--white);border-color:var(--ink)}.nav-cta-short{display:none}@media (max-width:899px){.nav-logo svg{height:26px}.nav-links,.nav-cta-long{display:none}.nav-cta-short{display:inline}}.loader{z-index:var(--z-loader);background:var(--black);--wipe:0;--edge:calc((1 - var(--wipe)) * 100lvh - var(--wipe) * var(--cut) * 100vw);clip-path:polygon(0 0, 100% 0, 100% var(--edge), 0 calc(var(--edge) + var(--cut) * 100vw));transition:--wipe 1.05s var(--ease-io);place-items:center;display:grid;position:fixed;inset:0}@property --wipe{syntax:"<number>";inherits:true;initial-value:0}.loader[data-done]{--wipe:1;pointer-events:none}.loader svg{width:clamp(54px,7vw,84px);height:auto;fill:var(--white);overflow:visible}.loader .mk-dot,.loader .mk-stem,.loader .mk-p{animation:mk-in .7s var(--ease-out) both}.loader .mk-stem{animation-delay:80ms}.loader .mk-dot{animation-name:mk-slide;animation-delay:.3s}.loader .mk-p{animation-delay:.18s}@keyframes mk-in{0%{clip-path:inset(100% 0 0)}to{clip-path:inset(0)}}@keyframes mk-slide{0%{opacity:0;transform:translate(-230px,151.8px)}to{opacity:1;transform:none}}.no-js .loader{display:none}.footer{z-index:2;background:var(--black);padding:26px var(--gutter) calc(26px + env(safe-area-inset-bottom));border-top:1px solid var(--slate);font-size:var(--fs-small);color:var(--concrete);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 32px;display:flex;position:relative}.footer-brand{align-items:center;min-height:44px;display:inline-flex}.footer-brand svg{width:auto;height:26px;fill:var(--white)}.footer-links{flex-wrap:wrap;gap:4px 26px;display:flex}.footer-links a{color:var(--white)}.footer-note{max-width:78ch;font-size:var(--fs-meta);color:#8d8f8c;flex-basis:100%;line-height:1.45}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}}
.opening{height:calc((var(--len-d) + 1) * 100lvh);position:relative}.opening-stage{height:100lvh;position:sticky;top:0;overflow:hidden}.opening-anchor{top:calc(var(--anchor-d) * 100lvh);position:absolute}.hero{height:100svh;position:absolute;inset:0 0 auto}.hero-inner{--out:0;--edge:calc((1 - var(--out)) * (100% + var(--cut) * 100vw) - var(--cut) * 100vw);clip-path:polygon(0 0, 100% 0, 100% var(--edge), 0 calc(var(--edge) + var(--cut) * 100vw));position:absolute;inset:0}.hero-inner:before{content:"";pointer-events:none;background:radial-gradient(120% 90% at 0 100%,#000000b3 0%,#00000052 38%,#0000 66%),linear-gradient(#00000073 0,#0000 15%);position:absolute;inset:0}.hero-depth{object-fit:cover;mix-blend-mode:screen;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-copy{left:var(--gutter);max-width:min(62rem,92vw);position:absolute;bottom:clamp(36px,7vh,76px)}.hero-lead{color:#dcdcd9;max-width:35ch;margin-top:clamp(18px,2.6vh,30px)}.hero-actions{align-items:center;gap:30px;margin-top:clamp(20px,3vh,32px);display:flex}.hero-hint{right:var(--gutter);color:var(--concrete);align-items:center;gap:14px;display:flex;position:absolute;bottom:clamp(36px,7vh,76px)}.hero-hint:before{content:"";background:currentColor;width:46px;height:1px}.still{display:none}.work{background:var(--black);visibility:hidden;--fh:min(100lvh - 200px, 68vw / 1.6);--fw:calc(var(--fh) * 1.6);--bar:44px;--ftop:calc(var(--nav-h) + var(--bar) + (100lvh - var(--nav-h) - var(--bar) - 40px - var(--fh)) / 2);position:absolute;inset:0}.work-label{left:var(--gutter);top:calc(var(--nav-h) + 26px);color:var(--concrete);flex-direction:column;gap:2px;display:flex;position:absolute}.work-count{font-variant-numeric:tabular-nums}.work-count b{color:var(--tint);transition:color var(--t-ui) linear;font-weight:500}.work-list,.work-tilt{margin:0;position:absolute;inset:0}.frame{right:var(--gutter);top:var(--ftop);width:var(--fw);height:var(--fh);will-change:transform;position:absolute}html:not([data-static],.no-js) .project:not([data-warm]) .frame{display:none}.frame-window{background:#0c0c0d;border-radius:6px;position:absolute;inset:0;overflow:hidden}.frame-window picture,.frame-phone picture{display:contents}.frame-window img,.frame-window video,.frame-phone img,.frame-phone video{object-fit:cover;object-position:50% 0;width:100%;height:100%;position:absolute;inset:0}video.live{opacity:0;transition:opacity .55s linear}video.live[data-live]{opacity:1}.frame-shade{opacity:0;pointer-events:none;background:#000;position:absolute;inset:0}.frame-bar{height:var(--bar);color:var(--concrete);justify-content:space-between;align-items:center;gap:16px;display:flex;position:absolute;bottom:100%;left:0;right:0}.frame-url{text-transform:none;align-items:center;gap:10px;display:inline-flex}.frame-url:before{content:"";background:var(--p-tint);width:6px;height:6px}.frame-bar .link{color:var(--white);min-height:var(--bar)}.frame-bar .link:after{bottom:11px}.frame-phone{aspect-ratio:390/844;visibility:hidden;background:#0c0c0d;border-radius:26px;position:absolute;top:2%;bottom:2%;left:50%;overflow:hidden;translate:-50%;box-shadow:0 0 0 1px #ffffff29,0 0 0 7px #111213}.project-meta{left:var(--gutter);width:calc(100vw - var(--fw) - var(--gutter) * 3);visibility:hidden;max-width:30rem;position:absolute;bottom:40px}.mask{display:block;overflow:hidden}.mask>*{will-change:transform;display:block}.project-kind b{font-variant-numeric:tabular-nums;color:var(--p-tint);margin-right:12px;font-weight:500}.project-kind{color:var(--concrete)}.project-name{text-wrap:balance;margin-top:14px;padding-bottom:.14em}.project-seg{color:var(--concrete);margin-top:8px}.project-sum{font-size:var(--fs-small);color:#dadbd8;text-wrap:pretty;margin-top:20px;line-height:1.5}.mask:has(.project-caps){margin-top:20px}.project-caps{color:var(--white);flex-wrap:wrap;display:flex}.project-caps li:not(:last-child):after{content:"/";color:var(--p-tint);margin-inline:9px}.project-brand{color:#8d8f8c;margin-top:8px}.project-open{display:none}.device-note{color:var(--p-tint);visibility:hidden;margin-top:6px;position:absolute;top:100%;left:0}@media (max-width:899px){.opening{height:calc((var(--len-m) + 1) * 100lvh)}.opening-anchor{top:calc(var(--anchor-m) * 100lvh)}.hero-inner:before{background:linear-gradient(#00000080 0,#0000 14% 40%,#000000c7 62%,#000000e6 100%)}.hero-copy{right:var(--gutter);bottom:22px}.hero-lead{max-width:32ch;font-size:1rem}.hero-actions{gap:22px}.hero-hint,.work-label{display:none}.project{will-change:transform;position:absolute;inset:0}.frame{width:auto;height:auto;inset:0}.frame-window{border-radius:0}.frame-bar,.frame-phone{display:none}.project-meta{width:auto;max-width:none;padding:16px var(--gutter) calc(100lvh - 100svh + 18px + env(safe-area-inset-bottom));background:var(--black);border-top:1px solid var(--slate);visibility:visible;bottom:0;left:0;right:0}.mask{overflow:visible}.project-name{margin-top:8px}.project-seg{margin-top:4px}.project-sum{margin-top:12px;font-size:.9375rem;line-height:1.42}.mask:has(.project-caps){margin-top:12px}.project-brand{margin-top:10px}.project-brand>span{justify-content:space-between;align-items:center;gap:16px;display:flex}.project-open{min-width:48px;min-height:48px;color:var(--white);text-underline-offset:4px;text-decoration:underline;-webkit-text-decoration-color:var(--p-tint);text-decoration-color:var(--p-tint);justify-content:flex-end;align-items:center;margin-block:-14px;display:inline-flex}.device-note{display:none}.nav[data-solid]{background:var(--black)}}
.lightroom{z-index:2;background:var(--plaster);color:var(--ink);margin-top:calc(-1 * var(--cut) * 100vw);padding-top:calc(var(--cut) * 50vw);clip-path:polygon(0 calc(var(--cut) * 100vw), 100% 0, 100% calc(100% - var(--cut) * 100vw), 0 100%);position:relative}.lightroom ::selection{background:var(--ink);color:var(--white)}.anatomy{height:calc((var(--len-d) + 1) * 100lvh);position:relative}.anatomy-stage{--grid:0;--wire:0;--code:0;--m:1;--push:0;--z:0;--phone:0;--wght:540;--wdth:100;--w:880;--h:550;--s:1;column-gap:var(--gutter);height:100svh;padding:calc(var(--nav-h) + clamp(8px, 2vh, 24px)) var(--gutter) clamp(20px, 4vh, 40px);grid-template-rows:auto 1fr auto;grid-template-columns:minmax(17rem,.4fr) 1fr;display:grid;position:sticky;top:0;overflow:hidden}.anatomy-head{grid-area:1/1}.anatomy-title{font-size:clamp(2rem,3.7vw,3.9rem)}.anatomy-title span{display:block}.anatomy-lead{max-width:32ch;font-size:var(--fs-small);color:var(--ink-soft);margin-top:18px;line-height:1.5}.anatomy-step{display:none}.svc-list{border-bottom:1px solid #0a0a0b29;grid-area:2/1/4;align-self:end}.svc{text-align:left;color:#8a8c8a;width:100%;transition:color var(--t-ui) linear;border-top:1px solid #0a0a0b29;padding:clamp(7px,1.25vh,13px) 0;display:block}.svc-name{letter-spacing:-.03em;transition:font-stretch var(--t-edit) var(--ease-out);font-size:clamp(1.375rem,2.15vw,2.125rem);font-weight:520;font-stretch:100%;line-height:1.08;display:block}.svc-line{font-size:var(--fs-small);color:var(--ink-soft);transition:grid-template-rows var(--t-edit) var(--ease-out);grid-template-rows:0fr;line-height:1.45;display:grid}.svc-line>span{max-width:34ch;overflow:hidden}.svc[data-on]{color:var(--ink)}.svc[data-on] .svc-name{font-stretch:122%}.svc[data-on] .svc-line{grid-template-rows:1fr}.svc[data-on] .svc-line>span{padding-top:6px}@media (hover:hover){.svc:hover{color:var(--ink)}}.spec-area{grid-area:1/2/3;min-height:0;position:relative}.spec-rig{--px:0;--py:0;width:calc(var(--w) * 1px);height:calc(var(--h) * 1px);translate:-50% -50%;transform:perspective(2000px) scale(calc(var(--s) * (1 - var(--z) * .2))) rotateX(calc(var(--z) * (54deg - var(--py) * 12deg))) rotateZ(calc(var(--z) * (-30deg + var(--px) * 16deg)));transform-style:preserve-3d;will-change:transform;position:absolute;top:50%;left:50%}.spec-rig:before{content:"";filter:blur(34px);background:#0000006b;border-radius:40px;position:absolute;inset:5% 3% -4%;transform:translateZ(-2px)}.spec-rig:after{content:"";opacity:var(--phone);pointer-events:none;border:9px solid #101112;border-radius:46px;position:absolute;inset:-9px}.spec{transform-style:preserve-3d;color:#fff;position:absolute;inset:0;container:spec/inline-size}.spec-layer{--d:0;border-radius:calc(var(--phone) * 9.5cqw);transform:translateZ(calc(var(--z) * var(--d) * 1px));background:rgb(255 255 255/calc(var(--z) * .035));box-shadow:inset 0 0 0 1px rgb(255 255 255/calc(var(--z) * .46));position:absolute;inset:0;overflow:hidden}.spec-layer:after{content:attr(data-layer);letter-spacing:.02em;opacity:var(--z);font-size:1.3cqw;font-weight:500;position:absolute;bottom:1cqw;right:1.2cqw}.spec-screens{--d:96}.spec-text{--d:192}.spec-ui{--d:288}.spec-room{background:#050506}.spec-room i{opacity:calc(1 - var(--wire) * .86);position:absolute;inset-inline:0}.room-slot{background:#efe8da;height:.4cqw;top:13%}.room-wall{background:repeating-linear-gradient(90deg,#0000005c 0 .14cqw,#0000 .14cqw 9.6cqw),linear-gradient(#5a5955 0,#2c2c2a 38%,#151515 78%,#0b0b0b 100%);top:calc(13% + .4cqw);bottom:32%}.room-floor{background:linear-gradient(#0c0c0d,#030303);top:68%;bottom:0}.spec-screens{transform-origin:68.75% 49.25%;transform:translateZ(calc(var(--z) * var(--d) * 1px)) scale(calc(1 + var(--push) * 2.1))}.spec-screen{aspect-ratio:16/10;box-shadow:0 0 7cqw color-mix(in srgb, var(--glow) 24%, transparent);background:#0c0c0d;position:absolute}.spec-screen img{object-fit:cover;object-position:50% 0;width:100%;height:100%;opacity:calc(1 - var(--wire) * .94);position:absolute;inset:0}.spec-screen:after{content:"";opacity:calc(1 - clamp(0, (var(--m) - var(--j) * .1) / .3, 1));background:#050505;position:absolute;inset:0}.spec-screen:first-child{width:20%;top:22%;left:16%}.spec-screen:nth-child(2){width:15.5%;top:24.5%;left:66%}.spec-screen:nth-child(3){width:31.5%;top:33.5%;left:53%}.spec-screen:nth-child(4){width:19%;top:43%;left:86.5%}.spec .is-tall{display:none}.spec-text,.spec-ui{opacity:calc(1 - clamp(0, var(--push) * 2.4, 1))}.spec-title{font-variation-settings:"wght" var(--wght), "wdth" var(--wdth);letter-spacing:-.047em;white-space:nowrap;font-size:7.9cqw;line-height:.9;position:absolute;bottom:calc(7% + 13.6cqw);left:3.3%}.spec-title .line>span{--t:clamp(0, (var(--m) - .18 - var(--k) * .09) / .55, 1);transform:translateY(calc(pow(1 - var(--t), 4) * 112%))}.spec-lead{color:#dcdcd9;width:31cqw;opacity:clamp(0, (var(--m) - .6) / .3, 1);font-size:1.26cqw;line-height:1.42;position:absolute;bottom:calc(7% + 6.2cqw);left:3.3%}.spec-nav{align-items:center;gap:2.2cqw;height:5cqw;padding-inline:3.3%;display:flex;position:absolute;inset:0 0 auto}.spec-nav svg{fill:#fff;width:auto;height:2.1cqw;margin-right:auto}.spec-links{opacity:.74;gap:2cqw;font-size:1.05cqw;display:flex}.spec-navcta{border:1px solid #ffffff73;padding:.75cqw 1.3cqw;font-size:1.05cqw;font-weight:560}.spec-actions{opacity:clamp(0, (var(--m) - .7) / .3, 1);align-items:center;gap:2cqw;font-size:1.1cqw;font-weight:560;display:flex;position:absolute;bottom:7%;left:3.3%}.spec-btn{background:rgb(255 255 255/calc(1 - var(--wire)));height:3.7cqw;color:color-mix(in srgb, #000 calc((1 - var(--wire)) * 100%), #fff);clip-path:polygon(0 0,100% 0,100% calc(100% - .85cqw),calc(100% - 1.29cqw) 100%,0 100%);align-items:center;gap:.7cqw;padding:0 1.9cqw 0 1.6cqw;display:inline-flex}.spec-btn svg{width:1.3cqw;height:1.3cqw}.spec-link{text-underline-offset:.4cqw;text-decoration:underline}.spec-grid{--col:calc((100% - 11 * 1.5cqw) / 12);background:repeating-linear-gradient(90deg, #ffffff57 0 1px, #fff0 1px calc(var(--col) - 1px), #ffffff57 calc(var(--col) - 1px) var(--col), #fff0 var(--col) calc(var(--col) + 1.5cqw)), repeating-linear-gradient(90deg, #ffffff0b 0 var(--col), #fff0 var(--col) calc(var(--col) + 1.5cqw));clip-path:inset(0 0 calc((1 - var(--grid)) * 100%) 0);pointer-events:none;position:absolute;inset:0 3.3%;transform:translateZ(1px)}.spec [data-tag]{outline:1px dashed rgb(255 255 255/calc(var(--wire) * .8));outline-offset:.35cqw}.spec [data-tag]:before{content:attr(data-tag);color:#000;letter-spacing:0;white-space:nowrap;opacity:var(--wire);clip-path:none;background:#fff;padding:.3cqw .6cqw;font:500 1.05cqw/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;position:absolute;bottom:calc(100% + .35cqw);left:-.35cqw}.spec-btn[data-tag]{clip-path:none;position:relative}.spec-nav[data-tag]:before{top:calc(100% + .35cqw);bottom:auto}@container spec (max-width:620px){.spec .is-wide{display:none}.spec .is-tall{display:revert}.spec-layer:after{font-size:3cqw}.room-slot{height:.8cqw;top:9%}.room-wall{background:repeating-linear-gradient(90deg,#0000005c 0 .3cqw,#0000 .3cqw 19cqw),linear-gradient(#5a5955 0,#2c2c2a 38%,#151515 78%,#0b0b0b 100%);top:calc(9% + .8cqw);bottom:48%}.room-floor{top:52%}.spec-screens{transform-origin:50% 34%}.spec-screen{aspect-ratio:390/844;box-shadow:0 0 14cqw color-mix(in srgb, var(--glow) 26%, transparent)}.spec-screen:first-child{width:33%;top:17%;left:-9%}.spec-screen:nth-child(2){display:none}.spec-screen:nth-child(3){width:42%;top:12.5%;left:29%}.spec-screen:nth-child(4){width:33%;top:20%;left:76%}.spec-title{font-size:12.6cqw;bottom:calc(5% + 33cqw);left:4.2%}.spec-lead{width:82cqw;font-size:3.7cqw;bottom:calc(5% + 17cqw);left:4.2%}.spec-nav{height:15cqw;padding-inline:4.2%}.spec-nav svg{height:6.6cqw}.spec-links{display:none}.spec-navcta{padding:2.4cqw 4cqw;font-size:3.6cqw}.spec-actions{gap:5.5cqw;font-size:4cqw;bottom:5%;left:4.2%}.spec-btn{clip-path:polygon(0 0,100% 0,100% calc(100% - 2.9cqw),calc(100% - 4.4cqw) 100%,0 100%);gap:2.4cqw;height:12.6cqw;padding:0 6cqw 0 5cqw}.spec-btn svg{width:4.4cqw;height:4.4cqw}.spec-grid{--col:calc((100% - 3 * 4cqw) / 4);background:repeating-linear-gradient(90deg, #ffffff57 0 1px, #fff0 1px calc(var(--col) - 1px), #ffffff57 calc(var(--col) - 1px) var(--col), #fff0 var(--col) calc(var(--col) + 4cqw)), repeating-linear-gradient(90deg, #ffffff0b 0 var(--col), #fff0 var(--col) calc(var(--col) + 4cqw));inset:0 4.2%}.spec [data-tag]:before{font-size:2.7cqw}}.notes{grid-area:3/2;height:clamp(5.5rem,13vh,7.5rem);position:relative}.note{opacity:0;visibility:hidden;transition:opacity var(--t-ui) linear, visibility 0s var(--t-ui);align-items:flex-end;gap:clamp(18px,3vw,44px);display:flex;position:absolute;inset:0}.anatomy-stage[data-state=design] .note[data-for=design],.anatomy-stage[data-state=code] .note[data-for=code],.anatomy-stage[data-state=motion] .note[data-for=motion],.anatomy-stage[data-state=depth] .note[data-for=depth],.anatomy-stage[data-state=mobile] .note[data-for=mobile]{opacity:1;visibility:visible;transition-delay:0s}.note .meta{max-width:44ch;color:var(--ink-soft);text-transform:none;font-stretch:100%;font-size:var(--fs-small);font-weight:400;line-height:1.45}.note-big{letter-spacing:-.03em;white-space:nowrap;flex:none;font-size:clamp(1.25rem,2vw,2rem);font-weight:520;line-height:1.1}.note-big span{font-variant-numeric:tabular-nums;text-align:right;min-width:2.1ch;display:inline-block}.note-big i{font-style:normal;font-size:var(--fs-meta);letter-spacing:0;color:var(--ink-soft);margin-right:.5em;font-weight:500}.note-code{color:var(--ink);flex:none;grid-template-rows:repeat(4,auto);grid-auto-flow:column;column-gap:30px;margin:0;font:400 .75rem/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:grid}.note-code span{white-space:pre;width:max-content;clip-path:inset(0 calc((1 - clamp(0, var(--code) * 7.6 - var(--i), 1)) * 100%) 0 0);display:block}.curve{border-bottom:1px solid #0a0a0b4d;border-left:1px solid #0a0a0b4d;flex:none;width:clamp(7rem,11vw,10rem);height:100%;position:relative}.curve svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.curve path{fill:none;stroke:var(--ink);stroke-width:1.5px;vector-effect:non-scaling-stroke}.curve-dot{--t:clamp(0, (var(--m) - .18) / .55, 1);left:calc(var(--t) * 100%);bottom:calc((1 - pow(1 - var(--t), 4)) * 100%);background:var(--ink);width:9px;height:9px;margin:0 0 -4.5px -4.5px;position:absolute}@media (max-width:899px){.lightroom{padding-top:calc(var(--cut) * 100vw)}.anatomy{height:calc((var(--len-m) + 1) * 100lvh)}.anatomy-stage{padding:calc(var(--nav-h) + 4px) var(--gutter) 16px;grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-columns:1fr}.anatomy-head{grid-row:1}.anatomy-title{font-size:clamp(1.625rem,7.6vw,2.25rem)}.anatomy-title span{display:inline}.anatomy-lead{display:none}.spec-area{grid-area:2/1;margin-block:14px}.notes{grid-area:3/1;height:5.2rem}.note{align-items:flex-start;gap:14px}.note .meta{font-size:.8125rem;line-height:1.38}.note[data-for=design],.note[data-for=mobile],.note[data-for=depth]{flex-direction:column;gap:4px}.note-big{font-size:1.125rem}.note-code{column-gap:12px;font-size:.625rem}.note[data-for=code] .meta{display:none}.curve{width:4.6rem;height:4.6rem}.svc-list{border-bottom:0;grid-area:4/1}.svc{border-top:1px solid #0a0a0b33;padding:12px 0 0}.svc:not([data-on]){display:none}.svc-name{font-size:1.75rem}.svc[data-on] .svc-name{font-stretch:116%}.svc-line>span{max-width:none;min-height:2.9em}.anatomy-step{color:var(--ink-soft);font-variant-numeric:tabular-nums;grid-area:4/1;place-self:start end;margin-top:20px;display:block}.anatomy-step b{color:var(--ink);font-weight:500}}
.formats{column-gap:var(--gutter);padding:clamp(96px, 18vh, 200px) var(--gutter) clamp(72px, 14vh, 160px);grid-template-columns:minmax(17rem,.4fr) 1fr;display:grid}.formats-title{top:calc(var(--nav-h) + 24px);align-self:start;max-width:9ch;font-size:clamp(2rem,3.7vw,3.9rem);position:sticky}.format{color:#7d7f7d;transition:color var(--t-ui) linear;border-top:1px solid #0a0a0b2e;grid-template-columns:1fr minmax(12rem,19rem);align-items:baseline;gap:8px 32px;padding-block:clamp(14px,2.6vh,26px);display:grid}.format:last-child{border-bottom:1px solid #0a0a0b2e}.format-name{letter-spacing:-.04em;text-transform:lowercase;white-space:nowrap;transition:font-stretch var(--t-cine) var(--ease-out);font-size:clamp(1.875rem,5vw,5rem);font-weight:520;font-stretch:86%;line-height:1}.format-line{font-size:var(--fs-small);color:var(--ink-soft);line-height:1.45}.format[data-on]{color:var(--ink)}.format[data-on] .format-name{font-stretch:118%}@media (hover:hover){.formats-list:hover .format[data-on]:not(:hover){color:#7d7f7d}.formats-list:hover .format[data-on]:not(:hover) .format-name{font-stretch:86%}.format:hover{color:var(--ink)}.format:hover .format-name{font-stretch:118%}}.process{--s:calc(var(--cut) * 100vw);column-gap:var(--gutter);padding:0 var(--gutter) calc(var(--s) * .84 + 48px);grid-template-columns:minmax(17rem,.4fr) 1fr;display:grid}.process-title{max-width:9ch;font-size:clamp(2rem,3.7vw,3.9rem)}.steps{max-width:43rem}.step{--art:clamp(7.5rem, 12vw, 11rem);grid-template-columns:2rem 1fr var(--art);border-top:1px solid #0a0a0b2e;align-items:start;gap:4px 0;padding-block:clamp(16px,2.6vh,26px);display:grid}.step-n{color:var(--ink-soft);font-variant-numeric:tabular-nums;grid-row:1/3;padding-top:.75em}.step-name{font-size:clamp(1.875rem,3.5vw,3.5rem);font-weight:520;font-stretch:calc(78% + var(--i) * 15.6%);letter-spacing:-.04em;text-transform:lowercase;line-height:1}.step-line{font-size:var(--fs-small);color:var(--ink-soft);text-wrap:pretty;grid-column:2;padding-right:24px;line-height:1.45}.step-art{--on:0;aspect-ratio:16/10;border:1px solid #0a0a0b8c;grid-area:1/3/3;position:relative;overflow:hidden}.step[data-on] .step-art{--on:1}.step-art i{transform-origin:0;transition:transform var(--t-edit) var(--ease-out), clip-path var(--t-edit) var(--ease-out), opacity var(--t-ui) linear;transition-delay:calc(var(--n,0) * 90ms);display:block;position:absolute}.step-art i:nth-child(2){--n:1}.step-art i:nth-child(3){--n:2}.step-art i:nth-child(4){--n:3}.step-art i:nth-child(5){--n:4}.art-note{background:var(--ink);height:1px;transform:scaleX(var(--on));left:10%}.art-note:first-child{width:46%;top:24%}.art-note:nth-child(2){width:68%;top:40%}.art-note:nth-child(3){width:34%;top:56%}.art-note:nth-child(4){width:55%;top:72%}.art-bar,.art-pic,.art-head,.art-btn{border:1px solid var(--ink);clip-path:inset(0 calc((1 - var(--on)) * 100%) 0 0)}.art-bar{border-width:0 0 1px;height:13%;inset:0 0 auto}.art-pic{width:40%;height:46%;top:26%;right:7%}.art-head{width:36%;height:9%;left:7%}.art-head:nth-child(3){top:40%}.art-head:nth-child(4){width:26%;top:54%}.art-btn{width:20%;height:11%;top:74%;left:7%}.step-art[data-stage="2"]{background:repeating-linear-gradient(90deg,#0a0a0b12 0 6.4%,#0a0a0b00 6.4% 8.33%)}.step-art[data-stage="2"] i{background:var(--ink)}.step-art[data-stage="2"] .art-bar{background:0 0}.art-url{z-index:1;background:var(--plaster);border-bottom:1px solid #0a0a0b8c;height:13%;inset:0 0 auto}.art-url:before{content:"";background:var(--ink);width:4px;height:4px;margin-top:-2px;position:absolute;top:50%;left:5%}.step-art img{object-fit:cover;object-position:50% 0;width:100%;height:87%;clip-path:inset(0 0 calc((1 - var(--on)) * 100%) 0);transition:clip-path var(--t-cine) var(--ease-io);position:absolute;inset:13% 0 0}@media (max-width:899px){.formats{grid-template-columns:1fr;padding-block:72px 64px}.formats-title{max-width:none;margin-bottom:28px;position:static}.format{grid-template-columns:1fr;gap:4px;padding-block:14px}.format-name{font-size:clamp(1.75rem,9.4vw,2.75rem);font-stretch:80%}.format[data-on] .format-name{font-stretch:104%}.process{padding:8px var(--gutter) calc(var(--s) + 44px);grid-template-columns:1fr}.process-title{max-width:none;margin-bottom:26px}.steps{max-width:none}.step{--art:5.6rem;grid-template-columns:1.6rem 1fr var(--art)}.step-name{font-size:clamp(1.75rem,8.6vw,2.5rem)}.step-line{padding-right:14px}}
.gallery{height:calc((var(--len-d) + 1) * 100lvh);margin-top:calc(-1 * var(--cut) * 100vw);position:relative}.gallery-stage{height:100lvh;position:sticky;top:0;overflow:hidden}.gallery-inner{height:100svh;padding:calc(var(--nav-h) + clamp(18px, 4vh, 44px)) var(--gutter) clamp(28px, 5vh, 52px);background:linear-gradient(90deg,#000000c7 0,#00000080 26%,#0000 52%);flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0 0 auto}.gallery-title{white-space:nowrap}.gallery-card{--in:1;width:min(34rem,44vw);opacity:var(--in);translate:0 calc((1 - var(--in)) * 18px)}.gallery-count{color:var(--concrete);font-variant-numeric:tabular-nums;border-bottom:1px solid #ffffff38;align-items:baseline;gap:18px;padding-bottom:12px;display:flex}.gallery-count b{color:var(--tint);transition:color var(--t-ui) linear;font-weight:500}.gallery-name{height:1.35em;color:var(--white);flex:1;position:relative;overflow:hidden}.gallery-name i{color:var(--concrete);margin-left:10px;font-style:normal}.gallery-name>span,.trait dd>span{transition:transform var(--t-edit) var(--ease-out);position:absolute;inset:0 0 auto;transform:translateY(3.2em)}.gallery-name>span[data-pos=on],.trait dd>span[data-pos=on]{transform:none}.gallery-name>span[data-pos=above],.trait dd>span[data-pos=above]{transform:translateY(-3.2em)}.trait{border-bottom:1px solid #ffffff1f;grid-template-columns:7.2rem 1fr;align-items:baseline;gap:12px;padding-block:9px;display:grid}.trait dt{color:var(--concrete)}.trait dd{height:1.42em;font-size:var(--fs-small);letter-spacing:-.006em;line-height:1.42;position:relative;overflow:hidden}.trait:nth-child(2) dd>span,.trait:nth-child(2)~.trait dd>span{transition-delay:calc(var(--row,0) * 28ms)}.trait:nth-child(2){--row:1}.trait:nth-child(3){--row:2}.trait:nth-child(4){--row:3}.trait:nth-child(5){--row:4}.trait:nth-child(6){--row:5}@media (max-width:899px){.gallery{height:calc((var(--len-m) + 1) * 100lvh)}.gallery-inner{background:linear-gradient(#000000b8 0,#0000 30% 44%,#000000db 58%,#000 100%);padding-bottom:18px}.gallery-title{font-size:clamp(1.75rem,8.2vw,2.5rem)}.gallery-card{width:auto}.gallery-count{padding-bottom:8px}.gallery-name i{display:none}.trait{grid-template-columns:5.4rem 1fr;gap:10px;padding-block:6px}.trait dd{height:2.7em;font-size:.875rem;line-height:1.35}}
.about{z-index:2;background:var(--black);min-height:calc(100lvh + var(--cut) * 100vw);padding:clamp(88px, 17vh, 190px) var(--gutter) calc(var(--cut) * 100vw + clamp(48px, 9vh, 110px));align-content:start;gap:clamp(24px, 5vh, 56px) var(--gutter);clip-path:polygon(0 0, 100% 0, 100% calc(100% - var(--cut) * 100vw), 0 100%);grid-template-columns:minmax(8rem,1fr) minmax(0,3.4fr);display:grid;position:relative}.about-tag{--grow:1;font-size:clamp(1.625rem,6.85vw,8.4rem);font-weight:calc(300 + var(--grow) * 360);font-stretch:calc(75% + var(--grow) * 50%);letter-spacing:-.012em;text-transform:uppercase;white-space:nowrap;grid-column:1/-1;margin-bottom:clamp(20px,6vh,72px);padding:.5em .42em;line-height:1;position:relative}.about-tag:before,.about-tag:after{content:"";border:0 solid var(--white);width:.42em;height:.42em;position:absolute}.about-tag:before{border-width:.05em 0 0 .05em;top:0;left:0}.about-tag:after{border-width:0 .05em .05em 0;bottom:0;right:0}.about-label{color:var(--concrete);padding-top:.5em}.about-text{text-transform:none;text-wrap:balance;max-width:26ch;font-size:clamp(1.5rem,2.9vw,3rem)}.about-side{font-size:var(--fs-small);grid-column:2}.about-figure{grid-column:2;width:min(100%,44rem)}.about-figure img{aspect-ratio:3/2;object-fit:cover;width:100%;height:auto}.about-figure figcaption{color:#8d8f8c;margin-top:8px}.closing{height:calc((var(--len-d) + 1) * 100lvh);margin-top:calc(-1 * var(--cut) * 100vw);position:relative}.closing-stage{height:100lvh;position:sticky;top:0;overflow:hidden}.closing-inner{background:radial-gradient(110% 100% at 0 100%,#000000c7 0%,#0006 40%,#0000 68%),linear-gradient(0deg,#000000b8 0,#0000 26%);flex-direction:column;justify-content:flex-end;height:100svh;padding-bottom:clamp(36px,7vh,76px);display:flex;position:absolute;inset:0 0 auto}.closing-copy{padding-inline:var(--gutter)}.closing-title{font-size:clamp(2.75rem,6.7vw,7.6rem)}.closing-lead{color:#dcdcd9;max-width:34ch;margin-top:clamp(18px,2.6vh,30px)}.closing-actions{flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:clamp(20px,3vh,32px);display:flex}.closing-number{font-variant-numeric:tabular-nums;letter-spacing:.01em;color:#dcdcd9;align-items:center;min-height:44px;display:inline-flex}@media (max-width:899px){.about{grid-template-columns:1fr;padding-top:80px}.about-tag{font-size:6.7vw}.about-side,.about-figure{grid-column:1}.closing{height:calc((var(--len-m) + 1) * 100lvh)}.closing-inner{background:linear-gradient(0deg,#000 0,#000000e0 30%,#0000 52%);padding-bottom:26px}.footer-links{gap:0 20px}.footer-year{flex-basis:100%}}
:is(html[data-static],html.no-js) .stage{display:none}:is(html[data-static],html.no-js) .still{display:block;position:absolute;inset:0}:is(html[data-static],html.no-js) .still img{object-fit:cover;width:100%;height:100%}:is(html[data-static],html.no-js) .opening{height:auto}:is(html[data-static],html.no-js) .opening-stage{height:auto;position:static;overflow:visible}:is(html[data-static],html.no-js) .hero{min-height:100svh;position:relative}:is(html[data-static],html.no-js) .hero-inner{clip-path:none}:is(html[data-static],html.no-js) .opening-anchor{display:block;position:static}:is(html[data-static],html.no-js) .work{visibility:visible;padding:clamp(56px, 10vh, 120px) var(--gutter);position:relative;inset:auto}:is(html[data-static],html.no-js) .work-label{margin-bottom:40px;position:static}:is(html[data-static],html.no-js) :is(.work-list,.work-tilt){position:static}:is(html[data-static],html.no-js) .work-tilt{gap:clamp(56px,11vh,120px);padding:0;display:grid}:is(html[data-static],html.no-js) .project{align-items:end;gap:var(--gutter);grid-template-columns:minmax(15rem,.34fr) 1fr;display:grid;position:static}:is(html[data-static],html.no-js) .frame{aspect-ratio:16/10;order:2;width:100%;height:auto;position:relative;inset:auto}:is(html[data-static],html.no-js) .frame-bar{position:absolute}:is(html[data-static],html.no-js) .project-meta{visibility:visible;border:0;width:auto;padding:0;position:static}:is(html[data-static],html.no-js) :is(.frame-phone,.device-note,video.live){display:none}:is(html[data-static],html.no-js) .lightroom,:is(html[data-static],html.no-js) .about{clip-path:none;margin-top:0}:is(html[data-static],html.no-js) .lightroom{padding-top:clamp(64px,12vh,140px)}:is(html[data-static],html.no-js) .anatomy{height:auto}:is(html[data-static],html.no-js) .anatomy-stage{height:auto;padding-top:0;position:static}:is(html[data-static],html.no-js) :is(.spec-area,.notes,.anatomy-step){display:none}:is(html[data-static],html.no-js) .svc-list{grid-area:1/2}:is(html[data-static],html.no-js) .svc{color:var(--ink);display:block}:is(html[data-static],html.no-js) .svc-line{grid-template-rows:1fr}:is(html[data-static],html.no-js) .process{padding-bottom:clamp(64px,12vh,140px)}:is(html[data-static],html.no-js) :is(.gallery,.closing){height:auto;margin-top:0}:is(html[data-static],html.no-js) :is(.gallery-stage,.closing-stage),:is(html[data-static],html.no-js) :is(.gallery-inner,.closing-inner){height:auto;min-height:100svh;position:relative}:is(html[data-static],html.no-js) .about{min-height:0;padding-bottom:clamp(64px,12vh,140px)}@media (max-width:899px){:is(html[data-static],html.no-js) .project{grid-template-columns:1fr;gap:18px}:is(html[data-static],html.no-js) .frame{aspect-ratio:390/560;order:0}:is(html[data-static],html.no-js) .project-meta{background:0 0}:is(html[data-static],html.no-js) .svc-list{grid-area:auto/1}}

