/* ── Raumatlas Landing v8 — „Raumatlas 3.0": WebGL-Hero + editorialer Rhythmus.
   Lädt NACH landing.css / chrome.css / v7.css. Kein intro2.css. ── */
/* ── Hero ── */
.scrolly.h3d{position:relative;height:620vh}
.h3d-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:var(--bg)}
.h3d-stage canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block}
.h3d-stage.hoverable{cursor:crosshair}.h3d-stage.hit{cursor:pointer}
.h3d-chips{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.h3d-chip{position:absolute;left:0;top:0;translate:-50% calc(-100% - 26px);display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center;padding:8px 12px 8px 10px;background:#fff;border:1px solid var(--hairline);border-radius:8px;box-shadow:0 6px 24px rgba(21,20,15,.10);font:12.5px/1.25 var(--font);color:var(--text);white-space:nowrap;opacity:0;transition:opacity .32s ease}
.h3d-chip.on{opacity:1}
.h3d-chip b{font-weight:600}
.h3d-chip-meta{grid-column:2;color:var(--quiet);font-size:11.5px}
.h3d-chip-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);grid-row:1 / span 2}
.h3d-chip::after{content:"";position:absolute;left:50%;top:100%;width:1px;height:26px;background:var(--text);opacity:.55}
.h3d-brand{position:absolute;left:0;top:0;pointer-events:none;will-change:transform,opacity}
.h3d-brand svg{display:block;width:100%;height:auto;overflow:visible}
.h3d-words{position:absolute;left:6vw;bottom:9vh;pointer-events:none}
.h3d-word{position:absolute;left:0;bottom:0;font-family:var(--display);font-weight:700;font-size:clamp(72px,13vw,184px);letter-spacing:-.045em;line-height:.9;color:var(--text);opacity:0;white-space:nowrap}
.h3d-cue{position:absolute;left:0;top:0;display:grid;justify-items:center;gap:12px;font:600 12px/1 var(--font);letter-spacing:.34em;text-transform:uppercase;color:var(--quiet);pointer-events:none;will-change:transform,opacity;translate:-50% 0}
.h3d-pulse{position:relative;width:56px;height:56px;margin-bottom:10px}
.h3d-ring{position:absolute;inset:0;border:2px solid var(--text);border-radius:50%;animation:h3dpulse 2.4s ease-out infinite}
@keyframes h3dpulse{0%{transform:scale(.65);opacity:.5}70%{transform:scale(2);opacity:0}100%{transform:scale(2);opacity:0}}
.h3d-cue > i{display:block;width:1px;height:38px;background:var(--text);transform-origin:top;animation:h3dcue 1.6s ease-in-out infinite}
@keyframes h3dcue{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.h3d-finale{position:absolute;inset:0;display:grid;align-content:center;padding:0 6vw 12vh;opacity:0;pointer-events:none}
.h3d-finale.live{pointer-events:auto}
.h3d-finale .wordmark{width:min(330px,60vw)}
.h3d-finale .slogan{margin-top:34px;font-family:var(--display);font-weight:700;font-size:clamp(56px,7.6vw,118px);letter-spacing:-.045em;line-height:.92;max-width:8ch;color:var(--text)}
.h3d-finale .promise{margin-top:26px;font-size:clamp(18px,1.6vw,23px);line-height:1.4;color:var(--body);max-width:24ch}
.h3d-skip{position:absolute;top:28px;right:6vw;z-index:5;appearance:none;background:none;border:0;padding:8px 0;font:600 11px/1 var(--font);letter-spacing:.14em;text-transform:uppercase;color:var(--quiet);cursor:pointer;border-bottom:1px solid transparent;transition:color .2s,border-color .2s,opacity .3s}
.h3d-skip:hover{color:var(--text);border-bottom-color:var(--text)}
.h3d-skip span{display:inline-block;margin-left:4px;transition:transform .2s}.h3d-skip:hover span{transform:translateX(3px)}
.h3d-skip[hidden]{display:none}
.h3d-finale .h3d-by{margin-top:40px;display:flex;align-items:center;gap:16px;font:600 10px/1 var(--font);letter-spacing:.16em;text-transform:uppercase;color:var(--quiet)}
.h3d-finale .h3d-by img{display:block;width:min(210px,38vw);height:auto}
.h3d-finale .marquee{position:absolute;left:0;right:0;bottom:0;width:auto;margin:0;padding:18px 0;border-top:1px solid var(--hairline-soft);-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.h3d-finale .marquee-track{animation-duration:var(--mq-dur,38s)}
.h3d-finale .marquee-track span{font-family:var(--display);font-weight:600;font-size:14px;letter-spacing:.02em;color:var(--quiet)}
@media (max-width:860px){.h3d-finale{align-content:end;padding-bottom:16vh}.h3d-finale .wordmark{width:min(240px,55vw)}.h3d-finale .slogan{font-size:clamp(48px,14vw,80px)}.h3d-words{left:5vw;bottom:7vh}}
html[data-anim="off"] .scrolly.h3d{height:100vh!important}
@media (prefers-reduced-motion:reduce){.scrolly.h3d{height:100vh!important}.h3d-cue > i,.h3d-ring{animation:none}}
/* ── Editorialer Rhythmus ── */
section{padding:136px 64px}
.eyebrow{display:flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none}
.manifest h2,.stand h2,.connect h2,.souv h2,.fuerwen .fw-lead,.bh h2,.waitlist h2{font-size:clamp(38px,5vw,64px);line-height:1.02;letter-spacing:-.035em;font-weight:700}
.connect h2,.bh h2{max-width:900px}
.bs{grid-template-columns:minmax(88px,.3fr) 1fr 300px;align-items:start}
.bs-num{font-size:clamp(64px,8vw,112px);font-weight:800;line-height:.85;letter-spacing:-.04em}
.bs-text h3{font-size:clamp(26px,3vw,36px);letter-spacing:-.03em}
.branchen-h{font-size:clamp(26px,3vw,36px)}
.persona h3{font-size:22px}
.connect-step{border-top-width:2px}
.stand-lead,.connect .connect-lead,.bh-lead,.souv-lead{font-size:clamp(18px,1.6vw,21px)}
@media (max-width:1060px){.bs{grid-template-columns:88px 1fr;grid-template-areas:"num text" "num viz"}.bs-num{grid-area:num}.bs-text{grid-area:text}.bs-viz{grid-area:viz;justify-self:start}}
@media (max-width:860px){section{padding:96px 32px}.bs{grid-template-columns:1fr;grid-template-areas:"num" "text" "viz"}}
@media (max-width:560px){section{padding:72px 20px}}
