:root{
  --paper:#f1eadf;
  --paper-2:#e9e0d3;
  --ink:#12130f;
  --oxide:#b64a27;
  --blue:#163e47;
  --stone:#88857e;
  --line:rgba(18,19,15,.22);
  --header-h:78px;
  --pad:clamp(18px,2.65vw,46px);
  --sans:"Space Grotesk","Helvetica Neue",Arial,sans-serif;
  --mono:"IBM Plex Mono","SFMono-Regular",Consolas,monospace;
}
*{box-sizing:border-box}
html{background:var(--paper);scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased;overflow-x:clip}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}img{display:block;max-width:100%}figure{margin:0}
::selection{background:var(--oxide);color:#fff}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:9999;left:12px;top:-70px;background:#fff;color:#000;padding:10px 14px;border:1px solid #111}.skip-link:focus{top:12px}
.micro{font:500 10px/1.25 var(--mono);letter-spacing:.13em;text-transform:uppercase;margin:0}.micro--light{color:#9b958c}
.section-pad{padding-left:var(--pad);padding-right:var(--pad)}

.site-header{height:var(--header-h);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--pad);position:fixed;inset:0 0 auto;z-index:90;color:#fff;mix-blend-mode:difference;transition:background .3s,color .3s,mix-blend-mode .3s,border-color .3s}
.site-header.is-scrolled,.site-header--solid{background:rgba(241,234,223,.94);backdrop-filter:blur(16px);color:var(--ink);mix-blend-mode:normal;border-bottom:1px solid var(--line)}
.brand{display:flex;flex-direction:column;align-items:flex-start;line-height:.9}.brand strong{font-size:23px;letter-spacing:-.055em}.brand span{font:500 7.5px/1 var(--mono);letter-spacing:.13em;margin-top:5px}.desktop-nav{display:flex;gap:30px;font:500 9px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase}.desktop-nav a{position:relative;padding:10px 0}.desktop-nav a:after{content:"";position:absolute;height:1px;background:currentColor;left:0;right:100%;bottom:5px;transition:right .25s}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{right:0}.header-actions{justify-self:end;display:flex;align-items:center;gap:18px}.header-cta{font:500 9px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid currentColor;border-radius:999px;padding:13px 16px;display:inline-flex;gap:18px;align-items:center}.menu-trigger{display:none;width:36px;height:36px;background:transparent;border:0;position:relative;padding:0}.menu-trigger>span:not(.sr-only){position:absolute;left:5px;width:26px;height:1px;background:currentColor;transition:.3s}.menu-trigger>span:first-child{top:13px}.menu-trigger>span:nth-child(2){top:22px}.menu-open .menu-trigger>span:first-child{top:18px;transform:rotate(45deg)}.menu-open .menu-trigger>span:nth-child(2){top:18px;transform:rotate(-45deg)}
.mobile-menu{position:fixed;z-index:80;inset:var(--header-h) 0 0;background:var(--ink);color:var(--paper);padding:38px var(--pad) 24px;display:flex;flex-direction:column;justify-content:space-between;visibility:hidden;transform:translateY(-103%);transition:visibility .55s,transform .55s cubic-bezier(.75,0,.14,1)}.mobile-menu[aria-hidden="false"]{visibility:visible;transform:none}.mobile-menu nav{display:flex;flex-direction:column}.mobile-menu nav a{font-size:clamp(42px,11.5vw,64px);font-weight:600;letter-spacing:-.055em;line-height:.95;padding:14px 0;border-top:1px solid rgba(255,255,255,.2);display:grid;grid-template-columns:46px 1fr}.mobile-menu nav a:last-child{border-bottom:1px solid rgba(255,255,255,.2)}.mobile-menu nav span{font:400 9px/1 var(--mono);letter-spacing:.1em;padding-top:8px;color:#98938a}.mobile-menu>p{margin:0;font:400 9px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#88837b}

.hero{min-height:100svh;padding-top:var(--header-h);display:grid;grid-template-columns:52% 48%;position:relative;background:var(--paper);overflow:hidden}.hero-copy{padding:clamp(76px,10vh,130px) var(--pad) 36px;display:flex;flex-direction:column;justify-content:space-between;gap:40px}.hero-copy h1{margin:0;font-size:clamp(62px,7.9vw,145px);font-weight:600;line-height:.78;letter-spacing:-.074em;text-transform:uppercase}.hero-copy h1 em{font-style:normal;color:var(--oxide)}.hero-bottom{display:grid;grid-template-columns:minmax(200px,380px) auto;gap:34px;align-items:end}.hero-bottom>p{max-width:34ch;margin:0;font-size:14px;line-height:1.6}.arrow-link{display:inline-flex;justify-content:space-between;align-items:center;gap:28px;min-width:200px;border-bottom:1px solid currentColor;padding:0 0 8px;font:500 10px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase}.arrow-link span{font-size:17px}.hero-image{height:calc(100svh - var(--header-h));overflow:hidden;position:relative;background:#8b8982}.hero-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s linear}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 68%,rgba(0,0,0,.28));pointer-events:none}.hero-image figcaption{position:absolute;z-index:2;left:18px;right:18px;bottom:16px;color:#fff;display:flex;justify-content:space-between;font:400 8px/1 var(--mono);letter-spacing:.1em}.hero-cut{position:absolute;left:calc(52% - 3px);top:var(--header-h);bottom:0;width:6px;background:var(--oxide);z-index:4}

.statement{padding-top:clamp(100px,12vw,180px);padding-bottom:clamp(100px,12vw,180px)}.statement-grid{display:grid;grid-template-columns:1.6fr .6fr;gap:8vw;align-items:end;margin-top:50px}.statement h2,.section-heading h2,.material-copy h2,.method h2,.process-copy h2,.contact h2,.case-strategy h2,.before-after h2,.materials h2,.next-project h2{font-size:clamp(48px,6.6vw,116px);line-height:.86;letter-spacing:-.065em;font-weight:600;margin:0;text-transform:uppercase}.statement-grid>p{font-size:14px;line-height:1.7;margin:0 0 8px;max-width:42ch}

.section-house{background:var(--ink);color:var(--paper);min-height:100svh;display:grid;grid-template-columns:35% 65%;overflow:hidden}.section-house-copy{padding:clamp(70px,8vw,130px) var(--pad) 42px;position:relative;z-index:2}.section-house-copy h2{font-size:clamp(64px,7.8vw,134px);line-height:.83;letter-spacing:-.07em;font-weight:600;text-transform:uppercase;margin:28px 0 35px}.section-intro{font-size:14px;line-height:1.65;color:#aaa49b;max-width:29ch}.phase-controls{margin-top:clamp(50px,7vw,92px);border-top:1px solid rgba(255,255,255,.2)}.phase{width:100%;display:grid;grid-template-columns:48px 1fr;align-items:center;text-align:left;background:none;color:var(--paper);border:0;border-bottom:1px solid rgba(255,255,255,.2);padding:17px 0;transition:color .25s}.phase b{font:400 9px/1 var(--mono);color:#77736c}.phase span{font:500 12px/1 var(--mono);text-transform:uppercase;letter-spacing:.09em}.phase.is-active{color:var(--oxide)}.phase.is-active b{color:var(--oxide)}.interaction-hint{position:absolute;bottom:30px;left:var(--pad);margin:0;font:400 8px/1 var(--mono);letter-spacing:.1em;color:#7e7972}.section-stage{position:relative;min-height:760px;overflow:hidden;cursor:grab;touch-action:pan-y;background:radial-gradient(circle at 60% 45%,#302f2a 0,#171814 44%,#11120f 74%)}.section-stage:active{cursor:grabbing}#section-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:2}.section-fallback{position:absolute;inset:12%;transform:rotateX(55deg) rotateZ(-32deg);transform-style:preserve-3d;opacity:.9}.section-fallback i{position:absolute;border:2px solid currentColor;display:block}.f-shell{inset:20% 10%;color:#88857e}.f-structure{inset:28% 20%;color:var(--oxide);transform:translate3d(28px,-22px,0)}.f-services{inset:36% 30%;color:#477a85;transform:translate3d(54px,-42px,0)}.f-finish{inset:43% 38%;color:var(--paper);transform:translate3d(-14px,-62px,0)}.section-stage.is-live .section-fallback{opacity:0}.stage-axis{position:absolute;right:22px;top:22px;z-index:3;display:flex;gap:5px}.stage-axis span{width:26px;height:26px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:grid;place-items:center;font:400 8px/1 var(--mono);color:#8d8981}.stage-caption{position:absolute;left:22px;right:22px;bottom:18px;z-index:3;display:flex;justify-content:space-between;font:400 8px/1 var(--mono);letter-spacing:.12em;color:#8d8981;pointer-events:none}

.projects{padding-top:clamp(110px,12vw,185px);padding-bottom:clamp(120px,14vw,210px)}.section-heading{display:grid;grid-template-columns:.65fr 1.3fr .65fr;gap:50px;align-items:start;margin-bottom:clamp(60px,8vw,115px)}.section-heading>p:first-child{padding-top:11px}.section-heading>p:last-child{font-size:14px;line-height:1.65;max-width:34ch;margin:10px 0 0}.project figure{overflow:hidden;background:#a8a49b}.project figure img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.project a:hover figure img{transform:scale(1.02)}.project--lead figure{aspect-ratio:16/9}.project-meta{display:grid;grid-template-columns:1fr auto 40px;gap:24px;align-items:start;border-top:1px solid var(--line);padding:14px 0 0;margin-top:9px}.project-meta>div{display:flex;gap:20px;align-items:baseline}.project-meta span{font:400 9px/1 var(--mono);color:var(--oxide)}.project-meta h3{margin:0;font-size:18px;font-weight:600}.project-meta p{margin:3px 0 0;font:400 9px/1.4 var(--mono);letter-spacing:.04em;color:#68655f}.project-meta b{font-weight:400;font-size:21px}.project-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,70px);margin-top:clamp(90px,11vw,165px);align-items:start}.project-pair .project figure{aspect-ratio:3/2}.project--offset{margin-top:180px}

.material-break{display:grid;grid-template-columns:58% 42%;min-height:86svh;background:#d4cab9}.material-break figure{min-height:720px;overflow:hidden}.material-break figure img{width:100%;height:100%;object-fit:cover}.material-copy{padding:clamp(66px,7vw,110px) var(--pad);display:flex;flex-direction:column}.material-copy h2{font-size:clamp(52px,5.7vw,100px);margin:44px 0 auto}.material-copy>p:not(.micro){font-size:14px;line-height:1.7;max-width:35ch;margin:40px 0}.material-index{border-top:1px solid rgba(18,19,15,.35);display:grid;grid-template-columns:1fr 1fr;gap:0}.material-index span{font:400 8px/1 var(--mono);letter-spacing:.1em;border-bottom:1px solid rgba(18,19,15,.35);padding:13px 0}

.method{padding-top:clamp(100px,12vw,180px);padding-bottom:clamp(100px,12vw,180px)}.section-heading--method{grid-template-columns:.65fr 1.3fr .65fr}.method-list{list-style:none;margin:30px 0 0;padding:0;border-top:1px solid var(--line)}.method-list li{display:grid;grid-template-columns:90px 1fr 1fr;gap:30px;align-items:start;padding:28px 0 34px;border-bottom:1px solid var(--line)}.method-list span{font:400 9px/1 var(--mono);color:var(--oxide)}.method-list h3{font-size:clamp(28px,3.5vw,56px);line-height:.95;letter-spacing:-.045em;text-transform:uppercase;margin:0}.method-list p{margin:5px 0 0;font-size:14px;line-height:1.65;max-width:37ch}

.process-photo{background:var(--blue);color:#f4ede3;display:grid;grid-template-columns:58% 42%;min-height:85svh}.process-photo figure{min-height:700px;overflow:hidden}.process-photo figure img{width:100%;height:100%;object-fit:cover}.process-copy{padding:clamp(70px,8vw,125px) var(--pad);display:flex;flex-direction:column;justify-content:space-between}.process-copy h2{font-size:clamp(46px,5.1vw,90px);margin:60px 0}.process-copy>p:last-child{max-width:37ch;font-size:14px;line-height:1.7;color:#c8c1b7}

.contact{padding-top:clamp(110px,13vw,200px);padding-bottom:clamp(110px,13vw,200px);display:grid;grid-template-columns:1fr 1fr;gap:9vw}.contact-copy h2{margin:42px 0 40px}.contact-copy>p:last-child{font-size:14px;line-height:1.7;max-width:36ch}.brief-form{align-self:end;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.brief-form label{padding:20px 0;border-bottom:1px solid var(--line)}.brief-form label:nth-child(odd){padding-right:25px}.brief-form label:nth-child(even){padding-left:25px;border-left:1px solid var(--line)}.brief-form label.wide{grid-column:1/-1;padding-left:0;padding-right:0;border-left:0}.brief-form label span{display:block;font:400 8px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:11px;color:#6f6b64}.brief-form input,.brief-form select,.brief-form textarea{width:100%;border:0;background:transparent;outline:none;padding:0;font-size:16px;resize:vertical}.brief-form input::placeholder,.brief-form textarea::placeholder{color:#98938a}.brief-form button{grid-column:1/-1;border:0;background:var(--oxide);color:#fff;padding:20px;margin-top:24px;display:flex;justify-content:space-between;font:500 10px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase}.form-note{grid-column:1/-1;font:400 8px/1.4 var(--mono);color:#77736c;margin:12px 0 0}.form-note.is-confirmed{color:var(--oxide)}

.site-footer{background:var(--ink);color:var(--paper);padding:36px var(--pad) 24px}.footer-brand{font-size:clamp(84px,17vw,300px);font-weight:600;line-height:.74;letter-spacing:-.075em;overflow:hidden;white-space:nowrap;padding-bottom:35px;border-bottom:1px solid rgba(255,255,255,.18)}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:28px 0 65px}.footer-grid span{font:400 8px/1 var(--mono);color:#77736c;letter-spacing:.1em}.footer-grid p{margin:9px 0 0;font-size:12px}.demo-disclosure{border-top:1px solid rgba(255,255,255,.18);padding-top:16px;margin:0;max-width:95ch;font:400 8px/1.5 var(--mono);color:#77736c}

.case-page{padding-top:var(--header-h)}.case-hero{min-height:620px;display:grid;grid-template-columns:1.15fr .85fr;align-items:end;padding-top:100px;padding-bottom:60px}.case-hero h1{font-size:clamp(100px,13vw,220px);line-height:.7;letter-spacing:-.08em;text-transform:uppercase;margin:35px 0 0}.case-intro{padding-bottom:12px}.case-intro>p:last-child{font-size:16px;line-height:1.7;max-width:52ch;margin:46px 0 0}.case-hero-image{height:min(76vw,980px);max-height:900px;min-height:620px;overflow:hidden}.case-hero-image img{width:100%;height:100%;object-fit:cover}.before-after{padding-top:clamp(100px,11vw,170px);padding-bottom:clamp(100px,11vw,170px)}.ba-head{display:grid;grid-template-columns:.5fr 1fr .5fr;gap:50px;align-items:start;margin-bottom:70px}.ba-head>p:last-child{font-size:14px;line-height:1.65;max-width:36ch}.compare{position:relative;aspect-ratio:3/2;overflow:hidden;background:#aaa}.compare img{width:100%;height:100%;object-fit:cover;pointer-events:none}.compare-after{position:absolute;inset:0}.compare-before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.compare-before img{width:100%;height:100%}.compare input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:5;margin:0}.compare-line{position:absolute;top:0;bottom:0;left:var(--split);width:1px;background:#fff;z-index:4;pointer-events:none}.compare-line i{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;background:var(--oxide);box-shadow:0 0 0 1px rgba(255,255,255,.5)}.compare-line i:before,.compare-line i:after{content:"";position:absolute;top:50%;width:8px;height:8px;border-top:1px solid #fff;border-left:1px solid #fff}.compare-line i:before{left:10px;transform:translateY(-50%) rotate(-45deg)}.compare-line i:after{right:10px;transform:translateY(-50%) rotate(135deg)}.compare-label{position:absolute;top:16px;z-index:4;background:rgba(18,19,15,.75);color:#fff;padding:8px 10px;font:400 8px/1 var(--mono);letter-spacing:.1em}.compare-label--before{left:16px}.compare-label--after{right:16px}.case-strategy{display:grid;grid-template-columns:1.2fr .8fr;gap:10vw;align-items:end;padding-top:70px;padding-bottom:150px}.case-strategy>p{font-size:15px;line-height:1.75;max-width:45ch}.materials{padding-top:120px;padding-bottom:150px;border-top:1px solid var(--line)}.materials ol{list-style:none;padding:0;margin:40px 0 0;border-top:1px solid var(--line)}.materials li{display:grid;grid-template-columns:90px 1fr 1fr;gap:25px;padding:26px 0;border-bottom:1px solid var(--line);align-items:center}.materials li span{font:400 9px/1 var(--mono);color:var(--oxide)}.materials li h3{font-size:clamp(24px,3vw,50px);letter-spacing:-.04em;text-transform:uppercase;margin:0}.materials li p{font:400 10px/1.4 var(--mono);margin:0;color:#77736c}.case-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--ink)}.case-detail-grid figure{height:70vw;max-height:900px;min-height:600px;overflow:hidden}.case-detail-grid img{width:100%;height:100%;object-fit:cover}.next-project{padding-top:150px;padding-bottom:150px}.next-project h2{margin:45px 0 65px}

.error-page{min-height:100svh;background:var(--ink);color:var(--paper);display:flex;flex-direction:column;padding:var(--pad)}.error-page main{margin:auto 0}.error-page h1{font-size:clamp(70px,13vw,220px);line-height:.77;letter-spacing:-.075em;text-transform:uppercase;margin:35px 0 60px}.error-page .demo-disclosure{margin-top:auto}

@media(max-width:900px){
  :root{--header-h:64px}.site-header{grid-template-columns:1fr auto;padding:0 18px}.desktop-nav,.header-cta{display:none}.menu-trigger{display:block}.hero{grid-template-columns:1fr;min-height:auto;padding-top:var(--header-h)}.hero-copy{min-height:630px;padding:62px 18px 28px}.hero-copy h1{font-size:clamp(54px,15.5vw,78px);line-height:.8}.hero-bottom{grid-template-columns:1fr;gap:25px}.hero-bottom .arrow-link{width:100%}.hero-image{height:72svh;min-height:510px}.hero-cut{left:18px;top:auto;bottom:0;height:72svh;width:5px}.statement{padding-left:18px;padding-right:18px}.statement-grid{grid-template-columns:1fr;gap:38px}.statement h2,.section-heading h2,.material-copy h2,.method h2,.process-copy h2,.contact h2,.case-strategy h2,.before-after h2,.materials h2,.next-project h2{font-size:clamp(43px,12.7vw,62px)}.section-house{grid-template-columns:1fr}.section-house-copy{padding:70px 18px 40px}.section-house-copy h2{font-size:clamp(55px,15vw,78px)}.interaction-hint{position:static;margin-top:36px}.section-stage{min-height:590px}.stage-caption{left:16px;right:16px}.projects{padding-left:18px;padding-right:18px}.section-heading{grid-template-columns:1fr;gap:28px}.project--lead figure{aspect-ratio:4/5}.project-meta{grid-template-columns:1fr 28px}.project-meta>p{grid-column:1}.project-pair{grid-template-columns:1fr;margin-top:90px}.project-pair .project figure{aspect-ratio:4/3}.project--offset{margin-top:70px}.material-break{grid-template-columns:1fr}.material-break figure{min-height:580px;height:75svh}.material-copy{padding:70px 18px}.material-copy h2{margin:40px 0 80px}.section-heading--method{grid-template-columns:1fr}.method{padding-left:18px;padding-right:18px}.method-list li{grid-template-columns:46px 1fr}.method-list p{grid-column:2}.process-photo{grid-template-columns:1fr}.process-photo figure{min-height:560px;height:75svh}.process-copy{padding:70px 18px}.contact{grid-template-columns:1fr;padding-left:18px;padding-right:18px;gap:70px}.brief-form{grid-template-columns:1fr}.brief-form label,.brief-form label:nth-child(odd),.brief-form label:nth-child(even){padding:18px 0;border-left:0}.brief-form label.wide{grid-column:auto}.footer-grid{grid-template-columns:1fr;gap:22px}.footer-brand{font-size:25vw}.case-hero{grid-template-columns:1fr;padding:75px 18px 45px;min-height:auto}.case-hero h1{font-size:28vw;margin:35px 0 60px}.case-intro>p:last-child{margin-top:30px}.case-hero-image{height:73svh;min-height:520px}.before-after{padding-left:18px;padding-right:18px}.ba-head{grid-template-columns:1fr;gap:28px}.compare{aspect-ratio:4/5}.case-strategy{grid-template-columns:1fr;padding:60px 18px 110px;gap:45px}.materials{padding-left:18px;padding-right:18px}.materials .section-heading{margin-bottom:30px}.materials li{grid-template-columns:42px 1fr}.materials li p{grid-column:2}.case-detail-grid{grid-template-columns:1fr}.case-detail-grid figure{height:75svh;min-height:560px}.next-project{padding:110px 18px}.error-page{padding:18px}.error-page h1{font-size:20vw}
}

@media(max-width:430px){.hero-copy{min-height:590px}.section-stage{min-height:520px}.phase{padding:15px 0}.project-meta h3{font-size:16px}.material-break figure,.process-photo figure{min-height:520px}.brief-form button{min-height:58px}.mobile-menu{padding-top:30px}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.hero-image img,.project img{transform:none!important}.section-fallback{opacity:1!important}}

@media(max-width:430px){
  .hero{grid-template-columns:minmax(0,1fr)}
  .hero-copy,.hero-image,.section-heading{min-width:0}
  .hero-copy h1{font-size:clamp(47px,13vw,56px);letter-spacing:-.07em}
  .section-heading h2{font-size:clamp(40px,11.4vw,49px)}
  .section-stage{overflow:hidden}
}
