@font-face {
  font-family: fontheadlines;
  font-weight: normal;
  src: url(./fonts/Source_Serif_Pro/SourceSerifPro-Light.ttf);
}
@font-face {
  font-family: fontbold;
  font-weight: normal;
  src: url(./fonts/Roboto/Roboto-Regular.ttf);
}
@font-face {
  font-family: fontmiddle;
  font-weight: normal;
  src: url(./fonts/Roboto/Roboto-Light.ttf);
}
@font-face {
  font-family: font300;
  font-weight: 300;
  src: url(./fonts/Roboto/Roboto-Light.ttf);
}
@font-face {
  font-family: font400;
  font-weight: 400;
  src: url(./fonts/Roboto/Roboto-Light.ttf);
}

body {
	font-family: fontmiddle, sans-serif;
	font-weight: 300;
}
h1, h2, h3, h4 {
	font-family: fontheadlines, sans-serif;
}
strong, b {
  font-family: fontbold, sans-serif;
  font-weight: normal;
}
i {
  font-family: fontitalic, sans-serif;
  font-weight: normal;
}
h5, h6, a, input, label {
  font-family: font400;
}
#content th {
	font-family: font300;
}

.font300 {
	font-family: font300;
}


.hidpi {
	margin: 0 1rem 1rem 1rem;
}
#footer .hidpi {
	margin: 0 0 1rem 0;
}
.align_right {
	margin-right: 0;
	float: right;
	clear: right;
}
.align_left {
	margin-left: 0;
	float: left;
	clear: left;
}
.align_center {
	margin: 1rem 0;
	text-align: center;
	
}

#pageHeader h1 {
	margin: 0;
	font-size: 1.7rem;
	line-height: 2rem;
	font-weight: 300;
	padding: 0;
}
h1, h2, h3, h4, h5, h6 {
	margin-bottom: 0.2rem;
}
h4, h5, h6 {
	font-size: 1.3rem;
}
h2 {
	font-size: 1.6rem;
}
h3 {
	font-size: 1.45rem;
    margin-bottom: 0;
}
p, a {
	font-size: 1.2rem;
}

#content p, #content ul, #content ol, #content td {
	margin: 0.2rem 0 0.5rem 0;
	font-size: 1rem;
}


@media (min-width: 45em) {
	h2 {
	    margin-bottom: 1.8rem;
	}
	#pageHeader h1 {
		font-size: 2.5rem;
		line-height: 3rem;
	}

	#content p, #content ul, #content ol, #content td {
		font-size: 1.3rem;
		line-height: 1.5rem;
		font-weight: 200;
	}

	h2 {
		font-size: 2.5rem;
	    margin-bottom: 2.4rem;
	}

}
@media (min-width: 71em) {
}

a[href^="tel"] {
	text-decoration: none;
}

#languageChange a {
	font-family: fontbold;
}

#content ul, #content ol {
	margin-left: 0.4rem;
	padding-left: 1rem;
}
#content ul h2 {
	font-size: 1rem;
}



#content table {
	overflow:scroll;
	width: 100%;
	margin-bottom: 2rem;
	border: 0;
}
#content table,td, #content th, #content tr {
	border: 0 !important;
}
#content th {
	margin: 0.2rem 0 0.5rem 0;
	text-align: left;
}
#content tbody tr {
	border-top: 0;
}
#content td {
	vertical-align: top;
	margin: 1rem;
}
#content td p {
	padding: 0;
	margin: 0;
	font-size: 1rem;
}
.transall {
	transition-delay: 0s;
	transition-property: all;
	transition-timing-function: ease-in;
	-moz-transition-delay: 0ms;
	-moz-transition-property: all;
	-moz-transition-timing-function: ease-in;
	-webkit-transition-delay: 0ms;
	-webkit-transition-property: all;
	-webkit-transition-timing-function: ease-in;
}
.transall300 {
	transition-duration: 300ms;
	-moz-transition-duration: 300ms;
	-webkit-transition-duration: 300ms;
}
.transall500 {
	transition-duration: 500ms;
	-moz-transition-duration: 500ms;
	-webkit-transition-duration: 500ms;
}


#content ul.anhaenge {
	margin-top: 1rem;
	padding: 1rem;
	list-style-image: none;
	list-style-type: none;
}
#content ul.anhaenge li {
	padding: 0.5rem 0;
}
.dateityppdf {
	background: url(images/pdf.png) no-repeat left center;
	padding: 1rem 1rem 1rem 40px;
}

section#bereiche, section#children {
	overflow: visible !important;
}




#languageChange li {
	display: inline-block;
}
#languageChange li a {
	text-decoration: none;
	padding: 0.2rem 0.5rem;
	display: inline-block;
}
#languageChange li a.akt {
	text-decoration: underline;
}

#bereichlinks li {
	list-style-image: none;
	list-style: none;
}
#bereichlinks a {
	text-decoration: none;
}

#content p.markieren {
	font-size: 1.4rem;
}

.mediaimages {
	display: block;
	width:100%;
	padding:1rem;
	box-sizing: border-box;
}

#content .linkext, #content .buttonext {
	border-radius: 0.5rem;
	text-decoration: none;
	background: url(images/pfeil-button-w.png) no-repeat 5px center;
	background-size: auto 25px;
	padding: 0.1rem 0.4rem 0.1rem 40px;
	display: inline-block;
	margin-top: 2rem;
}
#content .buttonext {
	background: url(images/pfeil-button-w.png) no-repeat 5px center;
	background-size: auto 25px;
	padding: 0.1rem 0.4rem 0.1rem 40px;
}
.buttonext a {
	font-size: 1.8rem;
	color: #9EA3A8;
}
.more a {
	text-decoration: none;
}
#content .linkext {
	padding: 0.3rem 0.7rem 0.3rem 30px;
}


#mehrcontent {
	position: absolute;
	left: 50%;
	bottom: 15px;
	z-index: 10;
	width: 50px;
	height: 50px;
	margin-left: -25px;
	text-decoration: none;
	font-weight: bold;
	font-size: 1.5em;
	background: url(images/pfeil-unten.png) no-repeat center center rgba(204,205,19,0.7);
	background-size: 80% auto;
	text-align: center;
	border-radius: 50px;
	border: 1.5px solid #145D67;
	padding: 0;
}

address {
	font-style: normal;
}
blockquote {
	font-style: normal;
	padding: 1rem 0 0 0;
	margin: 0; 
}
blockquote:before {
	content: ' >>';
}
blockquote:after {
	content: ' <<';
}

#contentslider .bereichtext h2 {
	padding: 0.5rem 40px;
}

.galbildrahmen {
	text-align: center;
}

#copyright {
	font-size: 0.8rem;
}


	.marquee {
		max-width: 100vw; /* iOS braucht das */
		white-space: nowrap;
		overflow: hidden;
		/* hier evtl. noch font-size, color usw. */
		padding: 0.3rem 1rem;
	}

	.marquee span {
		display: inline-block;
		padding-left: 100%;
		animation: marquee 30s linear infinite;
	}

	/* Optional: mouseover (oder Tipp auf dem Touchscreen) pausiert die Laufschrift */
	.marquee span:hover {
		animation-play-state: paused 
	}

	/* Make it move */
	@keyframes marquee {
		0%   { transform: translateX(0); }
		100% { transform: translateX(-100%); }
	}


.pageselection {
	margin: 4rem 0;
	padding-bottom: 1rem;
}



@media (min-width: 72em) {

	.text2spDesk, .textmsp {
		column-count: 2;
		column-span: all;
		column-gap: 4rem;
		column-rule: 0px solid #666;
	}
}

#content button {
	border: 0;
	background-color: transparent;
	padding: 0.3rem 0.7rem 0.3rem 30px;
}
#content .button {
	text-align: right;
}
.button a {
	text-decoration: none;	 
}
.pageselection span.berscroll {
	position: absolute;
	top: -300px;
	display: block;
}


#contentInner h2 {
	color: #012034;
	font-size: 1.5rem;
}

.bereichanker {
	position: absolute;
	top: -300px;
	display: block;
}