.mobile-label,.mobile-icon,.mobile-dock,.mobile-sheet,.mobile-scrim{display:none}
@media(max-width:900px){
  .desktop-label{display:none!important}.mobile-label{display:inline}.mobile-icon{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
  .top{top:12px;left:12px;right:auto;gap:0}.wordmark{display:none}
  .experience-switch{padding:3px;background:#101914dc;border-radius:24px}.experience-switch button{min-height:40px;min-width:44px;padding:0 12px;font-size:12px}
  .tools{top:12px;left:auto;right:12px;gap:4px;padding:3px;border-radius:24px;background:#101914dc}.tools .pair{padding:0;background:none;gap:1px}.tools button{display:flex;align-items:center;justify-content:center;min-height:40px;padding:0;border-radius:22px}.tools .pair button{width:40px}.tools .roof{min-width:76px;gap:6px;padding:0 10px;border-color:transparent;font-size:11px}.tools .roof .mobile-icon{width:17px}
  .navstrip{display:none}.caption{left:20px;bottom:88px;width:calc(100% - 40px)}.caption h1{font-size:32px;margin:10px 0}.caption p,.caption .eyebrow{display:none}.caption .photo-note{font-size:9px;margin:0}.mode3d .caption{display:none}.veil{background:linear-gradient(180deg,#08100c3b,transparent 25%,transparent 68%,#08100c85)}
  #modelHotspots{display:none}.status{top:70px;left:12px;right:12px;font-size:11px;border-radius:12px}
  .mobile-dock{position:absolute;z-index:18;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));display:flex;justify-content:space-between;pointer-events:none;gap:12px}.mobile-dock button{pointer-events:auto;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid #ffffff38;border-radius:26px;background:#101914e6;backdrop-filter:blur(16px);min-height:46px;padding:0 17px;font-size:12px;box-shadow:0 3px 15px #0002}.mobile-dock button[aria-expanded=true]{background:var(--lime);color:#162018;border-color:var(--lime)}
  .mobile-scrim:not([hidden]){display:block;position:absolute;inset:0;z-index:16;border:0;background:#050c084d;width:100%;height:100%;cursor:default}
  .mobile-sheet:not([hidden]){display:flex;flex-direction:column;position:absolute;z-index:17;left:12px;right:12px;bottom:calc(70px + env(safe-area-inset-bottom));max-height:calc(100% - 148px - env(safe-area-inset-bottom));border:1px solid #ffffff30;border-radius:20px;background:#122019f5;backdrop-filter:blur(22px);box-shadow:0 12px 48px #0005;overflow:hidden}
  .sheet-head{display:flex;align-items:center;justify-content:space-between;padding:5px 9px 5px 18px;border-bottom:1px solid var(--line);flex-shrink:0}.sheet-head h2{font-size:13px;letter-spacing:.02em;font-weight:500;margin:0}.sheet-head button{border:0;background:none;width:44px;height:44px;display:grid;place-items:center}
  .sheet-content{overflow-y:auto;overscroll-behavior:contain;padding:12px;min-height:0}.mobile-sheet .stops{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0;overflow:visible}.mobile-sheet .stop{min-width:0;min-height:52px;padding:14px 12px;background:#ffffff04;backdrop-filter:none}.mobile-sheet .stop span{display:none}.mobile-sheet .stop b{font-size:12px}.mobile-sheet .stop.active{background:#d9e9bc15}.mobile-sheet .stop.active:after{top:10px;right:9px;width:4px;height:4px}
  .mobile-sheet .utility{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mobile-sheet .utility button{min-height:46px;font-size:12px;padding:0 10px;background:#ffffff05;border-radius:11px}
  .mobile-sheet .panel{position:static;margin-top:12px;width:100%;max-height:none;padding:13px;border-radius:12px;background:#ffffff04;backdrop-filter:none;overflow:visible}.mobile-sheet .panel h2{font:500 12px 'DM Sans',sans-serif;margin:0 0 8px}.mobile-sheet .panel p{font-size:11px;margin:0 0 9px}.mobile-sheet .panel button{min-height:44px}
  .mobile-precision{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.mobile-precision label{font-size:11px;display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:40px}.mobile-precision input{display:block;width:45%;height:28px;accent-color:var(--lime)}.mobile-precision .quality{display:block;border:1px solid var(--line);background:none;border-radius:11px;min-height:44px;width:100%;margin-top:9px;font-size:12px;text-align:left;padding:0 13px;color:var(--cream)}
  .plan-top p{font-size:11px;max-width:135px}.plan-top button{padding:0 11px;font-size:11px}.plan-scroll{min-height:0}
}
@media(max-width:350px){.experience-switch button{padding:0 9px}.tools .pair button{width:36px}.tools .roof{min-width:70px;padding:0 8px}.top{left:9px}.tools{right:9px}}
@media(max-width:900px) and (max-height:420px){.caption{display:none}.mobile-sheet:not([hidden]){max-height:calc(100% - 88px);bottom:70px}.mobile-dock{bottom:10px}}


/* Guided visit: readable room copy above the mobile dock, not over the controls. */
@media(max-width:900px){
 body.mode3d.tour-active .caption{display:block;left:12px;bottom:calc(72px + env(safe-area-inset-bottom));width:calc(100% - 24px);max-height:32%;overflow:auto;pointer-events:auto;padding:12px 15px;border:1px solid #ffffff26;border-radius:16px;background:#101914ed;backdrop-filter:blur(14px);z-index:14;text-shadow:none}
 body.mode3d.tour-active .caption h1{font:500 18px/1.2 'DM Sans',sans-serif;margin:0 0 6px;letter-spacing:0}
 body.mode3d.tour-active .caption p{display:block;font-size:12px;line-height:1.5;color:#edf0e7;max-width:none}
 body.mode3d.tour-active .caption .eyebrow{display:none}
}
@media(max-width:900px) and (max-height:420px){
 body.mode3d.tour-active .caption{width:min(360px,calc(100% - 24px));max-height:38%;padding:9px 12px}
 body.mode3d.tour-active .caption h1{font-size:15px}
 body.mode3d.tour-active .caption p{font-size:11px}
}
