/* Interactive knowledge landscape */
.knowledge-explorer{--signal:#35efa7;background:#0a171d;color:#eef5f4;padding:76px max(28px,calc((100vw - 1440px)/2));position:relative;isolation:isolate;scroll-margin-top:100px}
.knowledge-explorer svg{width:22px;height:22px;flex-shrink:0}.explorer-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:38px}.signal-eyebrow{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:2px;font-weight:700;color:#c0d6cf}.signal-eyebrow i,.entry-dot,.scene-topline i{width:7px;height:7px;border-radius:50%;background:var(--signal,#35efa7);box-shadow:0 0 18px #35efa788;display:inline-block}.signal-eyebrow i:before{content:'';display:block;width:24px;height:1px;background:#35efa7;transform:translate(-20px,3px)}.explorer-heading h2{font-size:clamp(36px,4.2vw,62px);letter-spacing:-2px;line-height:1.06;margin:22px 0}.explorer-heading h2 em{font-style:normal;color:var(--signal)}.explorer-heading p{font-size:18px;line-height:1.7;max-width:620px;color:#afc2c7}.explorer-heading-note{display:flex;align-items:center;gap:18px;padding:20px 0;color:#b7cbc9;line-height:1.7;font-size:14px}.explorer-heading-note svg{width:38px;height:38px;color:var(--signal)}
.explorer-routebar{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:22px}.explorer-routes{display:flex;gap:8px;flex-wrap:wrap}.explorer-routes button{border:1px solid #34454c;background:#15262d;color:#bfd0d4;border-radius:7px;min-height:48px;padding:12px 16px;display:flex;align-items:center;gap:12px;font-size:14px;cursor:pointer}.explorer-routes button span{font-size:11px;opacity:.65}.explorer-routes button[aria-pressed=true]{background:#183c33;border-color:#35efa7;color:#d9fff0}.explorer-progress{font-size:13px;color:#a7c7bd;white-space:nowrap}.explorer-workspace{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(330px,1fr);border:1px solid #33454c;border-radius:14px;overflow:hidden;box-shadow:0 24px 70px #0004}
.explorer-scene{position:relative;min-height:650px;overflow:hidden;background:#102329;isolation:isolate}.explorer-photo{position:absolute;inset:0;background:linear-gradient(180deg,#08171b55,#08171b33 45%,#08171bdd),url('/assets/bildwelten/werksanschluss-deutschland.png') center/cover;filter:saturate(.65);z-index:-2}.scene-grain{position:absolute;inset:0;background-image:radial-gradient(#9eeac521 .7px,transparent .7px);background-size:20px 20px;pointer-events:none;z-index:-1}.scene-topline,.scene-bottomline{position:absolute;left:24px;right:24px;display:flex;justify-content:space-between;gap:18px;font-size:11px;line-height:1.6;color:#e5f2ef;z-index:2}.scene-topline{top:24px;letter-spacing:1px}.scene-topline>span:first-child{display:flex;align-items:center;gap:9px}.scene-bottomline{bottom:18px;color:#bed1cf;flex-wrap:wrap}.scene-bottomline a{color:#bed1cf;text-decoration:underline;text-underline-offset:3px}.knowledge-explorer .knowledge-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.knowledge-lines path{fill:none;stroke:#3befa961;stroke-width:1.4;vector-effect:non-scaling-stroke;transition:stroke .4s,stroke-width .4s}.knowledge-lines path.is-active{stroke:#4effb8;stroke-width:2;filter:drop-shadow(0 0 5px #35efa7);stroke-dasharray:8 5;animation:knowledge-flow 12s linear infinite}
.knowledge-point{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);background:none!important;border:0!important;padding:22px!important;cursor:pointer;z-index:3;color:#fff;min-width:48px;min-height:48px;overflow:visible}.point-light{display:block;width:12px;height:12px;border-radius:50%;background:#59ffb9;box-shadow:0 0 0 7px #27efa71c,0 0 28px #2dffa9;position:relative;margin:auto;transition:transform .2s}.point-light:after{content:'';position:absolute;inset:-10px;border:1px solid #35efa766;border-radius:50%;animation:knowledge-pulse 3s ease-out infinite}.point-label{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateX(-50%);display:flex;gap:8px;align-items:center;padding:13px 12px;border:1px solid #66998d73;border-radius:7px;background:#071c20ed;backdrop-filter:blur(12px);box-shadow:0 8px 26px #0004;white-space:nowrap;font-size:13px;font-weight:650;transition:background .2s,border .2s}.point-label:after{content:'';position:absolute;width:1px;height:35px;top:100%;left:50%;background:linear-gradient(#35efa777,#35efa7)}.point-label svg{color:#72d7b0;width:18px;height:18px}.point-label small{font-size:9px;opacity:.5}.knowledge-point:hover .point-label,.knowledge-point:focus-visible .point-label,.knowledge-point.is-active .point-label{border-color:#35efa7;background:#124736;color:#fff}.knowledge-point.is-active .point-light{transform:scale(1.35);background:#fff}.knowledge-point:not(.is-on-route){opacity:.6}.knowledge-point.is-active{opacity:1}.knowledge-point:focus-visible{outline:2px solid white!important;outline-offset:4px;border-radius:50%}
.explorer-detail{padding:28px;background:linear-gradient(145deg,#192c31,#112027);border-left:1px solid #33454c;display:flex;flex-direction:column;align-items:stretch}.detail-top{display:flex;justify-content:space-between;align-items:center;gap:14px}.detail-top>span{font-size:10px;letter-spacing:1.5px;color:#69d6b0}.explorer-detail .save-button{border:1px solid #53696e;background:transparent;color:#d2e7e2;display:flex;gap:7px;align-items:center;padding:10px;min-height:44px;border-radius:6px;font-size:12px}.explorer-detail .save-button.saved{background:#245443;color:#a4ffda}.explorer-detail h3{font-size:30px;letter-spacing:-.8px;line-height:1.17;margin:26px 0 18px;color:#fff}.detail-text{font-size:16px;line-height:1.75;color:#c2d1d5;margin:0 0 22px}.detail-example{padding:18px;border-left:2px solid #35efa7;background:#8ef2cc08}.detail-example>span{font-size:10px;color:#6ee2b7;letter-spacing:1.2px;font-weight:700}.detail-example p{font-size:14px;color:#e3edeb;line-height:1.7;margin:10px 0 0}.detail-connection{font-size:13px;color:#9ebbb7;line-height:1.65;margin:18px 0 22px}.explorer-article{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#35efa7;color:#05291c!important;padding:16px;border-radius:6px;font-size:14px;font-weight:700;margin-top:auto}.explorer-article svg{width:19px}.explorer-related{border-top:1px solid #33494e;margin-top:20px;padding-top:16px}.explorer-related summary{display:flex;justify-content:space-between;cursor:pointer;color:#c6dbd5;font-size:14px;list-style:none;min-height:32px}.explorer-related summary::-webkit-details-marker{display:none}.explorer-related[open] summary span{transform:rotate(45deg)}#explorer-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;color:#b5d4ca;font-size:13px;border-top:1px solid #294048}#explorer-links svg{width:16px}
.explorer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:22px}.explorer-steps{display:flex;align-items:center;gap:20px}.explorer-steps button,.explorer-challenge-toggle{min-height:48px;display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 18px;border:1px solid #47625e;border-radius:6px;background:#14272b;color:#d7f4e9;font-size:14px;cursor:pointer}.explorer-steps>span{font-size:12px;color:#91aaa9}#explorer-prev{padding:12px}#explorer-prev svg{transform:rotate(180deg)}#explorer-prev:disabled{opacity:.3;cursor:default}.explorer-challenge-toggle{border-color:#35efa7;color:#35efa7;background:transparent}.explorer-challenge-toggle[aria-expanded=true]{background:#163b2d}.explorer-challenge{padding:32px;background:#14282c;border:1px solid #326352;border-radius:12px;margin-top:24px}.explorer-challenge h3{font-size:25px;line-height:1.35;margin:20px 0}.explorer-challenge #challenge-answers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}#challenge-answers button{display:flex;text-align:left;align-items:flex-start;gap:14px;padding:20px;background:#1c3439;color:#e1eeea;border:1px solid #46615e;border-radius:8px;min-height:90px;line-height:1.6;font-size:15px;cursor:pointer}#challenge-answers button span{border:1px solid #618e7e;flex-shrink:0;width:26px;height:26px;border-radius:50%;text-align:center;font-size:12px;color:#93dabf}#challenge-answers button.is-correct{border-color:#35efa7;background:#1f4c3c}#challenge-answers button.is-wrong{border-color:#e6ad7b;background:#493c2e}#challenge-feedback{font-size:16px;line-height:1.7;color:#d9f4e9}.explorer-challenge>small{font-size:12px;color:#99b1b0}.explorer-announcement{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}.knowledge-explorer button:focus-visible,.knowledge-explorer a:focus-visible,.knowledge-explorer summary:focus-visible{outline:2px solid #91ffcf;outline-offset:4px}.explorer-page{padding:0!important;max-width:none!important}.hero-explorer-entry{margin:24px 0;display:flex;align-items:flex-start;flex-direction:column;gap:12px}.hero-explore-button{display:inline-flex;gap:14px;align-items:center;border:1px solid #48b38c;background:#153e31df;color:#ecfff7!important;border-radius:7px;padding:16px 20px;font-size:15px;font-weight:600;box-shadow:0 0 28px #1cc38916}.hero-explore-button svg{width:20px;height:20px}.hero-explorer-entry>span{font-size:12px;color:#b0c7be}.hero-knowledge{display:none}
@keyframes knowledge-pulse{0%{transform:scale(.65);opacity:.85}80%,100%{transform:scale(1.5);opacity:0}}@keyframes knowledge-flow{to{stroke-dashoffset:-130}}
@media(min-width:1200px){.homepage .hero-copy{max-width:820px}.hero-knowledge{display:block;position:absolute;right:3%;top:22%;width:35%;height:310px;z-index:3}.hero-knowledge>svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#35efa7aa;stroke-width:1.2;filter:drop-shadow(0 0 5px #35efa7)}.hero-node{position:absolute;display:flex;gap:12px;align-items:center;background:#0c2420e8;border:1px solid #56af8e;border-radius:6px;padding:12px;color:#a6f9d4;cursor:pointer;box-shadow:0 0 30px #12df8b0d;text-align:left}.hero-node i{width:8px;height:8px;flex-shrink:0;background:#3bffab;border-radius:50%;box-shadow:0 0 14px #20fca1}.hero-node span{font-size:10px;letter-spacing:1px}.hero-node small{display:block;font-size:12px;color:white;letter-spacing:0;margin-top:5px}.hero-node-one{left:3%;top:16%}.hero-node-two{right:1%;top:34%}.hero-node-three{left:40%;bottom:5%}.hero-node:hover{background:#1a4b37;border-color:#35efa7}}
@media(max-width:1100px){.explorer-workspace{grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr)}.explorer-detail{padding:22px}.explorer-routebar{align-items:flex-start;flex-direction:column}.point-label{font-size:11px;padding:10px;gap:5px}.point-label small{display:none}.explorer-heading-note{display:none}.explorer-detail h3{font-size:26px}}
@media(max-width:800px){.knowledge-explorer{padding:48px 20px}.explorer-heading{margin-bottom:24px}.explorer-heading h2{font-size:42px}.explorer-heading p{font-size:16px}.explorer-workspace{grid-template-columns:1fr}.explorer-scene{min-height:460px}.explorer-detail{border-left:0;border-top:1px solid #33454c;padding:24px}.explorer-detail h3{font-size:29px}.explorer-routes{display:grid;grid-template-columns:1fr;width:100%}.explorer-routes button{justify-content:flex-start;min-height:48px;padding:12px 15px}.explorer-bottom{flex-direction:column;align-items:stretch}.explorer-steps{justify-content:space-between;gap:8px}.explorer-steps button{font-size:12px;padding:12px}.explorer-steps>span{font-size:11px}.explorer-challenge-toggle{width:100%}.explorer-challenge{padding:22px}.explorer-challenge #challenge-answers{grid-template-columns:1fr}#challenge-answers button{min-height:64px}.scene-topline,.scene-bottomline{left:16px;right:16px;font-size:9px}.scene-topline>span:last-child{display:none}.point-label{font-size:11px;padding:10px 8px;white-space:normal;width:max-content;max-width:124px;line-height:1.4}.point-label svg{width:16px;height:16px}.knowledge-point[data-node=infrastruktur]{left:18%}.knowledge-point[data-node=betrieb] .point-label{max-width:126px}.hero-explore-button{font-size:13px;padding:14px;gap:10px}.hero-explorer-entry>span{font-size:11px;line-height:1.6}.hero-explorer-entry{margin:24px 0 16px}}
@media(prefers-reduced-motion:reduce){.point-light:after,.knowledge-lines path.is-active{animation:none}.knowledge-point *,.knowledge-lines path{transition:none}}

.explorer-detail,.explorer-challenge{scroll-margin-top:100px}.explorer-photo{background-image:linear-gradient(180deg,#08171b88,#08171b55 45%,#08171bdd),url('/assets/bildwelten/werksanschluss-deutschland.png')}
@media(min-width:1200px){.homepage .hero-copy{max-width:min(61%,820px)}.hero-node{width:44px;height:44px;padding:18px;display:block;transform:translate(-50%,-50%);border:0;background:transparent;box-shadow:none}.hero-node i{display:block}.hero-node>span{position:absolute;left:50%;bottom:64px;transform:translateX(-50%);padding:13px 16px;white-space:nowrap;border:1px solid #56af8e;border-radius:6px;background:#0c2420ed}.hero-node>span:after{content:'';position:absolute;top:100%;left:50%;width:1px;height:42px;background:#35efa7}.hero-node-one{left:18%;top:28.333%}.hero-node-two{left:80%;top:35%;right:auto}.hero-node-three{left:64%;top:85%;bottom:auto}.hero-node:hover{background:transparent}.hero-node:hover>span,.hero-node:focus-visible>span{background:#1a4b37;border-color:#35efa7}}
/* The scene and all anchors share one 3:2 coordinate space; never crop. */
.explorer-workspace{grid-template-columns:minmax(0,1.9fr) minmax(310px,1fr);align-items:start;background:#14232b}
.explorer-map-column{min-width:0;background:linear-gradient(135deg,#1c3036,#111f27)}
.scene-toolbar{padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:1px solid #42605a}
.scene-toolbar>div:first-child{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.4px;color:#b8d9cd}
.scene-live-dot{height:6px;width:6px;border-radius:50%;background:#35efa7;box-shadow:0 0 12px #35efa766}
.scene-view-actions{display:flex;gap:6px;flex-wrap:wrap}.scene-view-actions button{border:1px solid #49635e;border-radius:6px;color:#d4eee4;background:#10242a;min-height:38px;padding:8px 11px;font-size:11px;cursor:pointer}.scene-view-actions button[aria-pressed=true]{background:#20553e;border-color:#35efa7;color:#c4ffe7}
.object-scene.explorer-scene{min-height:0!important;aspect-ratio:3/2;overflow:hidden;background:#172a2c;isolation:isolate}
.object-canvas{position:absolute;inset:0;transform-origin:0 0;transition:transform .65s cubic-bezier(.2,.8,.2,1)}
.object-illustration{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;display:block;filter:saturate(.95) brightness(.96)}
.knowledge-explorer .object-leaders,.knowledge-explorer .object-connections{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.object-leaders path{stroke:#65ffc6;stroke-width:1.4;fill:none;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 3px #082b20)}.object-leaders path.is-active{stroke:#fff;stroke-width:2}
.object-connections{opacity:0;transition:opacity .3s}.show-object-connections .object-connections{opacity:1}.object-connections path{stroke:#5bffc09c;stroke-width:1;stroke-dasharray:5 5;fill:none;vector-effect:non-scaling-stroke}.object-connections path.is-active{stroke:#85ffcf;stroke-width:2;animation:knowledge-flow 12s linear infinite}
.object-point{position:absolute;transform:translate(-50%,-50%);min-width:44px;min-height:44px;width:44px;height:44px;padding:0!important;border:0!important;background:transparent!important;display:grid;place-items:center;cursor:pointer;z-index:4}
.object-point>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#0b3b2ce8;border:1.5px solid #73ffd0;box-shadow:0 0 0 5px #2dffa928,0 0 18px #3bffb944;color:#d7fff0;font-size:10px;font-weight:750;transition:transform .2s,background .2s}.object-point.is-active>span{background:#adffde;border-color:#fff;color:#093625;box-shadow:0 0 0 7px #28ed9f36,0 0 24px #45ffb688;transform:scale(1.12)}
.object-label{position:absolute;transform:translate(-50%,-50%);z-index:3;border:1px solid #7bc7a7!important;border-radius:7px;padding:10px 12px!important;background:#102c2bea!important;backdrop-filter:blur(8px);box-shadow:0 5px 20px #0004;color:#e6fff5;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer;min-height:42px}.object-label svg{width:17px;height:17px;color:#7effc2}.object-label[aria-pressed=true]{background:#1a6147f2!important;border-color:#b7ffdb!important}
.object-caption{padding:19px 23px 20px;border-bottom:1px solid #344b4f;background:#12262b}.object-caption>span{color:#79efbd;font-size:12px;font-weight:700;letter-spacing:.5px}.object-caption p{color:#d0dedc;font-size:14px;line-height:1.7;margin:9px 0 0}
.object-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:18px}.object-legend button{min-height:72px;display:flex;align-items:center;gap:10px;padding:12px;background:#1a2d34;border:1px solid #3d5255;border-radius:8px;color:#d4e6e0;cursor:pointer;text-align:left}.object-legend button>b{font-size:11px;color:#6fe4b4;font-weight:500}.object-legend button>span{font-size:12px;font-weight:650;flex:1}.object-legend small{font-size:10px;font-weight:400;display:block;color:#9ab6b1;line-height:1.5;margin-top:5px}.object-legend svg{width:18px;height:18px;color:#88bda8}.object-legend button[aria-pressed=true]{border-color:#69eeb4;background:linear-gradient(120deg,#214f40,#18362e)}.object-legend button:hover{border-color:#84c7ab}
.object-provenance{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:0 20px 19px;font-size:10px;line-height:1.6;color:#98b6ad}.object-provenance a{color:#bedacf;text-decoration:underline;text-underline-offset:3px}
.explorer-detail{align-self:stretch}.explorer-detail h3{font-size:28px}
@media(max-width:1150px){.explorer-workspace{grid-template-columns:1fr}.explorer-detail{border-left:0;border-top:1px solid #33454c}.explorer-detail .detail-text{max-width:850px}.object-scene{max-height:none}.object-label{font-size:13px}}
@media(max-width:600px){.object-label,.object-leaders{display:none!important}.scene-toolbar{padding:13px 14px;gap:10px}.scene-view-actions{width:100%}.scene-view-actions button{flex:1;min-height:42px;padding:8px 5px;font-size:10px}.object-point>span{width:23px;height:23px;font-size:9px}.object-legend{grid-template-columns:1fr 1fr;padding:14px;gap:7px}.object-legend button{padding:11px 9px;gap:8px;min-height:68px}.object-legend button>span{font-size:11px}.object-legend svg{width:16px;height:16px}.object-caption{padding:17px}.object-caption p{font-size:13px}.object-provenance{padding-inline:17px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.object-canvas,.object-connections{transition:none}.object-connections path.is-active{animation:none}}
