#main {
	display: grid;
	grid-template-columns:repeat(4, 1fr);
	grid-gap:1rem;
	max-width: var(--content-width);
	width:100%;
	margin: 0 auto 0 auto;
}
.main_layout_50 #maincontent {
	grid-column: span 2;
}
.main_layout_75 #maincontent {
	grid-column: span 3;
}
.main_layout_ #maincontent,
.main_layout_100 #maincontent {
	grid-column: span 4;
}
#content {
	border: 1px solid var(--border-color-content) ;
	border-radius: 0.2rem;
	margin: 0.75rem 0 0 0;
	padding: 1.25rem 0.95rem 0.75rem;
	width: 100%;
	page-break-before: avoid;
	background-color:var(--bg-color-content);
}
#content img, #content table{
	max-width:100%!important;
	height:auto;
}

/* For modern browsers */
.cf:before,
.cf:after {
	content:"";
	display:table;
}
.cf:after {
	clear:both;
}
	/* For IE 6/7 (trigger hasLayout) */
.cf {
	zoom:1;
}
.hidden { /* hide text */
	display: none;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}

/*************** Ueberschriften ********************/
h1,
#page-title {
	font-size: 1.45rem;
	width:100%;
	height:auto;
	background: transparent;
	line-height: 1.6rem;
	color:var(--page-title-color);
	margin: 0 0 1rem 0;
	font-family: var(--second-font);
	font-weight: 700;
}
h1:first-of-type {
	margin: 0 0 1rem 0;
}
h2{
	font-size: 1.25rem;
	line-height: 1.3rem;
	color:var(--main-color);
	font-family: var(--second-font);
	font-weight: 600;
	letter-spacing:0.01rem;
}
h3, h4, h5, h6 {
	width:auto;
	height:auto;
	line-height: initial;
	font-family:var(--second-font);
	font-weight:var(--font-weight-bold);
	letter-spacing:0.02rem;
}
h3 {
	width:fit-content;
	color:#fff;
	background-color:var(--main-color);
	padding:0 0.3rem;
	margin:0.5rem 0;
	font-size:1.125rem;
}
h3 a {
	color: white;
	background-color: inherit;
}
h3 a:hover,
h3 a:focus,
h3 a:active {
	color:#cfd3d6;
}
h4 {
	color:var(--main-color);
	margin:0 0 0.3rem 0;
	font-size:1.125rem;
}
h4 a {
	color:var(--main-color);
}
h4 a:hover,
h4 a:focus,
h4 a:active {
	color:var(--main-color);
	background-color: white;
	border-bottom: 1px dotted var(--main-color);
}
h5 {
	color:#000;
	margin:0 0 0.3rem 0;
	font-size:1.05rem;
	font-weight:500;
}
h5 a {
	color: black;
	border-bottom: none;
}
h5 a:hover,
h5 a:focus,
h5 a:active {
	color: black;
 	background-color: white;
	border-bottom: 1px dotted black;
}
h6 {
	color:#000;
	font-style: italic;
	margin:0 0 0.3rem 0;
	font-size:1.05rem;
	font-weight:400;
}
h6 a {
	color: black;
	border-bottom: none;
}
h6 a:hover,
h6 a:focus,
h6 a:active {
	color: black;
 	background-color: white;
	border-bottom: 1px dotted black;
}
/******************** Textabsaetze *********************/
p,
table {
	margin-bottom: 0.5rem;
}
a {
	text-decoration:none;
	word-break: break-word;
}
p a,
td a,
a.link,
ol li a, 
dl a {
	padding:0 2px 0 1px;
	border-bottom: 1px dotted var(--main-color);
	transition:background-color var(--transition-duration), color var(--transition-duration);
}
p a:before,
td a:before,
a.link:before,
ol > li a:before,
dl a:before {
	font-size: 0.9rem;
	content: "\203A";
	padding: 0 0.1rem 0 0;
	color: var(--main-color);
	transition:background-color var(--transition-duration), color var(--transition-duration);
}
a.link:hover, a.link:focus, a.link:active,
p a:hover, p a:focus, p a:active,
td a:hover, td a:focus, td a:active,
ol li a:hover, ol li a focus, ol li a:active, 
em a:hover, em a:focus, em a:active,
strong a:hover, strong a:focus, strong a:active,
a:hover em, a:focus em, a:active em,
a:hover strong, a:focus strong, a:active strong,
dl a:hover, dl a focus, dl a:active{
	color: #fff!important;
}
a.link:hover, a.link:focus, a.link:active,
p a:hover, p a:focus, p a:active,
td a:hover, td a:focus, td a:active,
ol li a:hover, ol li a focus, ol li a:active, 
em a:hover, em a:focus, em a:active,
strong a:hover, strong a:focus, strong a:active,
a:hover em, a:focus em, a:active em,
dl a:hover, dl a focus, dl a:active {
	background-color: var(--main-color);
}
a.link:hover:before,
a.link:focus:before,
a.link:active:before,
p a:hover:before,
p a:focus:before,
p a:active:before,
td a:hover:before,
td a:focus:before,
td a:active:before,
ol li a:hover:before,
ol li a:focus:before,
ol li a:active:before,
dl a:hover:before,
dl a:focus:before,
dl a:active:before {
	color: #fff!important;
}
/********************* Anker ********************/
a[name] {
	border-bottom: none;
}
a[name]:hover {
	background-color: transparent;
}
a[name]:before {
	padding: 0;
	content: "";
}
/********************* Mail-Links ********************/
a.mailto:before {
	color: var(--main-color);
	content: "\F0E0";
	font-weight: 900;
	font-family: "Font Awesome 6 Free";
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-style: normal;
	font-variant: normal;
	line-height: 1;
	text-rendering: auto;
	margin-right: 0.25rem;
}
a.mailto:hover:before,
a.mailto:active:before,
a.mailto:focus:before{
	color: #fff;
}

.url_ico i{
	margin-right: 0.25rem;
}

.url_ico::before{
	display:none!important;
	visibility:hidden!important;
	padding:0!important;
}
/******************** Hervorhebungen ********************/
strong, b {
	color:var(--font-color-bold);
	font-weight:var(--font-weight-bold);
	transition:background-color var(--transition-duration), color var(--transition-duration);
}
#maincontent strong, #maincontent b{
	color:var(--maincontent-bold-color);
}
.color_schwarz{
	color:#000000;
}
img {
	border: 0 solid;
}
img.grayscale {
	filter:grayscale(1);
}
a.kein_Linkzeichen:before {
}
a:hover:before img,
a:active:before img,
a:focus:before img,
a.kein_Linkzeichen:hover:before,
a.kein_Linkzeichen:active:before,
a.kein_Linkzeichen:focus:before{
	content: "";
}
a:before > img {
	content: "";
	padding: 0;
}
a[href$=jpg]:hover:before,
a[href$=jpg]:active:before
a[href$=jpg]:focus:before{
	content: "";
	background-color: #fff;
}
p.rss_link {
	padding-top: 1rem;
	margin-bottom: 0;
}
a.rss_link {
	padding: 0.25rem 0.1rem 0.15rem 0.1rem;
}
a.rss_link:before{
	content:'';
}
a.rss_link i{
	font-size:1.25rem;
	margin-right:0.25rem;
	vertical-align:middle;
	color:var(--main-color);
}
a.rss_link:hover i{
	color:inherit;
}
a.kein_unterstrich {
	border-bottom: none;
}
.ego_glossary_link {
	position: relative;
	border-bottom: dotted 1px #888;
	cursor: help;
}
.ego_glossary_link:active,
.ego_glossary_link:hover,
.ego_glossary_link:focus {
	background-color: #e7e9ea;
	color: #000 !important;
}
.ego_glossary_link:before {
	position: absolute;
	left: 0;
	top: -1.25rem;
	font-size: 0.75rem;
	line-height: 0.95em;
	background-color: #999;
	border-radius: 0.2rem;
	padding: 0.2rem 0.3rem;
	white-space: nowrap;
	content: "Erklärung im Glossar";
	display: none;
}
.ego_glossary_link:active:before,
.ego_glossary_link:hover:before,
.ego_glossary_link:focus:before {
	display: block;
}
ol > li{
	margin-left: 1.1rem;
}
ul {
	list-style: none;
	margin: 0;
	padding: 0 0 0 0.5rem;
	position: relative;
}
ul > li {
	padding: 0;
	line-height: initial;
}
ul > li:before {
	content: "\f0da";
	color: var(--main-color);
	font-size: 0.75rem;
	font-family:"Font Awesome 6 Free";
	align-content: center;
	margin-right:0.4rem;
}
ul > li a {
	border-bottom: 1px dotted var(--main-color);
	transition:background-color var(--transition-duration), color var(--transition-duration);
}
ul > li a:before {
	content: "";
}
ul > li a:hover, ul > li a:focus, ul > li a:active {
	color: #fff;
	background-color: var(--main-color);
}
ul > li a:hover strong, ul > li a:focus strong, ul > li a:active strong{
	color: #fff!important;
}

ol > li p, ul > li p {
	display:inline;
}

ul + p,ol + p,dl + p, 
ul + h3, ul + h4, ul + h5, ul + h6 {
	margin-top: 0.6rem;
}
td {
	margin: 0px;
	padding: 2px 5px 2px 0px;
	border-bottom: 1px solid #CCC;
}
/****************** Service-Navi *******************/
#service_navi li:before,
#sekundaer_nav li:before,
.header_galerie_container li:before,
ul.level1 li:before {
	content: '';
	padding: 0;
	display:none;
}
#service_navi li a,
#sekundaer_nav li a,
.header_galerie_container li a,
ul.level1 li a {
	border-bottom: none;
}
/***************** Vor-Zurück-Navi *******************/
#prev_next_nav {
	display: flex;
	width: 100%;
	justify-content: space-between;
}
.prev_next_nav_top {
	padding: 0 0 0.75rem 0;
}
.prev_next_nav_bottom {
	padding: 0.75rem 0 0 0;
}
#prev_next_nav a,
#prev_next_nav_counter {
	display: inline-block;
	border-radius: 0.2rem;
	padding: 0.1rem 0.5rem;
	background-color: #E7E9EA;
}
#prev_next_nav a:active,
#prev_next_nav a:hover,
#prev_next_nav a:focus {
	background-color: var(--main-color);
	color: white;
}
#prev_page_button a:before,
#next_page_button a:after {
	font-size: 0.7rem;
	vertical-align: 5%;
	color: #333;
}
#prev_page_button a:before {
	content: '\25c0';
	padding: 0 0.4rem 0 0;
}
#next_page_button a:after {
	content: '\25b6';
	padding: 0 0 0 0.4rem;
}
#prev_page_button a:active:before,
#prev_page_button a:hover:before,
#prev_page_button a:focus:before,
#next_page_button a:active:after,
#next_page_button a:hover:after,
#next_page_button a:focus:after {
	color: white;
}
.prev_next_zusatz {
	margin: 0 0 0.5rem 0;
}
/**************** Ansprechpartner *****************/
.letzte_aenderung {
	max-width: var(--content-width);
	width:100%;
	margin: 0.5rem auto 0 auto;
}
.letzte_aenderung p {
	display: inline-block;
	padding: 0.5rem 1rem;
	margin-bottom: 0;
	background:var(--bg-color-footer);
	border-top-left-radius: 0.3rem;
	border-top-right-radius: 0.3rem;
	font-size:0.9rem;
}
.letzte_aenderung i {
	color: var(--main-color);
	transition:background-color var(--transition-duration), color var(--transition-duration);
}
.letzte_aenderung a:hover,
.letzte_aenderung a:hover i,
.letzte_aenderung a:focus,
.letzte_aenderung a:focus i,
.letzte_aenderung a:active,
.letzte_aenderung a:active i{
	color: #fff;
}

/**************** Banner im Inhalt *****************/
.bild_banner {
	display: block;
	width: 100%;
	padding: 0.5rem 0 0 0;
}
.bild_banner img {
	display: block;
	width: 100%;
	margin: 0;
}
.video_banner {
	display: block;
	position: relative;
	height: auto;overflow: hidden;
	padding-bottom: 56.25%;
	margin-top: 1rem;
}
.video_banner iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.banner_breit {
	position: relative;
	top: 0;
	left: -0.95rem;
	width: calc(100% + 1.9rem);
	height: 100%;
}
.banner_text {
	display: block;
	color: grey;
	padding: 0 0 0.75rem 0;
}

.only_mobile{
	display:none;
	visibility:hidden;
}

.captcha_grid{
	display:grid;
	grid-template-areas:	'captcha-e captcha-e captcha-e'
							'captcha-h captcha-p captcha-a'
							'captcha-l captcha-i captcha-i'
							'captcha-s captcha-s captcha-s';
	grid-gap:0.75rem;
	width:75%;
}

.captcha_grid_header{grid-area:captcha-h;}
.captcha_grid_error{grid-area:captcha-e;}
.captcha_grid_pic{grid-area:captcha-p;}
.captcha_grid_audio{grid-area:captcha-a;justify-self:end}
.captcha_grid div,.captcha_grid br{display:none;}
.captcha_grid #captcha_image_audio_controls{display:block;}
.captcha_grid label{grid-area:captcha-l;width:100%;}
.captcha_grid #captcha_user{grid-area:captcha-i;}
.captcha_grid_submit .captcha_grid_submit{grid-area:captcha-s}
#captcha_user{width:100%;}

/**********************************************************************************************/
/*   Einstellungen für Bildschirmauflösung unter 800 Pixel  - z.B. Tablets im Hochformat      */ 
/**********************************************************************************************/

@media screen and (max-width: 800px) {
	#main {grid-template-columns:repeat(2, 1fr) 30%;}
	.main_layout_50 #maincontent{grid-column:span 3;}
}

/**********************************************************************************************/
/*   Einstellungen für Bildschirmauflösung unter 550 Pixel  - z.B. Smartphones im Querformat  */ 
/**********************************************************************************************/

@media screen and (max-width: 550px) {
	#main {grid-template-columns:repeat(4, 1fr)}
	.main_layout_50 #maincontent,.main_layout_75 #maincontent {grid-column:span 4;}
	.letzte_aenderung p{display:block;}
	.letzte_aenderung .only_mobile{display:inline;visibility:visible;}
	.letzte_aenderung .no_mobile{display:none;visibility:hidden;}
	.captcha_grid{
		width:100%;
		grid-template-areas:'captcha-e captcha-e'
							'captcha-h captcha-h'
							'captcha-p captcha-a'
							'captcha-l captcha-l'
							'captcha-i captcha-i'
							'captcha-s captcha-s';
	}
}

/****************** Quickfixes ***********************/
#newsletter_container a:hover{
	color:#fff !important;
}
#inhaltsverzeichnis a:hover{
	color:#fff !important;
}

