:root{
  --bg:#e9e9e7;
  --paper:#f5f4f1;
  --ink:#312e2e;
  --muted:#6f6a66;
  --line:rgba(49,46,46,.18);
  --footer:#342e2e;
  --max:1810px;
  --side:38px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:auto}
figure{margin:0}
.page-shell{width:min(calc(100% - (var(--side) * 2)),var(--max));margin-inline:auto}

.site-header{height:83px;background:var(--bg)}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.brand{font-size:30px;line-height:1;letter-spacing:-1.35px}
.main-nav{display:flex;align-items:center;gap:37px;font-size:15px}
.main-nav a{padding:4px 0;border-bottom:1px solid transparent}.main-nav a:hover{border-bottom-color:currentColor}

.case-study{padding:32px 0 0}
.case-study h1{margin:0 0 46px;font-size:52px;line-height:1;font-weight:400;letter-spacing:-2.3px}.case-study h1 span{font-size:.72em;letter-spacing:-1.2px}
.hero-media{width:100%;aspect-ratio:16/8.7;overflow:hidden;background:#d8d5d1}.hero-media img{height:100%;object-fit:cover;object-position:50% 50%}

section{margin-top:150px}
.eyebrow{margin:0 0 18px;font-size:18px;line-height:1.2;font-weight:400}
h2{margin:0;font-size:42px;line-height:1.05;font-weight:400;letter-spacing:-1.7px}
.copy p,.feature-copy p,.materials-copy p{font-size:20px;line-height:1.48;margin:0 0 24px;max-width:760px}
.split-text{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:120px;align-items:start}
.split-text>div:first-child{max-width:620px}
.section-head{max-width:790px;margin-bottom:54px}.section-head.narrow{max-width:680px}.inline-head{margin-bottom:34px}

.bullet-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin:0 0 56px;padding-top:20px;border-top:1px solid var(--line)}
.bullet-grid p{font-size:16px;line-height:1.4;margin:0;padding-right:16px}.bullet-grid p::before{content:"—";display:block;margin-bottom:13px}
.before-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:16px}.before-grid figure{aspect-ratio:4/3;overflow:hidden;background:#ddd}.before-grid img{height:100%;object-fit:cover}

.challenge{display:grid;grid-template-columns:1fr 1.1fr;gap:120px;padding-top:70px;border-top:1px solid var(--line)}.wide-copy{padding-top:3px}

.plan-section{background:var(--paper);padding:64px 70px 76px;margin-left:calc(var(--side) * -1);margin-right:calc(var(--side) * -1)}.plan-section>.section-head,.plan-section>.plan{max-width:1660px;margin-left:auto;margin-right:auto}.plan{background:#fff;padding:30px}.plan img{max-height:760px;object-fit:contain}

.moves-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.moves-list li{display:grid;grid-template-columns:90px 1fr;gap:30px;padding:24px 0;border-bottom:1px solid var(--line);align-items:start}.moves-list span{font-size:20px;color:var(--muted)}.moves-list p{margin:0;font-size:26px;line-height:1.25;max-width:1160px}

.feature{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px;align-items:start}.feature-copy{position:sticky;top:38px}.feature-copy h2{margin-bottom:30px}.feature-images{display:grid;grid-template-columns:1.25fr .75fr;gap:16px;align-items:start}.feature-images figure{overflow:hidden}.feature-images .landscape{aspect-ratio:4/3}.feature-images .portrait{aspect-ratio:3/4}.feature-images img{height:100%;object-fit:cover}
.duo-media{display:grid;grid-template-columns:1fr 1fr;gap:16px}.duo-media figure{aspect-ratio:4/3;overflow:hidden}.duo-media img{height:100%;object-fit:cover}.child-duo figure{aspect-ratio:4/3}

.future{padding:84px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.materials{display:grid;grid-template-columns:1.18fr .82fr;gap:90px;align-items:center}.materials-image{aspect-ratio:4/3;overflow:hidden}.materials-image img{height:100%;object-fit:cover}.materials-copy h2{margin-bottom:30px}
.result{margin-bottom:0}

.process-section{padding-top:76px;border-top:1px solid var(--line)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.process-grid figure{aspect-ratio:4/3;overflow:hidden}.process-grid img{height:100%;object-fit:cover}

.final-gallery{margin-top:160px}.editorial-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.editorial-grid figure{grid-column:span 6;aspect-ratio:4/3;overflow:hidden}.editorial-grid figure.wide{grid-column:span 12;aspect-ratio:16/8.6}.editorial-grid figure.tall{grid-column:span 5;aspect-ratio:3/4}.editorial-grid figure.tall+figure{grid-column:span 7}.editorial-grid img{height:100%;object-fit:cover}.editorial-grid .closing{margin-top:30px}

.project-nav{margin-top:60px;padding:34px 0 40px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:40px;font-size:20px;line-height:1.2}.project-nav a{display:inline-flex;align-items:center;gap:10px}.project-nav .next{margin-left:auto;text-align:right}

.site-footer{background:var(--footer);color:#fff}.footer-inner{width:calc(100% - 152px);margin:0 auto;min-height:340px;padding:78px 0 52px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr auto;grid-template-areas:"brand links" ". ." "copyright privacy"}.footer-brand{grid-area:brand}.footer-brand img{display:block;width:166px;height:auto}.footer-brand p{margin:28px 0 0;font-size:13px;font-weight:600}.footer-links{grid-area:links;justify-self:end;display:flex;flex-direction:column;gap:26px;align-items:flex-end;font-size:15px}.footer-links a,.privacy{text-decoration:underline;text-underline-offset:3px}.footer-inner small{grid-area:copyright;align-self:end;font-size:13px}.privacy{grid-area:privacy;justify-self:end;align-self:end;font-size:13px}

@media(max-width:1100px){
  :root{--side:24px}
  .main-nav{gap:22px}
  .case-study h1{font-size:44px}
  h2{font-size:36px}
  .copy p,.feature-copy p,.materials-copy p{font-size:18px}
  .split-text,.challenge,.feature,.materials{gap:56px}
  .bullet-grid{grid-template-columns:repeat(2,1fr)}
  .before-grid,.process-grid{grid-template-columns:1fr 1fr}
  .plan-section{padding-inline:32px}
}
@media(max-width:760px){
  :root{--side:20px}
  .site-header{height:90px}.main-nav{display:none}
  .case-study{padding-top:22px}.case-study h1{font-size:38px;line-height:1.05;margin-bottom:28px}.case-study h1 span{display:block;margin-top:6px}
  .hero-media{aspect-ratio:4/5}.hero-media img{object-position:55% 50%}
  section{margin-top:92px}.eyebrow{font-size:15px;margin-bottom:14px}h2{font-size:31px;letter-spacing:-1px}
  .split-text,.challenge,.feature,.materials{display:block}.split-text>div+div,.challenge>.wide-copy,.feature-images,.duo-media,.materials-copy{margin-top:34px}.copy p,.feature-copy p,.materials-copy p{font-size:17px}
  .bullet-grid{grid-template-columns:1fr;gap:0}.bullet-grid p{padding:15px 0;border-bottom:1px solid var(--line)}
  .before-grid,.process-grid{grid-template-columns:1fr;gap:12px}
  .plan-section{margin-left:-20px;margin-right:-20px;padding:44px 20px}.plan{padding:12px;overflow:auto}.plan img{min-width:900px}
  .moves-list li{grid-template-columns:54px 1fr;gap:10px}.moves-list p{font-size:20px}
  .feature-copy{position:static}.feature-images{grid-template-columns:1fr}.feature-images .portrait,.feature-images .landscape{aspect-ratio:4/3}
  .duo-media{grid-template-columns:1fr}
  .future{padding:56px 0}
  .materials-image{aspect-ratio:4/3}
  .editorial-grid{display:block}.editorial-grid figure,.editorial-grid figure.wide,.editorial-grid figure.tall,.editorial-grid figure.tall+figure{aspect-ratio:4/3;margin-bottom:12px}.editorial-grid figure.tall{aspect-ratio:3/4}.editorial-grid .closing{margin-top:12px}
  .project-nav{flex-direction:column;align-items:flex-start;font-size:18px}.project-nav .next{margin-left:0;text-align:left}
  .footer-inner{width:calc(100% - 40px);display:block;min-height:auto;padding:50px 0 32px}.footer-links{margin-top:50px;align-items:flex-start}.privacy{display:block;margin-top:55px}.footer-inner small{display:block;margin-top:24px}
}

/* Case study refinements */
.moves > .section-head{max-width:none}
.editorial-grid figure.bathroom-photo{grid-column:span 4;aspect-ratio:3/4}
@media(max-width:760px){.editorial-grid figure.bathroom-photo{aspect-ratio:3/4}}
