/* MSH spatial study. Independent namespace; existing site styles remain intact. */
.mx-root{--mx-ink:#060e14;--mx-ice:#b4e3f2;--mx-blue:#80d2ed;--mx-header:76px;--mx-h:calc(100svh - var(--mx-header));position:relative;background:var(--mx-ink);color:#f4f6f4;font-family:Manrope,Arial,sans-serif;isolation:isolate}
.mx-root *,.mx-root *::before,.mx-root *::after{box-sizing:border-box}
.mx-root :is(h2,h3,p){margin:0}.mx-root :is(h2,h3,button,a){font-family:inherit}.mx-root em{font-style:normal;color:var(--mx-ice)}
.mx-root button{color:inherit;cursor:pointer}.mx-root a{color:inherit;text-decoration:none}.mx-root :is(button,a):focus-visible{outline:2px solid #a9e6ff;outline-offset:6px}
.mx-track{position:relative}.mx-stage{position:relative;background:var(--mx-ink);isolation:isolate;overflow:hidden;min-height:650px}
.mx-atmosphere{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:.75}
.mx-topline{position:absolute;inset:28px 4vw auto;display:flex;justify-content:space-between;align-items:center;gap:24px;z-index:30;font-size:10px;letter-spacing:.09em;color:#acb8be}
.mx-topline>span{display:flex;align-items:center;gap:15px}.mx-topline i{display:block;width:25px;height:1px;background:#8fb2c5}.mx-topline>div{display:flex;align-items:center;gap:26px}.mx-topline button{background:none;border:0;padding:8px 0;color:#acb8be;font-size:11px}.mx-topline a{font-size:11px;display:flex;gap:16px;align-items:center;min-height:32px}.mx-topline a span{font-size:17px}
.mx-oversize{display:none;position:absolute;top:1%;left:18%;font-size:clamp(150px,24vw,500px);font-weight:760;line-height:1;letter-spacing:-.075em;color:#d5edfc08;white-space:nowrap;pointer-events:none}
.mx-perspective{perspective:1100px;perspective-origin:58% 44%;position:absolute;inset:0;overflow:visible;pointer-events:none}
.mx-world{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(var(--mx-tilt-y,0deg)) rotateY(var(--mx-tilt-x,0deg));will-change:transform}
.mx-frame{position:absolute;left:50%;top:47%;width:76%;height:78%;transform-style:preserve-3d;transform:translate(-50%,-50%);backface-visibility:hidden}
.mx-frame-edge{position:absolute;inset:-12px;background:linear-gradient(115deg,#34454f,#0b171e 20%,#53646e 50%,#101b22 55%,#59656a);border:1px solid #81929c60;transform:translateZ(-14px);box-shadow:0 40px 80px #0007}
.mx-image{position:absolute;inset:0;overflow:hidden;background:#0a1a23;border:1px solid #bccfda60;box-shadow:inset 0 0 0 1px #0009;backface-visibility:hidden}
.mx-image::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#06121b22,transparent 40%),linear-gradient(0deg,#05111ccc,transparent 50%);opacity:var(--mx-shade,.55)}
.mx-image img{position:absolute;width:100%;height:100%;max-width:none;object-fit:cover;object-position:58% 38%;transform:translate3d(var(--mx-img-x,0),var(--mx-img-y,0),0) scale(var(--mx-img-scale,1.02));will-change:transform}
.mx-frame[data-frame='0'] img{object-position:61% 35%}.mx-frame[data-frame='2'] img{object-position:47% 31%}.mx-final-frame img{object-position:56% 42%}
.mx-frame-label{position:absolute;inset:auto 21px 17px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.15em;color:#e1edf3;transform:translateZ(3px)}
.mx-reflection{position:absolute;inset:100% 3% auto;height:19%;transform-origin:top;transform:rotateX(-87deg);background:linear-gradient(#4c87952a,transparent);border-top:1px solid #b2d9ef66}
.mx-vignette{position:absolute;inset:0;background:linear-gradient(180deg,#060e14b8,transparent 24%),linear-gradient(90deg,#060e14f5 0%,#060e14d4 17%,#060e1469 38%,transparent 66%),linear-gradient(0deg,#060e14 0%,#060e14ed 8%,transparent 39%,transparent 85%,#060e1499);pointer-events:none;z-index:3}
.mx-copydeck{position:relative;z-index:5}.mx-copy{position:relative;padding:125px 5.5vw 95px;max-width:1100px}
.mx-eyebrow{display:flex;align-items:center;gap:24px;font-size:11px;font-weight:550;letter-spacing:.16em;line-height:1.6;color:#b2c4cd}.mx-eyebrow>span{font-size:12px;letter-spacing:.12em;color:var(--mx-blue);padding-right:20px;border-right:1px solid #8db4c855}
.mx-root :is(h2,h3){font-size:clamp(48px,6.8vw,116px);font-weight:520;line-height:1.02;letter-spacing:-.065em;color:#f7faf8}.mx-copy h3{margin-top:25px}
.mx-line{display:block;overflow:hidden;padding-bottom:.11em;margin-bottom:-.11em}.mx-line>span{display:block;will-change:transform}.mx-copy .mx-description{margin-top:27px;font-size:clamp(14px,1.17vw,18px);line-height:1.8;color:#aebdc4;max-width:38ch}
.mx-detail{display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:.13em;color:#a6c6d3;margin-top:30px}.mx-dot{width:5px;height:5px;background:var(--mx-blue);border-radius:50%;box-shadow:0 0 12px #98daf5aa}
.mx-side-note{position:absolute;right:24px;top:32%;z-index:7;writing-mode:vertical-rl;display:flex;align-items:center;gap:18px;font-size:9px;letter-spacing:.22em;color:#b7cdd7}.mx-side-note i{height:70px;width:1px;background:#99c5dd66}
.mx-ui{position:absolute;inset:auto 5.5vw 22px;z-index:30}
.mx-guide{display:flex;align-items:center;gap:28px;margin-bottom:20px}.mx-guide p{font-size:11px;color:#e1edf2;line-height:1.6}.mx-guide p span{color:#879da9;margin-left:8px}.mx-guide .mx-counter{margin-left:auto;color:#b2c6d0;font-size:12px;letter-spacing:.13em;font-variant-numeric:tabular-nums}
.mx-play{display:inline-flex;align-items:center;gap:11px;font-size:11px;min-height:40px;padding:0 17px;border-radius:30px;border:1px solid #90bfd04d;background:#15252ed1;backdrop-filter:blur(12px);color:#e7f3f7;white-space:nowrap}.mx-play:hover{background:#304955}.mx-play-symbol{font-size:9px;color:#b5e9ff}
.mx-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:25px}.mx-nav button{position:relative;display:flex;align-items:center;gap:13px;text-align:left;background:transparent;border:0;font-size:12px;min-height:43px;padding:0 0 19px;color:#728e9d}.mx-nav button>span{font-size:10px}.mx-nav button::after{content:'';position:absolute;inset:auto 0 0;height:1px;background:#7093a53d}.mx-nav i{position:absolute;inset:auto 0 0;height:2px;background:var(--mx-blue);transform:scaleX(var(--mx-fill,0));transform-origin:left;z-index:1}.mx-nav button[aria-current=step]{color:#e0eff5}.mx-nav button[aria-current=step]>span{color:var(--mx-blue)}
.mx-smallprint{display:flex;justify-content:space-between;gap:15px;margin-top:15px;font-size:9px;letter-spacing:.01em;color:#748d9b}
.mx-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:17px 25px;min-height:56px;background:#d6f1f5;border:1px solid #daf4ff;color:#10232c!important;border-radius:2px;font-size:14px;font-weight:650}.mx-cta>span{font-size:23px;font-weight:400}.mx-cta:hover{background:#fff}.mx-final-copy .mx-cta{margin-top:27px}
.mx-outro{position:relative;z-index:4;padding:110px 6vw 65px;background:#e4e9e8;color:#12232b;text-align:center}.mx-outro .mx-eyebrow{justify-content:center;color:#4d6878;font-size:10px}.mx-outro h2{margin-top:25px;font-size:clamp(44px,7vw,110px);color:#10252e}.mx-outro em{color:#437e96}.mx-outro .mx-cta{margin-top:35px;background:#102b3b;color:#f2fbff!important;border-color:#102b3b}.mx-outro>p:not(.mx-eyebrow){margin-top:35px;color:#536c79;font-size:13px;line-height:1.7}.mx-outro small{display:block;margin-top:50px;font-size:11px;color:#536c79;line-height:1.6}
.mx-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
/* Scroll mode is added only after the controller is ready. */
.mx-active .mx-track{height:calc(var(--mx-h) + 560svh)}.mx-active .mx-stage{position:sticky;top:var(--mx-header);height:var(--mx-h);min-height:0}.mx-active .mx-oversize{display:block}.mx-active .mx-copydeck{position:absolute;inset:0;pointer-events:none}.mx-active .mx-copy{position:absolute;inset:23% 0 auto;padding:0 5.5vw;opacity:0;visibility:hidden;max-width:1100px}.mx-active .mx-copy.is-current{visibility:visible}.mx-active .mx-copy a{pointer-events:auto}.mx-active .mx-copy .mx-line>span{transform:translateY(var(--mx-line-y,0))}.mx-active .mx-copy .mx-line:last-child>span{transform:translateY(var(--mx-line2-y,0))}.mx-active .mx-description,.mx-active .mx-detail,.mx-active .mx-cta{opacity:var(--mx-detail-alpha,1);transform:translateY(var(--mx-detail-y,0))}.mx-active .mx-frame{will-change:transform}
/* A complete readable layout remains available without JavaScript or motion. */
.mx-root:not(.mx-active) .mx-atmosphere,.mx-root:not(.mx-active) .mx-perspective,.mx-root:not(.mx-active) .mx-vignette,.mx-root:not(.mx-active) .mx-side-note{display:none}.mx-root:not(.mx-active) .mx-copy{padding-top:70px;padding-bottom:70px;max-width:none;border-bottom:1px solid #37536366}.mx-root:not(.mx-active) .mx-copy:first-child{padding-top:120px}.mx-root:not(.mx-active) .mx-copy::after{content:'';display:block;margin-top:35px;width:100%;height:clamp(260px,45vw,580px);background-size:cover;background-position:center}.mx-copy[data-copy='0']::after{background-image:url('../journey/disposition-1600.webp')}.mx-copy[data-copy='1']::after{background-image:url('../journey/lieferung-1600.webp')}.mx-copy[data-copy='2']::after{background-image:url('../journey/montage-1600.webp')}.mx-copy[data-copy='3']::after{background-image:url('../journey/uebergabe-1600.webp')}.mx-copy[data-copy='4']::after{background-image:url('../ambient-journey/finished-room-1536.jpg')}
@media(min-width:1600px){.mx-active .mx-copy{top:25%}.mx-root :is(h2,h3){font-size:112px}.mx-frame{width:70%}}
@media(min-width:761px) and (max-height:780px){.mx-active .mx-copy{top:21%}.mx-root :is(h2,h3){font-size:clamp(47px,6.1vw,88px)}.mx-copy h3{margin-top:20px}.mx-copy .mx-description{margin-top:21px;font-size:14px;line-height:1.65}.mx-detail{margin-top:20px}.mx-guide{margin-bottom:12px}.mx-ui{bottom:17px}.mx-nav button{min-height:36px;padding-bottom:14px}.mx-final-copy .mx-cta{margin-top:20px;padding-block:12px;min-height:48px}}
@media(max-width:900px){.mx-topline{inset-inline:5.5vw;font-size:9px}.mx-topline>span{max-width:50%;gap:8px;line-height:1.6}.mx-topline i{display:none}.mx-topline>div{gap:18px}.mx-guide p span{display:none}.mx-nav{gap:14px}.mx-side-note{right:15px}.mx-frame{width:92%;height:72%}.mx-root :is(h2,h3){font-size:clamp(45px,7.5vw,75px)}}
@media(max-width:760px){.mx-root{--mx-header:65px}.mx-stage{min-height:760px}.mx-topline{top:18px;font-size:8px;letter-spacing:.05em}.mx-topline>span{max-width:41%}.mx-topline button,.mx-topline a{font-size:10px}.mx-topline>div{gap:16px}.mx-topline a{gap:7px}.mx-topline a span{font-size:15px}.mx-oversize{font-size:160px;top:12%;left:0}.mx-perspective{perspective:850px;perspective-origin:50% 36%}.mx-frame{width:108%;height:56%;top:31%}.mx-frame-label{display:none}.mx-vignette{background:linear-gradient(0deg,#060e14 2%,#060e14fa 22%,#060e14b8 43%,transparent 66%,#060e1488);z-index:3}.mx-root :is(h2,h3){font-size:clamp(37px,8.8vw,60px);line-height:1.05;letter-spacing:-.065em}.mx-active .mx-copy{inset:auto 0 183px;padding-inline:6vw;max-width:none}.mx-copy h3{margin-top:14px}.mx-copy .mx-description{font-size:13px;margin-top:19px;line-height:1.7;max-width:36ch}.mx-detail{display:none}.mx-eyebrow{font-size:9px;gap:14px}.mx-eyebrow>span{font-size:10px;padding-right:14px}.mx-side-note{display:none}.mx-guide{gap:14px;margin-bottom:16px}.mx-guide p{font-size:9px;max-width:11ch;line-height:1.5}.mx-guide .mx-counter{font-size:10px}.mx-play{font-size:10px;min-height:38px;padding-inline:14px}.mx-ui{inset:auto 6vw 17px}.mx-nav{gap:12px}.mx-nav button{font-size:10px;min-height:47px;flex-direction:column;align-items:flex-start;gap:8px;padding-bottom:14px}.mx-nav button>span{font-size:9px}.mx-smallprint{font-size:8px;margin-top:13px}.mx-smallprint>span:first-child{max-width:14ch}.mx-smallprint>span:last-child{text-align:right;max-width:17ch}.mx-final-copy .mx-cta{font-size:12px;padding:12px 18px;min-height:47px;margin-top:19px}.mx-final-copy .mx-description{margin-top:14px}.mx-outro{padding:70px 6vw 50px}.mx-outro h2{font-size:48px}.mx-root:not(.mx-active) .mx-copy{padding-inline:6vw}.mx-root:not(.mx-active) .mx-copy::after{height:350px;background-position:60% center}}
@media(max-width:760px) and (max-height:740px){.mx-active .mx-copy{bottom:165px}.mx-root :is(h2,h3){font-size:36px}.mx-copy .mx-description{font-size:12px;margin-top:12px}.mx-copy h3{margin-top:11px}.mx-ui{bottom:14px}.mx-guide{margin-bottom:10px}.mx-smallprint{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.mx-root *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Ambient homepage integration: one normal section, no sticky scroll journey. */
.mx-ambient.mx-active .mx-track{height:auto}
.mx-ambient.mx-active .mx-stage{position:relative;top:auto;height:clamp(620px,calc(100svh - var(--mx-header)),840px);min-height:0}
.mx-ambient .mx-a11y-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.mx-ambient .mx-ambient-caption{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:23px 5.5vw 27px;border-top:1px solid #90b4c426;background:#0a1923;color:#a6bdc9;font-size:11px;line-height:1.6}
.mx-ambient-caption>span{max-width:68ch}.mx-ambient-caption a{display:flex;align-items:center;gap:18px;font-size:12px;color:#ddf3ff;white-space:nowrap;min-height:44px}.mx-ambient-caption a>span{font-size:22px}
.mx-ambient .mx-play,.mx-ambient .mx-nav button,.mx-ambient .mx-topline button,.mx-ambient .mx-topline a{min-height:44px}
.mx-ambient .mx-quiet-note{font-size:11px;color:#9bb7c7}
@media(max-width:760px){.mx-ambient.mx-active .mx-stage{height:760px;min-height:0}.mx-ambient .mx-ambient-caption{padding:24px 6vw;flex-direction:column;align-items:flex-start;gap:12px}.mx-ambient .mx-guide{gap:14px}.mx-ambient .mx-guide p{max-width:16ch}.mx-ambient .mx-nav{gap:8px}.mx-ambient .mx-copy h3{font-size:clamp(34px,8.8vw,54px)}}
@media(max-width:360px){.mx-ambient .mx-guide p{display:none}.mx-ambient .mx-smallprint{font-size:9px}.mx-ambient .mx-copy h3{font-size:34px}.mx-ambient .mx-nav button{font-size:10px}}

/* Native sticky chapter sequence. Scrolling stays under visitor control. */
.mx-pinned.mx-active .mx-track{height:calc(var(--mx-h) + clamp(2200px,360svh,4200px))}
.mx-pinned.mx-active .mx-stage{position:sticky;top:var(--mx-header);height:var(--mx-h);min-height:0}
.mx-pinned .mx-stage::after{content:'';position:absolute;inset:0 0 auto;height:2px;background:#b4e3f2;transform:scaleX(var(--mx-progress,0));transform-origin:left;z-index:31;pointer-events:none}
.mx-pinned .mx-play-symbol{font-size:18px}
.mx-pinned .mx-guide p{font-size:12px}
.mx-pinned .mx-enquiry{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:44px;padding:10px 18px;border:1px solid #a4dbe9;border-radius:28px;background:#d3f0f5;color:#0a2839;font-size:13px;font-weight:650;line-height:1.25;text-decoration:none}
.mx-pinned .mx-enquiry:hover{background:#fff}
.mx-pinned .mx-enquiry:focus-visible{outline:3px solid #fff;outline-offset:4px}
.mx-pinned .mx-topline button,.mx-pinned .mx-topline a{font-size:12px}
@media(max-width:760px){
 body:has(.mx-pinned.mx-active.mx-in-view) .mobile-actions{visibility:hidden;opacity:0;pointer-events:none}
 .mx-pinned.mx-active .mx-track{height:calc(var(--mx-h) + 210svh)}
 .mx-pinned.mx-active .mx-stage{height:var(--mx-h)}
 .mx-pinned .mx-guide{gap:12px}
 .mx-pinned .mx-guide p{font-size:10px;max-width:12ch}
 .mx-pinned .mx-guide{justify-content:space-between;gap:10px}
 .mx-pinned .mx-guide .mx-counter{display:none}
 .mx-pinned .mx-play{font-size:12px;min-height:44px;padding-inline:13px}
 .mx-pinned .mx-enquiry{font-size:12px;padding-inline:14px;white-space:nowrap}
 .mx-pinned .mx-nav button{font-size:11px}
 .mx-pinned .mx-smallprint{font-size:10px;color:#b0c5d0}
 .mx-pinned .mx-copy .mx-description{font-size:14px;line-height:1.6}
 .mx-pinned .mx-topline>span{max-width:36%;font-size:9px}
 .mx-pinned .mx-topline>div{gap:12px}
 .mx-pinned .mx-topline button,.mx-pinned .mx-topline a{font-size:11px}
}
@media(max-width:760px) and (max-height:740px){
 .mx-pinned.mx-active .mx-copy{bottom:160px}
 .mx-pinned .mx-copy h3{font-size:clamp(32px,8.6vw,40px)}
}
@media(max-width:360px){
 .mx-pinned .mx-guide{gap:8px}
 .mx-pinned .mx-play{font-size:11px;padding-inline:10px;gap:7px}
 .mx-pinned .mx-enquiry{font-size:11px;padding-inline:10px;gap:8px}
}
