:root{--paper: #f4f3f0;--paper-2: #eceae5;--paper-3: #e2dfd8;--ink: #14130f;--ink-2: #6e6a61;--ink-3: #9c978c;--line: rgba(20, 19, 15, .13);--line-2: rgba(20, 19, 15, .26);--pad: clamp(18px, 4vw, 64px);--max: 1680px;--ease: cubic-bezier(.22, 1, .36, 1);--ease-io: cubic-bezier(.76, 0, .24, 1)}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%}html.lenis,html.lenis body{height:auto}.lenis.lenis-stopped{overflow:clip}body{background:var(--paper);color:var(--ink);font-family:Instrument Sans,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;font-size:clamp(15px,1.02vw,18px);line-height:1.62;letter-spacing:-.008em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.wrap{width:100%;max-width:var(--max);margin:0 auto;padding-inline:var(--pad)}.rule{height:1px;background:var(--line);border:0}.section{padding-block:clamp(56px,9vh,130px)}.section-tight{padding-block:clamp(38px,6vh,80px)}.display{font-size:clamp(38px,6.6vw,112px);font-weight:400;line-height:.94;letter-spacing:-.035em}.h2{font-size:clamp(26px,3.2vw,52px);font-weight:400;line-height:1.04;letter-spacing:-.028em}.h3{font-size:clamp(19px,1.7vw,27px);font-weight:400;line-height:1.22;letter-spacing:-.02em}.label{font-size:clamp(10px,.72vw,12px);font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-2)}.lede{font-size:clamp(17px,1.5vw,25px);line-height:1.45;letter-spacing:-.018em;max-width:24ch}.body-col p+p{margin-top:1.1em}.body-col p{max-width:62ch;color:var(--ink-2)}.body-col strong{font-weight:500;color:var(--ink)}.muted{color:var(--ink-2)}.nav{position:fixed;top:0;left:0;right:0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:20px;height:74px;padding-inline:var(--pad);mix-blend-mode:difference;color:#fff;transition:transform .5s var(--ease),opacity 1s ease .9s}.js .nav{opacity:0}.js.is-loaded .nav{opacity:1}.nav.is-up{transform:translateY(-100%)}.nav-mark{font-size:clamp(15px,1.15vw,19px);font-weight:500;letter-spacing:.02em}.nav-mark span{color:inherit;opacity:.55;font-weight:400}.nav-links{display:flex;gap:clamp(16px,2.2vw,38px);font-size:clamp(11px,.78vw,13px);letter-spacing:.13em;text-transform:uppercase}.nav-links a{position:relative;padding-block:4px}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:0 50%;transition:transform .45s var(--ease)}.nav-links a:hover:after,.nav-links a[aria-current=page]:after{transform:scaleX(1)}@media(max-width:720px){.nav-links{gap:14px;font-size:10px;letter-spacing:.1em}}.fig{position:relative;overflow:hidden;background:var(--paper-3)}.fig-in{position:absolute;inset:0;will-change:transform}.fig[data-parallax] .fig-in{inset:-8% 0}.fig img{width:100%;height:100%;object-fit:cover}.js .fig{background:transparent}.js .fig .fig-in{clip-path:inset(100% 0 0 0);transition:clip-path 1.4s var(--ease-io)}.js .fig.in .fig-in{clip-path:inset(0 0 0 0)}.js .fig img{transform:scale(1.18);transition:transform 1.9s var(--ease)}.js .fig.in img{transform:scale(1)}.fig figcaption{position:absolute;left:14px;bottom:12px;font-size:11px;letter-spacing:.06em;color:#fff;mix-blend-mode:difference;opacity:0;transition:opacity .5s ease}.fig:hover figcaption{opacity:1}.fig-ph{position:absolute;inset:0;display:grid;place-items:center;gap:6px;background:repeating-linear-gradient(-45deg,var(--paper-3) 0 10px,var(--paper-2) 10px 20px);color:var(--ink-3);font-size:11px;letter-spacing:.14em;text-transform:uppercase;text-align:center;padding:12px}.hero{position:relative;height:100svh;min-height:540px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}.hero-media{position:absolute;inset:0;overflow:hidden;will-change:transform}.hero .fig,.hero .fig-ph{position:absolute;inset:0}.hero .fig img{height:100%}.js .hero-shade{opacity:0;transition:opacity 1.6s ease .2s}.js .hero.in .hero-shade{opacity:1}.js .hero .fig .fig-in{clip-path:none;transition:none}.js .hero .fig img{transform:scale(1.16);transition:transform 2.8s var(--ease)}.js .hero.in .fig img{transform:scale(1)}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s var(--ease-io)}.hero-slide.is-on{opacity:1;z-index:2}.hero-slide.is-off{opacity:1;z-index:1}.hero-slide img,.hero-slide video{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.12);transition:transform 0s 1.3s}.hero-slide.is-off img{transform:scale(1);transition:none}.hero.in .hero-slide.is-on img{transform:scale(1);transition:transform 9s cubic-bezier(.15,.5,.3,1)}.hero.in .hero-slide:first-child.is-on img{transition-duration:3.2s;transition-timing-function:var(--ease)}.hero.in .hero-slide video{transform:scale(1);transition:transform 3.2s var(--ease)}.js .hero-fade{opacity:0;transform:translateY(12px);transition:opacity 1s var(--ease) calc(.7s + var(--d, 0s)),transform 1.2s var(--ease) calc(.7s + var(--d, 0s))}.js .hero.in .hero-fade{opacity:1;transform:none}.hero [data-split]{--d: .35s}.hero-count{font-variant-numeric:tabular-nums;letter-spacing:.08em;color:#f6f5f2}.hero-count-of{opacity:.55}.hero-bar{position:relative;width:clamp(90px,9vw,150px);height:1px;margin:10px 0 10px auto;background:#f6f5f247;overflow:hidden}.hero-bar:after{content:"";position:absolute;inset:0;background:#f6f5f2;transform:scaleX(0);transform-origin:0 50%}.hero-bar.is-run:after{animation:hero-fill var(--slide, 3.8s) linear forwards}.hero.is-paused .hero-bar:after{animation-play-state:paused}@keyframes hero-fill{to{transform:scaleX(1)}}.hero-cap{display:inline-block;transition:opacity .38s ease,transform .5s var(--ease)}.hero-cap.is-swap{opacity:0;transform:translateY(6px)}.hero-cap:hover{color:#fff}@media(max-width:720px){.hero-bar{margin-left:0}}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,14,11,.34) 0%,transparent 34%,transparent 52%,rgba(15,14,11,.52) 100%)}.hero-copy{position:relative;z-index:2;color:#f6f5f2;padding:0 var(--pad) clamp(28px,5vh,62px);display:flex;align-items:flex-end;justify-content:space-between;gap:32px;flex-wrap:wrap}.hero-copy .display{max-width:16ch}.hero-copy .label{color:#f6f5f2b8;margin-bottom:18px}.hero-meta{text-align:right;font-size:clamp(11px,.8vw,13px);line-height:1.7;color:#f6f5f2c7}@media(max-width:720px){.hero-meta{text-align:left}}.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:clamp(24px,5vw,96px);align-items:start}@media(max-width:900px){.two{grid-template-columns:minmax(0,1fr);gap:22px}}.projects{display:grid;gap:clamp(38px,6vw,92px)}.pcard{display:block}.pcard-fig{margin-bottom:16px}.pcard .fig.in img,.hs-card .fig.in img{transition:transform 1.2s var(--ease)}.pcard:hover .fig.in img,.hs-card:hover .fig.in img{transform:scale(1.035)}.pcard-name{transition:opacity .4s ease}.pcard:hover .pcard-name,.hs-card:hover .pcard-name{opacity:.6}.pcard-row{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding-top:14px;border-top:1px solid var(--line)}.pcard-name{font-size:clamp(21px,2.1vw,34px);font-weight:400;letter-spacing:-.025em;line-height:1.1}.pcard-meta{font-size:clamp(11px,.78vw,13px);letter-spacing:.08em;color:var(--ink-2);text-align:right;white-space:nowrap}.pcard-lede{margin-top:10px;max-width:46ch;color:var(--ink-2);font-size:clamp(14px,1vw,17px)}.projects.stagger .pcard:nth-child(odd){width:min(100%,1180px)}.projects.stagger .pcard:nth-child(2n){width:min(100%,860px);margin-left:auto}@media(max-width:900px){.projects.stagger .pcard:nth-child(odd),.projects.stagger .pcard:nth-child(2n){width:100%;margin-left:0}}.items{border-top:1px solid var(--line)}.item{display:grid;grid-template-columns:60px minmax(0,.9fr) minmax(0,1.5fr);gap:clamp(14px,3vw,54px);align-items:start;padding-block:clamp(20px,3vh,34px);position:relative}.item:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--line);transform-origin:0 50%}.js .item:after{transform:scaleX(0);transition:transform 1.3s var(--ease-io) .1s}.js .item.in:after{transform:scaleX(1)}.item-n{font-size:12px;letter-spacing:.1em;color:var(--ink-3);padding-top:.45em}.item-body{color:var(--ink-2);max-width:56ch}@media(max-width:780px){.item{grid-template-columns:34px minmax(0,1fr)}.item-body{grid-column:2}}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,3vw,48px)}.stat{border-top:1px solid var(--line-2);padding-top:16px}.stat-v{font-size:clamp(30px,4.4vw,68px);line-height:1;letter-spacing:-.035em}.stat-l{margin-top:8px;font-size:12px;letter-spacing:.1em;color:var(--ink-2)}@media(max-width:780px){.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding-block:clamp(16px,2.4vh,26px);cursor:pointer;list-style:none;font-size:clamp(17px,1.5vw,24px);letter-spacing:-.02em;transition:color .3s ease}.faq summary::-webkit-details-marker{display:none}.faq summary:hover{color:var(--ink-2)}.faq summary:after{content:"+";font-size:1em;line-height:1;color:var(--ink-2);transition:transform .4s var(--ease)}.faq details[open] summary:after{transform:rotate(45deg)}.faq-a{padding-bottom:clamp(18px,2.6vh,30px);max-width:64ch;color:var(--ink-2)}.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.4vw,40px) clamp(20px,3vw,56px);border-top:1px solid var(--line);padding-top:clamp(20px,3vh,34px)}.fact-l{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3)}.fact-v{margin-top:4px}@media(max-width:780px){.facts{grid-template-columns:repeat(2,minmax(0,1fr))}}.plates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2.4vw,40px)}.plates .fig-wide{grid-column:1 / -1}@media(max-width:780px){.plates{grid-template-columns:minmax(0,1fr)}}.pager{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:clamp(26px,4vh,46px);border-top:1px solid var(--line)}.pager a{display:block}.pager .label{display:block;margin-bottom:6px}.pager .h3{transition:opacity .3s ease}.pager a:hover .h3{opacity:.55}.cta{background:var(--ink);color:var(--paper)}.cta a.big{display:inline-block;max-width:100%;margin-block:clamp(18px,3.5vh,44px) clamp(24px,4vh,56px);font-size:clamp(24px,4.4vw,78px);letter-spacing:-.035em;line-height:1.02;border-bottom:1px solid rgba(244,243,240,.28);transition:border-color .4s ease,opacity .4s ease}.cta-cols{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(20px,4vw,72px);align-items:start}.cta-cols p{max-width:46ch;opacity:.72}@media(max-width:780px){.cta-cols{grid-template-columns:minmax(0,1fr);gap:18px}}.cta a.big:hover{border-color:var(--paper);opacity:.82}.cta .label{color:#f4f3f099}.foot{padding-block:clamp(28px,4vh,56px);border-top:1px solid var(--line);font-size:clamp(11px,.8vw,13px);color:var(--ink-2)}.foot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.foot a:hover{color:var(--ink)}.foot-note{margin-top:clamp(26px,4vh,48px);padding-top:16px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:var(--ink-3)}@media(max-width:780px){.foot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}.js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform 1.1s var(--ease)}.js [data-reveal].in{opacity:1;transform:none}[data-reveal][data-delay="1"]{transition-delay:.08s}[data-reveal][data-delay="2"]{transition-delay:.16s}[data-reveal][data-delay="3"]{transition-delay:.24s}.js [data-split]:not(.is-split){visibility:hidden}[data-split] .ln{display:block;overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}[data-split] .ln>span{display:inline-block;transform:translateY(112%);transition:transform 1.25s var(--ease) calc(var(--i) * 85ms + var(--d, 0s))}[data-split].in .ln>span,.hero.in [data-split] .ln>span{transform:none}.hs{position:relative}.hs-sticky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:clamp(20px,4vh,48px)}.hs-head{display:flex;justify-content:space-between;align-items:baseline}.hs-count{font-variant-numeric:tabular-nums}.hs-track{display:flex;align-items:flex-end;gap:clamp(28px,4vw,76px);width:max-content;padding-inline:var(--pad);will-change:transform}.hs-intro{flex:none;width:clamp(260px,26vw,440px);align-self:center}.hs-intro .muted{margin-top:18px;max-width:30ch}.hs-card{display:block;flex:none}.hs-card.is-tall{width:min(30vw,50vh)}.hs-card.is-wide{width:min(42vw,76vh)}.hs-card .fig{margin-bottom:14px}.hs-card .fig-in{inset:0 -6%}.hs-card .pcard-lede{max-width:38ch}.hs-i{display:inline-block;margin-right:.9em;font-size:12px;letter-spacing:.1em;color:var(--ink-3);vertical-align:.5em}.hs-end{flex:none;align-self:center;display:flex;flex-direction:column;gap:10px;width:clamp(200px,20vw,340px);padding-left:clamp(20px,3vw,48px);border-left:1px solid var(--line)}.hs-arrow{font-size:clamp(22px,2vw,32px);transition:transform .6s var(--ease)}.hs-end:hover .hs-arrow{transform:translate(12px)}.hs-bar{height:1px;background:var(--line);overflow:hidden}.hs-bar span{display:block;height:100%;background:var(--ink);transform:scaleX(0);transform-origin:0 50%}.hs--native .hs-sticky{position:static;height:auto;padding-block:clamp(56px,9vh,110px)}.hs--native .hs-track{width:auto;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);padding-bottom:8px;scrollbar-width:none}.hs--native .hs-track::-webkit-scrollbar{display:none}.hs--native .hs-card,.hs--native .hs-intro,.hs--native .hs-end{scroll-snap-align:start}.hs--native .hs-card.is-tall{width:68vw}.hs--native .hs-card.is-wide{width:82vw}.hs--native .hs-intro{width:72vw}.hs--native .hs-bar,.hs--native .hs-count{display:none}.mq{overflow:hidden;padding-block:clamp(24px,5vh,64px)}.mq-track{display:flex;align-items:flex-start;gap:clamp(12px,1.4vw,22px);width:max-content;will-change:transform}.mq-item{flex:none;height:clamp(150px,19vw,300px);aspect-ratio:3 / 2;overflow:hidden;background:var(--paper-3)}.mq-item.is-low{aspect-ratio:4 / 5;margin-top:clamp(28px,4vw,70px)}.mq-item img{width:100%;height:100%;object-fit:cover}.next{position:relative;display:block;height:clamp(320px,62vh,660px);margin-top:clamp(8px,2vh,24px);overflow:hidden;color:#f6f5f2;background:transparent}.js .next .next-media{clip-path:inset(100% 0 0 0);transition:clip-path 1.4s var(--ease-io)}.js .next.in .next-media{clip-path:inset(0 0 0 0)}.next-media{position:absolute;inset:0}.next-media .fig-in{inset:-8% 0}.next-media img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}.next:hover .next-media img{transform:scale(1.04)}.next:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(15,14,11,.55) 100%)}.next-copy{position:absolute;z-index:1;left:clamp(18px,3vw,44px);bottom:clamp(18px,4vh,44px);display:flex;flex-direction:column;gap:8px;transition:transform .8s var(--ease)}.next-copy .label{color:#f6f5f2b8}.next-meta{font-size:13px;letter-spacing:.06em;opacity:.75}.next:hover .next-copy{transform:translate(10px)}.loader{display:none}.js .loader{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;justify-content:flex-end;gap:12px;padding:0 var(--pad) clamp(28px,5vh,62px);background:var(--paper);color:var(--ink);clip-path:inset(0 0 0 0);transition:clip-path 1.25s var(--ease-io)}.js.no-loader .loader{display:none}.js.is-loaded .loader{clip-path:inset(0 0 100% 0);pointer-events:none}.loader-row{display:flex;justify-content:space-between;align-items:baseline;font-size:clamp(13px,.95vw,16px);letter-spacing:.02em;transition:opacity .4s ease,transform .8s var(--ease-io)}.loader-n{font-variant-numeric:tabular-nums;color:var(--ink-2)}.js.is-loaded .loader-row{opacity:0;transform:translateY(-14px)}.loader-bar{height:1px;background:var(--line);overflow:hidden}.loader-bar span{display:block;height:100%;background:var(--ink);transform:scaleX(0);transform-origin:0 50%}.js:not(.is-loaded):not(.no-loader) body{overflow:hidden}@view-transition{navigation:auto}::view-transition-old(root){animation:vt-out .7s cubic-bezier(.76,0,.24,1) both}::view-transition-new(root){animation:vt-in .95s cubic-bezier(.76,0,.24,1) both}::view-transition-group(*){animation-duration:.95s;animation-timing-function:cubic-bezier(.76,0,.24,1)}::view-transition-old(*),::view-transition-new(*){height:100%;object-fit:cover;overflow:clip}@keyframes vt-out{to{transform:translateY(-8vh)}}@keyframes vt-in{0%{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}.is-vt .hero-shade,.is-vt .hero .fig img,.is-vt .hero-slide.is-on img{clip-path:none!important;transform:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1!important;transform:none!important;transition:none!important}[data-split] .ln>span{transform:none!important;transition:none!important}.fig-in,.next-media{clip-path:none!important}.loader{display:none!important}.nav,.hero-shade{opacity:1!important}.fig img,.hero-slide img{transform:none!important;transition:none!important}.hero-fade{opacity:1!important;transform:none!important}.item:after{transform:none!important}.nav{transition:none}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
