
:root{--ivory:#f7f4f0;--cream:#fffcf7;--ink:#242522;--terr:#c45f37;--muted:#625d56;--line:#d7d0c7;--max:1270px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px;scrollbar-gutter:stable;overflow-x:clip}body{overflow-x:clip;margin:0;background:var(--ivory);color:var(--ink);font-family:Inter,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--terr);outline-offset:4px}img{display:block;max-width:100%;height:auto}p,h1,h2,h3,figure{margin:0}.container{width:min(calc(100% - 100px),var(--max));margin-inline:auto}.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:700;text-transform:uppercase}.accent{color:var(--terr)}.muted{color:var(--muted)}.navhead{position:sticky;top:0;z-index:20;background:rgba(247,244,240,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.navrow{min-height:91px;display:flex;gap:28px;align-items:center;justify-content:space-between}.navlogo{display:block;width:240px;flex:0 0 240px}.navlogo img{width:100%}.navlinks{display:flex;gap:28px;align-items:center}.navlinks a{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:700}.navlinks a:hover{color:var(--terr)}.navbtn{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;border:1px solid #2d2d2a;padding:14px 17px;white-space:nowrap}.navbtn:hover{background:var(--ink);color:white}.menu{display:none;background:none;border:1px solid var(--line);font-size:22px;width:45px;height:45px;cursor:pointer}
.breadcrumb{padding:24px 0 10px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#77716a}.breadcrumb a{border-bottom:1px solid #baaba0;padding-bottom:3px}.breadcrumb span{padding:0 9px;color:#b9aa9f}
.project-hero{display:grid;grid-template-columns:.82fr 1.18fr;gap:42px;align-items:center;min-height:550px;padding:16px 0 78px}.hero-copy{padding:35px 12px 30px 0}.hero-kicker{margin-bottom:28px}.hero-copy h1{font-size:clamp(56px,5.8vw,85px);letter-spacing:-.073em;line-height:1.02;font-weight:670;max-width:530px}.hero-copy h1 span{display:block;color:var(--terr)}.hero-copy .intro{font-size:16px;line-height:1.86;max-width:465px;color:#57534d;margin-top:27px}.hero-facts{display:flex;gap:28px;flex-wrap:wrap;padding-top:31px;margin-top:33px;border-top:1px solid var(--line)}.hero-facts div{display:grid;gap:8px}.hero-facts dt{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:#897b6d}.hero-facts dd{margin:0;font-size:13px;font-weight:650}.hero-image{position:relative;background:#e5ded5;min-height:430px;height:530px;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-image .label{position:absolute;bottom:22px;left:22px;color:#fff;background:rgba(27,27,25,.72);font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:750;padding:11px 13px}.hero-image:after{content:'';display:block;position:absolute;right:27px;top:27px;width:75px;height:75px;border:1px solid rgba(255,255,255,.8);border-radius:50%}
.story{background:var(--cream);padding:95px 0 106px}.story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.story h2{font-size:clamp(40px,4.2vw,65px);font-weight:670;letter-spacing:-.065em;line-height:1.11;margin:25px 0}.story p{color:#5f5b54;font-size:15px;line-height:1.95;margin-bottom:16px}.paired{border-top:1px solid var(--line);margin-top:28px;padding-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.paired div{display:grid;gap:8px}.paired strong{font-weight:700;font-size:16px}.paired span{font-size:12px;color:#767068;line-height:1.6}.paired .active strong{color:var(--terr)}.paired a{border-bottom:1px solid #c5aea0;justify-self:start;padding-bottom:4px}.study{background:#eee6da;min-height:240px;display:flex;flex-direction:column;gap:24px;justify-content:center;padding:32px 25px}.study svg{width:100%;max-height:300px}.study small{color:#847567;font-size:10px;letter-spacing:.16em;text-transform:uppercase;text-align:center}
.gallery{padding:100px 0;background:var(--ivory)}.section-top{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:37px}.section-top h2{font-size:clamp(42px,4.5vw,70px);font-weight:670;letter-spacing:-.07em;margin-top:18px}.section-top p{font-size:13px;color:#6b645b;max-width:330px;line-height:1.8}.gallery-grid{display:grid;grid-template-columns:1.22fr .78fr;gap:17px}.gallery-grid figure{position:relative;min-width:0;background:#e7dfd4}.gallery-grid figure:first-child{grid-row:span 2}.gallery-grid img{width:100%;height:100%;object-fit:cover;aspect-ratio:1.45/1}.gallery-grid figure:first-child img{aspect-ratio:1.05/1}.gallery-grid figcaption{position:absolute;left:13px;bottom:13px;background:#fffbf2ee;padding:7px 9px;color:#252522;font-size:10px;letter-spacing:.09em;text-transform:uppercase}.gallery-more{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:17px}.gallery-more figure{margin:0;background:#e7dfd4;position:relative}.gallery-more img{width:100%;height:100%;object-fit:cover;aspect-ratio:1.52/1}.gallery-more figcaption{position:absolute;left:13px;bottom:13px;background:#fffbf2ee;padding:7px 9px;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.build-story{background:#e9e1d7;padding:84px 0 90px}.build-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:center}.build-copy h2{font-size:clamp(36px,3.6vw,58px);letter-spacing:-.065em;line-height:1.12;margin:18px 0 21px}.build-copy p{font-size:14px;line-height:1.85;color:#625e58}.build-photo{min-height:220px}.build-photo img{width:100%;height:100%;object-fit:cover;aspect-ratio:1.65/1}.build-photo figcaption{font-size:11px;color:#6d655d;margin-top:9px;line-height:1.5}
.next-home{background:#252622;color:#fff;display:block}.next-row{padding:70px 0;display:flex;gap:32px;align-items:center;justify-content:space-between}.next-row h2{font-size:clamp(32px,3.8vw,58px);letter-spacing:-.055em;font-weight:660;margin-top:15px}.next-row p{font-size:12px;color:#bfbab4;margin-top:10px}.next-row a{border-bottom:1px solid #c66f4c;font-size:12px;text-transform:uppercase;letter-spacing:.12em;padding-bottom:9px;white-space:nowrap}.footer{background:#1e1f1c;color:#e9e3db;border-top:1px solid #43443f}.footrow{min-height:92px;display:flex;justify-content:space-between;align-items:center;gap:30px}.footrow .brand{font-size:24px;letter-spacing:-.05em;font-weight:700}.footrow p{font-size:10px;letter-spacing:.13em;color:#d2c9c0;text-transform:uppercase}.footrow a{font-size:12px;color:#ead0c2}
@media(max-width:960px){.container{width:min(calc(100% - 48px),var(--max))}.navrow{min-height:76px}.navlogo{width:196px;flex-basis:196px}.navlinks{gap:16px}.navlinks a{font-size:10px}.navbtn{display:none}.project-hero{grid-template-columns:1fr 1fr;gap:22px;min-height:0}.hero-copy h1{font-size:56px}.hero-image{height:430px;min-height:0}.story-grid{gap:36px}.story{padding:70px 0}.gallery{padding:80px 0}}
@media(max-width:700px){.container{width:calc(100% - 38px)}.navrow{min-height:72px}.navlogo{width:175px;flex-basis:175px}.menu{display:block}.navlinks{display:none;position:absolute;top:72px;left:0;right:0;background:#f7f4f0;flex-direction:column;align-items:stretch;padding:20px 22px;border-bottom:1px solid var(--line);gap:15px}.navlinks.open{display:flex}.navlinks a{font-size:12px;padding:9px 3px}.breadcrumb{padding:21px 0 2px}.project-hero{grid-template-columns:1fr;gap:23px;padding:10px 0 56px}.hero-copy{padding:10px 0 0}.hero-kicker{margin-bottom:16px}.hero-copy h1{font-size:clamp(49px,10.5vw,68px)}.hero-copy .intro{font-size:14px;margin-top:18px}.hero-facts{margin-top:23px;padding-top:23px;gap:22px}.hero-image{height:335px}.story-grid{grid-template-columns:1fr;gap:31px}.story h2{font-size:44px;margin:14px 0}.paired{margin-top:24px}.gallery{padding:66px 0}.section-top{display:block;margin-bottom:22px}.section-top h2{margin-top:13px}.section-top p{margin-top:14px}.gallery-grid{grid-template-columns:1fr;gap:12px}.gallery-grid figure:first-child{grid-row:auto}.gallery-grid img,.gallery-grid figure:first-child img{aspect-ratio:1.34/1}.gallery-more{gap:12px;margin-top:12px}.gallery-more img{aspect-ratio:1.0/1}.gallery-more figcaption{font-size:9px}.build-story{padding:62px 0}.build-grid{grid-template-columns:1fr;gap:20px}.build-copy h2{font-size:42px}.next-row{padding:57px 0;display:block}.next-row a{display:inline-block;margin-top:28px}.footrow{padding:25px 0;display:grid;gap:12px}.footrow p{line-height:1.6}}
@media(max-width:355px){.hero-copy h1{font-size:45px}.hero-image{height:290px}.paired{gap:10px}.paired strong{font-size:14px}.navlogo{width:160px;flex-basis:160px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Bauhouse V6.2: project-page typography aligned with the homepage */
.hero-copy h1{font-size:clamp(40px,4.15vw,59px);line-height:1.09;letter-spacing:-.052em;font-weight:670}
.story h2{font-size:clamp(34px,3.2vw,49px);line-height:1.16;letter-spacing:-.047em}
.section-top h2{font-size:clamp(34px,3.2vw,50px);line-height:1.14;letter-spacing:-.045em}
.build-copy h2{font-size:clamp(32px,3vw,46px);line-height:1.17;letter-spacing:-.045em}
.next-row h2{font-size:clamp(32px,3vw,47px);line-height:1.15;letter-spacing:-.045em}
.project-hero{min-height:490px;padding-bottom:65px}
.story{padding:76px 0 84px}.gallery{padding:80px 0}.build-story{padding:70px 0 78px}
@media(max-width:960px) and (min-width:701px){
 .hero-copy h1{font-size:clamp(38px,4.6vw,50px)}
 .hero-image{height:400px}
}
@media(max-width:700px){
 .hero-copy h1{font-size:clamp(36px,8.6vw,46px);line-height:1.1}
 .story h2{font-size:clamp(32px,7.3vw,42px)}
 .section-top h2{font-size:clamp(32px,7.3vw,42px)}
 .build-copy h2{font-size:clamp(31px,7.2vw,41px)}
 .next-row h2{font-size:clamp(30px,7vw,40px)}
 .project-hero{min-height:0;padding-bottom:46px}
 .story,.gallery,.build-story{padding:62px 0}
}
@media(max-width:355px){.hero-copy h1{font-size:36px}}

/* Bauhouse V6.3 — project pages share the same calm editorial scale */
.eyebrow{font-size:12px;letter-spacing:.10em;font-weight:650}
.nav a{font-size:12px;letter-spacing:.085em;font-weight:650}
.hero-copy h1{font-size:clamp(35px,2.85vw,44px);line-height:1.18;letter-spacing:-.035em;font-weight:630}
.hero-copy .intro{font-size:16px;line-height:1.73}
.story h2,.section-top h2{font-size:clamp(32px,2.5vw,39px);line-height:1.23;letter-spacing:-.035em;font-weight:630}
.build-copy h2,.next-row h2{font-size:clamp(30px,2.35vw,37px);line-height:1.23;letter-spacing:-.035em;font-weight:630}
.story p,.build-copy p{font-size:16px;line-height:1.77}
.section-top p{font-size:15.5px;line-height:1.73}
.paired strong{font-size:15px}
.hero-facts{font-size:13px}
.story{padding:70px 0 77px}.gallery{padding:72px 0}.build-story{padding:65px 0 73px}
@media (max-width:960px) and (min-width:701px){
 .hero-copy h1{font-size:clamp(34px,3.8vw,41px)}
}
@media (max-width:700px){
 .hero-copy h1{font-size:clamp(32px,8.4vw,37px);line-height:1.19}
 .hero-copy .intro{font-size:15.5px}
 .story h2,.section-top h2{font-size:clamp(29px,7.6vw,34px)}
 .build-copy h2,.next-row h2{font-size:clamp(28px,7.3vw,33px)}
 .story p,.build-copy p,.section-top p{font-size:15.5px;line-height:1.75}
 .story,.gallery,.build-story{padding:57px 0}
}
@media(max-width:355px){.hero-copy h1{font-size:31px}}


/* V6.5 consistent Bauhouse logo: common header/footer across project pages */
.navlogo picture{display:block;width:100%}
.navlogo picture img{display:block;width:100%;height:auto;max-width:100%}
.footrow .footer-logo{display:block;flex:0 1 330px;width:330px;max-width:330px;min-width:210px}
.footrow .footer-logo img{display:block;width:100%;height:auto;max-width:100%}
@media (min-width:1101px){.navrow{min-height:104px;gap:19px}.navlogo{width:354px;flex:0 0 354px}.navlinks{gap:22px}}
@media (min-width:961px) and (max-width:1100px){.navrow{min-height:95px;gap:16px}.navlogo{width:300px;flex:0 0 300px}.navbtn{display:none}.navlinks{gap:16px}}
@media (max-width:960px){.navlogo{width:288px;flex:0 0 288px}}
@media (max-width:700px){.navlogo{width:min(252px,calc(100vw - 104px));flex:0 1 auto}.navrow{gap:9px;min-height:76px}.footrow .footer-logo{max-width:310px;flex-basis:auto}}
@media (max-width:375px){.navlogo{width:min(217px,calc(100vw - 98px))}}

@media(max-width:700px){.footrow .footer-logo{width:100%;max-width:100%;min-width:0;flex:1 1 100%}}
