/************************************ Start: Skelleton ************************************/
* { margin: 0; padding: 0; box-sizing: border-box; color: inherit; font-size: inherit; font-family: inherit; }
html { min-height: 100%; line-height: 1px; }
body { position: relative; display: table; width: 100%; overflow-x: hidden; height: 100%; font-family: 'Open Sans', sans-serif; font-size: 16px; color: #323232; line-height: 1.5; }
body > table { width: 100%; max-width: 100%; min-height: 100vH; }
body > table > tbody > tr,
body > table > tbody > tr > td { height: 100%; }
/************************************ Ende: Skelleton ************************************/
/************************************ Start: Grid Override ************************************/
.cms_container_narrow									{ width: 100%; max-width: 1030px; margin: 0 auto; }
.cms_container											{ width: 100%; max-width: 1230px; margin: 0 auto; }
.cms_container_wide										{ width: 100%; max-width: 1630px; margin: 0 auto; }
.cms_container_ultrawide								{ width: 100%; max-width: 100%; }
.cms_padding_025										{ padding:  5px; }
.cms_padding_05											{ padding:  10px; }
.cms_padding_1											{ padding:  15px; }
.cms_padding_2											{ padding: 30px; }
.cms_padding_025										{ padding:  5px; }
.cms_padding_05											{ padding:  10px; }
.cms_padding_1											{ padding:  15px; }
.cms_padding_2											{ padding: 30px; }
.flex_container.cms_padding_1							{ padding:  15px; }
.flex_box.cms_padding_1									{ padding:  15px; }
.flex_container.cms_padding_2							{ padding: 30px; }
.flex_box.cms_padding_2									{ padding: 30px; }
/************************************ Ende: Grid Override ************************************/
/************************************ Start: Catpadding Klasse ************************************/
.catpadding { padding: 24px 0; }
/************************************ Ende: Catpadding Klasse ************************************/
/************************************ Start: Headings ************************************/
h1 {
	font-family: 'Open Sans', sans-serif;
	font-weight: 600;
	font-size: 52px;
	line-height: 62px;
	color: #0056AF;
	text-align: left;
	padding: 0 0 15px 0;
}
h2 {
	font-family: 'Open Sans', sans-serif;
	font-weight: 600;
	font-size: 46px;
	line-height: 58px;
	color: #0056AF;
	text-align: left;
	padding: 0 0 15px 0;
}
h3 {
	font-family: 'Open Sans', sans-serif;
	font-weight: 600;
	font-size: 32px;
	line-height: 38px;
	color: #0056AF;
	text-align: left;
	padding: 0 0 15px 0;
}
h4 {
	font-family: 'Open Sans', sans-serif;
	font-weight: 600;
	font-size: 26px;
	line-height: 30px;
	color: #0056AF;
	text-align: left;
	padding: 0 0 15px 0;
}
h5 {
	font-family: 'Open Sans', sans-serif;
	font-weight: 600;
	font-size: 24px;
	line-height: 28px;
	color: #0056AF;
	text-align: left;
	padding: 0 0 15px 0;
}
@media screen and (max-width: 767px) {
	h1 {
		font-size: 36px !important;
		line-height: 42px !important;
		font-weight: 600 !important;
		word-wrap: break-word;
		overflow-wrap: break-word;
		-webkit-hyphens: auto;
		-moz-hyphens: auto;
		hyphens: auto;
	}
	h2 {
		font-size: 32px !important;
		line-height: 38px !important;
		font-weight: 600 !important;
		word-wrap: break-word;
		overflow-wrap: break-word;
		-webkit-hyphens: auto;
		-moz-hyphens: auto;
		hyphens: auto;
	}
	h3 {
		font-size: 26px !important;
		line-height: 32px !important;
		font-weight: 600 !important;
		word-wrap: break-word;
		overflow-wrap: break-word;
		-webkit-hyphens: auto;
		-moz-hyphens: auto;
		hyphens: auto;
	}
	h4 {
		font-size: 22px !important;
		line-height: 28px !important;
		font-weight: 600 !important;
		word-wrap: break-word;
		overflow-wrap: break-word;
		-webkit-hyphens: auto;
		-moz-hyphens: auto;
		hyphens: auto;
	}
	h5 {
		font-size: 21px !important;
		line-height: 28px !important;
		font-weight: 400 !important;
		word-wrap: break-word;
		overflow-wrap: break-word;
		-webkit-hyphens: auto;
		-moz-hyphens: auto;
		hyphens: auto;
	}
}
/************************************ Ende: Headings ************************************/
/************************************ Start: Content Font Settings ************************************/
a {
	font-family: inherit;
	font-weight: inherit;
	font-size: inherit;
	line-height: inherit;
	color: #0056AF;
	text-align:inherit;
	display: inline-block;
	text-decoration: none;
}
a:hover { text-decoration: underline; }
.lead {
	font-family: 'Open Sans', sans-serif;
	font-weight: 600;
	font-size: 26px;
	line-height: 38px;
	color: #000000;
	text-align: left;
	padding: 0 0 15px 0;
}
p {
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 25px;
	color: #000000;
	text-align: left;
	padding: 0 0 15px 0;
}
@media screen and (max-width: 767px) { p { font-size: 18px !important; line-height: 25px !important; font-weight: 400 !important; } }
.block_10000 li {
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 25px;
	color: #000000;
	text-align: left;
	padding: 0 0 15px 0;
}
.block_10000 li > span { display: block; }
@media screen and (max-width: 767px) { .block_10000 li { font-size: 18px !important; line-height: 25px !important; font-weight: 400 !important; } }
/************************************ Ende: Content Font Settings ************************************/
/************************************ Start: Content Font Settings ************************************/
.teaser_img_logo {
	display: block;
	margin: 50px auto 100px auto;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	background-position: center !important;
	width: 512px;
	height: 190px;
}
.teaser_img_logo > img { display: block; width: 512px; height: 190px; }
.text_container { margin: 0 0 100px 0; }
.text_box > p { text-align: center; }
.text_box > p:last-of-type { padding: 0 !important; }
.footer_text_container { position: relative; }
.footer_text { display: table; margin: 0 auto; padding: 11px 0 0 0; }
.footer_text:before {
	content: "";
	position: absolute;
	top: 15px;
	left: 0;
	width: 100%;
	height: 1px;
	background: #0056AF;
}
.footer_text > p { text-align: center; }
.footer_text > p:last-of-type { padding: 0 !important; }
@media screen and (max-width: 959px) {
	.teaser_img_logo, .teaser_img_logo > img { width: 260px; height: 96px; }
	.teaser_img_logo { margin: 0 auto; }
	.text_container { margin: 0; }
	.footer_text { position: relative; }
	.footer_text:before { top: 0; }
	.logo_container.cms_padding_1, .text_container.cms_padding_1, .footer_text_container.cms_padding_1 { padding: 0 !important; }
	.logo_container { position: absolute; top: 30px; left: 30px; width: calc(100% - 60px) !important; }
	.text_container {
		position: absolute;
		top: 50%;
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		-o-transform: translateY(-50%);
		transform: translateY(-50%);
		left: 30px;
		width: calc(100% - 60px) !important;
	}
	.footer_text_container { position: absolute; bottom: 30px; left: 30px; width: calc(100% - 60px) !important; }
}
@media screen and (max-width: 959px) and (max-height: 350px) {
	.teaser_img_logo { margin: 15px auto 15px auto; }
	.text_container { margin: 0 0 15px 0; }
	.footer_text { position: static; }
	.footer_text:before { top: 15px; }
	.logo_container.cms_padding_1, .text_container.cms_padding_1, .footer_text_container.cms_padding_1 { padding: 15px !important; }
	.logo_container { position: relative; top: auto; left: auto; width: 100% !important; }
	.text_container {
		position: relative;
		top: auto;
		-webkit-transform: none !important;
		-moz-transform: none !important;
		-o-transform: none !important;
		transform: none !important;
		left: auto;
		width: 100% !important;
	}
	.footer_text_container { position: relative; bottom: auto; left: auto; width: 100% !important; }
}
@media screen and (min-width: 960px) and (max-height: 645px) { .teaser_img_logo { margin: 15px auto 50px auto; } .text_container { margin: 0 0 50px 0; } }
/************************************ End: Content Font Settings ************************************/