/* Staedteseiten: Karte (Oesterreich-Ausschnitt der DACH-Karte), Chips, Kennzahlen, Staedteraster, Nachbarseiten */
.st-three{grid-template-columns:repeat(3,1fr)}
.st-four{grid-template-columns:repeat(4,1fr)}
.st-prose{max-width:720px;margin:0 auto;color:var(--muted);line-height:1.65;font-size:1.05rem}
.st-prose p{margin:0 0 14px}
.st-chips__title{max-width:720px;margin:18px auto 10px;font-family:var(--font-head);font-weight:800;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
.st-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:760px;margin:0 auto}
.st-chips span{padding:8px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:.92rem;color:var(--ink)}
.st-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1000px;margin:0 auto}
.st-stats > div{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px 18px;text-align:center}
.st-stats b{display:block;font-family:var(--font-head);font-weight:800;font-size:clamp(1.4rem,2.4vw,1.9rem);letter-spacing:-.03em;color:var(--pink);line-height:1.1}
.st-stats span{display:block;color:var(--muted);font-size:.9rem;margin-top:8px;line-height:1.4}
.st-map{max-width:760px;margin:0 auto;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 18px 44px rgba(11,11,15,.06);padding:clamp(10px,2vw,24px)}
.st-map svg{display:block;width:100%;height:auto;overflow:hidden}
.st-map--hub{max-width:900px}
.st-map .dach__land path{fill:#fff3f7;stroke:#ffc2d3;stroke-width:1.6;stroke-linejoin:round}
.st-map .dach__line{fill:none;stroke:var(--pink);stroke-width:2.4;stroke-linecap:round;stroke-dasharray:1 1;stroke-dashoffset:1;opacity:0;animation:st-line 9s var(--ease) infinite;animation-delay:var(--d,0s)}
.st-map .dach__dot{fill:var(--pink);opacity:0;transform-origin:center;transform-box:fill-box;animation:st-dot 9s var(--ease) infinite;animation-delay:var(--d,0s)}
.st-map .dach__label{font-family:var(--font-body);font-size:20px;font-weight:600;fill:#8a8a95}
.st-map .st-map__label--big{font-size:22px;fill:var(--ink)}
.st-map .dach__label--home{font-family:var(--font-head);font-weight:800;fill:var(--ink);font-size:26px}
.st-map .dach__home{fill:var(--pink)}
.st-map .dach__home--ring{fill:none;stroke:var(--pink);stroke-width:3;opacity:0;transform-origin:center;transform-box:fill-box;animation:st-pulse 2.6s ease-out infinite}
.st-map .dach__home--ring2{animation-delay:1.3s}
@keyframes st-line{0%{stroke-dashoffset:1;opacity:1}16%{stroke-dashoffset:0;opacity:1}78%{stroke-dashoffset:0;opacity:1}88%{opacity:0}100%{stroke-dashoffset:1;opacity:0}}
@keyframes st-dot{0%{opacity:0;transform:scale(.2)}5%{opacity:1;transform:scale(1.5)}10%{transform:scale(1)}70%{opacity:1;transform:scale(1)}80%{opacity:0;transform:scale(.6)}100%{opacity:0}}
@keyframes st-pulse{0%{opacity:.7;transform:scale(.6)}100%{opacity:0;transform:scale(2.8)}}
.dach__office{margin:clamp(14px,2vh,22px) 0 0;font-family:var(--font-head);font-weight:800;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:center}
.st-faq{max-width:760px;margin:0 auto}
.st-siblings{max-width:760px;margin:clamp(22px,3vw,34px) auto 0;text-align:center}
.st-siblings ul{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.st-siblings a{display:inline-block;padding:9px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);text-decoration:none;font-weight:600;font-size:.92rem;transition:border-color .25s,color .25s}
.st-siblings a:hover{border-color:var(--pink);color:var(--pink)}
.st-cities{grid-template-columns:repeat(3,1fr)}
.st-city .pg-kicker{margin-bottom:8px}
.st-city ul{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-direction:column;gap:6px}
.st-city a{color:var(--pink);font-weight:600;text-decoration:none}
.st-city a:hover{text-decoration:underline}
.st-showcase .em-show{margin:0 auto}
@media (max-width:960px){.st-three,.st-four,.st-cities{grid-template-columns:repeat(2,1fr)}.st-stats{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.st-three,.st-four,.st-cities,.st-stats{grid-template-columns:1fr}.st-map .dach__label{font-size:26px}.st-map .dach__label--home{font-size:30px}}
@media (prefers-reduced-motion:reduce){.st-map .dach__line{stroke-dashoffset:0;opacity:1;animation:none}.st-map .dach__dot{opacity:1;animation:none}.st-map .dach__home--ring{animation:none}}
