*{
	margin: 0;
	padding: 0;
	font-family: 'Open Sans', sans-serif;
}

.index-main {
	background-image: url(images/index-bg-1-hell.png);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: fixed;
}

.header{
	min-height: 100vh;
	width: 100%;
	position: relative;
}

a {
	text-decoration: none;
}

nav{
	display: flex;
	padding: 1% 15%;
	justify-content: space-between;
	align-items: flex-end;
}

nav img{
	width: 250px;
}

.nav-links{
	flex: 1;
	text-align: center;
}

.nav-links ul li{
	list-style: none;
	display: inline-block;
	padding: 8px 60px;
	position: relative;
}

.nav-links ul li a{
	color: #1c1c1c;
	text-decoration: none;
	font-size: 18px;
	font-weight: 500;
	font-family: 'Open Sans', sans-serif;
	text-shadow: 1px 1px 2px #000000b7;
}

.nav-links ul li::after{
	content: '';
	width: 0%;
	height: 3px;
	background: #16304f;
	display: block;
	margin: 5px auto;
	transition: 0.5s;
}

.nav-links ul li:hover::after{
	width: 100%;
}

.about-col ul li{
	font-size: 10pt;
	padding-left: 5px;
}

.about-col ul{
	padding: 5px 0 0 25px;
}

.text-box{
	width: 50%;
	color: #1c1c1c;
	position: absolute;
	top: 40%;
	left: 18%;
	transform: translate(0,-50%);
	text-align: left;
	background: url(images/birds2.png);
	background-size: 32.5%;
	background-repeat: no-repeat;
	background-position-x: 85%;
	background-position-y: 101%;
}

.verlauf{
	margin-top: 40%;
	padding: 3% 18.2% 4% 18.2%;
	background: rgb(22, 48, 79, 1);
	backdrop-filter: blur(10px);
	border-top: 1.5px solid #fff;
	text-shadow: 0 0 7px #fff;
}

.verlauf p{
	font-size: 24px;
	font-family: 'Open Sans', sans-serif;
	color: #fff;
}

.emailerfolg {
	font-size: 20px;
	margin-bottom: 5px;
	color: #555;
	font-weight: 400;
}

.emailfehler {
	font-size: 20px;
	margin-bottom: 5px;
	color: #b00c2d;
	font-weight: 400;
}

.text-box h1{
	font-size: 75px;
	padding: 0% 42% 0% 0%;
	font-family: 'Open Sans', sans-serif;
	color: #656868;
	font-weight: 900;
	text-shadow: 2px 2px 5px #000000b7;
}

.text-box h4 {
	font-weight: 400;
	font-size: 17px;
	padding: 0% 42% 0% 0%;
	margin: 0% 0% 2.5% 0%;
	color: #575a5a;
	text-shadow: 0.5px 0.5px 1.5px #000000b7;
}

.text-box p{
	margin: 0px 0 40px;
	padding: 0% 40% 0% 0%;
	font-size: 16px;
	line-height: 1.85em;
	font-weight: 400;
	color: #1c1c1c;
	text-shadow: 0.25px 0.25px 1.25px #000000b7;
}

.text-box-img {
	height: 10px;
	float: right;
}

.gold {
	color: #16304f;
	font-size: 90px;
	font-family: 'Open Sans', sans-serif;
}

.hero-btn{
	display: inline-block;
	text-decoration: none;
	color: #1c1c1c;
	border: 1px solid #fff;
	padding: 12px 34px;
	font-size: 14px;
	background: transparent;
	position: relative;
	cursor: pointer;
}

.hero-btn:hover{
	border: 1px solid #ba0c2d;
	background: #ba0c2d;
	transition: 1s;
}

.send-btn{
	display: inline-block;
	text-decoration: none;
	color: #555;
	border: 1px solid #ccc;
	padding: 12px 34px;
	font-size: 14px;
	background: transparent;
	position: relative;
	cursor: pointer;
}

.send-btn:hover{
	border: 1px solid #ba0c2d;
	background: #ba0c2d;
	transition: 1s;
	color: #1c1c1c;
}

nav .fa{
	display: none;
}

@media(min-width: 2287px){
	.text-box{
		background-size: 23%;
		background-position-x: 66%;
		background-position-y: auto;
	}
}

@media(min-width: 2254px) and (max-width: 2286px){
	.text-box{
		background-size: 25%;
		background-position-x: 76%;
		background-position-y: auto;
	}
}

@media(min-width: 2183px) and (max-width: 2253px){
	.text-box{
		background-size: 27%;
		background-position-x: 79%;
		background-position-y: auto;
	}
}

@media(min-width: 2077px) and (max-width: 2182px){
	.text-box{
		background-size: 29%;
		background-position-x: 79%;
		background-position-y: auto;
	}
}

@media(min-width: 1910px) and (max-width: 2076px){
	.text-box{
		background-size: 30%;
	}
}

@media(max-width: 1900px){
	.nav-links ul li{
	padding: 8px 30px;
}
}

@media(max-width: 1700px){
	.nav-links ul li{
	padding: 8px 10px;
}
}

@media(max-width: 1400px){
	.text-box h1 {
		font-size: 57px;
	}

	.verlauf{
	margin-top: 50%;
	padding: 4% 18.2% 4% 18.2%;
	}
}

@media(max-width: 1130px){
	.verlauf{
	margin-top: 60%;
	padding: 4% 18.2% 4% 18.2%;
}
.text-box{
		width: 75%;
	}	
}

@media(max-width: 940px){
	.verlauf{
	margin-top: 70%;
	padding: 4% 0% 4% 18.2%;
}
}

@media(max-width: 850px){
	.verlauf{
	margin-top: 80%;
	padding: 4% 18.2% 4% 18.2%;
}
}

@media(max-width: 750px){

	nav img{
		padding-top: 15px;
		width: 200px;
	}
	.text-box{
		background: none;
	}
	.text-box h1{
		font-size: 49px;
		text-shadow: 2px 2px 2px #000000b7;
	}
	.text-box h4 {
		font-size: 19px;
		text-shadow: 0.5px 0.5px 1px #000000b7;
	}
	.text-box p{
		font-size: 16px;
		padding: 0% 20% 0% 0%;
		font-weight: 500;
		text-shadow: 0.25px 0.25px 5px #fff;
	}
	.nav-links ul li a {
		color: #fff;
	}
	.nav-links ul li{
	list-style: none;
	display: block;
	padding: 8px 10px;
	position: relative;
}
	.nav-links{
		position: fixed;
		background: #16304f;
		border-left: 1.5px solid #fff;
		height: 100vh;
		width: 200px;
		top: 0;
		right: -200px;
		text-align: left;
		z-index: 2;
		transition: 1s;
	}
	nav .fa{
		display: block;
		color: #1c1c1c;
		margin: 10px;
		font-size: 22px;
		cursor: pointer;
	}
	nav .fa-times{
		margin-top: 57px;
		margin-left: 20px;
		color: #fff;
	}
	.nav-links ul{
		padding: 30px;
	}
	.gold {
	font-size: 40px;
}
.verlauf{
	margin-top: 100%;
	padding: 4% 18.2% 4% 18.2%;
}
.verlauf p{
	font-size: 18px;
	font-family: 'Open Sans', sans-serif;
	color: #fff;
}
}

@media(max-width: 740px){
	.text-box h1{
		font-size: 42px;
	}
	.text-box h4 {
		font-size: 16.5px;
	}
	.text-box p{
		font-size: 14px;
		font-weight: 500;
	}
}

@media(max-width: 660px){
	.verlauf{
	margin-top: 120%;
}
}

@media(max-width: 637px){
	.text-box h1{
		font-size: 37px;
	}
	.text-box h4 {
		font-size: 14.2px;
		font-weight: 500;
	}
	.text-box p{
		font-size: 13.8px;
		font-weight: 500;
	}
}

@media(max-width: 558px){
	.text-box h1{
		font-size: 33px;
	}
	.text-box h4 {
		font-size: 12.4px;
		font-weight: 700;
		text-shadow: 0.25px 0.25px 10px #fff;
	}
	.text-box p{
		font-size: 13.5px;
		font-weight: 500;
	}
}

@media(max-width: 540px){
	.verlauf{
	margin-top: 140%;
}
}

@media(max-width: 512px){
	.text-box h1 {
		padding-bottom: 10px;
	}
	.text-box h4 {
		display: none;
	}
}

@media(max-width: 498px){
	.text-box h1{
		font-size: 32px;
		text-shadow: 1.25px 1.25px 1.75px #000000b7;
	}
	.text-box p{
		font-size: 13.5px;
		font-weight: 500;
	}
}

@media(max-width: 476px){
	.verlauf{
	margin-top: 175%;
}
}



/*-------------------Mitte--------------------------*/
.mitte {
	width: 63%;
	margin: auto;
	text-align: center;
	padding-top: 80px;
}

.mittebg {
	background: linear-gradient(298deg, rgba(89,115,139,0.75) 0%, rgba(214,214,214,0.75) 57%);
	backdrop-filter: blur(12px);
	border-bottom: 1.5px solid #fff;
	border-top: 1.5px solid #fff;
	box-shadow: 0 5px 20px #000000ab;
}

h2 {
	font-size: 24px;
	font-family: 'Open Sans', sans-serif;
}

p {
	font-size: 16px;
	padding-top: 2%;
	line-height: 1.65em;
}

.clear {
	clear: both;
}

.erstellung {
	padding: 5% 0% 0% 0%;
	margin: 0% 0% 0% 0%;
	float: left;
	width: 60%;
	text-align: left;
}

.anzeige {
	padding: 0% 0% 0% 10%;
	margin: 0% 0% 3% 0%;
	float: left;
	width: 25%;
	display: block;
}

.anzeige img {
	box-shadow: 2px 2px 4.5px #303030ab;
	border-radius: 15px;
	border-top: 1.5px solid #fff;
	border-left: 1.5px solid #fff;
}

.stlogos {
	padding: 2.5% 5% 0% 0%;
	margin: 0% 0% 0% 0%;
	float: left;
	width: 35%;
	display: block;

}

.veroeffentlichung {
	padding: 3% 0% 0% 0%;
	margin: 0% 0% 0% 0%;
	float: left;
	width: 60%;
	text-align: right;
}

.socialmedia {
	padding: 10% 0% 10% 0%;
	margin: 0% 0% 0% 0%;
	float: left;
	width: 60%;
	text-align: left;
}

.smlogos {
	padding: 9% 0% 10% 5%;
	margin: 0% 0% 0% 0%;
	float: left;
	width: 35%;
	display: block;
}

@media (max-width: 1200px) {
	h2{
		font-size: 20px;
	}

	.erstellung {
		padding: 0% 0% 0% 0%;
		margin: 0% 0% 0% 0%;
		float: none;
		width: 100%;
		text-align: left;
	}

	.anzeige {
		display: none;
	}

	.stlogos {
		display: none;
	}

	.veroeffentlichung {
		padding: 7% 0% 0% 0%;
		margin: 0% 0% 0% 0%;
		float: none;
		width: 100%;
		text-align: left;
	}

	.socialmedia {
		padding: 7% 0% 10% 0%;
		margin: 0% 0% 0% 0%;
		float: none;
		width: 100%;
		text-align: left;
	}

	.smlogos {
		display: none;
	}
}

@media (max-width: 530px) {
	h2{
		font-size: 16px;
	}

	.mitte{
		width: 63%;
		margin: auto;
		text-align: center;
		padding-top: 40px;
	}
}



/*-------------------Campus--------------------------*/
.campus{
	width: 70%;
	margin: auto;
	text-align: center;
	padding-top: 30px;
	padding-bottom: 70px;
}

/* .campusbg{
} */

.campus h1{
	color: #b00c2d;
	text-transform: uppercase;
	padding: 10px 0px 20px 0px;
}

.campus p{
	color: #fff;
}

.campus h2{
	color: #b00c2d;
	text-transform: normal;
	padding: 10px 0px 20px 0px;
	font-size: 18px;
}

.buttondiv {
	background: rgb(22, 48, 79, 0.8);
	backdrop-filter: blur(7px);
	color: #fff;
	margin: 3% 30% 0% 30%;
	padding: 1.5% 0% 2% 0%;
	text-align: center;
	box-shadow: 2.5px 2.5px 5px #000000ab;
	border-radius: 10px;
	border-top: 1.5px solid #fff;
	border-bottom: 1.5px solid #fff;
	letter-spacing: 0.7px;
}

.buttondiv:hover {
	box-shadow: inset 2.5px 2.5px 5px #000000ab;
	background: rgb(22, 48, 79, 1);
	cursor: pointer;
	transition: 0.5s;
}

.red {
	color: #fff;
	font-size: 20px;
	font-family: 'Open Sans', sans-serif;
	text-decoration: none;
	-moz-hyphens: none;
	-o-hyphens: none;
	-webkit-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	text-shadow: 1.5px 1.5px 3px #000000ab;
}

.buttondiv:active .red {
	color: transparent;
	text-shadow: none;
} 

@media (max-width: 1200px) {
	.buttondiv {
		margin: 3% 20% 0% 20%;
		padding: 2% 0% 3% 0%;
		text-align: center;
	}
}

@media (max-width: 750px) {
	.buttondiv {
		margin: 3% 8% 0% 8%;
		padding: 2% 0% 3% 0%;
		text-align: center;
	}
}

@media (max-width: 530px) {
	.campus {
		width: 70%;
		margin: auto;
		text-align: center;
		padding-top: 30px;
		padding-bottom: 40px;
	}

	.buttondiv {
		margin: 3% 5% 0% 5%;
		padding: 3% 0% 4% 0%;
		text-align: center;
	}
}

@media (max-width: 420px) {
	.red {
		font-size: 16px;
	}
}



/*-------------------Portfolio--------------------------*/
.portfolio{
	width: 63%;
	margin: auto;
	text-align: left;
	padding-top: 70px;
	padding-bottom: 70px;
}

.sub-header-portfolio{
	height: 50vh;
	width: 100%;
	background-image: url(images/portfolio_header.jpg);
	background-position: center;
	background-size: cover;
	text-align: center;
	color: #fff;
}

.portfolio h1{
	color: #16304f;
}

@media(max-width: 420px){
	.sub-header-portfolio{
		height: 40vh;
	}
}



/*-------------------Karriere--------------------------*/
.karriere{
	width: 60%;
	margin: auto;
	text-align: left;
	padding-top: 30px;
	padding-bottom: 30px;
}

@media(max-width: 920px){
	.karriere{
		width: 80%;
		margin: auto;
		text-align: left;
		padding-top: 30px;
		padding-bottom: 30px;
	}
}



/*-------------------Impressum--------------------------*/
.impressum-main {
	background-image: url(images/impressum-bg-hell.png);
	background-position: center;
	background-size: cover;
	background-attachment: fixed;
}

.impressum-bg {
	background: linear-gradient(298deg, rgba(89,115,139,0.75) 0%, rgba(214,214,214,0.75) 57%);
	backdrop-filter: blur(15px);
	border-bottom: 1.5px solid #fff;
	border-top: 1.5px solid #fff;
	box-shadow: 0 5px 20px #000000ab;
}

.impressum{
	width: 63%;
	margin: auto;
	text-align: left;
	padding-top: 70px;
	padding-bottom: 70px;
}

.impressum a{
	color: #000;
}

.impressum a:hover{
	color: #16304f;
}

.impressum h1{
	color: #16304f;
}

.sub-header-impressum{
	height: 50vh;
	width: 100%;
	text-align: center;
	color: #fff;
}

.sub-header h1{
	margin-top: 100px;
}

@media(max-width: 420px){
	.sub-header-impressum{
		height: 40vh;
	}
}



/*-------------------Video--------------------------*/
.video{
	width: 80%;
	margin: auto;
	text-align: center;
	padding-bottom: 70px;
	display: block;
}

.video2{
	display: none;
}

.video3{
	display: none;
}

.video4{
	display: none;
}

@media(max-width: 920px){
	.video{
		display: none;
	}

	.video2{
		width: 80%;
		margin: auto;
		text-align: center;
		padding-bottom: 70px;
		display: block;
	}
}

@media(max-width: 730px){
	.video2{
		display: none;
	}

	.video3{
		width: 80%;
		margin: auto;
		text-align: center;
		padding-bottom: 70px;
		display: block;
	}
}

@media(max-width: 480px){
	.video3{
		display: none;
	}

	.video4{
		width: 80%;
		margin: auto;
		text-align: center;
		padding-bottom: 70px;
		display: block;
	}
}



/*-------------------Werbevideos--------------------------*/
.werbevideos{
	width: 720px;
	height: 406px;
	margin: auto;
	text-align: center;
	padding-top: 70px;
}

@media(max-width: 780px){
	.werbevideos{
		width: 450px;
		height: 254px;
	}
}

@media(max-width: 500px){
	.werbevideos{
		width: 300px;
		height: 170px;
	}
}

.werbevideos16{
	width: 720px;
	height: 406px;
	margin: auto;
	text-align: center;
	padding-top: 70px;
	padding-bottom: 70px;
}

@media(max-width: 780px){
	.werbevideos16{
		width: 450px;
		height: 254px;
	}
}

@media(max-width: 500px){
	.werbevideos16{
		width: 300px;
		height: 170px;
	}
}



/*-------------------Leiste--------------------------*/
.leiste{
	min-height: 1vh;
	width: 100%;
	background-image: url(images/leiste.jpg);
	background-position: center;
	background-size: cover;
	position: relative;
}



/*-------------------Kontaktformular--------------------------*/



/*-------------------Footer--------------------------*/
.footerbg{
	background-color: #1c1c1c;	
}

.footer{
	width: 63%;
	margin: auto;
	text-align: center;
	padding-top: 50px;
	padding-bottom: 50px;
}

.adresse a {
	color: #fff;
}

.adresse a:hover {
	text-decoration: underline;
}

.logofooter{
	float: left;
	width: 50%;
	color: #fff;
	line-height: 0em;
	padding: 0;
	margin: 0;
	text-align: left;
}

.logofooter-p{
	color: #fff;
	padding: 0;
	margin: 0;
	text-align: left;
}

.adresse{
	text-align: right;	
	float: right;
	width: 50%;
	color: #fff;
}

.mail{
	color: #fff;
	text-decoration: none;
	-moz-hyphens: none;
	-o-hyphens: none;
	-webkit-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
}

.mail:hover {
	color: #b00c2d;
}

.white {
	color: #fff;
	font-size: 16px;
}

.first, .second {
	padding-right: 5%;
}

@media(max-width: 1019px){
	.logofooter{
		width: 45%;
	}
	.adresse{
		width: 55%;
	}
}
@media(max-width: 909px){
	.logofooter{
		width: 40%;
	}
	.adresse{
		width: 60%;
	}
}
@media(max-width: 833px){
	.first, .second {
		padding-right: 2%;
	}
}

@media(max-width: 800px){
	.logofooter{
		float: none;
		width: 100%;
		text-align: left;
		padding: 0;
		margin: 0;
	}
	.adresse{
		float: none;
		margin: 0;
		padding: 20px 0 0 0;
		width: 100%;
		text-align: left;
	}
	.footer{
		width: 63%;
		margin: auto;
		text-align: center;
		padding-top: 70px;
		padding-bottom: 70px;
	}
}
@media(max-width: 384px){
	.logofooter-p{
		line-height: 1.35em;
		word-spacing: 0.25em;
		padding: 0;
		margin: 0;
	}
}



/*-------------------Über uns--------------------------*/
.aboutus-main {
	background-image: url(images/aboutus-bg-hell.png);
	background-position: left;
	background-size: cover;
}

.sub-header{
	height: 50vh;
	width: 100%;
	text-align: center;
	color: #fff;
	background-image: url(images/index-bg-2-hell.png);
	background-position: center;
	background-size: cover;
}

.sub-header h1{
	margin-top: 100px;
}

@media(max-width: 420px){
	.sub-header{
		height: 40vh;
	}
}



/*-------------------Über uns Content--------------------------*/
.about-us{
	width: 63%;
	margin: auto;
	padding-bottom: 70px;
	padding-top: 70px;
}

.about-us-bg {
	background: linear-gradient(298deg, rgba(89,115,139,0.75) 0%, rgba(214,214,214,0.75) 57%);
	backdrop-filter: blur(12px);
	border-bottom: 1.5px solid #fff;
	border-top: 1.5px solid #fff;
	box-shadow: 0 5px 20px #000000ab;
}

.about-us h1{
	color: #16304f;
}

.about-col{
	flex-basis: 48%;
	padding: 30px 2px;
	text-align: justify;
	-moz-hyphens: auto;
	-o-hyphens: auto;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}



/*-------------------Kontakt--------------------------*/
.contact-us-main {
	background-image: url(images/kontakt-bg-hell.png);
	background-position: left;
	background-size: cover;
	background-attachment: fixed;
}

.location{
	width: 63%;
	margin: auto;
	padding: 80px 0;
}

.location iframe{
	width: 100%;
}

.contact-us{
	width: 63%;
	margin: auto;
}

.contact-us-bg {
	background: linear-gradient(298deg, rgba(89,115,139,0.75) 0%, rgba(214,214,214,0.75) 57%);
	backdrop-filter: blur(12px);
	padding-top: 50px;
	border-bottom: 1.5px solid #fff;
	border-top: 1.5px solid #fff;
	box-shadow: 0 5px 20px #000000ab;
}

.contact-col{
	flex-basis: 48%;	
	margin-bottom: 30px;
}

.contact-col div{
	display: flex;
	align-items: center;
	margin-bottom: 40px;
}

.contact-col div .fa{
	font-size: 28px;
	color: #16304f;
	margin: 10px;
	margin-right: 30px;
}

.contact-col div p{
	padding: 0;
}

.contact-col div h5{
	font-size: 20px;
	margin-bottom: 5px;
	color: #555;
	font-weight: 400;
}

.contact-col input, .contact-col textarea{
	width: 100%;
	padding: 15px;
	margin-bottom: 17px;
	outline: none;
	border: 1px solid #ccc;
	box-sizing: border-box;
}

.sub-header-kontakt{
	height: 50vh;
	width: 100%;
	text-align: center;
	color: #fff;
}

.portfolio h1{
	color: #16304f;
}

@media(max-width: 420px){
	.sub-header-kontakt{
		height: 40vh;
	}
	.contact-col div h5{
		font-size: 14px;
		margin-bottom: 5px;
		color: #555;
		font-weight: 400;
	}
	.contact-col div p{
		font-size: 12px;
	}
}



/*-------------------Leistungen--------------------------*/
.leistungen-main {
	background-image: url(images/aboutus-bg-hell.png);
	background-position: left;
	background-size: cover;
	background-attachment: fixed;
}

.sub-header-leistungen{
	height: 50vh;
	width: 100%;
	background-image: url(images/leistungen_header.jpg);
	background-position: center;
	background-size: cover;
	text-align: center;
	color: #fff;
}

.sub-header h1{
	margin-top: 100px;
}

.about-col ul li {
	font-size: 16px;
	padding-top: 8px;
}

@media(max-width: 420px){
	.sub-header-leistungen{
		height: 40vh;
	}
}



/*-------------------Datenschutz--------------------------*/
.datenschutz-bg {
	background: linear-gradient(298deg, rgba(89,115,139,0.75) 0%, rgba(214,214,214,0.75) 57%);
	backdrop-filter: blur(12px);
	border-bottom: 1.5px solid #fff;
	border-top: 1.5px solid #fff;
	box-shadow: 0 5px 20px #000000ab;
}

.sub-header-datenschutz{
	height: 50vh;
	width: 100%;
	background-image: url(images/agb_header.jpg);
	background-position: center;
	background-size: cover;
	text-align: center;
	color: #fff;
}

@media(max-width: 420px){
	.sub-header-datenschutz{
		height: 40vh;
	}
}


/*-------------------AGB--------------------------*/
.sub-header-agb{
	height: 50vh;
	width: 100%;
	background-image: url(images/index-bg-2-hell.png);
	background-position: center;
	background-size: cover;
	text-align: center;
	color: #fff;
}

.agb-bg {
	background: linear-gradient(298deg, rgba(89,115,139,0.75) 0%, rgba(214,214,214,0.75) 57%);
	backdrop-filter: blur(12px);
	border-bottom: 1.5px solid #fff;
	border-top: 1.5px solid #fff;
	box-shadow: 0 5px 20px #000000ab;
}

@media(max-width: 420px){
	.sub-header-agb{
		height: 40vh;
	}
}