/* Lagekarte (Fahrzeiten mit dem Auto), Stand 08.10.2026. Baustein fuer index/wohnungen/anfordern. */
.lagekarte{padding:5rem 1.5rem;background:#fff;
  --lk-navy:#040922;--lk-rot:#d10a0a;--k-grund:#eef0f1;--k-wald:#d6ded3;--k-ort:#e2e4e6;--k-gewerbe:#d9dbde;--k-wasser:#c9d8e4;
  --k-wasser-linie:#b4c9da;--k-bahn:#9aa0a6;--k-strasse:#fff;--k-strasse-gross:#fff;--k-autobahn:#3b4048;--k-ortsname:#8b9097;--k-aussen:#e6e6e3}
.lagekarte .lk-innen{max-width:1200px;margin:0 auto}
.lagekarte .lk-lead{font-size:1.05rem;color:#3c4052;max-width:640px;margin-top:.6rem}
.lagekarte .lk-raster{display:grid;gap:22px;margin-top:28px}
@media(min-width:960px){.lagekarte .lk-raster{grid-template-columns:1.25fr 1fr;align-items:start}}
.lk-karte{position:relative;border-radius:14px;overflow:hidden;background:var(--k-grund);box-shadow:0 10px 30px rgba(4,9,34,.10);aspect-ratio:1/1}
.lk-karte svg{width:100%;height:100%;display:block}
.lk-karte svg text{font-family:inherit}
.k-grund{fill:var(--k-grund)}.k-fluss{fill:none;stroke:var(--k-wasser-linie);stroke-width:4}.k-bahn{fill:none;stroke:var(--k-bahn);stroke-width:2;stroke-dasharray:8 5}
.k-str{fill:none;stroke:var(--k-strasse);stroke-linecap:round;stroke-linejoin:round}.k-gross{stroke:var(--k-strasse-gross)}
.k-bab{fill:none;stroke:var(--k-autobahn);stroke-linecap:round;stroke-linejoin:round}
.k-stadt{font-size:calc(15px*var(--s,1));font-weight:800;font-stretch:72%;letter-spacing:.12em;fill:var(--lk-navy);opacity:.75;paint-order:stroke;stroke:var(--k-grund);stroke-width:calc(4px*var(--s,1))}
.k-ort{font-size:calc(9.5px*var(--s,1));letter-spacing:.3em;fill:var(--k-ortsname);font-weight:600}
.k-aussen{fill:var(--k-aussen);opacity:.72}
.k-grenze{fill:none;stroke:var(--lk-navy);stroke-width:calc(2.2px*var(--s,1));stroke-dasharray:calc(9px*var(--s,1)) calc(5px*var(--s,1));stroke-linejoin:round}
.k-grenze-schatten{fill:none;stroke:rgba(209,10,10,.16);stroke-width:calc(9px*var(--s,1));stroke-linejoin:round}
.k-grenz-text{font-size:calc(10.5px*var(--s,1));font-weight:800;letter-spacing:.22em;fill:var(--lk-navy);paint-order:stroke;stroke:var(--k-grund);stroke-width:calc(3px*var(--s,1))}
.k-grenz-aussen{font-weight:600;fill:var(--k-ortsname)}
.lk-route{fill:none;stroke:var(--lk-rot);stroke-width:calc(3.5px*var(--s,1));stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:var(--l);stroke-dashoffset:var(--l);animation:lk-zeichne .9s ease-out forwards}
@keyframes lk-zeichne{to{stroke-dashoffset:0}}
.lk-ziel{cursor:pointer;transition:opacity .3s}.lk-ziel circle{fill:var(--lk-navy);stroke:#fff;stroke-width:2;r:5px}
.lk-ziel circle.lk-treffer{fill:transparent;stroke:none;r:16px}
.lk-ziel.an circle:not(.lk-treffer){fill:var(--lk-rot)}.lk-ziel.blass{opacity:.35}
.lk-ziel-text{font-size:12.5px;font-weight:700;fill:var(--lk-navy);paint-order:stroke;stroke:var(--k-grund);stroke-width:3.5px;stroke-linejoin:round}
.lk-ziel.an .lk-ziel-text{fill:var(--lk-rot)}
.lk-hof{fill:var(--lk-rot);opacity:.18}.lk-haus{fill:var(--lk-rot);stroke:#fff;stroke-width:2.5}
.lk-haus-text{font-size:13.5px;font-weight:800;fill:var(--lk-rot);paint-order:stroke;stroke:var(--k-grund);stroke-width:4px;stroke-linejoin:round}
.lk-blase{position:absolute;left:12px;bottom:12px;background:var(--lk-navy);color:#fff;border-radius:12px;padding:.6rem .9rem;font-size:.85rem;max-width:calc(100% - 24px);box-shadow:0 10px 30px rgba(4,9,34,.2)}
.lk-blase b{font-size:1.35rem;font-weight:800;font-stretch:80%;margin-right:.35rem}
.lk-alle{position:absolute;top:12px;right:12px;border:0;background:#fff;color:var(--lk-navy);font-weight:700;font-size:.82rem;padding:.5rem .9rem;border-radius:999px;box-shadow:0 10px 30px rgba(4,9,34,.15);cursor:pointer}
.lk-liste{list-style:none;border-top:1px solid #e8e8e6;margin:0;padding:0}
.lk-liste li{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:.75rem .5rem;border-bottom:1px solid #e8e8e6;cursor:pointer;font-size:.98rem;border-radius:8px}
.lk-liste li:hover{background:#f4f4f2}.lk-liste li.an{background:#fff2f2}
.lk-zeit{font-family:'Plex Mono',ui-monospace,monospace;font-weight:500;white-space:nowrap}
.lk-zeit small{color:#6b6e68;margin-left:.4rem;font-size:.8em}
.lk-fern{margin-top:16px;background:#f4f4f2;border-radius:12px;padding:12px 14px;font-size:.9rem}
.lk-fern b{display:block;font-family:'Plex Mono',ui-monospace,monospace;font-weight:500;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#6b6e68;margin-bottom:.3rem}
.lk-quelle{font-size:.74rem;color:#6b6e68;margin-top:10px}
@media(prefers-reduced-motion:reduce){.lk-route{animation:none;stroke-dashoffset:0}}

/* weite Ansicht: nur Punkte, Haus und Innenstadt bleiben beschriftet */
.lk-weit .lk-ziel:not(.lk-immer):not(.an) .lk-ziel-text{display:none}
.lk-weit .lk-ziel circle:not(.lk-treffer){r:4px}
@media(max-width:700px){.lk-weit .k-ort,.lk-weit .k-grenz-aussen{display:none}}
