.mp-flight{margin:0 4vw 100px;scroll-margin-top:90px;background:#e9e7e1;color:#202526;border:1px solid #d0cec8;border-radius:8px}.flight-sticky{padding:24px}.flight-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.flight-heading h2{font-size:clamp(23px,3vw,42px);letter-spacing:-.04em;line-height:1.08;margin:8px 0}.flight-heading .eyebrow{font-size:10px}.flight-skip{font-size:12px;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.flight-scene{position:relative;height:clamp(300px,52vh,680px);overflow:hidden;background:#d1d2c8;border-radius:4px}.flight-scene canvas,.flight-scene img{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:50% 42%}.flight-scene canvas{opacity:0}.flight-scene.is-rendered canvas{opacity:1}.flight-static{z-index:1}.flight-cover{position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,19,23,.7),transparent 80%);display:flex;align-items:center;justify-content:flex-end;flex-direction:column;padding:36px;gap:16px;color:#fff;text-align:center}.flight-cover p{font-size:clamp(23px,3vw,40px);letter-spacing:-.03em}.flight-cover span{font-size:12px}.flight-start,.flight-stop{border:1px solid currentColor;border-radius:30px;padding:13px 24px;background:#f5f3ec;color:#202526;cursor:pointer;font:inherit;font-size:14px}.flight-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:18px}.flight-label{font-size:11px;letter-spacing:.08em}.flight-description{font-size:14px;line-height:1.45;max-width:720px;margin:6px 0;min-height:40px}.flight-stop{font-size:11px;white-space:nowrap;padding:9px 14px}.flight-steps{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-top:10px}.flight-steps button{background:transparent;border:0;border-top:2px solid #b7b9b3;text-align:left;padding:10px 2px;color:#4f5655;font:inherit;font-size:11px;cursor:pointer}.flight-steps button[aria-current="step"]{border-color:#1e343c;color:#142e38;font-weight:700}.flight-hint{font-size:10px;line-height:1.45;color:#606964;margin-top:12px}.mp-flight [hidden]{display:none!important}.mp-flight button:focus-visible,.mp-flight a:focus-visible{outline:3px solid #47657b;outline-offset:4px}.mp-flight.is-scroll{height:480vh}.is-scroll .flight-sticky{position:sticky;top:76px}.is-scroll .flight-scene{height:calc(100dvh - 360px);min-height:230px;max-height:680px}#nach-bildfahrt{scroll-margin-top:100px}@media(max-width:700px),(max-height:650px){.mp-flight{margin:0 16px 60px}.flight-sticky{padding:16px}.flight-heading{display:block}.flight-skip{display:inline-block;margin-top:8px}.flight-scene{height:34svh;min-height:220px}.flight-caption{align-items:flex-start}.flight-description{font-size:12px;min-height:68px}.flight-stop{padding:8px;font-size:10px}.flight-steps{grid-template-columns:repeat(3,1fr)}.flight-cover{padding:24px}.flight-heading h2{font-size:27px}}
/* The scroll runway has no visible card; only the pinned viewport is painted. */
.mp-flight{background:transparent;border:0;border-radius:0;margin-bottom:0;scroll-margin-top:96px}
.flight-sticky{background:#e9e7e1;border:1px solid #d0cec8;border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto auto;height:calc(100dvh - 108px);min-height:540px;padding:20px;overflow:hidden}
.flight-heading{margin-bottom:16px}.flight-heading h2{font-size:clamp(23px,2.6vw,36px)}
.flight-scene,.is-scroll .flight-scene{height:100%;min-height:0;max-height:none;width:auto;max-width:100%;aspect-ratio:4/3;justify-self:center}
.flight-caption{margin-top:14px}.flight-description{min-height:0}.flight-hint{margin-top:8px}
.mp-flight.is-scroll{height:calc(100dvh - 108px + 260vh)}
.is-scroll .flight-sticky{position:sticky;top:96px}
@media(max-width:700px),(max-height:650px){
 .mp-flight{margin-bottom:0}.flight-sticky{height:auto;min-height:0;display:block;padding:16px;overflow:visible}
 .flight-scene,.is-scroll .flight-scene{width:min(100%,480px);height:auto;min-height:0;aspect-ratio:4/5;margin-inline:auto}
 .flight-heading{margin-bottom:16px}.flight-caption{margin-top:16px}.flight-description{min-height:0}
}

/* Keep room photos on the browser image compositor on touch GPUs. WebGL only draws type/shadows. */
.flight-scene.is-composited .flight-static{z-index:0;object-position:50% 50%}.flight-scene.is-composited canvas{z-index:1}.flight-scene .flight-cover{z-index:2}
/* One continuous, viewport-sized story on desktop and touch screens. */
.mp-flight{--flight-top:96px;scroll-margin-top:var(--flight-top)}
.mp-flight.is-scroll{height:calc(100svh - var(--flight-top) - 12px + 260svh)}
.is-scroll .flight-sticky{top:var(--flight-top);height:calc(100svh - var(--flight-top) - 12px);min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto auto;overflow:hidden}
.flight-steps{display:flex;align-items:center;gap:20px;min-height:44px}
.flight-steps input{flex:1;min-width:0;accent-color:#263b40;cursor:pointer}
.flight-steps .flight-play{flex:none;border:1px solid #8c9691;border-radius:24px;font-size:12px;padding:10px 16px;min-height:44px;text-align:center}
.flight-layer{pointer-events:none;will-change:opacity,transform}.flight-scene.is-composited canvas{z-index:1}.flight-layer{z-index:0!important}
@media(max-width:700px){
 .mp-flight{--flight-top:76px}.is-scroll .flight-sticky{padding:12px}
 .is-scroll .flight-heading{margin-bottom:10px}.is-scroll .flight-heading h2{font-size:22px;margin:4px 0}.is-scroll .flight-heading .eyebrow{font-size:8px}
 .is-scroll .flight-scene{height:100%;width:auto;max-width:100%;aspect-ratio:4/5;margin-inline:auto}
 .is-scroll .flight-caption{margin-top:10px;gap:12px}.is-scroll .flight-description{font-size:11px;line-height:1.35;min-height:45px;margin:4px 0}
 .is-scroll .flight-label{font-size:9px}.flight-steps{gap:10px;margin-top:4px}.flight-steps .flight-play{font-size:10px;padding:8px 12px}
 .is-scroll .flight-hint{font-size:8px;margin-top:4px}.flight-stop{min-height:44px}
}
@media(max-height:650px) and (orientation:landscape){
 .is-scroll .flight-heading h2{font-size:18px}.is-scroll .flight-heading .eyebrow,.is-scroll .flight-description,.is-scroll .flight-hint{display:none}.is-scroll .flight-heading{margin-bottom:5px}.is-scroll .flight-caption{margin-top:4px}.is-scroll .flight-sticky{padding:8px}.is-scroll .flight-scene{height:100%;width:auto;aspect-ratio:4/3}.flight-steps{margin-top:0}
}
