/*
 * Barrierefreiheit – Korrekturen zum Prüfbericht 208-26-F-bsbadkro (16.07.2026)
 * Berufliche Schule Bad Krozingen · Enfold Child Theme
 *
 * Die Nummern in den Kommentaren verweisen auf die Ziffern im Prüfbericht.
 * Farbwerte (4.4) werden zusätzlich in den Enfold-Theme-Optionen angepasst,
 * siehe EINSPIELEN.md – dieses Stylesheet deckt nur ab, was dort nicht geht.
 */

/* ---------------------------------------------------------------
 * 4.14  Fokus sichtbar
 * Deutlicher Fokusrahmen für alle bedienbaren Elemente.
 * Doppelter Rand (dunkel + weiß) bleibt auf hellem und dunklem
 * Hintergrund sichtbar (> 3:1 gegen beide).
 * ------------------------------------------------------------- */
#top a:focus-visible,
#top button:focus-visible,
#top input:focus-visible,
#top select:focus-visible,
#top textarea:focus-visible,
#top summary:focus-visible,
#top [tabindex]:focus-visible,
#top [role="button"]:focus-visible {
	outline: 3px solid #1a1a1a !important;
	outline-offset: 2px !important;
	box-shadow: 0 0 0 5px #ffffff !important;
	border-radius: 2px;
}

/* Auf dunklen Flächen (Footer, Socket, Titelleiste) heller Rahmen */
#top #footer a:focus-visible,
#top #socket a:focus-visible,
#top .alternate_color a:focus-visible,
#top .title_container a:focus-visible,
#top .avia-post-nav:focus-visible {
	outline-color: #ffffff !important;
	box-shadow: 0 0 0 5px #1a1a1a !important;
}

/* Hauptmenü: Enfold versteckt den Fokus – Rahmen innen, damit er
   nicht vom Header abgeschnitten wird */
#top #header .av-main-nav a:focus-visible {
	outline-offset: -3px !important;
	box-shadow: inset 0 0 0 5px #ffffff !important;
}

/* Bilderkarussell: Fokus der Slide-Links und Pfeile sichtbar */
#top .ls-container a:focus-visible {
	outline: 3px solid #ffffff !important;
	outline-offset: -6px !important;
	box-shadow: inset 0 0 0 6px #1a1a1a !important;
}

/* ---------------------------------------------------------------
 * Sprunglink „Zum Inhalt springen“ (ergänzt 4.10)
 * Nur bei Tastaturfokus sichtbar.
 * ------------------------------------------------------------- */
.bsbk-skip-link {
	position: absolute;
	left: 8px;
	top: -100px;
	z-index: 100000;
	padding: 12px 18px;
	background: #1a1a1a;
	color: #ffffff !important;
	font-weight: 700;
	text-decoration: underline;
}
.bsbk-skip-link:focus {
	top: 8px;
}

/* ---------------------------------------------------------------
 * 4.4  Kontrast (Minimum) – Hauptmenü
 * #808080 (3,9:1) → #666666 (5,7:1). Greift sofort, auch bevor die
 * Theme-Optionen geändert sind.
 * ------------------------------------------------------------- */
#top #header .av-main-nav > li > a,
#top #header .av-main-nav > li > a .avia-menu-text {
	color: #666666;
}
#top #header .av-main-nav > li.current-menu-item > a .avia-menu-text,
#top #header .av-main-nav > li.current_page_item > a .avia-menu-text,
#top #header .av-main-nav > li.active-parent-item > a .avia-menu-text,
#top #header .av-main-nav > li > a:hover .avia-menu-text {
	color: #4e6b18;
}

/* ---------------------------------------------------------------
 * 4.6  Nicht-Text-Kontrast – Pfeile vorheriger/nächster Beitrag
 * Vorher weißes Symbol auf 10 % Schwarz (1,3:1) → jetzt 8,9:1
 * ------------------------------------------------------------- */
#top .avia-post-nav {
	background-color: #4a4a4a !important;
	color: #ffffff !important;
	opacity: 1 !important;
}
#top .avia-post-nav .label,
#top .avia-post-nav .label svg {
	color: #ffffff !important;
	fill: #ffffff !important;
}
#top .avia-post-nav:hover,
#top .avia-post-nav:focus-visible {
	background-color: #1a1a1a !important;
}

/* ---------------------------------------------------------------
 * 4.8 / 4.9  Bilderkarussell (LayerSlider)
 * Pfeile immer anzeigen (vorher nur bei Mausberührung → per Tastatur
 * nicht erreichbar) und Pause-Schalter.
 * ------------------------------------------------------------- */
#top .ls-container .ls-nav-prev,
#top .ls-container .ls-nav-next {
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
}
.bsbk-ls-pause {
	position: absolute;
	right: 12px;
	bottom: 12px;
	z-index: 200;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 8px 14px;
	border: 2px solid #ffffff;
	border-radius: 4px;
	background: #1a1a1a;
	color: #ffffff;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
}
.bsbk-ls-pause:hover {
	background: #333333;
}
/* Schmale Ansicht: Karussell ist niedrig – Schalter mittig unten,
   damit er die Pfeile links/rechts nicht verdeckt */
@media only screen and (max-width: 767px) {
	.bsbk-ls-pause {
		right: auto;
		left: 50%;
		bottom: 4px;
		transform: translateX(-50%);
		min-height: 32px;
		padding: 4px 10px;
		font-size: 13px;
		white-space: nowrap;
	}
}
.bsbk-ls-pause .bsbk-ls-pause-icon {
	display: inline-block;
	width: 12px;
	height: 14px;
	border-left: 4px solid currentColor;
	border-right: 4px solid currentColor;
	box-sizing: border-box;
}
.bsbk-ls-pause[data-paused="true"] .bsbk-ls-pause-icon {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 0 7px 12px;
	border-color: transparent transparent transparent currentColor;
}

/* ---------------------------------------------------------------
 * 4.2.1  Linkliste der Schnellzugriffe auf der Startseite
 * Die vier Bild-Links werden per JS in eine Liste gefasst; der
 * Wrapper darf das Spalten-Layout nicht verändern.
 * ------------------------------------------------------------- */
.bsbk-linklist {
	display: contents;
}

/* ---------------------------------------------------------------
 * 4.2.3  Akkordeons (Schularten)
 * Titel ist jetzt Überschrift + Schalter; Optik bleibt gleich.
 * ------------------------------------------------------------- */
#top .toggler .bsbk-toggle-btn {
	display: block;
	color: inherit;
	cursor: pointer;
}

/* ---------------------------------------------------------------
 * 4.3 / 4.16 / 4.17  Kontaktformular
 * Sichtbare Beschriftungen statt nur Platzhalter, Fehlertext unter
 * dem Feld, nicht nur roter Rahmen.
 * ------------------------------------------------------------- */
#top .avia_ajax_form.av-form-labels-hidden label {
	position: static !important;
	display: block !important;
	width: auto !important;
	height: auto !important;
	clip: auto !important;
	clip-path: none !important;
	overflow: visible !important;
	margin: 0 0 4px 0 !important;
	opacity: 1 !important;
	visibility: visible !important;
	font-weight: 700;
	/* Formular steht auf dunkelgrünem Grund: Schriftfarbe der Umgebung
	   übernehmen (weiß, 8:1) statt fest dunkel */
	color: inherit !important;
}
/* Platzhalter wiederholen nur die Beschriftung – ausblenden, damit
   nichts doppelt angesagt oder als Eingabe missverstanden wird */
#top .avia_ajax_form .text_input::placeholder,
#top .avia_ajax_form .text_area::placeholder {
	color: transparent;
}
.bsbk-field-error {
	display: flex;
	align-items: flex-start;
	gap: 6px;
	margin: 6px 0 0 0;
	color: #b00020;
	font-weight: 700;
	font-size: 15px;
	line-height: 1.4;
}
.bsbk-field-error::before {
	content: "!";
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #b00020;
	color: #ffffff;
	font-size: 14px;
	line-height: 1;
}
#top .avia_ajax_form .form_element.error input,
#top .avia_ajax_form .form_element.error textarea {
	border: 2px solid #b00020 !important;
}
.bsbk-form-summary {
	margin: 0 0 20px 0;
	padding: 14px 18px;
	border: 2px solid #b00020;
	border-left-width: 8px;
	background: #ffffff;
	color: #222222;
}
.bsbk-form-summary:empty {
	display: none;
}
#top .bsbk-form-summary p,
#top .bsbk-form-summary li {
	margin: 0 0 6px 0;
	color: #222222 !important;
}
#top .bsbk-form-summary p {
	font-weight: 700;
}
.bsbk-form-summary ul {
	margin: 0 0 0 20px;
}
.bsbk-form-summary a {
	color: #b00020 !important;
}

/* Hilfsklasse: nur für Screenreader */
.bsbk-sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* Bewegung reduzieren, wenn im System so eingestellt */
@media (prefers-reduced-motion: reduce) {
	#top .avia_ajax_form *,
	#top .av-burger-overlay,
	#top .toggle_wrap {
		transition: none !important;
		animation: none !important;
	}
}

/* ===============================================================
 * Nachträge nach der Prüfung aller Seiten (22.10.2026)
 * ============================================================= */

/* Überschriften, die für eine lückenlose Gliederung eine Ebene
   höher gesetzt wurden (h3 → h2), behalten ihre bisherige Optik */
#top h2.bsbk-was-h3 {
	font-size: 20px;
	line-height: 22px;
	margin-top: 0;
	margin-bottom: 8px;
	letter-spacing: normal;
	text-transform: none;
}
#top .av-special-heading.bsbk-was-h3 .av-special-heading-tag {
	font-size: 20px;
	line-height: 22px;
	margin: 0;
	letter-spacing: normal;
	text-transform: none;
}
#top h2.bsbk-was-h4 {
	font-size: 18px;
	line-height: 19.8px;
	margin-top: 0;
	margin-bottom: 8px;
	letter-spacing: normal;
}
/* Icon-Listen-Titel h4 → h3: nur Schriftgröße angleichen, Abstände bleiben */
#top .av_iconlist_title.bsbk-was-h4 {
	font-size: 18px;
	line-height: 19.8px;
}
#top .av-masonry-entry-title.bsbk-was-h3 {
	font-size: 1.25em;
	line-height: 1.3em;
	letter-spacing: normal;
	text-transform: none;
}

/* Widget-Überschriften jetzt h2 (vorher h3) – gleiche Optik */
#top .widget h2.widgettitle {
	font-size: 1.1em;
	margin-top: 0.85em;
	margin-bottom: 8px;
}
#top #footer h2.widgettitle {
	font-size: 16px !important;
}

/* 4.4 Kontrast: Titelleisten der Bildungsgänge (Text #ecf2e1)
   Rot 4,3:1 / Grün 3,9:1 / Blau 4,3:1 → jeweils ≥ 4,6:1 */
#top.page-id-83 .title_container { background-color: #d90612 !important; }
#top.page-id-76 .title_container { background-color: #287b29 !important; }
#top.page-id-73 .title_container { background-color: #006fb4 !important; }

/* 4.4 Kontrast: Downloadbereich (WP File Download) */
#top .wpfd-content .wpfd-file-crop-title,
#top .wpfd-content .file_size,
#top .wpfd-content td.file_size,
#top .wpfd-content .file-xinfo,
#top .wpfd-content .wpfdcategory span,
#top .wpfdcategory span {
	color: #595959 !important;
}

/* 4.4 Kontrast: Kontakt – grüner Link auf hellgrauem Kasten */
#top.page-id-262 #main .avia_textblock a,
#top.page-id-262 #main .avia_textblock a strong {
	color: #3d5413 !important;
}

/* Startseite: h1 war per display:none versteckt – für Screenreader
   wieder verfügbar machen, optisch weiterhin ausgeblendet */
#top.home .title_container {
	display: block !important;
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
	padding: 0 !important;
	margin: -1px !important;
}

/* Startseite: Bildbeschriftungen der Schnellzugriffe dürfen umbrechen,
   damit „(PDF)“ nicht abgeschnitten wird */
#top .bildLabel p {
	width: auto;
	right: 0;
	height: auto;
	min-height: 1.5em;
	white-space: normal;
}
