body .site-header.ml-header{z-index:90}.ml-header .header-inner{position:relative}.ml-navigation{gap:24px}.ml-navigation>a{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:750;line-height:1.3;min-height:44px}.ml-navigation small,.ml-nav-index,.ml-nav-foot{display:none}.ml-navigation .ml-nav-calculator{padding:10px 15px;border:1px solid #25554e;border-radius:9px;background:rgba(224,244,237,.35);color:#153d36}.ml-nav-arrow{font-size:19px}.ml-menu-toggle{display:none;position:relative;width:44px;height:44px;flex:0 0 44px;align-items:center;justify-content:center;padding:0;border:1px solid rgba(17,52,48,.42);border-radius:9px;background:rgba(255,255,255,.25);color:#102c29;cursor:pointer}.ml-menu-lines{position:relative;width:20px;height:16px}.ml-menu-lines i{position:absolute;left:0;width:20px;height:2px;border-radius:2px;background:currentColor;transition:transform 160ms ease,opacity 160ms ease}.ml-menu-lines i:nth-child(1){top:0}.ml-menu-lines i:nth-child(2){top:7px}.ml-menu-lines i:nth-child(3){top:14px}.ml-menu-toggle[aria-expanded=true] i:nth-child(1){transform:translateY(7px) rotate(45deg)}.ml-menu-toggle[aria-expanded=true] i:nth-child(2){opacity:0}.ml-menu-toggle[aria-expanded=true] i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.ml-menu-toggle:focus-visible,.ml-navigation a:focus-visible{outline:3px solid #13796d;outline-offset:4px}
@media(max-width:920px){.ml-menu-toggle{display:inline-flex}.ml-header .ml-navigation{position:absolute;top:calc(100% + 8px);left:0;right:0;margin:0;padding:16px;max-height:calc(100dvh - 140px);overflow:auto;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.8);border-radius:18px;box-shadow:0 18px 55px rgba(14,39,35,.10);backdrop-filter:none;-webkit-backdrop-filter:none;font-family:system-ui,-apple-system,sans-serif}.ml-header .ml-navigation.open{display:flex;gap:6px;align-items:stretch;flex-direction:column;animation:ml-menu-in 160ms ease-out}.ml-header .ml-navigation>a{display:grid;grid-template-columns:24px minmax(0,1fr) 20px;align-items:center;gap:12px;padding:17px 11px;min-height:78px;font-size:19px;font-weight:850;border:0;border-radius:11px;color:#102a26;letter-spacing:-.025em}.ml-navigation .ml-nav-index{display:block;align-self:start;padding-top:3px;color:#49635b;font-size:11px;font-weight:700;letter-spacing:.03em}.ml-navigation small{display:block;padding-top:5px;color:#3d544d;font-size:12px;line-height:1.5;font-weight:650;letter-spacing:0}.ml-navigation .ml-nav-calculator{background:rgba(236,255,252,.14);border:1px solid rgba(25,83,65,.28)!important}.ml-navigation>a:hover,.ml-navigation>a:active{background:rgba(255,255,255,.16)}.ml-nav-foot{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:17px 10px 6px;margin-top:5px;border-top:1px solid rgba(27,61,49,.18);font-size:14px;font-weight:750;color:#1b443a}.ml-nav-foot>a{min-height:32px;display:flex;align-items:center}.ml-nav-foot a:focus-visible{outline-offset:2px}.ml-header .header-actions{gap:8px}}
@media(max-width:420px){.ml-menu-toggle{width:38px;flex-basis:38px}.ml-header .ml-navigation{padding:12px}.ml-header .ml-navigation>a{font-size:18px;padding:15px 9px;gap:9px}.ml-header .ml-navigation small{font-size:12px}.ml-nav-foot{font-size:12px;gap:9px}}
@media(max-width:920px){body .site-header.ml-header .ml-navigation{top:calc(100% + 8px);background:rgba(255,255,255,.08)}}
@keyframes ml-menu-in{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.ml-menu-lines i{transition:none}.ml-header .ml-navigation.open{animation:none}}

/* The open transparent menu reveals the scene, without overlapping page copy.
   Visibility preserves layout, scroll position and all questionnaire values. */
@media(max-width:920px){
 body:has(.site-header.ml-header .ml-navigation.open)>:is(main,.site-footer,.floating-wa,.section-scene-note,.pool-scene-note,.house-scene-note,.bathroom-scene-note,.apartment-scene-note){visibility:hidden}
 body:has(.site-header.ml-header .ml-navigation.open) .home-scene-caption{visibility:hidden}
}

/* Shared public glass surfaces. Keep the approved scene, type and questionnaire
   opacity values intact; replace leftover solid UI fills only. */
@media screen {
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .cookie-dialog {
    background:rgba(255,255,255,.08);
    border:1.5px solid rgba(255,255,255,.8);
    border-radius:18px;
    box-shadow:0 16px 44px rgba(10,28,25,.14);
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
    max-height:calc(100dvh - 32px);
    overflow:auto;
  }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .cookie-dialog::backdrop {
    background:rgba(10,25,22,.08);
  }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .cookie-dialog h2 { padding-right:28px; }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .cookie-dialog .dialog-close {
    min-width:44px;min-height:44px;top:8px;right:8px;
    border:1px solid rgba(255,255,255,.75);border-radius:9px;
    background:rgba(255,255,255,.12);
  }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .cookie-dialog .button {
    background:rgba(255,255,255,.14);border:2px solid #153f39;
    border-radius:9px;box-shadow:0 2px 0 rgba(15,56,48,.24);
  }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .cookie-dialog .button:hover { background:rgba(255,255,255,.22); }

  /* A translucent dialog must reveal the room, without competing page text.
     Native dialog still manages focus and inertness. Visibility retains layout,
     scroll position, questionnaire answers and unfinished contact form values. */
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive):has(>.cookie-dialog[open])>:is(main,.site-header,.site-footer,.floating-wa,.section-scene-note,.pool-scene-note,.house-scene-note,.bathroom-scene-note,.apartment-scene-note) { visibility:hidden; }
  body.home-immersive:has(>.cookie-dialog[open]) .home-scene-caption { visibility:hidden; }

  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) :is(.file-field,.enquiry-result,.form-error) {
    background:rgba(255,255,255,.08);box-shadow:none;
    backdrop-filter:none;-webkit-backdrop-filter:none;
  }
  body.home-immersive .file-field { background:transparent; }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .file-field input[type=file] { background:transparent; }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) input[type=file]::file-selector-button {
    background:rgba(255,255,255,.14);color:inherit;font:inherit;
    border:1px solid rgba(255,255,255,.8);border-radius:6px;
    padding:7px 10px;cursor:pointer;
  }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .site-header .language-switch { background:rgba(255,255,255,.08); }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .site-header .language-switch a { background:rgba(255,255,255,.10); }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .site-header .language-switch a.active { background:rgba(236,255,252,.18);border-color:#155f58; }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .site-header .language-switch a:hover { background:rgba(255,255,255,.22); }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .site-header .ml-navigation .ml-nav-calculator { background:rgba(236,255,252,.14); }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .site-header .ml-navigation .ml-nav-calculator:hover { background:rgba(255,255,255,.22); }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .floating-wa {
    background:rgba(255,255,255,.12);border:2px solid rgba(255,255,255,.85);
    box-shadow:0 2px 9px rgba(12,34,29,.14);
    backdrop-filter:none;-webkit-backdrop-filter:none;
  }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .floating-wa svg { fill:#103d36;filter:drop-shadow(0 0 1px rgba(255,255,255,.8)); }
  body:is(.home-immersive,.bathroom-immersive,.pool-immersive,.house-immersive,.apartment-immersive,.calculator-hub-immersive,.section-immersive) .floating-wa:hover { background:rgba(255,255,255,.22); }

  /* Real portfolio photos stay unchanged; the surrounding captions and thumb
     controls should reveal the background instead of creating black slabs. */
  body.section-immersive :is(.project-carousel,.photo-carousel) :is(.carousel-slide,.carousel-slide figcaption) { background:transparent; }
  body.section-immersive .carousel-thumbs button { background:rgba(255,255,255,.08); }
}

/* Match the apartment result controls to the approved shared glass controls.
   The older result selector was overriding the apartment scene stylesheet. */
@media screen {
  body.apartment-immersive .ap-main .cr-result :is(.consumer-primary,.consumer-secondary) { background:rgba(255,255,255,.18); }
  body.apartment-immersive .ap-main .cr-result .consumer-primary { background:rgba(236,255,252,.26); }
  body.apartment-immersive .ap-main .cr-result :is(.consumer-primary,.consumer-secondary):hover { background:rgba(255,255,255,.22); }
}
