/* Einwilligungsverwaltung (Cookiebanner) – VOTH 3D-Touren */
:root{--vt-navy:#1a2835;--vt-text:#343b41;--vt-teal:#1ea7b5;--vt-grey:#f5f5f5;--vt-line:#d9dfe3}
.vt-consent,.vt-consent *,.vt-ph,.vt-ph *,.vt-reopen{box-sizing:border-box;font-family:Manrope,-apple-system,system-ui,"Helvetica Neue",Roboto,sans-serif}
.vt-consent{position:fixed;z-index:2147483000;left:50%;bottom:20px;transform:translateX(-50%);width:min(760px,calc(100% - 32px));max-height:calc(100vh - 40px);overflow:auto;background:#fff;color:var(--vt-text);border-radius:8px;box-shadow:0 12px 48px rgba(26,40,53,.35),0 0 0 1px rgba(26,40,53,.08);padding:28px 32px;font-size:15px;line-height:1.55}
.vt-consent[hidden]{display:none}
.vt-consent:focus{outline:none}
.vt-consent h2{margin:0 0 10px;font-size:20px;line-height:1.25;font-weight:700;color:var(--vt-navy)}
.vt-consent p{margin:0 0 12px}
.vt-consent a{color:var(--vt-navy);text-decoration:underline;text-underline-offset:2px}
.vt-consent a:hover{color:var(--vt-teal)}
.vt-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.vt-btn{appearance:none;cursor:pointer;font:inherit;font-size:16px;font-weight:600;line-height:1.2;padding:12px 24px;border-radius:4px;border:2px solid var(--vt-navy);background:var(--vt-navy);color:#fff;flex:1 1 auto;text-align:center;transition:background .15s,color .15s,border-color .15s}
.vt-btn:hover{background:#0f1a24;border-color:#0f1a24}
.vt-btn--ghost{background:#fff;color:var(--vt-navy)}
.vt-btn--ghost:hover{background:var(--vt-grey);color:var(--vt-navy);border-color:var(--vt-navy)}
.vt-btn:focus-visible,.vt-reopen:focus-visible,.vt-switch input:focus-visible+.vt-track{outline:3px solid var(--vt-teal);outline-offset:2px}
.vt-details{margin-top:16px;border-top:1px solid var(--vt-line)}
.vt-details[hidden]{display:none}
.vt-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--vt-line)}
.vt-row b{display:block;font-weight:700;color:var(--vt-navy);margin-bottom:2px}
.vt-row span.vt-desc{display:block;font-size:14px;color:#5a646d}
.vt-switch{position:relative;flex:0 0 auto;display:inline-block;width:48px;height:28px;margin-top:2px}
.vt-switch input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:2}
.vt-switch input:disabled{cursor:not-allowed}
.vt-track{position:absolute;inset:0;border-radius:28px;background:#b9c2c9;transition:background .15s}
.vt-track:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.vt-switch input:checked+.vt-track{background:var(--vt-teal)}
.vt-switch input:checked+.vt-track:after{transform:translateX(20px)}
.vt-switch input:disabled+.vt-track{opacity:.6}
.vt-legal{font-size:13px;color:#5a646d;margin-top:14px}
.vt-reopen{position:fixed;z-index:2147482000;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--vt-navy);border:1px solid var(--vt-line);border-radius:999px;padding:9px 14px;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 2px 10px rgba(26,40,53,.18)}
.vt-reopen:hover{background:var(--vt-grey)}
.vt-reopen svg{width:16px;height:16px;fill:var(--vt-teal)}
.vt-reopen[hidden]{display:none}
/* Platzhalter für gesperrte Einbettungen */
.vt-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;width:100%;max-width:600px;height:380px;padding:24px;background:var(--vt-grey);border:1px solid var(--vt-line);border-radius:4px;color:var(--vt-text);font-size:15px;line-height:1.5}
.vt-ph--wide{max-width:100%;height:auto;min-height:220px}
.vt-ph--tall{height:auto;min-height:380px}
.vt-ph p{margin:0;max-width:46ch}
.vt-ph small{display:block;font-size:12.5px;color:#5a646d}
.vt-ph button{appearance:none;cursor:pointer;font:inherit;font-weight:600;font-size:15px;padding:10px 22px;border-radius:4px;border:2px solid var(--vt-navy);background:var(--vt-navy);color:#fff}
.vt-ph button:hover{background:#0f1a24}
.vt-ph button:focus-visible{outline:3px solid var(--vt-teal);outline-offset:2px}
.vt-ph a{color:var(--vt-navy);text-decoration:underline}
iframe[data-vt-src]:not([src]){display:none}
.vt-ok-matterport .vt-ph[data-vt-service=matterport],.vt-ok-elfsight .vt-ph[data-vt-service=elfsight]{display:none}
@media (max-width:600px){
 .vt-consent{bottom:0;left:0;right:0;transform:none;width:100%;border-radius:12px 12px 0 0;padding:22px 18px calc(22px + env(safe-area-inset-bottom));max-height:88vh}
 .vt-btn{flex:1 1 100%}
 .vt-ph{height:auto;min-height:300px}
}
@media (prefers-reduced-motion:reduce){.vt-track,.vt-track:after,.vt-btn{transition:none}}
