/* roboto-100 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: url('../fonts/roboto-v32-latin-100.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/roboto-v32-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/roboto-v32-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/roboto-v32-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/roboto-v32-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* Basic links & types
 * * * * * * * * * * * */
html{font-size: 16px;}
body {
   	font: 1rem "acumin-pro", sans-serif;
   	background:#fff;
	color: #868686;
}
a {color:inherit; text-decoration: none;}
a:hover {color:inherit;text-decoration: underline;}
h1 {font-size: 3.6em;}
h2 {font-size: 3.125em;}
h3 {font-size: 1.875em;}
h4 {font-size: 1.1em;}
h5 {font-size: 0.93em;}
h6 {font-size: 0.75em;}
h1, h2, h3, h4, h5, h6 {
	margin: 0 0 0.8rem;
	color:inherit;
}
hr {color:#20b4e8;background-color:#20b4e8;	height: 1px;border-width:0px;}
img{max-width: 100%;max-height: 100%;width:auto; height: auto;}
figure{margin: 0;padding: 0;}
p{margin: 0 0 0.8rem;}

/* Common classes
 * * * * * * * * */
.text-center{text-align: center;}
.text-right{text-align: right;}
.text-left{text-align: left;}
.text-justify{text-align: justify;}
.hidden{display: none;}
.hide-text{text-indent: 100%;white-space: nowrap;overflow: hidden;}

.weight-extratiny{font-weight: 100;}
.weight-tiny{font-weight: 300;}
.weight-normal{font-weight: normal;}
.weight-semibold{font-weight: 500;}
.weight-bold{font-weight: 700;}


.text-upper{text-transform: uppercase;}
.text-underline{text-decoration: underline;}
.text-container{line-height: 1.6;}
.text-ellipsis{white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
.list-nostyle{list-style: none; margin: 0; padding: 0;}

.center-element {text-align:center; height: 100%;}
.center-element:before {content: ''; display: inline-block; width: 1px; height: 100%; vertical-align: middle;}
.center-element>.centered { display: inline-block; vertical-align: middle; width: 97%;}

.block-absolute{position:absolute;top:0;right:0;bottom:0;left:0;}
.float-right{float:right;}
.float-left{float: left;}
/* Layout
 * * * * * */

#main{}
#hat{}
#topmenu{}
#mainmenu{
	position: relative;
}
#topmodule{}
#basecontent{}
#pathway{overflow:hidden;}
#content{}


#leftblock{}
#leftblock h3{}
#leftblock ul{
	padding-left:10px;
	list-style:none;
}
#bottom{
	position: relative;
	padding: 4rem 0;
	line-height: 1.3;
}
#bottom>.row{
	position: relative;
}
#footer{}


/* Styling
 * * * * */
#logo{
	position: relative;
	margin: 0;
	width: 100%;
	max-width: 23.570rem;
	padding: 3.0rem 0;
	float: left;
	line-height: 1;
	z-index: 30;
}

.offset-bottom{
	margin-bottom: 1.8rem;
}
.offset-bottom2{
	margin-bottom: 3.8rem;
}
.bg-blue{
	background-color: #20b4e8;
	color: #fff;
}
.bg-grey{
	background-color: #d9dada;
	color: #fff;
}
.color-blue{
	color: #20b4e8;
}
.page-heading-wrapper{
	background-color: #868686;
	color: #fff;
}
.page-heading{
	position: relative;
	text-align: center;
	margin: 0;
	padding: 3rem 0;

	font-size: 2.6875em;
}
.page-heading>.subtitle{
	font-weight: 200;
	font-size: 0.465em;
}
.page-heading>.back-to{
	position: absolute;
	right: 3%;
	top: 38%;
	font-weight: 600;
	font-size: 0.395em;
	padding: 1rem 45px 1rem 0;
	background: url(../img/icon-overview.png) no-repeat right center;
}

/* menu */
ul.menu,
ul.menu ul{
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
}

ul.menu a{
	display: block;
	position: relative;
	padding: 6px 15px;
	text-decoration: none;
}
ul.menu a:hover,
ul.menu li.active>a{

}

#mainmenu ul.menu>li{
	position: relative;
	float: left;
	width: 11%;
	text-align: center;
}
#mainmenu ul.menu>li>a{
	font-size: 1.25em;
	color: #20b5ea;
	font-weight: 600;
	padding: 4.4rem 0;
	transform: skewX(-12deg);
}
#mainmenu ul.menu>li>a>.txt{
	display: inline-block;
	transform: skewX(12deg);
	position: relative;
	z-index: 3;
}
#mainmenu ul.menu>li>a>.bg{
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: #20b5ea;

	transition: opacity 0.4s;
	opacity: 0;
	z-index: 1;
}
#mainmenu ul.menu>li>a:hover,
#mainmenu ul.menu>li.active>a{
	color: #fff;
}
#mainmenu ul.menu>li>a:hover>.bg,
#mainmenu ul.menu>li.active>a>.bg{
	opacity: 1;
	/*bottom: 0;*/
}


/*sub menu items */
#mainmenu .resp ul.menu div.sub-wrap{
    position: absolute;
    overflow: hidden;
    margin: 0 0 0 0;
    background: #fff;

    box-shadow: 0 5px 8px -4px #000;
    z-index: 3;
}
#mainmenu .resp ul.menu ul{
    position: relative;
    padding: 0px 0 0 0;
    margin: 0 0 0 0;
    max-height: 0;

    z-index: 10;
    white-space:nowrap;
	-webkit-transition: max-height 0.1s;
	transition: max-height 0.1s;
}
#mainmenu .resp ul.menu ul li{
    padding: 0;
    border-top: 1px solid #e2e2e2;
}

#mainmenu .resp ul.menu>li li a{
	font-size: 90%;
	padding: 6px;
}
#mainmenu .resp ul.menu ul li a:hover{}
#mainmenu .resp ul.menu li:hover>div>ul{
	-webkit-transition-duration: 0.8s;
	transition-duration: 0.8s;
	max-height: 400px;
}

/* resp menu */
#mainmenu .resp label,
#mainmenu .resp input{display: none;position: relative;}

#mainmenu .resp label span{
	display: block;
	width: 35px;
	line-height: 5px;
	border-bottom: 4px solid #20b5ea;
	cursor: pointer;
}
#mainmenu .resp a:hover + label span,
#mainmenu .resp .active>label span{
	border-bottom: 4px solid #fff;
}
@media only screen and (max-width: 1024px) {

	#mainmenu{
		border:none;
		float: none;
	}



	#mainmenu .resp>label{
		display: block;
		float: right;
		padding: 25px 5px 20px 0;
	}
	#mainmenu .resp>label:before{
		display: block;
		position: absolute;
		content: 'Menü';
		right: 123%;
		font-size: 1.3em;
	}
	#mainmenu ul.menu{
		max-height: 0;
		overflow: hidden;
		clear: both;
		-webkit-transition: max-height 0.1s;
        transition: max-height 0.1s;
	}
	#mainmenu ul.menu>li{
		float: none;
		border-left: none;
		border-top: 1px solid #e2e2e2;
		text-align: center;
		width: 100%;
	}
	#mainmenu ul.menu>li>a{
		padding: 1rem 0 !important;
		transform: none;
	}
	#mainmenu ul.menu>li>a>.txt{
		transform: none;
	}

	#mainmenu .resp input:checked + ul.menu{
		-webkit-transition-duration: 0.6s;
		transition-duration: 0.6s;
		max-height: 1000px;
	}
/*sub menu*/
	#mainmenu .resp ul.menu label{
		display: block;
		position: absolute;
		top: 12px;
		right: 10px;
	}
	#mainmenu .resp ul.menu div.sub-wrap{
		position: relative;
		box-shadow: 0 0 8px -3px #000 inset;
		background: #E5E5E5;
	}
	#mainmenu .resp ul.menu ul li{
	    border-top: 1px solid #fff;
	}
	#mainmenu .resp ul.menu li:hover>div>ul{max-height: 0;}
	#mainmenu .resp ul.menu input:checked + div>ul{
		-webkit-transition-duration: 0.6s;
		transition-duration: 0.6s;
		max-height: 400px;
	}

}

.menu.footer{
	float: right;
}
.menu.footer>li{
	float: left;
}
.menu.footer a:hover>.txt, .menu.footer li.active>a>.txt{
	border-bottom: 1px dashed;
}
/* */

/* custom modules */
.mod-languages{
	position: absolute;
	bottom: 1rem;
	right: 2%;
	z-index: 300;
}
.mod-languages li{
	display: inline-block;
	font-weight: 600;
	color: #dbdcdc;
	margin: 0 4px;
}
.mod-languages li.lang-active,
.mod-languages li:hover{
	color: #20b5ea;
}
#bottom .module-box>.title{
	font-size: 3.125em;
	font-weight: 200;
}
#bottom .module-box>.content{
	font-size: 1.375em;
}
.module-contact-bottom .icons img{
	vertical-align: middle;
	margin: 1.3rem -4% 3% 0;
}
.module-socialmedia .icons img{
	vertical-align: middle;
	margin: 1.3rem -6% 3% 0;
}
.module-copyright{
	font-size: 0.875em;
}
.module-copyright p{
	padding: 0.4rem 0;
}

.module-homeabout .heading{
	font-size: 2.6em;
	margin-bottom: 2rem;
	font-weight: 300;
}
.module-homeabout .button{
	margin-top: 2.125rem;
}
.module-homeabout .content{
	background-color: #20b4e8;
	color: #fff;
}
.module-homeabout .image{
	line-height: 0;
}
.module-homeabout .text{
	padding: 4% 6% 2%;
}

.module-news-slider,
.module-partner-slider{
	position: relative;
	/*overflow: hidden;*/
	padding-bottom: 3rem;
	margin-bottom: 8rem;
}
.module-news-slider>.title,
.module-partner-slider>.title{
	color: #20b4e8;
	font-size: 3.125em;
	font-weight: 200;
	margin-bottom: 4rem;
	padding: 0 6%;
}
.module-news-slider>.content,
.module-partner-slider>.content{
	padding: 0 6%;
}

.module-news-slider:after,
.module-partner-slider:after{
	content: attr(data-title);
	display: block;
	position: absolute;
	right: -10%;
	left: -10%;
	bottom: 0;
	font-size: 16em;
	font-weight: 800;
	color: #f8f8f8;
	line-height: 1;
	letter-spacing: 6px;
	text-align: center;
	text-transform: uppercase;
}
.module-partner-slider:after{
	text-align: left;
}

#bottom>.particles-canvas{
	top: 40%;
	/*border: 1px solid green;*/
}
.module-technology-preview>.particles-canvas{
	top: 50%;
	/*border: 1px solid green;*/
}

/* slider */
.slider-slider{
	position: relative;
	line-height: 0;
	min-height: 30rem;
}
.slider-slider-item{
	position: relative;
	right: 0;
	left: 0;
}
.slider-slider-item>.image1-wrapper{
	position: relative;
	display: inline-block;
	/*border: 1px solid green;*/
}
.slider-slider-item>.image1-wrapper>.gradient{
	background-image: linear-gradient(to top, #20b5ea 0%, #20b5ea 10%, rgba(32, 181, 234, 0) 69%, rgba(32, 181, 234, 0) 100%);
}
.slider-slider-item>.image1-wrapper>.slice{
	width: 169px;
	background: #fff;
	transform: skewX(-12deg);
	/*transform: rotateZ(20deg);*/
	transform-origin: 0 0;
	/*border: 1px solid blue;*/
}
.slider-slider-item .image2{
	position: absolute;
	left: 0;
	bottom: 0;
}
.site-slider-item-caption{
	position: absolute;
	right: 0;
	bottom: 5rem;
	left: 35%;

	line-height: normal;
	color: #fff;
}
.site-slider-item-caption>.title{
	font-size: 2.9em;
}
.site-slider-item-caption>.subtitle{
	font-size: 1.5em;
	margin-bottom: 1rem;
}
.slider-slider>.cycle-pager,
.page-headslider>.cycle-pager,
.page-sectionslider>.cycle-pager{
	position: absolute;
	right: 6%;
	bottom: 2rem;
	z-index: 400;
}
.slider-slider>.cycle-pager{
	bottom: 6rem;
}
.content-section2 .page-sectionslider>.cycle-pager{
	left: 6%;
}
.slider-slider>.cycle-pager>.bullet,
.page-headslider>.cycle-pager>.bullet,
.page-sectionslider>.cycle-pager>.bullet,
.news-slider>.cycle-pager>.bullet,
.partner-slider>.cycle-pager>.bullet{
	display: inline-block;
	width: 22px;
	height: 22px;
	margin-left: 11px;
	border: 2px solid #fff;
	background-color: transparent;
	cursor: pointer;
	border-radius: 100%;
	transition: background-color 0.3s ease-out;
}
.slider-slider>.cycle-pager>.bullet.cycle-pager-active{
	background-color: #fff;
}

.page-headslider{
	position: relative;
}
.page-headslider>.cycle-pager>.bullet,
.page-sectionslider>.cycle-pager>.bullet,
.news-slider>.cycle-pager>.bullet,
.partner-slider>.cycle-pager>.bullet{
	border: none;
	background-color: #eaeaea;
}
.page-headslider>.cycle-pager>.bullet.cycle-pager-active,
.page-sectionslider>.cycle-pager>.bullet.cycle-pager-active,
.news-slider>.cycle-pager>.bullet.cycle-pager-active,
.partner-slider>.cycle-pager>.bullet.cycle-pager-active{
	background-color: #20b5ea;
}

.page-headslider>.slider-arrow{
	position: absolute;
	top: 50%;
	left: 5%;
	margin-top: -26px;
	width: 32px;
	height: 53px;
	background: url(../img/icon-slider-arrows.png) no-repeat 0 0;
	cursor: pointer;
	z-index: 401;
}
.page-headslider>.slider-arrow.cycle-next{
	background-position: -32px 0;
	right: 5%;
	left: auto;
}

/* content list */
.content-list{
	position: relative;
}
.content-list-item{
	position: relative;
}

/* news list */
.news-list,
.partner-list{
	padding: 3rem 6%;
	margin-bottom: 3rem;
}
.news-list-item{
	margin-bottom: 6rem;
	padding-top: 4rem;
}
.news-list-item>.image{
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	line-height: 0;
}
.news-list-item>.image>.slice{
	width: 100px;
	background-color: #fff;
	transform: skewX(-12deg);
	transform-origin: 0 0;
}
.news-list-item>.image>.slice2{
	left: auto;
	right: -100px;
}
.news-list-item.even>.image{
	left: auto;
	right: 0;
}
.news-list-item>.text-wrapper,
.news-list-item>.text-wrapper>.text{
	position: relative;
}
.news-list-item>.text-wrapper>.text{
	/*padding: 3rem 4rem;*/
	padding: 5rem 4rem 3rem 5rem;
}

.news-list-item .text-background{
	background-color: #fff;
	box-shadow: -7px 46px 43px rgba(0, 0, 2, 0.15);
	transform: skewX(-12deg);
}
.news-list-item .title{
	/*margin-bottom: 1.6rem;*/
	margin-right: -2rem;
	font-size: 1.6em;
}
.news-list-item .subtitle{
	/*margin-right: -3rem;*/
}
.news-list-item  .content-date{
	color: #d9dada;
}

/* news-slider */
.news-slider{
	position: relative;
	margin-right: 12.5rem;
}
.news-slider-item{
	right: 0;
}
.news-slider-item>.text-wrapper{
	min-height: 33.75rem;
	padding: 0;
}
/*.news-slider-item>.image{
	left: -3rem;
	transition: left 0.1s ease-out 0.6s;
}
.news-slider-item.cycle-slide-active>.image{
	left: 0;
	transition-duration: 0.4s;
	transition-delay: 0s;
}*/

.news-slider>.cycle-pager{
	position: absolute;
	top: 1rem;
	/*right: 0;*/
	right: -20%;
	z-index: 500;
}

.cycle-pager-thumbs{
	position: absolute;
	top: 4rem;
	bottom: 0;
	left: 100%;
	width: 100%;
	max-width: 215px;
	background-color: #20b5ea;
	/*backface-visibility: hidden;*/
	/*transform: translateZ(0) skew(-12deg, 0deg);*/
	transform: skew(-12deg, 0deg);
	overflow: hidden;
	z-index: 600;
}

.cycle-pager-thumbs>.pager-box-wrapper{
	position: absolute;
	height: 100%;
	transition: top 0.4s ease-out;
}

.cycle-pager-thumbs>.pager-box-wrapper>.pager-box{
	display: block;
	position: relative;
	line-height: 0;
	height: 33.33%;
	/*backface-visibility: hidden;*/
	/*transform: translateZ(0) skew(12deg, 0deg);*/
	transform: skew(12deg, 0deg);
	margin: 0 -20px;
	text-align: center;
}


.cycle-pager-thumbs>.pager-box.view-all{
	top: auto;
	display: block;
	line-height: 0;
}

.cycle-pager-thumbs>.pager-box.view-all>.arrow{
	display: block;
	background: url(../img/icon-arrow-news.png) no-repeat center;
	transform: skew(12deg, 0deg);
}

.news-slider .pager-box-wrapper>.pager-box>.overlay{
	display: block;
	background-color: rgba(32, 181, 234, 0.8);
	transition: opacity 0.3s;
	opacity: 1;
}
.news-slider .pager-box-wrapper>.pager-box:hover>.overlay,
.news-slider .pager-box-wrapper>.pager-box.active>.overlay{
	opacity: 0;
}
.news-slider .pager-box-wrapper>.pager-box>img{
	filter: grayscale(100%) contrast(150%);
}
.news-slider .pager-box-wrapper>.pager-box:hover>img,
.news-slider .pager-box-wrapper>.pager-box.active>img{
	filter: none;
}

/* partner list */
.partner-list-item.column{
	padding: 0 5%;
	margin-bottom: 4rem;
}
.partner-list-item .image{
	position: relative;
	box-sizing: border-box;
	padding: 3rem 0;
	max-width: 200px;
	margin-left: 15%;
	margin-bottom: -1.5rem;
	text-align: center;
	z-index: 6;
}
.partner-list-item .image>img{
	position: relative;
}
.partner-list-item .image-background{
	background: #fff;
	transform: skewX(-12deg);
	/*box-shadow: -7px 46px 43px rgba(0, 0, 2, 0.15);*/
	box-shadow: 10px 25px 43px rgba(0, 0, 2, 0.15);
}
.partner-list-item .info-wrapper{
	position: relative;
}
.partner-list-item .info-wrapper>.text-background{
	background-color: #20b5ea;
	transform: skewX(-12deg);
}
.partner-list-item .info-wrapper>.info{
	position: relative;
	color: #fff;
	padding: 3rem 12%;
}
.partner-list-item .link{
	font-size: 1.4375em;
}

/* partner filter */
.filter-alphabet{
	margin: 4rem 5%;
	border-bottom: 1px solid #d9dada;
}
.filter-alphabet>.filter-btn{
	display: inline-block;
	font-size: 2.0625em;
	color: #d9dada;
	margin-right: 1.2%;
	margin-bottom: 1.2rem;
}
.filter-alphabet>.filter-btn.active{
	color: #20b5ea;
}
.filter-alphabet>.filter-btn.unavailable{
	opacity: 0.3;
}

.filter-alphabet>.filter-btn.view-all{
	margin-right: 5%;
}
.filter-alphabet>.filter-btn>.burger{
	display: inline-block;
}
.filter-alphabet>.filter-btn>.burger>span{
	display: block;
	width: 44px;
	margin-top: 6px;
	border-bottom: 4px solid #d9dada;
}
.filter-alphabet>.filter-btn.active>.burger>span{
	border-color: #20b5ea;
}

/* partner-slider */
.partner-slider {
	position: relative;
	margin-left: 12.5rem;
	margin-bottom: 6rem;
	min-height: 32.125rem;
}
.partner-slider-item{
	padding-top: 2.6rem;
	right: 0;
	bottom: 0;
}
.partner-slider-item .image{
	position: absolute;
	top: 0;
	margin: 0;
	width: 46%;
	height: 65%;
	padding: 5% 0;
	max-width: none;
}
.partner-slider-item  .info-wrapper{
	/*min-height: 100%;*/
	height: 100%;
}
.partner-slider-item  .info-wrapper>.info{
	padding: 5rem 16%;
}
.partner-slider>.cycle-pager{
	position: absolute;
	bottom: 15%;
	z-index: 300;
}

.partner-slider>.cycle-pager-thumbs{
	top: 0;
	left: auto;
	right: 100%;
	z-index: 400;
}
.partner-slider>.cycle-pager-thumbs>.pager-box-wrapper{
	margin-left: -20px;
}
.partner-slider>.cycle-pager-thumbs>.pager-box-wrapper>.pager-box{
	transform: skewX(12deg);
	opacity: 1;
	filter: brightness(0) invert(1);
	padding-left: 25px;
	box-sizing: border-box;
	border-bottom: 1px solid #fff;;
}
.partner-slider>.cycle-pager-thumbs>.pager-box-wrapper>.pager-box>img{
	/*border-bottom: 1px solid;*/
	/*margin: 0px 0 0 -20px;*/
	/*padding: 0 20px;*/
}
.partner-slider .cycle-pager-thumbs>.pager-box.view-all{
	border-top: 1px solid #fff;
}

/* services / technologien*/
.service-list-wrapper{
	position: relative;
	padding: 3rem 3%;
	z-index: 10;
}
.service-list{
	box-shadow: -7px 46px 43px rgba(0, 0, 2, 0.15);
	background: rgba(32, 181, 234, 1);
}
.service-list-item{
	width: 20%;
}
.service-list-item>.image{
	position: relative;
}
.service-list-item>.image>img{
	display: block;
	filter: grayscale(100%) contrast(150%);
	/*background-color: rgba(32, 181, 234, 0.8);*/
	/*background-blend-mode: multiply;*/
}
.service-list-item .caption{
	color: #fff;
	/*background-repeat: no-repeat;*/
	/*background-size: 100%;*/
	background-color: rgba(32, 181, 234, 0.9);
	/*background-blend-mode: multiply;*/
	opacity: 1;
	transition: opacity 0.4s;
	line-height: 1.1;
}
.service-list-item:hover .caption,
.service-list-item.active .caption{
	opacity: 0;
}
.service-list-item:hover>.image>img,
.service-list-item.active>.image>img{
	filter: none;
}
.service-list-item .caption>.heading{
	text-align: center;
	font-size: 1.5em;
	width: 95%;
}
.service-list-item .svg-spinner {
	position: absolute;
	width: 30px;
	height: 30px;
	bottom: 5%;
	left: 50%;
	margin: 0 0 0 -15px;
}
.dinamic-content.in-progress .svg-spinner{display: block;}
.svg-spinner-line {
	fill: #fff;
	stroke-width: 4px;
	stroke: #fff;
}
.svg-spinner {
	-webkit-animation: spin 1s linear infinite;
	-moz-animation: spin 1s linear infinite;
	animation: spin 1s linear infinite;
}
@-moz-keyframes spin { 100% { -moz-transform: rotate(360deg); } }
@-webkit-keyframes spin { 100% { -webkit-transform: rotate(360deg); } }
@keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }

/*module-technology-preview*/
.module-technology-preview .service-list-wrapper{
	padding-top: 0;
	padding-bottom: 0;
}

/* content detail */
.content-page{
	position: relative;
}
.content-page .text{
	padding: 2rem 0;
}
.content-page .text a{
	text-decoration: underline;
}

.content-section,
.content-section>.column{
	position: relative;
}
.content-section>.section-text-wrapper.column{
	padding: 5% 5% 1% 5%;
	z-index: 10;
}
.content-section>.section-images-wrapper{
	z-index: 5;
	padding: 0;
}
.content-section .section-title{
	font-size: 2.5em;
	font-weight: 200;
	margin-bottom: 2rem;
	line-height: 1.2;
}

.section-images-wrapper>.slice{
	width: 137px;
	background-color: #fff;
	transform: skewX(12deg);
	transform-origin: 0 0;
	z-index: 100;
	left: -137px;
}
.content-section2 .section-images-wrapper>.slice{
	left: auto;
	transform: skewX(-12deg);
	right: -137px;
}
.bg-blue .section-images-wrapper>.slice{
	background-color: #20b5ea;
}

.heading-links{
	margin-top: 2rem;
}
.links>li{
	display: inline-block;
	margin: 0 1rem 1rem 0;
}
.file-link{
	display: block;
	margin-bottom: 1rem;
	text-decoration: none;
}
.file-link>.button{
	display: block;
	width: 86%;
}
.file-link>.action{
	display: block;
	width: 12%;
	background: #20b5ea url(../img/icon-download.png) no-repeat center;
}
.content-page .social-buttons{
	position: relative;
	text-align: right;
	padding: 2rem 0;
}
.content-page .social-buttons>.socbutton{
	display: inline-block;
	vertical-align: middle;
	line-height: 0.8;
	margin-left: 6px;
}

.page-videoslider .image{
	line-height: 0;
	margin-bottom: 10px;
	opacity: 0.5;
}
.page-videoslider .heading{
	font-size: 1.5625em;
}
.page-videoslider .video-wrapper{
	position: relative;
}
.page-videoslider .video-box{
	position: absolute;
	min-height: 0;
	margin: 0;
	cursor: pointer;
}
.page-videoslider .video-box>iframe{
	z-index: -1;
}
.page-videoslider .video-box>iframe.active{
	z-index: 1;
}
.page-videoslider .cycle-pager.row{
	margin-left: -10px;
	margin-right: -10px;
}
.page-videoslider .cycle-pager>.column{
	display: block;
	padding: 0 10px 10px;
	line-height: 0;
	opacity: 0.5;
	transition: opacity 0.3s;
}
.page-videoslider .cycle-pager>.column.cycle-pager-active{
	opacity: 1;
}

.play-video-button {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -48px 0 0 -90px;
	width: 180px;
	height: 96px;
	border-radius: 30px;
	background-color: rgba(32, 181, 234, 0.95);
	transition: background-color 0.4s ease-out;
}
.play-video-button:hover{
	background-color: rgba(255, 255, 255, 0.95);
}
.play-video-button>.arrow {
	display: block;
	position: absolute;
	border-right: none;
	border-top: 21px solid transparent;
	border-left: 30px solid #fff;
	border-bottom: 21px solid transparent;
	top: 50%;
	left: 50%;
	margin: -21px 0 0 -15px;
	transition: border-left-color 0.4s ease-out;
}
.play-video-button:hover>.arrow{
	border-left-color: rgba(32, 181, 234, 1);
}

.page-video-bottom{
	position: relative;
	padding: 3rem 0;
	width: 99.4vw;
	left: 50%;
	margin-left: -50vw;
}
.page-video-bottom .page-videoslider{
	position: relative;
	max-width: 52rem;
	margin: 0 auto;
}
.page-video-bottom .page-videoslider .cycle-pager.row{
	position: absolute;
	left: 100%;
	top: 3em;
	width: 100%;
	max-width: 11rem;
	margin: 0;
}
.page-video-bottom .cycle-pager>.column{
	width: 100%;
}

/* service detail technologien */
#service-page-wrapper{
	position: relative;
	padding: 0 6%;
}

.service-page{
	padding: 3rem 0;
}
.service-preview>.content{
	position: relative;
	padding: 3rem 6%;
	z-index: 10;
}
.service-preview>.image{
	position: relative;
	line-height: 0;
	z-index: 1;
	margin-bottom: -2rem;
}
.service-preview>.image>.slice{
	width: 130px;
	background-color: #fff;
	transform: skewX(-12deg);
	transform-origin: 0 0;
	z-index: 100;
}
.module-technology-preview{
	position: relative;
	padding-bottom: 8rem;
}

/* search */
.finder{
	padding: 3rem 0;
}
.module-search-link{
	position: absolute;
	top: 44%;
	right: 3%;
	opacity: 0.8;
	z-index: 280;
}
.module-search-link:hover{
	opacity: 1;
}

/* maps */
.map-canvas,
.gmap{height:30rem;}
.gmap>.gmap-marker{display:none;}
.map-canvas img,
.gmap img{
	max-width: none;
	max-height: none;
}

.video-box{
	position: relative;
	min-height: 360px;
	margin-bottom: 1em;
}
.video-box>iframe{
	position: absolute;
	width:100%;
	height: 100%;
}


/*  forms  */
.contact-page-wrapper{
	margin-bottom: 7.5rem;
}
.contact-form h2{
	font-size: 3.125em;
	font-weight: 200;
	margin-bottom: 3rem;
}
.module-contactinfo .column{
	position: relative;
}
.module-contactinfo .text{
	padding-top: 6%;
	padding-left: 6%;
	z-index: 30;
}
.module-contactinfo .map{
	padding: 0;
}
.module-contactinfo .map>.slice{
	width: 105px;
	left: -105px;
	background: #fff;
	transform: skewX(12deg);
	/* transform: rotateZ(20deg); */
	transform-origin: 0 0;
	/* border: 1px solid blue; */
}
.module-contactinfo .label{
	display: inline-block;
	width: 4em;
}


.contact-form input,
.contact-form textarea{
	background: #d9dada;
	color: #868686;
	border: none;
	box-shadow: none;
	font-size: 1.375em;
	font-weight: 300;
	padding: 1.3rem 2.0625rem;
	margin-bottom: 1.25rem;
	height: auto;
}
/*.contact-form input:valid,
.contact-form textarea:valid,*/
.contact-form input:focus,
.contact-form textarea:focus{
	border: none;
	box-shadow: none;
	background: #20b5ea;
	color: #fff;
}
.contact-form #zform_message{
	height: 15.94rem;
}
.contact-form .button{
	border-radius: 0;
	display: block;
	width: 100%;
	font-size: 1.5625em;
}
.contact-page-wrapper .files,
.zcontact{
	padding: 0 5%;
}


.button, .btn,
input[type="submit"]{
	display: inline-block;
	box-sizing: border-box;
	font-size: 1em;
	color: #20b5ea;;
	background: #fff;
	border: 3px solid #20b5ea;
	border-radius: 30px;
	padding: 1rem 3.3rem;
	margin: 0 0 0.6rem 0;
	cursor: pointer;
	text-decoration: none;

	transition: background-color 0.3s;
}

.button:hover, .btn:hover,
input[type="submit"]:hover{
	background-color: #20b5ea;
	color: #fff;
	text-decoration: none;
}

.button.white{
	border-color: #fff;
	color: #fff;
	background-color: transparent;
}
.button.white:hover{
	color: #20b5ea;
	background-color: #fff;
}
.button.blue{
	color: #fff;
	background-color: #20b5ea;
}
.button.blue:hover{
	color: #20b5ea;
	background-color: #fff;
}

.button.grey,
.pagination-ajaxmore-button>.btn{
	background-color: #d9dada;
	border-color: #d9dada;
	color: #fff;
}
.pagination-ajaxmore-button>.btn{
	font-size: 1.25em;
	font-weight: 600;
}
.button.grey:hover,
.pagination-ajaxmore-button>.btn:hover{
	color: #d9dada;
	background-color: #fff;
}

.button.back-to-top{
	font-size: 1.25em;
	line-height: 1;
	margin-bottom: 3rem;
}

/* front end subform field */
.subform-repeatable table {
	width: 100%;
}
.subform-repeatable th{
	padding-bottom: 1em;
}
.subform-repeatable td{
	vertical-align: top;
}
.subform-repeatable .btn-group>.button{
	box-sizing: border-box;
	font-size: 1em;
	padding: 0.3em;
	width: 30%;
	margin: 0;
	text-align: center;
}
.subform-repeatable .group-add:after{
	content: '+';
}
.subform-repeatable .group-remove:after{
	content: '-';
}
.subform-repeatable .group-move:after{
	content: 'm';
}

/* zwetschke */
#zwetschke-herz{
	font-size: 0.8em;
}
#zwetschke-herz img{
	vertical-align: middle;
	padding: 0 5px 0 5px;
}

/* Newsletter stuff */
#acyarchiveview .contentheading{
	display: none;
}
#acyarchiveview .view-online{
	display: none;
}

#unsubpage{
	padding: 2rem 0;
	line-height: 1.6;
}

#unsubpage .unsuboptions,
#unsubpage form>.unsubdiv{
	padding: 10px;
}

/* Alerts / messages*/
.alert {
	padding: 8px 35px 8px 14px;
	margin-bottom: 18px;
	text-shadow: 0 1px 0 rgba(255,255,255,0.5);
	background-color: #fcf8e3;
	border: 1px solid #fbeed5;
	/*border-radius: 4px;*/
}
.alert{color: #c09853;}
.alert h4 ,
.alert .close {display: none;}
.alert-success {
	background-color: #dff0d8;
	border-color: #d6e9c6;
	color: #468847;
}
.alert-success h4 {color: #468847;}
.alert-danger,
.alert-error {
	background-color: #f2dede;
	border-color: #eed3d7;
	color: #b94a48;
}
.alert-danger h4,
.alert-error h4 {color: #b94a48;}
.alert-info {
	background-color: #d9edf7;
	border-color: #bce8f1;
	color: #3a87ad;
}
.alert-info h4 {color: #3a87ad;}
.alert-block {
	padding-top: 14px;
	padding-bottom: 14px;
}
.alert-block > p,
.alert-block > ul {margin-bottom: 0;}
.alert-block p + p {margin-top: 5px;}

/* Breadcrumbs */
.breadcrumb {
	padding: 8px 15px;
	margin: 0 0 18px;
	list-style: none;
}
.breadcrumb > li {
	display: inline-block;
}
.breadcrumb > li > .divider {
	padding: 0 5px;
	color: #ccc;
}
.breadcrumb > .active {
	color: #999;
}

/* Pagination */
.pagination,
.pagination-ajaxmore{
	clear: both;
}
.pagination ul {
	display: inline-block;
	margin: 18px 0;
	padding: 0;
	box-shadow: 0 0 2px rgba(0,0,0,0.3);
}
.pagination ul > li {display: inline-block;}
.pagination ul > li > a,
.pagination ul > li > span {
	float: left;
	padding: 4px 12px;
	line-height: 18px;
	text-decoration: none;
	background-color: #fff;
	/*border: 1px solid #ddd;
	border-left-width: 0;*/
}
.pagination ul > li > a:hover,
.pagination ul > li > a:focus,
.pagination ul > .active > a,
.pagination ul > .active > span {
	background-color: #f5f5f5;
}
.pagination ul > .active > a,
.pagination ul > .active > span {
	color: #999;
	cursor: default;
}
.pagination ul > .disabled > span,
.pagination ul > .disabled > a,
.pagination ul > .disabled > a:hover,
.pagination ul > .disabled > a:focus {
	color: #999;
	background-color: transparent;
	cursor: default;
}
.pagination .icon-first:before{content: '<';}
.pagination .icon-previous:before{content: '<<';}
.pagination .icon-next:before{content: '>>';}
.pagination .icon-last:before{content: '>';}

.pagination-centered {text-align: center;}
.pagination-right {text-align: right;}

.pagination-large ul > li > a,
.pagination-large ul > li > span {
	padding: 11px 19px;
	font-size: 16.25px;
}
.pagination-small ul > li > a,
.pagination-small ul > li > span {
	padding: 2px 10px;
	font-size: 12px;
}
.pagination-mini ul > li > a,
.pagination-mini ul > li > span {
	padding: 0 6px;
	font-size: 9.75px;
}

/* cookies popup */
body .cc_container .cc_btn, body .cc_container .cc_btn:visited {
    background-color: #ccc;
}

/* Clear Floated Elements */
.clear {clear: both;display: block;	overflow: hidden;visibility: hidden;width: 0;height: 0;}
.clearfix:after {clear: both;content: ' ';display: block;font-size: 0;line-height: 0;visibility: hidden;width: 0;height: 0;}
.clearfix {	display: inline-block;}
* html .clearfix {height: 1%;}
.clearfix {	display: block;}


/* ZGDPR Cookie Consent */

/* "settings" button */
.zgdpr-button-settings{
	position: fixed;
	bottom: 0;
	right: 0;
	border: none;
	display: none;
	background: #fff url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QAAKqNIzIAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAHdElNRQfjDAsJJiXJ/sVgAAABHUlEQVQoz13RvyvEARgG8M/3eyf5NXDJUZyc22TApgx+zH5ENmVQFgPKqksWRUwM5GyySRn5JywoA8pJSjEYzo/h7r7JM709z9v7vO/zBsrImNMk0OjIccSKg5hVtbY8YkzoH2IODKJdLxJOVP8VyTpzoUZOxptrzbgvN4Qyal3gSyjhAzc6/xpsaC1VdZJoEDoyq79oFEp6QAve5ZH2bdaTHjkTpjgEXaBSnwB0CCSMOi+fdAUWrOuJzF+deo6XkiDh1YkfV0KTbv0Uc4rLa3NvUbcXKzYxrd2MMQUp+dCeJaRcSpZm3RjwqYBlu7BmSJVx9UhLowIMy5b/kTP0P38jDqP9xK3Z1haJKTuyRTmIyLR5BfuYE7Prrkj/AqftPX0cuyLNAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE5LTEyLTExVDA5OjM4OjM3KzAwOjAwqodvGgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxOS0xMi0xMVQwOTozODozNyswMDowMNva16YAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAAAElFTkSuQmCC') no-repeat 70% 70%;
	width: 24px;
	height: 24px;
	padding: 0 !important;
	margin: 0 !important;
	border-top-left-radius: 18px !important;
	cursor: pointer;
	outline: none;
	box-shadow: 0 0 12px -3px rgba(0,0,0,0.4);
	opacity: 1;
	transition: opcaity 0.4s ease;
	z-index: 380;
}
.zgdpr-button-settings[disabled]{
	opacity: 0;
	cursor: initial;
}

/* "loading" icon */
.zgdpr-apploading{
	position: fixed;
	bottom: 18px;
	right: 18px;
	width: 18px;
	height: 18px;
	background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAQAAAD8x0bcAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4wwRCgIlBfQtZAAAAAJiS0dEAP+Hj8y/AAABYElEQVQYGW3BP0iUcRzA4S8/Xg45DjnkOOQQiTiOeGk4Im4QaRAJaZBoCGmQcHCQhmiQOFwcmm6KBgcHB6eIiAaJcLihIeTzgaYbRCIapCEaQiTEoT+IaMf7PHHO5Cxb7HtCIpmRiCG22PWYE079TTKzZNmyKS447Rd+euQvTj02mTlixVHGKMUZmh7wnR8esm5uiTDIqDBmjbpZRJh8wyHf2LMZl5isMs4EdSO85We/OvBKDDE57qRXLYc99j1gJQpQsWnLRvDOgQMaUcDkNXNbIX6ybxSzRdt2+NE9dohi5Ha4Gbzyg30rUYCwwzQ3gi59d5mJAlaZZcY87PieHTcYiSEEU9xxzlqY7PmW1zwhi0sM297zrlPEX0647Uu3XaNp/GNY87aLLjjvaJzhOptusekLuix6nyUescxDF6jHBRo+dcPn9HzGmqs+dsV5q/E/g9wHrrpu12XmnDTO/QGg+twbJOE5wgAAAABJRU5ErkJggg==') no-repeat;
	z-index: 390;
}

/* "open settings" link */
.zgdpr-settings-open{
	cursor: pointer;
	text-decoration: underline;
}
.zgdpr-settings-open:hover{
	text-decoration: none;
}

a.cb-settings-open {
	text-decoration: underline;
	cursor: pointer;
}

/* maps cookie hints */
.maps-cookie-hint {
	padding-left: 20px;
	margin-top: 50px ;
}
