.model-page-return,.model-mobile-guide,.model-mobile-choices,.mobile-model-extra{display:none}
/* Only the canvas owns drag/pinch input; controls and the surrounding page keep
   normal touch scrolling. Inline and expanded views share the same model. */
#scene,#scene canvas{touch-action:none}
.scene-wrap.is-expanded .model-page-return{position:sticky;top:8px;z-index:24;display:flex;align-items:center;justify-content:center;gap:8px;width:max-content;max-width:calc(100% - 24px);min-height:44px;margin:8px 12px 0 auto;padding:10px 16px;border:1px solid #aab8ae;border-radius:4px;background:#fff;color:#22314f;font-size:12px;line-height:1.2;box-shadow:0 3px 16px #14203926}
.model-page-return:focus-visible{outline:3px solid #e08540;outline-offset:3px}
.scene-wrap.is-expanded .model-view-nav{top:64px}
.scene-wrap.is-expanded[data-view="block"] .scene-title{top:130px}

@media(max-width:780px){
 /* Reserve rows for navigation; the renderer observes the remaining scene area. */
 .sales-site .explore-section{padding-left:0;padding-right:0}
 .explore-section>.section-heading{padding-left:5%;padding-right:5%}
 .explorer{border-left:0;border-right:0;border-radius:0;box-shadow:none}
 .explorer:has(#list-view[hidden]) .explorer-sidebar,.explorer:has(#list-view[hidden]) .explorer-topbar{display:none}
 #scene-wrap.scene-wrap{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:44px minmax(220px,1fr) auto;height:var(--mobile-view-height,clamp(440px,calc(100svh - 160px),900px));min-height:0;flex:none;overflow:hidden}
 #scene-wrap #scene{position:relative;grid-area:2 / 1;inset:auto;width:100%;height:100%!important;min-height:0;margin:0}
 #scene-wrap .scene-title,#scene-wrap .model-view-nav,#scene-wrap .scene-hint{display:none!important}
 .model-mobile-guide{display:flex;grid-area:1 / 1;position:relative;z-index:12;background:#fff;border-bottom:1px solid #d9dfd8;padding:0 8px;gap:5px}
 .model-mobile-guide button{flex:1;min-width:0;min-height:44px;display:flex;align-items:center;justify-content:center;gap:6px;border:0;border-bottom:2px solid transparent;padding:3px 2px;background:none;color:#63716d;font-size:11px;white-space:nowrap;line-height:1.2}
 .model-mobile-guide button i{font-style:normal;display:grid;place-items:center;width:20px;height:20px;border:1px solid #c4cec5;border-radius:50%;font-size:10px;flex:none}
 .model-mobile-guide button b{font-weight:600}
 .model-mobile-guide button[aria-current="step"]{border-bottom-color:#9f784e;color:#253c44;font-weight:600}
 .model-mobile-guide button[aria-current="step"] i{background:#203b43;border-color:#203b43;color:#fff}
 .model-mobile-guide button.guide-back-floor[aria-current="step"]{flex:1.15;background:#eed8b1;border:1px solid #b58b4d;border-radius:4px;color:#62401c}
 .model-mobile-guide button.guide-back-floor[aria-current="step"] i{background:#785425;border-color:#785425;color:#fff}
 .model-mobile-guide button.guide-back-floor:hover{background:#e6c996}
 .model-mobile-guide button:disabled{opacity:.48}
 .model-mobile-guide button:focus-visible{outline-offset:-3px}
 .model-mobile-choices{grid-area:3 / 1;display:block;position:relative;background:#fff;padding:10px 12px;border-top:1px solid #d4dcd3;z-index:10}
 .guide-heading{display:flex;align-items:baseline;justify-content:space-between;gap:7px;margin:0 0 8px;line-height:1.3}
 .guide-heading strong{font-size:12px;white-space:nowrap;font-weight:600}
 .guide-heading>span{font-size:9px;color:#64716f;text-align:right}
 .guide-buildings{display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .guide-building{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 12px;border:1px solid #b29b73;border-radius:4px;background:#f8f5ed;text-align:left;color:#243e46;box-shadow:0 0 0 2px #c3a46a12}
 .guide-building strong{font-size:12px;display:block;line-height:1.2}.guide-building small{display:block;font-size:9px;color:#69746b;line-height:1.4}
 .guide-building>span:last-child{font-size:19px;color:#997748}
 .guide-floors{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
 .guide-floors button{min-height:48px;padding:5px;border:1px solid #b7a780;border-radius:4px;background:#faf6eb;color:#203c43;line-height:1.2}
 .guide-floors small{font-size:9px;display:block;color:#687367}.guide-floors strong{font-size:18px;font-weight:600;display:block}
 .guide-building:hover,.guide-floors button:hover{border-color:#8e7140;background:#f1e9d6}
 .guide-home-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:8px}
 .guide-home-actions button,.guide-return{min-height:44px;padding:8px 10px;border:1px solid #c9d0c8;border-radius:3px;background:#fff;color:#233f47;font-size:11px}
 .guide-home-actions [data-purchase]{background:#203b43;color:#fff;border-color:#203b43;justify-content:center}
 .guide-return{width:100%}
 #scene-wrap .model-unit-panel{grid-area:3 / 1;position:relative;inset:auto;height:auto;min-height:0;padding:8px 12px;gap:4px;overflow:visible}
 #scene-wrap:not([data-view="floor"]) .model-unit-panel{display:none}
 .model-band-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px}
 .model-band-heading strong{font-size:11px;font-weight:600}
 .model-band-heading strong:after{content:' · Tap a home';font-weight:400;color:#64716f;font-size:10px}
 .model-band-actions{margin:0;gap:0}
 .model-band-actions button{min-height:32px;padding:5px;font-size:10px}
 .model-band-actions [data-action="back-floor"],.model-band-actions [data-action="home-details"]{display:none}
 #model-home-summary{display:none}
 #model-units{flex:none}
 .model-unit-row{display:flex;align-items:center;gap:5px;margin:3px 0}
 .model-unit-row>span{width:12px;flex:none;font-size:0;overflow:hidden;margin:0}
 .model-unit-row>span:before{font-size:9px;content:'C';color:#728174}
 .model-unit-row+ .model-unit-row>span:before{content:'G'}
 .model-unit-row>div{gap:4px;min-width:0}
 .model-home{min-height:44px;font-size:10px;padding:6px 1px;gap:3px}
 .model-home i{width:5px;height:5px;flex:none}
 .model-status-legend{margin-top:5px;justify-content:center;gap:17px;font-size:9px;line-height:1.3}
 #scene-wrap .scene-controls{position:relative;grid-area:2 / 1;inset:auto;bottom:auto!important;align-self:end;justify-self:end;z-index:11;margin:0 10px 10px;flex-direction:row;gap:5px}
 #scene-wrap .scene-controls button{height:40px;width:40px;background:#fffc;border-color:#c9d2c8;font-size:21px;box-shadow:0 2px 7px #12342515}
 #scene-wrap .scene-controls [data-action="rotate-left"],#scene-wrap .scene-controls [data-action="rotate-right"]{display:none}
 .explorer-bottom{padding:9px 12px;gap:5px;border-top:1px solid #dbe1d9}
 .explorer-bottom>#context-note{display:none}
 .explorer-bottom>.text-button{min-height:40px;font-size:10px;text-align:center}
 .explorer-bottom>[data-action="list"]{flex:1}
 .explorer-bottom>.mobile-model-extra{display:block;flex:none;padding:0 7px;border-left:1px solid #dbe1d9}
 #scene-wrap.is-expanded{height:100dvh;grid-template-rows:44px 44px minmax(220px,1fr) auto}
 #scene-wrap.is-expanded .model-page-return{grid-area:1 / 1;position:relative;top:auto;justify-self:end;align-self:center;min-height:36px;max-height:40px;margin:2px 10px;padding:7px 12px;font-size:11px;box-shadow:none}
 #scene-wrap.is-expanded .model-mobile-guide{grid-area:2 / 1}
 #scene-wrap.is-expanded #scene,#scene-wrap.is-expanded .scene-controls{grid-area:3 / 1}
 #scene-wrap.is-expanded .model-mobile-choices,#scene-wrap.is-expanded .model-unit-panel{grid-area:4 / 1}
}

@media(max-width:380px){.model-mobile-guide button{font-size:10px;gap:4px}.guide-heading{align-items:flex-start}.guide-heading>span{font-size:8px;max-width:165px}.model-home{font-size:9px}.model-mobile-choices{padding-left:10px;padding-right:10px}}
/* Short landscape screens scroll the expanded controls below a sticky exit. */
@media(max-width:780px) and (max-height:600px){
 #scene-wrap.is-expanded{overflow-y:auto;overscroll-behavior-y:contain;grid-template-rows:44px 44px minmax(260px,1fr) auto}
 #scene-wrap.is-expanded .model-page-return{position:sticky;top:4px}
}
