body {
	font-family: "Helvetica Neue", Arial, Verdana, sans-serif;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	color: #103579;

}

h1 {
	font-size: 10vw;
}
h2, p {
	line-height: 160%;
}

h2 {
	font-size: 28px;
}

p {
	font-size: 18px;
	margin-top: 0.5em;
}
.fullsizeblock { 
	height: 100vh;
	width: 100vw;
	background-size: cover;
	
/* 	Center child element vertically nicely with flexbox */
	display: flex;
	-webkit-box-align: center;
	-webkit-box-pack: center;
	justify-content: center;
	flex-direction: column;
}

.videoheader_fullscreen {
	height: 100vh;
	width: 100vw;
	position: relative;
	overflow: hidden;
}

#connectingAnim {
	position: absolute;
	top: 50%;
	left: 50%;
	min-height: 100vh;
	min-width: 100vw;
	width: 100%;
	height: 100%;
	object-fit: cover;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -999;

}

.header {
	background-color: #FFFFFF;
	background-color: rgba(255,255,255,0.5);
	
	
	height: 60px;
	
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
	
	-webkit-backdrop-filter: blur(20px);
	backdrop-filter: blur(20px);
	
}

.navigationBar {
	display: flex;
	align-items: stretch;
	margin: 15px;
}

.mobileBurgerBttn {
	display: none;
}

.footer {
	display: flex;
	align-items: stretch;
	margin: 15px 0 0 0;
	padding: 30px 15px;
	background-color: #e6e6e6;
	font-size: 90%;
	text-decoration: none;
	font-weight: bold;
	line-height: 160%;
}

.footer a {
	text-decoration: none;
	color: #103579;
}


.footer-widget-2,
.footer-widget-3,
.footer-widget-4 {
	flex: 1;
	
}

.theLogo, .socialBar {
	flex: 0 0 230px;
}

.theLogo img {
	height: auto;
	width: 200px;
}

.theNavigation {
	display: inline-block;
	flex-grow: 1;
	text-align: center;
	margin-top: 5px
}
.theNavigation a,
.socialBar a {
	text-transform: uppercase;
	font-weight: bold;
	font-size: 16px;
	text-decoration: none;
	
	color: #103579;


	padding: 8px 18px;
	margin-top: 5px;

}

.theNavigation a:hover,
.socialBar a:hover {
	color: #789AC1;
}

.socialBar {
	text-align: right;
	margin-top: 5px;
}

.socialBar a {
	padding: 8px;
}

.textblockCentered,
.textblockCenteredDarkBg {
	text-align: center;
	width: 55%;
	margin: auto;
}

.textblockCenteredDarkBg {
	text-shadow: 0 0 5px black;

}

.wienerLinienTeaserHero {
	background-image: url(img/WL-Behind-the-Scenes-Video-Thumb-1000x500.jpg);
	color: #FFF;
}

.readMoreButton, .readMoreButtonWhite {
	color: #103579;
	border: 2px solid #103579;
	padding: 12px;
	text-decoration: none;
	text-transform: uppercase;
	text-align: center;
	margin: auto;
	display: inline-block;
}

.readMoreButtonWhite {
	color: #FFF;
	border-color: #FFF;
}

.twoColumn {
	clear: both;
	
/* 	new */
	display: flex;
	flex-direction: row;
	-webkit-align-content: stretch;
    align-content: stretch;
}

.twoColumnRightWinged {
	flex-direction: row-reverse;
}

.twoColumn .imgLeft {
/* 	float: left; */
}

.twoColumn .imgRight {
/* 	float: right; */
}


.twoColumn .imgLeft,
.twoColumn .imgRight,
.twoColumn .infoLeft,
.twoColumn .infoRight {
	width: 50%;
/* 	height: 80vh; */
	min-height: 80vh;
	background-size: cover;
	background-position: center center;
	
	/* 	Center child element vertically nicely with flexbox */
	display: flex;
	-webkit-box-align: center;
	-webkit-box-pack: center;
	justify-content: center;
	flex-direction: column;	

}

.twoColumn .infoLeft,
.twoColumn .infoRight {
	box-sizing: border-box;
	padding-left:  7%;
	padding-right: 7%;
	padding-bottom: 3em;
	padding-top: 2em;
}

.scrollDownArrowInHeroContainer {
	
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding-bottom: 0.5em;
	opacity: 0;
	animation: glowing 5s linear infinite;
	animation-delay: 17s;
}

.scrollDownArrowInHeroText {
	text-align: center;
	color: grey;
	font-size: 12px;
	padding-bottom: 1em;
}

.scrollDownArrowInHeroIcon {
	background-image: url(img/brand-arrows-point-down.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: contain;
/* 	width: 100px; */
	height: 30px;
}

/* ! Animations */
/* Glowing Animation for scroll-down-to-learn-more-arrows */
@keyframes glowing {
	0%   {opacity: 0;   }
	40%  {opacity: 0.9; }
	60%. {opacity: 0.9; }
	100% {opacity: 0;   }
}

.headline_subheadline h1 {
	margin-bottom: 0;
}

.headline_subheadline h2 {
	margin-top: 0;
}

.contactblock {
	font-size: 24px;
	line-height: 160%;
}

.about_jobdescription {
	margin-top: -0.75em;
	font-weight: normal;
	font-size: 28px;
}

.about_page_header {
/*
	-webkit-text-fill-color: transparent;
	-webkit-background-clip: text;
	background-image: url(img/gettyimages-857441852-2048x2048.jpg);
*/
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center center;
}

.about_page_header h1,
.about_page_header h2 {
/* 	-webkit-background-clip: text; */

}

/* Mobile Nav Adaption */
@media screen and (max-width: 990px) {

	.header {
		height: 55px;
/* 		min-height: 60px; */
		overflow: hidden;
	}
	.navigationBar {
		display: block;
	}
	
	.theLogo {
		text-align: center;
	}
	
	.theNavigation, .socialBar {
		text-align: center;
		display: block;
	}
	
	.theNavigation a {
		display: block;
	}
	
	.mobileBurgerBttn {
		display: inline-block;
		position: absolute;
		top: 5px;
		right: 15px;
		width: 20px;
		height: 40px;
		background-image: url(img/icon-waves-burgerMenuBttn.png);
		background-position: center center;
		background-size: contain;
		background-repeat: no-repeat;
	}
	
	
	.footer {
		display: block;
		text-align: center;
	}
}


/* Login / Forms */
.topsecret_password,
.newsletterBanner input[type=text],
.newsletterBanner input[type=email] {
	border: none;
	background-color: rgba(255,255,255,0.6);
	font-size: 20px;
	color: black;
	border-radius: 10px;
	padding: 12px;
	box-shadow: 0 0 10px rgb(150,150,150);
	text-align: center;
	min-width: 280px;
	box-sizing: border-box;
}

.newsletterBanner input[type=text],
.newsletterBanner input[type=email] {
	box-shadow: none;
	width: 200px;
	min-width: 200px;
	font-size: 16px;
	background-color: rgba(200, 200, 200, 0.8);
	height: 46px;
	margin: 3px;
}

.newsletterBanner input[type=text]::placeholder,
.newsletterBanner input[type=email]::placeholder {
	color: white;
}

.topsecret_loginBttn,
.newsletterBanner input[type=submit] {
/* 	color: #103579; */
	border: 2px solid #103579;
	padding: 12px;
	text-decoration: none;
	text-transform: uppercase;
	text-align: center;
	margin: auto;
	display: inline-block;
	font-weight: bold;
/* 	width: 100px; */
	margin-top: 1em;
	background-color: #103579;
	border-radius: 10px;
	color: white;
	width: 100px;
	min-width: 280px;
	box-sizing: border-box;
	-webkit-appearance: none;
}

.newsletterBanner input[type=submit] {
	font-size: 16px;
	width: 200px;
	min-width: 200px;
	height: 46px;
}

.heroStandardHeadlineH1 {
	font-size: 40px;
	line-height: 130%;
	padding-top: 60px; /* Abstand */
}

.heroStandardHeadlineH1Topline {
	text-transform: uppercase;
	font-size: 25px;
/* 	line-height: 100%; */
/* 	font-weight: normal; */
}

.heroLinks {
	color: white;
	text-decoration: none;
	margin: 1em;
	margin-top: 0;
	font-size: 20px;
	display: inline-block;
}

.heroLinks:hover {
	text-decoration: underline;
}

.heroLinks::after {
	content: "))) ";
	font-size: 65%;
	margin-left: 0.5em;
	vertical-align: top;
	position: relative;
	top: 0.4em;
	text-decoration: none !important;
	display: inline-block;
}



.heroLinks::after:hover {
	text-decoration: none !important;
}

.textblockCentered h2 {
	margin-bottom: 0;
	margin-top: 1.5em;
}


/* ! Video-Player-Stuff */
.twoColumnVideo video {
	width: 100%;
	height: auto;
	
}

.twoColumnVideo {
	flex-direction: row-reverse;
}

.twoColumnVideo .imgRight {
	width: 65%;
}
.twoColumnVideo .infoLeft {
	width: 35%;
}

.customerQuote {
	font-size: 34px;
	font-weight: lighter;
	font-style: italic;
	margin-bottom: 0;
}

.galleryblock {
	height: auto;
	display: block;
}

.galleryblock::after {
	content: "";
	clear: both;
	height: 0;
	display: block;
}

.galleryblock h2 {
	margin-bottom: 1.5em;
}

.galleryblock img {
	width: 33%;
	width: calc(100vw / 3);
	height: auto;
	margin: 0;
	float: left;
	
}

.awesomeIconBulletList {
	margin-bottom: 2em;
}
.awesomeIconBullet {
	display: inline-block;
	margin: 1.8em;
}
.awesomeIconBullet .awesomeIcon {
	font-size: 50px;
	margin: 15px;
	display: inline-block;
}

.awesomeIconBullet .awesomeText {
	font-size: 18px;
}

.awesomeIconHuge {
	font-size: 100px;
	display: block;
	text-align: center;
	
}

.newsletterBanner {
	background-image: url(img/water-103817_1920.jpg);
	text-align: center;
	color: white;
	padding-top: 1em;
	padding-bottom: 3em;
	vertical-align: middle;
	margin-top: 3em;
	text-shadow: 0 0 5px black;
}

.newsletterBanner h2 {
	margin-bottom: 0;
}


video:-webkit-full-screen {
	width: auto !important;
	height: auto !important;
	max-height: 100% !important;
	max-width: 100% !important;
}

video:-moz-full-screen {
	width: auto !important;
	height: auto !important;
	max-height: 100% !important;
	max-width: 100% !important;
}

video:-moz-fullscreen {
	width: auto !important;
	height: auto !important;
	max-height: 100% !important;
	max-width: 100% !important;
}

video:fullscreen {
	width: auto !important;
	height: auto !important;
	max-height: 100% !important;
	max-width: 100% !important;
}

.customerLogos {
	width: 80%;
}

.customerLogos img {
	margin: 1em;
}

.awardsContainer {
	vertical-align: top;
	margin-top: 3em;	
}

.awardItem {
	width: 250px;
	width: calc(25% - 2.3em);
	margin: 1em;
	display: inline-block;
	vertical-align: top;
}

.awardLogo {
	width: 200px;
	height: 113px;
	object-fit: contain;
	
}


/* Mobile  */
@media screen and (max-width: 992px) {
	.twoColumn {
		display: block;
	}
	
	.twoColumn .imgLeft,
	.twoColumn .imgRight,
	.twoColumn .infoLeft,
	.twoColumn .infoRight,
	.twoColumnVideo .imgRight,
	.twoColumnVideo .infoLeft {
		width: 100%;
	}
	
	.twoColumn .imgLeft,
	.twoColumn .imgRight {
		height: 400px;
		height: calc(100vw / 16 * 9);
		min-height: auto;
	}
	
	.twoColumn .infoLeft,
	.twoColumn .infoRight {
		justify-content: flex-start;
		min-height: auto;
		padding-bottom: 5em;
		
	}
	
	.galleryblock img {
/* 		on mobile gallery-image-wall will have 2 columns instead of 3 */
		width: 50%;
	}
	
	.awardItem {
		width: 40%;
		width: calc(50% - 2.3em);
	}
	
	.textblockCentered,
	.textblockCenteredDarkBg {
		width: 100% !important;
		padding-left: 5%;
		padding-right: 5%;
		box-sizing: border-box;
	}
	
	.awesomeIconBullet {
		margin-left: 1em;
		margin-right: 1em;
	}
}

@media screen and (max-width: 630px) {
	.newsletterBanner input[type=text],
	.newsletterBanner input[type=email],
	.newsletterBanner input[type=submit] {
		width: 95%;
	}
	
	.awardItem {
		width: 90%;
	}
	
	h1 {
		font-size: 20vw;
	}
}