
:root{--orange:#ef7715;--orange-knopf:#b84a00;--orange-knopf-h:#963c00;--tuerkis:#20a2d6;--link:#0a6e96;
--petrol:#0b4f6c;--petrol-t:#083c52;--tinte:#1f2a33;--grau:#55606a;--linie:#d9e1e6;--hell:#eef7fb;--creme:#fbf6f1}

@font-face{font-family:"Source Sans 3";src:url(schrift/source-sans-3-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url(schrift/source-sans-3-latin-600-normal.woff2) format("woff2");font-weight:600 700;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(schrift/source-serif-4-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(schrift/source-serif-4-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}

html{font-family:"Source Sans 3",system-ui,sans-serif;font-size:17px;line-height:1.6;color:var(--tinte);background:#fff}
body{margin:0}
h1,h2,h3,h4,.uk-h1,.uk-h2,.uk-h3{font-family:inherit;color:var(--tinte);text-wrap:balance;font-weight:600}
p,li{text-wrap:pretty}
a{color:var(--link)} a:hover{color:var(--petrol-t)}
.uk-container{max-width:1200px}
.leiste{background:#2b2b2b;color:#ddd;font-size:14px;padding:6px 0}
.leiste a{color:#fff;margin-left:14px} .leiste b{color:#fff}
.knopf{display:inline-block;background:var(--orange-knopf);color:#fff;font-weight:600;padding:11px 22px;border-radius:4px;text-decoration:none;border:0;font-size:17px;cursor:pointer}
.knopf:hover{background:var(--orange-knopf-h);color:#fff;text-decoration:none}
.platzhalter{background:#fff3cd;color:#5c4400;font-size:13px;padding:1px 6px;border-radius:3px;white-space:nowrap}
.pfeil{list-style:none;padding:0;margin:0}
.pfeil li{border-bottom:1px solid var(--linie);break-inside:avoid}
.pfeil.zwei{columns:2 220px;column-gap:32px}
.pfeil a{display:flex;justify-content:space-between;gap:12px;padding:9px 0;text-decoration:none;color:var(--tinte)}
.pfeil a:after{content:"\2192";color:var(--link)}
.pfeil a:hover{color:var(--link)}
.logo img{height:52px;width:auto;display:block}
details.menue{position:relative} details.menue summary{list-style:none;cursor:pointer;font-weight:600;padding:8px 12px;border:1px solid var(--linie);border-radius:4px}
details.menue summary::-webkit-details-marker{display:none}
details.menue[open] .menue-liste{display:block}
.menue-liste{display:none;position:absolute;right:0;top:46px;background:#fff;border:1px solid var(--linie);min-width:220px;z-index:10;padding:6px 0}
.menue-liste a{display:block;padding:9px 16px;color:var(--tinte);text-decoration:none}
.fuss{background:var(--petrol-t);color:#d7e6ee;padding:48px 0 28px;font-size:15px}
.fuss h4{color:#fff;font-size:16px;margin:0 0 10px}
.fuss a{color:#fff;text-decoration:none} .fuss a:hover{text-decoration:underline}
.fuss ul{list-style:none;padding:0;margin:0} .fuss li{padding:3px 0}
.fuss .klein{border-top:1px solid rgba(255,255,255,.2);margin-top:32px;padding-top:16px;color:#b9d0dc}
img{max-width:100%;height:auto}
.krume{font-size:14px;color:var(--grau);margin:18px 0 6px} .krume a{color:var(--link)}

/* Knöpfe: weiße Schrift (Wunsch Thomas 11.11.2026). Logo-Orange #ef7715 hätte nur 2,9:1, daher #e06a0c = 3,4:1 mit fetter 19-px-Schrift (große Schrift, Grenze 3:1) */
.knopf{background:#e06a0c;color:#fff;font-weight:700;font-size:19px;font-family:inherit}
.knopf:hover,.knopf:focus{background:#c95e08;color:#fff}
.knopf.such,.knopf.such:hover,.knopf.such:focus{color:#fff}
/* Kopf */
.kopf{background:#fff;border-bottom:1px solid var(--linie);position:relative;z-index:20}
.kopf:after{content:"";display:block;height:3px;background:linear-gradient(90deg,var(--orange) 0 33%,var(--tuerkis) 33%)}
.kopf .uk-container{min-height:76px}
.haupt a{margin-left:30px;color:var(--tinte);text-decoration:none;font-weight:600;padding:26px 0;position:relative}
.haupt a:hover{color:var(--link)}
/* Strich des aktiven Punkts liegt genau auf der Farblinie unter dem Kopf */
.haupt a.an:after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:3px;background:var(--orange)}
.kopf details.menue{position:static}
.menue summary{font-weight:600;padding:8px 14px;border:1px solid var(--linie);border-radius:4px;cursor:pointer;list-style:none}
.menue summary::-webkit-details-marker{display:none}
.menue[open] summary{background:var(--hell)}
.menue .tafel{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--linie);padding:8px 20px 20px;box-shadow:0 8px 16px rgba(0,0,0,.08)}
.menue .tafel h4{font-size:13px;letter-spacing:.04em;color:var(--grau);margin:16px 0 4px;font-weight:600}
.menue .tafel a{display:block;padding:9px 0;border-bottom:1px solid var(--linie);color:var(--tinte);text-decoration:none;font-weight:600}
/* Start: Bühne */
.buehne .foto{width:100%;height:clamp(280px,34vw,640px);object-fit:cover;object-position:50% 30%;display:block}
.buehne .unter-foto{margin-top:-120px;position:relative}
.suche{background:#fff;padding:32px 36px 28px;box-shadow:0 2px 18px rgba(8,60,82,.16);border-top:5px solid var(--orange)}
.suche h1{font-size:38px;line-height:1.15;margin:0 0 8px}
.suche .lead{color:var(--grau);margin:0 0 20px;font-size:18px}
.reiter{display:flex;border-bottom:1px solid var(--linie);margin:0 0 16px;padding:0;list-style:none}
.reiter a{display:block;padding:8px 18px 9px;color:var(--grau);text-decoration:none;font-weight:600;border-bottom:3px solid transparent;margin-bottom:-1px}
.reiter li:first-child a{padding-left:0}
.reiter .uk-active a{color:var(--tinte);border-bottom-color:var(--tuerkis)}
.feld{display:flex;gap:10px;position:relative}
.feld input{flex:1;font:inherit;padding:11px 14px;border:1px solid #8d9ba5;border-radius:4px;min-width:0}
.feld input:focus{outline:2px solid var(--tuerkis);outline-offset:1px;border-color:var(--tuerkis)}
.vorschlag{position:absolute;left:0;right:118px;top:100%;margin:4px 0 0;padding:4px 0;list-style:none;background:#fff;border:1px solid var(--linie);box-shadow:0 6px 16px rgba(0,0,0,.1);z-index:30;display:none}
.vorschlag.offen{display:block}
.vorschlag a{display:flex;justify-content:space-between;gap:12px;padding:8px 14px;color:var(--tinte);text-decoration:none}
.vorschlag a:hover,.vorschlag a.wahl{background:var(--hell)}
.vorschlag small{color:var(--grau);font-size:14px}
.vorschlag mark{background:none;color:inherit;font-weight:700}
.oft{font-size:15px;color:var(--grau);margin:14px 0 0} .oft a{margin-right:12px;white-space:nowrap;display:inline-block}
.kennzahlen{list-style:none;margin:0;padding:0 0 0 8px;display:grid;grid-template-columns:1fr 1fr;gap:22px 28px;align-self:end}
.kennzahlen b{display:block;font-size:34px;line-height:1.05;color:var(--petrol);font-weight:700}
.kennzahlen span{color:var(--grau);font-size:15px}
/* Abschnitte */
.abschnitt{padding:72px 0} .abschnitt.hell{background:var(--hell)} .abschnitt.creme{background:var(--creme)}
.abschnitt h2,.band h2{font-size:31px;line-height:1.2;margin:0 0 8px}
.unter{color:var(--grau);margin:0 0 30px;max-width:740px;font-size:18px}
.kopfzeile{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.kopfzeile .unter{margin:0}
.spalte h3{font-size:21px;margin:0 0 4px;padding-top:14px;border-top:4px solid var(--orange)}
.spalte:nth-child(2) h3{border-top-color:var(--tuerkis)} .spalte:nth-child(3) h3{border-top-color:var(--petrol)}
.spalte .zahl{color:var(--grau);font-size:15px;margin:0 0 8px}
.alle{display:inline-block;margin-top:14px;font-weight:600;text-decoration:none} .alle:after{content:" \2192"}
/* Arbeitgeberraster */
.firmen{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--linie);border:1px solid var(--linie)}
.firmen a{background:#fff;padding:18px 18px 16px;text-decoration:none;color:var(--tinte);display:block}
.firmen a:hover{background:var(--hell)}
.firmen b{display:block;font-size:19px;margin-bottom:2px}
.firmen span{display:block;color:var(--grau);font-size:15px}
.firmen .mehr{display:block;margin-top:10px;font-size:15px;color:var(--link);font-weight:600}
.firmen .werben{grid-column:span 3;background:var(--hell);display:flex;flex-direction:column;justify-content:center}
.firmen .werben:hover{background:#fff}
.firmen .werben span:not(.mehr){color:var(--tinte)}
.bald{margin:20px 0 0;color:var(--grau);font-size:15px}
.bald b{color:var(--tinte)}
/* Band öffentlicher Dienst */
.band{background:var(--petrol);color:#fff;padding:60px 0}
.band h2{color:#fff} .band p{color:#d7e6ee;margin:0}
.band p a{color:var(--orange);font-weight:600;text-decoration:underline;text-underline-offset:3px} .band p a:hover{color:#fff}
.band .pfeil li{border-bottom-color:rgba(255,255,255,.25)} .band .pfeil a{color:#fff} .band .pfeil a:after{color:var(--orange)}
/* Studienverlauf */
.verlauf{margin:6px 0 40px}
.verlauf .jahre{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.verlauf .jahr b{display:block;font-size:15px;color:var(--grau);font-weight:600;margin-bottom:6px}
.verlauf .bloecke{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}
.verlauf .bloecke i{height:34px;display:block}
.verlauf .h{background:var(--tuerkis)} .verlauf .b{background:var(--orange)}
.legende{display:flex;gap:24px;flex-wrap:wrap;margin:12px 0 0;padding:0;list-style:none;font-size:15px;color:var(--grau)}
.legende i{display:inline-block;width:14px;height:14px;margin-right:6px;vertical-align:-2px}
.modell .ziffer{font-size:15px;font-weight:700;color:var(--orange-knopf);letter-spacing:.04em}
.modell h3{font-size:20px;margin:4px 0 6px}
.modell p{margin:0 0 8px}
/* Länder, Ratgeber, Fragen */
.laender{columns:4 200px;column-gap:32px} .laender a{display:block;padding:7px 0;border-bottom:1px solid var(--linie);text-decoration:none}
.aufmacher img,.artikel img{aspect-ratio:3/2;object-fit:cover;width:100%;display:block;background:var(--hell)}
.aufmacher h3{font-size:25px;line-height:1.25;margin:16px 0 6px}
.aufmacher h3 a,.artikel h3 a{color:var(--tinte);text-decoration:none} .aufmacher h3 a:hover,.artikel h3 a:hover{color:var(--link)}
.aufmacher p{color:var(--grau);margin:0}
.artikel{display:grid;grid-template-columns:150px 1fr;gap:18px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--linie)}
.artikel:last-child{border:0;margin:0;padding:0}
.artikel h3{font-size:19px;margin:0 0 4px} .artikel p{margin:0;color:var(--grau);font-size:16px}
.fragen details{border-bottom:1px solid var(--linie)} .fragen details:first-child{border-top:1px solid var(--linie)}
.fragen summary{list-style:none;cursor:pointer;padding:16px 36px 16px 0;font-weight:600;font-size:18px;position:relative}
.fragen summary::-webkit-details-marker{display:none}
.fragen summary:after{content:"+";position:absolute;right:6px;top:12px;font-size:24px;color:var(--link);font-weight:400}
.fragen details[open] summary:after{content:"\2212"}
.fragen details p{margin:0 0 18px;max-width:760px}
/* Unterseiten */
.seitenkopf{background:var(--hell);padding:6px 0 34px;border-bottom:1px solid var(--linie)}
.seitenkopf h1{font-size:40px;line-height:1.15;margin:6px 0 12px}
.seitenkopf .lead{font-size:19px;max-width:760px;margin:0}
.seitenkopf.mit-bild{background:var(--creme);padding:0 0 40px;border-bottom:0}
.mit-bild .foto{width:100%;height:clamp(240px,28vw,460px);object-fit:cover;object-position:50% 20%;display:block}
.mit-bild .kopfkasten{position:relative;margin-top:-56px;max-width:860px;background:#fff;padding:22px 34px 26px;border-top:5px solid var(--orange);box-shadow:0 2px 18px rgba(8,60,82,.16)}
.krume{font-size:14px;color:var(--grau);margin:18px 0 0} .krume a{color:var(--link);text-decoration:none}
.steckbrief{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;margin:26px 0 0;padding:0;border-top:1px solid #c9d6de}
.steckbrief div{padding:12px 16px 0 0}
.steckbrief dt{font-size:14px;color:var(--grau)} .steckbrief dd{margin:2px 0 0;font-weight:600}
.steckbrief dd,.steckbrief dt{overflow-wrap:anywhere}
.steckbrief .gross{background:#fff;margin:12px 12px 0 0;padding:10px 14px 12px;border-left:4px solid var(--orange);border-radius:0 6px 6px 0}
.steckbrief .gross dd{font-size:34px;line-height:1.1;font-weight:700;color:var(--petrol);font-variant-numeric:tabular-nums}
.steckbrief .gross a{color:inherit;text-decoration:none}.steckbrief .gross a:hover{color:var(--link);text-decoration:underline}
.kopfkasten .steckbrief{grid-template-columns:repeat(3,minmax(0,1fr))}
.inhalt{padding:40px 0 64px}
.text{max-width:720px}
.text h2{font-size:27px;line-height:1.25;margin:44px 0 12px;scroll-margin-top:24px}
.text h3{font-size:20px;margin:28px 0 8px}
.text p{margin:0 0 16px} .text ul,.text ol{margin:0 0 18px;padding-left:22px} .text li{margin:4px 0}
.text > :first-child{margin-top:0}
.text .pfeil,.text .naehe{padding-left:0}.text .pfeil li,.text .naehe li{margin:0}
.kasten{background:var(--creme);border-left:4px solid var(--orange);border-radius:0 6px 6px 0;padding:18px 22px;margin:28px 0}
.kasten.blau{background:var(--hell);border-left-color:var(--tuerkis)}
.kasten h2,.kasten h3{margin:0 0 8px;font-size:19px} .kasten ul{margin:0;padding-left:20px} .kasten p:last-child{margin:0}
.tabelle{width:100%;border-collapse:collapse;margin:8px 0 20px;font-size:16px}
.tabelle th{text-align:left;font-size:14px;color:var(--grau);font-weight:600;border-bottom:2px solid var(--tinte);padding:8px 12px 8px 0}
.tabelle td{border-bottom:1px solid var(--linie);padding:10px 12px 10px 0;vertical-align:top}
.tabelle td:first-child{color:var(--grau);white-space:nowrap}
.seite-rechts{position:sticky;top:20px}
/* In den PHP-Vorlagen klebt nur das Inhaltsverzeichnis; es steht zuletzt in der Leiste */
.seite-rechts.lose{position:static;height:100%}.seite-rechts.lose .auf-seite{position:sticky;top:20px;margin:32px 0 0}
.auf-seite{border-left:1px solid var(--linie);padding-left:20px;margin-bottom:32px}
.auf-seite h3,.leiste-block h3{font-size:14px;letter-spacing:.04em;color:var(--grau);margin:0 0 8px;font-weight:600}
.auf-seite a{display:block;padding:5px 0;font-size:15px;text-decoration:none;color:var(--tinte);line-height:1.35}
.auf-seite a:hover{color:var(--link)}
.auf-seite a.an{color:var(--link);font-weight:600;margin-left:-21px;padding-left:17px;border-left:4px solid var(--orange)}
.auf-seite a.an:before{content:"\25B8";color:var(--orange);margin-right:6px}
.leiste-block{background:var(--hell);padding:20px 22px;margin-bottom:20px}
.leiste-block .pfeil a{font-size:16px}
.knopf.voll{display:block;text-align:center;margin-top:10px}
.sprung{display:none}
.karte{background:var(--hell);border:1px solid var(--linie);height:260px;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--grau);font-size:15px;margin:8px 0 20px}
.eintrag{padding:14px 0;border-bottom:1px solid var(--linie)}
.eintrag h3{font-size:19px;margin:0} .eintrag h3 a{text-decoration:none} .eintrag p{margin:3px 0 0;font-size:16px;color:var(--grau)}
.naehe{list-style:none;padding:0;margin:0;columns:2 220px;column-gap:28px}
.naehe li{break-inside:avoid;border-bottom:1px solid var(--linie)}
.naehe a{display:flex;justify-content:space-between;padding:9px 0;text-decoration:none;color:var(--tinte)}
.naehe small{color:var(--grau);font-size:15px}
.text .platzhalter,.stand .platzhalter{white-space:normal}
.stand{font-size:14px;color:var(--grau);margin:14px 0 0}
@media(max-width:959px){
.buehne .foto{height:280px}.buehne .unter-foto{margin-top:-56px}.suche{padding:22px 20px}.suche h1{font-size:28px}
.suche .lead{font-size:17px}.feld{flex-direction:column}.vorschlag{right:0;top:52px}
.kennzahlen{padding:28px 4px 0}.kennzahlen b{font-size:28px}
.abschnitt{padding:48px 0}.abschnitt h2,.band h2{font-size:25px}.band{padding:44px 0}
.verlauf .jahre{gap:8px}.verlauf .bloecke i{height:24px}
.aufmacher h3{font-size:21px}.firmen{grid-template-columns:1fr 1fr}.firmen .werben{grid-column:1/-1}.firmen a{padding:14px 12px}.firmen b{font-size:17px}.laender{columns:2}.artikel{grid-template-columns:96px 1fr;gap:14px}
.seitenkopf h1{font-size:29px}.seitenkopf .lead{font-size:17px}.mit-bild .foto{height:200px}.mit-bild .kopfkasten{margin-top:-40px;padding:16px 18px 20px}.kopfkasten .steckbrief{grid-template-columns:repeat(2,minmax(0,1fr))}.text h2{font-size:23px;scroll-margin-top:64px}
.sprung{display:flex;gap:4px;overflow-x:auto;position:sticky;top:0;background:#fff;z-index:15;border-bottom:1px solid var(--linie);padding:8px 0;margin:0 -15px;padding-left:15px}
.sprung a{white-space:nowrap;padding:4px 10px;font-weight:600;font-size:15px;text-decoration:none}
.sprung a.an{background:#e06a0c;color:#fff}
.seite-rechts{position:static}.auf-seite{display:none}}
/* Steckbrief am Handy: eine Zeile je Angabe, Bezeichnung links, Wert rechts */
@media(max-width:639px){
.steckbrief,.kopfkasten .steckbrief{grid-template-columns:1fr 1fr;margin-top:20px}
.steckbrief div:not(.gross){grid-column:1/-1;display:grid;grid-template-columns:minmax(100px,36%) 1fr;gap:14px;align-items:baseline;padding:11px 0;border-bottom:1px solid #c9d6de}
.steckbrief div:not(.gross) dd{margin:0;line-height:1.35}}
/* Bausteine der PHP-Vorlagen (Bestandstext) */
.kopfbild{margin:0 0 24px} .kopfbild img{display:block;width:100%;height:auto;border-radius:4px}
.text img{max-width:100%;height:auto}
.text .kasten > :last-child{margin-bottom:0}
.leiste-block .alle{font-size:15px;margin-top:10px}
.kasten h2.kurz{font-size:19px;margin:0 0 8px}
/* Fachseiten: Listen nach Aufbau gestaltet (studiengang_gestalten); Akzente nur mit gerader Kante */
.text h2{padding-top:30px;border-top:1px solid var(--linie);margin-top:52px}
.text ul.karten{list-style:none;padding:0;margin:4px 0 22px;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.text ul.karten li{margin:0;padding:14px 16px 12px;background:#f3f7f9;border-top:3px solid var(--tuerkis);border-radius:0 0 6px 6px;font-size:16px;line-height:1.5}
.karten li strong{display:block;font-size:17px;margin-bottom:4px;color:var(--tinte);hyphens:auto;overflow-wrap:break-word}
.text ul.spalten{list-style:none;padding:0;columns:2;column-gap:28px;margin:4px 0 22px}
.text ul.spalten li{break-inside:avoid;position:relative;padding:5px 0 5px 18px;margin:0;border-bottom:1px solid var(--linie)}
.spalten li:before{content:"";position:absolute;left:0;top:14px;width:7px;height:7px;background:var(--orange)}
.text ul.verweise{list-style:none;padding:0;margin:4px 0 22px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}
.text ul.verweise li{margin:0;padding:12px 36px 12px 14px;position:relative;border:1px solid var(--linie);border-left:4px solid var(--tuerkis);border-radius:0 6px 6px 0;font-size:15px;line-height:1.45}
.verweise li a{font-weight:600;font-size:16px}
.verweise li:after{content:"\2192";position:absolute;right:14px;top:12px;color:var(--orange);font-weight:700}
.text ol.schritte{list-style:none;padding:0;margin:8px 0 22px;counter-reset:schritt}
.text ol.schritte li{counter-increment:schritt;position:relative;padding:4px 0 14px 50px;margin:0}
.schritte li:before{content:counter(schritt);position:absolute;left:0;top:0;width:34px;height:34px;line-height:34px;text-align:center;background:var(--tinte);color:#fff;font-weight:700;border-radius:6px}
.schritte li:not(:last-child):after{content:"";position:absolute;left:16px;top:38px;bottom:2px;width:2px;background:var(--linie)}
.text ul.balken{list-style:none;padding:0;margin:8px 0 6px}
.text ul.balken li{margin:0 0 10px}
.balken span{display:block;font-size:15px;margin-bottom:3px}
.balken b{display:block;min-width:2.4em;padding:1px 8px;background:var(--link);color:#fff;text-align:right;font-size:14px;border-radius:0 4px 4px 0;box-sizing:border-box}
.balken-notiz{font-size:14px;color:var(--grau)}
dl.kennzahlen{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:4px 0 20px}
dl.kennzahlen div{padding:12px 16px;background:#fff7f0;border-left:4px solid var(--orange);border-radius:0 6px 6px 0}
dl.kennzahlen dt{font-size:14px;color:var(--grau)}dl.kennzahlen dd{margin:2px 0 0;font-size:20px;font-weight:700;line-height:1.35}dl.kennzahlen small{display:block;font-size:14px;font-weight:400;color:var(--grau)}
@media (max-width:640px){.text ul.spalten{columns:1}}
/* Freie Studienplätze: Kopf mit Gesamtzahl, Karten mit Akzent links (gerade Kante) */
.stellen-kopf{display:flex;gap:18px;align-items:center;margin:8px 0 18px;padding:14px 18px;background:#f3f7f9;border-left:4px solid var(--tuerkis);border-radius:0 6px 6px 0}
.stellen-kopf p{margin:0;line-height:1.45}
.stellen-kopf .zahl{font-size:40px;font-weight:700;line-height:1;color:var(--tinte);font-variant-numeric:tabular-nums}
.stellen-kopf small{font-size:14px;color:var(--grau)}
.balkengrafik{margin:0 0 22px;padding:16px 18px 12px;border:1px solid var(--linie);border-radius:6px}
.balkengrafik figcaption{margin:0 0 10px;line-height:1.4}.balkengrafik figcaption small{display:block;font-size:14px;color:var(--grau)}
.text .balkengrafik ol{list-style:none;margin:0;padding:0}
.text .balkengrafik li{display:grid;grid-template-columns:200px 1fr;gap:12px;align-items:center;margin:0;padding:4px 0;font-size:15px}
.balkengrafik li a{text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.balkengrafik li a:hover{text-decoration:underline}
.balkengrafik .spur{display:flex;align-items:center;gap:8px}
.balkengrafik .balken{display:block;height:14px;background:var(--petrol);border-radius:0 4px 4px 0}
.balkengrafik li:hover .balken{background:var(--link)}
.balkengrafik li.eigen .balken{background:var(--orange)}.balkengrafik li strong{font-weight:700}
.balkengrafik .n{font-size:14px;font-weight:600;color:var(--tinte);font-variant-numeric:tabular-nums}
@media (max-width:640px){.text .balkengrafik li{grid-template-columns:1fr;gap:2px;padding:5px 0}
.text .balkengrafik.vergleich li{grid-template-columns:118px 1fr;gap:8px;padding:3px 0;font-size:14px}.balkengrafik.vergleich li a{white-space:normal;line-height:1.25}}
.text ul.stellen{list-style:none;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.text ul.stellen li{margin:0;padding:14px 16px;display:flex;flex-direction:column;background:#fff;border:1px solid var(--linie);border-left:4px solid var(--orange);border-radius:0 6px 6px 0}
.stellen b{font-weight:600;line-height:1.35;font-size:17px}.stellen b a{text-decoration:none}.stellen b a:hover{text-decoration:underline}
.stellen .firma{display:block;margin-top:4px;font-size:15px;color:var(--grau)}
.stellen dl{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;margin:10px 0 0;font-size:14px}.stellen dl div{display:contents}
.stellen dt{color:var(--grau)}.stellen dd{margin:0;font-weight:600}
.stellen .verg{margin:auto 0 0;padding-top:10px;font-size:15px}.stellen .verg strong{font-size:18px}
.stellen-mehr{margin:-6px 0 20px}.stellen-mehr[open]{margin-top:0}
.stellen-mehr summary{list-style:none;cursor:pointer;display:inline-block;padding:8px 16px;border:1px solid var(--link);border-radius:6px;color:var(--link);font-weight:600}
.stellen-mehr summary::-webkit-details-marker{display:none}.stellen-mehr summary:after{content:" \25BE"}
.stellen-mehr summary:hover{background:var(--hell)}.stellen-mehr[open] summary{display:none}
.stellen-alle{margin:0 0 8px}
.stellen-alle .knopf{display:inline-block;padding:10px 18px;border-radius:6px;font-weight:700;text-decoration:none}
@media (max-width:640px){.stellen-kopf{flex-direction:column;align-items:flex-start;gap:6px}.stellen-alle .knopf{display:block;text-align:center}}
.quellen{border-top:1px solid var(--linie);margin:40px 0 0;padding:20px 0 0;font-size:15px;color:var(--grau)}
.quellen h3{font-size:16px;margin:0 0 6px} .quellen ul{padding-left:18px;margin:0 0 8px}
.text .tabelle td:first-child{white-space:normal;color:var(--tinte)}
.bewertung{border-top:1px solid var(--linie);margin:40px 0 0;padding:24px 0 0}
.bewertung .rating_form_wrap.rating_form_1{text-align:left}
.bewertung .rating_before_content{font-weight:600;margin:0 0 4px}
.bewertung .rating_form_1 .rating_form .rf_item{font-size:30px;color:#c9d6de;cursor:pointer;line-height:1}
.bewertung .rating_form_1 .rating_form .rf_item:before{content:"\2605"}
.bewertung .rating_form_1 .rating_form .rf_item.hover{color:var(--orange)}
.bewertung .rating_form_1 .def{background:none;color:var(--grau);font-size:15px;margin-left:8px}

/* Wiki (11.11.2026): Buchstabenleiste, Registereinträge, automatisch verlinkte Begriffe */
.wiki-abc { display: flex; flex-wrap: wrap; gap: .25rem .6rem; margin: .8rem 0 0; font-weight: 600; }
.wiki-abc span { color: #9aa5ad; font-weight: 400; }
.wiki-eintrag { padding: .2rem 0 .4rem; border-bottom: 1px solid #e3e8ec; scroll-margin-top: 90px; }
.wiki-eintrag h3 { margin: .9rem 0 .3rem; }
.wiki-eintrag p { margin: 0 0 .5rem; }
.wiki-weiter { font-size: .95rem; }
.wiki-siehe li { margin-bottom: .4rem; }
a.wiki-begriff { text-decoration: underline dotted; text-underline-offset: 3px; }
/* Kurzfassung im Kasten ohne Trennlinie der Abschnittsüberschriften */
.text .kasten h2.kurz{border-top:0;padding-top:0;margin-top:0}

/* Formular Unternehmensprofil (/unternehmensprofil-anfragen/) */
.anfrage .uk-form-label{font-weight:600;font-size:15px;color:var(--tinte)}
.anfrage .uk-input,.anfrage .uk-textarea{border:1px solid #b9c6ce;border-radius:4px;font-size:16px;color:var(--tinte);background:#fff}
.anfrage .uk-input:focus,.anfrage .uk-textarea:focus{border-color:var(--link);outline:2px solid rgba(10,110,150,.2)}
.anfrage .uk-form-danger{border-color:#b3261e}
.anfrage .pflicht{color:#b3261e}
.text .feldfehler{margin:4px 0 0;font-size:14px;color:#b3261e}
.anfrage .einwilligung{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.5}.anfrage .uk-checkbox{flex:none;margin-top:3px}
.anfrage .fang{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.anfrage .knopf{margin-top:4px}
.anfrage-fehler,.anfrage-ok{margin:0 0 22px;padding:14px 18px;border-left:4px solid #b3261e;border-radius:0 6px 6px 0;background:#fdf1f0}
.anfrage-ok{border-left-color:var(--tuerkis);background:var(--hell);padding:20px 22px}.anfrage-ok h2{margin-top:0}
.text .anfrage-fehler p{margin:0}
.anfrage-liste{margin:0;padding-left:18px;font-size:15px;line-height:1.5}.anfrage-liste li{margin:0 0 6px}

/* Handymenü (12.11.2026) nach Vorbild bibliothek.info: helle Fläche statt UIkit-Dunkel, Farben des Hauses */
.mm-auf{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--linie);border-radius:6px;background:#fff;color:var(--tinte);font:inherit;font-weight:600;cursor:pointer}
.uk-offcanvas-bar.mm{width:min(88vw,360px);padding:0 0 24px;background:#f6f9fb;color:var(--tinte);box-shadow:-12px 0 40px rgba(11,79,108,.18)}
#mm-menue .uk-offcanvas-overlay::before,.uk-offcanvas-overlay::before{background:rgba(11,79,108,.35)}
.mm-kopf{display:flex;align-items:center;justify-content:space-between;padding:10px 16px 10px 18px;background:#fff;border-bottom:1px solid var(--linie);position:sticky;top:0;z-index:2}
.mm-logo img{height:40px;width:auto;display:block}
.uk-offcanvas-bar.mm .mm-zu{position:static;width:42px;height:42px;border-radius:50%;background:var(--hell);color:var(--petrol);display:inline-flex;align-items:center;justify-content:center}
.mm-suche{display:flex;align-items:center;gap:9px;margin:16px 18px 14px;padding:0 15px;height:50px;background:#fff;border:1.5px solid #cfdbe2;border-radius:14px;color:var(--link)}
.mm-suche:focus-within{border-color:var(--link);box-shadow:0 0 0 3px #d7eaf3}
.uk-offcanvas-bar.mm .mm-suche input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:16px;color:var(--tinte)}
.uk-offcanvas-bar.mm .mm-suche input::placeholder{color:#6b7783}
.mm-kacheln{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin:0 18px 18px}
.uk-offcanvas-bar.mm .mm-kacheln a{display:flex;align-items:center;gap:9px;padding:11px;background:#fff;border-radius:14px;box-shadow:0 3px 12px rgba(11,79,108,.07);color:var(--tinte);font-weight:700;font-size:15px;line-height:1.2;text-decoration:none}
.mm-kachel-zeichen{flex:0 0 34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:var(--hell);color:var(--petrol)}
.mm-kacheln a:nth-child(2) .mm-kachel-zeichen,.mm-kacheln a:nth-child(3) .mm-kachel-zeichen{background:#fdeedd;color:#a5480a}
.mm-kachel-text{min-width:0;hyphens:auto}
.uk-offcanvas-bar.mm .mm-nav{margin:0 18px;background:#fff;border-radius:18px;padding:5px 7px;box-shadow:0 3px 14px rgba(11,79,108,.06)}
.uk-offcanvas-bar.mm .mm-nav>li>a{display:flex;align-items:center;gap:11px;padding:12px 9px;color:var(--tinte);font-weight:700;font-size:17px}
.uk-offcanvas-bar.mm .mm-nav>li+li{border-top:1px solid #e8eef2}
.mm-zeichen{flex:0 0 36px;height:36px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;background:var(--hell);color:var(--petrol)}
.mm-pfeil{margin-left:auto;width:9px;height:9px;border-right:2.5px solid currentColor;border-bottom:2.5px solid currentColor;transform:rotate(45deg);opacity:.5;transition:transform .2s}
.mm-nav>li.uk-open .mm-pfeil{transform:rotate(-135deg)}
.uk-offcanvas-bar.mm .mm-nav .uk-nav-sub{padding:0 0 10px 49px}
.uk-offcanvas-bar.mm .mm-nav .uk-nav-sub a{display:block;padding:7px 7px;color:#33424e;font-size:16px;border-radius:9px;text-decoration:none}
.uk-offcanvas-bar.mm .mm-nav .uk-nav-sub a:hover,.uk-offcanvas-bar.mm .mm-nav .uk-nav-sub .uk-active a{background:var(--hell);color:var(--petrol)}
.uk-offcanvas-bar.mm .mm-gruppe{margin:12px 0 3px 7px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#a5480a}
.uk-offcanvas-bar.mm .mm-alle a{font-weight:800;color:var(--link)!important}
.uk-offcanvas-bar.mm .mm-schilder{display:flex;flex-wrap:wrap;gap:6px;padding:3px 7px 12px 49px}
.uk-offcanvas-bar.mm .mm-schilder>li>a{padding:4px 11px;border:1.5px solid #d6e1e7;border-radius:999px;font-size:15px}
.uk-offcanvas-bar.mm .mm-schilder>li.mm-gruppe,.uk-offcanvas-bar.mm .mm-schilder>li.mm-zeile,.uk-offcanvas-bar.mm .mm-schilder>li.mm-alle{flex-basis:100%}
.uk-offcanvas-bar.mm .mm-schilder>li.mm-zeile>a,.uk-offcanvas-bar.mm .mm-schilder>li.mm-alle>a{border:0;padding:6px 7px;font-size:16px}
.mm-fuss{margin:18px 18px 0;text-align:center}
.uk-offcanvas-bar.mm .mm-knopf{display:block;padding:13px 16px;border-radius:14px;background:#e06a0c;color:#fff;font-weight:800;text-decoration:none}
.uk-offcanvas-bar.mm .mm-knopf:hover{background:#c95e08}
.mm-fuss p{margin:14px 0 0;font-size:15px}.uk-offcanvas-bar.mm .mm-fuss p a{color:#33424e}

/* Lupe im Hauptmenü, Suchseite und 404 (12.11.2026, Vorbild bibliothek.info) */
.haupt a.lupe{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;margin-left:22px;border-radius:50%;background:var(--hell);color:var(--petrol);vertical-align:middle}
.haupt a.lupe:hover,.haupt a.lupe.an{background:var(--petrol);color:#fff}.haupt a.lupe.an:after{display:none}
.such-kopf{padding-bottom:30px}
.such-feld{display:flex;align-items:center;gap:10px;max-width:760px;margin:18px 0 0;padding:0 0 0 16px;background:#fff;border:1.5px solid #cfdbe2;border-radius:12px;color:var(--link);overflow:hidden}
.such-feld:focus-within{border-color:var(--link);box-shadow:0 0 0 3px #d7eaf3}
.such-feld input{flex:1;min-width:0;height:56px;border:0;outline:0;background:transparent;font:inherit;font-size:18px;color:var(--tinte)}
.such-feld .knopf{align-self:stretch;border-radius:0;padding:0 26px}
.haeufig{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 0;font-size:15px}
.haeufig span{color:var(--grau);margin-right:2px}
.haeufig a{padding:3px 12px;border:1.5px solid #c9d8e1;border-radius:999px;background:#fff;color:var(--link);text-decoration:none}
.haeufig a:hover{border-color:var(--link)}.haeufig a.start{border:0;background:none;padding:3px 0;font-weight:600}
.such-inhalt{max-width:none;padding:34px 0 50px}
.such-summe{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 26px}
.such-summe a{padding:3px 12px;border:1.5px solid #c9d8e1;border-radius:999px;text-decoration:none;font-size:15px}
.such-summe a span{font-weight:700;color:var(--grau);margin-left:2px}
.such-gruppe{margin:0 0 34px;scroll-margin-top:20px}
.text .such-gruppe h2{margin:0 0 2px;font-size:26px}.such-gruppe h2 .anzahl{font-size:15px;font-weight:700;color:var(--grau);background:var(--hell);padding:2px 9px;border-radius:999px;vertical-align:middle}
.text .such-gruppe p.unter{margin:0 0 12px;color:var(--grau);font-size:15px}
.text ul.treffer{list-style:none;margin:0;padding:0;border:1px solid var(--linie);border-radius:8px;background:#fff;max-width:900px}
.text ul.treffer li{margin:0;padding:12px 18px;border-top:1px solid var(--linie)}.text ul.treffer li:first-child{border-top:0}
.treffer a{font-weight:700;font-size:18px;text-decoration:none}.treffer a:hover{text-decoration:underline}
.treffer li span{display:block;font-size:15px;color:var(--grau);margin-top:2px}
.text p.such-mehr{font-size:15px;color:var(--grau);margin:8px 0 0}
.such-leer{max-width:900px;margin:0 0 10px;padding:16px 20px;background:var(--hell);border-left:4px solid var(--tuerkis);border-radius:0 6px 6px 0}.text .such-leer p{margin:0}
.wegweiser h2{font-size:26px;margin:30px 0 14px}.wegweiser h2:first-child{margin-top:0}
.weg-raster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.weg-karte{display:flex;flex-direction:column;gap:4px;padding:16px 18px;background:#fff;border:1px solid var(--linie);border-radius:8px;text-decoration:none;color:var(--tinte)}
.weg-karte:hover{border-color:var(--link);box-shadow:0 4px 14px rgba(11,79,108,.08)}
.weg-karte b{font-size:18px;color:var(--link)}.weg-karte span{font-size:15px;color:var(--grau)}.weg-karte .mm-zeichen{align-self:flex-start;width:36px;margin-bottom:6px;color:var(--petrol)}
.weg-karte.klein b{font-size:17px;color:var(--tinte)}
.fehlt-zeichen{display:flex;align-items:center;gap:12px;margin:22px 0 0;color:var(--petrol)}
.fehlt-zeichen svg{width:46px;height:46px}.fehlt-zeichen span{font-size:40px;font-weight:800;letter-spacing:.04em;color:var(--orange)}
.fehlt code{background:#fff;padding:1px 6px;border-radius:4px;font-size:16px}
@media (max-width:959px){.weg-raster{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.such-feld input{height:50px;font-size:16px}.such-feld .knopf{padding:0 16px;font-size:17px}.text .such-gruppe h2,.wegweiser h2{font-size:22px}}

/* Aufklappende Suche im Kopf, Einblenden der Treffer, Hutwurf auf der 404 (12.11.2026) */
.kopf-suche{display:inline-block;width:40px;height:40px;margin-left:22px;vertical-align:middle;position:relative}
.kopf-suche input{position:absolute;right:0;top:0;width:40px;opacity:0;height:40px;padding:0;border:1.5px solid transparent;border-radius:20px;background:#fff;
  font:inherit;font-size:15px;color:var(--tinte);outline:0;transition:width .35s cubic-bezier(.2,.8,.2,1),opacity .25s ease,padding .35s ease,border-color .2s}
.kopf-suche.offen input{width:300px;opacity:1;padding:0 48px 0 16px;border-color:#cfdbe2;box-shadow:0 0 0 3px #d7eaf3}
.kopf-suche .lupe{position:absolute;right:0;top:0;z-index:1;margin-left:0!important;transition:background .2s,color .2s,transform .35s cubic-bezier(.2,.8,.2,1)}
.kopf-suche.offen .lupe{background:var(--petrol);color:#fff;transform:rotate(90deg)}
.fehlt-zeichen .hut{display:inline-flex;color:var(--petrol)}
.fehlt-zeichen .z{font-size:40px;font-weight:800;letter-spacing:.02em;color:var(--orange);line-height:1}
@media (prefers-reduced-motion:no-preference){
  .such-gruppe,.such-summe,.such-leer,.wegweiser h2,.weg-karte,.wegweiser .pfeil{animation:auftauchen .45s cubic-bezier(.2,.8,.2,1) both}
  .such-gruppe:nth-of-type(2){animation-delay:.08s}.such-gruppe:nth-of-type(3){animation-delay:.16s}.such-gruppe:nth-of-type(4){animation-delay:.24s}.such-gruppe:nth-of-type(5){animation-delay:.32s}
  .weg-karte:nth-child(2){animation-delay:.06s}.weg-karte:nth-child(3){animation-delay:.12s}.weg-karte:nth-child(4){animation-delay:.18s}
  .weg-karte:nth-child(5){animation-delay:.24s}.weg-karte:nth-child(6){animation-delay:.3s}.weg-karte:nth-child(7){animation-delay:.36s}.weg-karte:nth-child(8){animation-delay:.42s}
  .fehlt-zeichen .hut{animation:hutwurf 1.1s cubic-bezier(.3,.7,.3,1) .15s both;transform-origin:50% 100%}
  .fehlt-zeichen .z{animation:ziffer .5s cubic-bezier(.2,.8,.2,1) both}
  .fehlt-zeichen .z:nth-of-type(2){animation-delay:.25s}.fehlt-zeichen .z:nth-of-type(3){animation-delay:.38s}.fehlt-zeichen .z:nth-of-type(4){animation-delay:.51s}
  .fehlt-zeichen:hover .hut{animation:wackeln .6s ease}
}
@keyframes auftauchen{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes ziffer{from{opacity:0;transform:translateY(14px) scale(.9)}to{opacity:1;transform:none}}
@keyframes hutwurf{0%{transform:translateY(0) rotate(0)}35%{transform:translateY(-34px) rotate(-200deg)}65%{transform:translateY(0) rotate(-360deg)}
  78%{transform:translateY(-6px) rotate(-352deg)}90%{transform:translateY(0) rotate(-364deg)}100%{transform:translateY(0) rotate(-360deg)}}
@keyframes wackeln{0%,100%{transform:rotate(0)}25%{transform:rotate(-12deg)}60%{transform:rotate(8deg)}}
.haupt>a{transition:opacity .25s ease}.haupt:has(.kopf-suche.offen)>a{opacity:0;pointer-events:none}
.kopf-suche.offen input{width:420px}
.fehlt-zeichen .z+.z{margin-left:-11px}

/* Autovervollständigung (12.11.2026) */
.such-feld,.mm-suche{position:relative;overflow:visible}
.vorschlaege{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;list-style:none;margin:0;padding:6px;background:#fff;
  border:1px solid #cfdbe2;border-radius:12px;box-shadow:0 12px 30px rgba(11,79,108,.16);text-align:left}
.vorschlaege[hidden]{display:none}
.kopf-suche .vorschlaege{left:auto;right:0;width:420px;top:46px}
.vorschlaege li{margin:0;padding:0}
.vorschlaege a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border-radius:8px;color:var(--tinte)!important;
  text-decoration:none;font-weight:400!important;font-size:16px!important;margin:0!important;line-height:1.3}
.vorschlaege a:after{display:none!important}
.vorschlaege b{font-weight:700;color:var(--petrol)}
.vorschlaege small{flex:none;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--grau)}
.vorschlaege li.an a{background:var(--hell)}
@media (prefers-reduced-motion:no-preference){.vorschlaege:not([hidden]){animation:auftauchen .18s ease both}}
.such-feld .knopf{border-radius:0 10px 10px 0}
.tabelle .ort{display:block;font-size:14px;color:var(--grau);margin-top:2px}
.tabelle .zahl{text-align:right;padding-right:0;white-space:nowrap}
/* Magazin (13.11.2026) */
.dach{font-size:14px;color:var(--grau);margin:10px 0 0;letter-spacing:.02em}
.mag-filter{list-style:none;padding:0;margin:0 0 22px;display:flex;flex-wrap:wrap;gap:8px}
.mag-filter a{display:block;padding:6px 14px;border:1px solid var(--linie);border-radius:4px;font-size:15px;color:var(--tinte);text-decoration:none}
.mag-filter .uk-active a,.mag-filter a:hover{background:var(--petrol);border-color:var(--petrol);color:#fff}
.mag-karte{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--linie);border-radius:6px;overflow:hidden}
.mag-bild img{display:block;width:100%;aspect-ratio:3/2;height:auto;object-fit:cover}
.mag-inhalt{display:flex;flex-direction:column;flex:1;padding:16px 18px 18px}
.mag-meta{font-size:14px;color:var(--grau);margin:0 0 6px}
.mag-karte h2{font-size:20px;line-height:1.3;margin:0 0 8px}
.mag-karte h2 a{color:var(--tinte);text-decoration:none}.mag-karte h2 a:hover{color:var(--link)}
.mag-karte p{font-size:16px;margin:0 0 12px}
.mag-mehr{margin-top:auto;font-weight:600;font-size:15px;color:var(--link);text-decoration:none}
.mag-liste{list-style:none;padding:0;margin:0}
.mag-liste li a{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid #c9d6de;color:var(--link);text-decoration:none;font-size:16px}
.mag-liste li.uk-active a{font-weight:600;color:var(--tinte)}
.mag-liste b{font-weight:600;color:var(--grau)}
