/* Automatisch aus dem Customizer generiert – Änderungen bitte im Customizer vornehmen. */
/* Generelles */

html {
	-webkit-text-size-adjust: 100%;
	background: white;
	overflow-x: hidden !important;
}

body {
	margin: 0;
	overflow-x: hidden !important;
}

html, body, h1, h2, h3, h4, h5, h6, p, a {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.elementor-widget-text-editor strong {
	font-weight: 600;
}

ul {
	margin-block-end: .9rem;
}

/* Bilder Anpassungen */

.startseite-einleitung img {
	aspect-ratio: 3/4;
	object-fit: cover;
	object-position: 88% 50%;
}

/* Abstaende Kopfzeile und Fusszeile */

.elementor-location-header > .e-parent,
.elementor-location-footer > .e-parent {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

/* Header */

ul.elementor-nav-menu--dropdown a,
ul.elementor-nav-menu--dropdown a:focus,
ul.elementor-nav-menu--dropdown a:hover {
	border-left: 0 !important;
}

.stiwl-menu-login {
	white-space: nowrap;
}

.stiwl-menu-login:hover {
	color: var(--e-global-color-4984a15);
	fill: var(--e-global-color-4984a15);
}

/* Buttons */

[type=button]:focus, [type=button]:hover,
[type=submit]:focus, [type=submit]:hover,
button:focus, button:hover {
	background-color: var(--e-global-color-2ef0a25);
}

.elementor-button-primary a {
	background: var(--e-global-color-text) !important;
	color: var(--e-global-color-secondary) !important;
}

.elementor-button-primary a:hover {
	background: var(--e-global-color-2ef0a25) !important;
}

.elementor-button-secondary a {
	background: var(--e-global-color-2ef0a25) !important;
	color: var(--e-global-color-secondary) !important;
}

.elementor-button-secondary a:hover {
	background: var(--e-global-color-4984a15) !important;
}

.elementor-button-tertiary a {
	background: var(--e-global-color-secondary) !important;
	color: var(--e-global-color-text) !important;
}

.elementor-button-tertiary a:hover {
	background: var(--e-global-color-1d63f4f) !important;
}

.elementor-button-quartaer a {
	background: none !important;
	color: var(--e-global-color-2ef0a25) !important;
	padding: 0 !important;
	display: flex;
	justify-content: flex-end;
	flex-direction: row;
	gap: 9px;
	transition: all .3s;
}

.elementor-button-quartaer a:after {
	content: url('/wp-content/uploads/2026/08/arrow-right-button.svg');
	transition: all .3s;
}

.elementor-button-quartaer a:hover {
	color: var(--e-global-color-4984a15) !important;
}

.elementor-button-quartaer a:hover:after {
	filter: brightness(0) saturate(100%) invert(100%) sepia(42%) saturate(2094%) hue-rotate(174deg) brightness(82%) contrast(99%);
}

.button-white a {
	color: white !important;
}

.button-white a:after {
	content: url('/wp-content/uploads/2026/10/arrow-right-button-white-small.svg');
	transition: .3s;
}

.button-white a:hover {
	color: #B7C4D0 !important;
	opacity: .8;
}

/* Top Menu */

.menu-icon-suche a:before,
.menu-icon-moodle a:before,
.menu-icon-login a:before {
	opacity: 1 !important;
	content: '';
	background-size: contain !important;
	background-repeat: no-repeat !important;
	background-position: center right !important;
	position: relative !important;
	transition: 0s !important;
}

.menu-icon-suche a:hover:before,
.menu-icon-moodle a:hover:before,
.menu-icon-login a:hover:before {
	filter: brightness(0) saturate(100%) invert(100%) sepia(96%) saturate(863%) hue-rotate(173deg) brightness(88%) contrast(84%) !important;
}

.menu-icon-suche a:before {
	background: url('/wp-content/uploads/2026/08/icon-suche.svg');
	margin-right: 9px;
	height: 14px;
	width: 14px;
}

.menu-icon-moodle a:before {
	background: url('/wp-content/uploads/2026/08/icon-moodle.svg');
	margin-right: 12px;
	height: 16px;
	width: 16px;
}

.menu-icon-login a:before {
	background: url('/wp-content/uploads/2026/08/icon-login.svg');
	margin-right: 9px;
	height: 15px;
	width: 15px;
}

@media only screen and (max-width: 767px) {

	.topmenue .elementor-item {
		font-size: 0 !important;
	}

	.menu-icon-suche a:before {
		height: 18px;
		width: 18px;
	}

	.menu-icon-login a:before {
		height: 19px;
		width: 19px;
	}

	.menu-icon-moodle a:before {
		height: 20px;
		width: 20px;
	}

}

/* Veranstaltungen Suche ueber Listenansicht */

.page-id-6166 .fva-filterleiste {
	display: none !important;
}

.fva-filterleiste {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 27px;
	background: var(--e-global-color-secondary);
	padding: 12px;
	box-shadow: 0 3px 9px -2px rgba(0,0,0,.4);
	max-width: 900px;
	margin-inline: auto;
	margin-top: -54px;
}

.fva-filterleiste .fva-filter-suchwort,
.fva-filterleiste .fva-filter-suchwort::placeholder,
.fva-filterleiste .fva-filter-datum,
.fva-filterleiste .fva-filter-datum::placeholder,
.fva-filterleiste .fva-filter-ort {
	border: none;
	border-radius: 0;
	font-family: var(--e-global-typography-be9ecd8-font-family), Arial;
	font-size: var(--e-global-typography-be9ecd8-font-size);
	font-weight: var(--e-global-typography-be9ecd8-font-weight);
	line-height: var(--e-global-typography-be9ecd8-line-height);
	color: var(--e-global-color-2ef0a25);
	outline: none;
}

.fva-feld-mit-icon {
	position: relative;
	display: inline-flex;
	align-items: center;
	flex: 1 1 0;
	min-width: 0;
}

.fva-feld-icon {
	position: absolute;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
	width: 21px;
	height: 21px;
	pointer-events: none;
}

.fva-feld-mit-icon .fva-filter-suchwort,
.fva-feld-mit-icon .fva-filter-datum,
.fva-feld-mit-icon .fva-filter-ort {
	width: 100%;
	box-sizing: border-box;
	padding-left: 47px;
}

.fva-filter-ort {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-image: none;
}

.fva-feld-mit-icon:nth-child(2):after,
.fva-feld-mit-icon:nth-child(3):after {
	content: url('/wp-content/uploads/2026/08/suche-arrow-down.svg');
	position: absolute;
	right: 5px;
	top: 1px;
	pointer-events: none;
}

.fva-feld-mit-icon {
	transition: 0.2s;
}

.fva-feld-mit-icon:hover {
	opacity: 0.7;
}

.fva-filter-button {
	flex: 0 0 auto;
	background: var(--e-global-color-2ef0a25);
	color: var(--e-global-color-secondary) !important;
	transition: .3s;
}

.fva-filter-button:hover {
	background: var(--e-global-color-4984a15);
}

@media only screen and (max-width: 767px) {

	.fva-filterleiste {
		flex-direction: column;
		gap: 0;
		padding: 3px 12px 12px 12px;
	}

	.fva-filterleiste button {
		margin-top: 5px;
	}

	.fva-filterleiste > div,
	.fva-filterleiste > button {
		width: 100%;
	}

	.fva-filterleiste input,
	.fva-filterleiste select {
		background: white;
		padding-top: 18px;
		padding-bottom: 18px;
	}

	.fva-filterleiste input {
		border-bottom: 1px solid var(--e-global-color-1d63f4f) !important;
	}

	.fva-feld-mit-icon:nth-child(2):after,
	.fva-feld-mit-icon:nth-child(3):after {
		top: 14px;
	}

}

/* Veranstaltungen Listenansicht */

.fivecode-veranstaltungen-auflistung .fva-ebene-3.fva-ebene-3-akkordeon:first-child {
	margin-top: 80px;
}

.fva-keine-ergebnisse {
	margin-top: 160px;
	margin-bottom: 100px;
	font-weight: 600;
	text-align: center;
}

.fva-ebene-3-titel {
	font-family: var(--e-global-typography-874dc49-font-family), Arial;
	font-size: var(--e-global-typography-874dc49-font-size);
	font-weight: var(--e-global-typography-874dc49-font-weight);
	text-transform: var(--e-global-typography-874dc49-text-transform);
	line-height: var(--e-global-typography-874dc49-line-height);
	color: var(--e-global-color-text);
	position: relative;
	display: flex;
	width: fit-content;
}

.fivecode-veranstaltungen-auflistung.fva-ist-flach .fva-ebene-3-titel {
	margin-top: 80px;
	margin-bottom: 40px;
}

.fva-ist-flach .fva-ebene-3-titel:after,
.stiwl-konto__abschnitt-titel:after {
	content: '';
	position: absolute;
	height: 5px;
	width: 100vw;
	left: calc(100% + 25px);
	top: 41%;
	background: var(--e-global-color-4984a15);
}

.fva-ebene-3.fva-ebene-3-akkordeon .fva-ebene-3-titel {
	font-family: var(--e-global-typography-898b344-font-family), Arial;
	font-size: var(--e-global-typography-898b344-font-size);
	font-weight: var(--e-global-typography-898b344-font-weight);
	line-height: var(--e-global-typography-898b344-line-height);
	text-transform: none;
	width: 100%;
	color: var(--e-global-color-secondary);
	background: var(--e-global-color-text);
	padding: 19px 35px 17px 27px;
	margin-bottom: 12px;
}

.fva-ebene-3.fva-ist-offen > .fva-ebene-3-titel.fva-ebene-3-toggle {
	position: sticky;
	top: 0;
	z-index: 5;
}

.fva-wrapper,
.fivecode-veranstaltungen-auflistung,
.fva-ebene-3.fva-ebene-3-akkordeon,
.fva-ebene-3-inhalt {
	overflow: visible;
}

.fivecode-veranstaltungen-auflistung.fva-ist-flach .fva-ebene-3 {
	overflow: hidden;
}

/* Akkordeon-Pfeile (Ebene 3, Ebene 4, Veranstaltungsdetails) */

.fva-ebene-3.fva-ebene-3-akkordeon .fva-ebene-3-titel:after,
.fva-ebene-4.fva-akkordeon .fva-ebene-4-titel.fva-akkordeon-titel:after,
.veranstaltung-details-akkordeon__item .veranstaltung-details-akkordeon__title:after {
	background-image: url('/wp-content/uploads/2026/08/accordion-arrow-down.svg');
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	content: '';
	position: absolute;
	right: 0;
	width: 19px;
	height: 19px;
	transition: .3s;
}

.fva-ebene-3.fva-ebene-3-akkordeon.fva-ist-offen .fva-ebene-3-titel:after,
.fva-ebene-4.fva-akkordeon.fva-ist-offen .fva-ebene-4-titel.fva-akkordeon-titel:after,
.veranstaltung-details-akkordeon__item[open] .veranstaltung-details-akkordeon__title:after {
	background-image: url('/wp-content/uploads/2026/08/accordion-arrow-up.svg');
}

.fva-ebene-3.fva-ebene-3-akkordeon .fva-ebene-3-titel:after {
	right: 25px;
	top: 22px;
	filter: brightness(0) saturate(100%) invert(100%) sepia(15%) saturate(23%) hue-rotate(261deg) brightness(104%) contrast(102%);
}

.fva-ebene-3-toggle {
	cursor: pointer;
}

/* Farbverlauf der Kategorie-Balken */

.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(1) .fva-ebene-3-titel { background: #3C4A57; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(2) .fva-ebene-3-titel { background: #42505D; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(3) .fva-ebene-3-titel { background: #495764; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(4) .fva-ebene-3-titel { background: #4F5D6A; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(5) .fva-ebene-3-titel { background: #566470; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(6) .fva-ebene-3-titel { background: #5C6A77; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(7) .fva-ebene-3-titel { background: #63717D; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(8) .fva-ebene-3-titel { background: #697784; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(9) .fva-ebene-3-titel { background: #707D8A; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(10) .fva-ebene-3-titel { background: #768490; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(11) .fva-ebene-3-titel { background: #7D8A97; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(12) .fva-ebene-3-titel { background: #83919D; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(13) .fva-ebene-3-titel { background: #8A97A3; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(14) .fva-ebene-3-titel { background: #909DAA; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(15) .fva-ebene-3-titel { background: #97A4B0; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(16) .fva-ebene-3-titel { background: #9DAAB7; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(17) .fva-ebene-3-titel { background: #A4B1BD; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(18) .fva-ebene-3-titel { background: #AAB7C3; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(19) .fva-ebene-3-titel { background: #B1BECA; }
.fva-ebene-3.fva-ebene-3-akkordeon:nth-child(20) .fva-ebene-3-titel { background: #B7C4D0; }

.fva-ebene-3.fva-ebene-3-akkordeon .fva-ebene-3-inhalt {
	padding: 16px 20px 65px 20px;
}

.fva-ebene-4.fva-akkordeon {
	background: var(--e-global-color-secondary);
	padding: 22px 35px 20px 27px;
	margin-bottom: 12px;
}

.fva-ebene-4.fva-akkordeon:hover .fva-ebene-4-titel.fva-akkordeon-titel .fva-ebene-4-name {
	color: var(--e-global-color-2ef0a25);
}

.fva-ebene-4.fva-akkordeon .fva-ebene-4-titel.fva-akkordeon-titel:hover:after {
	filter: brightness(0) saturate(100%) invert(100%) sepia(23%) saturate(3461%) hue-rotate(172deg) brightness(85%) contrast(87%);
}

.fva-ebene-4-titel.fva-akkordeon-titel {
	position: relative;
	display: flex;
	align-items: center;
	gap: 24px;
	cursor: pointer;
}

.fva-ebene-4-name {
	font-family: var(--e-global-typography-898b344-font-family), Arial;
	font-size: var(--e-global-typography-898b344-font-size);
	font-weight: var(--e-global-typography-898b344-font-weight);
	line-height: var(--e-global-typography-898b344-line-height);
	color: var(--e-global-color-text);
	transition: .3s;
}

.fva-ebene-4.fva-akkordeon.fva-ist-offen .fva-ebene-4-name {
	color: var(--e-global-color-2ef0a25);
}

.fva-ebene-4-interne-id {
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: var(--e-global-typography-6f3e8bb-font-size);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
	color: var(--e-global-color-2ef0a25);
}

.fva-ebene-4-inhalt.fva-akkordeon-inhalt .fva-veranstaltungen-liste {
	padding: 0 0 45px 25px;
	display: flex;
	flex-direction: column;
}

.veranstaltung-details-akkordeon__downloads {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 7px !important;
	padding: 0 !important;
	margin: 6px 0 25px 0 !important;
}

.veranstaltung-details-akkordeon__download {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	background: var(--e-global-color-1d63f4f);
	padding: 8px 15px;
}

.veranstaltung-details-akkordeon__download-titel {
	flex: 1 1 auto;
}

.veranstaltung-details-akkordeon__download-button {
	flex: 0 0 auto;
	white-space: nowrap;
	color: var(--e-global-color-2ef0a25) !important;
	font-weight: 600 !important;
	font-size: 15px !important;
}

.veranstaltung-details-akkordeon__download-button:hover {
	color: var(--e-global-color-4984a15) !important;
}

.fva-veranstaltung-item {
	display: flex;
	flex-wrap: nowrap;
	gap: 35px;
	padding-top: 31px;
	margin-top: 22px;
	border-top: 1px solid #b7c4d075;
}

.fva-ebene-4.fva-akkordeon.fva-ebene-4-flach .fva-veranstaltung-item:first-child {
	border-top: none;
	margin-top: 0;
}

.fva-veranstaltung-spalte-1 {
	width: 45%;
}

.fva-veranstaltung-spalte-2 {
	width: 33%;
}

.fva-veranstaltung-spalte-3 {
	width: 22%;
}

.fva-veranstaltungen-liste .fva-veranstaltung-item .fva-veranstaltung-interne-id {
	font-family: var(--e-global-typography-b07bfe6-font-family), Arial;
	font-size: var(--e-global-typography-b07bfe6-font-size);
	font-weight: var(--e-global-typography-b07bfe6-font-weight);
	line-height: var(--e-global-typography-b07bfe6-line-height);
	color: var(--e-global-color-2ef0a25);
	padding-bottom: 1px;
}

.fva-veranstaltungen-liste .fva-veranstaltung-item .fva-veranstaltung-spalte-1 a {
	font-family: var(--e-global-typography-f7ed033-font-family), Arial;
	font-size: var(--e-global-typography-f7ed033-font-size);
	font-weight: var(--e-global-typography-f7ed033-font-weight);
	line-height: var(--e-global-typography-f7ed033-line-height);
	display: block;
}

.fva-veranstaltung-orte {
	font-family: var(--e-global-typography-736039f-font-family), Arial;
	font-size: var(--e-global-typography-736039f-font-size);
	font-weight: var(--e-global-typography-736039f-font-weight);
	line-height: var(--e-global-typography-736039f-line-height);
	color: var(--e-global-color-text);
	margin-top: 5px;
	display: flex;
	align-items: center;
}

.fva-veranstaltung-orte:before {
	content: '';
	display: inline-flex;
	background-image: url('/wp-content/uploads/2026/08/standort-icon.svg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
	margin-right: 7px;
	width: 15px;
	height: 14px;
}

.fva-veranstaltungen-liste .fva-veranstaltung-item .fva-veranstaltung-spalte-2 {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.fva-veranstaltungen-liste .fva-veranstaltung-item .fva-veranstaltung-spalte-3 {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.fva-veranstaltung-button {
	font-size: 15px;
	font-weight: 600;
	line-height: 20px;
	border-style: none;
	border-radius: 0;
	padding: 9px 20px;
	background: var(--e-global-color-2ef0a25);
	color: var(--e-global-color-secondary) !important;
	transition: .3s;
}

.fva-veranstaltung-button:hover {
	background: var(--e-global-color-4984a15);
}

.fva-termin-punkt {
	color: #A4C68F;
	margin-right: 6px;
}

.fva-termin-zeile {
	margin-bottom: -3px;
}

.fva-termin-datum {
	font-family: var(--e-global-typography-576b44b-font-family), Arial;
	font-size: var(--e-global-typography-576b44b-font-size);
	font-weight: var(--e-global-typography-576b44b-font-weight);
	line-height: var(--e-global-typography-576b44b-line-height);
	margin-right: 14px;
}

.fva-termin-ort,
.fva-termine-weitere {
	font-family: var(--e-global-typography-736039f-font-family), Arial;
	font-size: var(--e-global-typography-736039f-font-size);
	font-weight: var(--e-global-typography-736039f-font-weight);
	line-height: var(--e-global-typography-736039f-line-height);
}

.fva-termine-weitere {
	text-align: left;
	color: var(--e-global-color-2ef0a25);
	margin-top: 7px;
	padding-left: 24px;
}



.veranstaltung-details-termine-regulaid {
	background: var( --e-global-color-1d63f4f );
	padding: 40px;
	text-align: center;
}

.veranstaltung-details-termine-regulaid__hinweis {
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
    font-size: var(--e-global-typography-6f3e8bb-font-size);
    font-weight: var(--e-global-typography-6f3e8bb-font-weight);
    line-height: var(--e-global-typography-6f3e8bb-line-height);
	margin-bottom: 35px;
}






@media only screen and (max-width: 767px) {

	.fva-ebene-3.fva-ebene-3-akkordeon .fva-ebene-3-inhalt {
		padding-left: 0;
		padding-right: 0;
	}

	.fva-ebene-3.fva-ebene-3-akkordeon .fva-ebene-3-titel {
		padding: 13px 60px 13px 22px;
		font-size: calc(var(--e-global-typography-898b344-font-size) - 2px);
	}

	.fva-ebene-3.fva-ebene-3-akkordeon .fva-ebene-3-titel:after {
		top: 15px;
	}

	.fva-ebene-4.fva-akkordeon .fva-ebene-4-titel.fva-akkordeon-titel:after {
		top: 3px;
	}

	.fva-ebene-3.fva-ebene-3-akkordeon .fva-ebene-3-titel:after,
	.fva-ebene-4.fva-akkordeon .fva-ebene-4-titel.fva-akkordeon-titel:after {
		height: 15px;
		width: 15px;
	}

	.fva-ebene-4-name {
		font-size: calc(var(--e-global-typography-898b344-font-size) - 2px);
	}

	.fva-ebene-4.fva-akkordeon {
		padding: 18px 25px 16px 25px;
	}

	.fva-ebene-4-titel.fva-akkordeon-titel {
		gap: 18px;
	}

	.fva-ebene-4-interne-id {
		font-size: calc(var(--e-global-typography-6f3e8bb-font-size) - 3px);
	}

	.fva-veranstaltung-item {
		flex-direction: column;
	}

	.fva-veranstaltung-spalte-1,
	.fva-veranstaltung-spalte-2,
	.fva-veranstaltung-spalte-3 {
		width: 100%;
	}

	.fva-veranstaltung-button {
		font-size: 13px;
		padding: 7px 20px !important;
	}

	.fva-ebene-4-inhalt.fva-akkordeon-inhalt .fva-veranstaltungen-liste {
		padding-left: 0 !important;
	}

}

/* Veranstaltung Hero Bereich */

.veranstaltung-hero .veranstaltungstags {
	margin-bottom: 13px;
}

/* Veranstaltung Hero Details */

.veranstaltung-details-hero {
	display: flex;
	flex-direction: column;
	gap: 18px;
	margin-top: 30px;
	margin-bottom: 30px;
}

.veranstaltung-details-hero__label {
	font-family: var(--e-global-typography-736039f-font-family), Arial;
	font-size: var(--e-global-typography-736039f-font-size);
	font-weight: var(--e-global-typography-736039f-font-weight);
	line-height: var(--e-global-typography-736039f-line-height);
	margin-bottom: 3px;
}

.veranstaltung-details-hero__value {
	display: flex;
	align-items: center;
	gap: 9px;
	font-family: var(--e-global-typography-be9ecd8-font-family), Arial;
	font-size: var(--e-global-typography-be9ecd8-font-size);
	font-weight: var(--e-global-typography-be9ecd8-font-weight);
	line-height: var(--e-global-typography-be9ecd8-line-height);
	color: var(--e-global-color-text);
}

.veranstaltung-details-hero__value p {
	margin-bottom: 0;
}

.veranstaltung-details-hero__zielgruppe .veranstaltung-details-hero__value {
	flex-direction: column;
	align-items: start;
}

/* Veranstaltungen Inhalte Bereich mit Akkordeon */

.veranstaltung-details-akkordeon-infos__value,
.veranstaltung-details-akkordeon__content {
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: var(--e-global-typography-6f3e8bb-font-size);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
}

.veranstaltung-details-akkordeon__content {
	padding-bottom: 35px;
}

.veranstaltung-details-akkordeon {
	margin-top: 20px;
}

.veranstaltung-details-akkordeon__title {
	font-family: var(--e-global-typography-26997a1-font-family), Arial;
	font-size: var(--e-global-typography-26997a1-font-size);
	font-weight: var(--e-global-typography-26997a1-font-weight);
	line-height: var(--e-global-typography-26997a1-line-height);
	list-style: none;
	cursor: pointer;
}

.veranstaltung-details-akkordeon__title::-webkit-details-marker {
	display: none;
}

.veranstaltung-details-akkordeon__item .veranstaltung-details-akkordeon__title {
	padding-top: 27px;
	padding-bottom: 27px;
	border-top: 1px solid #b7c4d075;
	transition: .3s;
}

.veranstaltung-details-akkordeon__item .veranstaltung-details-akkordeon__title:hover {
	color: var(--e-global-color-2ef0a25);
}

.veranstaltung-details-akkordeon__item .veranstaltung-details-akkordeon__title:hover:after {
	opacity: .7;
}

.veranstaltung-details-akkordeon__item:last-child {
	border-bottom: 1px solid #b7c4d075;
}

.veranstaltung-details-akkordeon-infos p {
	margin-bottom: 9px !important;
}

.veranstaltung-details-akkordeon-infos ul {
	margin-top: 17px;
	margin-bottom: 20px;
	padding-inline-start: 18px;
}

/* Veranstaltungen Termine Bereich mit Anmeldung */

.veranstaltung-details-termine {
	display: flex;
	flex-direction: column;
	gap: 35px;
}

.veranstaltung-details-termine__termin {
	background: var(--e-global-color-1d63f4f);
	padding: 25px 30px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 40px;
}

.veranstaltung-details-termine__spalte.veranstaltung-details-termine__spalte--datum,
.veranstaltung-details-termine__spalte.veranstaltung-details-termine__spalte--info {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.veranstaltung-details-termine__spalte.veranstaltung-details-termine__spalte--datum {
	flex: 0 1 calc(40% - (40px * 2 / 3));
}

.veranstaltung-details-termine__spalte.veranstaltung-details-termine__spalte--info {
	flex: 0 1 calc(33% - (40px * 2 / 3));
}

.veranstaltung-details-termine__spalte.veranstaltung-details-termine__spalte--anmeldung {
	min-width: 0;
	flex: 0 1 calc(27% - (40px * 2 / 3));
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.veranstaltung-details-termine__termin iframe {
	flex-basis: 100%;
	width: 100%;
}

.veranstaltung-details-termine__label {
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: var(--e-global-typography-6f3e8bb-font-size);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
}

.veranstaltung-details-termine__value {
	margin-top: 3px;
	font-family: var(--e-global-typography-d0af5e6-font-family), Arial;
	font-size: calc(var(--e-global-typography-d0af5e6-font-size) - 1px);
	font-weight: var(--e-global-typography-d0af5e6-font-weight);
	line-height: var(--e-global-typography-d0af5e6-line-height);
	display: flex;
	align-items: center;
	gap: 10px;
}

.veranstaltung-details-termine__spalte.veranstaltung-details-termine__spalte--datum .veranstaltung-details-termine__value {
	align-items: start;
}

.veranstaltung-details-termine__icon {
	width: 19px;
	height: 19px;
	flex-shrink: 0;
}

.veranstaltung-details-termine__spalte.veranstaltung-details-termine__spalte--datum .veranstaltung-details-termine__value .veranstaltung-details-termine__icon {
	padding-top: 4px;
}

.veranstaltung-details-termine__spalte.veranstaltung-details-termine__spalte--anmeldung .veranstaltung-details-termine__row {
	display: flex;
	justify-content: space-between;
}

.veranstaltung-details-termine__row--verfuegbarkeit {
	margin-bottom: 6px;
}

.veranstaltung-details-termine__anmelden-link {
	margin-top: 8px;
	font-size: 16px;
	font-weight: 600;
	line-height: 20px;
	border-style: none;
	border-radius: 0;
	padding: 11px 20px !important;
	text-align: center;
	background: var(--e-global-color-text);
	color: var(--e-global-color-secondary) !important;
	transition: .3s;
}

.veranstaltung-details-termine__anmelden-link:hover {
	background: var(--e-global-color-2ef0a25);
}

.veranstaltung-details-termine__anmelden-link.veranstaltung-details-termine__anmelden-link--deaktiviert {
	opacity: .5 !important;
	background: var(--e-global-color-text) !important;
}

.veranstaltung-details-termine__anmelden-link.veranstaltung-details-termine__anmelden-link--active {
	opacity: .3 !important;
	background: var(--e-global-color-text) !important;
	cursor: not-allowed;
}

.veranstaltung-details-termine__dozent-bild {
	width: 46px !important;
	height: 46px !important;
	border-radius: 50% !important;
	object-fit: cover;
	object-position: 50% 73%;
	flex-shrink: 0;
}

.veranstaltung-details-termine__dozent-bild--placeholder {
	background-color: #ecedee;
	background-image: url('/wp-content/uploads/2026/08/benutzer.svg');
	background-size: 82%;
	background-repeat: no-repeat;
	background-position: center bottom;
}

.veranstaltung-details-termine__info-trigger {
	background: none !important;
	border: none;
	padding: 0 !important;
	margin-top: 4px;
	cursor: pointer;
	vertical-align: middle;
}

.veranstaltung-details-termine__spalte.veranstaltung-details-termine__spalte--anmeldung .veranstaltung-details-termine__info-trigger {
	margin-left: 8px;
	margin-top: 1px;
}

.veranstaltung-details-termine__info-trigger:hover {
	opacity: .7;
}

.veranstaltung-details-termine__info-icon {
	width: 15px;
	height: 15px;
}

.veranstaltung-details-termine__popup-overlay {
	display: flex;
	align-items: center;
	justify-content: center;
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, .5);
	z-index: 1000;
}

.veranstaltung-details-termine__popup-overlay[hidden] {
	display: none;
}

.veranstaltung-details-termine__popup {
	background: #fff;
	padding: 37px;
	max-width: 500px;
	width: 90%;
	max-height: 80vh;
	overflow-y: auto;
	position: relative;
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: var(--e-global-typography-6f3e8bb-font-size);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
}

.veranstaltung-details-termine__popup-close {
	position: absolute;
	top: 12px;
	right: 12px;
	border: none;
	font-size: 26px !important;
	line-height: 1;
	cursor: pointer;
	background: none !important;
	width: auto !important;
	padding: 0 !important;
	color: var(--e-global-color-text) !important;
}

.veranstaltung-details-termine__popup-dozent-name {
	font-family: var(--e-global-typography-d0af5e6-font-family), Arial;
	font-size: var(--e-global-typography-d0af5e6-font-size);
	font-weight: var(--e-global-typography-d0af5e6-font-weight);
	line-height: var(--e-global-typography-d0af5e6-line-height);
	margin-bottom: 15px;
}

.veranstaltung-details-termine__popup-kontakt {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.veranstaltung-details-termine__popup-kontakt .veranstaltung-details-termine__popup-kontakt-item {
	display: flex;
	gap: 10px;
}

.veranstaltung-details-termine__status-punkt {
	display: inline-block;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	vertical-align: middle;
}

.veranstaltung-details-termine__status-punkt--frei {
	background-color: #A4C68F;
}

.veranstaltung-details-termine__status-punkt--wenige {
	background-color: #f2b705;
}

.veranstaltung-details-termine__status-punkt--nicht-buchbar {
	background-color: #d93025;
}

.veranstaltung-details-termine__row--verfuegbarkeit .veranstaltung-details-termine__value {
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: var(--e-global-typography-6f3e8bb-font-size);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
}

.veranstaltung-details-termine-vergangen__button-wrapper {
	text-align: center;
}

.veranstaltung-details-termine-vergangen__button {
	margin-top: 40px;
	margin-bottom: 40px;
	background: var(--e-global-color-2ef0a25) !important;
	color: var(--e-global-color-secondary) !important;
}

.veranstaltung-details-termine-vergangen__button:hover {
	background: var(--e-global-color-4984a15) !important;
}

@media only screen and (max-width: 1024px) {

	.veranstaltung-details-termine__termin {
		gap: 28px;
	}

	.veranstaltung-details-termine__spalte,
	.veranstaltung-details-termine__spalte.veranstaltung-details-termine__spalte--anmeldung {
		flex: 100%;
	}

	.veranstaltung-details-termine__spalte.veranstaltung-details-termine__spalte--datum,
	.veranstaltung-details-termine__spalte.veranstaltung-details-termine__spalte--info {
		flex: calc(50% - 30px);
	}

}

@media only screen and (max-width: 767px) {

	.veranstaltung-details-termine__termin {
		flex-direction: column;
		padding: 25px;
	}

	.veranstaltung-details-termine__label {
		font-size: calc(var(--e-global-typography-6f3e8bb-font-size) - 2px);
		padding-bottom: 1px;
	}

}

/* Login Popup vor Veranstaltungsbuchung */

.veranstaltung-details-termine__login-titel {
	font-family: var(--e-global-typography-a1c4a7f-font-family), Arial;
	font-size: calc(var(--e-global-typography-a1c4a7f-font-size) - 3px);
	font-weight: var(--e-global-typography-a1c4a7f-font-weight);
	line-height: calc(var(--e-global-typography-a1c4a7f-line-height) - 3px);
	text-align: center;
}

.veranstaltung-details-termine__login-text {
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: calc(var(--e-global-typography-6f3e8bb-font-size) - 1px);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: calc(var(--e-global-typography-6f3e8bb-line-height) - 1px);
	color: var(--e-global-color-2ef0a25);
	text-align: center;
	margin: 7px auto 15px;
	width: 320px;
}

/* Veranstaltungen Loop Grid Item */

.veranstaltung-details-loop-preview {
	display: flex;
	flex-direction: column;
	gap: 24px;
	font-family: var(--e-global-typography-accent-font-family), Arial;
	font-size: var(--e-global-typography-accent-font-size);
	font-weight: var(--e-global-typography-accent-font-weight);
	line-height: var(--e-global-typography-accent-line-height);
	min-height: 300px;
}

.search-results .veranstaltung-details-loop-preview {
	min-height: 0;
}

.veranstaltung-details-loop-preview__titel {
	font-family: var(--e-global-typography-72759ea-font-family), Arial;
	font-size: var(--e-global-typography-72759ea-font-size);
	font-weight: var(--e-global-typography-72759ea-font-weight);
	line-height: var(--e-global-typography-72759ea-line-height);
}

.veranstaltung-details-loop-preview__standorte,
.veranstaltung-details-loop-preview__starttermine {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.veranstaltung-details-loop-preview__meta {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.search-results .veranstaltung-details-loop-preview__meta {
	flex-direction: row;
	gap: 80px;
}

.veranstaltung-details-loop-preview__icon {
	width: 22px;
	height: 22px;
	flex-shrink: 0;
}

.veranstaltung-details-loop-preview__standorte span,
.veranstaltung-details-loop-preview__starttermine span {
	flex: 1;
}

.veranstaltung-details-loop-preview__footer {
	margin-top: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.veranstaltung-details-loop-preview__preis {
	font-family: var(--e-global-typography-d0af5e6-font-family), Arial;
	font-size: var(--e-global-typography-d0af5e6-font-size);
	font-weight: var(--e-global-typography-d0af5e6-font-weight);
	line-height: var(--e-global-typography-d0af5e6-line-height);
}

.veranstaltung-details-loop-preview__link {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	font-family: "Open Sans", Arial;
	font-size: 16px;
	font-weight: 600;
	line-height: 20px;
	border-style: none;
	border-radius: 0;
	padding: 10px 23px;
	background: var(--e-global-color-2ef0a25);
	color: var(--e-global-color-secondary) !important;
	transition: .3s;
}

.veranstaltung-details-loop-preview__link:hover,
.veranstaltung-details-loop-preview__link:focus {
	background: var(--e-global-color-4984a15);
}

/* Passwortschutz (Seiten und Veranstaltungstermine) */

.fivecode-pw,
.veranstaltung-details-termine-schutz__inner {
	max-width: 730px;
	margin-left: auto;
	margin-right: auto;
	padding: 40px 50px;
	background: var(--e-global-color-1d63f4f);
}

.fivecode-pw {
	margin-top: 130px;
	margin-bottom: 130px;
}

.veranstaltung-details-termine-schutz__inner {
	margin-top: 40px;
	margin-bottom: 40px;
}

.fivecode-pw__titel {
	margin-top: 0;
	font-size: var(--e-global-typography-1e2e478-font-size) !important;
	font-weight: 600 !important;
	line-height: var(--e-global-typography-1e2e478-line-height) !important;
	margin-bottom: 13px;
}

.fivecode-pw__text,
.veranstaltung-details-termine-schutz__hinweis {
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: var(--e-global-typography-6f3e8bb-font-size);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
}

.fivecode-pw__text {
	margin-bottom: 50px;
}

.veranstaltung-details-termine-schutz__hinweis {
	margin-bottom: 30px;
}

.fivecode-pw__form,
.veranstaltung-details-termine-schutz__formular {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	align-items: stretch;
}

.veranstaltung-details-termine-schutz__label {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

.fivecode-pw__input,
.veranstaltung-details-termine-schutz__eingabe {
	flex: 1 1 200px;
	min-width: 0;
	border-radius: 0 !important;
	border: 1px solid var(--e-global-color-4984a15) !important;
	outline: none;
}

.veranstaltung-details-termine-schutz__eingabe {
	padding: .5rem 1rem;
}

.fivecode-pw__button,
.veranstaltung-details-termine-schutz__button {
	flex: 0 0 auto;
	white-space: nowrap;
	font-family: "Open Sans", Arial;
	font-size: 16px;
	font-weight: 600;
	line-height: 20px;
	border-style: none;
	border-radius: 0;
	padding: 11px 40px;
	background: var(--e-global-color-text);
	color: var(--e-global-color-secondary);
}

.fivecode-pw__button:hover,
.veranstaltung-details-termine-schutz__button:hover {
	background: var(--e-global-color-2ef0a25) !important;
	color: var(--e-global-color-secondary);
}

.veranstaltung-details-termine-schutz__button:disabled {
	opacity: .5;
	cursor: default;
}

.veranstaltung-details-termine-schutz__fehler {
	margin: 12px 0 0;
	color: #a00;
	font-size: 15px;
	line-height: 1.4;
}

.veranstaltung-details-termine-schutz__fehler[hidden] {
	display: none;
}

.veranstaltung-details-termine-schutz--laedt .veranstaltung-details-termine-schutz__inner {
	opacity: .6;
}

/* Datepicker */

.flatpickr-calendar {
	border-radius: 0;
	border: none !important;
	font-family: 'Open Sans';
}

.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year {
	font-weight: 600;
	font-size: 16px;
}

/* Veranstaltungstags */

.veranstaltungstags {
	display: flex;
	flex-direction: row;
	gap: 5px;
}

.veranstaltungstags .veranstaltungstag {
	padding: 1px 12px;
	background: var(--e-global-color-2ef0a25);
	color: var(--e-global-color-secondary);
	font-family: var(--e-global-typography-736039f-font-family), Arial;
	font-size: calc(var(--e-global-typography-736039f-font-size) - 1px);
	font-weight: var(--e-global-typography-736039f-font-weight);
	line-height: var(--e-global-typography-736039f-line-height);
}

.fva-veranstaltung-item .veranstaltungstags {
	margin-bottom: 12px;
}

.fva-veranstaltung-item .veranstaltungstags .veranstaltungstag {
	padding: 1px 10px;
	background: var(--e-global-color-text);
	font-family: var(--e-global-typography-b07bfe6-font-family), Arial;
	font-size: var(--e-global-typography-b07bfe6-font-size);
	font-weight: var(--e-global-typography-b07bfe6-font-weight);
	line-height: var(--e-global-typography-b07bfe6-line-height);
}

.weitere-veranstaltungen-karussell .veranstaltungstags .veranstaltungstag {
	background: var(--e-global-color-text);
}

/* Standorte */

.standort-informationen {
	display: flex;
	flex-direction: column;
	gap: 23px;
	position: relative;
}

.standort-info__titel {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 2px;
	font-family: var(--e-global-typography-d567e82-font-family), Arial;
	font-size: var(--e-global-typography-d567e82-font-size);
	font-weight: var(--e-global-typography-d567e82-font-weight);
	line-height: var(--e-global-typography-d567e82-line-height);
	color: var(--e-global-color-2ef0a25);
}

.standort-info__icon {
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	display: block;
	margin-top: 0;
}

.standort-info__wert {
	font-family: var(--e-global-typography-accent-font-family), Arial;
	font-size: calc(var(--e-global-typography-accent-font-size) - 1px);
	font-weight: var(--e-global-typography-accent-font-weight);
	line-height: var(--e-global-typography-accent-line-height);
	margin-left: 30px;
}

.fivecode-standorte-karte {
	box-shadow: 0 4px 20px 0 rgba(0, 0, 0, .13);
}

.single-standort .fivecode-standorte-karte {
	box-shadow: none;
}

.gm-style .gm-style-iw-c {
	border-radius: 0 !important;
	box-shadow: 0 2px 7px 1px rgba(0,0,0,.15);
	padding: 0 !important;
}

.infowindow-content {
	width: 225px;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.infowindow-content img.vorschaubild {
	height: 100px;
	width: 100%;
	object-fit: cover;
	object-position: center center;
	margin-bottom: 2px;
}

.infowindow-content a img {
	width: 15px !important;
	height: 12px !important;
}

.infowindow-content a.detail-link {
	padding: 0 15px 8px 15px !important;
	font-size: var(--e-global-typography-d567e82-font-size);
	font-weight: var(--e-global-typography-d567e82-font-weight);
	line-height: var(--e-global-typography-d567e82-line-height);
	color: var(--e-global-color-2ef0a25);
	transition: .3s;
}

.infowindow-content a.detail-link:hover .detail-link__text {
	text-decoration: none !important;
}

.infowindow-content .detail-link:hover .detail-link__icon {
	transform: none !important;
}

.infowindow-content a.detail-link:hover {
	filter: brightness(0) saturate(100%) invert(27%) sepia(40%) saturate(250%) hue-rotate(167deg) brightness(93%) contrast(96%);
}

.infowindow-content .titel {
	padding: 12px 15px 0 15px !important;
	width: 100%;
	font-size: var(--e-global-typography-d567e82-font-size);
	font-weight: var(--e-global-typography-d567e82-font-weight) !important;
	line-height: var(--e-global-typography-d567e82-line-height);
	color: var(--e-global-color-text);
}

.infowindow-content .adresse {
	padding: 0 15px !important;
	margin-bottom: 4px !important;
	width: 100%;
	font-family: var(--e-global-typography-b07bfe6-font-family), Arial;
	font-size: var(--e-global-typography-b07bfe6-font-size);
	font-weight: var(--e-global-typography-b07bfe6-font-weight);
	line-height: var(--e-global-typography-b07bfe6-line-height);
}

.gm-style-iw-t > div {
	padding: 0 !important;
	margin: 0 !important;
}

.gm-style-iw-chr button {
	position: absolute !important;
	right: 7px;
	top: 6px;
	opacity: 1 !important;
	background: var(--e-global-color-text) !important;
	border-radius: 100px;
	width: 25px !important;
	height: 25px !important;
}

.gm-style-iw-chr button span {
	background-color: white !important;
	height: 15px !important;
	width: 15px !important;
	margin: 5px !important;
}

.gm-style-iw-chr button:hover {
	background: var(--e-global-color-2ef0a25) !important;
}

.gm-style-iw-ch {
	padding: 0;
}

.gm-style-iw-d {
	overflow: visible !important;
	max-height: 230px !important;
}

/* 3D Rundgang und Google Maps Links */

.standort-info--adresse .standort-info__link {
	margin-top: 7px;
	font-size: 13px;
}

.standort-info__link {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--e-global-color-2ef0a25) !important;
}

.standort-info__link:hover {
	color: var(--e-global-color-4984a15) !important;
}

.standort-info__arrow {
	width: 12px;
	height: 12px;
	flex: 0 0 12px;
	display: block;
	margin-top: 1px;
	transition: transform .2s ease;
}

.standort-info__link .standort-info__arrow {
	filter: brightness(0) saturate(100%) invert(53%) sepia(33%) saturate(296%) hue-rotate(167deg) brightness(93%) contrast(92%);
}

.standort-info__link:hover .standort-info__arrow {
	filter: brightness(0) saturate(100%) invert(88%) sepia(22%) saturate(159%) hue-rotate(166deg) brightness(88%) contrast(85%);
}

/* Breadcrumb */

.breadcrumb {
	font-family: var(--e-global-typography-736039f-font-family), Arial;
	font-size: var(--e-global-typography-736039f-font-size);
	font-weight: var(--e-global-typography-736039f-font-weight);
	line-height: var(--e-global-typography-736039f-line-height);
	padding-top: 10px;
	padding-bottom: 10px;
}

.breadcrumb--dunkel a {
	color: var(--e-global-color-text) !important;
}

.breadcrumb--dunkel .breadcrumb__current,
.breadcrumb--dunkel .breadcrumb__separator {
	color: var(--e-global-color-2ef0a25);
}

.breadcrumb--hell a {
	color: var(--e-global-color-secondary) !important;
}

.breadcrumb--hell .breadcrumb__current {
	color: var(--e-global-color-4984a15);
}

.breadcrumb--hell .breadcrumb__separator {
	color: var(--e-global-color-secondary);
}

.breadcrumb__list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.breadcrumb__item {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
}

.breadcrumb__link {
	text-decoration: none;
}

.breadcrumb__link:hover,
.breadcrumb__link:focus-visible {
	text-decoration: underline;
	text-underline-offset: .2em;
}

.breadcrumb__separator {
	display: inline-flex;
	flex: 0 0 auto;
}

.breadcrumb__separator svg {
	display: block;
	width: .85em;
	height: .85em;
}

/* Ansprechpersonen fuer Veranstaltungen ganz unten */

.ansprechpersonen__title {
	margin-bottom: 30px;
	font-family: var(--e-global-typography-a8e9e45-font-family), Arial;
	font-size: var(--e-global-typography-a8e9e45-font-size);
	font-weight: var(--e-global-typography-a8e9e45-font-weight);
	line-height: var(--e-global-typography-a8e9e45-line-height);
	color: var(--e-global-color-secondary) !important;
}

.ansprechpersonen__list {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.ansprechperson {
	display: flex;
	flex-direction: column;
	gap: 9px;
	flex: 1 1 260px;
	min-width: 240px;
}

.ansprechperson__name {
	margin-bottom: 4px;
	color: white;
	font-family: var(--e-global-typography-be9ecd8-font-family), Arial;
	font-size: var(--e-global-typography-be9ecd8-font-size);
	font-weight: var(--e-global-typography-be9ecd8-font-weight);
	line-height: var(--e-global-typography-be9ecd8-line-height);
}

.ansprechperson__link {
	display: inline-flex;
	align-items: center;
	gap: 15px;
	color: white !important;
	transition: .3s;
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: var(--e-global-typography-6f3e8bb-font-size);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
}

.ansprechperson__link:hover span,
.ansprechperson__link:focus span {
	opacity: .8;
}

.ansprechperson__icon {
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	object-fit: contain;
	display: block;
}

/* Datenschutz */

.page-id-5889 h2 {
	font-family: var(--e-global-typography-26997a1-font-family), Arial;
	font-size: var(--e-global-typography-26997a1-font-size);
	font-weight: var(--e-global-typography-26997a1-font-weight);
	line-height: var(--e-global-typography-26997a1-line-height);
	margin-top: 40px;
}

.page-id-5889 h3 {
	font-family: var(--e-global-typography-a8e9e45-font-family), Arial;
	font-size: var(--e-global-typography-a8e9e45-font-size);
	font-weight: var(--e-global-typography-a8e9e45-font-weight);
	line-height: var(--e-global-typography-a8e9e45-line-height);
	margin-top: 30px;
}

/* Scroll to top Button */

.scroll-to-top {
	position: fixed;
	right: 25px;
	bottom: 25px;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	margin: 0;
	padding: 0 0 2px 0;
	border: 0;
	border-radius: 50%;
	background-color: var(--e-global-color-b44d92d);
	text-decoration: none;
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity .3s ease, transform .3s ease, visibility .3s ease, background-color .3s ease;
}

.scroll-to-top.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.scroll-to-top:hover,
.scroll-to-top:focus,
.scroll-to-top:focus-visible {
	background-color: var(--e-global-color-4984a15);
	text-decoration: none;
}

.scroll-to-top img {
	display: block;
	width: 20px;
	height: 20px;
	pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
	.scroll-to-top {
		transition: none;
	}
}

/* Tabellen ohne Elementor */

table {
	font-size: .8em;
	margin-bottom: 60px;
}

table thead:first-child tr:first-child th {
	text-align: left;
}

table td,
table th {
	padding: 12px;
}

/* Startseite Fachbereiche Kacheln */

.fachbereich-kachel .hovertext {
	display: grid;
	grid-template-rows: 0fr;
	opacity: 0;
	transition: grid-template-rows .5s ease, opacity .5s ease;
}

.fachbereich-kachel .hovertext > * {
	min-height: 0;
	overflow: hidden;
}

.fachbereich-kachel:hover .hovertext {
	grid-template-rows: 1fr;
	opacity: 1;
}

.fachbereich-kachel .elementor-button-secondary a {
	padding-left: 5px;
	padding-right: 5px;
}

/* One Tap */

#onetap-language-list {
	display: none !important;
}

nav.onetap-accessibility.onetap-plugin-onetap .onetap-container .onetap-accessibility-settings div.onetap-multi-functional-feature .onetap-box-functions,
nav.onetap-accessibility.onetap-plugin-onetap .onetap-container .onetap-accessibility-settings .onetap-features-container .onetap-features,
nav.onetap-accessibility.onetap-plugin-onetap .onetap-container .onetap-accessibility-settings .onetap-reset-settings button,
nav.onetap-accessibility.onetap-plugin-onetap .onetap-container .onetap-accessibility-settings .onetap-features-container .onetap-features .onetap-skip-content-control select,
nav.onetap-accessibility.onetap-plugin-onetap .onetap-container .onetap-accessibility-settings .onetap-features-container .onetap-features .onetap-box-features .onetap-box-feature,
nav.onetap-accessibility.onetap-plugin-onetap .onetap-container .onetap-accessibility-settings .onetap-features-container .onetap-features .onetap-box-features .onetap-box-feature:focus-visible,
nav.onetap-accessibility.onetap-plugin-onetap .onetap-container .onetap-accessibility-settings .onetap-features-container .onetap-features .onetap-box-features .onetap-box-feature:hover {
	border-radius: 0 !important;
}

/* Leichte Sprache Logo in Footer Menue */

.leichte-sprache-logo a:after {
	content: '';
	opacity: 1 !important;
	height: 25px;
	width: 25px;
	position: relative;
	margin-left: 14px;
	background-size: contain;
	background-position: center center;
	background-image: url('/wp-content/uploads/2026/09/ETR.jpg');
}

/* Onpage Menue */

.onpage-menue-wrapper {
	padding-left: 0;
	padding-right: 0;
}

.onpage-menue-wrapper:before {
	z-index: 3;
	content: '';
	position: absolute;
	left: unset;
	right: 0;
	width: 30px;
	height: 36px;
	top: 10px;
	background: linear-gradient(90deg, rgba(233, 237, 241, 0) 0%, rgba(233, 237, 241, 1) 100%);
}

.onpage-menue-wrapper .e-con-inner {
	padding-top: 0;
	padding-bottom: 0;
}

.onpage-menue-wrapper .elementor-nav-menu {
	padding: 20px;
	display: flex;
	flex-wrap: nowrap;
	width: max-content;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scroll-snap-type: x proximity;
	scrollbar-width: thin;
}

/* Mobile Menue */

.elementor-nav-menu--dropdown.elementor-nav-menu__container {
	border-top: 5px solid var(--e-global-color-4984a15);
	box-shadow: 0 3px 8px -2px rgba(0,0,0,.2);
}

.elementor-nav-menu--dropdown .elementor-nav-menu {
	border-top: 15px solid white;
	border-bottom: 15px solid white;
	margin-left: 20px;
	margin-right: 20px;
}

.elementor-nav-menu--dropdown .elementor-item {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.elementor-nav-menu--dropdown .elementor-item:after {
	position: absolute;
	right: 0;
	top: 19px;
	content: url('/wp-content/uploads/2022/09/menue-arrow-right.svg');
	opacity: 1 !important;
}

.elementor-nav-menu--dropdown .elementor-item.elementor-item.has-submenu.highlighted:after {
	content: url('/wp-content/uploads/2022/09/menue-arrow-top.svg');
}

/* Mobile Menue Ebene 1 */

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item {
	border-bottom: 1px solid #E7E8E8;
}

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item:last-child {
	border-bottom: none;
}

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > a {
	padding-top: 21px !important;
	padding-bottom: 19px !important;
	font-size: calc(var(--e-global-typography-be9ecd8-font-size) - 1px) !important;
}

/* Mobile Menue Ebene 2 */

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item {
	border-top: 1px solid #E7E8E8;
}

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item.skip-ebene-1 > .sub-menu > .menu-item,
.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item:first-child {
	border-top: 0;
}

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item > a {
	padding: 20px 0 18px 0;
	font-size: 14px;
	font-weight: 400;
}

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item > a.has-submenu:after,
.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item > .sub-menu > .menu-item > a.has-submenu:after {
	position: relative;
	margin-left: 12px;
	content: url('/wp-content/uploads/2022/09/menue-arrow-small-right.svg');
	opacity: 1 !important;
}

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item > a.has-submenu.highlighted:after {
	content: url('/wp-content/uploads/2022/09/menue-arrow-small-top.svg');
}

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item:first-child > a {
	padding-top: 9px;
}

/* Mobile Menue Ebene 3 (und Ebene 2 bei skip-ebene-1) */

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item > .sub-menu > .menu-item,
.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item.skip-ebene-1 > .sub-menu > .menu-item {
	margin-left: 10px;
	border-left: 1px solid #E7E8E8;
	padding-left: 20px;
}

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item > .sub-menu > .menu-item > a,
.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item.skip-ebene-1 > .sub-menu > .menu-item > a {
	padding: 14px 0 12px 0;
	font-size: 14px;
	font-weight: 400;
}

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item > .sub-menu > .menu-item:first-child,
.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item.skip-ebene-1 > .sub-menu > .menu-item:first-child {
	margin-top: 15px;
}

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item > .sub-menu > .menu-item:first-child a,
.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item.skip-ebene-1 > .sub-menu > .menu-item:first-child a {
	padding-top: 0;
}

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item > .sub-menu > .menu-item:last-child,
.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item.skip-ebene-1 > .sub-menu > .menu-item:last-child {
	margin-bottom: 40px;
}

.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > .sub-menu > .menu-item > .sub-menu > .menu-item:last-child a,
.elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item.skip-ebene-1 > .sub-menu > .menu-item:last-child a {
	padding-bottom: 0;
}

/* Submenue */

.elementor-widget-n-menu .e-n-menu-content {
	box-shadow: 0 3px 8px -2px rgba(0,0,0,.2);
}

/* Stellenangebote */

.single-stellenangebot h2 {
	font-family: var(--e-global-typography-1a3c5c0-font-family), Arial;
	font-size: var(--e-global-typography-1a3c5c0-font-size);
	font-weight: var(--e-global-typography-1a3c5c0-font-weight);
	line-height: var(--e-global-typography-1a3c5c0-line-height);
	margin-bottom: 22px;
}

/* Elementor Formulare */

.elementor-form-fields-wrapper .elementor-field-group > label {
	font-size: calc(var(--e-global-typography-6f3e8bb-font-size) - 1px) !important;
	font-weight: 600 !important;
}

/* Ausbildung Anmeldung Formular */

.elementor-field-group-anmeldung_vl1 {
	display: none;
}

.elementor-field-group-anmeldung_vfa {
	display: none;
}

.postid-6215 .elementor-field-group-anmeldung_vl1 {
	display: block;
}

.postid-6212 .elementor-field-group-anmeldung_vfa {
	display: block;
}

.ausbildung-anmeldeformular .formular-subtitel {
	font-family: var(--e-global-typography-26997a1-font-family), Arial;
	font-size: calc(var(--e-global-typography-26997a1-font-size) - 1px);
	font-weight: var(--e-global-typography-26997a1-font-weight);
	line-height: calc(var(--e-global-typography-26997a1-line-height) + 0.1);
}

.ausbildung-anmeldeformular .e-form__buttons,
.ausbildung-anmeldeformular p {
	margin-top: 20px !important;
}

.ausbildung-anmeldeformular p,
.ausbildung-anmeldeformular ul,
.ausbildung-anmeldeformular ul li {
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: var(--e-global-typography-6f3e8bb-font-size);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
}

.ausbildung-anmeldeformular ul li {
	padding-bottom: 2px;
}

.ausbildung-anmeldeformular .elementor-field-type-html,
.ausbildung-anmeldeformular .elementor-field-group.e-form__buttons__wrapper {
	margin-bottom: 0 !important;
}

.ausbildung-anmeldeformular .elementor-form-fields-wrapper {
	padding: 40px;
}

@media only screen and (max-width: 767px) {

	.ausbildung-anmeldeformular .elementor-form-fields-wrapper {
		padding: 20px;
	}

}

/* ==========================================================================
   Registrierung, Login, Passwort vergessen
   ========================================================================== */

.stiwl-auth {
	width: 100%;
	max-width: 430px;
	margin: 0 auto;
	box-sizing: border-box;
}

.stiwl-auth *,
.stiwl-auth *::before,
.stiwl-auth *::after {
	box-sizing: border-box;
}

.stiwl-auth [hidden],
.stiwl-konto [hidden] {
	display: none !important;
}

/* Formular */

.stiwl-auth__form {
	display: flex;
	flex-direction: column;
	gap: 20px;
	transition: opacity .2s ease;
}

.stiwl-auth__form.is-loading {
	opacity: .7;
	pointer-events: none;
}

/* Felder */

.stiwl-auth__field {
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.stiwl-auth__label {
	display: block;
	margin: 0;
	color: var(--e-global-color-text);
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: calc(var(--e-global-typography-6f3e8bb-font-size) - 1px);
	font-weight: 600;
	line-height: var(--e-global-typography-6f3e8bb-line-height);
}

.stiwl-auth__input,
.stiwl-auth input.stiwl-auth__input {
	display: block;
	width: 100%;
	background-color: #fff;
	border-color: var(--e-global-color-b44d92d);
	border-width: 1px;
	border-radius: 0;
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: var(--e-global-typography-6f3e8bb-font-size);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
	color: var(--e-global-color-text);
	box-shadow: none;
	outline: none;
	transition: border-color .15s ease, box-shadow .15s ease;
	-webkit-appearance: none;
	appearance: none;
}

.stiwl-auth__input::placeholder {
	color: var(--e-global-color-4984a15);
	opacity: 1;
}

.stiwl-auth__input--code,
.stiwl-auth input.stiwl-auth__input--code {
	font-size: 24px;
	font-weight: 600;
	letter-spacing: .5em;
	text-align: center;
	padding-left: calc(18px + .5em);
	font-variant-numeric: tabular-nums;
}

.stiwl-auth__input.is-gueltig,
.stiwl-auth input.stiwl-auth__input.is-gueltig {
	border-color: #067647;
}

/* Zweispaltige Felder (Vorname / Nachname) */

.stiwl-auth__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

/* Zeile: Checkbox + Passwort vergessen */

.stiwl-auth__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px 24px;
}

.stiwl-auth__checkbox {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	cursor: pointer;
	color: #3b4150;
	user-select: none;
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: calc(var(--e-global-typography-6f3e8bb-font-size) - 1px);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
}

.stiwl-auth__checkbox input[type="checkbox"] {
	position: relative;
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin: 0;
	background: #fff;
	border: 1px solid var(--e-global-color-b44d92d);
	border-radius: 0;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	transition: background-color .15s ease, border-color .15s ease;
}

.stiwl-auth__checkbox input[type="checkbox"]:checked {
	background: var(--e-global-color-2ef0a25);
}

.stiwl-auth__checkbox input[type="checkbox"]:checked::after {
	content: "";
	position: absolute;
	left: 6px;
	top: 2px;
	width: 5px;
	height: 10px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

.stiwl-auth__checkbox input[type="checkbox"]:focus-visible {
	outline: none;
}

/* Links */

.stiwl-auth__link,
.stiwl-auth a.stiwl-auth__link {
	color: var(--e-global-color-2ef0a25);
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: calc(var(--e-global-typography-6f3e8bb-font-size) - 1px);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
	text-decoration: none;
	transition: color .15s ease;
}

.stiwl-auth__link:hover,
.stiwl-auth__link:focus-visible {
	color: var(--e-global-color-text) !important;
	text-decoration: underline;
}

.stiwl-auth__linkbutton,
.stiwl-auth button.stiwl-auth__linkbutton {
	display: inline;
	margin: 0;
	padding: 0;
	font: inherit;
	color: var(--e-global-color-2ef0a25);
	background: none;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	cursor: pointer;
	text-decoration: none;
}

.stiwl-auth__linkbutton:hover,
.stiwl-auth__linkbutton:focus-visible {
	color: var(--e-global-color-text) !important;
	background: none;
	text-decoration: underline;
}

.stiwl-auth__linkbutton:disabled {
	color: #6b7280;
	cursor: default;
	text-decoration: none;
}

/* Button */

.stiwl-auth__button,
.stiwl-auth button.stiwl-auth__button,
.stiwl-auth a.stiwl-auth__button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	margin: 0;
	font-family: var(--e-global-typography-be9ecd8-font-family), Arial;
	font-size: var(--e-global-typography-be9ecd8-font-size);
	font-weight: var(--e-global-typography-be9ecd8-font-weight);
	line-height: var(--e-global-typography-be9ecd8-line-height);
	padding: 9px 50px;
	background-color: var(--e-global-color-text);
	color: #fff;
	border: 0;
	box-shadow: none;
	text-decoration: none;
	cursor: pointer;
	transition: background-color .25s ease;
}

.stiwl-auth__button:hover,
.stiwl-auth__button:focus-visible {
	color: #fff;
	background: var(--e-global-color-2ef0a25) !important;
	text-decoration: none;
}

.stiwl-auth__button:focus-visible {
	outline: none;
}

.stiwl-auth__button:disabled {
	cursor: wait;
	opacity: .85;
}

/* Lade-Spinner im Button */

.stiwl-auth__form.is-loading .stiwl-auth__button::before {
	content: "";
	width: 16px;
	height: 16px;
	border: 2px solid var(--e-global-color-2ef0a25);
	border-top-color: #fff;
	border-radius: 50%;
	animation: stiwl-auth-dreh .7s linear infinite;
}

@keyframes stiwl-auth-dreh {
	to {
		transform: rotate(360deg);
	}
}

/* Fusszeile */

.stiwl-auth__footer {
	margin: 0;
	text-align: center;
	color: var(--e-global-color-text);
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: calc(var(--e-global-typography-6f3e8bb-font-size) - 1px);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
}

.stiwl-auth--login .stiwl-auth__footer {
	margin-top: 60px;
	padding-top: 50px;
	border-top: 1px solid var(--e-global-color-4984a15) !important;
	position: relative;
}

.stiwl-auth--login .stiwl-auth__footer:before {
	content: 'oder';
	position: absolute;
	top: -11px;
	left: 50%;
	transform: translateX(-50%);
	background: var(--e-global-color-1d63f4f);
	padding-left: 8px;
	padding-right: 8px;
	font-size: 13px;
}

.veranstaltung-details-termine__popup .stiwl-auth--login .stiwl-auth__footer {
	margin-top: 45px;
	padding-top: 35px;
}

.veranstaltung-details-termine__popup .stiwl-auth--login .stiwl-auth__footer:before {
	background: white;
}

/* Passwort-Anforderungen (Live-Anzeige) */

.stiwl-auth__regeln {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 2px 0 0;
	padding: 0;
	list-style: none;
	font-size: 14px;
	color: #6b7280;
}

.stiwl-auth__regel {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	transition: color .15s ease;
}

.stiwl-auth__regel::before {
	content: none;
}

.stiwl-auth__regel-icon {
	position: relative;
	flex: 0 0 auto;
	width: 17px;
	height: 17px;
	border: 1px solid var(--e-global-color-b44d92d);
	border-radius: 50%;
	background: #fff;
	transition: background-color .15s ease, border-color .15s ease;
}

.stiwl-auth__regel.is-ok {
	color: #067647;
}

.stiwl-auth__regel.is-ok .stiwl-auth__regel-icon {
	background: #067647;
	border-color: #067647;
}

.stiwl-auth__regel.is-ok .stiwl-auth__regel-icon::after {
	content: "";
	position: absolute;
	left: 6px;
	top: 3px;
	width: 4px;
	height: 8px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

.stiwl-auth__regeln.is-fehler .stiwl-auth__regel:not(.is-ok) {
	color: #b42318;
}

.stiwl-auth__regeln.is-fehler .stiwl-auth__regel:not(.is-ok) .stiwl-auth__regel-icon {
	border-color: #b42318;
}

.stiwl-auth .screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* Meldungen */

.stiwl-auth__message {
	padding: 14px 18px;
	font-size: 15px;
	border: 1px solid transparent;
}

.stiwl-auth__message--error {
	color: #b42318;
	background: #fef3f2;
	border-color: #fecdca;
}

.stiwl-auth__message--success {
	color: #067647;
	background: #ecfdf3;
	border-color: #abefc6;
}

.stiwl-auth__message .stiwl-auth__link {
	color: inherit;
	font-weight: 600;
	text-decoration: underline;
}

/* Honeypot */

.stiwl-auth__hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* Eingeloggt-Ansicht */

.stiwl-auth--eingeloggt {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

/* Intro */

.stiwl-auth__intro {
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: var(--e-global-typography-6f3e8bb-font-size);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
	text-align: center;
}

/* ==========================================================================
   Mein Konto
   ========================================================================== */

.stiwl-konto {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 60px;
	width: 100%;
}

.stiwl-konto__sidebar {
	flex: 1 1 280px;
	padding: 0;
	background: #fff;
	border: 0;
	border-radius: 0;
	box-shadow: 0 2px 10px rgba(45, 53, 64, .07);
}

.stiwl-konto__profil {
	margin: 0;
	padding: 22px 25px;
	background: var(--e-global-color-text);
	border: 0;
}

.stiwl-konto__name {
	font-family: var(--e-global-typography-text-font-family), Arial;
	font-size: var(--e-global-typography-text-font-size);
	font-weight: var(--e-global-typography-text-font-weight);
	line-height: var(--e-global-typography-text-line-height);
	color: #fff;
	word-break: break-word;
}

.stiwl-konto__institution {
	font-family: var(--e-global-typography-6f3e8bb-font-family), Arial;
	font-size: var(--e-global-typography-6f3e8bb-font-size);
	font-weight: var(--e-global-typography-6f3e8bb-font-weight);
	line-height: var(--e-global-typography-6f3e8bb-line-height);
	color: white;
	word-break: break-word;
}

.stiwl-konto__nav {
	margin: 0;
	padding: 8px 0;
}

.stiwl-konto__menu {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.stiwl-konto__menu-eintrag {
	margin: 0;
	padding: 0;
}

.stiwl-konto__menu-eintrag::before,
.stiwl-konto__buchung::before,
.stiwl-konto__buchung-link::after {
	content: none;
}

.stiwl-konto__menu-link,
.stiwl-konto a.stiwl-konto__menu-link {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 15px 24px 15px 21px;
	font-family: var(--e-global-typography-be9ecd8-font-family), Arial;
	font-size: var(--e-global-typography-be9ecd8-font-size);
	font-weight: var(--e-global-typography-be9ecd8-font-weight);
	line-height: var(--e-global-typography-be9ecd8-line-height);
	color: var(--e-global-color-text);
	text-decoration: none;
	background: transparent;
	border-radius: 0;
	transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}

.stiwl-konto__menu-link:hover,
.stiwl-konto__menu-link:focus-visible {
	color: var(--e-global-color-2ef0a25) !important;
	text-decoration: none;
}

.stiwl-konto__menu-link.is-aktiv,
.stiwl-konto a.stiwl-konto__menu-link.is-aktiv {
	background: var(--e-global-color-1d63f4f);
}

.stiwl-konto__menu-link .stiwl-konto__icon,
.stiwl-konto__menu-link--abmelden .stiwl-konto__icon {
	color: var(--e-global-color-2ef0a25);
}

.stiwl-konto__icon {
	flex: 0 0 auto;
	display: block;
	width: 20px;
	height: 20px;
}

.stiwl-konto__icon--leer {
	display: inline-block;
}

.stiwl-konto__menu-trenner {
	height: 1px;
	margin: 8px 24px;
	background: var(--e-global-color-b44d92d);
}

.stiwl-konto__menu-link--abmelden,
.stiwl-konto a.stiwl-konto__menu-link--abmelden {
	font-weight: 400;
	color: var(--e-global-color-text);
}

.stiwl-konto__menu-link--abmelden:hover,
.stiwl-konto__menu-link--abmelden:focus-visible {
	color: var(--e-global-color-2ef0a25);
}

/* Inhalt rechts */

.stiwl-konto__inhalt {
	flex: 999 1 0;
	min-width: 60%;
}

.stiwl-konto__titel {
	margin: 0 0 30px;
	color: var(--e-global-color-text);
	font-size: var(--e-global-typography-a1c4a7f-font-size) !important;
	font-weight: var(--e-global-typography-a1c4a7f-font-weight) !important;
	line-height: var(--e-global-typography-a1c4a7f-line-height) !important;
}

.stiwl-konto__titel:focus {
	outline: none;
}

.stiwl-konto__abschnitt {
	overflow: hidden;
}

.stiwl-konto__abschnitt + .stiwl-konto__abschnitt {
	margin-top: 40px;
}

/* Abschnittsueberschrift mit Linie (Linie siehe .fva-ist-flach .fva-ebene-3-titel:after) */

.stiwl-konto__abschnitt-titel {
	font-size: var(--e-global-typography-874dc49-font-size) !important;
	font-weight: var(--e-global-typography-874dc49-font-weight) !important;
	text-transform: var(--e-global-typography-874dc49-text-transform);
	line-height: var(--e-global-typography-874dc49-line-height) !important;
	margin-bottom: 30px;
	position: relative;
	display: flex;
	width: fit-content;
}

/* Buchungen als Liste */

.stiwl-konto__buchungen {
	padding: 8px 32px;
	list-style: none;
	background: #fff;
	border: 0;
	border-radius: 0;
}

.stiwl-konto__buchung {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 32px;
	margin: 0;
	padding: 31px 0;
}

.stiwl-konto__buchung + .stiwl-konto__buchung {
	border-top: 1px solid #b7c4d075;
}

.stiwl-konto__buchung-info {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 3px;
	min-width: 0;
	flex: 1 1 320px;
}

.stiwl-konto__buchung-titel {
	font-family: var(--e-global-typography-898b344-font-family), Arial;
	font-size: var(--e-global-typography-898b344-font-size);
	font-weight: var(--e-global-typography-898b344-font-weight);
	line-height: var(--e-global-typography-898b344-line-height);
	color: var(--e-global-color-text);
}

.stiwl-konto__buchung-meta {
	font-family: var(--e-global-typography-736039f-font-family), Arial;
	font-size: var(--e-global-typography-736039f-font-size);
	font-weight: var(--e-global-typography-736039f-font-weight);
	line-height: var(--e-global-typography-736039f-line-height);
	color: var(--e-global-color-text);
}

.stiwl-konto__buchung-link,
.stiwl-konto a.stiwl-konto__buchung-link {
	font-size: 15px;
	font-weight: 600;
	line-height: 20px;
	border-style: none;
	border-radius: 0;
	padding: 9px 20px;
	background: var(--e-global-color-2ef0a25);
	color: var(--e-global-color-secondary);
	transition: .3s;
}

.stiwl-konto button.stiwl-konto__buchung-link {
	cursor: pointer;
	font-family: inherit;
}

.stiwl-konto__buchung-link:hover,
.stiwl-konto__buchung-link:focus-visible {
	background: var(--e-global-color-4984a15) !important;
	color: var(--e-global-color-secondary) !important;
	text-decoration: none;
}

/* Status: farbiger Punkt mit Text */

.stiwl-konto__status {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0;
	margin-bottom: 5px;
	font-family: var(--e-global-typography-576b44b-font-family), Arial;
	font-size: var(--e-global-typography-576b44b-font-size);
	font-weight: 600;
	line-height: var(--e-global-typography-576b44b-line-height);
	color: var(--e-global-color-text);
	background: transparent;
	border-radius: 0;
}

.stiwl-konto__status::before {
	content: "";
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #b8c0ca;
}

.stiwl-konto__status--gebucht::before,
.stiwl-konto__status--teilgenommen::before {
	background: #9ec27f;
}

.stiwl-konto__status--warteliste::before {
	background: #e3b65b;
}

.stiwl-konto__status--storniert::before {
	background: #d27c6f;
}

/* Leere Zustaende und Hinweise */

.stiwl-konto__leer {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	padding: 28px 32px;
	color: #6b7480;
	background: #fff;
	border: 0;
	border-radius: 0;
	box-shadow: 0 2px 10px rgba(45, 53, 64, .08);
}

.stiwl-konto__leer p {
	margin: 0;
	color: #6b7480;
}

.stiwl-konto__leer-text {
	margin: 0 24px;
	padding: 28px 32px;
	color: #6b7480;
	background: #fff;
}

/* Formulare im Kontobereich */

.stiwl-konto__inhalt .stiwl-auth.stiwl-auth--konto {
	padding: 36px !important;
	background: #fff;
	max-width: 100% !important;
}

.stiwl-konto__formular-titel {
	font-size: var(--e-global-typography-36bc734-font-size) !important;
	font-weight: var(--e-global-typography-36bc734-font-weight) !important;
	line-height: var(--e-global-typography-36bc734-line-height) !important;
	color: var(--e-global-color-text);
	margin-bottom: 2px;
	margin-top: 35px;
}

.stiwl-auth__grid--strasse {
	grid-template-columns: minmax(0, 3fr) minmax(0, 1fr);
}

.stiwl-auth__grid--ort {
	grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
}

.stiwl-auth__grid--unten {
	align-items: end;
}

.stiwl-auth__select,
.stiwl-auth select.stiwl-auth__select,
.stiwl-konto select.stiwl-auth__select {
	padding-right: 48px;
	cursor: pointer;
	background-color: #fff;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233f4957' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 16px 16px;
	-webkit-appearance: none;
	appearance: none;
}

.stiwl-konto__inhalt .stiwl-auth__button {
	margin-top: 14px !important;
}

.stiwl-konto__laden {
	margin: 0;
	padding: 28px 32px;
	color: var(--e-global-color-text);
	background: #fff;
	font-family: var(--e-global-typography-898b344-font-family), Arial;
	font-size: var(--e-global-typography-898b344-font-size);
	font-weight: 400;
	line-height: var(--e-global-typography-898b344-line-height);
}

/* Buchungsdetails */

.stiwl-konto__buchung-widget {
	flex: 1 1 100%;
	min-width: 0;
	padding-top: 8px;
}

.stiwl-konto__buchung-widget iframe,
.stiwl-konto__buchung-detail-widget iframe {
	display: block;
	width: 100%;
	border: 0;
}

.stiwl-konto__buchung-detail {
	padding: 28px 32px;
	background: #fff;
}

.stiwl-konto__zurueck,
.stiwl-konto button.stiwl-konto__zurueck {
	display: inline-block;
	margin: 0 0 20px;
	padding: 0;
	font: inherit;
	font-size: 15px;
	font-weight: 600;
	color: var(--e-global-color-2ef0a25);
	background: none;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	cursor: pointer;
}

.stiwl-konto__zurueck:hover,
.stiwl-konto__zurueck:focus-visible {
	opacity: .8;
	background: none;
	text-decoration: underline;
}

.stiwl-konto__zurueck--unten,
.stiwl-konto button.stiwl-konto__zurueck--unten {
	margin: 20px 0 0;
}

@media only screen and (max-width: 767px) {

	.stiwl-auth__grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.stiwl-konto__inhalt .stiwl-auth.stiwl-auth--konto {
		padding: 20px !important;
	}

	.stiwl-konto__buchungen {
		padding: 5px 20px;
	}

}
