body {
	/* Allgemeine Schriftart und Textfarbe für den gesamten Inhalt */
	font-family: system, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	color: black;
}
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

header {
	/* Stil des Header-Bereichs */
	max-width: 960px; /* Maximale Breite des Inhalts */
	margin: 0 auto; /* Zentrierung auf breiten Bildschirmen */
	background-color: #ccdcff; /* Hintergrundfarbe */
	box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.2); /* Schatten */
	padding: 20px; /* Innenabstand */
	text-align: center; /* Zentrierte Ausrichtung des Inhalts */
}

/* Überschriften-Stile */
h1 { font-size: 24px; } /* Schriftgröße für h1 */
h2 { font-size: 22px; } /* Schriftgröße für h2 */
h3 { font-size: 20px; } /* Schriftgröße für h3 */
h4 { font-size: 18px; } /* Schriftgröße für h4 */
h5 { font-size: 16px; } /* Schriftgröße für h5 */
h6 { font-size: 14px; } /* Schriftgröße für h6 */

/* Links ohne Unterstrich formatieren */
.link-no-underline {
  text-decoration: none;
  color: darkblue;
  font-weight: normal; /* Standard Schriftgewicht */
  transition: font-weight 0.3s; /* Übergangseffekt für Schriftgewicht */
}

/* Schrift größer machen, wenn Maus über den Link fährt */
.link-no-underline:hover {
  font-size: 18px; /* Angehobene Schriftgröße bei Mouse-over */
}
 
/* Navigation formatieren */
nav ul {
  list-style-type: none; /* Listenpunktstil entfernen */
  margin: 0; /* Außenabstand entfernen */
  padding: 0; /* Innenabstand entfernen */
}

nav ul li {
  display: inline; /* Listelemente nebeneinander anzeigen */
  margin-right: 10px; /* Rechter Abstand zwischen den Elementen */
}

nav ul li a {
  text-decoration: none; /* Unterstreichung der Links entfernen */
  color: darkblue; /* Link-Farbe */
  font-size: 16px; /* Standard Schriftgröße */
  transition: font-size 0.3s; /* Übergangseffekt für Schriftgröße */
}

/* Schriftgröße erhöhen, wenn Maus über den Link fährt */
nav ul li a:hover {
  font-size: 18px; /* Angehobene Schriftgröße bei Mouse-over */
}

nav ul li a.active {
  font-weight: bold; /* Fettdruck für den aktiven Link */
  color: darkblue; /* Aktive Link-Farbe */
  font-size: 18px; /* Schriftgröße des aktiven Links */
}

main {
  max-width: 960px; /* Maximale Breite des Hauptinhalts */
  margin: 20px auto; /* Außenabstand und horizontale Ausrichtung */
  display: flex; /* Hauptinhalt als Flexbox anzeigen */
  border-bottom: 1px solid rgba(0, 0, 0, 0.2); /* Untere Trennlinie */
  flex-wrap: wrap; /* Zeilenumbruch für flexibles Layout */
}

main {
	max-width: 960px; /* Maximale Breite des Hauptinhalts */
	margin: 20px auto; /* Außenabstand und horizontale Ausrichtung */
	display: flex; /* Hauptinhalt als Flexbox anzeigen */
	border-bottom: 1px solid rgba(0, 0, 0, 0.2); /* Untere Trennlinie */
	flex-wrap: wrap; /* Zeilenumbruch für flexibles Layout */
}

.full-area {
	flex: 0 0 calc(100% - 20px); /* Vollständige Breite des Inhalts mit rechtem Abstand */
	margin-left: 10px; /* Linker Abstand */
	margin-right: 10px; /* Recher Abstand */
}
.half-area {
	flex: 0 0 calc(50% - 20px); /* Halbe Breite des Inhalts mit rechtem Abstand */
	margin-right: 10px; /* Rechter Abstand */
	margin-left: 10px; /* Linker Abstand */

}

.text-area {
	flex: 0 0 calc(70% - 20px); /* 70% der Breite mit rechtem Abstand */
	margin-right: 20px; /* Rechter Abstand */
}
 
.aside-area {
    flex: 0 0 calc(30% - 40px); /* 30% der Breite mit rechtem und linkem Abstand */
    margin-left: 20px; /* Linker Abstand */
    margin-right: 20px; /* Rechter Abstand */
}

.rounded-box {
    border: 2px solid #00008B;
    border-radius: 10px;
    padding: 10px;
    margin-top: 20px;
    margin-bottom: 20px;
    margin-left: 10px; 
    margin-right: 10px; 
}

/* Zeilenumbruch in Select-Feldern */

select, input {
	word-wrap: break-word;
}
	
/* Button formatieren */

.input {
        margin-top: 10px;
        background-color: darkblue; /* Dunkelblau */
        color: #fff; /* Weiß */
        border: none;
        padding: 5px 15px;
        border-radius: 5px;
        cursor: pointer;
	    text-decoration: none;
    }
	
.action-button {
	/* Stil für allgemeine Aktionsschaltfläche */
	background-color: darkblue; /* Hintergrundfarbe */
	text-decoration: none; /* Unterstreichung der Links entfernen */
	color: #fff; /* Textfarbe */
	padding: 3px 6px; /* Innenabstand */
	border: none; /* Rand entfernen */
	border-radius: 5px; /* Randradius */
	font-size: 12px; /* Schriftgröße */
	margin-right: 10px; /* Rechter Abstand */
	box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.4); /* Anpassen der Schattenparameter */
}

.action-button-grey {
	/* Stil für allgemeine Aktionsschaltfläche */
	background-color: grey; /* Hintergrundfarbe */
	text-decoration: none; /* Unterstreichung der Links entfernen */
	color: #fff; /* Textfarbe */
	padding: 3px 6px; /* Innenabstand */
	border: none; /* Rand entfernen */
	border-radius: 5px; /* Randradius */
	font-size: 12px; /* Schriftgröße */
	margin-right: 10px; /* Rechter Abstand */
	box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.4); /* Anpassen der Schattenparameter */
}

.action-medium-button {
	/* Stil für allgemeine Aktionsschaltfläche */
	background-color: darkblue; /* Hintergrundfarbe */
	text-decoration: none; /* Unterstreichung der Links entfernen */
	color: #fff; /* Textfarbe */
	padding: 3px 6px; /* Innenabstand */
	border: none; /* Rand entfernen */
	border-radius: 5px; /* Randradius */
	font-size: 15px; /* Schriftgröße */
	margin-right: 10px; /* Rechter Abstand */
	box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.4); /* Anpassen der Schattenparameter */
}

.action-big-button {
	/* Stil für große Aktionsschaltfläche */
	background-color: darkblue; /* Hintergrundfarbe */
	text-decoration: none; /* Unterstreichung der Links entfernen */
	color: #fff; /* Textfarbe */
	padding: 3px 6px; /* Innenabstand */
	border: none; /* Rand entfernen */
	border-radius: 5px; /* Randradius */
	font-size: 18px; /* Schriftgröße */
	margin-right: 10px; /* Rechter Abstand */
	box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.4); /* Anpassen der Schattenparameter */
}

.action-big-button.active {
	background-color: #0000e6; /* Hintergrundfarbe */
	font-weight: bold;  /* Fette Schriftart  */
	color: #ffffff; /* Textfarbe */
	box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.4); /* Anpassen der Schattenparameter */
}

/* Meldungen formatieren */

.fehler {
		background-color: #F8E0E0; /* Hintergrundfarbe */
		color: black;  /* Textfarbe */
		text-align: center;
        border: 2px solid red;  /* Rahmen */
        border-radius: 5px;  /* Randradius */
        padding: 10px;  /* Innenabstand */
        font-weight: bold;  /* Schriftstil fett */
    }
.meldung {
		background-color: #CEF6D8; /* Hintergrundfarbe */
		color: black;  /* Textfarbe */
		text-align: center;
        border: 2px solid green;  /* Rahmen */
        border-radius: 5px;  /* Randradius */
        padding: 10px;  /* Innenabstand */
        font-weight: bold;  /* Schriftstil fett */
    }
	
/* Tabelle formatieren */

table {
	/* Die Tabelle soll grundsätzlich den verfügbaren Raum ausnutzen */
    width: 100%;
    table-layout: fixed;
}

td, th {
  padding: 5px;
  line-height: 1.2; /* Hier den gewünschten Zeilenabstand einstellen */
}

thead {
	/* Stil für Tabellenkopf */
	background-color: #f2f2f2; /* Hintergrundfarbe */
	font-weight: bold; /* Fettdruck */
}

tbody tr {
	/* Stil für Tabellenzeilen im Körper */
	background-color: #ffffff; /* Hintergrundfarbe */
	text-align: left; /* Linksbündige Ausrichtung des Inhalts */
	/* Weitere gewünschte Formatierungen */
}

table tbody tr {
  background-color: #ffffff; /* Hintergrundfarbe für Tabellenzeilen ohne Klassifizierung */
}

table.zebra tbody tr:nth-child(even) {
  background-color: #f2f2f2; /* Hintergrundfarbe für gerade Zeilen in der zebra-Tabelle */
}

/* CSS für Bilder im Handbuch */
.image-with-border {
    display: block;
    margin: 0 auto;
    width: 100% !important; /* Setze die Breite auf 100% */
    max-width: 480px !important;
    height: auto !important; /* Beibehalten des Seitenverhältnisses */
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5) !important; /* Hier wird der Schatten definiert */
}

/* Media Query für Smartphones und Tablets */
@media (max-width: 768px) {
    .image-with-border {
        width: 100% !important; /* Setze die Breite auf 100% für kleinere Bildschirme */
        max-width: 100% !important;
        box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5) !important;
    }
}



/* CSS für die Fotogalerie */		
.thumbnail-gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; /* Horizontale Zentrierung */
}

.thumbnail {
    margin: 10px;
    cursor: pointer;
}
/* CSS für das korrespondierende Bild */
.full-image {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

.full-image img {
    max-width: 80%;
    max-height: 80%;
}

/* Accordeon formatieren */

.accordion {
	/* Stil für Akkordeon-Elemente */
	background-color: darkblue; /* Hintergrundfarbe */
	color: white; /* Textfarbe */
	padding: 5px; /* Innenabstand */
	border-radius: 5px; /* Randradius */
	cursor: pointer; /* Zeiger bei Hover */
}

.accordion-gray {
	/* Stil für graue Akkordeon-Elemente */
	background-color: #e6e6e6; /* Hintergrundfarbe */
	padding: 10px; /* Innenabstand */
	border-radius: 5px; /* Randradius */
	cursor: pointer; /* Zeiger bei Hover */
}		

.blue-header {
	/* Stil für Kopfbereiche mit blauer Hintergrundfarbe */
	background-color: blue; /* Hintergrundfarbe */
	color: white; /* Textfarbe */
}

.gray-header {
	/* Stil für Kopfbereiche mit grauer Hintergrundfarbe */
	background-color: lightgray; /* Hintergrundfarbe */ 
	color: black; /* Textfarbe */
} 	

.lightgray-header {
	/* Stil für Kopfbereiche mit hellgrauer Hintergrundfarbe */
	background-color: #f2f2f2; /* Hintergrundfarbe */ 
	color: black; /* Textfarbe */
} 		  

.content {
	display: none; /* Inhalte standardmäßig ausblenden */
	padding: 0px; /* Innenabstand */
	border: none; /* Rand entfernen */
}

footer {
	clear: both; /* Leerraum nach dem Hauptinhalt */
}

/* Darstellung auf kleinen Bildschirmen */

body, html {
	margin: 0; /* Außenabstand entfernen */
	padding: 0; /* Innenabstand entfernen */
	width: 100%; /* Breite auf 100% setzen */
}

.container {
	width: 100%; /* Breite des Hauptcontainers auf 100% setzen */
}

.text-area, .aside_area {
	width: 100%; /* Breite des Textbereichs und des Newsletters auf 100% setzen */
	padding: 10px; /* Innenabstand */
	box-sizing: border-box; /* Box-Modell auf border-box setzen */
}

@media (min-width: 768px) {
	/* Medienabfrage für Bildschirme mit einer Mindestbreite von 768px */

	.container {
		display: flex; /* Hauptcontainer als Flexbox anzeigen */
	}
  
	.text-area {
		flex: 0 0 70%; /* 70% der Breite mit rechtem Abstand */
		margin-right: 10px; /* Rechter Abstand */
	}
  
	.aside-area {
		flex: 0 0 30%; /* 30% der Breite */
	}
}

/* Modales Fenster - übergreifend */

.modal {
    display: none;
    position: fixed;
    z-index: 9999;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	background-color: rgba(0, 0, 0, 0.7); /* Schwarzer Hintergrund mit 70% Transparenz */
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100vh;
    overflow: auto;
    padding: 20px;
    box-sizing: border-box;
    text-align: center;
}

	
/* Modales Fenster für Adressen*/

.modal-content {
    background-color: #fefefe;
    padding: 20px;
    border: 1px solid #888; 
    width: 90%;
    max-width: 90%;
	text-align: center;
}

.close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

/* Stil für das Bild im modalen Fenster */

#modalImage {
    max-width: 100%;
    max-height: 90vh;
    width: auto;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
/* Stil für das Schließen-Symbol */
.close {
    position: absolute;
    top: 20px;
    right: 10px;
    font-size: 30px;
    color: #fff;
    cursor: pointer;
    z-index: 9999; /* Setze einen hohen Z-Index-Wert */
    background-color: rgba(0, 0, 0, 0.3); /* Hintergrundfarbe */
    padding: 2px; /* Füge etwas Abstand um das Symbol hinzu */
    border-radius: 20%; /* Runde Ecken für einen Kreis-Hintergrund */
    transition: background-color 0.3s; /* Sanfter Übergang bei Farbänderung */
}

/* Ändere die Hintergrundfarbe beim Mouseover auf Grau */
.close:hover {
    background-color: darkgrey;
}

.image-caption {
    position: absolute; /* Positionierung hinzufügen */
    bottom: 0; /* An der Unterseite des Containers ausrichten */
    left: 0; /* Am linken Rand des Containers ausrichten */
    width: 100%; /* Volle Breite des Containers */
    background: rgba(0, 0, 0, 0.3); /* Hintergrundfarbe mit Transparenz */
    padding: 10px; /* Innenabstand hinzufügen */
    color: white; /* Textfarbe hinzufügen */
    font-size: 14px; /* Schriftgröße für die Bildunterschrift */
}

.image-caption-text {
    width: 100%; /* Volle Breite des Containers */
}

/* Stil für die Navigationspfeile im modalen Fenster */
.modal-prev,
.modal-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 30px;
    cursor: pointer;
    color: white;
    background-color: rgba(0, 0, 0, 0.2);
    padding: 2px;
    border-radius: 20%;
}

.modal-prev {
    left: 10px;
}

.modal-next {
    right: 10px;
}

/* Fusszeile */

footer {
	background-color: white; /* Hintergrundfarbe */
	padding: 10px; /* Innenabstand */
	text-align: center; /* Zentrierte Ausrichtung des Inhalts */
}
