:root{--paper:#f4f3ef;--ink:#171715;--line:#c9c6bf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}button,a{font:inherit}.site-header{position:fixed;z-index:50;left:0;right:0;top:0;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:flex-start;color:#fff;mix-blend-mode:difference}.brand{color:inherit;text-decoration:none;display:grid;gap:.35rem;letter-spacing:.2em}.brand b{font-weight:400}.brand small{font-size:.58rem}.site-header>div{display:flex;gap:2rem;align-items:center}.site-header>div>a{color:inherit;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem}.menu-toggle,.menu-close{border:0;background:none;color:inherit;text-transform:uppercase;letter-spacing:.12em;cursor:pointer}.menu-toggle{display:grid;grid-template-columns:auto 24px;gap:5px 12px}.menu-toggle i{height:1px;background:currentColor}.menu-toggle i:first-of-type{grid-column:2}.menu{position:fixed;z-index:100;inset:0 0 0 auto;width:min(44rem,100%);background:#26231f;color:#fff;padding:2rem 4rem;display:flex;flex-direction:column;transform:translateX(101%);transition:.6s cubic-bezier(.22,.7,.24,1)}.menu.open{transform:none}.menu-close{align-self:flex-end}.menu>p{margin:7vh 0 2rem;color:#aaa49b;text-transform:uppercase;letter-spacing:.17em;font-size:.72rem}.menu>a{display:flex;gap:1.5rem;align-items:baseline;border-top:1px solid #4b4640;padding:1.1rem 0;color:#fff;text-decoration:none;font-size:clamp(1.8rem,4vw,3.2rem)}.menu>a:last-of-type{border-bottom:1px solid #4b4640}.menu>a small{color:#918a82;font-size:.68rem}.menu footer{margin-top:auto;display:flex;justify-content:space-between;color:#aaa49b;font-size:.76rem}.menu footer a{color:inherit}.hero{height:100svh;position:relative;background:#111;overflow:hidden}.hero video,.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero video{z-index:1}.shop{padding:9rem clamp(1rem,5vw,5rem) 6rem}.shop-intro{display:grid;grid-template-columns:1fr 2fr 1fr;gap:2rem;padding-bottom:7rem}.kicker,.result-line{text-transform:uppercase;letter-spacing:.17em;font-size:.75rem;color:#716c65}.shop h1{font-size:clamp(4rem,8vw,8rem);font-weight:400;line-height:.9;letter-spacing:-.06em;margin:0}.shop-intro .copy{line-height:1.55;color:#6b665f;margin-top:2rem}.filters{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.5rem 0 2rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem}.filter-group:last-child{justify-self:end}.filter-group p{text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;color:#706b64}.filter-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.filter-buttons button{border:1px solid #aaa69f;background:transparent;border-radius:2rem;padding:.75rem 1rem;cursor:pointer}.filter-buttons button.active{background:#171715;color:#fff}.result-line{display:flex;justify-content:space-between;margin:3rem 0 1rem}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(350px,36vw);gap:.8rem}.project-card{position:relative;overflow:hidden;color:#fff;text-decoration:none}.project-card.wide{grid-column:span 2}.project-card img{width:100%;height:100%;object-fit:cover;transition:.4s}.project-card:hover img{transform:scale(1.025)}.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.67),transparent 48%)}.project-card>small{position:absolute;z-index:1;top:1.2rem;left:1.2rem;letter-spacing:.14em}.project-card>span{position:absolute;z-index:1;left:1.2rem;bottom:1.2rem;display:grid;gap:.35rem}.project-card b{font-size:1.55rem;font-weight:400}.project-card em{font-style:normal;font-size:.75rem}.project-hero{min-height:100svh;display:grid;grid-template-columns:1.5fr .75fr}.project-hero>img{width:100%;height:100svh;object-fit:cover}.project-copy{padding:8rem clamp(2rem,5vw,5rem);display:flex;flex-direction:column;justify-content:center}.project-copy h1{font-size:clamp(3.4rem,7vw,7rem);line-height:.9;letter-spacing:-.06em;font-weight:400;margin:1rem 0 3rem}.facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.3rem 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.facts span{display:grid;gap:.4rem}.facts small{text-transform:uppercase;letter-spacing:.12em;color:#777;font-size:.62rem}.choice-zone{background:linear-gradient(rgba(50,45,41,.75),rgba(50,45,41,.75)),url('/assets/configurator.jpg') center/cover fixed;color:#fff}.choice-nav{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(30,27,24,.9)}.choice-nav a{color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.13em;font-size:.68rem;text-align:center;padding:1rem;border-right:1px solid #555}.choice-row{display:grid;grid-template-columns:9rem 1fr;gap:1rem;padding:1.5rem clamp(1rem,4vw,4rem);border-bottom:1px solid rgba(255,255,255,.2)}.choice-row h2{font-size:1rem;font-weight:400}.thumbs{display:flex;gap:.75rem;overflow:auto}.thumb{position:relative;flex:0 0 min(20rem,32vw);aspect-ratio:1.6;padding:0;border:1px solid transparent;background:#333;color:#fff;cursor:pointer}.thumb.selected{border-color:#fff}.thumb img{width:100%;height:100%;object-fit:cover}.thumb span{position:absolute;left:.7rem;bottom:.7rem;background:rgba(0,0,0,.65);padding:.45rem .7rem;border-radius:2rem}.feature{height:80vh}.feature img{width:100%;height:100%;object-fit:cover}.walk{height:100svh;position:relative;background:#111;color:#fff;display:flex;align-items:flex-end}.walk video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.walk div{position:relative;z-index:1;padding:5vw;background:linear-gradient(transparent,rgba(0,0,0,.65));width:100%}.walk h2,.packages h2{font-size:clamp(3rem,6vw,6rem);font-weight:400;letter-spacing:-.05em;margin:.5rem 0}.packages{padding:8rem 5vw}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.package{background:var(--paper);padding:2rem;min-height:430px;display:flex;flex-direction:column}.package h3{font-size:2.3rem;font-weight:400;line-height:1.05;margin:3rem 0 1rem}.package p{color:#6b665f;line-height:1.55}.package a{margin-top:auto;border-top:1px solid #aaa;padding-top:1rem;color:inherit;text-decoration:none}.soon{min-height:100svh;display:grid;place-items:center;padding:6rem 2rem}.soon div{text-align:center}.soon h1{font-size:clamp(4rem,12vw,10rem);font-weight:400;letter-spacing:-.06em;margin:.5rem}.soon a{color:inherit}.footer{padding:2rem;background:#201e1b;color:#fff;display:flex;justify-content:space-between}.footer a{color:inherit}@media(max-width:850px){.shop-intro,.project-hero{grid-template-columns:1fr}.shop-intro{padding-bottom:4rem}.filters{grid-template-columns:1fr}.filter-group:last-child{justify-self:start}.project-grid{grid-template-columns:1fr;grid-auto-rows:95vw}.project-card.wide{grid-column:auto}.project-hero>img{height:65vh}.project-copy{padding:4rem 1.2rem}.package-grid{grid-template-columns:1fr}.choice-row{grid-template-columns:1fr}.thumb{flex-basis:75vw}.site-header{padding:1.2rem 1rem}.site-header>div>a{display:none}.menu{padding:1.5rem}.menu>p{margin-top:4vh}.menu>a{font-size:1.75rem}.facts{grid-template-columns:1fr}.footer{flex-direction:column;gap:1rem}}

/* Keep the MENU control anchored to the viewport, independent of hero media */
.site-header .menu-toggle{
    position:fixed;
    top:28px;
    right:32px;
    z-index:110;
}
@media(max-width:850px){
    .site-header .menu-toggle{
        top:18px;
        right:18px;
    }
}

.thumb span{display:flex;align-items:center;gap:.5rem}.thumb span small{font-size:.58rem;letter-spacing:.12em;color:#cfcac3}.configuration-summary{display:flex;justify-content:space-between;align-items:end;gap:2rem;padding:2.5rem clamp(1rem,4vw,4rem);background:rgba(24,22,20,.92)}.configuration-summary p{margin:.35rem 0;color:#aaa49b}.configuration-summary strong{display:block;font-size:clamp(1.8rem,4vw,3.6rem);font-weight:400;letter-spacing:.04em}.configuration-button{display:inline-block;color:#171715;background:#fff;text-decoration:none;padding:1rem 1.4rem;white-space:nowrap}.configuration-button.disabled{opacity:.35;pointer-events:none}.configuration-walk>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.youtube-link{display:inline-block;margin-top:1rem;color:#fff;border-bottom:1px solid #fff;text-decoration:none;padding-bottom:.3rem}.configuration-collage{padding:8rem 5vw;display:grid;grid-template-columns:minmax(220px,.55fr) 1.45fr;gap:4rem;align-items:start}.collage-copy{position:sticky;top:6rem}.collage-copy h2{font-size:clamp(2.5rem,5vw,5rem);font-weight:400;letter-spacing:-.04em;margin:.5rem 0}.collage-copy p:last-child{color:#6b665f;line-height:1.55}.finished-collage{width:100%;max-height:90vh;object-fit:cover}.automatic-collage{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.automatic-collage figure{position:relative;margin:0;min-height:30vw;background:#ddd;overflow:hidden}.automatic-collage img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.automatic-collage figcaption{position:absolute;left:1rem;right:1rem;bottom:1rem;background:rgba(25,23,21,.78);color:#fff;padding:.8rem;display:grid;gap:.3rem}.automatic-collage figcaption small{text-transform:uppercase;letter-spacing:.12em;color:#cfcac3;font-size:.58rem}.package-price{font-size:1.35rem;font-weight:400;margin-top:auto;padding-bottom:1rem}.package-soon{border-top:1px solid #aaa;padding-top:1rem;color:#777}.configuration-empty{min-height:65vh;padding:10rem 5vw;display:flex;flex-direction:column;justify-content:center}.configuration-empty h2{font-size:clamp(3rem,7vw,7rem);font-weight:400;letter-spacing:-.05em;margin:.5rem 0}.configuration-empty>p:last-child{max-width:42rem;color:#6b665f;line-height:1.55}@media(max-width:850px){.configuration-summary{align-items:stretch;flex-direction:column}.configuration-button{width:100%;text-align:center}.configuration-collage{grid-template-columns:1fr;gap:2rem;padding:5rem 1rem}.collage-copy{position:static}.automatic-collage{grid-template-columns:1fr}.automatic-collage figure{min-height:75vw}}
.choice-zone{background:#2f2b27}
.thumb[data-category="exterior"]{flex-basis:min(15rem,24vw);aspect-ratio:5/7}
.thumb[data-category="interior"],.thumb[data-category="bathroom"]{flex-basis:min(20rem,32vw);aspect-ratio:1/1}
.thumb[data-category="plan"]{flex-basis:min(28rem,44vw);aspect-ratio:16/9}
@media(max-width:850px){.thumb[data-category="exterior"]{flex-basis:68vw}.thumb[data-category="interior"],.thumb[data-category="bathroom"]{flex-basis:75vw}.thumb[data-category="plan"]{flex-basis:88vw}}
