/*
 * Das Logo ist zur Optimierung der Darstellung auf Displays mit hoher Pixeldichte in doppelter Größe vorhanden und muss entsprechend verkleinert werden.
 */
.header-left-section {
	max-width: 400px;
}
.logo-wrapper img {
	height: auto;
	margin: 10px 0;
	width: 50%;
}
.logo-wrapper img.astroid-logo-default {
	margin: 20px 20px 10px 20px;
}
.logo-wrapper img.astroid-logo-default,
.logo-wrapper img.astroid-logo-sticky {
	min-width: 313px;
	margin-left: 20px;
}
.logo-wrapper img.astroid-logo-mobile {
	width: 100%;
}

#astroid-header li.primary-link {
	display: none;
}

#astroid-header li.secondary-link {
	display: list-item;
}

.main-navigation li.primary-link {
	display: list-item;
}

.main-navigation li.secondary-link {
	display: none;
}

.main-navigation ul.astroid-nav {
	justify-content: center;
}

#astroid-sticky-header li.hide-in-sticky-header {
	display: none;
}

.main-navigation li.nav-item-level-1 > a,
.main-navigation li.nav-item-level-1 > a:hover,
.main-navigation li.nav-item-level-1 > a.active {
	color: #ffffff;
	font-size: 24px;
	font-weight: 500;
}

#astroid-sticky-header li.nav-item-level-1.primary-link > a,
.astroid-mobilemenu-container li a.primary-link {
	font-weight: 700;
}

.breadcrumb-item {
	color: #ffffff !important;
}
.breadcrumb-item.active,
.breadcrumb-item:before {
	color: rgba(255, 255, 255, 0.7) !important;
}
.breadcrumb-item + .breadcrumb-item::before {
	content: '>';
}
.mod-breadcrumbs.breadcrumb {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/*
 * Einige Elemente in der Kopfzeile nehmen in der Desktopversion zu viel Platz weg, wodurch die Navigation nach links rutscht. Dieser Platz muss entfernt werden.
 */
@media screen and (min-width: 992px) {
	.header-center-section > .px-2,
	.header-right-section > .px-2 {
		padding-right: 0 !important;
	}
	.header-center-section .nav li:last-child a,
	.header-right-section .nav li:last-child a {
		padding: var(--bs-nav-link-padding-y) 0 var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
	}
	.header-right-section > .offcanvas-button {
		margin-left: 0 !important;
	}
	#astroid-sticky-header .astroid-nav-wraper {
		padding-right: 0 !important;
	}

	.header-stacked-section .astroid-nav-wraper.px-3 {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.header-stacked-section .offcanvas-button {
		display: none !important;
	}
}

/*
 * Der Inhaltsbereich muss den Platz zwischen Header und Footer ausfüllen, damit der Footer immer unten liegt.
 */
#content {
	flex: 1;
}

/*
 * Die Sprachauswahl liegt standardmäßig über dem Sticky-Header und dem mobilen Menü und muss entsprechend in den Hintergrund gebracht werden.
 */
.mod-languages {
	z-index: 1000 !important;
}

/*
 * Abstand in der Seitenleiste der Startseite optimieren.
 */
.astroid-module-position .moduletable:first-child p:first-child {
	margin-top: 1rem;
}

/*
 * Markierung des aktuellen Eintrags in der Seitenleiste anpassen:
 * Im Template werden auch die Untermenüpunkte des aktuellen Menüpunkts hervorgehoben. Somit wissen die Besucher nicht, welche Seite gerade geöffnet ist. Es soll immer nur ein Eintrag hervorgehoben sein.
 */
li.current a span.nav-title::after {
    content: "" !important;
}

li.current > a span.nav-title::after {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    content: " " !important;
    padding-left: 4px !important;
}

/*
 * Darstellung in der Seitenleiste anpassen: Listenpunkte der Unterseiten entfernen.
 */
/*#sidebar .nav ul {
	list-style-type: none !important;
	padding-left: 1.3rem !important;
}*/

/*
 * Links sind im Template standardmäßig nicht unterstrichen.
 */
.astroid-component a:not(.text-decoration-none) {
    text-decoration: underline !important;
}

/*
 * Anpassungen der Icons und Dropdowns in der Navigation.
 */
.fa-search:before,
.fa-globe:before {
    font-family: var(--fa-style-family,"Font Awesome 6 Free") !important;
    font-weight: var(--fa-style,900) !important;
}
.astroid-mobilemenu-container .fa-search:before {
	content: "\f002 ";
	margin-right: 8px;
}
.astroid-mobilemenu-container .fa-globe:before {
	content: "\f7a2 ";
	margin-right: 8px;
}
.astroid-nav .megamenu-container.nav-submenu-container {
	width: 260px !important;
}

/*
 * Verschachtelte Container sollen kein zusätzliches Padding einfügen.
 */
.container .container-fluid div[class*="col-"]:first-child {
	padding-left: 0 !important;
}
.container .container-fluid div[class*="col-"]:last-child {
	padding-right: 0 !important;
}
@media screen and (max-width: 992px) {
	.container .container-fluid div[class*="col-"] {
		padding: 0 !important;
	}
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 600 !important;
}

h2[itemprop="headline"] {
    color: #003782 !important;
}

/*
 * Diverse Elemente im Artikelinhalt einfärben.
 */
div[itemprop="articleBody"] strong,
div[itemprop="articleBody"] b,
div[itemprop="articleBody"] a,
div[itemprop="articleBody"] h1,
div[itemprop="articleBody"] h2,
div[itemprop="articleBody"] h3,
div[itemprop="articleBody"] h4,
div[itemprop="articleBody"] h5,
div[itemprop="articleBody"] h6 {
	color: #003782 !important;
}
div[itemprop="articleBody"] .skip-bold-blue strong {
	color: var(--bs-accordion-color) !important;
}

/*
 * Abstände und Trennlinien der Audioguide-Stationen optimieren.
 */
.audioguide-container .accordion.uk-accordion .uk-accordion-content {
	padding-bottom: 0 !important;
	padding-top: 0 !important;
}
.audioguide-container .container-fluid {
	border-bottom: solid 1px var(--bs-border-color);
	padding-bottom: 1rem;
	padding-top: 1rem;
}
.audioguide-container .container-fluid:last-child {
	border-bottom: none;
}

#audioguide_filter_dropdown .dropdown-item:hover,
#audioguide_filter_dropdown .dropdown-item:focus {
	background-color: unset;
}
#audioguide_filter_dropdown .dropdown-item {
	color: #ffffff !important;
}
#audioguide_filter_dropdown .dropdown-item.inactive {
	background-color: #a8a8a8 !important;
}

/*
 * Audioplayer auf mobilen Endgeräten in der Breite anpassen.
 */
audio {
	max-width: 100%;
}
@media screen and (max-width: 992px) {
	audio {
		width: 100%;
	}
}

/*
 * Schriftart von Dropdowns und Eingabefeldern angleichen.
 */
.form-control,
.form-select {
	font-size: 0.9rem !important;
	font-weight: 300 !important;
}
.dropdown .dropdown-item.active {
	color: #ffffff !important;
}

/*
 * Der Abstand rechts des Hauptbereichs für den Inhalt der Seite muss an Kopf- und Fußzeile angeglichen werden.
 */
@media screen and (min-width: 992px) {
	.page-content {
		padding-right: calc(var(--bs-gutter-x) * .5) !important;
	}
}

/*
 * Anpassungen für Menüeinträge mit Icons.
i */
.astroid-nav .nav-link.fa-search .nav-title {
	display: inline-block;
	padding-left: 4px;
}
.astroid-nav .nav-title img {
	margin-right: 3px;
}
.astroid-mobilemenu-inner .nav-title img {
	margin-right: 10px;
}

/*
 * Anpassungen der Suche (Formular und Ergebnisse).
 */
.com-finder .form-inline input {
	font-size: 1rem;
}
.com-finder .filter-branch .control-group:first-child {
	display: none;
}
.com-finder #search-form,
.com-finder #search-result-list {
	margin-bottom: 2rem;
}
.com-finder .filter-branch .control-label {
	margin-bottom: 5px;
}
.com-finder .search-pagination {
	text-align: center;
}

/*
 * Anpassungen für den JD-ImageSlider.
 */
.djslider .slide-title {
	font-size: 1.2em !important;
}
.djslider .slide-desc-text-inhaltsseite {
	background-color: #003782 !important;
}

/*
 * Titel und Beschreibung des JD-ImageSliders muss in der mobilen Ansicht ausgeblendet werden. Außerdem müssen nebeneinander liegende Bilder umgebrochen werden.
 */
@media screen and (max-width: 992px) {
	.djslider-default .slide-desc {
		display: none;
	}
}

/*
 * Begrenzung der maximalen Breite von Bildern.
 */
@media screen and (min-width: 992px) {
	.max-width-1-2 {
		max-width: 50%;
	}
	.max-width-1-3 {
		max-width: 33%;
	}
}

/*
 * Aussehen  des "Easy Image Caption CK"-Plugins anpassen.
 */
.easy_img_caption {
	background-color: rgba(0, 0, 0, 0.65) !important;
	width: auto !important;
}

.easy_img_caption_inner span {
	font-size: 0.9em !important;
	hyphens: auto !important;
	line-height: 125% !important;
}

/*
 * Allgemeine Stylesheets zurücksetzen/optimieren.
 */
em {
	color: unset !important;
}
p {
	display: inline-block;
	margin: 0 !important;
}
ul {
	list-style-type: circle;
}
h1:not(:first-child),
h2:not(:first-child),
h3:not(:first-child),
h4:not(:first-child),
h5:not(:first-child),
h6:not(:first-child) {
    margin-bottom: 20px;
	margin-top: 27px;
}
.container-fluid:not(.one-image-big) + h1,
.container-fluid:not(.one-image-big) + h2,
.container-fluid:not(.one-image-big) + h3,
.container-fluid:not(.one-image-big) + h4,
.container-fluid:not(.one-image-big) + h5,
.container-fluid:not(.one-image-big) + h6 {
	margin-top: calc(27px - 1rem); /* 1rem: Abstand unter dem Accordion. */
}

/*
 * Textumflüsse aufheben.
 */
/*
.one-image-right,
.one-image-big,
.one-image,
.two-images,
.three-images,
.accordion-element,
.text-image-columns {
	clear: both;
}
*/

/*
 * Bilder, die per UIKit-Lightbox geöffnet werden, optisch anpassen.
 */
@media screen and (min-width: 992px) {
	.one-image-right .col:first-child,
	.one-image-big .col:first-child,
	.one-image .col:first-child,
	.two-images .col:first-child,
	.three-images .col:first-child {
		padding-left: 0;
	}
	.one-image-right .col:last-child,
	.one-image-big .col:last-child,
	.one-image .col:last-child,
	.two-images .col:last-child,
	.three-images .col:last-child {
		padding-right: 0;
	}
}
@media screen and (max-width: 992px) {
    .one-image-right .col,
    .one-image-big .col,
    .one-image .col,
    .two-images .col,
    .three-images .col {
        padding-left: 0;
		padding-right: 0;
    }
}

@media screen and (min-width: 992px) {
	.one-image-right {
		float: right;
		max-width: 30%;
		margin: 0 0 27px 1rem;
	}
}
@media screen and (max-width: 992px) {
	.one-image-right {
		margin-bottom: 27px;
	}
}

.one-image .col img,
.two-images .col img,
.three-images .col img {
    max-height: 300px !important;
    width: auto !important;
}

@media screen and (min-width: 992px) {
    .three-images.multimedia-overview img {
        max-height: 130px !important;
    }
}

div[uk-lightbox] figure,
div[looks-like-lightbox] figure {
	margin: 0;
}

div[uk-lightbox] figcaption,
div[looks-like-lightbox] figcaption {
/*
	background-color: rgba(0, 0, 0, 0.65);
*/
	color: #ffffff;
	display: none;
	font-size: 0.9em;
	hyphens: auto;
	line-height: 125%;
	padding: 15px;
}

/*
 * Zitat-Stil hinzufügen.
 */
.quote {
    padding-left: 1em;
    border-left: 0.3em solid #003782 !important;
    line-height: 150%;
}
.quote .text:before,
.quote .text:after {
    color: #003782 !important;
    font-size: 130%;
}
.quote .text:before {
    content: '\201e';
}
.quote .text:after {
    content: '\201c';
}
.quote .text + .source {
    margin-top: 5px;
}
.quote .source,
.quote .source:before {
    color: #5e6164 !important;
    font-style: italic;
}
.quote .source {
    text-align: right;
}
.quote .source:before {
    content: '\2015\00a0';
}

/*
 * Die Höhe von Dropdowns muss etwas erhöht werden, um den Buchstaben 'g' nicht abzuschneiden.
 */
.form-control {
	height: calc(1.8em + 17px) !important;
}

/*
 * Inhalte des Plugins DJ-Events optisch anpassen.
 */
#djevents,
.djev_mod_items {
	margin: 0 !important;
}
.djev_mod_items .alert-info {
	background-color: #e2e3e5 !important;
	border-color: #c4c8cb !important;
	color: #2b2f32 !important;
}
.djev_mod_items table .djev_time_icon {
	display: none;
}
#djevents .item-title {
	margin-bottom: 1.5rem !important;
}
#djevents .djev_event_info {
	float: right !important;
	margin: 1.5em 0 10px 30px !important;
}
#djevents .djev_poster {
	margin-top: 0 !important;
}
#djevents .djev_description {
	margin-top: 1.5em;
}

/*
 * Accordion-Element optisch anpassen.
 */
.accordion.uk-accordion li {
	padding: 0 !important;
}
.accordion.uk-accordion .uk-accordion-title {
/* Akkordeon-Farbe */
	background-color: #003782 !important;
	color: #ffffff !important;
/* /Akkordeon-Farbe */
/* Akkordeon-Farbe
	font-weight: 600 !important;
*/
	text-decoration: none !important;
}
.accordion.uk-accordion .uk-accordion-title::before {
	background: none !important;
	margin-left: 0 !important;
	width: 0 !important;
}
/* Akkordeon-Farbe */
.accordion.uk-accordion .uk-accordion-title::after {
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
}
/* /Akkordeon-Farbe */
.accordion.uk-accordion .uk-open .accordion-button {
/* Akkordeon-Farbe
	background-color: #f8f9fa !important;
*/
	border-bottom-left-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}
.accordion.uk-accordion .uk-accordion-content {
	padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x) !important;
	margin: 0 !important;
}

/*
 * Landkarten-Modul konfigurieren.
 */
.landkarte {
	background: center no-repeat url('/images/landkarte.png');
	cursor: pointer;
	height: 300px;
	width: 100%;
}
.landkarte img {
	box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
	cursor: pointer;
	margin: 10px 0 0 10px;
}

/*
 * Die Menüpunkte in der Fußzeile sollen nicht hervorgehoben werden, wenn sie gerade geöffnet sind.
 */
#footer li.current > a span.nav-title::after {
    content: "" !important;
}
