/* 03.10.2026 Test (Timur): 3D-Hallenplan + Wegbeschreibung, zuerst nur Trier. */
.h3d{margin-top:44px}.h3d h2,.weg h2{font:800 clamp(28px,4vw,44px)/1.05 'Baloo 2',sans-serif;color:#fff;letter-spacing:-.02em}.h3d h2 em,.weg h2 em{font-family:'Saira',sans-serif;font-style:italic;font-weight:700;color:var(--neon,#c5f733)}
.h3d-sub{color:var(--dim,#b9acc9);font-size:15px;margin:8px 0 18px}
.h3d-bild{position:relative;border-radius:22px;overflow:hidden;border:1px solid rgba(170,120,250,.35);background:#6a2be8}
.h3d-bild img{display:block;width:100%;height:auto}
.h3d-court{position:absolute;inset:0;border:0;padding:0;margin:0;background:transparent;cursor:pointer;transition:background .2s}
.h3d-court:hover{background:rgba(197,247,51,.28)}.h3d-court.an{background:rgba(197,247,51,.55)}
.h3d-court.zu:hover{background:rgba(255,255,255,.18)}.h3d-court.zu.an{background:rgba(255,255,255,.32)}
.h3d-court:focus-visible{background:rgba(197,247,51,.45);outline:none}
.h3d-eingang{position:absolute;left:35.6%;top:84.4%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:#c5f733;box-shadow:0 0 0 0 rgba(197,247,51,.7);animation:h3dPuls 1.8s infinite;pointer-events:none}
@keyframes h3dPuls{70%{box-shadow:0 0 0 18px rgba(197,247,51,0)}100%{box-shadow:0 0 0 0 rgba(197,247,51,0)}}
.h3d-info{margin-top:12px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:16px 18px;min-height:76px;color:var(--dim,#b9acc9);font-size:14px}
.h3d-info b{color:#fff;font-size:16px}.h3d-info p{margin:2px 0 0}.h3d-info>div{flex:1;min-width:200px}
.h3d-nr{font:800 30px/1 'Baloo 2',sans-serif;color:#c5f733;min-width:44px}
.h3d-buchen{background:#c5f733;color:#12042a;font:800 15px 'Baloo 2',sans-serif;border-radius:99px;padding:11px 18px;text-decoration:none}
.h3d-hinweis{margin:12px 0 0;font-size:14px;line-height:1.5;color:var(--dim,#b9acc9)}.h3d-hinweis b{color:#fff}
.h3d-legende{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px;font-size:12.5px;color:var(--dim,#b9acc9)}.h3d-legende i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.weg{margin-top:56px}.weg-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:18px}@media(min-width:880px){.weg-grid{grid-template-columns:repeat(3,1fr)}}
.weg-schritt{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:18px}
.weg-schritt .n{font:800 15px 'Baloo 2',sans-serif;color:#12042a;background:#c5f733;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;margin-bottom:10px}
.weg-schritt b{color:#fff;font-size:16px;display:block;margin-bottom:4px}.weg-schritt p{color:var(--dim,#b9acc9);font-size:14px;line-height:1.55;margin:0}
.weg-schritt .foto{margin-top:12px;border:1.5px dashed rgba(170,120,250,.5);border-radius:14px;height:120px;display:grid;place-items:center;color:#a98ed6;font-size:12px;text-align:center;padding:8px}
.weg-knoepfe{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.weg-knoepfe a{border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:99px;padding:11px 18px;font:700 14px Inter,sans-serif;text-decoration:none}
.weg-knoepfe a:first-child{background:#c5f733;color:#12042a;border-color:#c5f733}
@media (prefers-reduced-motion:reduce){.h3d-eingang{animation:none}}
/* 12.10.2026: 3D-Halle statt Bild (halle3d-modell.js). Ohne WebGL bleibt alles darüber gültig. */
.h3d-bild.drei-d{aspect-ratio:16/9;background:#0b0720}
.h3d-bild.drei-d>img,.h3d-bild.drei-d>.h3d-court,.h3d-bild.drei-d>.h3d-eingang{display:none}
.h3d-bild.drei-d>canvas{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:grab}
.h3d-bild.drei-d>canvas:active{cursor:grabbing}
@media(max-width:700px){.h3d-bild.drei-d{aspect-ratio:4/5}}
.h3d-pillen{position:absolute;left:12px;top:12px;z-index:2;display:flex;gap:3px;padding:3px;border-radius:999px;background:rgba(18,4,42,.62);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);max-width:calc(100% - 24px);overflow-x:auto;scrollbar-width:none}
.h3d-pillen::-webkit-scrollbar{display:none}
.h3d-pillen button{border:0;background:none;color:#fff;font:700 12.5px/1 Inter,sans-serif;padding:9px 12px;border-radius:999px;white-space:nowrap;cursor:pointer}
.h3d-pillen button.an{background:#c5f733;color:#12042a}
.h3d-schilder{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}
.h3d-schilder .schild{position:absolute;left:0;top:0;white-space:nowrap;font:700 12px/1 Inter,sans-serif;color:#fff;background:rgba(18,4,42,.72);border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:6px 10px;will-change:transform}
.h3d-schilder .schild.court{pointer-events:auto;cursor:pointer;display:flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;background:#16112e;border-color:rgba(197,247,51,.4);box-shadow:0 6px 18px rgba(0,0,0,.35)}
.h3d-schilder .schild.court::after{content:'';position:absolute;left:50%;top:100%;width:2px;height:8px;margin-left:-1px;background:rgba(197,247,51,.7)}
.h3d-schilder .schild.court b{font:800 16px/1 'Baloo 2',sans-serif;color:#12042a;background:#c5f733;border-radius:999px;min-width:26px;height:26px;display:grid;place-items:center;padding:0 6px}
.h3d-schilder .schild.court i{font:700 12px/1 Inter,sans-serif;font-style:normal;color:#fff}
.h3d-schilder .schild.court:not(:has(i)){padding-right:4px}
.h3d-schilder .schild.court.an{background:#c5f733;border-color:#c5f733}
.h3d-schilder .schild.court.an b{background:#12042a;color:#c5f733}
.h3d-schilder .schild.court.an i{color:#12042a}
.h3d-schilder .schild.court.zu{background:rgba(22,17,46,.55);border-color:rgba(255,255,255,.14);box-shadow:none}
.h3d-schilder .schild.court.zu::after{background:rgba(255,255,255,.3)}
.h3d-schilder .schild.court.zu b{background:rgba(255,255,255,.16);color:#d9d0f5}
.h3d-schilder .schild.ort{background:rgba(255,255,255,.9);color:#2a1a55;border:0}
.h3d-schilder .schild.eingang{background:#c5f733;color:#12042a;font-weight:800;border:0}
.h3d-schilder .schild.leise{background:rgba(18,4,42,.62);border:0;color:rgba(255,255,255,.85);font-weight:500}
.h3d-schilder .schild.halle{background:rgba(18,4,42,.7);border:0;font:800 15px/1 'Baloo 2',sans-serif;padding:6px 12px}
.h3d-schilder .schild.halle.zu{color:rgba(255,255,255,.7)}
@media(max-width:700px){.h3d-schilder .schild{font-size:11px;padding:5px 8px}.h3d-schilder .schild.leise,.h3d-schilder .schild.halle,.h3d-schilder .schild.court.zu{display:none!important}}
.h3d-pillen{width:max-content}
