/********** common setting **********/

@font-face {
	font-family: 'regular';
	font-style: normal;
	font-weight: normal;
	src: url('../Fonts/Montserrat-Light.woff')
	format('woff');
}

@font-face {
	font-family: 'bold';
	font-style: normal;
	font-weight: normal;
	src: url('../Fonts/Montserrat-SemiBold.woff')
	format('woff');
}

@font-face {
	font-family: 'title';
	font-style: normal;
	font-weight: normal;
	src: url('../Fonts/Pill-Gothic-Regular.woff')
	format('woff');
}


@font-face {
	font-family: 'icon';
	font-style: normal;
	font-weight: normal;
	src: url('../Fonts/comatec-icons.woff')
	format('woff');
}


* {
	font-family: 'regular',arial,sans-serif,helvetica;
	text-decoration:none;
	/*cursor:default;*/
	box-sizing:border-box;
}

html {
	font-size: 16px;
	font-size: calc(.1em + 1lvw);
	/*overflow-x:hidden;*/
}

body {
	margin-bottom: 0;
	overflow-x:hidden;
}

body > * {
	overflow-x:hidden;
}

h2 {
	font-size: 2.8rem !important;
	font-weight: 700;
}

figure{
	margin: unset;
}

img, figure.image {
	display: block;
	max-width: 100%;
}

a,
button {
	cursor: pointer;
}

.intro a {
	color:#fff;
}


p {
	margin:0 0 2lvh 0;
	padding:0;
	font-size:2.1lvh;
	line-height: 1.4;
}


iframe {
	border:0;
}

.none {
	display:none !important;
}


strong.icon {
	font-size: 0;
}

strong.uppercase {
	text-transform:uppercase;
}

strong.icon:after {
	font-family: 'icon';
	color: #fff;
	font-size: 2.2lvh;
}

strong.icon.phone:after {
	content: "\e90f";
	margin-right: .4lvw;
}
strong.icon.fax:after {
	content: "\e909";
}
strong.icon.email:after {
	content: "\e908";
}

a.phone {
	color: #fff;
	text-decoration: none;
}

a.phone:before {
	font-family: 'icon';
	color: #fff;
	font-size: 2.2lvh;
	content: "\e90f";
	margin-right: .7lvw;
}

a.email:before {
	font-family: 'icon';
	color: #fff;
	font-size: 2.2lvh;
	content: "\e908";
	margin-right: .4lvw;
}

.bright a{
	color:#333;
}

.dark * {
	color: #fff;
}

/* Sweep To Right */
.strong {
	color:#333;
	cursor:default;
	font-weight:normal;
	font-family: 'bold',arial,sans-serif,helvetica;
	display: inline-block;
	padding:0 .5lvh;
	margin:0 -.5lvh;
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	position: relative;
	-webkit-transition-property: color;
	transition-property: color;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	cursor:pointer;
	z-index: 1;
}

a.strong[target="_blank"] {
	padding:0 .75rem 0 .25rem;
	margin:0 -.5rem 0 -.25rem;
}

a[target="_blank"] {
	position:relative;
}

.dark .strong{
	color:#fff;
}

.strong:before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #ae0e16;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: 0 50%;
	transform-origin: 0 50%;
	-webkit-transition-property: transform;
	transition-property: transform;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}

.dark .strong:before {
	background: #e32d2f;

}

.strong:hover, .strong:focus, .strong:active {
	text-decoration:none;
	color: #fff;
}
.strong:hover:before, .strong:focus:before, .strong:active:before {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}

a[target="_blank"] {
	margin-right:1rem;
}

a[target="_blank"]:after {
	display:inline-block;
	font-family: 'icon';
	content:'\e904';
	color:#aaafb1;
	font-size:.6rem;
	line-height:0;
	cursor:pointer;
	top: .5rem;
	position: absolute;
}

a.icon[target="_blank"]:after {
	position:static;
}

.dark a[target="_blank"]:after,
.cover a[target="_blank"]:after {
	color:#fff;
}

.cover a.strong[target="_blank"]:hover:after {
	color:#a70e16;
}

.ce-bodytext ul.ce-bullets {
	padding: 0 0 0 1em;
}

ul.ce-bullets li,
.bullets ul,
.bullets ul li {
	list-style-type: none;
	padding:0;
	margin:0;
	position:relative;
	margin-bottom:3lvh;
}

ul.ce-bullets li,
.bullets ul li {
	padding-left:.5lvw;
	margin-bottom:1lvh;
	width: 95%;
	font-size: 2.1lvh;
}
ul li{
	font-size: 2.1lvh;

}
ul.ce-bullets li::before,
.bullets ul li::before {
	content:'-';
	color:#ae0e16;
	position:absolute;
	left:-1lvw;
	font-size:4lvh;
	top: 1.3lvh;
	line-height: 0;
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
	padding: 15px 15px;
	display: inline-block;
	cursor: pointer;
	transition-property: opacity, filter;
	transition-duration: 0.15s;
	transition-timing-function: linear;
	font: inherit;
	color: inherit;
	text-transform: none;
	background-color: transparent;
	border: 0;
	margin: 0;
	overflow: visible;
	vertical-align: middle;
}

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
	background-color: #000;
}

.hamburger-box {
	width: 40px;
	height: 24px;
	display: inline-block;
	position: relative;
	cursor:pointer;
}

.hamburger-inner {
	display: block;
	top: 50%;
	margin-top: -2px;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	width: 40px;
	height: 4px;
	background-color: #000;
	border-radius: 4px;
	position: absolute;
	transition-property: transform;
	transition-duration: 0.15s;
	transition-timing-function: ease;
	cursor:pointer;
}
.hamburger-inner::before, .hamburger-inner::after {
	content: "";
	display: block; }
.hamburger-inner::before {
	top: -10px; }
.hamburger-inner::after {
	bottom: -10px; }


/*** Spin ***/
.hamburger--spin .hamburger-inner {
	transition-duration: 0.22s;
	transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--spin .hamburger-inner::before {
	transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
.hamburger--spin .hamburger-inner::after {
	transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin.is-active .hamburger-inner {
	transform: rotate(225deg);
	transition-delay: 0.12s;
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
.hamburger--spin.is-active .hamburger-inner::before {
	top: 0;
	opacity: 0;
	transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
.hamburger--spin.is-active .hamburger-inner::after {
	bottom: 0;
	transform: rotate(-90deg);
	transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/* Hamburgers // END */

/********** header **********/

header {
	position: absolute;
	top:0;
	left:0;
	text-align:center;
	width:100%;
	background:none;
	transition: all 1s ease;
	-webkit-transition: all 1s ease;
	height:7.5lvh;
	margin-bottom: 0;
	padding: 0;
	z-index: 1000;
}


header {
	top:-6.5lvh;
}

header.sticky {
	top:0lvh;
}


header.sticky.load {
	top:-6.5lvh;
}


header .header {
	width:100%;
	background:none;
	transition: all 1s ease;
	-webkit-transition: all .5s ease;
	height:6lvh;
	overflow: hidden;
}

header.start {
	top:0lvh;
}

.subpage .cover .title {
	font-family: 'title',arial,sans-serif,helvetica;
	text-transform: uppercase;
	font-size: 3lvh;
	line-height: 1;
	color: #fff;
}

.subpage header .logo:after {
	opacity:1;
}


header div {
	display:inline-block;
}

header .row {
	margin: 0;
	width:100%;
}

header .container {
	padding:0;
}

header .container .c6 {
	height:6lvh;
	padding:0;
	text-align:right;
	font-size: 2lvh;
}

header .container .c6 + .c6 {
	padding-top:.5lvh;
}

header .container .c6:first-child{
	text-align:left;
}

header.sticky {
	position: fixed;
	background:#fff;
}

header.sticky .header {
	-webkit-box-shadow:0 -1px 0 #666 inset;
	-moz-box-shadow:0 -1px 0 #666 inset;
	box-shadow:0 -1px 0 #666 inset;
}

header.sticky .container {
	background:#fff;
}

header a.phone {
	color:#fff;
	cursor:default;
	margin-right:2rem;
	display:inline-block;
}

header.sticky a.phone {
	color:#000;
}

header a.phone:before {
	font-family: 'icon';
	content: '\e90f';
	margin-right:.5rem;
}

@media (orientation: portrait)  {
	header a.phone {
		display:none;
	}

	section.video video:first-of-type{
		display: none;
	}

	section.video video:nth-of-type(2){
		display: block !important;
	}
}

@media (max-width: 62em) /* 400px ÷ 16 */ {
	#portfolio-toggle { display:none; }

	.subpage .cover .title {
		font-size:inherit;
	}
	.intro h1,
	.intro .claim,
	#index .intro p {
		font-size: 4lvh;
	}
}

@media (max-width: 62em) /* ~991px ÷ 16 */ {
	header .container {
		width: 100%;
	}
	header .container .row > .c6:first-child {
		float:left;
		margin-left: 2lvw;
	}
	header .container .c6:last-child {
		float:right;
		padding-right:1lvw;
	}
	.side-menu { display:none; }

	.picture-grid .right{
		float: right;
	}

	.picture-grid img.desktop{
		display: none;
	}

	.c1 {
		width: 8.33333333%;
	}

	.c10 {
		width: 83.33333333%;
	}

	.c12{
		width: 100%;
	}
}

@media (min-width: 48em) /* 768px ÷ 16 */ {
	header.sticky .container {
		width: 750px;
	}
}

@media (min-width: 62em)  /* 992px ÷ 16 */ {
	header.sticky .container {
		width: 970px;
		width:50%;
	}

	.picture-grid img.mobile{
		display: none;
	}

}

@media (min-width: 75em) /* 1200px ÷ 16 */ {
	header.sticky .container {
		width: 970px;
		width:50%;
	}
}

@media (min-width: 125em) /* 2000px ÷ 16 */ {
	header.sticky .container {
		width: 52%;
		padding: 0 1%;
	}
}


header .logo a {
	font-size:0;
	transition: all 1s ease;
	-webkit-transition: all 1s ease;
}

header .logo a::after {
	font-family: 'icon';
	content: '\e905';
	color:#fff;
	/*left:0;*/
	font-size: 1.8lvh;
	position: absolute;
	/*top: 1.5lvh;	*/
	opacity:0;
	transition: all 0s ease;
	-webkit-transition: all 0s ease;
	left: .4lvw;
	top: 1.9lvh;
}



.overlay-active header .logo a:after,
body.subpage header .logo a:after,
header.slider .logo a:after,
header.sticky .logo a:after {
	opacity:1;
}

header.sticky .logo a:after {
	color:#ae0e16;
}

.overlay-active header.sticky .logo a:after {
	color:#fff;
}


header.slider .logo a:after {
	top: 2lvh;
}

/********** fonts **********/

.title,
.title span {
	font-size:2.5lvh;
	font-family: 'title',arial,sans-serif,helvetica;
	display:inline-block;
	text-transform:uppercase;
	margin:0 0 3lvh 0;
	padding:0;
	position:relative;
}

.oversize .title {
	margin-top:10lvh;
}

@media (min-width: 120em) /* 1920px ÷ 16 */ {
	#portfolio .subtitle .client {
		display:block;
	}
}

.title:after {
	content: '';
	border-bottom:.4lvh solid #000;
	position: absolute;
	left: -2px;
	right: -2px;
	bottom: 0;
}

.dark .title:after {
	border-color:#fff;
}

p.subtitle {
	position:relative;
	font-size:4lvh;
	margin-bottom:1.5lvh;
	hyphens: none;
	line-height: 1.2;
}


@media (min-width: 120em) /* 1920px ÷ 16 */ {
	.xxx.p.subtitle:after {
		content:'+';
		color:#ae0e16;
		margin-top:-2.5lvh;
		position:absolute;
		font-size: 4.5lvh;
	}
}

.dark p.subtitle:after {
	color:#e32d2f;
}

/********** pages **********/

section {
	max-width:100lvw;
}

section.intro {
	background: #a70e16;
}

@media (orientation:landscape)  {
	section.intro {
		min-height: 100lvh;
	}
}

section:not(.intro) {
	padding:10lvh 0 0 0;
}

section#news-picture {
	padding:0 !important;
	background:#c80000;
}


#index section#p1,
.p31 section#p1 {
	padding:10lvh 0;
}

section#news-picture + section#p1 {
	padding:5lvh 0 0 0 !important;
}

section.img-75 {
	padding:2.7lvh 0 0 0 !important;
}

section.img-75 img {
	width: 75%;
	margin: 0 auto;
}

section.img-75 .addition {
	position:absolute;
	width:100%;

}

section.img-75 .addition.lower {
	bottom:0;
}

section.img-75 .addition.upper {
	top:2lvh;
	font-size:4lvh;
	line-height: 1.1;
	color:#ae0e16;
}

section.img-75 .addition.upper b {
	font-family: 'bold',arial,sans-serif,helvetica;
	font-weight: 300;

}

section.img-75 .addition.upper span {
	display:block
}

section.img-75 .addition .text-right {
	text-align:right;
	overflow: hidden;
}

section.img-75 .addition.upper .container {
	padding:0;
}

section.img-75 .addition img {
	width:50%;
	margin:0;
}

@media (max-width: 450px) and (-webkit-device-pixel-ratio : 3),
(max-width: 450px) and (-webkit-device-pixel-ratio : 2){

	.desktop {
		display:none;
	}

	section.img-75 .addition {
		position: static;
	}
	section.img-75 .addition.upper {
		font-size:2lvh;
		margin-bottom:2lvh;
	}
	section.img-75 .addition.lower {
		margin:2lvh 0;
	}
	section.img-75 .addition .text-right {
		text-align:left;
	}

	section.img-75 .addition.upper span {
		display:inline-block;
		margin-right:2lvh;
	}
}


section:last-of-type:not(.dark) {
	border-bottom:1px solid #7b7b7b;
}

.newsblock div.images div {
	overflow: hidden;
}

.newsblock div.images div div {
	padding:0 !important;
}

.newsblock div.images div,
.zzz.newsblock div.images div img {
	height: 300px;
}


.newsblock div.images a img {
	cursor: zoom-in;
	width: 100%; /* !important; */
	max-width: 520px;
	/*min-width: 230px !important;*/
}

.newsblock div.images div.narrow {
	height: 250px;
}

.newsblock .subtitle:after {
	content:'';
}

.newsblock .col-md-6 {
	margin-bottom:2lvh;
}

@media (min-width: 1024px) and (orientation: landscape) {
	.newsblock .row {
		/*margin-bottom:2lvh;*/
	}
	.newsblock .col-md-6 {
		width: 49%;
		float: left;
	}
	.newsblock .col-md-6 + .col-md-6 {
		float: right;
	}
	.newsblock .col-md-6 img {
		width: 100%;
		max-width: none;
	}
}


@media (max-width: 450px)and (-webkit-device-pixel-ratio : 3),
(max-width: 450px) and (-webkit-device-pixel-ratio : 2){
	.newsblock div.images:not(.slidebar1) div, .newsblock div.images:not(.slidebar1) div img,
	.newsblock div.images div.narrow {
		height:auto;
	}
	.newsblock div.images:not(.slidebar1) a img {
		width: 100% !important;
		max-width: 450px;
	}

}

hr.spacer {
	border:0;
	padding:2lvh 0;
	clear: both;
}

.p99 .tx-comatec-projects section:last-of-type:not(.dark){
	border: 0px;
}

.p99 section:not(.intro){
	padding: 1lvh;
}

.p99 .tx-comatec-projects .picture-grid.container{
	padding-bottom: 2lvh;
}

section.intro {
	border-bottom:0 !important;
}

#karriere section:not(.intro) {
	padding: 10lvh 0 8lvh 0;
	overflow: hidden;
}

@media (orientation: landscape) {
	#legal section:not(.intro) {
		padding: 10lvh 0 8lvh 0;
		overflow:hidden;
	}
}

.fullscreen,
.intro .container{
	position:relative;
}

.fullscreen .container:first-child,
.intro .container:first-child {
	z-index: 2;
}

@media (orientation:landscape) {
	/* .fullscreen .container:first-child */
	.intro .container:first-child {
		height: 100lvh;
	}
}

.intro .row {
	margin-top: 10lvh;
}

.slide-fullscreen .row {
	margin-top: 52lvh;
}

/*.slide-fullscreen #slick-slide00 .row*/
.slide-fullscreen .introslide .row {
	margin-top: 25lvh;
}

/*#index #slick-slide00 img,*/
#index .introslide img {
	-webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,.3)), to(rgba(0,0,0,1)));
	mask-image: linear-gradient(to bottom, rgba(0,0,0,.3), rgba(0,0,0,1));
}

@media (min-width:600px) and (orientation:landscape)  {

	/*.slide-fullscreen #slick-slide00 .row,*/
	.slide-fullscreen .introslide .row,
	.fullscreen .row,
	.intro .row {
		margin-top:0;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}
}

.intro .row a {
	/*
	width: 70%;
	display: block;
	*/
}

.bright {
	background:#fff;
}

.dark {
	background:#343b3c;
}

/********** slider **********/

.intro {
	position:relative;
	overflow:hidden;
	position:relative;
	white-space:nowrap;
}

#home-slider {
	position:absolute;
	top:0;
	left:100lvw;
	z-index:2;
	transition: all 2s ease;
	-webkit-transition: all 2s ease;
}

#home-slider.active {
	left:0;
}

.exit-loader .gradient,
.se-pre-con .gradient,
.intro .gradient {
	position:absolute;
	top:0;
	width:100lvw;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+90,000000+100&0.3+0,0+90,0+100 */
	background: linear-gradient(to bottom, rgba(0,0,0,0.3) 0%,rgba(0,0,0,0) 90%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

	height:30lvh;
	z-index:3;
}


.exit-loader .gradient,
.se-pre-con .gradient {
	height:80lvh;
}

.intro .slider,
.intro .cover {
	/*width:100lvw;*/
	width:100vw;
	display:inline-block;
	white-space:normal;
	overflow:hidden;
	position: relative;
}

.intro .slider {
	/*height:100lvh;*/
	height:100vh;
}

.intro .iframe {
	/*height: 93lvh;*/
	/*margin-top: vh;*/
	height: 93vh;
	margin-top: 7vh;
	z-index: 10;
}

.intro .iframe iframe {
	width:100%;
	/*height: 93lvh*/
	height: 93vh
}

.iframe .iframe_9-16 {
	/*width: 52.3125lvh;*/
	width: 52.3125vh;
	display: block;
	margin: 0 auto;
}

@media (orientation:landscape)  {
	.intro .cover {
		/*height:100lvh;*/
		height:100vh;
	}
}

@media (orientation:portrait) {
	.intro .cover {
		height: 100%;
		padding-bottom: 10lvh;
	}
	.intro .iframe {
		height: 83lvh;
	}

	.intro .iframe iframe {
		width:100%;
		height: 83lvh
	}

	.iframe .iframe_9-16 {
		width: 46.6875lvh;
	}
}

.intro .slider {
	/*cursor:ew-resize;*/
}

.intro .subtitle,
.intro .subtitle span {
	font-family:'title',arial,sans-serif,helvetica;
	text-transform:uppercase;
	font-size: 3lvh;
	line-height: 1;
	color: #fff;
}

.typewrite > .wrap {
	border-right: 0.08em solid #fff;
}

.subtitle.finish .wrap {
	border:0;
}

.intro .logo {
	font-size:0;
}
.intro .logo::before {
	font-family: 'icon';
	content: '\e905';
	font-size: 1.9lvh;
	color:#fff;
	position: absolute;
	/*right: 5lvh;*/
	top: -.3lvh;
}


.intro p {
	color:rgba(255,255,255,.9);
	margin:2lvh 0 0 0 !important;
}

.intro h1,
.intro .claim,
#index .intro p {
	font-size: 5lvh;
	line-height: 1.2;
	color:#e73331;
	color:rgba(255,255,255,.9);
	font-weight:300;
	white-space:normal;
	margin:2lvh 0 0 0 !important;
}

.intro h1, .intro .claim {
	line-height: 1.23;
}

@media (orientation: landscape) {
	.intro h1,
	.intro .claim,
	#index .intro p {
		font-size: 5lvh;
	}
}

@media (orientation: landscape) and (-webkit-device-pixel-ratio: 2),
(orientation: landscape) and (-webkit-device-pixel-ratio: 3),
(orientation: landscape) and (-webkit-min-device-pixel-ratio: 4),
(orientation: landscape) and (min-device-pixel-ratio: 4) {
	.intro h1,
	.intro .claim,
	#index .intro p {
		font-size: 4lvw;
	}
}



@media (max-width:450px) {
	.intro h1,
	.intro .claim,
	#index .intro p {
		font-size: 4lvh;
	}

}

.intro .row div {
	padding:0;
}

@media (max-width:549px) and (orientation: portrait) {
	.slide-fullscreen .container {
		padding:0 10lvw;
	}
	.slide-fullscreen .container .row {
		max-width: 80lvw;
	}
}

.intro .claim,
#index .intro p {
	margin:0;
}

.slide-fullscreen .more {
	border: 2px solid #fff;
	padding: .25lvh 1lvh;
	font-size: 4lvh;
	line-height: 1;
	margin-top: 2lvh;
	display: inline-block;
}

@media (orientation:landscape) and (-webkit-device-pixel-ratio:3),
(orientation:landscape) and (-webkit-device-pixel-ratio:4) {
	.slide-fullscreen .more {
		border: 1px solid #fff;
	}
}

@media (min-width: 1024px) and  (orientation:landscape) {
	.slide-fullscreen .more {
		border: 3px solid #fff;
	}
}


html,
body#index,
body#index section {
	width:100lvw;
	max-width:100lvw;
}

#index .slide-fullscreen {
	left: 0;
}

@media (min-width: 1024px) and  (orientation:landscape) {
	#index .slide-fullscreen .slider .not .row div {
		background: rgba(0, 0, 0, 0.3);
		padding:10px;
		width:65% !important;
	}
}

#p0.intro.picture h1 span {
	font-size: 3lvh;
	font-family: 'title',arial,sans-serif,helvetica;
	text-transform: uppercase;
}
#p0.intro.picture h1 span:after {
	content: '+';
	border: 0;
	color: #fff;
	margin-top: -1lvh;
	position: absolute;
	font-size: 4lvh;
	left: auto;
	right: auto;
	bottom: auto;
	font-family: 'regular',arial,sans-serif,helvetica;
}

.intro .title {
	color:#fff;
	margin: 0;
	/*font-size: 2.5lvh;*/
	/*font-family: 'bold',arial,sans-serif,helvetica;*/
	display:block;
	font-family: 'title',arial,sans-serif,helvetica;
	font-size: 3lvh;
}

.intro .title::after {
	content: '';
	border: 0;
	color: #fff;
	margin-top: -3lvh;
	position: absolute;
	font-size: 4lvh;
	left: auto;
	right: auto;
	bottom: auto;
	font-family: 'regular', arial, sans-serif, helvetica;
}

@media (orientation:landscape) {
	.xxx.intro .title::after {
		content: '+';
	}
}

#index .slide-fullscreen .row {
	width:50%;
}

.slider .text {
	position: relative;
	z-index: 1;
	width: 80%;
	margin: 0 auto;
	top:50%;
	transform: translateY(-50%);

	margin:0;
	width: 100lvw;
	padding: 0 12lvw;
	/*cursor:ew-resize;*/
}

.slider + section > .gradient {
	/*cursor:ew-resize;*/
}

.slider .text a,
.slider .text a .claim,
.slider .text a .title {
	cursor:pointer;
}

/* SLIDER ARROWS */

a.arrow {
	position: absolute;
	display: block;
	top:0;
	padding: 0;
	cursor: pointer;
	color: transparent;
	border: none;
	outline: none;
	z-index: 999;
	border:0;
	width:15lvw;
	height:100lvh;
	padding-top: 50lvh;
	font-size: 0;
	display:none;
	position:fixed;
	display:inline;
}




a.arrow:hover {
	/*opacity:1 !important;*/
}

a.arrow::after {
	content: '\e900';
	font-family:'icon';
	font-size:2.2lvh;
	color:#fff;
	transition: all .5s ease;
	-webkit-transition: all .5s ease;
	opacity: 0;
}

a.arrow:hover::after {
	opacity: 1;
}

a.arrow.next {
	text-align: right;
	padding-left: 3lvw;
	right: 0;
	left: auto;
}

a.more {
	color:#000;
}



a.more:before {
	content: '\e900';
	font-family:'icon';
	font-size:2lvh;
	margin-right:.5lvw;
	color:#ae0e16;
}

.intro a.more:before,
.intro a.more,
.dark a.more {
	color:#fff;
}

.dark .more:before {
	color:#e32d2f;
}

a.arrow.prev {
	text-align: left;
	padding-left: 3lvw;
	left:0;
}

a.arrow.prev:after {
	content: '\e901';
}

a.arrow.next {
	text-align: right;
	padding-right: 3lvw;
	right:0;
}

span.nowrap {
	white-space:nowrap;
}

.exit-loader img,
.se-pre-con img,
.slider img,
.zzz.cover img  {
	display: block;
	width: 100lvw;
	position: absolute;
	top: 0;
	left: 0;
	max-width: 100%;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	pointer-events: none;
	/*cursor:ew-resize;*/
}

.exit-loader img,
.se-pre-con img,
.zzz.cover img {
	width:auto;
	bottom: -40%;
	left: -15%;
	z-index:1;
	transition: all .1s ease;
	-webkit-transition: all .1s ease;
	top:auto;
	max-height: 140lvh;
	height:140lvh !important;
}

@media (min-width: 125em) /* 2000px ÷ 16 */ {
	.exit-loader img,
	.se-pre-con img,
	.scover img {
		bottom: -45%;
	}
}

/********** grid **********/

.grid {
	margin-top:6lvh;
	/*padding-bottom: 12lvh;*/
	width:99.1lvw;
	overflow:hidden;
}

.grid .row,
.grid .c3 {
	padding:0;
	margin:0;
	box-sizing: border-box;
}

.grid .c3 {
	text-align:center;
	font-size:2.5lvh;
	-webkit-box-shadow:0 0 1px rgba(0,0,0,0) inset;
	height:20lvh;
}

.grid .c3 a {
	display:block;
	position:relative;
	height:100%;
	background:none;
	transition: all 1s ease;
	-webkit-transition: all 1s ease;
}

.grid .c3 a:hover {
	background:#e32d2f;
}

.grid .c3 span {
	display:inline-block;
	position:absolute;
	left:10%;
	top:50%;
	transform: translateY(-50%);
	width:80%;
	text-align:center;

}
.grid .c3 a span {
	cursor:pointer;
}

.grid .c3 li {
	position:absolute;
	top:0;
	left:0;
	width:3lvh;
	height:3lvh;
	border:1px solid #333;
	border-width: 1px 0 0 1px;
	list-style-type:none;
}

.dark .grid .c3 li {
	border-color:#fff;
}

.grid .c3 li:nth-child(2) {
	left:auto;
	right:0;
	border-width: 1px 1px 0 0;
}

.grid .c3 li:nth-child(3) {
	top:auto;
	bottom:-1px;
	border-width: 0 0 1px 1px;
}

.grid .c3 li:last-child {
	top:auto;
	bottom:-1px;
	left:auto;
	right:0;
	border-width: 0 1px 1px 0;
}

.grid .row:last-of-type .c3 li:last-of-type {
	border-width: 0 1px 0 0;
}

.grid .row .c3:first-child li {
	border-left-width: 0;
}
.grid .row .c3:last-child li {
	border-right-width: 0;
}

.grid .row:first-child .c3 li:nth-child(1),
.grid .row:first-child .c3 li:nth-child(2) {
	border-top-width: 2px;
}

.grid .row:nth-of-type(3) .c3 li:nth-of-type(3),
.grid .row:nth-of-type(3) .c3 li:nth-of-type(4) {
	border-bottom-width: 0;
}

.grid .row:nth-of-type(1) .c3 li:nth-of-type(1),
.grid .row:nth-of-type(1) .c3 li:nth-of-type(2) {
	border-top-width: 3px;
}

/*** TEAM ***/

section.team {
	padding-top: 8lvh !important;
}

section.team.leistungen {
	padding-top: 0.2rem !important;
}

.team h3,
.insta-grid h3 {
	margin-left: 1rem;
}

.team .grid {
	margin-top: 1lvh;
	padding-bottom: 8lvh;
}

.leistungen .grid {
	padding-bottom: 0;
}

.team .grid .row,
.insta-grid .row {
	margin: 0 .45rem;
}

.leistungen .grid .row {
	margin: 0 .9375rem;
}


.team .grid .c2,
.insta-grid .c2{
	position:relative;
	padding:0;
	margin: .45rem;
	overflow:hidden;
	width: 15.55%;
	float: left;
}

.team .grid .c2 .cover {
	width:100%;
	min-height: 100%;
	height:auto !important;
	height:100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity:0;
	background:rgba(0,0,0,0.9);
	transition: all 1s ease;
	-webkit-transition: all 1s ease;
}

.team .grid .c2 .cover2 {
	width:100%;
	min-height: 100%;
	height:auto !important;
	height:100%;
	position: absolute;
	top: 0;
	left: 0;
}

.team .grid .c2:hover .cover,
.team .grid .c2:active .cover{
	opacity:1;
}

.team .grid .c2 .name {
	width:100%;
	text-align:center;
	position:absolute;
	top: 50%;
	transform: translateY(-50%);
	padding: 1rem;
}
.team .grid .c2 .name span {
	display:block;
	font-size: 1.5lvh;
}

/*** PORTFOLIO OVERLAY NAV ***/


.portfolio-nav {
	position: fixed;
	top:0;
	right:-100lvw;
	width:100%;
	z-index: 1000;
	height: 100lvh;
	transition: all 1s ease;
	-webkit-transition: all 1s ease;
}

.portfolio-active .portfolio-nav {
	right:0;
}

.portfolio-active.overlay-active header {
	z-index: 1001;
}

.portfolio-active.overlay-active .page-layer {
	background: rgba(0,0,0,0.5);
	z-index: 999 !important;
	top:0;
}

.portfolio-active .overlay {
	display:none;
}

.portfolio-active .grid {
	padding-bottom: 0lvw;
}

.portfolio-nav .grid {
	background:#343b3c;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	margin: 0;
	width:100%;
}

.portfolio-nav .grid .c3.active span,
.portfolio-nav .grid .c3.active {
	background:#ccc;
	color:#343b3c;
}

.portfolio-nav .grid .c3 li {
	border-color:#fff;
}

.portfolio-nav .grid .c3 span {
	color:#fff;
}

.portfolio-nav .grid .c3 a {
	background:#343b3c;
}

.portfolio-nav .grid .c3 a:hover {
	background:#e32d2f;
}

/*** PORTFOLIO LIST ***/
.portfolioList{
	padding: 10lvh 0 !important;
}

@media (orientation: portrait) {
	.portfolioList{
		padding: 1rem 0 !important;
	}
	#karriere .portfolioList{
		padding: 10lvh 0 !important;
	}
}

.portfolioList .container{
	width: 80% !important;
	margin-bottom:10lvh;
}

@media (orientation: portrait) {
	.portfolioList .container{
		width: 100% !important;
	}
}

.portfolioList .row {
	/*margin-top:1em;*/
}

.portfolioList a {
	color:#000;
}

.portfolioList a .more {
	color:#ae0e16;
}

.portfolioList a[target="_blank"]:after{
	content: none;
}


/*.portfolioList .container {
	border: 1px solid red;
}*/

.portfolioList .row{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	box-sizing: border-box;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.portfolioList .row.first, .portfolioList .row.last{
	display: none;
}

@media (min-width: 62em)
{	.portfolioList .row.first,
	.portfolioList .row.last {
	display: flex;
}
}

@media (max-width: 991px) and (orientation: landscape)
{
	.portfolioList .row.first,
	.portfolioList .row.last,
	.portfolioList .row .outer,
	.portfolioList .row .empty{
		display: none;
	}

	.portfolioList .deco { display:none !important; }
	.portfolioList .text {
		font-size: 4lvw !important;
	}

	.portfolioList .row .field > a > div {
		left: 0 !important;
		width: 100%;
		text-align: center;
	}

	.portfolioList .row .field > a > div > span.text {
		width: 100%;
	}

	.portfolioList .text::after {
		content: '\e900';
		font-family: 'icon';
		font-size: 3lvw;
		position: absolute;
		top: 50%;
		right: 3lvw;
		transform: translateY(-50%);
		display: block;
	}

	.portfolioList .text.no-link::after {
		display: none;
	}


	.portfolioList.active ul{
		opacity: 1 !important;
		z-index: 10;
	}

	.portfolioList .row .field li:nth-of-type(1), .portfolioList .row .field li:nth-of-type(4)  { border-left-width: 2px !important; }
	.portfolioList .row .field li:nth-of-type(2), .portfolioList .row .field li:nth-of-type(3)  { border-right-width: 2px !important; }

	.portfolioList .row:nth-of-type(2) .field.col1 li:nth-of-type(1) { border-width: 2px 0 0 2px !important; }
	.portfolioList .row:nth-of-type(2) .field.col1 li:nth-of-type(2) { border-width: 2px 2px 0 0 !important; }

	.portfolioList .row:nth-of-type(n-1) .field.col1 li:nth-of-type(3) { border-width: 0 2px 2px 0 !important; }
	.portfolioList .row:nth-of-type(n-1) .field.col1 li:nth-of-type(4) { border-width: 0 0 2px 2px !important; }



}

.portfolioList .row > div{
	position: relative;
	display: inline-block;
	margin: 0;
	padding: 0;
	border: 0;
}

.portfolioList .outer {
	position: relative;
	width: 1.8em;
}

.portfolioList .first .outer,
.portfolioList .last .outer {
	height: 1.8em;
}


@media (orientation: portrait) {
	.portfolioList .outer,
	.portfolioList .last,
	.portfolioList .first,
	.portfolioList .empty{
		display:none !important;
	}

}

.portfolioList .field {
	width: 100%;
}

@media (orientation: portrait) {
	.portfolioList .field {
		margin-bottom: .5rem !important;
	}
}

@media (min-width: 62em)
{
	.portfolioList .field {
		width: 31%;
	}
}

.portfolioList .field > a {
	display: block;
	width: 100%;
	position: relative;
	z-index: 2;
}

.portfolioList .field > a.link {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 10;
}

.portfolioList .field > a > div {
	position: absolute;
	top:50%;
	transform:translateY(-50%);
	font-family: 'title';
	font-size: 2.3lvh;
	text-transform: uppercase;
	white-space: nowrap;
	z-index: 5;
}

.portfolioList .deco {
	display:block;
	border:2px solid #fff;
	border-width:3px 0 3px 3px;
	width:2.5lvw;
	height:2.5lvw;
	position:relative;
}
.portfolioList .deco::before,
.portfolioList .deco::after {
	content:'';
	width:.4lvw;
	height:.4lvw;
	border-right:3px solid #fff;
	right:0;
	position:absolute;
}
.bright.portfolioList .deco,
.bright.portfolioList .deco::before,
.bright.portfolioList .deco::after {
	border-color: #343b3c;
}

.portfolioList .deco::after {
	bottom:0;
}

.portfolioList .text {
	display:block;
	position:absolute;
	top:50%;
	margin-left:.7lvw;
	transform: translateY(-41%);
	font-size: 1.2lvw;
	font-family: 'title';
}

@media (orientation: portrait) {
	.portfolioList .deco { display:none; }
	.portfolioList .text {
		font-size: 6lvw;
		position:relative;
		margin:0;
		transform: none;
	}

	.portfolioList .text::after {
		content:'\e900';
		font-family: 'icon';
		font-size: 3lvw;
		position: absolute;
		top: 50%;
		right:3lvw;
		transform:translateY(-50%);
		display: block;
	}

	.portfolioList .text.no-link::after {
		display: none;
	}
}

.portfolioList .row:nth-of-type(2) .field > a > div,
.portfolioList .row:nth-of-type(6) .field > a > div,
.portfolioList .row:nth-of-type(7) .field > a > div{
	left: 20%;
}
.portfolioList .row:nth-of-type(3) .field > a > div,
.portfolioList .row:nth-of-type(4) .field > a > div,
.portfolioList .row:nth-of-type(5) .field > a > div,
.portfolioList .row:nth-of-type(8) .field > a > div{
	left: 30%;
}


@media (orientation: portrait) {
	.portfolioList .row .field > a > div {
		left:0 !important;
		width:100%;
		text-align: center;
	}
}

.portfolioList .field > a > img {
	position: relative;
	opacity: .5;
	width: 100%;
}

.portfolioList .field > div.description{
	display: none;
	position: absolute;
	width: 125%;
	z-index: 10;
}

.portfolioList .field > div.description p{
	font-family: 'regular',arial,sans-serif,helvetica;
	padding: 0;
	margin: 0 0 1rem 0;
	font-size: .8rem;
	line-height: 1.2;
}
.portfolioList .field > div.description p{
	 padding: 0.4rem 0.6rem;
 }

#karriere .bright.portfolioList .field > div.description p{
	background-color: #ffffff;
}

#karriere .dark.portfolioList .field > div.description p{
	background-color: #343b3c;
}

.portfolioList .field > div.description p:nth-of-type(1) strong {
	font-size: 1.5rem;
	line-height: 1;
}

.portfolioList .row .field.col1 > div.description,
.portfolioList .row .field.col2 > div.description{
	left: 50%;
	top: calc(50% + 2.3em);
}

.portfolioList .row .field.col3 > div.description
{
	text-align: right;
	right: 50%;
	top: calc(50% + 2.3em);
}

.portfolioList .row ul{
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 5;
}

@media (orientation: portrait) {
	.portfolioList .row ul,
	.portfolioList .row li {
		display:none;
	}
}

.portfolioList .row ul li {
	position:absolute;
	width:1.8em;
	height:1.8em;
	list-style-type:none;
	border-style: solid;
	border-color: #fff;
	border-width: 0 0 0 0;
}

.bright.portfolioList .row ul li {
	border-color: #343b3c;
}

/*Top-Left*/
.portfolioList .row ul li:nth-of-type(1){
	top:0;
	left:0;
	border-width: 1px 0 0 1px;
}

/*Top-Right*/
.portfolioList .row ul li:nth-of-type(2){
	top:0;
	right:0;
	border-width: 1px 1px 0 0;
}

/*Bottom-Right*/
.portfolioList .row ul li:nth-of-type(3){
	bottom:0;
	right:0;
	border-width: 0 1px 1px 0;
}

/*Bottom-Left*/
.portfolioList .row ul li:nth-of-type(4){
	bottom:0;
	left:0;
	border-width: 0 0 1px 1px;
}

/*-------------------------------------*/

/*No Top-Left*/
.portfolioList .row.first div li:nth-of-type(1),
.portfolioList .row div.outer:first-of-type li:nth-of-type(1) {
	display:none;
}

/*No Top-Right*/
.portfolioList .row.first div li:nth-of-type(2),
.portfolioList .row:nth-of-type(2) div.outer:last-of-type li:nth-of-type(2),
.portfolioList .row div.outer:last-of-type li:nth-of-type(2) {
	display:none;
}

/*No Bottom-Left*/
.portfolioList .row.last li:nth-of-type(4),
.portfolioList .row.first div.outer:first-of-type li:nth-of-type(4),
.portfolioList .row div.outer:first-of-type li:nth-of-type(4) {
	display:none;
}

/*No Bottom-Right*/
.portfolioList .row.last li:nth-of-type(3),
.portfolioList .row.first div.outer:last-of-type li:nth-of-type(3),
.portfolioList .row div.outer:last-of-type li:nth-of-type(3) {
	display:none;
}

/*-------------------------------------*/

.portfolioList ul,
.portfolioList a {
	transition: opacity .5s ease;
	-webkit-transition: opacity .5s ease;
}

.portfolioList.active ul,
.portfolioList.active a {
	opacity: .2 !important;
}

.portfolioList.active .field.active a {
	opacity: 1 !important;
}

.portfolioList.active .field.active a .text::after {
	content: '\e900';
	font-family: 'icon';
	font-size:.9rem;
	margin-left:.5rem;
}

/*.portfolioList .field.active .description {
	display: block;
}*/
@media (min-width: 62em)
{
	.portfolioList .field.active .description {
		display: block;
	}
}


/*** PORTFOLIO GRID***/

.container.portfolioGrid {
	width: 100%;
	max-width: 2100px;
	margin: 2em auto;
}

.container.portfolioGrid .row {
	width: 80%;
	margin: 0 auto;
	display: flex;
}

.portfolioList .image,
.portfolioGrid .item {
	height:10em;
	overflow:hidden;
	margin: 1.25% 0;

}

.portfolioList .image a,
.portfolioGrid .item a {
	height:10em;
	position:relative;
	display:block;
	overflow:hidden;
	background: #000;
}

.portfolioList .image a img,
.portfolioGrid .item a img {
	max-width:initial;
	width:100%;
	-webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,.6)), to(rgba(0,0,0,1)));
	mask-image: linear-gradient(to bottom, rgba(0,0,0,.6), rgba(0,0,0,1));
	/*transition: all .5s ease;*/
	/*-webkit-transition: all .5s ease;*/
}

.portfolioList .image a:hover img,
.portfolioGrid .item a:hover img {
	/*xxx*/
	/*transform: scale(1.4)*/
}

.portfolioGrid .item a div {
	color: #fff;
	width: 100%;
	position: absolute;
	left:2lvh;
}


.portfolioGrid .item a > div:first-child {
	top:0;
	border-bottom: .3lvh solid #fff;
	text-transform: uppercase;
	font-family: 'bold',arial,sans-serif,helvetica;
}

.portfolioGrid .item a div + div {
	transition: all .5s ease;
	-webkit-transition: all .5s ease;
	opacity: 0;
	bottom: -3lvh;
	padding-right: 2lvh;
	line-height: 1.2;
}

.portfolioGrid .item a:hover div + div {
	opacity: 1;
	bottom:0;
}

.portfolioGrid .item a figcaption p.title::after {
	border:0;
}

.portfolioGrid .item a figcaption p.description {
	display:none;
}

/*** ===== ***/

.picture-grid.container {
	width:100%;
	margin-top: 2lvh;
	padding-bottom: 10lvh;
}

.picture-grid .container {
	width:100%;
	max-width:2100px;
	display: flex;
}

.picture-grid hr {
	width: 100%;
	clear: both;
	border: 0;
}

.picture-grid div {
	padding: 0 2lvh;
}

.picture-grid .row > div:first-child {
	padding-right: 2lvh;
}

.picture-grid div div {
	padding: 1lvh 0;
}

.picture-grid img {
	width:100%;
	max-width: 1024px;
	height:auto;
}

.picture-grid img.full-size {
	max-width: 100%;
}

.picture-grid .column-left{
	right: 3lvh;
}

.picture-grid .column-right{
	padding-left: 3lvh;
}

.picture-grid .bottom{
	position:absolute;
	bottom:0lvh;
}

.picture-grid img.bottom-left{
	position:absolute;
	bottom:1lvh;
	right: 3lvh;
}

.picture-grid .embed-container{
	position: relative;
	padding-bottom: 28.125%; /* ratio 16x9 */
	overflow: hidden;
	height: auto;
}

.picture-grid iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.picture-grid a img {
	cursor: pointer;
}

.picture-grid .video {
	position:relative;
}

.picture-grid .video img {
	position:relative;
	z-index:2
}
.picture-grid .video video {
	position:absolute;
	z-index:1
}

.picture-grid .gallery {
	width:30.75lvh;
	height:30.75lvh;
	background:#e32d2f;
	display:block;
	position:relative;
	padding:2lvh;
}

.picture-grid .gallery span {
	position:absolute;
	bottom:2lvh;
	color:#fff;
	font-size:2.4lvh;
	line-height:1.2;
	cursor:pointer;
	font-family: 'title',arial,sans-serif,helvetica;
	text-transform: uppercase;
}

.picture-grid .gallery:after {
	position:absolute;
	content: '+';
	color:#fff;
	top: 0;
	right:.5lvw;
	font-size: 7lvh;
	line-height:1;
	font-family: 'regular',arial,sans-serif,helvetica;
}


.picture-grid .gallery-exclusive {
	display:none;
}

.partner-links {
	width:100%;
	text-align:center;
	padding:4lvh 0 4lvh 0;
}
.partner-links a {
	text-transform:uppercase;
	font-size:2lvh;
	margin:0 1lvw;
	transition: all .5s ease;
	-webkit-transition: all .5s ease;
}

.xxx.partner-links a:after {
	content:'+';
	margin-top:-.75lvh;
	position:absolute;
	font-size: 2.2lvh;
}

.partner-links a:hover {
	color:#e32d2f;
}

/********** NEWS grid **********/

.news-grid {
	margin: 0 -1.5%;
	overflow:hidden;
}

.news-grid .item {
	background:#000;
	display:inline-block;
	margin:1.5%;
	position:relative;
	width: 30%;
	height: 20lvh;
}

.news-grid .item.red {
	background:#e1292d;
}

.news-grid a {
	cursor: pointer;
	display:block;
	width:100%;
	height:100%;
	position:relative;
	z-index:2;
	padding: 1lvh 2lvh;
	overflow:hidden;
}

.news-grid a div {
	cursor: pointer;
	width:100%;
	z-index:2;
	color:#fff;

}

.news-grid a > div:first-child {
	position: relative;
	border-bottom:.3lvh solid #fff;
	text-transform:uppercase;
	font-family:'bold',arial,sans-serif,helvetica;
}

.news-grid a > div:first-child span {
	float:right;
	font-family:'regular',arial,sans-serif,helvetica;
}

.news-grid a div + div {
	position:absolute;
	transition: all .5s ease;
	-webkit-transition: all .5s ease;
	opacity:0;
	bottom:-3lvh;
	padding-right: 2lvh;
	line-height: 1.2;
	padding-bottom: 0;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.3+100 */
	background: -moz-linear-gradient(top,  rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.8) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(0,0,0,0.4) 0%,rgba(0,0,0,0.8) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(0,0,0,0.4) 0%,rgba(0,0,0,0.8) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#4d000000',GradientType=0 ); /* IE6-9 */
	margin-left: -2lvh;
	padding-left: 2lvh !important;
}

.news-grid .red a div + div {
	background:none;
	filter:none;
}

.news-grid .item.red a div + div,
.news-grid a:hover div + div {
	opacity:1;
	bottom:0;
	padding-bottom: 1.5lvh;
}

.news-grid a img {
	-webkit-mask-image:-webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,.6)), to(rgba(0,0,0,1)));
	mask-image: linear-gradient(to bottom, rgba(0,0,0,.6), rgba(0,0,0,1));
	cursor: pointer;
	position:absolute;
	z-index:-1;
	top: 50%;
	transform: translateY(-50%);
	left:0;
}

.news-grid .item.red a img {
	display:none;
}

.news-grid .c1-1 {
	width: 30%;
	height: 20lvh;
}

.news-grid .c1-2 {
	width: 63%;
	height: 20lvh;
}

.news-grid .c2-1 {
	width: 30%;
	height: 40lvh;
}

.news-grid .c2-2 {
	width: 63%;
	height: 40lvh;
	vertical-align: top;
}

.news-grid .c2-1 img {
	width:100%;
	max-width: initial;
	height:auto;
	top:50%;
	transform: translateY(-50%);
}

@media (max-width: 1280px) {
	.news-grid .c1-2,
	.news-grid .c1-1 {
		height: 15lvw;
	}
	.news-grid .c2-2 {
		height: 30lvw;
	}
}


/********** Instagram **********/

.insta-grid .gallery-item-type {
	position: absolute;
	top: 0.5rem;
	left: 0.5rem;
}

.insta-grid .item {
	margin-bottom: 1.6rem;
}

.insta-grid .item .gallery-item {
	 overflow: hidden;
	 height: 14.1rem;
}

.insta-grid .item .item-description{
	position: absolute;
	transition: all .5s ease;
	-webkit-transition: all .5s ease;
	opacity: 0;
	bottom: 0;
	line-height: 1.2;
	background: -moz-linear-gradient(top, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.8) 100%);
	background: -webkit-linear-gradient(top, rgba(0,0,0,0.4) 0%,rgba(0,0,0,0.8) 100%);
	background: linear-gradient(to bottom, rgba(0,0,0,0.4) 0%,rgba(0,0,0,0.8) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#4d000000',GradientType=0 );
	padding: 0.5rem;
}

.insta-grid .item a:hover .item-description {
	opacity: 1;
	bottom: 0;
	padding-bottom: 1.5lvh;
}

.insta-grid .item .visually-hidden{
	display: none;
}

	/********** Prev/Next Browse **********/

.browse {
	/*border-top: 1px solid #7b7b7b;*/
	border-top: 0;
	padding: 2em 0 !important;
}

.browse a {
	text-transform: uppercase;
	font-size:.9rem;
	font-weight: 600;
}

.browse a.next:after,
.browse a.prev:before {
	content: '\e900';
	color:#ae0e16;
	font-family: 'icon';
	margin-left:1em;
	font-size:.9em;
}

.browse a.prev:before {
	content: '\e901';
	margin-right:1em;
}


/********** footer **********/

footer {
	overflow:hidden;
	position:relative;
	padding: 1.5rem 0 7em 0;
}
footer ul{padding-left: 0;display: flex; flex-direction: row;align-items: center;justify-content: center}
footer ul.social{margin-left: .7rem }

footer ul li{list-style: none}
footer ul li a{margin: .4rem;font-size: 2.1lvh}
footer .footer_menu{
	padding-left: 0;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;}
footer ul li.socialicon a{line-height: normal;font-size: 4lvh}
footer .row {
	width:100%;
	text-align:center;
	color:#333;
	text-transform:uppercase;
	position: relative;
	z-index: 1;
	font-weight:600;
	margin: 0 !important;
}

@media (min-width: 1920px) {
	.xxx.footer a:after,
	.xxx.footer span:after {
		content:'+';
		color:#e32d2f;
		margin-top:-1lvh;
		position:absolute;
		font-size: 1.9lvh;
	}
	footer span span {
		display:inline;
	}
	footer span.social:after,
	footer span span:after {
		content:'';
	}
}

footer span:after {
	margin-left:.3lvw;
}

footer a.icon {
	margin: 0 .5lvw;
	line-height: 1.3;
}

footer a.icon::after {
	font-family: 'icon';
	font-weight:300;
	content:'x';
	margin-top:-10px;
	color:#333;
	font-size: 40px;
	transition: all .7s ease;
	-webkit-transition: all .7s ease;
}

@media (max-width: 35em) /* 550px ÷ 16 */ {
	footer .row {
		padding:4lvh 0;
	}
	footer a {
		display: block;
		margin: 2lvh 0;
	}
	footer span {
		margin-left:0;
		font-size: 0;
	}
	footer span a {
		display:inline-block;
	}
	footer a.icon:after {
		font-size: 4lvw;
	}
}

@media  (max-width:812px) {

	footer .footer_menu{flex-direction: column }
	footer ul{flex-direction: column }
	footer ul.social{flex-direction: row }
	footer ul.social li{margin-right: 3.5rem }
	footer ul.social li:first-of-type{margin-left: 3.5rem }
	footer ul li a{margin: .2rem 0}

}
footer ul li a:after{margin: 0;top: 0 !important
;font-size: 100% !important;position: relative}

footer a.facebook:after {
	content:'\f230';
}
footer a.youtube {
	bottom: -3px;
}

footer a.youtube:after {
	content:'\e912';
}

footer a.instagram:after {
	content:'\f16d';
}

footer a.linkedin:after {
	content:'\e910';
}
footer a:hover,
footer a:hover:after {
	color:#e32d2f;
}

footer img {
	filter: grayscale(100%) sepia(0%);
	position: absolute;
	bottom: -150%;
	left: -10%;
	width: 50%;
	opacity: .1;
}

/********** navigation // main **********/

html.overlay-active {
	overflow: hidden;
}


.overlay-active header {
	transition: none;
	z-index:100;
	background:none;
	-webkit-box-shadow:0 0 0 #666 inset;
	-moz-box-shadow:0 0 0 #666 inset;
	box-shadow:0 0 0 #666 inset;
}

.overlay-active .header {
	-webkit-box-shadow:0 0 0 #666 inset !important;
	-moz-box-shadow:0 0 0 #666 inset !important;
	box-shadow:0 0 0 #666 inset !important;
}

header .container {
	color:#fff;
}

header.sticky .container {
	color:#ae1018;
}

.overlay-active header .container {
	background:none;
	color:#fff;
}

.page-layer {
	position:fixed;
	top:0;
	right:0;
	width:100lvw;
	height:100lvh;
	z-index:-1;
}

.page-layer { z-index: 0 !important;top: -100lvh; }

.overlay-active .page-layer {
	z-index:99;
}

.overlay {
	position:fixed;
	top:-100lvh;
	right:0;
	width:100lvw;
	height:100lvh;
	background:rgba(0,0,0,0);
	transition: all 1s ease;
	-webkit-transition: all 1s ease;
	z-index:1;
}

.overlay-active .overlay {
	top:0;
	background:rgba(0,0,0,.7);
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+99&0.3+0,0.7+50 */
	background: linear-gradient(to right, rgba(0,0,0,0.3) 0%,rgba(0,0,0,0.7) 50%,rgba(0,0,0,0.7) 99%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	z-index:11;
}

.overlay-active .main-nav a:hover,
.page-layer a:hover {
	text-decoration:none;
	margin-right:0;
	color:#ccc;
}


.shape-overlays {
	width: 100lvw;
	height: 100lvh;
	pointer-events: none;
	position: fixed;
	top: 0lvh;
	left: 0;
}

.shape-overlays.is-opened {
	pointer-events: auto;
}

.shape-overlays__path:nth-of-type(1) {
	fill: rgba(0,0,0,0.2);
}

.shape-overlays__path:nth-of-type(2) {
	fill: rgba(0,0,0,0.4);
}

.shape-overlays__path:nth-of-type(3) {
	fill: rgba(0,0,0,0.5);
}

.overlay .container,
.page-layer .container {
	padding:0lvh;
}

.overlay .row,
.page-layer .row {
	position: relative;
	height:100lvh;
	margin: 0 1rem;
}

.overlay ul.main-nav,
.page-layer ul {
	position: absolute;
	top: 51%;
	right:0;
	transform: translateY(-55%);
	text-align:right;
	margin: 0;
	transition: all .5s ease;
	-webkit-transition: all .5s ease;
}

.overlay .container {
	opacity:0;
}

.overlay-active .overlay .container {
	opacity:1;
}

.overlay .main-nav li,
.page-layer li {
	list-style-type:none;
}

.overlay .main-nav a,
.page-layer a {
	font-size: 7lvh;
	line-height:1.2;
	color:#fff;
	margin-right:0;
	transition: all .5s ease;
	-webkit-transition: all .5s ease;
}

.overlay-active .main-nav a:hover,
.page-layer a:hover {
	text-decoration:none;
	margin-right:3lvh;
}

.noAni {
	transition: none;
}

.overlay ul.main-nav { z-index: 99; }

/*** overlay active // hide stuff ***/
.overlay-active header .logo,
.overlay-active header #language {
	opacity:0
}

/********** navigation // language **********/

#language span {
	font-family: 'regular',arial,sans-serif,helvetica;
	font-weight:600;
}

#language span.split::after {
	content: ' ';
	border-right:2px solid #fff;
	border:0;
	margin:0 .5lvh;
}

.sticky #language span.split::after {
	border-color:#ae1018;
}

#language a, #language span {
	font-family: 'regular',arial,sans-serif,helvetica;
	color: inherit;
	text-transform:lowercase;
}

#language a:hover {
	color:#e73331;
}


#language {
	/*visibility:hidden;*/
}
/********** navigation // vertical **********/

#cd-vertical-nav {
	position: absolute;
	right: -10lvw;
	right: 2lvw;
	top: 140lvh;
	z-index: 2;

	display:none;
}

/********** buttons **********/

.side-menu,
.back-to-top {
	position:fixed;
	top:47lvh;
	right:0;
	z-index:10;
	border:2px solid #aaafb1;
	border-width:2px 0 2px 2px;
	border-radius:1px;
	cursor:pointer;
}
.back-to-top span:after {
	display:block;
	font-family: 'icon';
	content:'\e903';
	color:#aaafb1;
	font-size:3lvh;
	line-height:3lvh;
	padding:1lvh 2lvw 1lvh .5lvw;
	transition: all .4s ease;
	-webkit-transition: all .4s ease;
	cursor:pointer;
}

.side-menu a {
	display:block;
	color:#aaafb1;
	padding:.5lvh 1lvw;

}

.side-menu a:first-child {
	padding-top:1lvh;
}

.side-menu a:last-child {
	padding-bottom:1lvh;
}

.side-menu a:focus,
.side-menu a.active {
	font-family:'bold',arial,sans-serif,helvetica;
}

.back-to-top:hover span:after {
	padding-right:3lvw;

}

.scroll {
	display:block;
	position:absolute;
	bottom:3lvh;
	height:6lvh;
	width:4lvh;
	left: 50%;
	transform: translateX(-50%);
	transition: all .4s ease;
	-webkit-transition: all .4s ease;
	z-index:10;
	color:rgba(255,255,255,1);
	text-align:center;
	background:rgba(255,255,255,0);
	-webkit-animation: pulse 2s infinite;
	animation: pulse 2s infinite;
}

#p0 .scroll {
	bottom: 7lvh;
}

@media (orientation: portrait) {
	.subpage #p0 .scroll {
		visibility: hidden;
	}
}



@-webkit-keyframes pulse {
	0% {
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0); }
	50% {
		-webkit-transform: translate(0, 10px);
		transform: translate(0, 10px); }
	100% {
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0); }
}

@keyframes pulse {
	0% {
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0); }
	50% {
		-webkit-transform: translate(0, 10px);
		transform: translate(0, 10px); }
	100% {
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0); }

}

.scroll span::after {
	font-family: 'icon';
	content: '\e902';
	line-height:5lvh;
	font-size:5.5lvh;
	top:0;
	transition: all .4s ease;
	-webkit-transition: all .4s ease;
	cursor: pointer;
}

.scroll.hide {
	display:none !important;
}

/********** feature (skew background) **********/
.feature img {
	width: 100%;
	max-width: 480px;
}

#feature-first {
	background: linear-gradient(168deg, #ffffff 55%, #00FFAD 0);
}

#feature-last {
	background: #00FFAD;
}

/********** contact **********/
#contact {
	background-size: cover;
}

#contact ul li {
	padding: 3px 0;
}

#contact form {
	color: #00FFAD;
}

#contact form input,
#contact form textarea {
	background: transparent;
	border: 1px solid #00FFAD;
	color: #ffffff;
}

/********** copyright **********/
#copyright {
	background: #192440;
	padding: 2rem 3rem;
}

#copyright #social-media a {
	width: 40px;
	height: 40px;
	border-radius: 99%;
	background: #ffffff;
	transition: .4s ease;
	-webkit-transition: all .4s ease;
}

#copyright #social-media a i {
	color: #192440;
	font-size: 1.2rem;
	line-height: 40px;
}

#copyright #social-media a:hover {
	background: #00FFAD;
}

#copyright #social-media a:hover i {
	color: #ffffff;
}

/********** MENU ICON **********/

#nav-toggle:after {
	font-family:'icon';
	content:'\e90b';
	font-size: 27px;
}

#nav-toggle.is-active:after {
	content:'\e90d';
	margin-right: 1lvw;
}


.hamburger {
	margin: 0 0 0 1lvh;
	padding: 1lvh 0 1lvh 1lvh;
	margin-right: 1lvw;
}

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	background:#fff;
	width: 35px;
	height: .2lvh;
	border-radius: 0;
}

.sticky .hamburger-inner, .sticky .hamburger-inner::before, .sticky .hamburger-inner::after {
	background:#ae1018;
}

.hamburger:hover .hamburger-inner,.hamburger:hover  .hamburger-inner::before, .hamburger:hover .hamburger-inner::after {
	background:#e73331;
}

.overlay-active header .hamburger.is-active .hamburger-inner,
.overlay-active header	.hamburger.is-active .hamburger-inner::before,
.overlay-active header	.hamburger.is-active .hamburger-inner::after {
	background:#fff;
}



/********** === **********/

#portfolio-toggle {
	position:relative;
	width:45px;
	height: 36px;
	margin: 0 1lvw 0 1.5lvw;
	vertical-align: middle;
	cursor:pointer;
	display: inline-block;
}

#portfolio-toggle button {
	position:absolute;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	cursor: pointer;
	background:none;
	width:44px;
	top:13px;
	left:0;
}

#portfolio-toggle button .box-inner-h,
#portfolio-toggle button .box-inner-h::before,
#portfolio-toggle button .box-inner-h::after {
	position: absolute;
	display:block;
	width:100%;
	height:.2lvh;
	left: 0;
	background:#fff;
	z-index:	1;
	transition-property: transform;
	transition-duration: 0.15s;
	transition-timing-function: ease;
}

.sticky #portfolio-toggle button .box-inner-h,
.sticky #portfolio-toggle button .box-inner-h::before,
.sticky #portfolio-toggle button .box-inner-h::after {
	background:#ae1018 !important;
}

#portfolio-toggle.is-active button .box-inner-h,
#portfolio-toggle.is-active button .box-inner-h::before,
#portfolio-toggle.is-active button .box-inner-h::after {
	background:#fff;
}


#portfolio-toggle button .box-inner-h {
	transition-duration: 0.22s;
	transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
#portfolio-toggle button .box-inner-h::before {
	transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
#portfolio-toggle button .box-inner-h::after {
	transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }



#portfolio-toggle button .box-inner-v,
#portfolio-toggle button .box-inner-v::before,
#portfolio-toggle button .box-inner-v::after {
	position: absolute;
	display:block;
	height:36px;
	width:4px;
	top: -10px;
	left:20px;
	background:#7b1514;
	z-index: 2;
	transition: all .14s ease;
}

.sticky #portfolio-toggle button .box-inner-v,
.sticky #portfolio-toggle button .box-inner-v::before,
.sticky #portfolio-toggle button .box-inner-v::after {
	background:#fff;
}

#portfolio-toggle button .box-inner-h::before, #portfolio-toggle button .box-inner-h::after,
#portfolio-toggle button .box-inner-v::before,  #portfolio-toggle button .box-inner-v::after  {
	content: ' ';
	display: block; }
#portfolio-toggle button .box-inner-h::before {
	top: -10px; }
#portfolio-toggle button .box-inner-h::after {
	bottom: -10px; }
#portfolio-toggle button .box-inner-v::before {
	left: -12px; }
#portfolio-toggle button .box-inner-v::after {
	left: 12px; }



#portfolio-toggle:hover .box-inner-h, #portfolio-toggle:hover  .box-inner-h::before, #portfolio-toggle:hover .box-inner-h::after {
	background:#e73331;
}

#portfolio-toggle.is-active .box-inner-v,
#portfolio-toggle.is-active .box-inner-v::before,
#portfolio-toggle.is-active .box-inner-v::after {
	background:rgba(255,255,255,0) !important;
}

#portfolio-toggle.is-active .box-inner-h {
	transform: rotate(225deg);
	transition-delay: 0.12s;
	transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

#portfolio-toggle.is-active .box-inner-h::before {
	top: 0;
	opacity: 0;
	transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}

#portfolio-toggle.is-active .box-inner-h::after {
	bottom: 0;
	transform: rotate(-90deg);
	transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}


/********** WORDING **********/

#wording {
	position:absolute;
	top:190lvh;
	z-index:10;
	transition: all 1s ease;
	-webkit-transition: all 1s ease;
	width: 25lvw;
	width:20lvw;
	/*right:-100lvw;*/
	right:-12lvw;
	right:0;
	cursor:pointer;
	background: #fff;
}

#wording.sticky {
	top:auto;
	position:fixed;
	bottom: 18lvh;
}

#wording:hover  {
	/*right:-11lvw;*/
	width:21lvw;
}

#wording.expand {
	/*right:-1lvw;*/
	width:32lvw;
}

#wording .wording-container {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	width:100%;
	text-align:left;
	border:2px solid #aaafb1;
	border-width:2px 0 2px 2px;
	border-radius:1px;
	cursor:pointer;
	padding:1lvh;
	display:inline-block;
	transition: all .4s ease;
	-webkit-transition: all .4s ease;
}

#wording .term {
	display:inline;
	width:auto;
}

#wording .term span {
	cursor:pointer;
	display:block;
	font-size: 1.4lvh;
	color: #777;
}

#wording .term span:after {
	border:0;
	content:'...';
	font-size:1.8lvh;
}

#wording .term strong {
	font-family: 'title',arial,sans-serif,helvetica;
	text-transform:uppercase;
	display:inline-block;
	font-size:2.5lvh;
	line-height:1;
	color:#aaafb1;
	margin-top: 0lvh;
	cursor:pointer;
	transition: all 1s ease;
	-webkit-transition: all 1s ease;
	white-space: nowrap;
}

#wording .term strong:after {
	border:0;
	content:'?';
	font-size:3.4lvh;
	position: static;
}


#wording .definition {
	max-width: 30lvw;
	font-size: 2lvh;
	color: #000;
	transition: all .4s ease;
	-webkit-transition: all .4s ease;
	margin-top: 1lvh;
	padding: 0 .5lvw 0 0;
	display:none;

}

#wording .wording-container.show {
	/*background:rgba(255,255,255,.9);*/
	padding-right:3lvh;
}

#wording .wording-container.show .term span,
#wording .wording-container.show .term strong {
	color:#e32d2f;
}

#wording .wording-container.show .definition {
	display: block;
}

#wording .wording-container.show .definition a {
	color: #000;
	font-size:0;
}

#wording .wording-container.show .definition a:after {
	font-family: 'icon';
	content: "\e906";
	color:#ae0e16;
	margin-left: .5lvw;
	cursor:pointer;
	font-size: 2lvh;
	margin-left: 0;
	margin-top:.5lvh;
}

#wording .more {
	display:none;
}

/********** SECTIONS **********/

.slide-fullscreen .cover {
	background:#000;
}

/*#index .slide-fullscreen #slick-slide00 .cover*/
#index .slide-fullscreen .introslide .cover {
	background:#a70e16;
}

@media (max-width: 1280px) and (orientation:portrait)  {
	.slide-fullscreen .cover {
		background:#a70e16;
	}
}

#index .slide-fullscreen .cover .row {
	width: auto;
}


#p0.picture .cover {
	background:#fff;
}

#p0.picture img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100lvw;
}

#p0.picture.intro {
	white-space: initial;

}

.slide-fullscreen .cover img {
	/* XXX NICHT #slick-slide01*/
	width: 100lvw;
	bottom: auto;
	left: 0;
	z-index: 1;
	top: 0;
}

@media (max-width: 1280px) and (orientation: portrait){
	.slide-fullscreen .cover img.zoom {
		width: 135lvw;
		max-width: unset;
		left: -35lvw;
		z-index: 1;
		height: 63lvw;
		top: 0;
		overflow: hidden;
		object-fit: cover;
		object-position: top;
	}
}

/*#index .slide-fullscreen #slick-slide00 .cover img*/
#index .slide-fullscreen .introslide .cover img {
	max-height: 140lvh;
	height: auto !important;
	left:-25%;
}

.subpage .intro img {
	width: 100lvw;
	bottom: auto;
	z-index: 1;
	top: 0;
	max-height: 140lvh;
	height: auto !important;
	left:-25%;
	position:absolute;
}

.introslide  video,
.subpage .intro video {
	z-index: 1;
	top: 10%;
	position: absolute;
	height: 91%;
	clip-path: inset(0 1px 0 0);
}

.introslide  video{
	left: -1lvw;
}

.subpage .intro .responsive-video{
	z-index: 1;
	top: 0;
	position: absolute;
	height: 101%;
}

/*
body#index #p0 .cover .container {
	width:80%;
}*/

body#index #p0 .cover .container {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}


section:not(.intro){
	position:relative;
}

section.images {
	width: 100%;
	padding: 0 !important;
	overflow: hidden;
}

section.images .c4 {
	padding: 0;
}



section.images img {
	width:100%;
	max-width:auto;
}

#karriere section.video{
	padding: 0;
}

section.video video{
	width: 100%;
	display: block;
}

section.video video:nth-of-type(2){
	display: none;
}



.flag {
	clear:both;
	width: 2.2lvw;
	height: 2.2lvw;
}

#p2 .flag {
	margin-top: -1px;
}

#p2 .flag.right {
	margin-right: -0.5px;
}

@media (orientation:portrait) {
	#karriere.p33 .dark.images,
	#karriere.p33 .flag {
		display:none;
	}
}

#karriere .no-top-space {
	padding-top: 0!important;
	margin-top: -2lvh;
	position: relative;
}

#karriere.subpage .cover h3 {
	display:none !important;
}

#karriere a.bubble {
	background:#343b3c;
	color:#fff;
	text-transform: uppercase;
	font-size:2.5lvh;
	display:inline-block;
	max-width:55%;
	padding: 2lvh 1.5lvw 2.5lvh 1.5lvw;
	border-radius:5px 5px 5px 0;
	transition: all .5s ease;
	-webkit-transition: all .5s ease;
}

#karriere .dark a.bubble {
	background:#ffffff;
	color: #343b3c;
}

#karriere .dark a.bubble span {
	color: #343b3c;
}

#karriere .dark a.bubble:hover span {
	color: #FFFFFF;
}

.p0 {
	padding:0;
}

div.bubble {
	background:rgba(22,27,28,.8);
	color:#fff;
	padding: 2lvh 1.5lvw 2.5lvh 1.5lvw !important;
	border-radius:5px 5px 0 5px;
}

div.bubble + svg path {
	fill: rgba(22,27,28,.8);
}


#karriere a.bubble:hover {
	background:#e73331;
}

#karriere a.bubble + svg,
div.bubble + svg {
	display: block;
	clear: both;
	margin-top: 0px;
	width: 2.2lvw;
	height: 2.2lvw;
}

#karriere a.bubble + svg.last {
	margin-top: -0.6lvh;
}

#karriere a.bubble + svg path {
	transition: all .5s ease;
	-webkit-transition: all .5s ease;
}

#karriere a.bubble:hover + svg path {
	fill: #e73331;
}

#karriere a.bubble:hover + svg.last path.fill {
	fill: #fff;
}

#karriere a.bubble:hover + svg.last path.line {
	fill: #e73331;
}

#karriere a.bubble.right {
	border-radius:5px 5px 0 5px;
	text-align:right;
	max-width:50%;
}

@media (orientation: portrait) {
	#karriere #e1 {
		margin-top:4em;
	}
	#karriere a.bubble,
	#karriere a.bubble.right {
		text-align: center;
	}
}


#karriere a.bubble span {
	cursor: pointer;
	/*width:80%;*/
	display: inline-block;
	font-weight: 600;
	line-height: 1.3;
}
@media (max-width:850px) and (min-width:800px) {
	#karriere a.bubble span {
		overflow-wrap: break-word;
		width:100%;

	}
}​

#karriere #initiativ a.bubble {
	background:#fff;
	border:2px solid #343b3c;
}
#karriere #initiativ a.bubble span {
	width:100%;
	color: #343b3c
}

#karriere #initiativ a.bubble:hover {
	border-color:#e73331;
	background:#fff;
}

@media (orientation:portrait) {
	#karriere.p33 a.bubble {
		border-radius:5px !important;
		margin-bottom: 4lvh !important;
		width: 100%;
	}
}


.bubble {
	border-radius: 5px !important;
}

@supports (clip-path: inset(50%)) {

	.bubble {
		border-radius: 5px 5px 5px 0 !important;
	}

	.p63 .bubble,
	.bubble.right {
		border-radius: 5px 5px 0 5px !important;
	}

	.flag {
		background:#343b3c;
		-webkit-clip-path: polygon(70% 0, 0 0, 0 100%);
		clip-path: polygon(70% 0, 0 0, 0 100%);
		transition: all .5s ease;
		-webkit-transition: all .5s ease;
	}

	.dark .flag {
		background:#ffffff;
	}

	.cover .flag {
		background: rgba(22,27,28,.8);
	}

	a.bubble:hover + .flag {
		background:	#e73331;
	}

	.flag.right {
		-webkit-clip-path: polygon(100% 0, 30% 0, 100% 100%);
		clip-path: polygon(100% 0, 30% 0, 100% 100%);
	}
}

#karriere.subpage.p64 .cover div.bubble {
	border-radius: 5px 5px 5px 0;
}


#index #p3 .grid .c3 img {
	transition: all 1s ease;
	-webkit-transition: all .5s ease;
	filter: grayscale(100%) sepia(0%);
	margin-left:25%;
	width:50%;

}
#index #p3 .grid .c3:hover img {
	filter: grayscale(0%) sepia(0%);
}

#index .grid .row:last-child .c3 li:nth-child(3),
#index .grid .row:last-child .c3 li:nth-child(4) {
	border-bottom-width: 0;
}


#index #p4 {
	padding-bottom:10lvh;
}

.exit-loader {
	position:fixed;
	overflow:hidden;
	top:0;
	left:100lvw;
	background:#a70e16;
	z-index: 11;
	width: 100%;
	height: 100lvh;
	transition: all 1s ease;
	-webkit-transition: all 1s ease;
}

body.exit .exit-loader {
	display:block;
	left:0;
}

body.exit header.sticky {
	background: none;
}


body.exit header.sticky .header {
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}

body.exit .sticky .hamburger-inner,
body.exit .sticky .hamburger-inner:before,
body.exit .sticky .hamburger-inner:after {
	background: #fff;
}


body.exit .sticky #language span.split:after {
	border-color: #fff;
}

body.exit header.sticky .container {
	background: none;
	color: #fff;
}

body.exit .back-to-top {
	right:-10lvw;
}

/* === LOADER === */

body.loading {
	overflow:hidden;
}


body.p100.loading {
	overflow:auto;
}


/* body.loading  */
.se-pre-con {
	display:block;
	position: fixed;
	top:0;
	left:0;
	width:100lvw;
	/* height:100lvh; */
	background:#ae0e16;
	background:#a70e16;
	z-index: 0;
}

#index .se-pre-con img {
	display:none;
}

.se-pre-con,
.loader {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}

.loader {
	position: absolute;
	height: 120px;
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-webkit-transform: scale(1);
	transform: scale(1);
	z-index: 9999;
}

#outline {
	stroke-dasharray: 2.42777px, 242.77666px;
	stroke-dashoffset: 0;
	-webkit-animation: anim 1.6s linear infinite;
	animation: anim 1.6s linear infinite;
}

@-webkit-keyframes anim {
	12.5% {
		stroke-dasharray: 33.98873px, 242.77666px;
		stroke-dashoffset: -26.70543px;
	}
	43.75% {
		stroke-dasharray: 84.97183px, 242.77666px;
		stroke-dashoffset: -84.97183px;
	}
	100% {
		stroke-dasharray: 2.42777px, 242.77666px;
		stroke-dashoffset: -240.34889px;
	}
}

@keyframes anim {
	12.5% {
		stroke-dasharray: 33.98873px, 242.77666px;
		stroke-dashoffset: -26.70543px;
	}
	43.75% {
		stroke-dasharray: 84.97183px, 242.77666px;
		stroke-dashoffset: -84.97183px;
	}
	100% {
		stroke-dasharray: 2.42777px, 242.77666px;
		stroke-dashoffset: -240.34889px;
	}
}

.video-container {
	position: relative;
	padding-bottom: 67%;
}

#index .video-container,
.p31 .video-container{
	padding-bottom: 42.555%;
	background: #a70e16;
}

.video-play,
.video-container iframe,
.video-container video,
.video-container object,
.video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.video-container iframe,
.video-container video,
.video-container object,
.video-container embed {
	pointer-events: none;
}

#index .video-container iframe,
#index .video-container video,
.p31 .video-container iframe{
	pointer-events: all;
}

.fancybox-navigation .fancybox-button--arrow_right div svg,
.fancybox-navigation .fancybox-button--arrow_left div svg {
	display:none;
}


.fancybox-navigation .fancybox-button--arrow_right div:after,
.fancybox-navigation .fancybox-button--arrow_left div:after {
	content: '\e900';
	font-family:'icon';
	font-size:2.2lvh;
	color:#fff;
	cursor: pointer;
}

.fancybox-navigation .fancybox-button--arrow_left div:after {
	content: '\e901';
}


#map {
	height: 100lvh;
	width: 100lvw;
	padding: 0;
	margin: 0;
}

/*** LOGIN ***/

.tx-felogin-pi1 input {
	outline: none;
	border: none;
}

.tx-felogin-pi1 textarea {
	outline: none;
	border: none;
}

.tx-felogin-pi1 textarea:focus, input:focus {
	border-color: transparent !important;
}

.tx-felogin-pi1 input:focus::-webkit-input-placeholder { color:transparent; }
.tx-felogin-pi1 input:focus:-moz-placeholder { color:transparent; }
.tx-felogin-pi1 input:focus::-moz-placeholder { color:transparent; }
.tx-felogin-pi1 input:focus:-ms-input-placeholder { color:transparent; }

.tx-felogin-pi1 textarea:focus::-webkit-input-placeholder { color:transparent; }
.tx-felogin-pi1 textarea:focus:-moz-placeholder { color:transparent; }
.tx-felogin-pi1 textarea:focus::-moz-placeholder { color:transparent; }
.tx-felogin-pi1 textarea:focus:-ms-input-placeholder { color:transparent; }

.tx-felogin-pi1 input::-webkit-input-placeholder { color: #adadad;}
.tx-felogin-pi1 input:-moz-placeholder { color: #adadad;}
.tx-felogin-pi1 input::-moz-placeholder { color: #adadad;}
.tx-felogin-pi1 input:-ms-input-placeholder { color: #adadad;}

.tx-felogin-pi1 textarea::-webkit-input-placeholder { color: #adadad;}
.tx-felogin-pi1 textarea:-moz-placeholder { color: #adadad;}
.tx-felogin-pi1 textarea::-moz-placeholder { color: #adadad;}
.tx-felogin-pi1 textarea:-ms-input-placeholder { color: #adadad;}


/*------------------------------------------------------------------
[ Input ]*/

.wrap-input100 {
	width: 100%;
	position: relative;
	border-bottom: 2px solid #fff;
	margin-bottom: 37px;
}

.input100 {
	font-family: regular;
	color: #fff;
	display: block;
	width: 100%;
	background: transparent;
	padding: 0;
	box-shadow: none !important;
}

/*---------------------------------------------*/
.focus-input100 {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	pointer-events: none;
}

.focus-input100::before {
	content: "";
	display: block;
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 0;
	height: 2px;
	-webkit-transition: all 0.4s;
	-o-transition: all 0.4s;
	-moz-transition: all 0.4s;
	transition: all 0.4s;
	background: #6a7dfe;
	background: -webkit-linear-gradient(left, #e73331, #fff);
	background: -o-linear-gradient(left, #e73331, #fff);
	background: -moz-linear-gradient(left, #e73331, #fff);
	background: linear-gradient(left, #e73331, #fff);
}

.focus-input100::after {
	font-family: regular;
	/*font-size: 15px;*/
	color: #fff;
	line-height: 1.2;
	content: attr(data-placeholder);
	display: block;
	width: 100%;
	position: absolute;
	top: 1rem;
	left: 0;
	/*padding-left: 5px;*/
	-webkit-transition: all 0.4s;
	-o-transition: all 0.4s;
	-moz-transition: all 0.4s;
	transition: all 0.4s;
}

.input100:focus + .focus-input100::after {
	top: -.5rem;
	font-size: .6rem;
	line-height: 1;
}

.input100:focus + .focus-input100::before {
	width: 100%;
}

.has-val.input100 + .focus-input100::after {
	top: -.5rem;
	font-size: .6rem;
	line-height: 1;
}

.has-val.input100 + .focus-input100::before {
	width: 100%;
}

/*PORTFOLIO SPECIAL*/

.screens {
	position: relative;
}

.devices {
	max-width: none !important;
	position: relative;
	z-index: 1;
}

.bright .devices {
	background: url('/fileadmin/user_upload/portfolio_web_bg-light.png');
	background-size: contain;
}

.dark .devices {
	background: url('/fileadmin/user_upload/portfolio_web_bg-dark.png');
	background-size: contain;
	-webkit-box-shadow:inset 0 0 0 10px #343b3c;
	-moz-box-shadow:inset 0 0 0 10px #343b3c;
	box-shadow: inset 0 0 0 10px #343b3c;
}

.d-phone {
	position: absolute;
	top: 1.3%;
	left: 0;
	width: 26.6% !important;
}

.d-desktop {
	position: absolute;
	top: 1.5%;
	right: .6%;
	width: 69.3% !important;
}

/*COOKIE OPT-IN BAR*/

#cookie-bar {
	background:rgba(255,255,255,0.95);
	font-size:12px;
	position:fixed;
	z-index:9999;
	width:100%;
	bottom:0;
	left:0;
	width:100%;
	padding: 0;
}

#cookie-bar .cb-buttons {
	text-align: right;
	display: block;
	position: relative;
	float: right;
	color: white !important;
}
@media (max-width: 630px) {
	#cookie-bar .cb-buttons {
		/* text-align: right; */
		text-align: center;
		width: 100%;
		margin-top: 20px;
		float: left;
	}
	#cookie-bar .cb-check {
		display: block !important;
		text-align: center;
	}

	#cookie-bar .savesettings {
		margin-left: 0 !important;margin-top: 10px
	}
}

#cookie-bar .cd-outer {padding:1rem 0;width:100%; max-width:1245px; margin:0 auto;position:relative;}
#cookie-bar .cd-outer::after{
	content: '';
	display: table;
	clear: both;
}

@media (max-width: 1250px) {
	#cookie-bar .cd-outer {
		width: 96%;
	}
}

#cookie-bar .cb-label {
	color: #000;
	display: block;
	width: 100%;
	font-size: 1em;
	margin-bottom: 1em;
}

#cookie-bar .cb-label a {
	color:#ae0e16;
	font-weight:bold;
}

#cookie-bar .detail,#cookie-bar .savesettings{
	border: 2px solid #666;
	color: #666;
	text-decoration: none;
	padding: 6px 60px;
	display: inline-block;
	font-size:16px;
	font-weight: bold;
	margin-left: 2rem;

}


#cookie-bar .cb-enable,
#cookie-bar .cb-disable,
#cookie-bar .cb-policy,
#cookie-bar .cb-enable:hover,
#cookie-bar .cb-disable:hover,
#cookie-bar .cb-policy:hover  {
	border: 2px solid #ae0e16;
	color: #ae0e16;
	text-decoration: none;
	padding: 6px 60px;
	display: inline-block;
	font-size:16px;
	font-weight: bold;
}

#cookie-bar .cb-check{
	display: inline-flex;
	position: relative;
	align-items: center;

}


#cookie-bar .cb-check label{
	position: relative;
	font-size: 1.4em;
	color: #666;
	display:inline;
	margin-left: 0;
	vertical-align: super;
}

#cookie-bar .cb-check input[type="checkbox"]{
	position: relative;
	display: inline-block;
	width: 21px;
	height: 21px;
	margin-right: 10px;
	border: 2px solid #666;
	-webkit-appearance: none;
	float:none;
}
/*
#cookie-bar .cb-check input[type="checkbox"]:focus{
	outline:0;
}*/

#cookie-bar .cb-check input[type="checkbox"]:nth-of-type(2){
	margin-left: 40px;
}

#cookie-bar .cb-check input[type="checkbox"]:checked{
	background-image: url('../Icons/icon-checked.png');
	background-repeat: no-repeat;
	background-position: 50%;
}

#cookie-bar .cb-check input[type="checkbox"][readonly]{
	background-color: #ccc;
	border: none;
	background-image: url('../Icons/icon-checked-readonly.png');
	background-repeat: no-repeat;
	background-position: 50%;
}

#cookie-bar .cb-check input[type="checkbox"][readonly] + label{
	color: #ccc;
}
#cookie-bar input[type="checkbox"]:focus {
	border-color: #666 !important;
}

#cookie-bar .cb-details{
	position: relative;
	display: block;
	width: 100%;
	clear: both;
	top: 17px;
}

#cookie-bar .cb-details.accordion{
	max-height: 25px;
	overflow: hidden;
	-webkit-transition: height .5s linear;
	-o-transition: height .5s linear;
	transition: height .5s linear;
}

#cookie-bar .cb-details.accordion.active {
	max-height: 100%;
}

#cookie-bar .cb-details label.cb-action{
	display: block;
	text-align: right;
	font-weight: bold;
	color: #ae0e16;
	cursor: pointer;
	float: right;
}

#cookie-bar .cb-details label.cb-action:after{
	content: '';
	display: inline-block;
	position: relative;
	width: 12px; height: 12px;
	margin-left: 3px;
	background-image: url('../Icons/gfx-arrow-right-red.png');
	background-repeat: no-repeat;
	background-position: 150% 100%;
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

#cookie-bar .cb-details.accordion.active label.cb-action:after {
	background-position: 35% 100%;
	-webkit-transform: rotate(270deg);
	-ms-transform: rotate(270deg);
	transform: rotate(270deg);
}

#cookie-bar .cb-details p{
	clear: both;
	margin-top: 1.7em;
	padding: 0;
	position: relative;
	width: 100%;
	color: #000;
	font-size: 1em !important;
}

#cookie-bar .cb-details strong{
	position: relative;
	display: block;
	color: #666;
	font-weight: bold;
}

#cookie-bar .cb-details strong:nth-of-type(2){
	margin-top: 1em;
}

#cookie-bar .cb-disable,
#cookie-bar .cb-policy {
	border:2px solid #ae0e16;
	color: #ae0e16;
}

#cookie-bar .cb-policy,
#cookie-bar .cb-disable {margin-left:5px;}

/*@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {*/
/*	#cookie-bar {*/
/*		position: relative;*/
/*	}*/
/*}*/

/*RESPONSIVE FIXES*/

@media (min-width: 550px) and (max-width: 1280px)  /* ~991px ÷ 16 */ {
	.intro .logo:before {
		font-size: 1.5lvh;
		top: -.1lvh;
	}

	.container,
	header.sticky .container	{
		width: 80%;
	}
	.cc-window .container {
		width: 100%;
	}
	.cc-message {
		padding:10px;
		width:100%;
	}
	.cc-window.cc-floating {
		padding: 0 !important;
	}
	.cc-message + .c1 {
		width: 0;
	}
	.cc-compliance {
		width:100%;
		float:none;
		margin-bottom:10px;
	}
}

@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 192dpi)  /* ~991px ÷ 16 */ {
	.container,
	header.sticky .container	{
		width: 80%;
	}
	.cc-window .container {
		width: 100%;
	}
}

@media (max-width: 414px) {
	p {
		font-size: 2.4lvh;
	}
}

@media (max-width: 375px)and (-webkit-device-pixel-ratio : 3) {
	p {
		font-size: 2.1lvh;
	}
	.dark li, .bright li {
		font-size: 2.1lvh;
	}

	.container, header.sticky .container {
		width: 90%;
	}
}

@media (max-width: 812px) and (-webkit-device-pixel-ratio : 3) and (orientation:landscape),
(max-width: 812px) and (-webkit-device-pixel-ratio : 2) and (orientation:landscape){
	html {
		font-size: calc(.1em + 2lvw);
	}
	footer a,
	footer span,
	footer a.icon::after,
	p {
		font-size: 2.1lvw;
	}
	p.subtitle {
		font-size: 4lvw;
	}
	.title, .title span {
		font-size: 2.5lvw !important;
	}

	#karriere a.bubble,
	.grid .c3,
	intro .title {
		font-size: 2.5lvw !important;
	}
	.intro .subtitle, .intro .subtitle span {
		font-size: 3lvw;
	}
	.intro .logo::before {
		font-size: 1.5lvw !important;
		top: -1.5lvw !important;
	}

	#wording {
		width: 45lvw;
	}
	#wording .term span {
		font-size: 1.8lvw;
	}
	#wording .term span::after {
		font-size: 1.8lvw;
	}
	#wording .term strong {
		font-size: 3lvw;
	}
	#wording .term strong::after {
		font-size: 3.4lvw;
	}
	#wording .definition {
		max-width: 44lvw;
	}
	#index #p2 .grid .c3 span br {
		display:none;
	}
	#index #p3 .grid .c3 ul{
		display:none;
	}
	#index #p3 .grid .c3  {
		width: 45%;
		display: inline-block;
	}
	#index #p3 .grid .c3 img {
		margin-left: 20%;
		width: 60%;
	}
	.portfolio-nav .grid .c3 {
		font-size: 2.2lvw;
		height: 25lvh;
		width: 24.7%;
		float:left;
		position: relative;
	}
	section.images .c4 {
		width: 33.3333%;
		float: left;
	}
	.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
		height: .9lvh;
	}
	header .header,
	header {
		height: 10lvh;
	}
	header .logo a::after {
		font-size: 1.8lvw;
		top: 1.5lvw;
	}
	.overlay .main-nav a, .page-layer a {
		font-size: 6lvw;
	}
	.team .grid .c2 {
		margin: .2rem;
		width: 15%;
		float: left;
	}
}

@media (max-width: 812px) and (-webkit-device-pixel-ratio : 3) and (orientation:portrait),
(max-width: 812px) and (-webkit-device-pixel-ratio : 2) and (orientation:portrait){

	section:not(.intro) .scroll,
	#cd-vertical-nav {
		display:none;
	}

	#index section#p1:not(.intro) .container, section.fullscreen .container {
		position: relative;
		top: auto;
		transform: none;
	}
	#index section#p1:not(.intro) {
		position: relative;
		height: auto;
	}
}

@media (min-width: 800px) and (max-width: 1280px)  /* ~991px ÷ 16 */ {
	.intro .logo:before {
		font-size: 1.5lvh;
		top: -.1lvh;
	}

	#wording .term strong {
		font-size: 3lvh;
		margin-top: 0;
	}

	#wording .term strong::after {
		font-size: 3lvh;
	}

	.container,
	header.sticky .container	{
		width: 80%;
	}
	.cc-window .container {
		width: 100%;
	}
	.cc-message {
		padding:10px;
		width:100%;
	}
	.cc-window.cc-floating {
		padding: 0 !important;
	}
	.cc-message + .c1 {
		width: 0;
	}
	.cc-compliance {
		width:100%;
		float:none;
		margin-bottom:10px;
	}
}

@media (max-width: 1280px) and (orientation:portrait)  {

	header.sticky .row {
		overflow: hidden;
	}

	#scroll-p0 {
		bottom: 8lvh;
	}

	.swiper-container-horizontal > .swiper-pagination-bullets {
		bottom: 6lvh;
	}

	.portfolio-nav .grid .c3 {
		font-size: 2.5lvh;
		height: auto;
		border-bottom: 1px solid #fff;
	}

	.portfolio-nav .grid .row .c3:last-child {
		border-bottom: 0;
	}

	.portfolio-nav .grid .c3 a br {
		display:none;
	}

	.portfolio-nav .grid .row {
		border-top: 1px solid #fff;
	}

	.portfolio-nav .grid .c3 span {
		display: inline-block;
		position: initial;
		left: 0;
		top: 0;
		transform: none;
		width: 100%;
		text-align: center;
		padding: 1.5lvh 0;
		font-size: 3lvh;
	}

	.portfolio-nav .grid .c3 ul {
		display:none;
	}

	.tx-comatec-projects .subtitle {
		margin-top:3lvh;
	}


	.overlay ul.main-nav,
	.page-layer ul {
		right: auto;
		text-align: left;
	}

	.intro .logo::before {
		position:static;
	}
	.intro .subtitle, .intro .subtitle span {
		font-size: 3lvh;
		margin: 1lvh 0 2lvh 0;
	}
	.intro h1, .intro .claim {
		font-size: 4lvh;
		margin: 1.5lvh 0 0 0;
	}

	.slider .text {
		width: 75lvw;
	}

	.intro .title {
		font-size: 3lvh;
		margin: 0 0 1lvh 3px;
	}

	#cd-vertical-nav .cd-dot {
		height: 3lvw;
		width: 3lvw;
		top: 0.5lvh;
	}

	#cd-vertical-nav li {
		margin: 3lvh 0;
	}

	#wording {
		width: 65lvw;
	}

	#wording .term span {
		font-size: 1.5lvh;
	}

	#wording .term strong {
		font-size: 3lvh;
		margin-top: 0;
	}

	#wording .term strong::after {
		font-size: 3lvh;
	}

	#wording .definition {
		max-width: 100%;
	}

	#index section#p2,
	#index section#p4 {
		padding-top: 10lvh;
	}

	.subpage .cover .title {
		font-size: 3lvh;
	}

	.bullets ul li, ul.ce-bullets li {
		padding-left: 2.5lvh;
		font-size: 2.1lvh !important;
	}

	.team .grid .c2 {
		width: 99%;
		width: 50%;
		float: left;
		margin: 0;
	}

	.team .grid .c2 img {
		margin: 0 auto;
	}

	.team .grid .c2 .cover2 {
		display:none;
	}

	.team .grid .c2 .name {
		font-size: 4lvh;
	}

	.leistungen .grid .c2 .name {
		font-size: 3lvh;
	}

	.team .grid .c2 .name span {
		font-size: 2lvh;
	}

	footer span {
		font-size: 0;
	}

	footer a {
		display:block;
		line-height:2;

	}

	footer a.icon {
		display:initial;
		margin: 0;
	}

	footer span:after {
		content: ' ';
	}

	footer a.icon::after {
		font-size: 8lvw;
		margin-left: -2lvw;
	}

	#index #p3  {
		padding-top: 5lvh;
	}

	#index #p3 ul {
		display:none;
	}

	#karriere a.bubble {
		max-width: 100% !important;
	}

	#karriere .bubble + svg {
		display:none;
	}

	#karriere.subpage:not(.p33)  .intro .row {
		top:auto;
		bottom:15lvh;
		transform:none;
	}

	#karriere.subpage div.bubble {
		font-size: 2.5lvh;
	}

	#karriere.subpage:not(.p33)  #scroll-p0 {
		color:#666;
	}

	.news-grid a img {
		-webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,.3)), to(rgba(0,0,0,.6)));
		mask-image: linear-gradient(to bottom, rgba(0,0,0,.3), rgba(0,0,0,.6));
	}

	.news-grid .item {
		width: 100% !important;
		font-size: 2lvh;
		min-height: 25lvw !important;;
	}
	.news-grid a div + div {
		opacity: 1;
		bottom: 1lvh;
	}

	.p98 section.intro,
	.p99 section.intro {
		min-height:auto;
	}

	.p98 .intro .cover,
	.p99 .intro .cover{
		width: 100lvw;
		height: auto;
	}

	.p98 #p0.picture img,
	.p99 #p0.picture img {
		width: 100lvh;
		height: auto;
		max-width: auto;
		position:static;
		margin-top: -10px;
	}

	.p98 .title,
	.p99 .title{
		margin-top:3lvh;
	}

	.picture-grid .embed-container {
		height: 31lvh;
	}

	/*#index #slick-slide00 img*/
	#index .introslide img {
		-webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,1)), to(rgba(0,0,0,1)));
		mask-image: linear-gradient(to bottom, rgba(0,0,0,1), rgba(0,0,0,1));
	}
	#p0.intro.picture h1, #index .intro .claim {
		background: none;
	}
	.intro .row a {
		width: 100%;
	}

	body#portfolio .intro .row a {
		width: auto;
	}

	.portfolio-nav .grid {
		padding-bottom: 0;
	}

	.portfolio-active #nav-toggle {display:none}

	.overlay-active .overlay {
		background: rgba(0,0,0,.7);
	}

	header .header,
	header .container .c6 {
		min-height: 7.5lvh;
	}
}

@media (aspect-ratio: 3/2) {

	#scroll-p0 {
		bottom: 8lvh;
	}
	.intro .logo::before {
		font-size: 1.5lvh;
		top: .25lvh;
	}

	.news-grid .c1-1,
	.news-grid .c1-2	{
		height: 15lvh;
	}
	.news-grid .c2-2 {
		height: 30lvh;
	}
}

@media (orientation:portrait) {

	.browse .container {
		width:100%;
		padding: 0 2lvh 0 0;
	}

	.browse a {
		font-size:0;
		display:inline-block;
		width: 50%;
	}

	.browse a.next {
		float:right;
		text-align: right;
	}

	.browse a.prev {
		float:left;
	}

	.browse a.next::after,
	.browse a.prev::before {
		font-size: 2lvh !important;
	}

	.picture-grid .container {
		display: block;
	}

	.picture-grid .column-left {
		right:0;
	}

	.picture-grid img.bottom-left {
		position: static;
	}

	.picture-grid .column-right {
		padding-left: 0;
	}

	.picture-grid .gallery {
		width:100%;
	}

	.picture-grid .left,
	.picture-grid .right {
		float:none;
	}

	.picture-grid img.full-size  {
		position: static !important;
		margin: 0 !important;
	}

	#karriere .intro .cover {
		padding-bottom: 1rem;
	}

	#karriere #p0.picture .cover .container {
		width: 100%;
		margin: 25rem 0 0 0;
		padding-bottom: 1rem;
	}

	#karriere .bubble {
		border-radius: 5px !important;
		background: rgba(22, 27, 28, 1);
	}

	#karriere .flag {
		display:none;
	}
}

/* VIRTIUELLER MESSESTAND */
.p284 #p3 .container,
.p304 #p3 .container,
.p321 #p3 .container,
.p354 #p3 .container{
	display: none;
}

.p284 #p3,
.p304 #p3,
.p321 #p3,
.p354 #p3{
	padding:0;
}

.p284 iframe,
.p304 iframe,
.p321 iframe,
.p354 iframe{
	top: 0;
	left: 0;
	width: 100%;
	/*height: 94lvh;*/
	height: 94vh;
}

#news-picture.career-entry,
.p284 #news-picture,
.p304 #news-picture,
.p321 #news-picture,
.p354 #news-picture{
	/*height: 7lvh;*/
	height: 7vh;
}

#news-picture.career-entry .gradient,
.p284 .gradient,
.p304 .gradient,
.p321 .gradient,
.p354 .gradient{
	position: absolute;
	top: 0;
	width: 100lvw;
	background: linear-gradient(to bottom, rgba(0,0,0,0.3) 0%,rgba(0,0,0,0) 90%,rgba(0,0,0,0) 100%);
	height: 30lvh;
	z-index: 0;
}


.p284 section:last-of-type:not(.dark),
.p304 section:last-of-type:not(.dark),
.p312 section:last-of-type:not(.dark){
	border: none;
}

@media (orientation:portrait) {C
	.p284 iframe,
	.p304 iframe,
	.p321 iframe,
	.p354 iframe{
		height: 79lvh;
	}
}


@media print {

	header {display:block !important; top:0 !important; border-bottom:2px solid #000;position:static !important; height:auto;}

	header .logo a::after {
		color: #ae0e16 !important;
		font-size: 20pt;
		position: static;
		opacity: 1;
	}

	* {font-size: 12pt !important;}

	strong.icon,
	header .logo a {font-size: 0 !important;}

	img[src="/typo3conf/ext/comatec/Resources/Public/Icons/wusch-wusch.svg"],
	footer,
	footer img,
	header .c6 + .c6,
	#portfolio section.browse,
	.picture-grid .c2:empty,
	.picture-grid .c1:empty,
	.portfolioList .empty,
	.portfolioList a.link,
	.cover img,
	#index .intro,
	#index #p4,
	#karriere #p0 img,
	#cookie-bar,
	.tx-comatec-dictionary,
	.overlay,
	.page-layer,
	.grid ul,
	.grid span br {
		display:none !important;
	}

	header.sticky .container,
	.container {width:100%;}

	.portfolioList .text::after {
		content:'';
	}
	.intro .cover {
		height: inherit;
	}
	.portfolioList .field {
		width: 31%;
	}
	.portfolioList .text {
		font-size:20pt;
	}
	.grid {
		width: 100%;
		margin:0 auto;
		padding-left: .9375rem;
		padding-right: .9375rem;
	}
	.grid .c3 {
		display:block;
		width:100%;
		text-align:left;
		height: inherit;
		white-space: nowrap;
	}
	.grid a {
		display:block;
		text-align:left;
		margin:1em 0;
	}
	.grid .c3 span {
		display: block;
		position: static;
		transform:none;
		width: 100%;
		text-align: left;
	}
	#index #p3 .grid .c3 img {
		filter: none;
		margin: 0 auto;
		width: auto;
	}
	#index #p3 .grid .c3 {
		width:22%;
		display:inline-block;
		text-align:center;
	}

	header .logo a::after {
		color:#ae0e16;
	}

	#portfolio .picture-grid div {
		width:100% !important;
		max-width:100% !important;
		float:none;
		display:block !important;
		position: static !important;
		margin:0 !important;
	}

	#portfolio .picture-grid img  {
		/*max-height: 7cm;*/
		/*width:auto;*/
		width:50% !important;
		max-width:50% !important;
	}

	#portfolio .picture-grid div {
		padding: 0;
	}

	.team .grid .c2 .cover {
		margin-top:1em;
		position: static;
		opacity: 1;
	}

	.team .grid .c2 .name {
		position: static;
		transform:none;
		color:#000 !important;
	}

	.fadeInUp,
	.fadeInRight,
	.fadeInLeft {
		opacity:1 !important;
		-webkit-transform: none !important;
		transform: none !important;
	}
}

/******************  ANIMATION ************/
.PIMSystemschrift{
	stroke-width: 2px;
	stroke-miterlimit: 10;
	stroke-linecap: round;
	stroke-dasharray: 1000;
	stroke-dashoffset: 1000;

}
.fifthLine,.PIMSytem,.fourthLine,.thirdLine,.secondLine,.firstLine{
	stroke-dasharray: 1000;

	stroke-dashoffset: 1000;


}

.last,.sixthsvg,.seventhsvg,.eighthsvg,.ninthsvg,.erp,.produktinformationen,.medien,.sixthLine, .seventhLine,.eighthLine,.ninthLine{
	display: none;


}


@keyframes first {
	to {
		stroke-dashoffset: 0;
	}
}


@media (max-width: 62em) {
	.desktop {
		display: none;
	}
}

@media (min-width: 62em) {
	.mobile {
		display: none;
	}
}

#anim{position:relative}

/************************* Video SWT *****************/
.scrollSvg{width:100%}

@media only screen and (max-width: 1280px) {
	.dnoneImg {visibility:hidden}

	#swt {
		width: 67% !important;
		left: 0 !important;
		height: 57% !important;
		top: 0 !important;
	}
}

@media only screen and (max-width: 992px) {
	#swt{
		width: 100% !important;
		left: 0 !important;
		height: 79% !important;
		top: 0 !important;
	}
}

.project-overview{
	margin-bottom: 3em;
}

.project-overview-header{
	margin-bottom: 1em;
}

.project-overview-header h3{
	text-transform: uppercase;
}

.project-title {
	display: block;
	position: absolute;
	bottom: 0.5em;
	left: 0.5em;
}

/* NEUE KARRIERESEITE */

.ce-bodytext.header-with-pictures {
	display: flex;
	flex-wrap: wrap;
}

.header-with-pictures p {
	width: 100%;
	margin: 2lvh 0!important;
}

.subpage .intro .header-with-pictures img.img-fluid {
	width: 20lvh;
	margin: auto 2lvh auto 0;
	position: initial;
}

h2.hashtag {
	font-size: 4lvh!important;
	font-weight: 400;
	margin-bottom: 1.5lvh;
	hyphens: none;
	line-height: 1.2;
	text-transform: initial;
}

h2.hashtag:after {
	display: none;
}

.button{
	text-align: center;
	margin-top: 3rem;
}

.button a{
	background-color: #ae0e16;
	color: #FFFFFF;
	padding: 0.5rem 1rem;
}

table.hashtag {
	margin-top: 4rem;
}

table.hashtag td.space {
	min-width: 30px;
}

table.hashtag tr.space {
	height: 30px;
}

.header-images {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 2lvh;
	row-gap: 2lvh;
}

.gallery.container {
	width: 80%;
}

.gallery .gallery-row {
	display: flex;
	justify-content: space-between;
	margin: 0;
	flex-wrap: wrap;
}

.gallery img {
	width: auto;
	max-width: 100%;
	margin-bottom: 20px;
}

section > .row .hashtag {
	margin-left: 0.9375rem;
}

#karriere .portfolioList .container {
	margin-bottom: 0;
}

#karriere .portfolioList .description a {
	color: #ae0e16;
	margin: 0;
}

#karriere .portfolioList a .text{
	color: #fff;
}

#karriere .bright.portfolioList a .text{
	color: #343b3c;
}


@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
	section > .row .hashtag {
		margin-left: calc(10% + 0.9375rem);
	}
}

@media (min-width: 550px) and (max-width: 1280px) {
	section > .row .hashtag {
		margin-left: calc(10% + 0.9375rem);
	}
}

@media (min-width: 62em) {
	section > .row .hashtag {
		margin-left: 25%;
	}
}

@media (orientation: portrait) {
	.gallery img {
		width: 100%;
		height: auto;
	}

	.gallery.container {
		width: 100%;
	}
}

.gallery a {
	margin: 0;
}

.gallery a[target="_blank"]:after {
	bottom: calc(20px + 0.5rem);
	right: 0.3rem;
	top: unset;
}

.portfolioList.active .field.active a .text.no-link::after {
	display: none;
}

#karriere .portfolioList .row .field > a > div {
	left: 20%;
}



@media (orientation: portrait) {

	#karriere .field.active > .description {
		display: block;
	}

	#karriere .field.active > .description {
		left: 10%;
		right: 10%;
		width: 80%;
		text-align: left;
	}

	.portfolioList .field > div.description p {
		font-size: 3rem;
		margin-top: 2rem;
	}
}

@media (hover: none) {
	#karriere .field.active > .description {
		display: block;
	}
}

@media (orientation: portrait) {
	#karriere #p13 {
		padding-bottom: 30rem!important;
	}
}

div.margin-top-medium{
	margin-top: 2rem;
}