html {
	position:relative;
	margin:0;
	padding:0;
	overflow-x:hidden;
	overflow-y:scroll;
}

body {
	position:relative;
	margin:0;
	padding:90px 0 0;
	font-family:'Nexa W01',sans-serif;
	overflow:hidden;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	-moz-text-size-adjust:none;
	-webkit-text-size-adjust:none;
	-ms-text-size-adjust:none;
	text-size-adjust:none;
	font-size:0;
	line-height:0;
}

@media (max-width:1023px) {

body {
	padding:50px 0 0;
}

}

img {
	border:0;
	outline:0;
	max-width:100%;
	height:auto;
}

a {
	text-decoration:none;
	-webkit-transition:all 0.3s ease-in-out;
	-moz-transition:all 0.3s ease-in-out;
	-ms-transition:all 0.3s ease-in-out;
	-o-transition:all 0.3s ease-in-out;
	transition:all 0.3s ease-in-out;
}

.align-center {
	text-align:center;
}

#ohmobile, #ohtablet {
    display:none;
}

@media (max-width:1023px) {

#ohtablet {
	display:block;
}

}

@media (max-width:767px) {

#ohmobile {
	display:block;
}

}

.title {
	position:relative;
	background:#16427e;
	padding:30px 10px;
	text-align:center;
}

.title-inner {
	position:relative;
	display:inline-block;
	text-align:center;
}

@media (max-width:1023px) {

.title {
	padding:20px 10px;
}
	
}

.typo h2 {
	font-size:36px;
	line-height:1.2;
	font-weight:400;
	margin:0 auto;
	padding:0;
	color:#fff;
}

.typo h3 {
	font-size:24px;
	line-height:1.2;
	font-weight:700;
	margin:0 auto 20px;
	padding:0;
}

.typo h4 {
	font-size:36px;
	line-height:1.2;
	font-weight:400;
	margin:0 auto 50px;
	padding:0;
}

.typo h5 {
	font-size:15px;
	line-height:1.2;
	font-weight:400;
	text-transform:uppercase;
	margin:0 auto 5px;
	padding:0;
	color:rgb(128,130,133);
}

.typo p {
	font-size:19px;
	line-height:1.5;
	font-weight:400;
	margin:0 auto 30px;
	padding:0;
	hyphens:auto;
}

.typo p strong {
	font-size:36px;
	font-weight:700;
}

.typo p a {
	color:#16427e;
}

.typo p .button {
	display:inline-block;
	background:#16427e;
	border-radius:5px;
	font-size:15px;
	color:#fff;
	padding:5px 10px;
	margin:0 10px 0 0;
	vertical-align:middle;
}

.typo p .button:hover {
	background:#ca1517;
}

.typo p:last-child, .typo h2:last-child, .typo h3:last-child, .typo h4:last-child, .typo h5:last-child {
	margin:0 auto;
}

.typo ol, .typo ul {
	font-size:19px;
	line-height:1.5;
	font-weight:400;
	margin:0 auto 30px;
	padding:0 0 0 30px;
}

.typo ol a, .typo ul a {
	color:#16427e;
}

@media (max-width:1023px) {

.typo h2 {
	font-size:24px;
}

.typo h3 {
	font-size:21px;
	margin:0 auto 20px;
}

.typo h4 {
	font-size:24px;
	margin:0 auto 30px;
}

.typo h5 {
	font-size:15px;
}

.typo p {
	font-size:17px;
	margin:0 auto 20px;
}

.typo p strong {
	font-size:24px;
}

.typo p .button {
	border-radius:5px;
	font-size:11px;
	color:#fff;
	padding:2px 10px;
	margin:0 0 0 10px;
}

.typo ol, .typo ul {
	font-size:17px;
	margin:0 auto 20px;
}

}

.cover {
	position:relative;
	height:calc(100vh - 90px);
}

.cover-inner {
	position:absolute;
	top:50%;
	left:50%;
	-webkit-transform:translate(-50%,-50%);
	-moz-transform:translate(-50%,-50%);
	-ms-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);
}

.cover img {
	width:500px;
	max-width:50vmin;
}

.cover-arrow {
	position:absolute;
	bottom:10px;
	left:50%;
	-webkit-transform:translate(-50%,0);
	-moz-transform:translate(-50%,0);
	-ms-transform:translate(-50%,0);
	transform:translate(-50%,0);
	width:48px;
	cursor:pointer;
	display:none;
}

.cover-arrow:hover {
	opacity:0.7;
}

.cover .cover-arrow img {
	width:48px;
}

.cover-curtain {
	position:absolute;
	top:0;
	left:0;
	right:0;
	height:calc(100vh - 90px);
	background-image:repeating-linear-gradient(-54deg, #ca1517 0%, #ca1517 2%, #16427e 2%, #16427e 4%, #ca1517 4%);
	animation:curtain 4s linear;
	animation-fill-mode:forwards;
	animation-timing-function:ease-in;
	z-index:100;
}

@keyframes curtain {
	0 {top:0;}
	25% {top:0;}
	50% {top:-100vh;}
	100% {top:-100vh;}
}

.cover-curtain h2 {
	position:absolute;
	top:50%;
	left:50%;
	-webkit-transform:translate(-50%,-50%);
	-moz-transform:translate(-50%,-50%);
	-ms-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);
	font-size:36px;
	line-height:1.2;
	font-weight:700;
	margin:0 auto;
	padding:10px 20px;
	background:#fff;
}

@media (max-width:1023px) {

.cover, .cover-curtain {
	height:calc(100vh - 50px);
}

.cover-curtain h2 {
	font-size:21px;
	padding:10px 20px;
	white-space:nowrap;
}

.cover-arrow {
	width:24px;
	bottom:20px;
}

.cover .cover-arrow img {
	width:24px;
}

}

.text {
	position:relative;
	padding:60px 20px;
}

.text-inner {
	position:relative;
	margin:0 auto;
	max-width:1000px;
}

@media (max-width:1023px) {

.text {
	padding:30px 20px;
}

}

.twotext {
	position:relative;
	padding:60px 0;
}

.twotext.smallpadding {
	padding:30px 0;
}

.twotext-inner {
	position:relative;
	margin:0 auto;
	max-width:1040px;
}

.twotext-col {
	display:inline-block;
	margin:0 auto;
	width:50%;
	box-sizing:border-box;
	padding:0 20px;
	vertical-align:top;
}

.twotext-col.vcenter {
	position:absolute;
	top:50%;
	-webkit-transform:translate(0,-50%);
	-moz-transform:translate(0,-50%);
	-ms-transform:translate(0,-50%);
	transform:translate(0,-50%);
	left:0;
}

.twotext-col.vcenter:nth-child(2) {
	left:50%;
}

.twotext-col.vcenterstatic:nth-child(2) {
	margin:0 0 0 50%;
}

@media (max-width:1023px) {

.twotext {
	padding:30px 0;
}


}

@media (max-width:767px) {

.twotext-col {
	display:block;
	margin:0 auto;
	width:100%;
}

.twotext-col:nth-child(2) {
	margin:30px auto 0;
}

.twotext-col.vcenter {
	position:relative;
	top:auto;
	-webkit-transform:translate(0,0);
	-moz-transform:translate(0,0);
	-ms-transform:translate(0,0);
	transform:translate(0,0);
	left:auto;
}

.twotext-col.vcenter:nth-child(2) {
	left:auto;
}

.twotext-col.vcenterstatic:nth-child(2) {
	margin:30px auto 0;
}

}

.cal {
	position:relative;
	padding:60px 0;
}

.cal-inner {
	position:relative;
	margin:0 auto;
	padding:0 20px;
	box-sizing:border-box;
	max-width:1040px;
}

.cal-item {
	position:relative;
	margin:0 auto;
	padding:30px 0;
	border-bottom:1px solid rgb(128,130,133);
}

.cal-item:last-child {
	border:0;
}

.cal-item-left {
	position:relative;
	display:inline-block;
	margin:0 auto;
	width:150px;
	box-sizing:border-box;
	padding:0;
	vertical-align:top;
}

.cal-item-right {
	position:relative;
	display:inline-block;
	margin:0 auto;
	width:calc(100% - 150px);
	box-sizing:border-box;
	padding:0 0 0 20px;
	vertical-align:top;
}

.archive .cal-item-left, .archive .cal-item-right {
	vertical-align:middle;
}

.cal-item-weekday {
	display:block;
	text-align:center;
	font-size:15px;
	line-height:1.1;
	color:rgb(128,130,133);
	font-weight:400;
	text-transform:uppercase;
}

.cal-item-date {
	display:block;
	text-align:center;
	font-size:72px;
	line-height:1.1;
	color:#ca1517;
}

.cal-item-month {
	display:block;
	text-align:center;
	font-size:15px;
	line-height:1.1;
	color:rgb(128,130,133);
	font-weight:400;
	text-transform:uppercase;
}

.cal.typo h4 {
	margin:0 auto 10px;
}

.cal.typo p {
	color:rgb(128,130,133);
}

@media (max-width:1023px) {

.cal {
	padding:30px 0;
}

.cal-item-left {
	width:120px;
}

.cal-item-right {
	width:calc(100% - 120px);
}

.cal-item-weekday {
	font-size:13px;
}

.cal-item-date {
	font-size:60px;
}

.cal-item-month {
	font-size:13px;
}

.cal.typo h4 {
	margin:0 auto 10px;
}

}

@media (max-width:767px) {

.cal-item-left {
	width:70px;
}

.cal-item-right {
	width:calc(100% - 70px);
}

.cal-item-weekday {
	font-size:11px;
}

.cal-item-date {
	font-size:36px;
}

.cal-item-month {
	font-size:11px;
}

.cal.typo h4 {
	margin:0 auto 5px;
}

}

.threeimg {
	position:relative;
	padding:0;
	margin:0 auto 30px;
}

.threeimg-inner {
	position:relative;
	margin:0 auto;
	max-width:1040px;
}

.threeimg-item {
	position:relative;
	margin:0 auto;
	padding:0 10px;
	width:33.3333%;
	box-sizing:border-box;
	vertical-align:top;
	display:inline-block;
	text-align:center;
}

.threeimg img {
	margin:0 auto 5px;
}

.threeimg-title {
	display:block;
	text-align:center;
	font-size:15px;
	line-height:1.1;
	font-weight:400;
	text-transform:uppercase;
}

.threeimg-position {
	display:block;
	text-align:center;
	font-size:15px;
	line-height:1.1;
	color:rgb(128,130,133);
	font-weight:400;
	text-transform:uppercase;
}

@media (max-width:767px) {

.threeimg-item {
	width:100%;
	display:block;
	margin:0 auto 20px;
}

.threeimg-item:last-child {
	margin:0 auto;
}

}

header {
	position:fixed;
	top:0;
	left:0;
	right:0;
	padding:0;
	margin:0 auto;
	background:#fff;
	z-index:1000;
	box-shadow:0 2px 10px rgba(0,0,0,0.2);
}

.header-inner {
	position:relative;
	margin:0 auto;
	max-width:1040px;
	padding:20px 0;
}

header nav {
	text-align:center;
	display:none;
}

@media (min-width:1024px) {

header nav {
	display:block!important;
	text-align:right;
}
	
}

header nav ul {
	position:relative;
	margin:0 auto;
	padding:0;
	list-style:none;
}

header nav li {
	position:relative;
	margin:0 10px;
	padding:0;
	display:inline-block;
}

header nav a {
	font-size:15px;
	line-height:30px;
	font-weight:400;
	margin:0 auto;
	padding:10px 5px;
	display:block;
	color:#000;
}

header nav a:hover, header nav a.active {
	color:#16427e;
}

.header-logo {
	position:absolute;
	top:0;
	left:0;
	padding:10px 20px;
	height:150px;
	box-sizing:border-box;
}

.header-logo img {
	width:auto;
	height:100%;
}

@media (max-width:1023px) {

.header-inner {
	padding:0;
	height:50px;
}

header nav {
	position:fixed;
	top:50px;
	left:0;
	right:0;
	bottom:0;
	text-align:center;
	background:#fff;
}

header nav ul {
	position:absolute;
	top:50%;
	left:0;
	right:0;
	-webkit-transform:translate(0,-50%);
	-moz-transform:translate(0,-50%);
	-ms-transform:translate(0,-50%);
	transform:translate(0,-50%);
}

header nav li {
	margin:0 10px;
	padding:0;
	display:block;
}

.header-logo {
	position:absolute;
	top:0;
	left:0;
	padding:5px 10px;
	height:82px;
	box-sizing:border-box;
}

}

#menubutton {
	position:fixed;
	right:10px;
	top:5px;
	width:40px;
	height:40px;
	display:inline-block;
	cursor:pointer;
	-webkit-transition:all 0.5s ease-in-out;
	-moz-transition:all 0.5s ease-in-out;
	-ms-transition:all 0.5s ease-in-out;
	-o-transition:all 0.5s ease-in-out;
	transition:all 0.5s ease-in-out;
	z-index:100;
	box-sizing:border-box;
}

@media (min-width:1024px) {

#menubutton {
	display:none;
}

}

#line1, #line2, #line3 {
	position:absolute;
	width:32px;
	height:2px;
	background:#16427e;
	right:4px;
	-webkit-transition:-webkit-transform 0.4s ease-in-out;
	transition:transform 0.4s ease-in-out;
}

#line1 {
	top:10px;
}

#line2 {
	top:50%;
	margin-top:-1px;
}

#line3 {
	top:auto;
	bottom:10px;
}

.active #line1 {
	-moz-transform:translate(0,9px) rotate(45deg);
	-ms-transform:translate(0,9px) rotate(45deg);
	-o-transform:translate(0,9px) rotate(45deg);
	-webkit-transform:translate(0,9px) rotate(45deg);
	transform:translate(0,9px) rotate(45deg);
}

.active #line2 {
	-moz-transform:translate(0,0) rotate(-45deg);
	-ms-transform:translate(0,0) rotate(-45deg);
	-o-transform:translate(0,0) rotate(-45deg);
	-webkit-transform:translate(0,0) rotate(-45deg);
	transform:translate(0,0) rotate(-45deg);
}

.active #line3 {
	display:none;
}

footer {
	position:relative;
	padding:0;
	margin:0 auto;
	background:#ca1517;
	background:rgb(128,130,133);
}

.footer-inner {
	position:relative;
	margin:0 auto;
	max-width:1040px;
	padding:20px 0;
}

.footer-col {
	position:relative;
	margin:0 auto;
	padding:0 20px;
	width:60%;
	box-sizing:border-box;
	vertical-align:top;
	display:inline-block;
	text-align:left;
}

.footer-col:nth-child(2) {
	width:40%;
	text-align:right;
}

footer p {
	font-size:19px;
	line-height:1.5;
	font-weight:400;
	margin:0 auto 30px;
	padding:0;
	color:#fff;
}

footer p:last-child {
	margin:0 auto;
}

footer p b {
	font-weight:700;
}

footer p span {
	cursor:pointer;
}

footer a:hover, footer span:hover, footer span.active {
	opacity:0.7;
}

footer p a {
	color:#fff;
}

#chapter-datenschutz, #chapter-impressum {
	display:none;
}


@media (max-width:767px) {

.footer-col {
	width:100%;
	text-align:center;
}

.footer-col:nth-child(2) {
	width:100%;
	margin:15px auto 0;
	text-align:center;
}

}
