/* Für Städte, Gemeinden und Wohnungsämter — nutzt nur die Tokens aus portal.css (:root) */
.st-kopf .st-aktion{display:flex;flex-wrap:wrap;gap:var(--s3);margin:var(--s5) 0 0}
.st-aktion{display:flex;flex-wrap:wrap;gap:var(--s3)}
.st-marke{font:700 .78rem var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--gold-d);margin:0 0 var(--s2)}

/* Nutzen-Raster */
.st-raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--s4)}
.st-karte{background:#fff;border:1px solid var(--linie);border-radius:var(--r3);padding:var(--s5) var(--s4) var(--s4);position:relative;min-width:0}
.st-karte h3{margin:var(--s3) 0 var(--s2)}
.st-karte p{margin:0;color:var(--mut);font-size:.95rem}
.st-icon{display:block;width:40px;height:40px;border-radius:var(--r2);background:var(--wald-h) center/22px no-repeat}
.st-icon-bericht{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231D4D47' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 20V10M10 20V4M16 20v-7M22 20H2'/%3E%3C/svg%3E")}
.st-icon-spiegel{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231D4D47' stroke-width='2' stroke-linecap='round'%3E%3Crect x='4' y='3' width='16' height='18' rx='2'/%3E%3Cpath d='M8 8h8M8 12h8M8 16h5'/%3E%3C/svg%3E")}
.st-icon-schild{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231D4D47' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l8 3v6c0 5-3.5 9-8 11-4.5-2-8-6-8-11V5z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E")}
.st-icon-haus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231D4D47' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-7 9 7v9a1 1 0 0 1-1 1h-5v-6H9v6H4a1 1 0 0 1-1-1z'/%3E%3C/svg%3E")}
.st-icon-karte{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231D4D47' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M9 4L3 6v14l6-2 6 2 6-2V4l-6 2z'/%3E%3Cpath d='M9 4v14M15 6v14'/%3E%3C/svg%3E")}
.st-icon-widget{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231D4D47' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 7l-5 5 5 5M16 7l5 5-5 5'/%3E%3C/svg%3E")}
.st-icon-schloss{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231D4D47' stroke-width='2'%3E%3Crect x='5' y='10' width='14' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E")}
.st-icon-server{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231D4D47' stroke-width='2' stroke-linecap='round'%3E%3Crect x='3' y='4' width='18' height='7' rx='2'/%3E%3Crect x='3' y='13' width='18' height='7' rx='2'/%3E%3Cpath d='M7 7.5h.01M7 16.5h.01'/%3E%3C/svg%3E")}

/* Ablauf */
.st-schritte{list-style:none;counter-reset:st;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4)}
.st-schritte li{counter-increment:st;background:var(--grund);border-radius:var(--r3);padding:var(--s4) var(--s4) var(--s4) 64px;position:relative;min-width:0}
.st-schritte li::before{content:counter(st);position:absolute;left:var(--s4);top:var(--s4);width:34px;height:34px;border-radius:50%;background:var(--wald);color:#fff;font:800 1rem/34px var(--display);text-align:center}
.st-schritte b{display:block;font-family:var(--display);margin-bottom:var(--s1)}
.st-schritte span{color:var(--mut);font-size:.95rem}

/* Orte */
.st-finden{max-width:560px;margin-bottom:var(--s5)}
.st-finden label{margin-top:0}
.st-finden-zeile{display:flex;gap:var(--s3)}
.st-finden-zeile input{flex:1;min-width:0}
.st-vorne{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--s3);margin-bottom:var(--s5)}
.st-ortkarte{display:block;background:var(--wald);color:#fff;border-radius:var(--r3);padding:var(--s4);text-decoration:none}
.st-ortkarte:hover{background:var(--wald-d)}
.st-ortkarte b{display:block;font:800 1.15rem var(--display)}
.st-ortkarte span{color:var(--gold);font-size:.92rem}
.st-abc{columns:4 180px;column-gap:var(--s5)}
.st-abc>div{break-inside:avoid;margin-bottom:var(--s4)}
.st-abc h3{font-size:1rem;color:var(--gold-d);margin:0 0 var(--s1)}
.st-abc ul{list-style:none;margin:0;padding:0}
.st-abc li{padding:2px 0}

/* Ehrlich + FAQ */
.st-ehrlich{background:var(--gold-h);border:1px solid #F2D9A8;border-radius:var(--r3);padding:var(--s5)}
.st-ehrlich ul{margin:0;padding-left:1.2rem}
.st-ehrlich li{margin:.3rem 0}
.st-faq{max-width:820px}
.st-faq details{border-bottom:1px solid var(--linie);padding:var(--s3) 0}
.st-faq summary{cursor:pointer;font:700 1.02rem var(--display)}
.st-faq p{margin:var(--s2) 0 0;color:var(--mut)}

/* Anfrage */
.st-anfrage{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--s6);align-items:start;background:var(--grund);border-radius:var(--r3);padding:var(--s6) var(--s5)}
.st-anfrage-text p{color:var(--mut)}
.st-haken{list-style:none;padding:0;margin:var(--s4) 0 0}
.st-haken li{padding-left:28px;position:relative;margin:.4rem 0}
.st-haken li::before{content:"";position:absolute;left:0;top:.35em;width:16px;height:9px;border-left:3px solid var(--ok);border-bottom:3px solid var(--ok);transform:rotate(-45deg)}
.st-form{min-width:0}
.st-form fieldset{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5)}
.st-form legend{font-weight:600;font-size:.92rem;margin:0 0 .3rem;padding:0;width:100%}
.st-form fieldset .check{margin:0}

.st-zwei{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--s3)}
.st-zwei>div{min-width:0}
.st-fehler{color:var(--err);font-size:.85rem;margin:.3rem 0 0}
.st-senden{margin:var(--s4) 0 0}
.st-mehr{margin:var(--s5) 0 var(--s6)}

/* Stadtseite */
.st-zahlen{display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:var(--s5)}
.st-zahlen div{background:var(--wald);color:#fff;border-radius:var(--r3);padding:var(--s4);min-width:0}
.st-zahlen div:nth-child(2){background:var(--gold);color:var(--tinte)}
.st-zahlen span{display:block;font-size:.85rem;opacity:.85}
.st-zahlen b{display:block;font:800 1.45rem var(--display);letter-spacing:-.02em;overflow-wrap:anywhere}
.st-spalten{display:grid;grid-template-columns:1.618fr 1fr;gap:var(--s6);align-items:start}
.st-spalten>*{min-width:0}
.st-spalten h2+p{margin-top:0}
.st-spalten section h2:not(:first-child){margin-top:var(--s6)}
.st-tabelle{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--linie);border-radius:var(--r2)}
.st-tabelle table{width:100%;border-collapse:collapse;font-size:.95rem}
.st-tabelle th,.st-tabelle td{text-align:left;padding:.6rem .75rem;border-bottom:1px solid var(--linie);vertical-align:top}
.st-tabelle tr:last-child th,.st-tabelle tr:last-child td{border-bottom:0}
.st-tabelle thead th{background:var(--grund);font-size:.82rem;color:var(--mut)}
.st-tabelle tbody th{font-weight:600}
.st-tabelle td:last-child{color:var(--mut);font-size:.85rem;white-space:nowrap}
.st-links{display:grid;gap:var(--s2)}
.st-links h2{font-size:1.3rem}
.st-links a{display:block;border:1px solid var(--linie);border-radius:var(--r2);padding:var(--s3) var(--s4);text-decoration:none;color:var(--tinte)}
.st-links a:hover{border-color:var(--wald)}
.st-links b{display:block;color:var(--wald)}
.st-links span{font-size:.88rem;color:var(--mut)}
.st-ms{margin-top:var(--s4);padding:var(--s4)}
.st-ms p{margin:0 0 var(--s2)}
.st-widget{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--s5);align-items:start}
.st-widget>*{min-width:0}
.st-code{font:.82rem/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;resize:vertical;background:var(--grund)}
.st-vorschau{margin:0;background:var(--grund);border:1px dashed var(--linie);border-radius:var(--r3);padding:var(--s4)}
.st-vorschau figcaption{margin-bottom:var(--s2)}
.st-danke{max-width:760px;margin:var(--s6) auto}

@media (max-width:900px){
  .st-anfrage,.st-spalten,.st-widget{grid-template-columns:1fr;gap:var(--s5)}
  .st-schritte{grid-template-columns:1fr}
  .st-anfrage{padding:var(--s5) var(--s4)}
}
@media (max-width:560px){
  .st-zwei{grid-template-columns:1fr}
  .st-finden-zeile{flex-direction:column}
  .st-anfrage{margin:0 calc(-1 * var(--s4));border-radius:0}
  .st-anfrage .card{padding:var(--s4)}
  .st-zahlen{grid-template-columns:1fr 1fr;gap:var(--s2)}
  .st-zahlen div{padding:var(--s3)}
  .st-zahlen b{font-size:1.1rem}
  .st-tabelle thead{position:absolute;left:-9999px}
  .st-tabelle tr{display:grid;grid-template-columns:1fr auto;gap:2px var(--s3);padding:.6rem .75rem;border-bottom:1px solid var(--linie)}
  .st-tabelle tr:last-child{border-bottom:0}
  .st-tabelle th,.st-tabelle td{display:block;padding:0;border:0}
  .st-tabelle tbody th{grid-column:1/-1}
  .st-tabelle td:last-child{text-align:right;align-self:end}
}
