/*
Theme Name: Fachschaft Agrar
Theme URI: https://fs.bauernschwoof.de/
Author: Fachschaft Agrarwissenschaften Bonn
Description: Theme der Fachschaft Agrarwissenschaften (Entwurf B, Oktober 2026). Leiste „Rücken“, Frag die Fachschaft, Termine mit Kalender-Abo, Begriffe, Kontaktformular und Kummerkasten, Deutsch/Englisch/Leichte Sprache – ohne Plugins. Nach dem Aktivieren: Design → Fachschaft einrichten.
Version: 1.6.0
Requires at least: 6.4
Tested up to: 6.5
Requires PHP: 8.0
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: fachschaft-agrar
*/

/* =====================================================================
   Ergänzungen zur Basis (fs/fs-basis.css bleibt unverändert).
   Weidegrün nur für Hover, Unterstriche, einzelne Markierungen.
   ===================================================================== */

/* ---------- Leiste ---------- */
.leiste-fuss a:hover{color:var(--tinte)}
.titel[aria-current]{cursor:default}
main#inhalt:focus{outline:none}

/* ---------- Startseite: Bildfelder ---------- */
.raum{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:30px 24px;margin-bottom:110px}
.werk{display:grid;gap:10px;align-content:start}
.werk .bild{width:100%}
/* Bildfeld ohne Foto: Schriftkachel (schwarz auf weiß, ein Wort, kein „Foto folgt“) */
.bild.kachel{background:var(--papier);border:1px solid var(--tinte);display:flex;align-items:flex-end;padding:clamp(14px,2vw,26px)}
.bild.kachel .kachel-wort{font-size:clamp(34px,4.6vw,76px);font-weight:600;letter-spacing:-.035em;line-height:.9;overflow-wrap:anywhere;transition:color .3s}
.werk:hover .bild.kachel .kachel-wort,.werk:focus-visible .bild.kachel .kachel-wort{color:var(--ak)}
.bild.leer{background:var(--hell)}
.schild{display:grid;grid-template-columns:28px 1fr;border-top:1px solid var(--tinte);padding-top:9px;font-size:14px}
.schild .nr{font-size:11px;color:var(--grau);padding-top:5px}
.schild strong{font-size:21px;font-weight:500;letter-spacing:-.01em}
.schild .q{grid-column:2;color:var(--grau)}
.w1{grid-column:1/8}
.w2{grid-column:8/13;margin-top:100px}
.w3{grid-column:2/6}
.w4{grid-column:6/12;margin-top:50px}

/* ---------- Startseite: Außerdem (eigener Abschnitt, große Zeilen wie B5) ---------- */
.ausserdem{margin:0 0 120px}
.ausserdem-liste{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:56px;border-top:1px solid var(--tinte)}
.ausserdem-liste li{border-bottom:1px solid var(--linie);margin:0}
.ausserdem-liste a{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:baseline;gap:0 12px;padding:20px 0 18px}
.ausserdem-liste .nr{font-size:12px;color:var(--grau)}
.ausserdem-liste strong{font-size:clamp(24px,2.2vw,32px);font-weight:500;letter-spacing:-.02em;line-height:1.12}
.ausserdem-liste .unter{display:block;margin-top:6px;font-size:15px;color:var(--grau)}
.ausserdem-liste .pf{font-size:22px;line-height:1;transition:transform .5s var(--weich),color .3s}
.ausserdem-liste a:hover .pf,.ausserdem-liste a:focus-visible .pf{transform:translateX(6px);color:var(--ak)}
.ausserdem-liste a:hover .pf--raus,.ausserdem-liste a:focus-visible .pf--raus{transform:translate(4px,-4px)}

/* ---------- Programm (Wochen zum Ziehen) ---------- */
.programm{margin-bottom:120px}
.programm .kl a:hover .u{background-size:100% 2px}
.reihen{display:flex;gap:40px;overflow-x:auto;cursor:grab;user-select:none;scrollbar-width:none;padding-bottom:6px}
.reihen::-webkit-scrollbar{display:none}
.reihen.zieht{cursor:grabbing}
.reihen:focus-visible{outline:2px solid var(--ak);outline-offset:4px}
.woche{flex:0 0 clamp(170px,16vw,220px)}
.woche h3{margin:0 0 12px;font-size:12px;font-weight:400;color:var(--grau);border-top:1px solid var(--tinte);padding-top:8px}
.woche.jetzt h3{color:var(--tinte);font-weight:600}
.ter{display:block;position:relative;margin:0 0 14px;font-size:16px;line-height:1.3}
.ter small{display:block;font-size:12px;color:var(--grau)}
.ter.ist-fest::before,.tz-name.ist-fest::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ak);margin-right:7px;vertical-align:2px}
.ter:hover .u,.ter:focus-visible .u{background-size:100% 2px}
.leerw{font-size:13px;color:var(--grau)}

/* ---------- Für Erstsemester, Wo schaue ich nach ---------- */
.erstis{margin-bottom:120px}
.nach{margin-bottom:120px}
.wege{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--tinte)}
.weg{border-right:1px solid var(--linie);padding:16px 22px 22px 0}
.weg+.weg{padding-left:22px}.weg:last-child{border-right:0}
.weg .st{font-size:46px;font-weight:300;line-height:1;letter-spacing:-.03em}
.weg h3{margin:10px 0 6px;font-size:20px;font-weight:600}
.weg p{margin:0 0 12px;font-size:15px;color:var(--grau)}
.weg a{display:block;padding:6px 0;border-top:1px solid var(--linie);font-size:15px}
.weg a:hover{color:var(--ak)}
.weg a small{color:var(--grau)}
.weg.frag-w{opacity:.6;transition:opacity .4s}.weg.frag-w:hover,.weg.frag-w:focus-within{opacity:1}

/* ---------- Seiten: Inhalt aus dem Block-Editor ---------- */
.titelbild{margin:0 0 56px}
.inhalt{max-width:46em;margin-bottom:90px}
.inhalt > *{max-width:38em}
.inhalt > .wp-block-table,.inhalt > figure,.inhalt > .termine,.inhalt > .wp-block-group,.inhalt > ul.is-style-zeilen,.inhalt > .kummer,.inhalt > .wp-block-details,.inhalt > details{max-width:46em}
.inhalt p,.inhalt li{font-family:var(--lese);font-size:20px;line-height:1.5}
.inhalt p{margin:0 0 18px}
.inhalt a:not(.knopf):not(.wp-block-button__link):not(.terminzeile){border-bottom:1px solid var(--linie);transition:border-color .3s}
.inhalt a:not(.knopf):not(.wp-block-button__link):not(.terminzeile):hover{border-color:var(--ak)}
.inhalt h2{font-family:var(--grund);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin:72px 0 16px;padding-top:10px;border-top:1px solid var(--tinte);max-width:46em}
.inhalt h2:first-child{margin-top:0}
.inhalt h3{font-family:var(--grund);font-size:21px;font-weight:600;letter-spacing:-.01em;margin:40px 0 10px;line-height:1.25}
.inhalt h4{font-size:17px;margin:28px 0 8px}
.inhalt h3 .meta{font-weight:400;font-size:14px;margin-left:8px}
.inhalt ul,.inhalt ol{padding-left:1.2em;margin:0 0 22px}
.inhalt li{margin:0 0 6px}
.inhalt .meta{font-family:var(--grund);font-size:14px}
.inhalt strong,.inhalt b{font-weight:600}
.inhalt .klein,.inhalt p.klein{font-family:var(--grund);font-size:15px;color:var(--grau)}
.inhalt .meldung{font-family:var(--grund)}
em.ph,span.ph:not(.bild .ph){font-style:normal;color:var(--grau);border-bottom:1px dashed var(--grau)}
.is-style-einleitung,.inhalt p.is-style-einleitung{font-family:var(--lese);font-size:clamp(21px,1.8vw,24px);line-height:1.45;max-width:30em;margin:0 0 40px}
.is-style-satz,.inhalt p.is-style-satz{font-family:var(--grund);font-size:clamp(28px,3.2vw,46px);line-height:1.06;letter-spacing:-.03em;font-weight:500;max-width:16em;margin:48px 0}
.is-style-veranstaltung,.inhalt h2.is-style-veranstaltung,.inhalt h3.is-style-veranstaltung{font-family:var(--fest);text-transform:none;letter-spacing:-.01em;font-size:clamp(34px,4.4vw,64px);font-weight:600;border:0;padding:0;line-height:1}
.inhalt blockquote{border-left:2px solid var(--ak);margin:0 0 22px;padding:4px 0 4px 18px}
.inhalt hr,.inhalt .wp-block-separator{border:0;border-top:1px solid var(--linie);margin:40px 0}

/* Tabelle schlicht */
.wp-block-table{margin:0 0 30px;overflow-x:auto}
.wp-block-table table{border-collapse:collapse;width:100%}
.wp-block-table td,.wp-block-table th{border:0;border-bottom:1px solid var(--linie);padding:10px 16px 10px 0;vertical-align:top;text-align:left}
.wp-block-table.is-style-schlicht table{border-top:1px solid var(--tinte)}
.wp-block-table.is-style-schlicht td{font-family:var(--grund);font-size:16px;line-height:1.45}
.wp-block-table.is-style-schlicht td:first-child{color:var(--grau);font-size:15px;width:11em}
.wp-block-table.is-style-schlicht td:nth-child(3){color:var(--grau);font-size:14px}
table.is-style-schlicht{border-collapse:collapse;width:100%;border-top:1px solid var(--tinte);margin:0 0 30px}
table.is-style-schlicht td{border-bottom:1px solid var(--linie);padding:10px 16px 10px 0;vertical-align:top;font-size:16px}
table.is-style-schlicht td:first-child{color:var(--grau);width:11em}

/* Aufklapper (Häufige Fragen) */
.inhalt details,.wp-block-details{border-top:1px solid var(--linie);margin:0}
.inhalt details:last-of-type{border-bottom:1px solid var(--linie);margin-bottom:30px}
.inhalt details + :not(details){margin-top:30px}
.inhalt summary{list-style:none;cursor:pointer;padding:14px 0;font-size:19px;display:flex;justify-content:space-between;gap:16px;font-family:var(--grund)}
.inhalt summary::-webkit-details-marker{display:none}
.inhalt summary::after{content:"+";font-size:22px;line-height:1;transition:transform .5s var(--weich);flex:0 0 auto}
.inhalt details[open] > summary::after{transform:rotate(45deg)}
.inhalt summary:hover{color:var(--ak)}
.inhalt details > p{font-size:19px;margin:0 0 16px;max-width:36em}

/* Liste „Zeilen mit Links“ */
ul.is-style-zeilen{list-style:none;padding:0;margin:0 0 40px;border-top:1px solid var(--tinte)}
ul.is-style-zeilen > li{padding:14px 0;border-bottom:1px solid var(--linie);margin:0;font-family:var(--grund);font-size:16px;color:var(--grau)}
ul.is-style-zeilen > li > a{display:inline;font-size:clamp(20px,1.8vw,24px);font-weight:500;letter-spacing:-.015em;color:var(--tinte);margin-right:12px;border:0!important;background:linear-gradient(var(--ak),var(--ak)) 0 100%/0 2px no-repeat;transition:background-size .5s var(--weich)}
ul.is-style-zeilen > li > a:hover,ul.is-style-zeilen > li > a:focus-visible{background-size:100% 2px}
ul.is-style-zeilen .meta{font-size:15px}

/* Schritte zum Abhaken */
ul.is-style-abhaken,ol.is-style-abhaken{list-style:none;padding:0;margin:0 0 10px;max-width:52em}
ul.is-style-abhaken > li,ol.is-style-abhaken > li{border-top:1px solid var(--linie);margin:0;font-family:var(--grund);font-size:17px;padding:14px 0}
.is-style-abhaken > li:has(.schritt){padding:0}
.schritt{display:grid;grid-template-columns:28px 40px 1fr;gap:6px;align-items:baseline;padding:14px 0;cursor:pointer;font-family:var(--grund);font-size:17px;line-height:1.45}
.schritt input{width:18px;height:18px;accent-color:var(--ak);margin:0}
.schritt .n{font-size:12px;color:var(--grau)}
.schritt b,.schritt strong{font-weight:600}
.schritt:has(input:checked) span:last-child{color:var(--grau);text-decoration:line-through;text-decoration-color:var(--ak);text-decoration-thickness:2px}
.fortschritt{position:relative;height:2px;background:var(--linie);margin:8px 0 60px;max-width:52em}
.fortschritt i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--ak);transition:width .6s var(--weich)}
.fortschritt span{position:absolute;right:0;top:8px;font-size:13px;color:var(--grau);font-family:var(--grund)}

/* Wegschritte */
ol.is-style-wegschritte,ul.is-style-wegschritte{list-style:none;margin:0 0 24px;padding:0;counter-reset:weg;border-top:1px solid var(--tinte)}
.is-style-wegschritte > li{display:grid;grid-template-columns:44px 1fr;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--linie);font-family:var(--grund);font-size:19px;margin:0;counter-increment:weg}
.is-style-wegschritte > li::before{content:counter(weg);font-size:30px;font-weight:300;line-height:1}
.wege-an .is-style-wegschritte > li{opacity:.3;transform:translateX(-6px);transition:opacity .6s,transform .8s var(--weich)}
.wege-an .is-style-wegschritte > li.da{opacity:1;transform:none}

/* Foto folgt (Platzhalter): nur für angemeldete Redaktion sichtbar, öffentlich nie */
body:not(.logged-in) .foto-folgt{display:none}
.foto-folgt{background:var(--hell);aspect-ratio:3/2;display:grid;place-items:center;margin:0 0 30px;max-width:46em}
.foto-folgt p,.inhalt .foto-folgt p{font-family:var(--grund);font-size:13px;color:var(--grau);margin:0;text-align:center;padding:20px}

/* Bilder in Blöcken: Taschenlampe */
figure.lampe{margin:0 0 30px}
figure.lampe .bild{display:block;width:100%}
figure.lampe figcaption{font-size:12px;color:var(--grau);margin-top:6px;font-family:var(--grund)}
.wp-block-image img{height:auto}
.wp-block-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 30px}
.wp-block-button__link,.inhalt a.knopf{display:inline-block;background:var(--tinte);color:var(--papier)!important;padding:14px 22px;font-size:15px;border:1px solid var(--tinte);border-radius:0;font-family:var(--grund);text-decoration:none;transition:background .3s,border-color .3s}
.wp-block-button__link:hover,.inhalt a.knopf:hover{background:var(--ak);border-color:var(--ak)}
.is-style-outline .wp-block-button__link{background:var(--papier);color:var(--tinte)!important}

/* Unterseiten */
.unterseiten{margin:0 0 90px;max-width:60em}
.unterseiten ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--tinte)}
.ang{display:grid;grid-template-columns:40px 1fr;padding:16px 0;border-bottom:1px solid var(--linie)}
.ang b{font-weight:400;font-size:12px;color:var(--grau);padding-top:8px}
.ang strong{display:inline;font-size:clamp(21px,2vw,26px);font-weight:500;letter-spacing:-.015em;margin-right:14px;color:var(--tinte)}
.ang:hover strong{background-size:100% 2px}
.ang > span{font-size:16px;color:var(--grau);max-width:46em}

/* Terminlisten ([termine]) */
.termine{margin:0 0 40px}
.termine h3.monat,.inhalt .termine h3.monat{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin:36px 0 0;color:var(--grau)}
.terminliste{list-style:none;padding:0!important;margin:10px 0 0!important;border-top:1px solid var(--tinte)}
.terminliste li{margin:0!important;font-family:var(--grund)!important;font-size:16px!important}
.terminzeile{display:grid;grid-template-columns:7.5em minmax(0,1fr);gap:2px 20px;padding:12px 0;border-bottom:1px solid var(--linie);align-items:baseline}
.terminzeile .dt{grid-row:span 2;font-size:13px;color:var(--grau);display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}
.terminzeile .dt b{font-size:28px;font-weight:300;color:var(--tinte);letter-spacing:-.03em;line-height:1}
.terminzeile .tz-name{font-size:20px;font-weight:500;letter-spacing:-.01em;overflow-wrap:anywhere}
.terminzeile:hover .u,.terminzeile:focus-visible .u{background-size:100% 2px}
.terminzeile .meta{font-size:14px}
.terminliste.vergangen .tz-name{color:var(--grau)}

/* ---------- Feste ---------- */
.buehne-f{position:relative;margin:26px 0 0}
.buehne-f .bild{width:100%}
.countdown{position:absolute;left:24px;bottom:22px;right:24px;color:#fff;display:grid;gap:2px;text-shadow:0 1px 20px rgba(0,0,0,.55)}
.countdown .kl2{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.countdown b{font-size:clamp(40px,7vw,110px);font-weight:300;letter-spacing:-.04em;line-height:1}
.countdown .schriftzug-rot{height:clamp(18px,2.2vw,28px);width:auto;max-width:70vw;display:inline-block}
/* Basis: .fs button setzt Rand und Innenabstand zurück, auch bei button.knopf */
.fs button.knopf{padding:14px 22px;border:1px solid var(--tinte);font-size:15px}
.fs button.knopf:not(.hell){background:var(--tinte);color:var(--papier)}
.fs button.knopf:hover{background:var(--ak);border-color:var(--ak);color:#fff}
.festliste{margin:0 0 100px;border-top:1px solid var(--tinte)}
.fest{display:grid;grid-template-columns:7em minmax(0,1fr);gap:4px 24px;padding:18px 0;border-bottom:1px solid var(--linie);align-items:baseline}
.fest .dt{font-size:13px;display:grid;grid-row:span 2}
.fest .dt b{font-size:40px;font-weight:300;line-height:1;letter-spacing:-.03em}
.fest .ev-name{font-size:clamp(34px,4.4vw,64px);line-height:1;transition:letter-spacing .6s var(--weich),color .3s;overflow-wrap:anywhere}
.fest:hover .ev-name,.fest:focus-visible .ev-name{letter-spacing:.02em;color:var(--ak)}
.schriftzug{display:inline-block;height:clamp(30px,4vw,58px);aspect-ratio:7946/789;max-width:100%;background:currentColor;-webkit-mask:url(fs/schriftzug-mono.svg) left center/contain no-repeat;mask:url(fs/schriftzug-mono.svg) left center/contain no-repeat;transition:color .3s}
.fest:hover .schriftzug,.fest:focus-visible .schriftzug{color:var(--ak)}
.schriftzug.gross{height:auto;width:min(100%,900px);display:block;margin:0 0 24px}
.lesen h2{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin:0 0 16px;border:0;padding:0}

/* Vorverkauf (aus der SCHEUNE): Block auf der Feste-Seite und [vorverkauf] */
.vvk{margin:0 0 100px}
.vvk .kl em.ph{font-size:12px}
.vvk-kopf{display:flex;justify-content:space-between;align-items:flex-end;gap:20px 40px;flex-wrap:wrap;border-top:1px solid var(--tinte);padding:18px 0 34px}
.vvk-status{margin:0;display:grid;gap:6px}
.vvk-status b{font-size:clamp(48px,6vw,96px);font-weight:300;letter-spacing:-.04em;line-height:.95}
.vvk-status b.vvk-offen{color:var(--grau)}
.vvk-status span{font-size:18px;max-width:30em}
.vvk-raster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 56px}
.vvk h3{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--grau);margin:0 0 10px}
.vvk table.vvk-preise{margin:0}
.vvk-preise td:first-child{width:auto}
.vvk-preise b{font-weight:500;font-size:18px;white-space:nowrap}
.vvk-orte{list-style:none;margin:0;padding:0;border-top:1px solid var(--tinte)}
.vvk-orte li{display:grid;grid-template-columns:8.5em minmax(0,1fr);gap:4px 16px;padding:10px 0;border-bottom:1px solid var(--linie);font-size:16px;margin:0}
.vvk-dt{color:var(--grau);font-size:14px}
.vvk-orte strong{display:block;font-weight:500}
.vvk-orte .meta{display:block;font-size:14px}
.vvk .ist-ph,.vvk .ist-ph td,.vvk .ist-ph b,.vvk .ist-ph strong{color:var(--grau)}
.vvk .ist-ph b,.vvk .ist-ph strong{border-bottom:1px dashed var(--grau)}
.vvk-hinweis{font-size:15px;color:var(--grau);margin:24px 0 0}
.inhalt > .vvk{max-width:46em}

/* ---------- Termin ---------- */
.termin-k{display:grid;grid-template-columns:minmax(200px,.6fr) minmax(0,1.4fr);gap:56px;margin:46px 0 100px}
.gross-dat{border-top:1px solid var(--tinte);padding-top:10px;display:grid;gap:4px;align-content:start}
.gross-dat b{font-size:clamp(56px,7vw,110px);font-weight:300;letter-spacing:-.05em;line-height:.95}
.ev-titel{margin:0}
.ev-name.gross{display:block;overflow-wrap:anywhere;font-size:clamp(40px,7vw,120px);line-height:.92;margin:0 0 20px}
.einl{max-width:32em;margin:0 0 30px}
.einl p{font-family:var(--lese);font-size:22px;line-height:1.45;margin:0 0 14px}
.einl a{border-bottom:1px solid var(--linie)}
.gross-tab dd{font-size:19px}
.gross-tab a{border-bottom:1px solid var(--linie)}
.taten{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 40px}
.naechste{list-style:none;padding:0;margin:0 0 30px;columns:2;font-size:15px}
.naechste li{padding:4px 0;border-bottom:1px solid var(--linie);break-inside:avoid}
.termin-bild{margin-top:20px}

/* ---------- Kummerkasten ---------- */
.kummer{max-width:44em;margin:20px 0 60px}
.kummer .formular label .meta{display:inline}
.ehrlich summary{cursor:pointer;font-size:14px;border-bottom:1px solid var(--linie);display:inline;font-family:var(--grund)}
.ehrlich summary::after{content:none}
.inhalt .ehrlich{border:0!important;margin:0!important}
.ehrlich p,.inhalt .ehrlich p{font-family:var(--grund);font-size:14px;color:var(--grau);margin:8px 0 0}
.danke{font-family:var(--lese);font-size:20px;border-left:2px solid var(--ak);padding-left:12px}
.danke:focus,.meldung:focus{outline:none}

/* ---------- 404, Suche, Verlinkt ---------- */
.nichts{max-width:44em}
.kuh.gross{width:120px;margin-top:60px}
.nichts .satz{margin-top:24px}
.suchform{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap;margin:30px 0 40px;max-width:40em}
.suchform label{flex:1 1 16em}
.suchliste{margin-top:20px}
.nav-links{display:flex;gap:16px;font-size:15px}
.verlinkt-seite{background:var(--papier)}
.verlinkt{max-width:560px;margin:0 auto;padding:40px 16px 80px}
.verlinkt-kopf{text-align:center;margin-bottom:30px}
.verlinkt-kopf .kuh{width:64px}
.verlinkt-kopf h1{font-size:28px;letter-spacing:-.02em;margin:10px 0 2px;font-weight:600}
.verlinkt-kopf .spr{opacity:1;justify-content:center;font-size:13px;margin-top:8px}
.verlinkt h2{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--grau);margin:30px 0 8px}
.verlinkt ul{list-style:none;padding:0;margin:0}
.verlinkt ul.is-style-zeilen > li{padding:0;color:var(--grau)}
.verlinkt ul.is-style-zeilen > li > a{display:block;font-size:19px;padding:14px 16px 2px;margin:0;border:1px solid var(--tinte)!important;border-bottom:0!important;background:none}
.verlinkt ul.is-style-zeilen > li .meta{display:block;padding:0 16px 12px;border:1px solid var(--tinte);border-top:0;margin-bottom:10px;font-size:13px}
.verlinkt ul.is-style-zeilen > li:hover > a,.verlinkt ul.is-style-zeilen > li:hover .meta{background:var(--tinte);color:var(--papier)}
.verlinkt ul.is-style-zeilen{border:0}
.verlinkt ul.is-style-zeilen > li{border:0}
.verlinkt p{font-size:14px;color:var(--grau)}

/* ---------- Frag die Fachschaft: Fokus über die Unterlinie statt Kasten ----------
   Die Basis setzt .fs :focus-visible{outline…}; das ist spezifischer als
   .frag input{outline:none} und zeichnet deshalb einen Rahmen ums Eingabefeld. */
.fs .frag input{transition:border-color .3s,box-shadow .3s}
.fs .frag input:focus,.fs .frag input:focus-visible,body.a11y .frag input:focus-visible{outline:none;border-bottom-color:var(--ak);box-shadow:0 2px 0 var(--ak)}

/* ---------- Handy ---------- */
@media (max-width:860px){
  .ausserdem-liste{grid-template-columns:minmax(0,1fr)}
  .ausserdem-liste a{grid-template-columns:32px minmax(0,1fr) auto;padding:16px 0 14px}
  .ausserdem-liste strong{font-size:23px}
  .raum{margin-bottom:80px}
  .ausserdem{margin-bottom:90px}
  .vvk-raster{grid-template-columns:minmax(0,1fr);gap:32px}
  .vvk-orte li{grid-template-columns:6.5em minmax(0,1fr)}
  .raum{grid-template-columns:minmax(0,1fr);gap:28px}
  .w1,.w2,.w3,.w4{grid-column:auto;margin-top:0}
  .wege{grid-template-columns:minmax(0,1fr)}
  .weg,.weg+.weg{padding:16px 0;border-right:0;border-bottom:1px solid var(--linie)}
  .termin-k{grid-template-columns:minmax(0,1fr);gap:30px}
  .buehne-f .bild{aspect-ratio:4/5!important}
  .fest{grid-template-columns:5.5em minmax(0,1fr);gap:4px 14px}
  .terminzeile{grid-template-columns:5.5em minmax(0,1fr);gap:2px 12px}
  .inhalt p,.inhalt li{font-size:18px}
  .wp-block-table.is-style-schlicht td:first-child{width:auto;min-width:6em}
  .wp-block-table td{padding-right:10px}
  .naechste{columns:1}
  .countdown{left:16px;right:16px;bottom:16px}
  .inhalt h2{margin-top:56px}
  .leiste .nav .unter{margin-left:32px}
}

/* ---------- Bewegung aus ---------- */
@media (prefers-reduced-motion:reduce){
  .wege-an .is-style-wegschritte > li{opacity:1;transform:none}
}

/* ---------- Barrierefrei: eigene Effekte abschalten ---------- */
body.a11y .reihen{flex-direction:column;gap:0;overflow:visible;cursor:auto}
body.a11y .woche{flex:none;display:grid;grid-template-columns:10em minmax(0,1fr);gap:8px;border-top:1px solid var(--linie);padding:8px 0}
body.a11y .woche h3{border:0;padding:0;margin:0}
body.a11y .ter{margin:0 0 6px}
body.a11y .is-style-wegschritte > li{opacity:1!important;transform:none!important}
body.a11y .fest:hover .ev-name{letter-spacing:-.01em}
body.a11y .inhalt a:not(.knopf):not(.wp-block-button__link),body.a11y .einl a,body.a11y .terminzeile .u,body.a11y ul.is-style-zeilen > li > a{text-decoration:underline;background-size:0}
body.a11y .weg.frag-w{opacity:1}
body.a11y .inhalt p,body.a11y .inhalt li,body.a11y .einl p,body.a11y .lesen p{font-family:var(--grund)}
body.a11y .countdown{text-shadow:none;background:rgba(0,0,0,.75);padding:10px 14px}
@media (max-width:860px){body.a11y .woche{grid-template-columns:minmax(0,1fr)}}
@media (max-width:600px){
  .wp-block-table.is-style-schlicht tr{display:block;border-bottom:1px solid var(--linie);padding:8px 0}
  .wp-block-table.is-style-schlicht td,.wp-block-table.is-style-schlicht td:first-child{display:block;border:0;padding:1px 0;width:auto}
  .wp-block-table.is-style-schlicht td:first-child{font-size:13px}
}
