:root{--base-100:#0c0c0c;--base-200:rgb(12 12 12/0.5);--base-300:#fff;--edge:clamp(2rem,3.5vw,3rem);--section-gap:18rem;--text-small:0.7rem;--text-large:clamp(16px,3.5vw,24px);--text-display:clamp(3.5rem,11vw,11rem);--text-nav:clamp(0.75rem,0.8vw,0.85rem)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{overflow-x:clip}body{font-family:var(--font-sans),sans-serif;background-color:var(--base-300);color:var(--base-100)}::selection{background-color:var(--base-100);color:var(--base-300)}html.lenis,html.lenis body{height:auto}.lenis.lenis-stopped{overflow:hidden}h1,h2,h3{font-size:var(--text-large);font-weight:400;line-height:1.25}.text-small,a,button,li,p{font-family:var(--font-display),sans-serif;font-stretch:87.5%;font-size:var(--text-small);font-weight:700;line-height:1.35;letter-spacing:.03em;text-transform:uppercase;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.display{font-family:var(--font-display),sans-serif;font-size:var(--text-display);font-stretch:62.5%;font-weight:800;line-height:.88;letter-spacing:-.01em;text-transform:uppercase}a{color:var(--base-100);text-decoration:none}.text-large{font-family:var(--font-sans),sans-serif;font-size:var(--text-large);font-weight:400;line-height:1.25;text-transform:none;letter-spacing:normal}h1 a,h2 a,h3 a{font:inherit;text-transform:none}@media (max-width:600px){:root{--text-large:20px}.text-large,h1,h2,h3{font-weight:450}}.roll{display:inline-grid;overflow:hidden;vertical-align:top}.roll-line{grid-area:1/1;white-space:nowrap}.roll-word{display:inline-block;will-change:transform}[data-copy]{visibility:hidden}.line,.word{display:inline-block;will-change:transform}[data-copy=items]>*{overflow:hidden}[data-copy=items]>*>*{display:block;will-change:transform}.background{position:fixed;inset:0;width:100%;height:100%;display:block;background-color:#fff;filter:invert(1) contrast(.6) brightness(1.3);pointer-events:none;z-index:-1}@media (pointer:coarse){body,html{overflow:hidden}body{background-color:#fff}.page{height:100svh;overflow:hidden auto;overscroll-behavior:none}}.container{max-width:2000px;margin-inline:auto;padding:var(--edge)}.about-hero,.container{position:relative;width:100%}.about-hero{height:100svh;overflow:hidden}.about-hero .container{height:100%;justify-content:center}.about-hero .container,.ring{display:flex;align-items:center}.ring{--side-reach:3.5em;flex-direction:column;font-family:var(--font-sans),sans-serif;font-size:var(--text-small);font-weight:500;line-height:1.35;text-transform:uppercase;white-space:nowrap}.ring-side{align-self:stretch;margin-inline:calc(-1 * var(--side-reach))}.ring-side>span{display:flex;justify-content:space-between}.about-intro{display:none;max-width:20em;text-align:center;text-wrap:balance}.about-logo .container{display:flex;justify-content:center;padding-top:4rem;padding-bottom:var(--section-gap)}.logo{position:relative;isolation:isolate;width:6rem;aspect-ratio:1}.logo:after,.logo:before{content:"";position:absolute;pointer-events:none}.logo:before{inset:-60%;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgb(12 12 12/.12),rgb(12 12 12/.04) 45%,rgb(12 12 12/0) 100%);filter:blur(14px);animation:glint-halo 3.2s ease-in-out infinite}.logo:after{inset:-45% -75%;z-index:1;background:radial-gradient(closest-side,rgb(255 255 255/.85),rgb(255 200 255/0) 100%) 50% /6% 8% no-repeat,linear-gradient(90deg,transparent 8%,rgb(12 12 12/.35) 50%,transparent 92%) 50% /100% 1px no-repeat,linear-gradient(180deg,transparent 8%,rgb(12 12 12/.35) 50%,transparent 92%) 50% /1px 100% no-repeat;animation:glint-rays 3.2s ease-in-out infinite}@keyframes glint-halo{50%{opacity:.7;transform:scale(.92)}}@keyframes glint-rays{0%,to{opacity:1;transform:scale(1)}45%{opacity:.55;transform:scale(.8,.9)}}@media (prefers-reduced-motion:reduce){.logo:after,.logo:before{animation:none}}.logo canvas{position:absolute;display:block;pointer-events:none}.about-portrait .container{max-width:none;padding:0}.portrait{height:100svh}.portrait img{object-position:50% 30%}.portrait-caption{color:#fff;position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--edge);text-align:center}.about-credits+footer,.about-dark{--base-100:#fff;--base-200:rgb(255 255 255/0.5);--base-300:#0c0c0c;position:relative;background-color:#0c0c0c;color:var(--base-100)}.about-info{padding-top:10rem}.about-info .container{display:grid;grid-template-columns:repeat(6,1fr);align-items:start;gap:20rem 2rem;padding-top:0}.credits-label,.info-label{color:var(--base-200)}.info-list ul{list-style:none;margin-top:1.35rem}.about-copy{grid-row:2;grid-column:4/-1;text-wrap:pretty}.about-credits{display:flow-root;overflow-x:clip}.about-credits .container{display:grid;grid-template-columns:repeat(6,1fr);align-items:start;gap:4rem 2rem;padding-top:10rem}.credits-label{grid-column:1}.credits-list{grid-column:2/4;list-style:none}.logo-marquee{display:flex;overflow:hidden;margin-top:8rem;position:relative;padding-block:2.5rem;background-color:#fff}.logo-marquee:after{content:"";position:absolute;inset:-50%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1.2 -0.25'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.2;pointer-events:none;animation:marquee-grain .6s steps(4) infinite}@keyframes marquee-grain{25%{transform:translate(-4%,3%)}50%{transform:translate(3%,-5%)}75%{transform:translate(-2%,-2%)}to{transform:translate(5%,4%)}}.logo-marquee-track{display:flex;flex-shrink:0;align-items:center;gap:clamp(3rem,6vw,6rem);padding-right:clamp(3rem,6vw,6rem);list-style:none;animation:logo-marquee 40s linear infinite}.logo-marquee-track img{display:block;height:clamp(2.5rem,4vw,3.75rem);width:auto;max-width:12rem;object-fit:contain;filter:invert(1)}.logo-marquee+.container{padding-top:6rem}@keyframes logo-marquee{to{transform:translateX(-100%)}}@media (prefers-reduced-motion:reduce){.logo-marquee-track,.logo-marquee:after{animation:none}}.credits-image{grid-column:4/6;grid-row:1/3;aspect-ratio:4/5;border-radius:.375rem;overflow:hidden}.about-credits .logo{grid-column:6/-1;grid-row:1/3;align-self:end;justify-self:end;width:14rem}@media (max-width:1000px){.ring{display:none}.about-intro{display:block}.about-logo{margin-top:-28svh}.about-logo .container{padding-top:0;padding-bottom:calc(28svh + 2rem)}.portrait{aspect-ratio:auto;height:100svh}.about-info .container{grid-template-columns:repeat(2,1fr);row-gap:4rem}.about-copy{grid-column:1/-1}.about-credits .container{grid-template-columns:repeat(2,1fr)}.credits-list{grid-column:2}.credits-image{display:none}.about-credits .logo{grid-column:1/-1;grid-row:auto;justify-self:center;width:14rem;margin-top:calc(4rem + var(--edge))}.about-credits+footer{padding-top:calc(8rem - var(--edge))}}@media (max-width:600px){.about-intro{max-width:none;text-wrap:pretty}}.contact-bg{position:fixed;inset:0;z-index:0}.contact-bg-image{width:100%;height:100%}.contact-bg:after{content:"";position:absolute;inset:0;background:rgb(0 0 0/.45);pointer-events:none}.contact-bg~.contact-hero,.contact-bg~footer{--base-100:#fff;--base-200:rgb(255 255 255/0.7);z-index:1;color:var(--base-100)}.contact-hero{position:fixed;top:0;left:0;width:100%;height:100svh}.contact-hero .container{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2rem;text-align:center}.contact-copy.text-large{font-weight:700}.contact-copy{max-width:30em;text-wrap:balance}.contact-note{color:var(--base-200);text-wrap:balance}.contact-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 2.5rem;list-style:none}@media (max-width:600px){.contact-copy{max-width:none;text-wrap:pretty}}.slider{position:fixed;top:0;left:0;width:100%;height:100svh;overflow:hidden;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.slider.is-clickable,.slider.is-expanded{cursor:default}.slider.is-dragging{cursor:grabbing}.slider canvas{display:block}.slide-info{position:fixed;bottom:0;left:0;width:100%;z-index:10;pointer-events:none}.slide-info .container{padding:calc(var(--edge) - 1rem);display:grid;grid-template-columns:1fr auto;align-items:end}.slide-info p:first-child{position:fixed;top:calc(50svh + var(--slide-height, .66) * 50svh + 1.25rem);left:50%;translate:-50% 0;margin:0;text-align:center;padding-top:.12em;font-family:var(--font-display),sans-serif;font-size:clamp(1.1rem,1.4vw,1.5rem);font-stretch:62.5%;font-weight:800;line-height:1;white-space:nowrap}#slide-count{justify-self:end;font-size:var(--text-nav)}.slide-info p{margin:1rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.project-hero{position:relative;color:#fff;height:100svh;overflow:hidden}.project-hero .project-image{position:absolute;inset:0}.project-title{z-index:1;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.project-info{position:absolute;bottom:0;left:0;right:0;z-index:1;display:flex;justify-content:space-between}.project-hero~*>.container{display:grid;grid-template-columns:repeat(6,1fr);align-items:start;gap:2rem;padding-block:0}.project-hero~*{padding-block:14rem}.project-hero~.project-gallery{padding-top:0}.project-hero~.project-gallery>.container{display:flex;flex-wrap:wrap;justify-content:center}.project-fade{position:fixed;inset:0;z-index:-1;background-color:#0c0c0c;opacity:0;pointer-events:none}.project-next{--base-100:#fff;--base-200:rgb(255 255 255/0.5);--base-300:#0c0c0c;color:var(--base-100)}.project-hero~.project-next{position:relative;height:101svh;padding-block:0}.project-next footer{position:absolute;bottom:0;left:0;width:100%;padding-top:0}.project-hero~.project-next>.container{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1rem}.project-frame{width:calc((100% - 4rem) / 3);aspect-ratio:4/5;border-radius:.5rem}.project-label{color:var(--base-200)}.project-next .display{font-size:clamp(3rem,8vw,8rem);text-align:center}.project-list ul{list-style:none;margin-top:1.35rem}.project-copy{grid-column:4/-1;grid-row:1;display:flex;flex-direction:column;gap:1.5rem;text-wrap:pretty}@media (max-width:1000px){.project-hero~*{padding-block:8rem}.project-hero~.project-overview>.container{grid-template-columns:1fr 1fr}.project-copy,.project-list{grid-column:1/-1;grid-row:auto}.project-hero~.project-gallery>.container{gap:1rem}.project-frame{width:calc((100% - 1rem) / 2)}}.not-found{position:fixed;top:0;left:0;width:100%;height:100svh}.not-found .container{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2rem;text-align:center}.not-found-copy{max-width:30em;text-wrap:balance}.not-found-note{color:var(--base-200)}.not-found-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 2.5rem;list-style:none}.model{position:fixed;top:0;left:0;width:100%;height:100svh;overflow:hidden}footer{padding-top:10rem}.footer-pinned{position:fixed;bottom:0;left:0;width:100%;z-index:10;padding-top:0}.footer-simple .container{grid-template-columns:1fr auto 1fr}.footer-simple p:last-child{justify-self:end;text-align:right}footer .container{display:grid;grid-template-columns:repeat(6,1fr);align-items:end;gap:2rem}.footer-label{color:var(--base-200)}.footer-group a{display:block;width:fit-content}.footer-group:first-child{grid-column:1/3}.footer-group:nth-child(2){grid-column:3/5}.footer-group:nth-child(3){grid-column:6;justify-self:end}@media (max-width:1000px){footer .container{grid-template-columns:1fr 1fr}.footer-group:first-child{display:none}.footer-group:nth-child(2),.footer-group:nth-child(3){grid-column:auto}}@media (max-width:600px){.footer-simple .container{display:flex;flex-direction:column;align-items:center;gap:0;text-align:center}.footer-simple .footer-label{display:none}.footer-simple p:last-child{text-align:center}}.fluid-image{position:relative;overflow:hidden}.fluid-image img{position:absolute;top:-20%;left:0;display:block;width:100%;height:140%;object-fit:cover;will-change:transform}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Space Grotesk Fallback;src:local("Arial");ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.00%;size-adjust:109.69%}.__className_c219ed{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.__variable_c219ed{--font-sans:"Space Grotesk","Space Grotesk Fallback"}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/8a053b136321ec99-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/2a8fe189f1a8dd0c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/c214ffb7f5362987-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Archivo Fallback;src:local("Arial");ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.00%;size-adjust:98.70%}.__className_7347c0{font-family:Archivo,Archivo Fallback;font-style:normal}.__variable_7347c0{--font-display:"Archivo","Archivo Fallback"}nav{position:fixed;top:0;left:0;width:100%;z-index:10}nav .container{padding:calc(var(--edge) - 1rem);display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.menu-toggle,nav .container>a{padding:1rem;font-size:var(--text-nav)}nav .container>.nav-brand{padding-block:.5rem}.nav-logo{display:block;height:clamp(2.25rem,3vw,3.25rem);aspect-ratio:968/360;background-color:currentColor;-webkit-mask:url(/images/logo.png) center/contain no-repeat;mask:url(/images/logo.png) center/contain no-repeat}nav .container>a:last-child{justify-self:end}.menu-toggle,nav .container>a{transition:color .3s ease}nav.is-on-image .container>a,nav.is-on-image .menu-toggle{color:#fff}.menu-toggle{position:relative;z-index:2;justify-self:start;border:none;background:none;color:var(--base-100);font-family:var(--font-display),sans-serif;font-stretch:87.5%;cursor:pointer}.nav-mask{display:block;overflow:hidden}.nav-line{display:block;transform:translateY(100%);will-change:transform}.menu-toggle-line{display:flex;align-items:center;gap:.5rem}.menu-star{width:1.1em;height:1.1em;fill:currentColor}.menu-toggle-mask{display:grid;overflow:hidden}.menu-toggle-word{grid-area:1/1;text-align:left;will-change:transform}.menu-toggle-word+.menu-toggle-word{transform:translateY(100%)}.menu-panel{position:fixed;z-index:1;top:calc(var(--edge) + 2.25rem);left:calc(var(--edge) - 1rem);display:flex;align-items:flex-end;justify-content:flex-end;width:min(280px,42vw);height:min(365px,45vh);padding:1rem;border-radius:.375rem;background-color:var(--base-100);color:var(--base-300);clip-path:inset(0 100% 100% 0 round .375rem);visibility:hidden;will-change:transform,clip-path}.menu-panel ::selection{background-color:var(--base-300);color:var(--base-100)}.menu-lang{position:absolute;top:1rem;right:1rem;display:flex;gap:.75rem}.menu-lang button{border:none;background:none;color:rgb(255 255 255/.4);font-family:var(--font-display),sans-serif;font-stretch:87.5%;cursor:pointer;transition:color .3s ease}.menu-lang button.is-active,.menu-lang button:hover{color:var(--base-300)}.menu-links{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;list-style:none}.menu-link{display:block;color:var(--base-300);font-family:var(--font-display),sans-serif;font-size:clamp(2rem,2.6vw,2.6rem);font-stretch:62.5%;font-weight:800;line-height:.95;text-transform:uppercase}.menu-line-mask{display:block;overflow:hidden}.menu-link .menu-line-mask,.menu-link .roll{padding-top:.15em;margin-top:-.15em}.menu-line{display:block;transform:translateY(100%);will-change:transform}@media (max-width:600px){.menu-panel{width:calc(100vw - 2 * var(--edge) + 2rem);height:min(45svh,400px)}.menu-link{font-size:clamp(1.5rem,7vw,2rem)}}.preloader{--backdrop:255 255 255;position:fixed;inset:0;z-index:1000;background-color:rgb(var(--backdrop))}@media (pointer:coarse){.preloader{--backdrop:255 255 255}}.preloader-counter{--digit-h:1.3em;position:absolute;z-index:1;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:flex-start;height:var(--digit-h);padding-inline:.15em;overflow:hidden}.digit-col{display:flex;flex-direction:column;transform:translateY(10%);will-change:transform}.digit-col span{display:flex;align-items:center;justify-content:center;flex-shrink:0;height:var(--digit-h);line-height:1}