/******************** Basic Styles for vitaservices **********************
Version:    1.0
Author:     Maria Rindermann
E-Mail:     mr@goetzinger-komplizen.de
Web:        http://www.goetzinger-komplizen.de
Copyright:  goetzinger + komplizen 2018
*********************************************************************/

/*** basic styles ***/

@font-face {
	font-family: 'uni_neuebold';
	src: url('../fonts/fontfabric_-_unineuebold-webfont.woff2') format('woff2'),
				 url('../fonts/fontfabric_-_unineuebold-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'uni_neueregular';
	src: url('../fonts/fontfabric_-_unineueregular-webfont.woff2') format('woff2'),
				url('../fonts/fontfabric_-_unineueregular-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'playfair_displayregular';
	src: url('../fonts/playfairdisplay-regular-webfont.woff2') format('woff2'),
				 url('../fonts/playfairdisplay-regular-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

html {
	height:100%;
	overflow-y:scroll;
}

body {
	font-family:'uni_neueregular',Arial,Helvetica,sans-serif;
	font-size: 15px;
	line-height: 1.3;
	color: #575756;
	font-weight: normal;
	-webkit-text-size-adjust:none;
	-moz-text-size-adjust:none;
	text-size-adjust:none;
	height:100%;
	background:transparent;
}

@media screen and (max-width:768px) {
	body {
		font-size:14px;
	}
}

@media screen and (min-width:1920px) {
	body {
		font-size:16px;
	}
}

body.overlay-enabled {
	overflow:hidden;
}

.ajax-image {
	padding: 10px 10px 25px 10px;
	background:#fff;
	margin:40px auto;
	max-width:80%;
	position:relative;
}

.ajax-image img {
	width:100%;
	height:auto;
}

@media screen and (max-width:980px) {
	.ajax {
		width:80%;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
	}
}

img {
	border:none;
	-ms-interpolation-mode:bicubic;
	width:100%;
	height:auto;
	display: block;
}

* {
	margin:0;
	padding:0;
}

h1, h2, h3, .h1, .h2, .h3 {
	font-family: 'playfair_displayregular', Arial,Helvetica,sans-serif;
	margin-bottom:1.3em;
	line-height:1em;
	color: #009ab8;
	font-weight: 700;
}

h1, .h1, h2, .h2 {
	font-size:1.5rem;
}

h1 b, .h1 b {
	display:none;
}

h1+h2, .h1+.h2, h1+.h2, .h1+h2 {
	position:relative;
	margin-top:-0.5em;
}

h2+p, .h2+p {
	clear:both;
}

h3, .h3, h4, .h4 {
	font-size:1.4rem;
	font-weight:700;
	margin-bottom: 20px;
}

@media screen and (max-width:980px) {
	h1, .h1, h2, .h2 {
		margin-bottom: 0.7rem;
	}
}

@media screen and (max-width:768px) {
	h1, .h1, h2, .h2 {
		font-size:1.4rem;
	}

	h3, .h3, h4, .h4 {
		font-size:1.2rem;
		padding-bottom:0.375em;
	}
}

@media screen and (max-width:480px) {
	h1, .h1, h2, .h2 {
		font-size:1.2rem;
	}

	h3, .h3, h4, .h4 {
		font-size:1rem;
	}
}

p+h1, p+h2, p+h3, ul+h1, ul+h2, ul+h3, h2+h3, p+.h1, p+.h2, p+.h3, ul+.h1, ul+.h2, ul+.h3, .h2+.h3 {
	margin-top:1.6em;
}

p {
	margin-bottom:1.3em;
	line-height:1.4em;
	/*hyphens:auto;
	-moz-hyphens:auto;
	-webkit-hyphens:auto;
	-ms-hyphens:auto;*/
}

table {
	border-collapse:collapse;
	margin-bottom:1.4em;
}

td, th {
	font-size:14px;
	vertical-align:top;
	padding-right:1em;
	line-height:1.4em;
}

tr {
	padding-bottom:0.5em;
}

ul, ol {
	margin-bottom:1.4em;
}

a {
	color:#2f697f;
	text-decoration:none;
}

.font-playfair{
	font-family: 'playfair_displayregular', Arial,Helvetica,sans-serif;
}

.font-uni_neueregular{
	font-family: 'uni_neueregular', Arial,Helvetica,sans-serif;
}

.font-size-4em {
	font-size:4rem;
	line-height:normal;
}

.font-size-3em {
	font-size:3rem;
	line-height:1em;
}

.font-size-25em {
	font-size:2.25rem;
}

.font-size-2em {
	font-size:2rem;
}

.font-size-15em {
	font-size:1.4rem;
}

.font-size-12em {
	font-size:1.2rem;
}

.font-size-1em {
	font-size:1rem;
}

.font-size-08em {
	font-size:0.8rem;
}

@media screen and (max-width:1200px) {
	.font-size-4em {
		font-size:3rem;
	}

	.font-size-3em {
		font-size:2.5rem;
	}

	.font-size-25em {
		font-size:2rem;
	}
}

@media screen and (max-width:980px) {
	.font-size-4em {
		font-size:2.5rem;
	}

	.font-size-3em {
		font-size:2rem;
	}
}

@media screen and (max-width:768px) {
	.font-size-3em {
		font-size:1.8rem;
		font-weight: 100;
	}

	.font-size-25em {
    font-size: 1.5rem;
    font-weight: 100;
	}
}

@media screen and (max-width:576px) {
	.font-size-4em {
		font-size:1.5rem;
	}

	.font-size-3em {
		font-size:1.5rem;
	}

	.font-size-2em {
		font-size:1.6rem;
	}

	.font-size-15em {
		font-size:1rem;
	}

	.font-size-12em {
		font-size:1rem;
	}
}

@media screen and (max-width:320px) {
	.font-size-4em, .font-size-3em {
		font-size:1.2rem;
	}

	.font-size-2em {
		font-size:1rem;
	}
}

b, .bold, strong {
	font-weight: 900;
}

.larger-font{
	font-size: 1.2em;
}

.smaler-font{
	font-size: 0.8em;
}

.uppercase{
	text-transform: uppercase;
}

.indent {
	margin-left:40px;
}

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

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

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

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

.clear{
	clear: both;
	float: none;
}

sup {
	line-height:0;
	font-size:0.7em;
	position:relative;
}

.hidden{
	display: none;
}

.font-blue{
	color: #2f697f;
}

.bg-blue{
	background: #2f697f;
}

.font-light-blue{
	color: #2f697f;
}

.bg-light-blue{
	background: rgba(91,197,242,0.8);
}

.font-red{
	color: #2f697f;
}

.bg-red{
	background: rgba(200,30,20,0.7);
}

.lime{
	color: #dce069;
}

.bg-lime{
	background: rgba(220,225,105,0.8);
}

.font-white{
	color: #fff;
}

.bg-white{
	background: #fff;
}

/*** menu styles ***/

.menu-wrapper {
	text-align:left;
	position:fixed;
	left:0;
	width:100%;
	z-index:400;
	background: #fff;
	height: 64px;
	transition: 0.4s all;
	-webkit-transition: 0.4s all;
	-moz-transition: 0.4s all;
	-ms-transition: 0.4s all;
}

.scrolled-down .menu-wrapper{
	height: 50px;
}

.menu-wrapper-inner{
	margin: auto;
	max-width: 1200px;
	width: 90%;
	position: relative;
}

@media screen and (max-width:980px) {

}

@media screen and (max-width:480px) {

}

.svg-inline--fa.fa-w-14.fa-bars{
	width: 40px;
	height: 30px;
}

@media screen and (max-width:980px) {
	.menu-button {
		display:block;
	}
}

@media screen and (max-width:980px) {
	.menu-button {
		padding: 20px 0 0 10px;
	}
}

.contact-telephone.telephone-icon, .contact-mail.mail-icon  {
	float: right;
	margin-top: 30px;
	transition:0.4s all;
	-webkit-transition:0.4s all;
	-moz-transition:0.4s all;
	-ms-transition:0.4s all;
}

.scrolled-down .contact-telephone.telephone-icon, .scrolled-down .contact-mail.mail-icon  {
	margin-top: 15px;
}

.contact-telephone.telephone-icon{
	margin: 30px 80px 0 20px;
}

.contact-telephone.telephone-icon .svg-inline--fa{
	width: 22px;
	height: 22px;
	margin-right: 5px;
	float: left;
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
}

.contact-mail.mail-icon .svg-inline--fa.fa-w-14{
	width: 22px;
	height: 22px;
	margin-right: 5px;
	float: left;
}

.contact-text{
	font-size: 1rem;
}

@media screen and (max-width: 1600px){
	.contact-telephone.telephone-icon{
		margin-right: 40px;
	}
}

@media screen and (max-width: 1200px){
	.contact-text{
		font-size: 0.9rem;
	}

	.contact-telephone.telephone-icon{
		margin: 30px 40px 0 10px;
	}

	.contact-telephone.telephone-icon .svg-inline--fa{
		margin-right: 3px;
	}

	.contact-telephone.telephone-icon .svg-inline--fa, .contact-mail.mail-icon .svg-inline--fa.fa-w-14{
		width: 20px;
		height: 20px;
	}
}

@media screen and (max-width: 576px){
	.contact-telephone.telephone-icon{
		margin-right: 20px;
	}

	.contact-text{
		display: none;
	}
}

/*** header styles ***/

.header{
	width:100%;
	position:relative;
	background: #fff;
	overflow: hidden;
}

.header-image-wrapper{
	width: calc(100vw - 80px) !important;
	margin: auto;
	height: 35vw;
	background-size: cover;
	background-position: 50% 50%;
	padding-top: 64px;
	clear: both;
	position: relative;
}

.header-image {
	width:100%;
	margin-top: 175px;
	height: 25vw;
	background-size:cover;
	background-position:50% 50%;
	background-repeat:no-repeat;
	position:relative;
	display: table;
}

.header-title{
	width: 35%;
	left:52%;
	position: absolute;
	z-index: 1;
	top: 0;
	margin-top: 144px;
	padding: 20px 40px 40px;
	line-height: 1em;
	font-weight: 100;
	max-width: 480px;
	font-size: 3.5rem;
}

.triangle-icon.header-title:after, .article-header:after{
	content: '';
	position: absolute;
	left: 40px;
	top: calc(100% + 10px);
	width: 0;
	height: 0;
	border-left: 0px solid transparent;
	border-right: 60px solid transparent;
	border-top: 60px solid rgba(200,30,20,0.7);
	clear: both;
}

.article-header.bg-light-blue:after, .article-header.bg-red:after{
	left:initial;
	right: 40px;
	border-left: 60px solid transparent;
	border-right: 0px solid transparent;
	border-top: 60px solid rgba(91,197,242,0.7);
}

.article-header.bg-red:after{
	border-top: 60px solid rgba(200,30,20,0.7);
}

.article-header.bg-lime:after{
	border-top: 60px solid rgba(220,225,105,0.7);
}

@media screen and (min-width:1600px) and (min-aspect-ratio:16/11) {
	.header-image {
		margin-top: 175px;
		height: 25vw;
	}
}

@media screen and (max-width: 1600px){
	.header-title{
		font-size: 3.5vw;
		margin-top: 8vw;
	}
}

@media screen and (max-width: 980px){
	.header-title{
		font-size: 3vw;
		padding: 10px 20px 20px;
		line-height: 1em;
		right: 10px;
		left: initial;
		margin-top: 80px;
	}

	.triangle-icon.header-title::after, .article-header::after{
		border-right: 40px solid transparent;
		border-top: 40px solid rgba(200,30,20,0.7);
		left: 20px;
	}

	.article-header.bg-light-blue::after, .article-header.bg-red::after{
		border-left: 40px solid transparent;
		border-top: 40px solid rgba(91,197,242,0.7);
	}

	.article-header.bg-red::after{
		border-top: 40px solid rgba(200,30,20,0.7);
	}

	.article-header.bg-lime:after{
		border-top: 40px solid rgba(220,225,105,0.7);
	}
}

@media screen and (max-width:980px) {
	.header-image-wrapper, body.small-header .header-image-wrapper{
		padding-bottom:0;
	}

	.header-image-wrapper{
		width: calc(100vw - 40px) !important;
	}

	.header, .news-header-wrapper{
		margin-top: 0;
	}

	.header-image {
		margin-top: 64px;
		height: 35vw;
	}
}

@media screen and (max-width: 768px){
	.header-title{
		font-size: 1.5rem;
	}
}

@media screen and (max-width: 576px){
	.header-title{
		font-size: 1.2rem;
		padding: 10px;
	}

	.triangle-icon.header-title::after, .article-header::after{
		border-right: 20px solid transparent;
		border-top: 20px solid rgba(200,30,20,0.7);
		left: 10px;
		top: calc(100% + 5px);
	}

	.article-header.bg-light-blue::after, .article-header.bg-red::after{
		border-left: 20px solid transparent;
		border-top: 20px solid rgba(91,197,242,0.7);
	}

	.article-header.bg-red::after{
		border-top: 20px solid rgba(200,30,20,0.7);
	}

	.article-header.bg-lime:after{
		border-top: 20px solid rgba(220,225,105,0.7);
	}
}

@media screen and (max-width: 320px){
	.header-title{
		font-size: 1rem;
	}
}

.header-image-inner {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

.logo-wrapper {
	position: absolute;
	margin: 10px auto;
	z-index: 101;
	width:20vw;
	max-width: 300px;
	transition:0.4s all;
	-webkit-transition:0.4s all;
	-moz-transition:0.4s all;
	-ms-transition:0.4s all;
	left: 0;
	right: 0;
}

.logo-wrapper object{
	width: 100%;
}

body.scrolled-down .logo-wrapper{
	max-width: 200px;
}

.logo-link {
	position: absolute;
	width: 100%;
	display: block;
	height: 100%;
	z-index: 5;
}

/*@media screen and (max-width:980px) {
	.logo-wrapper, body.scrolled-down .logo-wrapper{
		margin-right: 40px;
		margin-bottom: 0;
		width: 120px;
		max-width: 120px;
		margin: 10px 40px 0 auto;
	}
}
*/

@media screen and (max-width:980px) {
	.logo-wrapper {
		position: relative;
		margin-left: 40px;
		float: left;
		width: 175px;
	}
}

@media screen and (max-width:768px) {
	.logo-wrapper {
		width: 125px;
		margin-top: 20px;
	}

	body.scrolled-down .logo-wrapper{
		margin-top: 10px;
	}
}

@media screen and (max-width:576px) {
	.logo-wrapper {
		margin: 20px 0 10px 20px;
	}
}


/*** wrapper styles ***/

.wrapper {
	width:100%;
	/*text-align:left;*/
	z-index:2;
	overflow: hidden;
}

/*** hexagon styles ***/

.hexagon{
	position: absolute;
	width: 50%;
	height: 100%;
	bottom: 0px;
	z-index: -1;
}

.hexagon-red{
	right: calc(450px - 40%);
	background: transparent url(../img/hexagon-red.png) no-repeat 0 100%/100% auto;
	z-index: 0;
}

.hexagon-article.hexagon-red{
	left: calc(450px - 40%);
	background: transparent url(../img/hexagon-red.png) no-repeat 0 100%/100% auto;
	z-index: 0;
}

.hexagon-light-blue{
	left: calc(450px - 50%);
	background: transparent url(../img/hexagon-blue.png) no-repeat 0 100%/100% auto;
}

.hexagon-lime{
	right: calc(450px - 40%);
	background: transparent url(../img/hexagon-lime.png) no-repeat 0 100%/100% auto;
	z-index: 1;
	height: 90%;
}

@media screen and (max-width: 1200px){
	.hexagon-red{
		right: 0;
	}

	.hexagon-article.hexagon-red{
		left: 0;
	}

	.hexagon-light-blue{
		left: 0;
	}

	.hexagon-lime{
		right: 0;
	}
}

/***text styles ***/

.text-flexible {
	width:90%;
	max-width:1200px;
	margin:0 auto;
}

.text-flexible-inner {
	clear:both;
}

.text-flexible-inner>:last-child {
	margin-bottom:0;
}

.text-1-column .text-flexible-inner.align-center .text-flexible-bodytext{
	max-width: 720px;
	width: 90%;
	margin: auto;
}

.text-2-column .text-flexible-inner {
	columns:2 400px;
	column-gap:40px;
	-webkit-columns:2 400px;
	-webkit-column-gap:40px;
	-moz-columns:2 400px;
	-moz-column-gap:40px;
	text-align: left;
}

/*** grid elements ***/

.grid {
	margin:0 auto;
	position:relative;
}

.grid-inner {
	margin:0 auto;
	/*overflow:hidden;*/
}

/*.grid .grid {
	width:100%;
	max-width:auto;
}*/

.grid-col {
	float:left;
	position:relative;
	min-height:1px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
}

.grid-col>p:last-child {
	margin-bottom:0;
}

.swap-cols-on-mobile .grid-col {
	float:right;
}

.grid-1x1>.grid-inner>.grid-col {
	width:100%;
}

.grid-2x1>.grid-inner>.grid-col {
	width:50%;
}

.grid-3x1>.grid-inner>.grid-col {
	width:33.3%;
}

.col-margin-2-percent>.grid-inner>.grid-col {
	width:49%;
	margin-right:2%;
}

.col-margin-4-percent>.grid-inner>.grid-col {
	width:48%;
	margin-right:4%;
}

.col-margin-8-percent>.grid-inner>.grid-col {
	width:46%;
	margin-right:8%;
}

.col-ratio-60-40>.grid-inner>.grid-col-1, .col-ratio-40-60>.grid-inner>.grid-col-2 {
	width:60%;
}

.col-ratio-60-40>.grid-inner>.grid-col-2, .col-ratio-40-60>.grid-inner>.grid-col-1 {
	width:40%;
}

.col-ratio-67-33>.grid-inner>.grid-col-1, .col-ratio-33-67>.grid-inner>.grid-col-2 {
	width:67%;
}

.col-ratio-67-33>.grid-inner>.grid-col-2, .col-ratio-33-67>.grid-inner>.grid-col-1 {
	width:33%;
}

.col-ratio-75-25>.grid-inner>.grid-col-1, .col-ratio-25-75>.grid-inner>.grid-col-2 {
	width:75%;
}

.col-ratio-75-25>.grid-inner>.grid-col-2, .col-ratio-25-75>.grid-inner>.grid-col-1 {
	width:25%;
}

.col-ratio-25-25-50>.grid-inner>.grid-col-1, .col-ratio-25-25-50>.grid-inner>.grid-col-2, .col-ratio-25-50-25>.grid-inner>.grid-col-1, .col-ratio-25-50-25>.grid-inner>.grid-col-3, .col-ratio-50-25-25>.grid-inner>.grid-col-2, .col-ratio-50-25-25>.grid-inner>.grid-col-3 {
	width:25%;
}

.col-ratio-50-25-25>.grid-inner>.grid-col-1, .col-ratio-25-50-25>.grid-inner>.grid-col-1, .col-ratio-25-25-50>.grid-inner>.grid-col-3,  {
	width:50%;
}

.col-ratio-60-40.col-margin-2-percent>.grid-inner>.grid-col-1, .col-ratio-40-60.col-margin-2-percent>.grid-inner>.grid-col-2 {
	width:58.8%;
}

.col-ratio-60-40.col-margin-2-percent>.grid-inner>.grid-col-2, .col-ratio-40-60.col-margin-2-percent>.grid-inner>.grid-col-1 {
	width:39.2%;
}

.col-ratio-67-33.col-margin-2-percent>.grid-inner>.grid-col-1, .col-ratio-33-67.col-margin-2-percent>.grid-inner>.grid-col-2 {
	width:65.66%;
}

.col-ratio-67-33.col-margin-2-percent>.grid-inner>.grid-col-2, .col-ratio-33-67.col-margin-2-percent>.grid-inner>.grid-col-1 {
	width:32.34%;
}

.col-ratio-75-25.col-margin-2-percent>.grid-inner>.grid-col-1, .col-ratio-25-75.col-margin-2-percent>.grid-inner>.grid-col-2 {
	width:73.5%;
}

.col-ratio-75-25.col-margin-2-percent>.grid-inner>.grid-col-2, .col-ratio-25-75.col-margin-2-percent>.grid-inner>.grid-col-1 {
	width:24.5%;
}

.col-ratio-33-33-33.col-margin-2-percent>.grid-inner>.grid-col-1, .col-ratio-33-33-33.col-margin-2-percent>.grid-inner>.grid-col-2, .col-ratio-33-33-33.col-margin-2-percent>.grid-inner>.grid-col-3 {
	width:32%;
}

.col-ratio-25-25-50.col-margin-2-percent>.grid-inner>.grid-col-1, .col-ratio-25-25-50.col-margin-2-percent>.grid-inner>.grid-col-2, .col-ratio-25-50-25.col-margin-2-percent>.grid-inner>.grid-col-1, .col-ratio-25-50-25.col-margin-2-percent>.grid-inner>.grid-col-3, .col-ratio-50-25-25.col-margin-2-percent>.grid-inner>.grid-col-2, .col-ratio-50-25-25.col-margin-2-percent>.grid-inner>.grid-col-3 {
	width:24.5%;
	margin-right: 1%;
}

.col-ratio-50-25-25.col-margin-2-percent>.grid-inner>.grid-col-1, .col-ratio-25-50-25.col-margin-2-percent>.grid-inner>.grid-col-1, .col-ratio-25-25-50.col-margin-2-percent>.grid-inner>.grid-col-3,  {
	width:47%;
}

.col-ratio-60-40.col-margin-4-percent>.grid-inner>.grid-col-1, .col-ratio-40-60.col-margin-4-percent>.grid-inner>.grid-col-2 {
	width:57.6%;
}

.col-ratio-60-40.col-margin-4-percent>.grid-inner>.grid-col-2, .col-ratio-40-60.col-margin-4-percent>.grid-inner>.grid-col-1 {
	width:38.4%;
}

.col-ratio-67-33.col-margin-4-percent>.grid-inner>.grid-col-1, .col-ratio-33-67.col-margin-4-percent>.grid-inner>.grid-col-2 {
	width:64.32%;
}

.col-ratio-67-33.col-margin-4-percent>.grid-inner>.grid-col-2, .col-ratio-33-67.col-margin-4-percent>.grid-inner>.grid-col-1 {
	width:31.68%;
}

.col-ratio-75-25.col-margin-4-percent>.grid-inner>.grid-col-1, .col-ratio-25-75.col-margin-4-percent>.grid-inner>.grid-col-2 {
	width:72%;
}

.col-ratio-75-25.col-margin-4-percent>.grid-inner>.grid-col-2, .col-ratio-25-75.col-margin-4-percent>.grid-inner>.grid-col-1 {
	width:24%;
}

.col-ratio-33-33-33.col-margin-4-percent>.grid-inner>.grid-col-1, .col-ratio-33-33-33.col-margin-4-percent>.grid-inner>.grid-col-2, .col-ratio-33-33-33.col-margin-4-percent>.grid-inner>.grid-col-3, .col-ratio-33-33-33.col-margin-4-percent>.grid-inner>.grid-col {
	width:30.6%;
}

.col-ratio-25-25-50.col-margin-4-percent>.grid-inner>.grid-col-1, .col-ratio-25-25-50.col-margin-4-percent>.grid-inner>.grid-col-2, .col-ratio-25-50-25.col-margin-4-percent>.grid-inner>.grid-col-1, .col-ratio-25-50-25.col-margin-4-percent>.grid-inner>.grid-col-3, .col-ratio-50-25-25.col-margin-4-percent>.grid-inner>.grid-col-2, .col-ratio-50-25-25.col-margin-4-percent>.grid-inner>.grid-col-3 {
	width:22%;
}

.col-ratio-50-25-25.col-margin-4-percent>.grid-inner>.grid-col-1, .col-ratio-25-50-25.col-margin-4-percent>.grid-inner>.grid-col-1, .col-ratio-25-25-50.col-margin-4-percent>.grid-inner>.grid-col-3,  {
	width:44%;
}

.col-ratio-60-40.col-margin-8-percent>.grid-inner>.grid-col-1, .col-ratio-40-60.col-margin-8-percent>.grid-inner>.grid-col-2 {
	width:55.2%;
}

.col-ratio-60-40.col-margin-8-percent>.grid-inner>.grid-col-2, .col-ratio-40-60.col-margin-8-percent>.grid-inner>.grid-col-1 {
	width:36.8%;
}

.col-ratio-67-33.col-margin-8-percent>.grid-inner>.grid-col-1, .col-ratio-33-67.col-margin-8-percent>.grid-inner>.grid-col-2 {
	width:61.64%;
}

.col-ratio-67-33.col-margin-8-percent>.grid-inner>.grid-col-2, .col-ratio-33-67.col-margin-8-percent>.grid-inner>.grid-col-1 {
	width:30.36%;
}

.col-ratio-75-25.col-margin-8-percent>.grid-inner>.grid-col-1, .col-ratio-25-75.col-margin-8-percent>.grid-inner>.grid-col-2 {
	width:69%;
}

.col-ratio-75-25.col-margin-8-percent>.grid-inner>.grid-col-2, .col-ratio-25-75.col-margin-8-percent>.grid-inner>.grid-col-1 {
	width:23%;
}

.col-ratio-33-33-33.col-margin-8-percent>.grid-inner>.grid-col-1, .col-ratio-33-33-33.col-margin-8-percent>.grid-inner>.grid-col-2, .col-ratio-33-33-33.col-margin-8-percent>.grid-inner>.grid-col-3 {
	width:28%;
}

.col-ratio-25-25-50.col-margin-8-percent>.grid-inner>.grid-col-1, .col-ratio-25-25-50.col-margin-8-percent>.grid-inner>.grid-col-2, .col-ratio-25-50-25.col-margin-8-percent>.grid-inner>.grid-col-1, .col-ratio-25-50-25.col-margin-8-percent>.grid-inner>.grid-col-3, .col-ratio-50-25-25.col-margin-8-percent>.grid-inner>.grid-col-2, .col-ratio-50-25-25.col-margin-8-percent>.grid-inner>.grid-col-3 {
	width:19%;
}

.col-ratio-50-25-25.col-margin-8-percent>.grid-inner>.grid-col-1, .col-ratio-25-50-25.col-margin-8-percent>.grid-inner>.grid-col-1, .col-ratio-25-25-50.col-margin-8-percent>.grid-inner>.grid-col-3,  {
	width:38%;
}

.grid>.grid-inner>.grid-col-last, .col-ratio-33-33-33.col-margin-4-percent>.grid-inner>.grid-col-3, .col-ratio-33-33-33.col-margin-4-percent>.grid-inner>.grid-col:last-child {
	margin-right:0;
	margin-bottom:0;
}

@media screen and (max-width:1200px) {
		.col-ratio-75-25>.grid-inner>.grid-col-1, .col-ratio-25-75>.grid-inner>.grid-col-2 {
		width:67%;
	}

	.col-ratio-75-25>.grid-inner>.grid-col-2, .col-ratio-25-75>.grid-inner>.grid-col-1 {
		width:33%;
	}

	.col-ratio-75-25.col-margin-2-percent>.grid-inner>.grid-col-1, .col-ratio-25-75.col-margin-2-percent>.grid-inner>.grid-col-2 {
		width:65.66%;
	}

	.col-ratio-75-25.col-margin-2-percent>.grid-inner>.grid-col-2, .col-ratio-25-75.col-margin-2-percent>.grid-inner>.grid-col-1 {
		width:24.5%;
	}

	.col-ratio-75-25.col-margin-4-percent>.grid-inner>.grid-col-1, .col-ratio-25-75.col-margin-4-percent>.grid-inner>.grid-col-2 {
		width:64.32%;
	}

	.col-ratio-75-25.col-margin-4-percent>.grid-inner>.grid-col-2, .col-ratio-25-75.col-margin-4-percent>.grid-inner>.grid-col-1 {
		width:31.68%;
	}

	.col-ratio-75-25.col-margin-8-percent>.grid-inner>.grid-col-1, .col-ratio-25-75.col-margin-8-percent>.grid-inner>.grid-col-2 {
		width:61.64%;
	}

	.col-ratio-75-25.col-margin-8-percent>.grid-inner>.grid-col-2, .col-ratio-25-75.col-margin-8-percent>.grid-inner>.grid-col-1 {
		width:30.36%;
	}
}

@media screen and (max-width:980px) {
	.grid>.grid-inner>.grid-col {
		width:100%;
		padding:0;
		margin: auto;
	}

	.overlay-page.grid>.grid-inner>.grid-col {
		width:90% !important;
	}

	.col-ratio-33-33-33.col-margin-4-percent>.grid-inner>.grid-col-1, .col-ratio-33-33-33.col-margin-4-percent>.grid-inner>.grid-col-2, .col-ratio-33-33-33.col-margin-4-percent>.grid-inner>.grid-col-3, .col-ratio-33-33-33.col-margin-4-percent>.grid-inner>.grid-col, .col-ratio-60-40.col-margin-4-percent > .grid-inner > .grid-col-1, .col-ratio-40-60.col-margin-4-percent > .grid-inner > .grid-col-2, .col-ratio-60-40.col-margin-4-percent > .grid-inner > .grid-col-2, .col-ratio-40-60.col-margin-4-percent > .grid-inner > .grid-col-1 {
		width:100%;
	}

	.grid>.grid-inner>.grid-col {
		margin-bottom:40px;
	}

	.one-col-empty>.grid-inner>.grid-col {
		margin-bottom:0;
	}

	.grid>.grid-inner>.grid-col-last {
		margin-bottom:0;
	}

	.swap-cols-on-mobile>.grid-inner>.grid-col {
		margin-bottom:40px;
	}

	.swap-cols-on-mobile>.grid-inner>.grid-col-first {
		margin-bottom:0;
	}
}

@media screen and (max-width:479px) {
	.grid>.grid-inner>.grid-col {
		margin-bottom:20px;
	}

	.swap-cols-on-mobile>.grid-inner>.grid-col {
		margin-bottom:20px;
	}

	/*.one-col-empty>.grid-inner>.grid-col {
		margin-bottom:0;
	}

	.grid>.grid-inner>.grid-col-last {
		margin-bottom:0;
	}

	.swap-cols-on-mobile>.grid-inner>.grid-col-first {
		margin-bottom:0;
	}*/
}

.width-90-percent>.grid-inner {
	width:90%;
}

.width-50-percent>.grid-inner {
	width:50%;
}

@media screen and (max-width: 980px){
	.width-90-percent>.grid-inner {
		width: calc(100vw - 80px);
	}
}

.max-width-1600px>.grid-inner {
	max-width:1600px;
}

.max-width-1200px>.grid-inner {
	max-width:1200px;
}

.max-width-980px>.grid-inner {
	max-width:960px;
}

.max-width-768px>.grid-inner {
	max-width:720px;
}

.padding-top-20px {
	padding-top:20px;
}

.padding-bottom-20px {
	padding-bottom:20px;
}

.padding-top-40px {
	padding-top:40px;
}

.padding-bottom-40px {
	padding-bottom:40px;
}

.padding-top-80px {
	padding-top:80px;
}

.padding-bottom-80px {
	padding-bottom:80px;
}

@media screen and (max-width:768px) {
	.padding-top-80px {
		padding-top:40px;
	}

	.padding-bottom-80px {
		padding-bottom:40px;
	}

	.padding-top-40px {
		padding-top:20px;
	}

	.padding-bottom-40px {
		padding-bottom:20px;
	}
}

/*** article styles ***/

.article-bodytext-left .grid-col-1{
	padding-left: 10%;
}

.article-header{
	position: absolute;
	width: calc(50% - 80px);
	padding: 20px 40px;
	top: 0;
	margin-top: 40px;
	z-index: 10;
}

article.grid-inner figure{
	width: 70%;
}

.article-bodytext-left article.grid-inner figure{
	width: 80%;
}

.col-ratio-60-40 article.grid-inner figure{
	float: right;
}

.col-ratio-40-60 article.grid-inner figure{
	float: left;
}

.col-ratio-60-40 .article-header{
	left: -20px;
}

.article-bodytext-left .article-header{
	right: -100px;
	width: calc(60% - 20px);
}

.article-bodytext-right .bodytext{
	width: 80%;
}

.article-bodytext-left .bodytext{
	width: 100%;
}

.divider{
	width: 40px;
	height: 2px;
	margin-bottom: 20px
}

@media screen and (max-width: 1200px){
	.article-bodytext-left .article-header{
		width: 65%;
	}
}

@media screen and (max-width: 980px) {
	.article-header{
		width: calc(40% - 40px);
		padding: 10px 20px;
		margin-top: 20px;
	}

	.col-ratio-60-40 .article-header{
		left: 0;
	}

	.article-bodytext-left .article-header{
		right: 0;
	}

	.col-ratio-60-40 article.grid-inner figure, .col-ratio-40-60 article.grid-inner figure, .article-bodytext-left article.grid-inner figure{
		overflow: hidden;
		height: 0;
		padding-bottom: 30vw;
		position: relative;
		z-index: -1;
	}

	.article-bodytext-left article.grid-inner figure img{
		margin-top: -10vw;
	}

	.article-bodytext-right .bodytext{
		width: 100%;
	}

	.article-bodytext-left .article-header{
		width: calc(40% - 40px);
	}
}

@media screen and (max-width: 576px){
	.article-header, .article-bodytext-left .article-header{
		width: calc(60% - 20px);
		padding: 10px;
		margin-top: 10px;
	}
}

/*** relation styles ***/

.grid-relation{
	width: calc(100vw - 80px);
	margin: auto;
}

.grid-relation .grid-relation-rect{
	max-width: 80px;
	height: 100%;
	float: left;
	width: 90% !important;
	display: block;
	margin-right: 20px;
}

.grid-relation .grid-relation-rect:last-of-type{
	margin-right: 0 !important;
}

.grid-relation .grid-col-2{
	width: calc(100% - 200px) !important;
	margin-right: 20px;
}

.grid-relation-content-inner{
	height: 30vw;
	padding-top: 17.5vw;
	background-size: cover;
}

.grid-relation-content-inner h3{
	font-size: 4.5rem;
	font-weight: 100;
	margin-bottom: 40px;
}

.grid-relation-content-inner .h3{
	font-size: 2.5rem;
	font-weight: 100;
	margin-bottom: 20px;
}

.grid-relation-content-inner .bodytext{
	width: 55%;
	margin: auto;
}

@media screen and (max-width:1200px){
	.grid-relation-content-inner h3{
		font-size: 4.5vw;
	}

	.grid-relation-content-inner .h3{
		font-size: 2.5vw;
	}

	.grid-relation-content-inner .bodytext{
		width: 80%;
	}
}

@media screen and (max-width:980px){
	.grid-relation{
		width: calc(100vw - 40px);
	}

	.grid-relation .grid-relation-rect{
		max-width: 40px;
		margin-right: 5px !important;
	}

	.grid-relation .grid-col-2 {
		width: calc(100% - 90px) !important;
		margin-right: 5px !important;
	}

	.grid-relation-content-inner .bodytext{
		width: 90%;
	}

	.grid-relation-content-inner h3{
		font-size: 4vw;
		margin-bottom: 20px;
		padding-bottom: 0;
	}
}

@media screen and (max-width:768px){
	.grid-relation-content-inner h3{
		font-size:1.5rem;
	}

	.grid-relation-content-inner .h3{
		font-size: 1.2rem;
	}

	.grid-relation .grid-relation-rect{
		display: none;
	}

	.grid-relation .grid-col-2{
		width: 100% !important;
		margin: 0 !important;
	}

	.grid-relation-content-inner {
		height: auto;
		padding: 40px 0;
		background: #2f697f;
	}
}

/*** footer styles ***/

footer{
	width: calc(100vw - 80px) !important;
	margin: auto;
	padding: 15px 0 10px;
	margin-bottom: 10px;
	font-size: 14px;
}

.footer-inner{
	margin: auto;
	width: 90%;
	max-width: 980px;
}

.logo-footer, .footer-content{
	float: left;
}

.logo-footer{
	width:15%;
	margin-right: 2%;
}

.logo-footer object{
	max-width: 150px;
}

.footer-content{
	width: 82%;
}

@media screen and (max-width:1200px){
	.logo-footer {
		width: 10%;
		margin-right: 2%;
	}

	.footer-content{
		width: 87%;
	}
}

@media screen and (max-width:980px){
		footer{
			width: calc(100vw - 40px) !important;
		}

	.logo-footer {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.footer-content{
		width: 100%;
	}

	.logo-footer object{
		max-width: 100px;
		margin: auto;
		display: block;
	}
}

.show-impressum, .show-datenschutz{
	cursor: pointer;
}

/*** overlay ***/

.overlay {
	position:fixed;
	top:0;
	left:0;
	bottom:0;
	right:0;
	width:100%;
	height:100%;
	z-index:1000;
	display:none;
	opacity:0;
	overflow-y:scroll;
	transition:1.4s opacity;
	-webkit-transition:0.4s opacity;
	-moz-transition:0.4s opacity;
	-ms-transition:0.4s opacity;
}

body.overlay-enabled .overlay {
	display:block;
}

.overlay.visible {
	opacity:1;
}

.overlay-bg {
	position:fixed;
	top:0;
	left:0;
	bottom:0;
	right:0;
	background:rgba(0,0,0,0.6);
	width:100%;
	height:100%;
	z-index:1000;
}

.overlay-box {
	position:relative;
	background:#fff;
	width:calc(90%);
	max-width:800px;
	z-index:2000;
	text-align:left;
	margin:0 auto;
	overflow: hidden;
}

.overlay-content {
	padding:25px;
	position:relative;
}

.overlay-page .article-header{
	width: calc(80% - 20px);
	padding: 10px 20px;
}

.overlay-page .article-header.bg-light-blue::after {
	right: 20px;
	border-left: 40px solid transparent;
	border-top: 40px solid rgba(91,197,242,0.8);
}

.overlay-page .hexagon-light-blue{
	left: 0;
}

@media screen and (max-width:980px) {
	.overlay-page .article-header{
		position: relative;
	}
}

@media screen and (max-width:480px) {
	.overlay_box {
		padding:15px;
	}

	.overlay_content {
		padding:15px;
	}
}

.overlay-close {
	position:absolute;
	top:5px;
	right:5px;
	width:40px;
	height:40px;
	z-index:10;
	cursor:pointer;
}

.overlay-close .svg-inline--fa.fa-w-16{
	font-size: 1.5rem;
	height: 30px;
	color: rgba(91,197,242,0.8);
}

/*** scroll to top styles ***/

#scroll-to-top{
	bottom: 25px;
	height: 35x;
	position: fixed;
	right: -50px;
	transition: all 0.4s ease 0s;
	-webkit-transition: all 0.4s ease 0s;
	width: 35px;
	z-index: 1000;
}

#scroll-to-top.visible {
	right: 20px;
}

#scroll-to-top a {
	display: block;
	height: 100%;
	width: 100%;
}

#scroll-to-top .svg-inline--fa.fa-w-16{
	width: 35px;
	height: 35px;
	background:rgba(91,197,242,0.8);
	color: #fff;
	border-radius: 50%;
}

@media screen and (max-width: 980px) {
	#scroll-to-top.visible {
		right: 10px;
	}
}

@media screen and (max-width: 768px) {
	#scroll-to-top .svg-inline--fa.fa-w-16{
		width: 25px;
		height: 25px;
	}
}