:root {
	--color-base: #373a3b;
	--color-accent: #092e62;
	--color-light: #d5d3cd;
	--color-dark: #000;
	--color-alert: #d5300a;

	--color-grey: var(--color-light);;
	--color-grey-dark: var(--color-base);;
	--color-blue: #d2ddef;
	--color-blue-dark: #35517d;
	--color-blue2: #a0b2cc;
	--color-blue2-dark: #092e62;

	--color-news: #ddd7c9;
	--color-news-dark: #4b432f;
	--color-product: #dbede0;
	--color-product-dark: #374d3d;
	--color-company: #c2deee;
	--color-company-dark: #37444b;
	--color-reference: var(--color-light);
	--color-reference-dark: #444033;
	--color-contact: #d5e5c3;
	--color-contact-dark: #373e2e;

	--color-header: var(--color-dark);
	--color-header-bg: rgba(255, 255, 255, 0.95);

	--body-color: var(--color-base);
	--body-bg: #fff;
	--link-color: var(--color-accent);
	--link-color-hover: var(--color-accent);

	--nav-bg: rgba(0,0,0,0.9);
	--nav-color: #fff;
	--nav-color-hover: var(--color-light);
	--nav-color-active: var(--color-light);
	--nav-color-border: rgba(255, 255, 255, 0.5);

	--form-color: var(--color-base);
	--form-fieldset: var(--color-accent);
	--form-placeholder: #555555;
	--form-border: var(--color-base);
	--form-bg: #fff;
	--form-bg-hover: #e0e0e0;
	--form-border-hover: var(--color-accent);
	--form-border-focus: var(--color-accent);
	--form-bg-focus: var(--form-bg-hover);

	--button: var(--body-bg);
	--button-bg: var(--color-accent);
	--button-hover: var(--color-accent);
	--button-hover-bg: var(--body-bg);

	--body-size: 18px;
	--h1-size: 2.5rem;
	--h2-size: 2.5rem;
	--h3-size: 1.4rem;
	--header-size: 1.4rem;

	--plyr-color-main: var(--color-accent);
	--plyr-video-progress-buffered-background: #fff;
}


* {
	box-sizing: border-box;
	outline: none;
}

a {
	color: var(--color-accent);
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	text-decoration: underline;
}
a:hover {
	text-decoration: none;
	color: inherit;
}
section a:focus,
footer a:focus {
	outline: 1px dotted var(--color-accent);
	display: inline-block;
}
a[href^="tel:"] {
	color: inherit;
	text-decoration: none;
}

html {
	-webkit-text-size-adjust: 100%;
}

html, body {
	margin: 0;
	padding: 0;
	background-color: var(--body-bg);
}

body {
	color: var(--body-color);
	font-size: var(--body-size);
	font-family: 'Fira Sans', sans-serif;
}

strong {
	font-weight: 600;
}

img {
	border: 0;
	outline: none;
	max-width: 100%;
}

/* headlines */
h1, h2, h3, h4, h5, .h1 {
	margin: 0;
	padding: 0;
}
h1, .h1 {
	font-size: var(--h1-size);
	font-weight: 200;
	text-transform: uppercase;
}
h2 {
	font-size: var(--h2-size);
	font-weight: 200;
	text-transform: uppercase;
}
h3 {
	font-size: var(--h3-size);
	font-weight: 600;
}

h2 span {
	display: block;
	margin-bottom: 1em;
}

h2 span.colored {
	background-color: var(--color-base);
	color: var(--body-bg);
	display: inline-block;
	font-size: 65%;
	font-weight: 400;
	letter-spacing: 3px;
	line-height: 30px;
	margin-bottom: 25px;
	padding-left: 10px;
	padding-right: 10px;
	padding-top: 4px;
	position: relative;
	text-transform: uppercase;
}

/* grid */
.wrapper {
	padding: 20px 30px;
	width: 94%;
	max-width: 1480px;
	margin: 0 auto;
}

section {
	margin-bottom: 60px;
}

section.no-gap {
	margin-bottom: 0;
}
section.narrow {
	max-width: 80rem;
	margin: 0 auto;
}

.row {
	margin: -10px -15px;
	padding-top: 5px;
	padding-bottom: 5px;
}

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

.grid {
	float: left;
	padding: 10px 15px;
}

.fbH {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}
.fbH>.grid {
	display: flex;
}

/*
.xgridwrapper {
	display: flex;
}

.xgrid {
	padding-left: 15px;
	padding-right: 15px;
	padding-top: 10px;
	padding-bottom: 10px;
}

.inset1 {
	margin-left: 8.33333%;
}

.outset1 {
	margin-right: 8.33333%;
}

.grid2 {
	width: 16.66666%;
}

.xgrid3 {
	flex-basis: 25%;
}

.grid5 {
	width: 41.66666%;
}

.xgrid6 {
	flex-basis: 50%;
}

.grid7 {
	width: 58.33333%;
}
*/
.grid3 {
	width: 25%;
}
.grid4 {
	width: 33.33333%;
}
.grid6 {
	width: 50%;
}
.grid8 {
	width: 66.66666%;
}
.grid12 {
	width: 100%;
}

.fullwidth .row,
.fullwidth-padding .row {
	margin-left: 0;
	margin-right: 0;
}

.fullwidth .row .grid {
	padding-left: 0;
	padding-right: 0;
}



/* assets */
.centered-viewbox {
	margin: 0;
	text-align: left;
}

/*
.follow-up {
	margin-top: 15px;
}

.follow-up-gap {
	margin-top: 40px;
}
*/

img.expand {
	width: 100%;
	height: auto;
	display: block;
}

.visually-hidden {
	position: absolute;
	overflow: hidden;
	clip: rect(0 0 0 0);
	height: 1px;
	width: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
}
.skip-link {
	position: absolute;
	left: -10000px;
	top: auto;
	overflow: hidden;
	background-color: var(--color-alert);
	color: var(--body-bg);
	padding: 0.2em 0.5em;
	z-index: 99999;
}
.skip-link:focus {
	left: 0;
}

/* buttons/links */
.btn {
	border: 1px solid var(--button-bg);
	color: var(--button);
	background-color: var(--button-bg);
}

.btn:hover,
.btn:focus {
	color: var(--button-hover);
	background-color: var(--button-hover-bg);
}

/* top navigation */
nav {
	background-color: var(--nav-bg);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 999;
	transition: all 300ms ease-out;
}

nav ul, nav li {
	display: block;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

nav li {
	float: left;
	margin-right: 20px;
}

nav li a {
	color: var(--nav-color);
	line-height: 50px;
	font-size: 1.4rem;
	font-weight: 600;
	text-decoration: none;
	text-transform: uppercase;
	border-bottom: 4px solid transparent;
	padding-bottom: 8px;
}

nav li a:hover,
nav li a:focus {
	color: var(--nav-color-hover);
}

nav li:hover a,
nav li a:focus,
nav li:focus-within a {
	border-bottom-color: var(--nav-color-border);
}

nav li:hover ul li a,
nav li a:focus ul li a,
nav li:focus-within ul li a {
	border-bottom-color: transparent;
}

nav li:hover ul,
nav li:focus-within ul {
	display: block;
	float: none;
	position: absolute;
	background-color: rgba(40, 40, 40, 0.95);
	margin-left: -15px;
	padding: 15px;
}

nav li ul li {
	float: none;
}

nav li ul li a {
	color: #fff !important;
	font-size: 95%;
	line-height: 1.7;
	font-weight: 600;
	text-transform: none;
}

nav li ul li a:hover,
nav li ul li a:focus {
	color: var(--nav-color-hover);
	text-decoration: underline;
}

nav li a.active {
	color: var(--nav-color-active);
	font-weight: 200;
}
/*
nav li:hover a,
nav li a.active,
nav li a.active:hover,
nav li:focus a,
nav li a.active:focus {
	color: #d5d3cd;
}


.color-news nav,
.color-news nav ul li:hover ul,
.color-news nav ul li:focus-within ul {
	background-color: var(--color-news-dark);
}
.color-news nav ul li ul li a:hover,
.color-news nav ul li ul li a:focus {
	color: #ccc !important;
}
.color-news nav li a.active,
.color-news nav li a.active:hover,
.color-news nav li a.active:focus {
	color: #71c3c5;
}

.color-product nav,
.color-product nav ul li:hover ul,
.color-product nav ul li:focus-within ul {
	background-color: var(--color-product-dark);
}
.color-product nav ul li ul li a:hover,
.color-product nav ul li ul li a:focus {
	color: #ccc !important;
}
.color-product nav li a.active,
.color-product nav li a.active:hover,
.color-product nav li a.active:focus {
	color: #aed193;
}

.color-company nav,
.color-company nav ul li:hover ul,
.color-company nav ul li:focus-within ul {
	background-color: var(--color-company-dark);
}
.color-company nav ul li ul li a:hover,
.color-company nav ul li ul li a:focus {
	color: #ccc !important;
}
.color-company nav li a.active,
.color-company nav li a.active:hover,
.color-company nav li a.active:focus {
	color: #d2ddef;
}

.color-reference nav,
.color-reference nav ul li:hover ul,
.color-reference nav ul li:focus-within ul {
	background-color: var(--color-reference-dark);
}
.color-reference nav ul li ul li a:hover,
.color-reference nav ul li ul li a:focus {
	color: #ccc !important;
}
.color-reference nav li a.active,
.color-reference nav li a.active:hover,
.color-reference nav li a.active:focus {
	color: #92a8ba;
}

.color-contact nav,
.color-contact nav ul li:hover ul,
.color-contact nav ul li:focus-within ul {
	background-color: var(--color-contact-dark);
}
.color-contact nav ul li ul li a:hover,
.color-contact nav ul li ul li a:focus {
	color: #ccc !important;
}
.color-contact nav li a.active,
.color-contact nav li a.active:hover,
.color-contact nav li a.active:focus {
	color: #92a8ba;
}
 */

nav>.wrapper {
	position: relative;
	padding-top: 0;
	padding-bottom: 0;
}

.nav-toggler, #toggle {
	display: none;
}

nav aside.logo {
	position: absolute;
	right: 30px;
	top: 0;
	z-index: 10;
}

nav aside.logo img {
	height: auto;
	width: 260px;
}

nav ul li ul {
	display: none;
}

.links_umfliessen {
	float: left;
	margin: 0 10px 10px 0;
}

.rechts_umfliessen {
	float: right;
	margin: 0 0 10px 10px;
}
.upper {
	letter-spacing: 1px;
	text-transform: uppercase;
}
.invers {
	color: var(--color-dark);
	background-color: rgba(255, 255, 255, 0.95);
	padding: 0.2rem 1.2rem;
}
.size130 {
	font-size: 130%;
	line-height: 1.2;
}
.padding {
	padding: 1rem;
}
.margin-vertical-s {
	margin-top: 1rem;
	margin-bottom: 1rem;
}
.margin-vertical-m {
	margin-top: 2rem;
	margin-bottom: 2rem;
}
.margin-vertical-l {
	margin-top: 3rem;
	margin-bottom: 3rem;
}


.header-slider {
	min-height: 300px;
}

.h1 {
	font-size: 320%;
	font-weight: 200;
	line-height: 1.3;
	margin: 0;
}
.h2 {
	font-size: 230%;
	font-weight: 400;
	line-height: 1.3;
	margin: 0;
}

.teaser {
	color: #fff;
	text-align: left;
	padding-top: 190px;
	padding-bottom: 90px;
}
.teaser .h1,
.teaser .h2 {
	color: var(--color-dark);
}

.teaser a.btn, .btn {
	display: inline-block;
	color: var(--button);
	font-size: 1.2rem;
	letter-spacing: 1px;
	line-height: 1;
	text-transform: uppercase;
	text-decoration: none;
	padding: 9px 25px 6px 25px;
	margin: 0 10px;
	background-color: var(--button-bg);
}
.teaser a.btn:hover,
.teaser a.btn:focus {
	color: var(--button-hover);
	background-color: var(--button-hover-bg);
}

.view-stoerer,
.teaser-empty {
	font-size: var(--header-size);
	font-weight: 400;
	text-align: left;
	line-height: 1.2;
}

.view-stoerer {
	overflow: hidden;
}

.view-stoerer-body {
	padding: 60px;
}

.view-stoerer-title {
	font-size: var(--h1-size);
	font-weight: 200;
	text-transform: uppercase;
}


.banner {
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.bg-fixed {
	background-attachment: fixed;
}
/*
.fx-imageblend {
	height: 100%;
	position: absolute;
	width: 100%;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	background-attachment: fixed;
	opacity: 0;
}
*/
.banner h1, .banner h2, .banner .h1 {
	font-size: 380%;
	line-height: 1.3;
}

.banner h2 {
	font-size: 260%;
	font-weight: 200;
	text-transform: uppercase;
}

.banner-content {
	text-align: left;
	padding-top: 60px;
	padding-bottom: 90px;
	color: var(--color-header);
	position: relative;
}

.banner-content h2 span {
	margin: 0;
}
.banner-content span {
	color: var(--color-header);
	background-color: var(--color-header-bg);
	padding: 0.4rem 1.2rem;
	display: inline-block;
}

.banner-content p {
	font-size: 160%;
	margin: 0;
}

/*
.color-news section.rowcolor-nav .banner-content:after {
	background-image: url(banner-arrow-news.svg);
}
.color-product section.rowcolor-nav .banner-content:after {
	background-image: url(banner-arrow-product.svg);
}
.color-company section.rowcolor-nav .banner-content:after {
	background-image: url(banner-arrow-company.svg);
}
.color-reference section.rowcolor-nav .banner-content:after {
	background-image: url(banner-arrow-reference.svg);
}
.color-contact section.rowcolor-nav .banner-content:after {
	background-image: url(banner-arrow-contact.svg);
}
section.rowcolor-grey .banner-content:after {
	background-image: url(banner-arrow-grey.svg);
}
section.rowcolor-blue .banner-content:after {
	background-image: url(banner-arrow-blue.svg);
}
section.rowcolor-blue2 .banner-content:after {
	background-image: url(banner-arrow-blue2.svg);
}
*/
/* Videobox */
.videoconsent {
	background-color: #ccc;
	padding: 3rem 2rem;
	text-align: center;
}
.videoconsent a.consent_manager-show-box,
.videoconsent a.consent_manager-show-box-reload {
	cursor: pointer;
}
.plyrvideo .caption {
	color: var(--body-bg);
	background-color: var(--color-dark);
	font-size: 80%;
	padding: 0.4rem 1rem 0.3rem 1rem;
}

/* Fotorama Startbild */
.slider-fotorama-preview .teaser-image {
	line-height: 0;
}
.slider-fotorama-preview .caption {
	color: var(--color-base);
	background-color: var(--color-light);
	letter-spacing: 2px;
	text-align: center;
	line-height: 77px;
	text-transform: uppercase;
}
.slider-fotorama-preview .caption a {
	text-decoration: none;
}

/*
.fx-mainbanner {
	background-attachment: fixed;
	background-position: center center;
}

.colored_1 {
	background-color: var(--color-grey);
}

.colored_1 .banner-content:after {
	background-image: url(img/asset-tooltip-slide-f1edea.svg);
}


.banner-content-footer {
	margin-top: 60px;
}

.banner-content-footer a, .btn {
	display: inline-block;
	padding-left: 25px;
	padding-right: 25px;
	padding-top: 9px;
	padding-bottom: 6px;
	margin-left: 10px;
	margin-right: 10px;
	font-family: 'Fira Sans';
	letter-spacing: 1px;
	line-height: 1;
	text-transform: uppercase;
	color: #fff;
	text-decoration: none;
	background-color: rgba(134, 121, 105, 0.8);
}

.banner-content-footer a {
	font-weight: 600;
	letter-spacing: 3px;
}

.banner-content-footer a:hover {
	background-color: #fff;
	color: #092e62;
}

.banner-content-footer a:active {
	background-color: rgba(9, 46, 98, 1);
}
*/
.fotorama__stage:focus {
	border: 1px dotted var(--color-accent);
}
.fotorama__caption {
	display: block;
	background-color: rgba(255, 255, 255, 0.8);
}

.fotorama--fullscreen .fotorama__caption, .video .fotorama__caption {
	display: block;
	background-color: rgba(255, 255, 255, 0.9);
}

.fotorama__caption__wrap {
	background-color: transparent;
}

.video .fotorama__caption {
	color: #fff !important;
	background-color: #000;
	padding-left: 10px;
}

/* header */
header {
	padding-top: 7rem;
	margin-top: 0;
	margin-bottom: 3rem;
	padding-bottom: 0.6rem;
	height: 18rem;
}
header .centered-viewbox {
	max-width: 46em;
}
header h1,
header h2,
header h3,
header h4,
header h5,
header h6 {
	color: var(--color-header);
}
header p,
header h2 {
	color: var(--color-header);
	font-weight: 400;
	font-size: var(--header-size);
	line-height: 1.2;
	margin-top: 10px;
	text-transform: none;
}

/* teaser */
.teaser-item {
	padding-bottom: 40px;
}
.teaser-item h4 {
	font-size: inherit;
	letter-spacing: normal;
	margin-bottom: 10px;
}
.teaser-item.dark h4 {
	color: #fff;
}
.teaser-item.padding {
	padding-bottom: 1rem;
}
.teaser-item.padding h4,
.teaser-item .teaser-content.padding h4 {
	text-transform: uppercase;
}
.teaser-item h4 a {
	color: inherit;
	text-decoration: none;
	display: block;
}
.teaser-item h4 a:hover {
	text-decoration: underline;
}
.teaser-item p {
	padding: 0;
	margin: 0 0 15px;
	-moz-hyphens: auto;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}
.teaser-item p ~ a {
	display: inline-block;
	line-height: 1;
	color: var(--color-accent);
	padding-bottom: 2px;
	border-bottom: 1px solid var(--color-accent);
	text-decoration: none;
}
.teaser-item .teaser-image {
	position: relative;
	line-height: 0;
}
.teaser-item .teaser-content {
	margin-top: 20px;
}
.teaser-item.dark .teaser-content {
	color: var(--body-bg);
}
.teaser-item.padding .teaser-content {
	margin-top: 24px;
}
.teaser-item .teaser-content.padding {
	padding-top: 0;
}
.teaser-item.arrow .teaser-image:after {
    position: absolute;
    border-color: rgba(0, 0, 0, 0);
    border-bottom-color: var(--color-grey);
    border-style: solid;
    border-width: 0 20px 20px;
    content: "";
    width: 0;
    height: 0;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
}
.teaser-item.arrow.dark .teaser-image:after {
    border-bottom-color: #777;
}

/* Produktliste */
.img-teaser {
	text-decoration: none;
	display: block;
}
.img-teaser img {
	transition: transform 150ms ease-in;
	display: block;
}
.img-teaser:hover img,
.img-teaser:focus-within img {
	transform: scale(1.1) translateY(-9px);
}
.img-teaser .img-footer {
	text-align: center;
	height: 40px;
	margin-bottom: 20px;
	background-color: var(--body-bg);
}
.img-teaser .img-image {
	overflow: hidden;
}
.img-teaser .img-footer h6,
h6.btn {
	text-align: center;
	text-transform: uppercase;
	padding: 0;
	margin: 0;
	color: var(--button-hover);
	height: 2.3em;
	font-size: 17px;
	line-height: .9;
	position: relative;
	border: 1px solid var(--button-hover);
	background-color: var(--button-hover-bg);
	top: 1em;
	display: flex;
	align-items: center;
}
.img-teaser .img-footer h6 span,
h6.btn span {
	text-align: center;
	width: 100%;
	text-decoration: none !important;
	font-family: 'Fira Sans', sans-serif;
}
.img-teaser:hover h6,
h6.btn:hover,
.img-teaser:focus-within h6,
h6.btn:focus {
	transition: all 200ms ease-in-out;
	background-color: var(--button-bg);
	color: var(--button);
}

/* Bildbox */
.box-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(24%, 1fr));
	grid-auto-rows: 1fr;
	grid-gap: 0.5rem;
}
.box-grid.no-gap {
	grid-gap: 0;
}
.box-grid.cols2 {
	grid-template-columns: repeat(auto-fit, minmax(460px, 1fr));
}
.box-grid.cols2.perc {
	grid-template-columns: repeat(auto-fit, minmax(40%, 1fr));
}
.box-grid.cols3 {
	grid-template-columns: repeat(auto-fit, minmax(356px, 1fr));
}
.box-grid.cols3.perc {
	grid-template-columns: repeat(auto-fit, minmax(28%, 1fr));
}
.box-grid.cols4 {
	grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
}
.box-grid.cols4.perc {
	grid-template-columns: repeat(auto-fit, minmax(22%, 1fr));
}
.box-grid.cols5 {
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}
.box-grid.cols5.perc {
	grid-template-columns: repeat(auto-fit, minmax(17%, 1fr));
}
.box-grid.cols6 {
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}
.box-grid.cols6.perc {
	grid-template-columns: repeat(auto-fit, minmax(15%, 1fr));
}
.box-grid.cols7 {
	grid-template-columns: repeat(auto-fit, minmax(178px, 1fr));
}
.box-grid.cols7.perc {
	grid-template-columns: repeat(auto-fit, minmax(13%, 1fr));
}
.box-grid.cols8 {
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}
.box-grid.cols8.perc {
	grid-template-columns: repeat(auto-fit, minmax(10%, 1fr));
}
.box-grid::before {
	content: '';
	width: 0;
	padding-bottom: 100%;
	grid-row: 1;
	grid-column: 1;
}

.box-grid.row66::before {
	padding-bottom: 66.6666%;
}
.box-grid.row56::before {
	padding-bottom: 56.25%;
}
.box-grid.row42::before {
	padding-bottom: 42.8571%;
}
.box-grid>.col:first-child {
	grid-row: 1;
	grid-column: 1;
}
.box-grid .col {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	transition: all 0.4s;
}
.box-grid .col .content {
	display: block;
	margin: 0;
	height: 100%;
	position: relative;
	transition: all 0.4s;
}
.box-grid .col:hover {
	transform: scale(1.05);
	box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.2);
}
.box-grid .col .content img {
	width: 100%;
}
.box-grid .col .content>span {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	padding: 14%;
	width: 100%;
	text-align: center;
}
.box-grid .col .content>span>span {
	color: var(--body-bg);
	text-transform: uppercase;
	font-size: 1.4rem;
	font-weight: 500;
}

/* Formularformate #####################*/
.yform {
	font-size: 1rem;
}

label {
	display: block;
}
fieldset {
	border: none;
	padding: 0;
	margin-bottom:2rem
}

legend {
	color: var(--form-fieldset);
	font-weight: bold;
	padding: 0 0 0.5rem 0;
	font-size: 1.2rem;
}

input, 
select, 
textarea {
	color: var(--form-color);
	border: 1px solid var(--form-border);
	background-color: var(--form-bg);
	width: 100%;
	font-size: 1rem;
	font-family: 'Fira Sans', sans-serif;
}

input,
textarea {
	padding: 0.4em 0.3em;
}

input[type="checkbox"],
input[type="radio"] {
	border: none;
	width: auto;
	margin: 0 0.6em 0.2em 0;
	vertical-align: middle;
}
.checkbox,
.radio {
	margin: 0 0 0.6em 0;
}
.radio {
	display: inline-block;
	width: 33%;
}
.checkbox label,
.radio label {
	display: inline-block;
	padding: 1px 3px 1px 0;
}
.checkbox label:focus-within,
.radio label:focus-within {
	background-color: var(--form-bg-focus);
}
.form-group,
.yform-element {
	margin: 0 0 1em 0;
}

input:hover, 
select:hover, 
textarea:hover {
	border-color: var(--form-border-hover);
}

input:focus, 
select:focus, 
textarea:focus {
	border: 1px solid var(--form-border-focus);
	background-color: var(--form-bg-focus);
}

button {
	color: var(--button);
	background-color: var(--button-bg);
	background-repeat: repeat-x;
	border-color: var(--button-bg);
	border-style: solid;
	border-width: 1px;
	cursor: pointer;
	padding: 0.2em 0.6em;
}
button:hover, 
button:active {
	background-color: var(--button-hover-bg);
	color: var(--button-hover);
	text-decoration: none;
}

::-moz-placeholder { color: #555555; }
::-webkit-input-placeholder { color: #555555; }
:-ms-input-placeholder { color: #555555; }

.yform .alert {
	color: var(--color-alert);
}
/*
.yform .has-error label {
	color: var(--color-alert);
}
*/
.yform .has-error input,
.yform .has-error select,
.yform .has-error textarea{
	border-color: var(--color-alert);
}
.yform p.help-block {
	width: 100%;
	margin: .4em 0 1em 0;
}
.yform .help-block .text-warning {
	color: var(--color-alert);
}
.checkbox-push {
	margin-top: 1.2em;
}
/* END Formularformate */

/* Preloader #####################*/
.cPreloader {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  height: 100%;
  width: 100%;
  background: rgba(250, 250, 250, 1);
}
.cPreloader .preloader {
  background: transparent;
  border: 8px solid var(--color-light);
  border-top: 8px solid var(--color-accent);
  border-radius: 50%;
  width: 80px;
  height: 80px;
  animation: spin 1.5s linear infinite;
  margin: -40px 0 0 -40px;
  left: 50%;
  top: 50%;
  position: absolute;
}
@-ms-keyframes spin {
  from { -ms-transform: rotate(0deg); }
  to { -ms-transform: rotate(360deg); }
}
@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
@-ms-keyframes spin2 {
  from { -ms-transform: rotate(360deg); }
  to { -ms-transform: rotate(0deg); }
}
@keyframes spin2 {
  from { transform: rotate(360deg); }
  to { transform: rotate(0deg); }
}
/* END Preloader */


/* colors */
.color-news header {
	background-color: var(--color-news);
}
.color-product header {
	background-color: var(--color-product);
}
.color-company header {
	background-color: var(--color-company);
}
.color-reference header {
	background-color: var(--color-reference);
}
.color-contact header {
	background-color: var(--color-contact);
}

.color-news section.rowcolor-nav,
.color-news .view-stoerer.rowcolor-nav.colored-bg,
.color-news .teaser-item.rowcolor-nav,
.color-news .slider-fotorama-preview .caption,
.box-grid .col.color-news {
	background-color: var(--color-news);
}
.color-product section.rowcolor-nav,
.color-product .view-stoerer.rowcolor-nav.colored-bg,
.color-product .teaser-item.rowcolor-nav,
.color-product .slider-fotorama-preview .caption,
.box-grid .col.color-product {
	background-color: var(--color-product);
}
.color-company section.rowcolor-nav,
.color-company .view-stoerer.rowcolor-nav.colored-bg,
.color-company .teaser-item.rowcolor-nav,
.color-company .slider-fotorama-preview .caption,
.box-grid .col.color-company {
	background-color: var(--color-company);
}
.color-reference section.rowcolor-nav,
.color-reference .view-stoerer.rowcolor-nav.colored-bg,
.color-reference .teaser-item.rowcolor-nav,
.color-reference .slider-fotorama-preview .caption,
.box-grid .col.color-reference {
	background-color: var(--color-reference);
}
.color-contact section.rowcolor-nav,
.color-contact .view-stoerer.rowcolor-nav.colored-bg,
.color-contact .teaser-item.rowcolor-nav,
.color-contact .slider-fotorama-preview .caption,
.box-grid .col.color-contact {
	background-color: var(--color-contact);
}

.color-news .view-stoerer.rowcolor-nav.colored-body,
.color-news .view-stoerer.rowcolor-nav.colored-title .view-stoerer-title,
.color-news .teaser-item.rowcolor-nav h4,
.color-news section.rowcolor-nav .upper,
.color-news .slider-fotorama-preview .caption {
	color: var(--color-header);
}
.color-product .view-stoerer.rowcolor-nav.colored-body,
.color-product .view-stoerer.rowcolor-nav.colored-title .view-stoerer-title,
.color-product .teaser-item.rowcolor-nav h4,
.color-product section.rowcolor-nav .upper,
.color-product .slider-fotorama-preview .caption {
	color: var(--color-header);
}
.color-company .view-stoerer.rowcolor-nav.colored-body,
.color-company .view-stoerer.rowcolor-nav.colored-title .view-stoerer-title,
.color-company .teaser-item.rowcolor-nav h4,
.color-company section.rowcolor-nav .upper,
.color-company .slider-fotorama-preview .caption {
	color: var(--color-header);
}
.color-reference .view-stoerer.rowcolor-nav.colored-body,
.color-reference .view-stoerer.rowcolor-nav.colored-title .view-stoerer-title,
.color-reference .teaser-item.rowcolor-nav h4,
.color-reference section.rowcolor-nav .upper,
.color-reference .slider-fotorama-preview .caption {
	color: var(--color-header);
}
.color-contact .view-stoerer.rowcolor-nav.colored-body,
.color-contact .view-stoerer.rowcolor-nav.colored-title .view-stoerer-title,
.color-contact .teaser-item.rowcolor-nav h4,
.color-contact section.rowcolor-nav .upper,
.color-contact .slider-fotorama-preview .caption {
	color: var(--color-header);
}


section.rowcolor-grey,
.view-stoerer.rowcolor-grey.colored-bg,
.teaser-item.rowcolor-grey,
.box-grid .col.rowcolor-grey {
	background-color: var(--color-grey);
}
section.rowcolor-blue,
.view-stoerer.rowcolor-blue.colored-bg,
.teaser-item.rowcolor-blue,
.box-grid .col.rowcolor-blue {
	background-color: var(--color-blue);
}
section.rowcolor-blue2,
.view-stoerer.rowcolor-blue2.colored-bg,
.teaser-item.rowcolor-blue2,
.box-grid .col.rowcolor-blue2 {
	background-color: var(--color-blue2);
}

.view-stoerer.rowcolor-grey.colored-body,
.view-stoerer.rowcolor-grey.colored-title .view-stoerer-title,
.teaser-item.rowcolor-grey h4,
section.rowcolor-grey .upper {
	color: var(--color-grey-dark);
}
.view-stoerer.rowcolor-blue.colored-body,
.view-stoerer.rowcolor-blue.colored-title .view-stoerer-title, 
.teaser-item.rowcolor-blue h4,
section.rowcolor-blue .upper {
	color: var(--color-blue-dark);
}
.view-stoerer.rowcolor-blue2.colored-body,
.view-stoerer.rowcolor-blue2.colored-title .view-stoerer-title, 
.teaser-item.rowcolor-blue2 h4,
section.rowcolor-blue2 .upper {
	color: var(--color-blue2-dark);
}

.color-news h2 span.rowcolor-nav,
.color-news .teaser-item.rowcolor-nav.dark,
.box-grid .col.color-news.dark {
	background-color: var(--color-news-dark);
}
.color-product h2 span.rowcolor-nav,
.color-product .teaser-item.rowcolor-nav.dark,
.box-grid .col.color-product.dark {
	background-color: var(--color-product-dark);
}
.color-company h2 span.rowcolor-nav,
.color-company .teaser-item.rowcolor-nav.dark,
.box-grid .col.color-company.dark {
	background-color: var(--color-company-dark);
}
.color-reference h2 span.rowcolor-nav,
.color-reference .teaser-item.rowcolor-nav.dark,
.box-grid .col.color-reference.dark {
	background-color: var(--color-reference-dark);
}
.color-contact h2 span.rowcolor-nav,
.color-contact .teaser-item.rowcolor-nav.dark,
.box-grid .col.color-contact.dark {
	background-color: var(--color-contact-dark);
}
h2 span.rowcolor-grey,
.teaser-item.rowcolor-grey.dark,
.box-grid .col.rowcolor-grey.dark {
	background-color: var(--color-grey-dark);
}
h2 span.rowcolor-blue,
.teaser-item.rowcolor-blue.dark,
.box-grid .col.rowcolor-blue.dark {
	background-color: var(--color-blue-dark);
}
h2 span.rowcolor-blue2,
.teaser-item.rowcolor-blue2.dark,
.box-grid .col.rowcolor-blue2.dark {
	background-color: var(--color-blue2-dark);
}

.color-news .teaser-item.rowcolor-nav.arrow .teaser-image:after {
    border-bottom-color: var(--color-news);
}
.color-product .teaser-item.rowcolor-nav.arrow .teaser-image:after {
    border-bottom-color: var(--color-product);
}
.color-company .teaser-item.rowcolor-nav.arrow .teaser-image:after {
    border-bottom-color: var(--color-company);
}
.color-reference .teaser-item.rowcolor-nav.arrow .teaser-image:after {
    border-bottom-color: var(--color-reference);
}
.color-contact .teaser-item.rowcolor-nav.arrow .teaser-image:after {
    border-bottom-color: var(--color-contact);
}
.teaser-item.rowcolor-grey.arrow .teaser-image:after {
    border-bottom-color: var(--color-grey);
}
.teaser-item.rowcolor-blue.arrow .teaser-image:after {
    border-bottom-color: var(--color-blue);
}
.teaser-item.rowcolor-blue2.arrow .teaser-image:after {
    border-bottom-color: var(--color-blue2);
}

.color-news .teaser-item.rowcolor-nav.dark h4,
.color-product .teaser-item.rowcolor-nav.dark h4,
.color-company .teaser-item.rowcolor-nav.dark h4,
.color-reference .teaser-item.rowcolor-nav.dark h4,
.color-contact .teaser-item.rowcolor-nav.dark h4,
.teaser-item.rowcolor-grey.dark h4,
.teaser-item.rowcolor-blue.dark h4,
.teaser-item.rowcolor-blue2.dark h4 {
	color: var(--body-bg);
}
.color-news .teaser-item.rowcolor-nav.arrow.dark .teaser-image:after {
    border-bottom-color: var(--color-news-dark);
}
.color-product .teaser-item.rowcolor-nav.arrow.dark .teaser-image:after {
    border-bottom-color: var(--color-product-dark);
}
.color-company .teaser-item.rowcolor-nav.arrow.dark .teaser-image:after {
    border-bottom-color: var(--color-company-dark);
}
.color-reference .teaser-item.rowcolor-nav.arrow.dark .teaser-image:after {
    border-bottom-color: var(--color-reference-dark);
}
.color-contact .teaser-item.rowcolor-nav.arrow.dark .teaser-image:after {
    border-bottom-color: var(--color-contact-dark);
}
.teaser-item.rowcolor-grey.arrow.dark .teaser-image:after {
    border-bottom-color: var(--color-grey-dark);
}
.teaser-item.rowcolor-blue.arrow.dark .teaser-image:after {
    border-bottom-color: var(--color-blue-dark);
}
.teaser-item.rowcolor-blue2.arrow.dark .teaser-image:after {
    border-bottom-color: var(--color-blue2-dark);
}

.box-grid .col.color-news {
	background-color: var(--color-news);
}
.box-grid .col.color-product {
	background-color: var(--color-product);
}
.box-grid .col.color-company {
	background-color: var(--color-company);
}
.box-grid .col.color-reference {
	background-color: var(--color-reference);
}
.box-grid .col.color-contact {
	background-color: var(--color-contact);
}
.box-grid .col.color-news.dark {
	background-color: var(--color-news-dark);
}
.box-grid .col.color-product.dark {
	background-color: var(--color-product-dark);
}
.box-grid .col.color-company.dark {
	background-color: var(--color-company-dark);
}
.box-grid .col.color-reference.dark {
	background-color: var(--color-reference-dark);
}
.box-grid .col.color-contact.dark {
	background-color: var(--color-contact-dark);
}


/* Snow Animation #####################*/
.snow-container {
	position: absolute;
	height: 100%;
	width: 100%;
	max-width: 100%;
	top: 0;
	overflow: hidden;
	z-index: 2;
	pointer-events: none;
}

.snow {
	position: absolute;
	display: block;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	pointer-events: none;
	transform: translate3d(0, -100%, 0);
	animation: snow linear infinite;
}

.snow.front {
	background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0BAMAAAA5+MK5AAAAA3NCSVQICAjb4U/gAAAAHlBMVEX///////////////////////////////////////8V2MxSAAAACnRSTlMAESJEVarM3e7/8e2iWgAAAAlwSFlzAAAAJwAAACcBKgmRTwAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAL3SURBVHic7d09bhRBEAbQXcYHQPzkS0IMAdoNIbAgRSBLpEgOiO3EsaM9ANh9W7wcYJBasmumv/cu4F61u6qnp6pnswEAAACgx4vn1SOo8vLiW+pv37e7d9VjqLH90drX6kHUePartZ/Vg6gRPOvBaz05wgfndQAAAIAMuec/wad+uWe9wSf83utE+hy71pMjfHBeBwAAAAAAgJXYvqkeQZXth8v31WMoMt202+oxFHnd2u/Q99hvW/uzqx5EjeBZn47tqnoMRYIjfHBeBwBS5BYnB5ekH9rdx+ox1AhuP9F0FCm3wTA5wgfndVYg998zOCjlpqLgDYhtZ6R9uw9d68kRPjivAwAA8DRyCzeDy3Wnm3a9yTxyOJXmb3bVoyhxasgYeNbnztD+zfqwZk9OH9b6wA0Zs+/Gho7w/3lLMnJe924sUu57cO/GAAAAAAAAAAAAAFiy3JLP4ELfQ2x5d3BRv1aOSFo5IuXmdQAAAAAAAACAICPfXDxv6Puq5419S/ms0930oXVRpy8S7KoHUSN41oPXenCEf7K8nltk+urie+pvzy0oD24j0DwSKbdR7CHCax4B5uWuleD2ukO7D82Lwbshe+BIuc+7yRE+OK8DAAAAPKrcY5fgw7bcI9bgg3WvUyJ9iV3ryRE+OK8DADyR3A1X8DZ7ry41j4OUSLmHpskRfvV53Z0zgYLvoQi+fcSdM4nOju26egxFgiN8cF4HAAAAAAAAAAAolFu8tT2PLdmbjp1F2ev/b+ktzx2gwLO3KPts/SX8vbM+QDF3bwPGACX8vWt2gFnvjdSTEv5E68/rAAAAAAAAAAAAAAAAjyi3+SK45cZ3kRIN0FTZK3jWp2O7rR5DkeAIv+q8vvZvTfYL/sJo7ndlg78m7BvS1aMoSRNLWOvb88tPBX92CRG+6vFvAXk9+EHA41+i7tvW1i/4jr1VP/4xrAXsAIosYd9XZAm7/RrLeMYr4ck+Uu5aT47wwXkdAAAAAAAAAAAAAAAAAOAv8P/YtX2UxUsAAAAASUVORK5CYII=');
	animation-duration: 15s;
}

.snow.front.layered {
	animation-delay: 7.5s;
}

.snow.middle {
	background-image: url('data:image/png;base64,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');
	animation: snow2 linear infinite;
	animation-duration: 20s;
}

.snow.middle.layered {
	animation-delay: 10s;
}

.snow.back {
	background-image: url('data:image/png;base64,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');
	animation-duration: 30s;
}

.snow.back.layered {
	animation: snow2 linear infinite;
	animation-delay: 15s;
}

@keyframes snow {
	0% {
		transform: translate3d(0, -100%, 0);
	}
	100% {
		transform: translate3d(15%, 100%, 0);
	}
}
@keyframes snow2 {
	0% {
		transform: translate3d(8%, -100%, 0);
	}
	100% {
		transform: translate3d(0%, 100%, 0);
	}
}
/* END Snow Animation */


/* gridview */
/*
.gridview .intro {
	font-size: 130%;
	font-weight: 400;
	line-height: 1.2;
}
*/

/* textboxes */
/*
.copy {
	line-height: 1.3;
}

.copy h2 {
	line-height: 1.2;
}
*/




/* promo icons */
/*
a.promo {
	text-align: center;
	color: inherit;
	text-decoration: none;
	display: block;
	font-size: 117%;
}

a.promo h4 {
	color: #85796b;
	text-transform: uppercase;
	text-align: center;
	letter-spacing: 2px;
	font-size: 82%;
	padding-bottom: 5px;
	padding-top: 15px;
}

a.promo p {
	margin: 0;
	padding: 0;
	padding-left: 18%;
	padding-right: 18%;
	padding-bottom: 30px;
}
*/

/* related */
.related-filesheader,
.related-filesheader li,
.related-linksheader,
.related-linksheader li,
.related-files,
.related-files li,
.related-links,
.related-links li {
	display: block;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.related-filesheader,
.related-linksheader,
.related-files,
.related-links {
	font-size: 110%;
	font-weight: 400;
	margin-bottom: 40px;
}

.related-linksheader,
.related-links {
	border-bottom: 1px solid rgba(0, 0, 0, 0.4);
}

.related-filesheader li a,
.related-files li a {
	display: inline-block;
	line-height: 1.4;
}

.related-linksheader li a,
.related-links li a {
	display: block;
	line-height: 1;
	padding-top: 10px;
	padding-bottom: 9px;
	border-top: 1px solid rgba(0, 0, 0, 0.4);
	text-decoration: none;
	color: var(--link-color);
}

.related-linksheader li a:hover,
.related-links li a:hover {
	color: var(--link-color-hover);
	text-decoration: underline;
}

.related-filesheader li:first-child,
.related-linksheader li:first-child {
	font-size: 1.125rem;
	padding-top: 15px;
	padding-bottom: 5px;
	font-weight: 600;
}

.related-linksheader a:before,
.related-links a:before {
	content: '\e80b';
	float: right;
}

.related-filesheader a:before,
.related-files a:before {
	content: '\e80f';
	color: var(--link-color);
}





.brandslider div {
	padding-left: 20px;
	padding-right: 20px;
}


.brandslider img {
	height: 40px;
	width: auto;
}

/* Icon Box */
.icon-box {
	padding: 15px 15px 20px;
	background-color: var(--color-grey);
}
.box-header {
	text-align: center;
	background-color: var(--color-light);
	margin: -15px -15px 5px;
	padding: 15px 15px 10px;
}
.box-header img {
	height: 55px;
	width: auto;
}
.box-headline {
	text-transform: uppercase;
	display: inline-block;
	padding-bottom: 10px;
	padding-top: 15px;
	font-weight: 600;
	color: var(--body-color);
	letter-spacing: 1px;
	font-size: 18px;
}
.icon-box p {
	margin-top: 0;
}
.icon-box p:last-child {
	margin-bottom: 0;
}

/* footer */
footer {
	padding-top: 40px;
	padding-bottom: 40px;
	background-color: var(--color-accent);
	color: var(--body-bg);
	line-height: 1.4;
}

footer .upper {
	color: var(--body-bg);
}

footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer .h1 {
	color: var(--body-bg);
}

footer a {
	color: inherit;
	text-decoration: none;
}

footer a:hover,
footer a:focus {
	text-decoration: underline;
}
footer a:focus {
	outline-color: var(--body-bg);
}

footer .socials a.social {
	display: inline-block;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	border: 2px solid var(--body-bg);
	line-height: 34px;
	text-align: center;
	overflow: hidden;
	margin-right: 5px;
	transition: all ease-in-out 200ms;
}

footer .socials a.social:hover,
footer .socials a.social:focus {
	background-color: var(--body-bg);
	color: var(--color-accent);
	border-color: var(--color-accent);
}

.modal {
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgba(0, 0, 0, 0.8);
	position: fixed;
	z-index: 10000;
}

.overlay {
	padding: 50px;
	background-color: #8ea9d8;
	color: #fff;
	font-family: 'Fira Sans', sans-serif;
	font-size: 36px;
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 10001;
	transform: translate(-50%, -50%);
}

.infoBreak {
	padding-left: 20%;
	padding-right: 20%;
	margin-top: 6px;
}

.no-video .vegas-container {
    height: 6rem !important;
    min-height: 12rem !important;
}

@media only screen and (min-width:2000px) {
	.teaser {
		color: #ffffff;
		padding-bottom: 120px;
		padding-top: 220px;
	}
}

@media only screen and (max-width: 1280px) {
	.grid5 {
		width: 50%;
	}
	.inset1 {
		margin-left: auto;
	}
	.outset1 {
		margin-right: auto;
	}
	aside.logo  img {
		height: auto !important;
		width: 220px !important;
	}
	nav li a {
		font-size: 1.3rem;
	}
}

@media only screen and (max-width: 1120px) {
	/*
	nav aside.logo
	{
		display:none;
	}
	*/
	nav {
		--nav-color: var(--nav-bg);
		--nav-color-hover: var(--color-base);
		--nav-color-active: var(--color-base);
		--nav-color-border: rgba(0, 0, 0, 0.6);
		background-color: var(--color-grey);
		text-align: center;
	}
	.color-news nav {
		background-color: var(--color-news);
	}
	.color-product nav {
		background-color: var(--color-product);
	}
	.color-company nav {
		background-color: var(--color-company);
	}
	.color-reference nav {
		background-color: var(--color-reference);
	}
	.color-contact nav {
		background-color: var(--color-contact);
	}
	.nav-toggler, #toggle {
		display: block;
	}
	.nav-toggler {
		left: 20px;
		position: absolute;
	}
	nav ul {
		display: none;
	}
	nav.overlayed {
		background-color: rgba(0, 0, 0, 0.8);
	}
	nav input[type="checkbox"] {
		position: absolute;
		top: -5px;
		left: 14px;
		opacity: 0;
		width: 44px;
		height: 50px;
	}
	.nav-toggler:hover {
		cursor: pointer;
	}
	.nav-toggler i {
		line-height: 50px;
		font-size: 32px;
		color: var(--nav-color);
	}
	nav ul {
		padding-bottom: 20px;
		padding-top: 50px;
	}
	nav li {
		float: none;
	}
	nav input[type="checkbox"]:checked ~ ul {
		display: block;
		height: 100vh;
		padding-top: 15vh;
		z-index: 2000;
	}
	nav input[type="checkbox"]:checked ~ .logo {
		display: none;
	}
	nav input[type="checkbox"]:checked+.nav-toggler i:before {
		content: '\e80d';
	}
	nav ul li:hover ul {
		display: none !important;
	}
	nav li {
		margin-right: 0;
	}
	nav ul li a {
		font-size: 140%;
	}
	nav ul li.active a,
	nav ul li a.active,
	nav ul li:hover a {
		/*color: rgba(255, 255, 255, 0.6) !important;*/
	}
}

/*
@media only screen and (max-width: 1124px)
{
		section.article .grid6, section.article .grid5
		{
			width:100%;
			float:none;	
		}
}
*/
.small-desktop {
	display: none;
}

@media only screen and (max-width: 1124px) {
	.small-desktop {
		display: block;
		padding: 50px;
		background-color: #aed193;
		color: #fff;
		text-align: center;
	}
	.large-desktop {
		display: none;
	}
}

@media only screen and (max-device-width: 1024px) and (orientation:landscape) {
	.fx-mainbanner, #preloaderStage {
		background-attachment: scroll;
		background-position: center center;
	}
	.img-footer h6 span, h6.btn span {
		word-wrap: break-word;
		font-size: 85%;
	}
}

@media only screen and (max-device-width: 1024px) and (orientation:portrait) {
	.fx-mainbanner, #preloaderStage {
		background-attachment: scroll;
		background-position: center center;
	}
}

@media only screen and (max-width: 980px) {
	header {
		height: 21rem;
	}
	.grid2 {
		width: 33.33333%;
	}
	.grid3 {
		width: 50%;
	}
	.inset1 {
		margin-left: auto;
	}
	.outset1 {
		margin-right: auto;
	}
}

@media only screen and (max-width: 760px) {
	.grid {
		float: none;
	}
	.grid2, .grid3, .grid4, .grid5, .grid6, .grid8 {
		width: 100%;
	}
	/*.banner h1, .banner .h1 {*/
	.teaser h1, .teaser .h1 {
		font-size: 260%;
	}
	.infoBreak {
		padding-left: 5%;
		padding-right: 5%;
		margin-top: 6px;
		font-size: 96% !important;
	}
}

@media only screen and (max-width: 500px) {
	body {
		font-size: 16px;
	}
	/*.banner h1, .banner .h1 {*/
	.teaser h1, .teaser .h1 {
		font-size: 200%;
	}
	.centered-viewbox h1, .centered-viewbox .h1 {
		font-size: 170%;
	}
	.banner {
		background-size: auto 100%;
		background-repeat: no-repeat;
	}
}

@media only screen and (max-width: 360px) {
	body {
		font-size: 16px;
	}
	aside.logo {
		width: 107px;
		overflow: hidden;
	}
	/*.banner h1, .banner .h1 {*/
	.teaser h1, .teaser .h1 {
		font-size: 180%;
	}
	.banner-content-footer a {
		margin-bottom: 10px;
	}
	section {
		margin-bottom: 30px;
	}
}

@media only screen and (max-width: 320px) {
	.wrapper {
		width: 100%;
		padding-left: 15px;
		padding-right: 15px;
	}
	aside.logo {
		width: 110px;
		overflow: hidden;
	}
	.fx-mainbanner {
		background-attachment: scroll;
		background-position: center center;
	}
	.fx-imageblend {
		background-attachment: scroll;
	}
	h1, .h1 {
		font-size: 30px;
	}
}

@media only screen and (min-device-width : 375px) and (max-device-width : 667px) {
	aside.logo {
		width: 110px;
		overflow: hidden;
	}
	.fx-mainbanner {
		background-attachment: scroll;
		background-position: center center;
	}
	section {
		margin-bottom: 30px;
	}
}

@media only screen and (min-device-width : 320px) and (max-device-width : 568px) {
	section {
		margin-bottom: 30px;
	}
	aside.logo {
		width: 110px;
		overflow: hidden;
	}
	.fx-mainbanner {
		background-attachment: scroll;
		background-position: center center;
	}
	.fx-imageblend {
		background-attachment: scroll;
	}
	.centered-viewbox .intro {
		padding-left: 15px;
		padding-right: 15px;
	}
}

.play_border {
	position: absolute;
	top: 0;
	bottom: 20px;
	left: 0;
	right: 0;
	margin: auto;
	border: 2px solid rgba(0, 0, 0, 0.7);
	border-radius: 100%;
	width: 40px;
	height: 40px;
	transition: all 0.5s ease;
	transform: scale(1.5);
	cursor: pointer;
}

.play_border:hover {
	border-color: transparent;
	box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.2);
}

.play_border:hover .play_button {
	border-left: 10px solid rgba(0, 0, 0, 0.5);
}

.play_border:active, .play_border:focus {
	box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.2);
}

.play_button {
	position: relative;
	top: 8px;
	left: 40%;
	width: 0;
	height: 0;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 10px solid rgba(0, 0, 0, 0.8);
}

.xx1:before {
	border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #aed193;
	border-style: solid;
	border-width: 0 20px 20px;
	content: "";
	height: 0;
	left: 50%;
	position: absolute;
	top: -17px;
	transform: translateX(-50%);
	width: 0;
}

.xx2:before {
	border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #454545;
	border-style: solid;
	border-width: 0 20px 20px;
	content: "";
	height: 0;
	left: 50%;
	position: absolute;
	top: -17px;
	transform: translateX(-50%);
	width: 0;
}

#partner img {
	display: block;
	float: left;
	height: 200px;
	padding: 30px;
	width: 200px;
}

#stoffe img {
	width: 16.666%;
	height: auto;
	display: block;
	float: left;
}

#sfxBugs {
	position: absolute;
	z-index: 2;
	border: 0;
	width: 100%;
	margin: 0;
	top: 50px;
	height: 350px;
	overflow: hidden;
}

.modalPop {
	position: fixed;
	z-index: 1000;
	width: 90%;
	max-width: 650px;
	padding: 30px;
	background-color: #fff;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 18px;
}

.modal {
	background-color: rgba(0, 0, 0, 0.5);
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	position: fixed;
	z-index: 999;
}

.modalPop strong {
	font-weight: 600 !important;
}

.hidden {
	display: none;
}

.closerJobs {
	float: right;
	width: 24px;
	height: 24px;
}

.closerJobs:hover {
	cursor: pointer;
}

.jobHeadline {
	font-family: 'Fira Sans', sans-serif;
	font-size: 110%;
}

.icon-menu {
	text-shadow: rgba(0, 0, 0, 0.3) 1px 1px;
}

.zgrid-wrapper {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -1em;
}

.zgrid-4 {
	flex: 0 1 33.333333%;
	padding: 1rem;
}

.zbox .title {
	color: #7a7771;
	background-color: #d9d8d3;
	letter-spacing: 2px;
	text-align: center;
	line-height: 77px;
	text-transform: uppercase;
}

.zbox a {
	display: block;
	text-decoration: none;
}

@media ( max-width :980px) {
	.zgrid-4 {
		flex: 0 1 50%;
		margin-bottom: 30px;
	}
}

@media ( max-width :768px) {
	.zgrid-4 {
		flex: 0 0 100%;
		margin-bottom: 30px;
	}
}

#fotos {
	display: none;
}

a.anchor {
	display: block;
	position: relative;
	top: -120px;
	visibility: hidden;
}