/* Shared navigation and narrow-screen layout guardrails. */
[data-site] button,[data-site] a,[data-site] summary{touch-action:manipulation}
[data-site] :is(input,select,textarea){max-width:100%;min-width:0}
[data-site] :is(nav,header,main,section,article,aside,form){min-width:0}
[data-site=landing] .masthead{height:auto;min-height:108px;display:grid;grid-template-columns:auto minmax(220px,1fr) auto;gap:22px;padding:20px 3%;background:#f7f5ee;border-bottom:1px solid #cbd2cb;box-shadow:0 2px 12px #23475908}
[data-site=landing] .wordmark{position:static;transform:none;justify-self:center;font-size:clamp(16px,1.6vw,22px);white-space:nowrap}
[data-site=landing] .masthead nav{min-width:0;gap:12px;flex-wrap:nowrap}
[data-site=landing] .masthead nav button{opacity:1;color:#42606b;min-width:36px;min-height:44px}
[data-site=landing] .masthead nav button[aria-pressed=true]{color:#173d50;font-weight:600}
[data-site=landing] .masthead nav a{color:#234759;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}
[data-site=landing] .nav-explore{margin-left:4px}
[data-site=explorer] .workspace .experience-tabs{max-width:100%;min-width:0;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin;gap:6px}
[data-site=explorer] .workspace .experience-tabs>*{flex:0 0 auto;min-height:44px}
[data-site] :is(.sales-tabs,#guide-filters,.atlas-modes){scrollbar-width:thin}
@media(max-width:1200px){
 [data-site=landing] .masthead{grid-template-columns:auto 1fr;gap:10px 20px;padding:16px 4% 8px;min-height:136px}
 [data-site=landing] .wordmark{justify-self:end}
 [data-site=landing] .masthead nav{grid-column:1/-1;justify-self:stretch;justify-content:flex-end;overflow-x:auto;scrollbar-width:thin;gap:16px}
 [data-site=landing] .hero-copy{padding-top:205px}
 [data-site=explorer] .project-title{display:none}
 [data-site=explorer] .topbar{height:auto;min-height:76px;gap:12px;flex-wrap:wrap;padding:12px 20px}
 [data-site=explorer] .topbar .header-actions{margin-left:auto;flex-shrink:0}
 [data-site=guide] .guide-header{position:relative;gap:12px;flex-wrap:wrap}
 [data-site=guide] .guide-header nav{order:3;flex-basis:100%;width:100%;min-width:0;overflow-x:auto;flex-wrap:nowrap}
 [data-site=guide] .guide-header nav>*{flex-shrink:0;min-height:44px}
 [data-site=guide] .guide-language{margin-left:auto}
 [data-site=explorer] .crm-dialog{max-width:calc(100vw - 24px);width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
 [data-site=explorer] .sales-tabs{flex-wrap:nowrap;overflow-x:auto;gap:4px;max-width:100%;scrollbar-width:thin}
 [data-site=explorer] .sales-tabs button{flex:0 0 auto;white-space:nowrap;min-height:44px}
 [data-site=neighborhood]>header{flex-wrap:wrap;gap:16px}
 [data-site=neighborhood]>header nav{min-width:0;gap:16px;flex-wrap:wrap}
}
@media(max-width:768px){
 [data-site=landing] .masthead{padding:14px 20px 6px;min-height:132px;gap:10px}
 [data-site=landing] .masthead .astay{font-size:23px;letter-spacing:3px}
 [data-site=landing] .masthead .wordmark{font-size:15px;letter-spacing:1.2px}
 [data-site=landing] .masthead .wordmark small{font-size:6px;letter-spacing:1px}
 [data-site=landing] .masthead nav{justify-content:flex-start;font-size:12px;gap:14px;padding-bottom:4px}
 [data-site=landing] .masthead nav>*{flex-shrink:0}
 [data-site=landing] .masthead .neighborhood-link,[data-site=landing] .masthead .nav-explore{display:inline-flex;font-size:12px}
 [data-site=landing] .hero-copy{padding-top:190px;padding-bottom:120px}
 [data-site=landing] .hero{min-height:820px}
 [data-site=landing] .hero-bottom{flex-wrap:wrap;gap:8px}
 [data-site=guide] .guide-brand{min-width:0;font-size:22px;max-width:calc(100% - 96px)}
 [data-site=guide] .guide-brand small{font-size:7px;line-height:1.5;letter-spacing:.7px}
 [data-site=guide] .guide-header{padding:14px 16px}
 [data-site=guide] .guide-language{flex-shrink:0}
 [data-site=guide] .guide-header nav{gap:3px}
 [data-site=guide] .atlas-header{padding:18px;display:block}
 [data-site=guide] .atlas-modes{margin-top:16px;width:100%;overflow:auto;flex-wrap:nowrap}
 [data-site=guide] .atlas-modes button{flex:1 0 auto;font-size:12px;min-height:44px;white-space:nowrap}
 [data-site=guide] #guide-filters button{flex:0 0 auto}
 [data-site=explorer] .topbar{min-height:70px;padding:10px 12px;gap:8px}
 [data-site=explorer] .topbar .brand{min-width:0;font-size:17px}
 [data-site=explorer] .topbar .header-actions{width:auto;max-width:100%;gap:5px;margin-left:auto}
 [data-site=explorer] .topbar .language-switch button{min-height:44px!important;min-width:36px!important}
 [data-site=explorer] .more-menu>summary{min-height:44px;width:44px}
 [data-site=explorer] .crm-header-button{min-height:44px}
 [data-site=explorer] .scene-top{flex-wrap:wrap;gap:12px;align-items:center}
 [data-site=explorer] .scene-top h2{font-size:22px;overflow-wrap:anywhere}
 [data-site=explorer] .experience-tabs{scroll-padding:8px;gap:4px}
 [data-site=explorer] .experience-tabs button{padding:10px 12px;font-size:13px}
 [data-site=explorer] .project-guide-link{display:inline-flex;min-height:44px;align-items:center}
 [data-site=explorer] :is(.portfolio-filterbar,.portfolio-selection,.portfolio-heading){min-width:0;max-width:100%}
 [data-site=explorer] .portfolio-filterbar nav{width:100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}
 [data-site=explorer] .portfolio-filterbar nav>*{flex-shrink:0}
 [data-site=explorer] .portfolio-concepts{max-width:100%;min-width:0}
 [data-site=explorer] .plan-selects{flex-wrap:wrap}
 [data-site=explorer] .plan-type-select{flex:1 1 180px}
 [data-site=explorer] .plan-filter-controls>div{max-width:calc(100vw - 56px)}
 [data-site=explorer] .plan-navigation .plan-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
 [data-site=explorer] .tour-residence{flex-wrap:wrap;gap:8px}
 [data-site=explorer] :is(.tour-residence,.plan-selects) select{font-size:16px}
 [data-site=explorer] .scene-tools{max-width:calc(100% - 18px)}
 [data-site=explorer] .scene-tool-panel{width:min(240px,calc(100vw - 78px));max-height:min(220px,40dvh)}
 [data-site=explorer] .crm-dialog{margin:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;border-radius:0}
 [data-site=explorer] .crm-dialog .crm-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:14px;position:sticky;background:#fff}
 [data-site=explorer] .crm-heading h2{font-size:24px;line-height:1.2;overflow-wrap:anywhere}
 [data-site=explorer] .crm-heading .eyebrow{font-size:9px;letter-spacing:1px}
 [data-site=explorer] .crm-heading-actions{gap:4px;flex-shrink:0}
 [data-site=explorer] .crm-heading-actions .language-switch button{min-width:30px!important;padding:6px}
 [data-site=explorer] :is(.crm-utility,.sales-status,.crm-directory-top,.demo-entry,.presentation-actions){flex-wrap:wrap;gap:10px}
 [data-site=explorer] .crm-utility>span{min-width:0;overflow-wrap:anywhere}
 [data-site=explorer] .crm-data-menu>div{right:0;max-width:calc(100vw - 32px)}
 [data-site=explorer] :is(.crm-form-row,.workflow-form,.pricing-form){grid-template-columns:minmax(0,1fr)}
 [data-site=explorer] :is(.crm-editor,.crm-directory,.pricing-panel,.workflow-panel,.sales-panel){min-width:0}
 [data-site=explorer] .crm-save-bar{flex-wrap:wrap;gap:10px;position:static}
 [data-site=explorer] .crm-form-actions{flex-wrap:wrap}
 [data-site=explorer] .crm-list-caption{gap:12px}
 [data-site=explorer] .sales-tabs{padding:10px 12px}
 [data-site=explorer] .sales-tabs button{font-size:13px;padding:10px 12px}
 [data-site=explorer] :is(.demo-banner,.demo-crm-controls){padding:12px;gap:12px}
 [data-site=explorer] .demo-banner>div:first-child{min-width:0}
 [data-site=explorer] .demo-actions{gap:10px;line-height:1.6}
 [data-site=explorer] .demo-actions a{min-height:32px;display:inline-flex;align-items:center}
 [data-site=explorer] :is(.compare-dialog,.workflow-dialog,.share-presentation-dialog){max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}
 [data-site=explorer] .compare-bar{max-width:calc(100vw - 24px);flex-wrap:wrap;gap:8px}
 [data-site=neighborhood]>header{padding:16px;gap:16px}
 [data-site=neighborhood]>header nav{width:100%;flex-wrap:nowrap;gap:16px;overflow-x:auto;scrollbar-width:thin}
 [data-site=neighborhood]>header nav>*{flex-shrink:0}
 [data-site=neighborhood]>header nav>a{min-height:44px;display:inline-flex;align-items:center}
 [data-site=neighborhood] .categories{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:6px}
 [data-site=neighborhood] .categories>*{flex-shrink:0}
 [data-site=neighborhood] .route-panel{min-width:0}
 [data-site=neighborhood] .route-modes{flex-wrap:wrap}
 [data-site=neighborhood] .map-actions{max-width:calc(100% - 56px);flex-wrap:wrap}
 [data-site] dialog header{gap:12px}
 [data-site] dialog header>div{min-width:0}
 [data-site] dialog header>button{flex-shrink:0}
}
@media(max-width:380px){
 [data-site=landing] .masthead{padding-left:14px;padding-right:14px}
 [data-site=landing] .masthead .astay{font-size:20px}
 [data-site=landing] .masthead .wordmark{font-size:12px}
 [data-site=landing] .masthead .wordmark small{font-size:5px;letter-spacing:.7px}
 [data-site=explorer] .topbar .brand-mark{display:none}
 [data-site=explorer] .topbar .brand{letter-spacing:1px}
 [data-site=explorer] .topbar .header-actions{gap:3px}
 [data-site=explorer] .crm-heading h2{font-size:21px}
 [data-site=explorer] .crm-heading-actions .round-button{width:36px;height:40px}
}
@media(max-height:520px) and (orientation:landscape){[data-site] .guide-header,[data-site] .crm-dialog .crm-heading{position:relative}[data-site] .scene-tool-panel{max-height:220px}[data-site=explorer] .three-stage{min-height:310px}}
