*{box-sizing:border-box}body{margin:0;background:#101716;color:#eef0e9;font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit;touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}header{height:88px;margin:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff16}.brand{font-size:23px;letter-spacing:2px;font-weight:600}.brand small{display:block;font-size:8px;font-weight:400;letter-spacing:5.6px;margin-top:6px}header>span{font-size:9px;letter-spacing:3px;color:#85928a}.contact{font-size:11px;border:1px solid #ffffff2a;padding:13px 18px;border-radius:30px}main{max-width:1600px;margin:auto;display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,1.25fr) 310px;gap:35px;padding:32px 4% 20px;align-items:center}.eyebrow{font-size:8px;letter-spacing:1.8px;color:#aabbaa}h1{font-size:clamp(38px,4.2vw,67px);font-weight:400;line-height:1.13;letter-spacing:-2.8px;margin:30px 0 24px}h1 em{font-family:Georgia,serif;font-weight:400;color:#c9d2b9}.description{color:#94a399;font-size:12px;line-height:1.9}.active{margin-top:55px;padding-left:19px;border-left:1px solid #acbe9377;max-width:245px}.active small{font-size:8px;letter-spacing:2px;color:#7f9585}.active h3{font-size:18px;font-weight:400;margin:13px 0}.active p,.hint{font-size:11px;line-height:1.8;color:#7f9186}.hint{margin-top:36px}.visual{min-width:0}.houseWrap{position:relative;width:min(100%,390px);margin:auto;overflow:hidden;border-radius:5px;box-shadow:0 20px 65px #0005}.houseWrap svg{display:block;width:100%;height:auto}.roomImage{transition:opacity .8s,filter .8s}.roomTarget{position:absolute;transform:translate(-50%,-50%);border:1px solid #ffffff35;background:#111d18df;color:#e4e9db;padding:7px 9px;border-radius:20px;font-size:9px;white-space:nowrap;backdrop-filter:blur(9px);transition:.3s}.roomTarget[aria-pressed=true]{background:#d8e3c5;color:#1e2b22;border-color:#d8e3c5}.caption{text-align:center;color:#718579;font-size:7px;letter-spacing:1px;margin:19px 0 0}.panel{padding:25px 24px;background:#18211e;border:1px solid #ffffff12;border-radius:16px}.panelHead{display:flex;align-items:center;justify-content:space-between}.panelHead small{font-size:7px;letter-spacing:1px;color:#89998c;border:1px solid #ffffff18;border-radius:5px;padding:5px}h2{font-size:21px;font-weight:400;letter-spacing:-.6px;margin:18px 0 24px}.scenes{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.scenes button{background:#202c25;color:#a6b3a7;border:1px solid #ffffff0b;border-radius:9px;padding:12px 3px;font-size:10px}.scenes button>span{display:block;font-size:21px;margin-bottom:8px}.scenes button[aria-pressed=true]{background:#d5dfc4;color:#263422;border-color:#d5dfc4}.roomHead{display:flex;justify-content:space-between;align-items:center;margin:28px 0 19px;border-top:1px solid #ffffff13;padding-top:25px;gap:10px}.roomHead label{font-size:7px;color:#87978a;letter-spacing:1.2px}select{max-width:133px;background:#253127;color:#bfcdbd;border:0;border-radius:5px;padding:7px 4px;font-size:10px}.powerRow{display:flex;justify-content:space-between;align-items:center}.powerRow h3{font-weight:400;font-size:16px;margin:0 0 7px}.powerRow small{font-size:10px;color:#819180}.switch{width:40px;height:23px;border:0;border-radius:20px;background:#3e4941;padding:4px}.switch span{display:block;width:15px;height:15px;border-radius:50%;background:#bac7b0;transition:transform .3s}.switch[aria-checked=true]{background:#c6d7b1}.switch[aria-checked=true] span{background:#263723;transform:translateX(17px)}.sliderLabel{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#b7c5b6;margin:25px 0 12px}.sliderLabel output{color:#d8e3c6;font-size:13px}input[type=range]{display:block;width:100%;height:4px;margin:15px 0;accent-color:#d0dcbd;cursor:pointer}.rangeEnds{display:flex;justify-content:space-between;font-size:8px;color:#6f8374}#warmth{accent-color:#dcb680}.summary{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px;border-top:1px solid #ffffff12;margin-top:24px;padding-top:20px}.summary div{font-size:8px;color:#899b89;display:flex;justify-content:space-between}.summary b{font-weight:400;color:#c6d1b9}#allOff{display:flex;justify-content:space-between;width:100%;background:transparent;border:1px solid #ffffff1c;color:#b4c1ad;padding:12px;border-radius:7px;font-size:10px;margin-top:22px}.disclaimer{font-size:8px;color:#718374;text-align:center;line-height:1.7;margin:15px 0 0}footer{margin:0 4%;padding:19px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #ffffff14;color:#728677;font-size:8px;letter-spacing:1px}#status{letter-spacing:0;color:#a6ba9a;font-size:10px;text-align:center}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #e6efcb;outline-offset:5px}@media(max-width:1050px){main{grid-template-columns:1fr 300px;gap:25px}.intro{grid-column:1/-1}.intro h1{font-size:42px;margin:15px 0}.intro h1 br{display:none}.intro h1 em{margin-left:10px}.description{margin-bottom:0}.active,.hint{display:none}.houseWrap{width:330px}header>span{display:none}}@media(max-width:620px){header{height:75px}.brand{font-size:18px}.brand small{font-size:6px}.contact{font-size:9px;padding:10px}main{display:flex;flex-direction:column;padding:25px 6%;gap:25px}.intro{align-self:flex-start}.intro h1{font-size:37px;line-height:1.15;letter-spacing:-1.6px}.intro h1 br{display:block}.intro h1 em{margin-left:0}.visual{width:100%}.houseWrap{width:100%;max-width:390px}.panel{width:100%}footer{flex-direction:column;gap:4px;text-align:center}.roomTarget{font-size:8px;padding:6px 8px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Full viewport, uncropped plan and a separate control rail. */
html,body{height:100%;overflow:hidden}
header{position:fixed;inset:0 0 auto;z-index:3;height:65px;margin:0;padding:0 24px;border:0;background:#101716}
main{display:block;width:100%;height:100svh;max-width:none;margin:0;padding:0}
.visual{position:absolute;inset:65px 330px 18px 12px;width:auto;height:auto;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#101716}
.houseWrap{position:relative;flex:none;width:auto;height:100%;max-width:100%;aspect-ratio:736/825;margin:0;border-radius:0;box-shadow:none;overflow:visible;transform:none;transition:none}
.houseWrap svg{display:block;width:100%;height:100%}
.roomTarget{font-size:9px;padding:6px 8px;backdrop-filter:none;background:#102018e8}
.panel{position:fixed;z-index:4;right:16px;top:76px;bottom:18px;width:294px;max-height:none;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#61705e transparent;padding:22px;background:#18211e;box-shadow:none}
.intro,.caption{display:none}
footer{position:fixed;bottom:0;left:0;right:0;margin:0;padding:0;border:0;pointer-events:none}footer>span{display:none}
#status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:620px){header{height:56px;padding:0 12px}.contact{font-size:8px;padding:9px}.visual{inset:56px 8px calc(33svh + 20px) 8px}.panel{top:auto;bottom:8px;right:8px;left:8px;width:auto;height:33svh;padding:16px;max-height:none}.houseWrap{width:auto;height:100%;max-width:100%}.roomTarget{font-size:7px;padding:4px 6px}.panel h2{font-size:18px;margin:10px 0}.scenes button{padding:8px}.scenes button>span{display:inline;font-size:15px;margin-right:8px}.roomHead{margin-top:14px;padding-top:14px}.panelHead{display:none}}


/* Edge-to-edge stage: contain the complete plan, reveal controls on demand. */
header{display:none}
.visual{inset:0;width:100%;height:100svh;background:#171b1a}
.houseWrap{max-width:100%;max-height:100%;border-radius:0}
#panelToggle{position:fixed;z-index:10;right:18px;top:16px;padding:13px 18px;border:1px solid #c4d3b647;border-radius:24px;color:#e9efdf;background:#142019ed;box-shadow:0 4px 20px #0004;font-size:12px;backdrop-filter:blur(14px)}
.panel{top:74px;bottom:16px;right:16px;width:294px;max-height:690px;background:#142019f5;box-shadow:0 10px 35px #0006}
.panel[hidden]{display:none!important}
@media(max-width:620px){.visual{inset:0;width:100%;height:100svh}.panel{top:70px;bottom:12px;left:auto;right:12px;width:min(294px,calc(100vw - 24px));height:auto;max-height:calc(100svh - 82px)}#panelToggle{top:12px;right:12px}}

/* Persistent navigation and lighting rails. */
:root{--brand-width:clamp(210px,21vw,300px);--control-width:clamp(310px,27vw,400px)}
body{background:#101716}.brandRail{position:fixed;inset:0 auto 0 0;width:var(--brand-width);padding:38px 26px;z-index:3;display:flex;flex-direction:column;border-right:1px solid #ffffff10;background:#101716}
.brandIdentity{display:flex;align-items:center;gap:12px}.brandIdentity img{width:47px;height:53px;object-fit:contain}.brandIdentity>span{font-size:23px;font-weight:600;letter-spacing:2px}.brandIdentity small{display:block;font-size:8px;letter-spacing:4.1px;font-weight:400;margin-top:6px}.brandKicker{font-size:7px;letter-spacing:1.6px;color:#7f9b8a;margin-top:32px}.brandSlogan{font-size:clamp(31px,3.1vw,46px);line-height:1.18;letter-spacing:-1.6px;margin:17px 0}.brandSlogan em{color:#c9d9b9}.brandDescription{font-size:12px;line-height:1.9;color:#8fa398;margin:0;max-width:220px}.siteNav{margin-top:40px;display:grid;gap:0}.siteNav :is(button,a){display:flex;align-items:center;gap:12px;text-align:left;background:none;border:0;border-bottom:1px solid #ffffff13;padding:20px 0;color:#d5dfd3;font-size:14px}.siteNav :is(button,a) span{font-size:8px;letter-spacing:1px;color:#65816e}.siteNav :is(button,a) i{font-style:normal;margin-left:auto;color:#879a7b}.siteNav :is(button,a):hover{color:#e2f6cd;background:#ffffff04}.railFoot{margin-top:auto;padding-top:32px;font-size:9px;color:#9cb393}.railFoot small{display:block;margin-top:12px;font-size:7px;letter-spacing:2px;color:#5e7767}.railDot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#b2d199;margin-right:6px}
.visual{inset:0 var(--control-width) 0 var(--brand-width);width:auto;height:100svh;background:#171b1a}
.panel{inset:0 0 0 auto;width:var(--control-width);height:100svh;max-height:none;border-radius:0;border:0;border-left:1px solid #ffffff13;padding:32px 27px;background:#18211e;box-shadow:none;overflow-y:auto}
.panel h2{font-size:26px;margin:22px 0 28px}.panel .eyebrow{font-size:9px}.scenes button{font-size:12px;padding:16px 4px}.scenes button>span{font-size:25px}.roomHead{margin-top:33px;padding-top:28px}.roomHead label{font-size:8px}select{font-size:12px;max-width:160px;padding:9px 5px}.powerRow h3{font-size:20px}.powerRow small{font-size:12px}.sliderLabel{font-size:13px;margin-top:28px}.sliderLabel output{font-size:16px}.rangeEnds{font-size:10px}.summary{gap:16px 12px;padding-top:25px;margin-top:28px}.summary div{font-size:10px}#allOff{font-size:12px;padding:15px}.disclaimer{font-size:10px;margin-top:20px}.roomTarget{font-size:8px;padding:5px 7px}
#siteInfo{width:min(520px,calc(100vw - 32px));padding:38px;background:#1b2920;color:#edf3e8;border:1px solid #617654;border-radius:18px;box-shadow:0 25px 100px #0008}#siteInfo::backdrop{background:#050b08b8;backdrop-filter:blur(5px)}#siteInfo h2{font-size:30px}#infoBody{font-size:14px;line-height:1.9;color:#b6c8b4}#infoBody ul{padding-left:20px}#infoBody li{padding:5px 0}#closeInfo{position:absolute;right:16px;top:14px;border:0;background:none;color:#cfdfc8;font-size:20px;padding:8px}.dialogContact{color:#e1efcf;text-decoration:underline;text-underline-offset:5px}
@media(max-width:1100px) and (min-width:761px){:root{--brand-width:200px;--control-width:290px}.brandRail{padding:27px 18px}.brandIdentity{gap:8px}.brandIdentity>span{font-size:19px}.brandIdentity img{width:36px}.brandIdentity small{font-size:7px;letter-spacing:3px}.brandSlogan{font-size:32px}.panel{padding:25px 19px}.panel h2{font-size:22px}.summary div{font-size:9px}.siteNav :is(button,a){font-size:13px}}
@media(max-width:760px){html,body{height:auto;overflow:auto}.brandRail{position:relative;width:100%;padding:22px;border-right:0}.brandKicker{margin-top:20px}.brandSlogan{font-size:37px}.brandSlogan br{display:none}.brandSlogan em{margin-left:6px}.brandDescription{max-width:100%}.siteNav{grid-template-columns:1fr 1fr;gap:0 22px;margin-top:18px}.siteNav :is(button,a){font-size:13px;padding:15px 0}.railFoot{display:none}main{height:auto;display:flex;flex-direction:column;gap:0}.visual{position:relative;inset:auto;width:100%;height:86svh}.panel{position:relative;inset:auto;width:100%;height:auto;max-height:none;padding:26px;border-left:0}.panelHead{display:flex}.scenes button>span{display:block;margin:0 0 8px}.roomTarget{font-size:8px}}

/* Charcoal stone and warm brass, sampled visually from the house materials. */
:root{--theme-bg:#19191b;--theme-panel:#252527;--theme-text:#eeeae3;--theme-muted:#aaa49a;--theme-accent:#d6c2a0}
body,header,.brandRail{background:var(--theme-bg);color:var(--theme-text)}
.visual{background:radial-gradient(ellipse at center,#262629 0%,#1b1b1e 65%,#19191b 100%)}
.panel{background:linear-gradient(145deg,#28282a,#202022);color:var(--theme-text);border-left:1px solid #c5b99e20}
.brandRail{border-right:1px solid #c5b99e16}
.brandKicker,.eyebrow,.brandDescription,.railFoot,.panelHead small,.powerRow small,.rangeEnds,.disclaimer,.roomHead label{color:var(--theme-muted)}
.brandSlogan em{color:#d8c9ae}.brandDescription{color:#aca79f}.siteNav :is(button,a){color:#ded9d0;border-bottom-color:#c7bcaa20}.siteNav :is(button,a) span,.siteNav :is(button,a) i,.railFoot small{color:#928879}.siteNav :is(button,a):hover{color:#f0dfc1;background:#d4b78509}.railDot{background:#dcc29a}
.scenes button{background:#333234;color:#c1baae;border-color:#d6c2a014}.scenes button[aria-pressed=true]{background:#d6c2a0;color:#30291f;border-color:#d6c2a0}
select{background:#353333;color:#e2d7c5}.roomHead,.summary{border-top-color:#c7bcaa24}.sliderLabel{color:#c8bfae}.sliderLabel output,.summary b{color:#e0ceb0}.summary div{color:#aaa49a}
input[type=range]{accent-color:#d6c2a0}#warmth{accent-color:#d7b17e}.switch{background:#55504a}.switch span{background:#bcb4a5}.switch[aria-checked=true]{background:#d6c2a0}.switch[aria-checked=true] span{background:#3c3326}
#allOff{border-color:#cbbb9e3d;color:#d5c7b0}.roomTarget{background:#262525ed;color:#e9e0d0;border-color:#c6b49855}.roomTarget[aria-pressed=true]{background:#d6c2a0;color:#30291f;border-color:#d6c2a0}
#siteInfo{background:#272628;color:#eeeae3;border-color:#807261}#siteInfo::backdrop{background:#0b0b0dd1}#infoBody{color:#c5beb2}#closeInfo,.dialogContact{color:#e5d1b0}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-color:#ead5b0}

.fixtureGroup{transition:opacity .55s ease;--lamp-color:rgb(255,172,100);pointer-events:none}
@media(prefers-reduced-motion:reduce){.fixtureGroup{transition:none}}

.quickScenes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.quickScenes button,.quickScenes #allOff{margin:0;padding:12px 8px;border:1px solid #cbbb9e33;border-radius:8px;background:#ffffff04;color:#d5c7b0;font-size:11px;display:block;width:100%}.quickScenes button:hover{background:#d6c2a018}.sceneHint{font-size:11px;line-height:1.6;color:#aaa49a;margin:14px 0 0}.fixtureChannel{transition:opacity .55s ease}.summary{grid-template-columns:1fr;gap:10px}.summary div{font-size:11px}@media(prefers-reduced-motion:reduce){.fixtureChannel{transition:none}}

/* Extended ground continues past the portrait plan; room coordinates stay fixed. */
.visual{background:#292d33;isolation:isolate;overflow:hidden}
.houseWrap{isolation:isolate}
.houseWrap svg{overflow:visible}
.applicationCards{display:grid;gap:14px;margin-top:24px}.applicationCards article{padding:20px;border:1px solid #d6c2a029;border-radius:12px;background:#ffffff03}.applicationCategory{font-size:9px;letter-spacing:1.5px;color:var(--theme-accent)}.applicationCards h3{font-size:21px;line-height:1.3;color:var(--theme-text);margin:8px 0 10px}.applicationCards p{margin:0;font-size:13px;line-height:1.8}
.applicationCard{display:flex;flex-direction:column;gap:10px;width:100%;padding:20px;text-align:left;border:1px solid #d6c2a029;border-radius:12px;background:#ffffff03;color:var(--theme-muted);font:inherit;line-height:1.7;cursor:pointer}.applicationCard:hover{border-color:#d6c2a080;background:#d6c2a00b}.applicationCard strong{font-size:21px;color:var(--theme-text);line-height:1.3}.applicationCard>span:not(.applicationCategory){font-size:13px}.applicationStatus{color:#d6c2a0;font-size:12px}.applicationAction{color:#eeeae3;margin-top:4px}.applicationBack{border:0;background:none;padding:0;color:#d6c2a0;cursor:pointer;font:inherit;font-size:12px}.productNotice{padding:14px;border-left:2px solid #d6c2a0;background:#d6c2a009;font-size:13px}.productLaunch{display:inline-block;padding:12px 18px;border-radius:8px;background:#d6c2a0;color:#30291f;text-decoration:none;font-weight:600}.productLocalNote{font-size:11px;color:#aaa49a}

.siteNav a{text-decoration:none}
