/* Mobile-only layout; shared desktop and Pääsuvilla styles are untouched. */
#vertz-mobile-summary, #vertz-mobile-tools, #vertz-mobile-sheet-close { display:none; }
@media (max-width:1024px), (pointer:coarse) and (max-width:1366px) {
  :root { --vertz-mobile-viewer-top:72px; --vertz-siteplan-top:160px; --vertz-mobile-panel-top:160px; }
  #vertz-mobile-summary, #vertz-mobile-tools, #vertz-mobile-sheet-close {
    box-sizing:border-box; position:fixed; color:#f5f7fa; font-family:Arial,Helvetica,sans-serif;
    border:1px solid rgba(235,245,255,.25); border-radius:10px;
    background:rgba(48,58,68,.78); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
    box-shadow:0 6px 22px #0003; z-index:2147483490;
  }
  body:not(.vertz-mobile-drawer-open) #vertz-top-menu { top:max(8px,env(safe-area-inset-top))!important; left:8px!important; width:calc(100% - 16px)!important; height:54px!important; min-height:54px!important; padding:4px!important; border-radius:10px!important; background:rgba(42,53,65,.8)!important; }
  #vertz-top-menu .vertz-menu-brand-text { font-size:15px; }
  #vertz-mobile-summary { display:flex; left:8px; right:8px; top:calc(max(8px,env(safe-area-inset-top)) + 60px); width:calc(100% - 16px); padding:0; text-align:left; }
  #vertz-mobile-summary > span { flex:1; padding:8px 12px; min-width:0; }
  #vertz-mobile-summary > span + span { border-left:1px solid #ffffff50; }
  #vertz-mobile-summary small { display:block; color:#d6dee7; font-size:9px; font-weight:600; text-transform:uppercase; letter-spacing:.08em; margin-bottom:3px; }
  #vertz-mobile-summary strong { display:block; font-size:16px; line-height:18px; }
  #vertz-mobile-summary [data-status] { color:#c5e5d4; }
  #vertz-mobile-tools { display:flex; left:8px; right:8px; bottom:calc(8px + env(safe-area-inset-bottom)); height:56px; padding:3px; gap:2px; }
  #vertz-mobile-tools button { flex:1; min-width:0; border:0; border-radius:7px; background:transparent; color:inherit; font:11px/1.15 Arial,sans-serif; padding:3px 0; cursor:pointer; }
  #vertz-mobile-tools button span { display:block; font-size:20px; line-height:24px; }
  #vertz-mobile-tools button[aria-expanded=true] { background:#ffffff24; }
  #vertz-mobile-tools button:focus-visible, #vertz-mobile-summary:focus-visible { outline:2px solid #c5e5d4; outline-offset:2px; }
  #vertz-contact-card-reveal, #vertz-mobile-view-switcher, .vertz-mobile-tour-area-hint { display:none!important; }
  .bottom-right-buttons { position:fixed!important; right:10px!important; bottom:calc(122px + env(safe-area-inset-bottom))!important; }
  .bottom-right-buttons .show-floorplan-button { display:none!important; }
  .photos-container { position:fixed!important; top:128px!important; bottom:120px!important; left:0!important; right:0!important; height:auto!important; }
  .photos-body { height:100%!important; }
  :is(.vertz-model-expand,.vertz-model-restore,.vertz-revit-2d-expand,.vertz-revit-2d-restore,.vertz-model-resize-hint) { display:none!important; }
  :is(.vertz-model-close,.vertz-revit-2d-close) { min-width:44px!important; min-height:44px!important; }
  body:not([data-mobile-sheet=contact]) #vertz-fixed-contact-card,
  body:not([data-mobile-sheet=info]) #vertz-object-panel { display:none!important; }
  body[data-mobile-sheet=info] #vertz-object-panel,
  body[data-mobile-sheet=contact] #vertz-fixed-contact-card {
    display:block!important; position:fixed!important; top:174px!important; left:8px!important; right:8px!important; bottom:auto!important;
    width:calc(100% - 16px)!important; max-width:none!important; max-height:calc(100dvh - 248px - env(safe-area-inset-bottom))!important;
    overflow:auto!important; overscroll-behavior:contain; opacity:1!important; visibility:visible!important; transform:none!important; pointer-events:auto!important; z-index:2147483492!important;
  }
  body[data-mobile-sheet=contact] #vertz-fixed-contact-card { padding:14px!important; }
  body[data-mobile-sheet=contact] .vertz-contact-hide { display:none!important; }
  body[data-mobile-sheet=contact] .vertz-contact-photo { float:left; width:64px!important; height:80px!important; margin:0 12px 12px 0!important; }
  body[data-mobile-sheet=contact] .vertz-contact-content { min-width:0; }
  body[data-mobile-sheet=contact] .vertz-contact-name { font-size:20px!important; }
  body[data-mobile-sheet=contact] .vertz-contact-logo { width:62px!important; }
  body[data-mobile-sheet=contact] .vertz-contact-actions { clear:both; padding-top:8px; }
  body[data-mobile-sheet=contact] :is(.vertz-contact-action,.vertz-contact-social) { min-height:42px; font-size:13px!important; }
  body[data-mobile-sheet=contact] :is(.vertz-contact-address,.vertz-contact-title) { font-size:13px!important; }
  #vertz-object-panel .vertz-building-info-value { font-size:14px!important; white-space:normal; }
  #vertz-object-panel .vertz-building-info-item.is-price .vertz-building-info-value { font-size:16px!important; }
  #vertz-object-panel .vertz-object-view-button { font-size:13px!important; min-height:44px; }
  #vertz-mobile-sheet-close { top:128px; right:8px; min-height:40px; padding:0 14px; font-size:13px; z-index:2147483502; }
  body:is([data-mobile-sheet=info],[data-mobile-sheet=contact],[data-mobile-sheet=plan]) #vertz-mobile-sheet-close { display:block; }
  body:not([data-mobile-sheet=plan]) .floorplan-slot { visibility:hidden!important; pointer-events:none!important; }
  body[data-mobile-sheet=plan] .bottom-left-panel > .floorplan-slot { position:fixed!important; top:174px!important; left:8px!important; right:8px!important; bottom:76px!important; width:calc(100% - 16px)!important; height:auto!important; max-height:none!important; z-index:2147483491!important; visibility:visible!important; pointer-events:auto!important; }
  body[data-mobile-sheet=plan] :is(.floorplan-clipper,#side-panel) { width:100%!important; height:100%!important; max-width:none!important; max-height:none!important; }
  body[data-mobile-sheet=plan] #side-panel { position:relative!important; inset:auto!important; display:flex!important; visibility:visible!important; opacity:1!important; transform:none!important; }
  body[data-mobile-sheet=plan] #floorplanwindow { height:100%!important; width:100%!important; }
  body[data-mobile-sheet=plan] :is(#floorplanwindow__close,#floorplanwindow__minimize,#floorplanwindow__maximize) { display:none!important; }
  body[data-mobile-sheet=plan] .floorplan-header { min-height:44px; }
  body[data-mobile-sheet=plan] .floorplan-header__title { font-size:13px; }
  body > #vertz-autodesk-model-window.is-maximized, body > #vertz-revit-2d-window.is-maximized {
    top:72px!important; right:8px!important; bottom:8px!important; left:8px!important; width:calc(100% - 16px)!important; height:calc(100dvh - 80px)!important; max-height:none!important; z-index:2147483550!important;
  }
  body.vertz-mobile-drawer-open :is(#vertz-mobile-summary,#vertz-mobile-tools,#vertz-mobile-sheet-close) { display:none!important; }
  /* The parent document owns related offers; dock them above the quick actions. */
  .has-integrated-ui #related-panel { top:auto!important; left:8px!important; right:8px!important; bottom:calc(72px + env(safe-area-inset-bottom))!important; width:calc(100% - 16px)!important; max-height:calc(100dvh - 206px - env(safe-area-inset-bottom))!important; overflow:auto; }
  .has-integrated-ui #related-panel.mobile-collapsed { height:40px!important; overflow:hidden!important; }
  .has-integrated-ui #related-panel.mobile-collapsed .related-list,
  .has-integrated-ui #related-panel.mobile-collapsed .related-controls,
  .has-integrated-ui #related-panel.mobile-collapsed .related-head > div { display:none!important; }
  .has-integrated-ui #related-panel.mobile-collapsed .related-head { padding:0!important; border:0; }
  .has-integrated-ui #related-panel.mobile-collapsed [data-close-related] { flex:1 1 auto!important; width:100%!important; height:38px!important; border:0!important; border-radius:0!important; font:600 13px Arial,sans-serif; background:transparent; text-align:left; padding:0 12px; white-space:nowrap; }
  .has-integrated-ui #related-panel.mobile-obscured { display:none!important; }
  @media (max-height:520px) {
    #vertz-mobile-summary { top:8px; left:auto; right:8px; width:40%; z-index:2147483602; }
    body:not(.vertz-mobile-drawer-open) #vertz-top-menu { width:calc(60% - 24px)!important; }
    #vertz-mobile-sheet-close { top:68px; }
    body[data-mobile-sheet=info] #vertz-object-panel, body[data-mobile-sheet=contact] #vertz-fixed-contact-card { top:114px!important; max-height:calc(100dvh - 190px)!important; }
    body[data-mobile-sheet=plan] .bottom-left-panel > .floorplan-slot { top:114px!important; }
  }
}
