/* ######################### KOKO — GRID ######################### */

.module.grid {
	display: block;
	position: relative;
	width: 100%;
	margin: 0 auto;
}

.module.grid.align-left {
	text-align: left;
}

.module.grid.align-center {
	text-align: center;
}

.module.grid.align-right {
	text-align: right;
}

.module.grid .container {
	display: block;
	position: relative;
}

/* —————————————————————————————————————————————————— */

.module.grid .tile {
	display: inline-block;
	vertical-align: top;
}

.module.grid.columns-1 .tile {
	width: 100%;
}

.module.grid.columns-2 .tile {
	width: calc(99%/2);
}

.module.grid.columns-3 .tile {
	width: calc(99%/3);
}

.module.grid.columns-4 .tile {
	width: calc(99%/4);
}

.module.grid.columns-5 .tile {
	width: calc(99%/5);
}

.module.grid.columns-6 .tile {
	width: calc(99%/6);
}

.module.grid.columns-7 .tile {
	width: calc(99%/7);
}

.module.grid.columns-8 .tile {
	width: calc(99%/8);
}

.module.grid.columns-9 .tile {
	width: calc(99%/9);
}

.module.grid.columns-10 .tile {
	width: calc(99%/10);
}

.module.grid.columns-11 .tile {
	width: calc(99%/11);
}

.module.grid.columns-12 .tile {
	width: calc(99%/12);
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.grid {
		margin: 30px auto;
	}

	.module.grid.columns-1 .tile,
	.module.grid.columns-2 .tile,
	.module.grid.columns-3 .tile,
	.module.grid.columns-4 .tile,
	.module.grid.columns-5 .tile,
	.module.grid.columns-6 .tile,
	.module.grid.columns-7 .tile,
	.module.grid.columns-8 .tile,
	.module.grid.columns-9 .tile,
	.module.grid.columns-10 .tile,
	.module.grid.columns-11 .tile,
	.module.grid.columns-12 .tile {
		width: 100%;
	}
}

/* —————————————————————————————————————————————————— */

@media screen and (min-width: 768px) and (max-width: 1023px) {

	.module.grid.columns-3 .tile,
	.module.grid.columns-4 .tile,
	.module.grid.columns-5 .tile,
	.module.grid.columns-6 .tile,
	.module.grid.columns-7 .tile,
	.module.grid.columns-8 .tile,
	.module.grid.columns-9 .tile,
	.module.grid.columns-10 .tile,
	.module.grid.columns-11 .tile,
	.module.grid.columns-12 .tile {
		width: 50%;
	}

}

/* ######################### PARAGRAPH - KOKO ######################### */

.module.heading {
	position: relative;
}

.module.heading:not(:first-child) {
	margin-top: 30px;
}

/* ######################### KOKO — IMAGE ######################### */

.module.image {
	display: inline-block;
	position: relative;
	width: 100%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.module.layout.row > .module.image {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	z-index: 0;
}

.module.image:not(:first-child) {
	margin-top: 30px;
}

.module.image .ratio {
	display: block;
	position: relative;
	transition: padding-top 0.3s ease;
}

.module.image.loaded {
	opacity: 1;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.layout.row > .module.image {
		/*max-width: calc(100% - 40px) !important;*/
	}

}

/* ######################### KOKO — LAYOUT ######################### */

.module.layout.row {
	display: block;
	width: 100%;
	position: relative;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-color: inherit;
	z-index: 1;
}

.module.layout.row.center-vertical {
	display: ms-flexbox;
	display: flex;
}

/* —————————————————————————————————————————————————— */

@media all and (-ms-high-contrast:none) {

	.module.menu .module.layout.row.center-vertical {
		height: 100%;
		min-height: 100%;
	}

	*::-ms-backdrop,
	.module.menu .module.layout.row.center-vertical {
		height: 100%;
		min-height: 100%;
	}

}

/* —————————————————————————————————————————————————— */

.module.layout.row.parallax {
	position: fixed;
	top: 0;
	left: 0;
	height: 100vh;
	overflow: hidden;
	z-index: 0;
	-webkit-transform:translateZ(0px);
	-moz-transform:translateZ(0px);
	-o-transform:translateZ(0px);
	transform:translateZ(0px);
}

/* —————————————————————————————————————————————————— */

@media all and (-ms-high-contrast:none) {

	.module.layout.row.parallax .module.image {
		opacity: 1 !important;
	}

	*::-ms-backdrop,
	.module.layout.row.parallax .module.image {
		opacity: 1 !important;
	}

}

/* —————————————————————————————————————————————————— */

.module.layout.row > .container {
	position: relative;
	display: block;
	width: 100%;
	margin: 0 auto;
}

/* —————————————————————————————————————————————————— */

.module.layout.column {
	display: inline-block;
	position: relative;
}

/* —————————————————————————————————————————————————— */

.module.layout.column.column-left {
	float: left;
}

.module.layout.column.column-right {
	float: right;
}

/* —————————————————————————————————————————————————— */

.module.layout.column-padding-none {
	padding: 0;
}

.module.layout.column-padding-small {
	padding: 20px;
}

.module.layout.column-padding-medium {
	padding: 50px;
}

.module.layout.column-padding-large {
	padding: 80px;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.layout.column-padding-small,
	.module.layout.column-padding-medium,
	.module.layout.column-padding-large {
		padding: 30px;
	}

}

/* —————————————————————————————————————————————————— */

@media screen and (width: 768px) {

	.module.layout.column-padding-small,
	.module.layout.column-padding-medium,
	.module.layout.column-padding-large {
		padding: 50px;
	}

}

/* —————————————————————————————————————————————————— */

.module.layout.column-align-left {
	text-align: left;
}

.module.layout.column-align-center {
	text-align: center;
}

.module.layout.column-align-right {
	text-align: right;
}

.module.layout.row.max-width {
	margin: 0 auto;
}

/* —————————————————————————————————————————————————— */

.module.layout.column.column-100-100 {
	width: 100%;
}

.module.layout.column.column-90-100 {
	width: 90%;
}

.module.layout.column.column-80-100 {
	width: 80%;
}

.module.layout.column.column-75-100 {
	width: 75%;
}

.module.layout.column.column-70-100 {
	width: 70%;
}

.module.layout.column.column-66-100 {
	width: 66.66666%;
}

.module.layout.column.column-60-100 {
	width: 60%;
}

.module.layout.column.column-50-100 {
	width: 50%;
}

.module.layout.column.column-40-100 {
	width: 40%;
}

.module.layout.column.column-33-100 {
	width: 33.33333%;
}

.module.layout.column.column-30-100 {
	width: 30%;
}

.module.layout.column.column-25-100 {
	width: 25%;
}

.module.layout.column.column-20-100 {
	width: 20%;
}

.module.layout.column.column-10-100 {
	width: 10%;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 768px) {

	.module.layout.column.column-100-100,
	.module.layout.column.column-90-100,
	.module.layout.column.column-80-100,
	.module.layout.column.column-75-100,
	.module.layout.column.column-70-100,
	.module.layout.column.column-66-100,
	.module.layout.column.column-60-100,
	.module.layout.column.column-50-100,
	.module.layout.column.column-40-100,
	.module.layout.column.column-33-100,
	.module.layout.column.column-30-100,
	.module.layout.column.column-25-100,
	.module.layout.column.column-20-100,
	.module.layout.column.column-10-100 {
		width: 100%;
	}

}

@media screen and (min-width: 769px) and (max-width: 1024px) {

	.module.layout.column.column-30-100.column-left.column-offset-10-100,
	.module.layout.column.column-30-100.column-right.column-offset-10-100 {
		width: 50%;
		margin-left: 0;
		margin-right: 0;
	}

}

/* —————————————————————————————————————————————————— */

.module.layout.column-left.column-offset-0 {
	margin-left: 0;
}

.module.layout.column-left.column-offset-90-100 {
	margin-left: 90%;
}

.module.layout.column-left.column-offset-80-100 {
	margin-left: 80%;
}

.module.layout.column-left.column-offset-75-100 {
	margin-left: 75%;
}

.module.layout.column-left.column-offset-70-100 {
	margin-left: 70%;
}

.module.layout.column-left.column-offset-66-100 {
	margin-left: 66.66666%;
}

.module.layout.column-left.column-offset-60-100 {
	margin-left: 60%;
}

.module.layout.column-left.column-offset-50-100 {
	margin-left: 50%;
}

.module.layout.column-left.column-offset-40-100 {
	margin-left: 40%;
}

.module.layout.column-left.column-offset-33-100 {
	margin-left: 33.33333%;
}

.module.layout.column-left.column-offset-30-100 {
	margin-left: 30%;
}

.module.layout.column-left.column-offset-25-100 {
	margin-left: 25%;
}

.module.layout.column-left.column-offset-20-100 {
	margin-left: 20%;
}

.module.layout.column-left.column-offset-10-100 {
	margin-left: 10%;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 768px) {

	.module.layout.column-left.column-offset-0,
	.module.layout.column-left.column-offset-90-100,
	.module.layout.column-left.column-offset-80-100,
	.module.layout.column-left.column-offset-75-100,
	.module.layout.column-left.column-offset-70-100,
	.module.layout.column-left.column-offset-66-100,
	.module.layout.column-left.column-offset-60-100,
	.module.layout.column-left.column-offset-50-100,
	.module.layout.column-left.column-offset-40-100,
	.module.layout.column-left.column-offset-33-100,
	.module.layout.column-left.column-offset-30-100,
	.module.layout.column-left.column-offset-25-100,
	.module.layout.column-left.column-offset-20-100,
	.module.layout.column-left.column-offset-10-100 {
		margin-left: 0;
	}
}

/* —————————————————————————————————————————————————— */

.module.layout.column-right.column-offset-0 {
	margin-right: 0;
}

.module.layout.column-right.column-offset-90-100 {
	margin-right: 90%;
}

.module.layout.column-right.column-offset-80-100 {
	margin-right: 80%;
}

.module.layout.column-right.column-offset-75-100 {
	margin-right: 75%;
}

.module.layout.column-right.column-offset-70-100 {
	margin-right: 70%;
}

.module.layout.column-right.column-offset-66-100 {
	margin-right: 66.66666%;
}

.module.layout.column-right.column-offset-60-100 {
	margin-right: 60%;
}

.module.layout.column-right.column-offset-50-100 {
	margin-right: 50%;
}

.module.layout.column-right.column-offset-40-100 {
	margin-right: 40%;
}

.module.layout.column-right.column-offset-33-100 {
	margin-right: 33.33333%;
}

.module.layout.column-right.column-offset-30-100 {
	margin-right: 30%;
}

.module.layout.column-right.column-offset-25-100 {
	margin-right: 25%;
}

.module.layout.column-right.column-offset-20-100 {
	margin-right: 20%;
}

.module.layout.column-right.column-offset-10-100 {
	margin-right: 10%;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 768px) {

	.module.layout.column-right.column-offset-0,
	.module.layout.column-right.column-offset-90-100,
	.module.layout.column-right.column-offset-80-100,
	.module.layout.column-right.column-offset-75-100,
	.module.layout.column-right.column-offset-70-100,
	.module.layout.column-right.column-offset-66-100,
	.module.layout.column-right.column-offset-60-100,
	.module.layout.column-right.column-offset-50-100,
	.module.layout.column-right.column-offset-40-100,
	.module.layout.column-right.column-offset-33-100,
	.module.layout.column-right.column-offset-30-100,
	.module.layout.column-right.column-offset-25-100,
	.module.layout.column-right.column-offset-20-100,
	.module.layout.column-right.column-offset-10-100 {
		margin-right: 0;
	}
}

/* ######################### LINK ######################### */

.module.link {
	position: relative;
	color: inherit;
	text-decoration: none;
	padding-bottom: 0;
	border-bottom: 0.13em solid transparent;
	transition: color 0.3s ease, border-color 0.5s ease;
}

.module.link:hover,
.module.link.active {
	border-color: inherit;
}

/* ######################### MENU - GENERAL ######################### */

.module.menu {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: grey;
	z-index: 1;
}

/* ######################### MENU - PUSH ######################### */

.menu-push {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.menu-push .module.menu,
.menu-push .container.body {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	overflow-x: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	z-index: 0;
	-webkit-transition-property: transform;
	-moz-transition-property: transform;
	transition-property: transform;
	-webkit-transition-duration: 0.7s;
	-moz-transition-duration: 0.7s;
	transition-duration: 0.7s;
	-webkit-transition-timing-function: cubic-bezier(0.86, 0.01, 0.77, 0.78);
	-moz-transition-timing-function: cubic-bezier(0.86, 0.01, 0.77, 0.78);
	transition-timing-function: cubic-bezier(0.86, 0.01, 0.77, 0.78);
}

.menu-push .module.menu {
	z-index: 1;
	margin-left: -100%;
}

.menu-push.menu-active .module.menu,
.menu-push.menu-active .container.body {
	transform: translateX(100%);
}

/* ######################### MENU - TOGGLE ######################### */

.menu-toggle {
	cursor: pointer;
}

.menu-toggle .icon {
	display: inline-block;
	position: relative;
	width: 24px;
	height: 20px;	
	background-image: linear-gradient(0deg, #000, #000, #000);
	background-position: 50%;
	background-repeat: repeat-x;
	background-size: auto 2px;
	opacity: 0.3;
	transition: opacity 0.3s ease;
}

.menu-toggle .icon:before,
.menu-toggle .icon:after {
	content: '';
	display: inline-block;
	position: absolute;
	width: 100%;
	height: 2px;
	left: 0;
	background-color: #000;
}

.menu-toggle .icon:hover {
	opacity: 1;
}

.menu-toggle.animate.active .icon {
	background-color: transparent;
}

.menu-toggle .icon:before {
	
	top: 0;
	margin-top: -1px;
	transition: transform 0.2s ease, top 0.2s ease;
}

.menu-toggle.animate.active .icon:before {
	top: 50%;
	transform: rotateZ(45deg);
}

.menu-toggle .icon:after {
	bottom: 0;
	margin-bottom: -1px;
	transition: transform 0.2s ease, bottom 0.2s ease;
}

.menu-toggle.animate.active .icon:after {
	bottom: 50%;
	transform: rotateZ(-45deg);
}

/* ######################### COLORS ######################### */

.color-black,
.color-black:visited,
.color-hover-black:hover,
.color-active-black.active {
	color: #000;
}

.color-white,
.color-white:visited,
.color-hover-white:hover,
.color-active-white.active {
	color: #fff;
}

.border-black,
.border-hover-black:hover,
.border-active-black.active {
	border-color: #000;
}

.border-white,
.border-hover-white:hover,
.border-active-white.active {
	border-color: #fff;
}

.background-white {
	background-color: #fff;
}

/* ######################### FONTS ######################### */

/*@font-face {*/
	/*font-family: 'Heebo';*/
	/*font-style: normal;*/
	/*font-weight: 400;*/
	/*src: url('https://vwdrive.htm308.htm-server.de/wp-content/themes/koko/static/fonts/heebo-v2-latin-regular.woff') format('woff');*/
/*}*/

/*.font-default,*/
/*.font-heebo {*/
	/*font-family: 'Heebo';*/
	/*-webkit-font-smoothing: antialiased;*/
	/*-moz-osx-font-smoothing: grayscale;*/
/*}*/

.font-smallest {
	font-size: 8px;
}

.font-small {
	font-size: 12px;
}

.font-regular {
	font-size: 16px;
}

.font-large {
	font-size: 20px;
}

.font-larger {
	font-size: 32px;
}

.font-uppercase {
	text-transform: uppercase;
}


/* ######################### KOKO — PAGE ######################### */

html {
	position: relative;
	overflow: hidden;
}

body {
	position: relative;
	min-height: 100%;
}

.max-width {
	width: 1240px;
	max-width: 1240px;
}

.screen-height {
	min-height: 100vh;
}

* {
	/*overflow: -moz-scrollbars-none;*/
	-ms-overflow-style: -ms-autohiding-scrollbar;
}

::-webkit-scrollbar {
	display: none;
}

html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* ######################### UTILITY ######################### */

.center-vertical {
	display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    align-content: center;
}

.clearfix:after {
	content: '';
	display: table;
	clear: both;
}

.text-uppercase {
    text-transform: uppercase;
}

/* ######################### PARAGRAPH - KOKO ######################### */

.module.paragraph {
	position: relative;
}

.module.paragraph:not(:first-child) {
	margin-top: 30px;
}

/* ######################### DRIVE — POPUP ######################### */

.module.popup {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: -1;
}

.module.popup > .container {
	position: absolute;
	top: 40px;
	bottom: 40px;
	left: 40px;
	right: 40px;
	width: auto;
	height: auto;
	background-color: #fff;
	opacity: 0;
	transition: opacity 0.5s ease;
	overflow-x: hidden;
	overflow-y: scroll;
}

.module.popup.active > .container {
	opacity: 1;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.popup > .container {
		top: 20px;
		bottom: 20px;
		left: 20px;
		right: 20px;
	}

}

/* ######################### MENU - TOGGLE ######################### */

.module.popup > .container > .icon {
	display: inline-block;
	position: absolute;
	top: 20px;
	right: 20px;
	width: 40px;
	height: 40px;	
	background-color: #fff;
	border-radius: 50%;
	transition: background-color 0.3s ease;
	z-index: 10;
	cursor: pointer;
}

.no-touch .module.popup > .container > .icon:hover,
.module.popup > .container > .icon.hover-touch {	
	background-color: #000;
}

.module.popup > .container > .icon:before,
.module.popup > .container > .icon:after {
	content: '';
	display: inline-block;
	position: absolute;
	width: 60%;
	height: 1px;
	top: 50%;
	left: 20%;
	margin-top: -1px;
	background-color: #000;
	transition: background-color 0.3s ease;
}

.module.popup > .container > .icon:before {
	transform: rotateZ(45deg);
}

.module.popup > .container > .icon:after {
	transform: rotateZ(-45deg);
}

.no-touch .module.popup > .container > .icon:hover:before,
.no-touch .module.popup > .container > .icon:hover:after,
.module.popup > .container > .icon.hover-touch:before,
.module.popup > .container > .icon.hover-touch:after {
	background-color: #fff;
}



/* ######################### KOKO — SLIDER ######################### */

.module.slider {
	display: block;
	position: relative;
	width: 100%;
	height: 500px;
	margin: 0 auto;
	overflow: hidden;
}

.module.slider .container {
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: 1;
}

/* —————————————————————————————————————————————————— */

.module.slider .slide {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	margin-left: 100%;
	transition: margin-left 1s ease;
	overflow: hidden;
}

.module.slider .slide:nth-child(1) {
	margin-left: -100%;
	z-index: 2;
}

.module.slider .slide:nth-child(2) {
	margin-left: 0;
	z-index: 2;
}

.module.slider .slide:nth-child(3) {
	margin-left: 100%;
	z-index: 2;
}

.module.slider .slide:first-child:nth-last-child(1) {
	margin-left: 0;
}

.module.slider .slide .module.image {
	height: 100%;
}

/* —————————————————————————————————————————————————— */

.module.slider .navigation.previous,
.module.slider .navigation.next {
	display: block;
	position: absolute;
	width: 50px;
	height: 50px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 3;
	cursor: pointer;
	opacity: 0.5;
	transition: opacity 0.3s ease
}

.module.slider .navigation.previous:hover,
.module.slider .navigation.next:hover {
	opacity: 1;
}

.module.slider .navigation.previous {
	left: 20px;
}

.module.slider .navigation.next {
	right: 20px;
}

.module.slider .navigation.previous .icon,
.module.slider .navigation.next .icon {
	display: block;
	position: absolute;
	top: 20%;
	width: 60%;
	height: 60%;
	border-style: solid;
	border-color: #fff;
}

.module.slider .navigation.previous .icon {
	left: 30%;
	border-width: 2px 0 0 2px;
	transform: rotate(-45deg);
}

.module.slider .navigation.next .icon {
	right: 30%;
	border-width: 2px 2px 0 0;
	transform: rotate(45deg);
}

/* —————————————————————————————————————————————————— */

.module.slider .pagination {
	display: block;
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
}

.module.slider .pagination li {
	display: inline-block;
	position: relative;
	width: 30px;
	height: 20px;
	cursor: pointer;
	float: left;
}

.module.slider .pagination li:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 12px;
	height: 12px;
	background-color: #fff;
	border-radius: 50%;
	opacity: 0.5;
	transition: opacity 0.3s ease;
}

.module.slider .pagination li:hover:after,
.module.slider .pagination li.active:after {
	opacity: 1;
}

/* —————————————————————————————————————————————————— */

@media all and (-ms-high-contrast:none) {

	.module.slider .module.image {
		opacity: 1 !important;
	}

	*::-ms-backdrop,
	.module.slider .module.image {
		opacity: 1 !important;
	}

}


/* ######################### ARROW - DRIVE ######################### */

.module.arrow {
	position: relative;
	overflow: visible;
}

.module.arrow .icon {
	font-size: 24px;
}

.module .icon {
	font-family: 'DriveIcons' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* —————————————————————————————————————————————————— */

.module.arrow-inset {
	display: block;
	width: 100%;
	height: 0;
}

.module.arrow-inset:not(:first-child) {
	padding-top: 30px;
	margin-bottom: -30px;
}

.module.arrow-inset ~ * {
	padding-left: 60px;
}

.module.arrow-inset .icon:before {
	content: "\e60e";
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.arrow-inset {
		display: none;
	}

	.module.arrow-inset ~ * {
		padding-left: 0;
	}

}

/* —————————————————————————————————————————————————— */

.module.arrow-up {
	text-align: center;
	padding: 20px;
}

.module.arrow-up .icon:before {
	content: "\e60b";
}


/* —————————————————————————————————————————————————— */

.module.arrow-split-left,
.module.arrow-split-right {
	position: absolute;
	width: 1px;
	background-color: #000;
	padding: 0 !important;
}

.module.layout.column-padding-none .module.arrow-split-left {
	left: 0;
}

.module.layout.column-padding-none .module.arrow-split-right {
	right: 0;
}

.module.layout.column-padding-small .module.arrow-split-left {
	left: -20px;
}

.module.layout.column-padding-small .module.arrow-split-right {
	right: -20px;
}

.module.layout.column-padding-medium .module.arrow-split-left {
	left: -50px;
}

.module.layout.column-padding-medium .module.arrow-split-right {
	right: -50px;
}

.module.layout.column-padding-large .module.arrow-split-left {
	left: -80px;
}

.module.layout.column-padding-large .module.arrow-split-right {
	right: -80px;
}

.module.arrow-split-left,
.module.arrow-split-right {
	top: 0;
	bottom: 0;
}

.module.arrow-split-left .icon,
.module.arrow-split-right .icon {
	position: absolute;
	bottom: -1px;
}

/*.module.arrow-split-left .icon:before,
.module.arrow-split-right .icon:before {
	content: "\e60a";
}*/



.module.arrow-split-right:before,
.module.arrow-split-right:after {
	content: '';
	display: block;
	position: absolute;
	width: 8px;
	height: 1px;
	bottom: 2px;
	background-color: #000;
}

.module.arrow-split-right:before {
	right: -1px;
	transform: rotate(45deg);
}

.module.arrow-split-right:after {
	left: -1px;
	transform: rotate(-45deg);
}

/* —————————————————————————————————————————————————— */

.module.arrow-inset:first-child + .module.paragraph {
	margin-top: 0;
}


.module.bodymovin {
    position: relative;
    display: block;
    width: 300px;
    height: 300px;
}

.module.bodymovin .lottie {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}


/* ######################### COLLAGE - DRIVE ######################### */

.module.collage {
	position: relative;
}

.module.collage:not(:first-child) {
	margin-top: 30px;
}

.module.collage .module.image {
	float: left;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.collage {
		margin: 30px 0;
	}

}

/* —————————————————————————————————————————————————— */

.module.collage.layout-A .module.image:nth-child(1) {
	width: 70%;
	margin-left: 10%;
}

.module.collage.layout-A .module.image:nth-child(1) .ratio {
	padding-top: 63% !important;
}

.module.collage.layout-A .module.image:nth-child(2) {
	width: 60%;
	margin-top: 10px;
}

.module.collage.layout-A .module.image:nth-child(2) .ratio {
	padding-top: 69% !important;
}

.module.collage.layout-A .module.image:nth-child(3) {
	width: calc(40% - 10px);
	margin-top: 10px;
	margin-left: 10px;
}

.module.collage.layout-A .module.image:nth-child(3) .ratio {
	padding-top: 56% !important;
}

/* —————————————————————————————————————————————————— */

.module.collage.layout-D .module.image:nth-child(1) {
	width: 70%;
	margin-left: 15%;
}

.module.collage.layout-D .module.image:nth-child(1) .ratio {
	padding-top: 60% !important;
}

.module.collage.layout-D .module.image:nth-child(2) {
	width: 35%;
	margin-top: 10px;
}

.module.collage.layout-D .module.image:nth-child(2) .ratio {
	padding-top: 69% !important;
}

.module.collage.layout-D .module.image:nth-child(3) {
	width: calc(35% - 10px);
	margin-top: 15%;
	margin-left: 10px;
}

.module.collage.layout-D .module.image:nth-child(3) .ratio {
	padding-top: 96% !important;
}

/* —————————————————————————————————————————————————— */

.module.collage.layout-B .module.image:nth-child(1) {
	width: 65%;
	margin-top: 10%;
}

.module.collage.layout-B .module.image:nth-child(1) .ratio {
	padding-top: 153% !important;
}

.module.collage.layout-B .module.image:nth-child(2) {
	width: calc(35% - 10px);
	margin-left: 10px;
}

.module.collage.layout-B .module.image:nth-child(2) .ratio {
	padding-top: 134% !important;
}

.module.collage.layout-B .module.image:nth-child(3) {
	width: calc(35% - 10px);
	margin-top: 10px;
	margin-left: 10px;
}

.module.collage.layout-B .module.image:nth-child(3) .ratio {
	padding-top: 74% !important;
}

/* —————————————————————————————————————————————————— */

.module.collage.layout-C .module.image:nth-child(1) {
	width: 65%;
}

.module.collage.layout-C .module.image:nth-child(1) .ratio {
	padding-top: 150% !important;
}

.module.collage.layout-C .module.image:nth-child(2) {
	width: calc(35% - 10px);
	margin-left: 10px;
	margin-top: 65%;
}

.module.collage.layout-C .module.image:nth-child(2) .ratio {
	padding-top: 156% !important;
}

/* ######################### DRIVE — CALL-TO-ACTION ######################### */

.module.cta {
	display: block;
	text-align: center;
}

.module.cta .button {
	display: inline-block;
	position: relative;
	margin: 40px auto;
	cursor: pointer;
	border-color: #D9DADB;
}

.module.cta .button .module.link {
	width: 250px;
	height: 100px;
	padding: 10px 50px 10px 35px;
	text-align: center;
	border: none;
}

.module.cta .button:hover .module.link {
	color: #fff;
}

.module.cta .button:before {
	content: '';
	position: absolute;
	top: 15px;
	left: 0;
	right: 40px;
	bottom: 15px;
	border: 35px solid #D9DADB;
	border-color: inherit;
	border-left: 25px solid transparent;
	z-index: 0;
	transition: border-color 0.3s ease;
}

.module.cta .button:hover:before {
	border-color: #000;
	border-left-color: transparent;
}

.module.cta .button:after {
	content: '';
	display: block;
	position: absolute;
	width: 40px;
	height: 100px;
	top: 0;
	right: 0;
	bottom: 0;
	border: 50px solid transparent;
	border-left: 40px solid #D9DADB;
	border-left-color: inherit;
	border-right-width: 0;
	z-index: 0;
	transition: border-color 0.3s ease;
}

.module.cta .button:hover:after {
	border-left-color: #000;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.cta .button .module.link {
		width: 245px;
		padding: 10px 45px 10px 35px;
	}

}


.module.event {
	display: inline-block;
	padding: 30px;
	border: 4px solid #91e3c8;
	text-decoration: none;
}

.module.event .date {
	line-height: 1.25;
}

.module.event .title {
	margin-top: 20px;
}

.module.event .times {
	margin-top: 20px;
}

.module.event .times .weekday {
	display: inline-block;
	width: 120px;
}

@media screen and (max-width: 767px) {



}


/* ######################### Form - DRIVE ######################### */

.module.form {
	position: relative;
	overflow: hidden;
}

.module.form .module.layout.column {
	padding: 10px;
}

.module.form br {
	display: block;
	width: 100%;
	height: 0;
	clear: both;
}

.module.form .module.heading:first-child {
	margin-bottom: 20px;
}

.module.form .input.large,
.module.form .select.large {
	width: 60%;
}

.module.form .input.medium,
.module.form .select.medium {
	width: 50%;
}

.module.form .input.small,
.module.form .select.small {
	width: 30%;
}

.module.form .input.micro,
.module.form .select.micro {
	width: 20%;
}

.module.form .label {
	display: block;
	opacity: 0;
	transition: opacity 0.5s ease;
	margin: 6px 0 0;
}

.module.form .label.active,
.module.form .radio .label {
	opacity: 1;
}

.module.form .input input {
	width: 100%;
	background-color: transparent;
	border: 1px solid #424141;
	border-width: 0 0 1px;
	padding: 0 0 10px;
	border-radius: 0;
}

.module.form .input input:focus {
	border-width: 0 0 2px;
	padding-bottom: 9px;
}

.module.form .input input:focus,
.module.form .select select:focus {
	outline: none;
}

::-webkit-input-placeholder {
   font-family: 'TheSans_B2_500';
   color: #424141;
}

:-moz-placeholder {
   font-family: 'TheSans_B2_500';
   color: #424141;  
}

::-moz-placeholder {
   font-family: 'TheSans_B2_500';
   color: #424141;  
}

:-ms-input-placeholder {  
   font-family: 'TheSans_B2_500';
   color: #424141;  
}


.module.form .select-wrapper {
	border: 1px solid #424141;
	border-width: 0 0 1px;
	margin-top: -3px;
	overflow: hidden;

}

.module.form .select-wrapper select {
	background: transparent;
	border: none;
	width: 100%;
	height: 50px;
	margin-top: -10px;
	margin-left: -5px;
	padding: 5px; /* If you add too much padding here, the options won't show in IE */
	/*width: 268px;*/
	font-family: 'TheSans_B2_500';
	border-radius: 0;
  	color: #424141;
	cursor: pointer;
}

@media all and (-ms-high-contrast:none) {
	.module.form .select-wrapper select {
		height: 46px;
	} /* IE10 */

	*::-ms-backdrop,
	.module.form .select-wrapper select {
		height: 46px;
	} /* IE11 */
}

.module.form .select-wrapper select.active {
	font-family: 'TheSans_B2_700';
}

.module.form .radio input {
	position: relative;
	top: -3px;
	margin-right: 10px;
}

.module.form .textarea textarea {
	width: 100%;
	height: 200px;
	padding: 15px 20px;
	border: 1px solid #424141;
	resize: none;
	border-radius: 0;
}

.module.form .pagination {
	clear: both;
}

.module.form .pagination .icon {
	position: relative;
	top: 6px;
	font-size: 24px;
	cursor: pointer;
}

.module.form .pagination .next {
	margin-left: 10px;
}

.module.form .pagination .previous {
	margin-right: 10px;
}

.module.form .notice {
	color: #424141;
	margin-bottom: 10px;
}

/* —————————————————————————————————————————————————— */

.module.form[data-type="event"] .container {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.module.form[data-type="event"] .slide {
	position: absolute;
	width: 100%;
	transition: margin-left 0.8s ease;
}

.module.form[data-type="event"] .slide.active {
	margin-left: 0;
}

.module.form[data-type="event"] .slide.left {
	margin-left: -100%;
}

.module.form[data-type="event"] .slide.right {
	margin-left: 100%;
}

.module.form[data-type="event"] .type {
	display: none;
}

.module.form[data-type="event"] .type.active {
	display: block;
}

.module.form[data-type="event"] .slide .add,
.module.form[data-type="event"] .slide .remove {
	cursor: pointer;
}

.module.form[data-type="event"] .slide .add .icon,
.module.form[data-type="event"] .slide .remove .icon {
	display: inline-block;
	width: 20px;
	height: 20px;
	color: #000;
	border: 1px solid #000;
	border-radius: 50%;
	margin-right: 15px;
	font-family: 'TheSans_B2_500';
	font-size: 16px;
	line-height: 12px;
	text-align: center;
}

/* —————————————————————————————————————————————————— */

.module.form[data-type="newsletter"] tr {
	position: relative;
	display: inline-block;
	width: calc(100% / 3);
	padding: 10px;
}

.module.form[data-type="newsletter"] tr td {
	position: relative;
	display: inline-block;
}

.module.form[data-type="newsletter"] tr td:first-child {
	position: absolute;
	bottom: 10px;
	left: 10px;
}

.module.form[data-type="newsletter"] tr td:nth-child(2) {
	width: 100%;
	margin-bottom: 26px;
}

.module.form[data-type="newsletter"] tr td .input {
	width: 100%;
	background-color: transparent;
	border: 1px solid #424141;
	border-width: 0 0 1px;
	padding: 0 0 10px;
	font-family: 'TheSans_B2_700';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 18px;
}

.module.form[data-type="newsletter"] tr td .input:focus {
	outline: none;
	border-width: 0 0 2px;
	padding-bottom: 9px;
}

.module.form[data-type="newsletter"] tr td .label {
	font-size: 13px;
}

/* —————————————————————————————————————————————————— */

.module.form[data-type="newsletter"] table tr:nth-child(2),
.module.form[data-type="newsletter"] table h2 ~ tr:nth-child(3) {
	margin-top: 50px;
}

.module.form[data-type="newsletter"] table tr:nth-child(2),
.module.form[data-type="newsletter"] table tr:nth-child(3),
.module.form[data-type="newsletter"] table tr:nth-child(10),
.module.form[data-type="newsletter"] table tr:nth-child(11),
.module.form[data-type="newsletter"] table h2 ~ tr:nth-child(3),
.module.form[data-type="newsletter"] table h2 ~ tr:nth-child(4),
.module.form[data-type="newsletter"] table h2 ~ tr:nth-child(11),
.module.form[data-type="newsletter"] table h2 ~ tr:nth-child(12) {
	width: calc(100%/6);
}

.module.form[data-type="newsletter"] table h2 ~ tr:nth-child(10) {
	width: calc(100% / 3);
}

.module.form[data-type="newsletter"] tr:last-child {
	width: 100%;
	padding-top: 40px;
	padding-bottom: 40px;
	text-align: center;
}

/* —————————————————————————————————————————————————— */

.module.form[data-type="newsletter"] tr td .button {
	display: inline-block;
	position: relative;
	margin: 40px auto;
	cursor: pointer;
	width: 250px;
	height: 100px;
	padding: 10px 50px 10px 35px;
	text-align: center;
	background: transparent;
	border: none;
	border-color: #7ecad7;
	outline: none;
	color: #000;
	font-family: 'TheSans_B2_700';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 18px;
}

module.form[data-type="newsletter"] tr td .button:focus {
	outline: none;
}

.module.form[data-type="newsletter"] tr td .button:hover {
	color: #fff;
}

.module.form[data-type="newsletter"] tr td .button:before {
	content: '';
	position: absolute;
	top: 15px;
	left: 0;
	right: 40px;
	bottom: 15px;
	border: 35px solid #7ecad7;
	border-color: inherit;
	border-left: 25px solid transparent;
	z-index: -1;
	transition: border-color 0.3s ease;
}

.module.form[data-type="newsletter"] tr td .button:hover:before {
	border-color: #000;
	border-left-color: transparent;
}

.module.form[data-type="newsletter"] tr td .button:after {
	content: '';
	display: block;
	position: absolute;
	width: 40px;
	height: 100px;
	top: 0;
	right: 0;
	bottom: 0;
	border: 50px solid transparent;
	border-left: 40px solid #7ecad7;
	border-left-color: inherit;
	border-right-width: 0;
	z-index: -1;
	transition: border-color 0.3s ease;
}

.module.form[data-type="newsletter"] tr td .button:hover:after {
	border-left-color: #000;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.form[data-type="newsletter"] tr td .button {
		width: 245px;
		padding: 10px 45px 10px 35px;
	}

	.module.form .module.cta .module.link {
		width: 215px;
	}

}

/* —————————————————————————————————————————————————— */

.module.form .status {
	font-family: 'TheSans_B2_700';
	font-size: 28px;
	text-align: center;
	line-height: 120%;
	text-transform: uppercase;
	margin: 50px 20%;
	display: none; 
}

.module.form .status.active {
	display: block; 
}


/* ######################### DRIVE — GRID ######################### */

.module.grid .tile {
	position: relative;
	text-align: left;
	padding: 10px;
}

/* —————————————————————————————————————————————————— */

.module.grid .tile.brand .image {
	background-color: #fff;
	border: 10px solid transparent;
	transition: border-color 0.3s ease;
}

.module.grid .tile.brand:hover .image {
	border-color: #d9dadb;
}

.module.grid .tile.brand .label {
	margin-top: 10px;
	padding-left: 50px;
}

.module.grid .tile.brand .label .icon.arrow {
    margin-right: 20px;
    margin-left: -50px;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 1023px) {

	.module.grid .tile.brand {
		min-width: 50%;
	}

}

/* —————————————————————————————————————————————————— */

.module.grid .tile.location .overlay {
	display: flex;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	text-align: center;
	padding: 10px;
	align-items: center;
	justify-content: center;
}

.module.grid .tile.location .text {
	position: relative;
}

.module.grid .tile.location .notice {
	display: block;
	position: absolute;
	width: 100%;
	top: 100%;
	padding-top: 20px;
}

/* —————————————————————————————————————————————————— */

.module.grid .tile.event {
	/*cursor: pointer;*/
	transition: color 0.3s ease;
}

.module.grid .tile.event .link {
	text-decoration: none;
}

.module.grid .tile.event .link:hover {
	color: #fff;
}

.module.grid .tile.event .date {
	border-top: 1px solid #000;
	padding-top: 20px;
}

.module.grid .tile.event .date .time {
    white-space: nowrap;
}

.module.grid .tile.event .module.paragraph {
	margin-top: 0;
}


/* ######################### KOKO — SLIDER ######################### */

.module.layout.column {
}

.module.layout.column.center-vertical {
	display: ms-flexbox;
	display: flex;
}

.module.layout.column > .module.image {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	z-index: 0;
}

.module.layout.column > .container {
	position: relative;
	display: block;
	width: 100%;
	margin: 0 auto;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.layout.column.column-border {
		width: calc(100% - 20px);
		margin: 20px 10px;
	}

}

/* ######################### DRIVE — MENU ######################### */

.module.menu {
	background-color: #7ecad7;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.menu .row {
		padding: 80px 0 50px;
	}

}

/* —————————————————————————————————————————————————— */

.module.menu .logo {
	display: block;
	width: 128px;
	height: 46px;
	position: absolute;
	left: 50%;
	top: 30px;
	margin-left: -64px;
	background-image: url('../img/logo.svg');
	background-size: contain;
	background-repeat: no-repeat;
	z-index: 4;
}

/* —————————————————————————————————————————————————— */

.module.menu .title {
	margin: 0 0 45px;
}

.module.menu .navigation .node {
	display: block;
	padding: 0 0 20px;
}

.module.menu .navigation .sublevel {
    display: block;
    padding: 0;
    margin-top: 20px;
    margin-left: 20px;
}

.module.menu .navigation .sublevel .subnode {
    display: block;
    margin-top: 10px;
}

.module.menu .navigation .sublevel .link {
    font-size: 24px;
    text-decoration: none;
}

/* —————————————————————————————————————————————————— */

.module.menu .contact {
	line-height: 150%;
}

.module.menu .contact .approach {
	display: inline-block;
	margin: 0;
	transition: color 0.3s ease;
}

.module.menu .contact .mail {
	transition: color 0.3s ease;
}

.module.menu .contact .legal .link {
	transition: color 0.3s ease;
}

.no-touch .module.menu .contact .approach:hover,
.no-touch .module.menu .contact .mail:hover,
.no-touch .module.menu .contact .legal .link:hover,
.module.menu .contact .approach.hover-touch,
.module.menu .contact .mail.hover-touch,
.module.menu .contact .legal .link.hover-touch {
	color: #fff;
}

.module.menu .contact .phone {
	display: block;
	margin: 20px 0 0;
}

.module.menu .contact .legal,
.module.menu .contact .legal .copyright {
	margin: 20px 0 0;
}

.module.menu .contact .legal .link {
	text-decoration: none;
	border-bottom: 2px solid transparent;
	transition: border-color 0.3s ease;
}

.module.menu .contact .legal .link:hover {
	border-color: #fff;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.menu .logo {
		width: 100px;
		height: 46px;
		top: 15px;
		margin-left: -50px;
	}

	.module.menu .contact {
		margin-top: 30px;
	}

}

/* —————————————————————————————————————————————————— */

@media screen and (min-width: 768px) and (max-width: 1024px) {

	.module.layout.column.column-50-100.navigation,
	.module.layout.column.column-50-100.contact {
		width: 50%;
	}

}





/* ######################### MENU - DRIVE - TOGGLE ######################### */

.menu-toggle {
	position: absolute;
	left: 30px;
	top: 30px;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	z-index: 3;
	transition: background-color 0.3s ease, top 0.5s ease;
	-webkit-transform:translateZ(1px);
	-moz-transform:translateZ(1px);
	-o-transform:translateZ(1px);
	transform:translateZ(1px);
}

.no-touch .menu-toggle:hover,
.menu-toggle.hover-touch {
	background-color: #000;
}

.menu-toggle .icon {
	display: inline-block;
	position: relative;
	width: 24px;
	height: 15px;	
	background-image: linear-gradient(0deg, #000, #000, #000);
	background-position: 50%;
	background-repeat: repeat-x;
	background-size: auto 1px;
	opacity: 0.99;
	transition: opacity 0.3s ease, transform 0.3s ease;
}

.no-touch .menu-toggle:hover .icon,
.no-touch .menu-toggle.animate.active:hover .icon,
.menu-toggle.hover-touch .icon,
.menu-toggle.animate.active.hover-touch .icon {	
	background-image: linear-gradient(0deg, #fff, #fff, #fff);
}

.menu-toggle.animate.active .icon {
	background-image: linear-gradient(0deg, #000, #000, #000);
	transform: rotate(-180deg);
}

.menu-toggle .icon:before,
.menu-toggle .icon:after {
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 1px;
	left: 0;
	background-color: #000;
	transition: width 0.2s ease, margin 0.2s ease, transform 0.2s ease;
}

.no-touch .menu-toggle:hover .icon:before,
.no-touch .menu-toggle:hover .icon:after,
.menu-toggle.hover-touch .icon:before,
.menu-toggle.hover-touch .icon:after {
	background-color: #fff;
}

.menu-toggle.animate.active .icon:before {
	width: 8px;
	margin-top: -3px;
	transform: rotate(-45deg);
}

.menu-toggle.animate.active .icon:after {
	width: 8px;
	left: -1px;
	margin-bottom: -3px;
	transform: rotate(45deg);
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 1024px) {

	.menu-toggle {
		position: absolute;
		left: 10px;
		top: 85px;
		width: 40px;
		height: 40px;
	}
	
    .no-news .menu-toggle {
        top: 15px;
    }

	.mobile-scroll .menu-toggle{
		top: 10px;
	}

	.menu-toggle .icon {
		width: 18px;
		height: 11px;
	}

}


.module.modal {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0,0,0,0.2);
    z-index: 30;
    transform: translateZ(10px);
}

.module.modal .container {
    position: relative;
    display: block;
    width: calc(100% - 20px);
    max-width: 600px;
    background-color: #fff;
    padding: 40px 40px 40px 140px;
}

.module.modal .icon {
    position: absolute;
    left: 40px;
    top: 40px;
    font-size: 50px;
}

.module.modal .title {
    margin: 0;
}

.module.modal .intro {
    margin-top: 20px;
}

.module.modal .details {
    margin-top: 10px;
}

.module.modal .buttons {
    margin-top: 50px;
}

.module.modal .button {
    display: inline-block;
    padding: 10px 30px;
    border: none;
    -webkit-appearance: none;
    appearance: none;
}

.module.modal .button:focus,
.module.modal .button:active {
    -webkit-appearance: none;
    appearance: none;
}

.module.modal .button:not(:last-child) {
    margin-right: 20px;
}

.module.modal .button.accept {
    background-color: #7ecad7;
}

.module.modal .button.cancel {
    background-color: #eceded;
}


@media screen and (max-width: 767px) {

    .module.modal .container {
        padding: 20px;
    }

    .module.modal .icon {
        display: none;
    }

    .module.modal .buttons {
        text-align: center;
    }

}


/* ######################### DRIVE — OPT-OUT ######################### */

.module.opt-out {
	position: relative;
	display: block;
	width: 100%;
	padding: 20px 0;
	text-align: center;
}

.module.opt-out .button.opt-out {
	display: inline-block;
	font-family: 'TheSans_B2_700';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-weight: 400;
	font-size: 18px;
	line-height: 150%;
    text-decoration: none;
	background: #fff;
	border: 2px solid #000;
	padding: 5px 20px;
	color: #000;
	transition: background-color 0.3s ease, color 0.3s ease;
	cursor: pointer;
}

.module.opt-out .button.opt-out:hover {
	background: #000;
	color: #fff;
}


.section.blog {
	padding: 200px 0 100px;
}

.section.blog .container {
	margin: 0 auto;
}

.section.blog .list.categories {
	margin-top: 30px;
	text-align: center;
	list-style-type: none;
}

.section.blog .list.categories .node {
	display: inline-block;
	opacity: .4;
}

.section.blog .list.categories .node:hover,
.section.blog .list.categories .node.active {
	opacity: 1;
}

.section.blog .list.categories .node:not(:first-child) {
	margin-left: 40px;
}

.section.blog .list.categories .node .link {
	text-decoration: none;
}

.section.blog .category.description {
	width: 680px;
	margin: 80px auto 0;
}

.section.blog .posts {
	margin-top: 75px;
	margin-left: -50px;
}

.section.blog .post {
	position: relative;
	width: 356px;
	height: 530px;
	margin-top: 20px;
	margin-left: 50px;
	text-decoration: none;
	float: left;
}

.section.blog:not(.crosslinks) .post:nth-child(1),
.section.blog:not(.crosslinks) .post:nth-child(2) {
	width: 545px;
	height: 600px;
}

.section.blog .post:nth-child(2) {
	margin-left: 80px;
}

.section.blog:not(.crosslinks) .post .image {
	width: 100%;
	height: 226px;
}

.section.blog:not(.crosslinks) .post:nth-child(1) .image,
.section.blog:not(.crosslinks) .post:nth-child(2) .image {
	height: 353px;
}

.section.blog.crosslinks .post {
	width: 545px !important;
    height: auto !important;
    margin-top: 70px;
}

.section.blog.crosslinks .post:nth-child(even) {
    float: right;
}

.section.blog.crosslinks .post:nth-child(1),
.section.blog.crosslinks .post:nth-child(2) {
    margin-top: 0;
}

.section.blog .post .tags {
	margin-top: 20px;
}

.section.blog .post .title {
	margin-top: 10px;
	height: 2.4em;
	overflow: hidden;
}

.section.blog .post .excerpt {
	margin-top: 16px;
	height: 100px;
	overflow: hidden;
}

@media screen and (max-width: 768px) {
    
    .section.blog {
        padding-top: 100px;
    }

    .section.blog .container {
        width: 100%;
        padding: 0 20px;
    }

    .section.blog .category.description {
        width: 100;
        margin: 80px auto 0;
    }

    .section.blog .posts {
        margin-top: 75px;
        margin-left: 0;
    }

    .section.blog.crosslinks .post,
    .section.blog .post {
        width: 100% !important;
        height: auto !important;
        margin-top: 20px !important;
        margin-left: 0 !important;
        float: none !important;
    }
    
    .section.blog.crosslinks .post {
        margin-top: 40px !important;
    }

    .section.blog .post:nth-child(1),
    .section.blog .post:nth-child(2) {
        width: 100% !important;
        height: auto;
    }

    .section.blog .post:nth-child(2) {
        margin-left: 0 !important;
    }
    
    .section.blog.crosslinks .post .excerpt {
        height: auto;
    }
    
    .section.blog .list.categories .node:not(:first-child) {
        margin-left: 20px;
    }
    
    .section.blog .category.description {
        width: 100%;
        margin: 50px auto 0;
    }

    .section.blog .post {
        display: block;
        margin-top: 50px;
    }

}

@media screen and (min-width:769px) and (max-width: 1239px) {

    .section.blog .container {
        padding: 0 20px;
        width: 100%;
    }
    
    .section.blog .posts {
        margin-top: 75px;
        margin-left: -20px;
    }

    .section.blog .post {
        position: relative;
        width: calc((100% - 60px) / 3);
        height: 530px;
        margin-top: 20px;
        margin-left: 20px;
        text-decoration: none;
        float: left;
    }

    .section.blog .post:nth-child(1),
    .section.blog .post:nth-child(2) {
        width: calc((100% - 40px) / 2);
        height: 600px;
    }

    .section.blog .post:nth-child(2) {
        margin-left: 20px;
    }

}


.section.calendar-new {
    padding-top: 140px;
    padding-bottom: 100px;
}

.section.calendar-new .container {
    margin: 0 auto;
}

.section.calendar-new .container > .title {
    margin-bottom: 80px;
}

.menu-push.calendar .container.modules {
    background: #d3f4e9;
}

.menu-push.calendar .teaser .module.event {
	width: calc((100% - 40px) / 2);
	height: 355px;
	border: none;
	float: left;
}

.menu-push.calendar .teaser .module.event:nth-child(2) {
    float: right;
}

.menu-push.calendar .teaser .module.event .date {
	font-size: 16px;
}

.menu-push.calendar .teaser .module.event .title {
	font-size: 26px;
}

.menu-push.calendar .teaser .module.event .time {
	font-size: 16px;
	/*display: block;*/
}

.menu-push.calendar .teaser .module.event .time .weekday {
	width: 90px;
}

.menu-push.calendar .events .module.event {
	width: calc((100% - 40px) / 3);
	height: 355px;
    background: #fff;
	border: none;
	float: left;
    margin-top: 20px;
    margin-left: 20px;
}

.menu-push.calendar .events .module.event:first-child,
.menu-push.calendar .events .module.event:nth-child(3n + 1) {
    margin-left: 0;
}

.menu-push.calendar .events .module.event .date {
	font-size: 16px;
}

.menu-push.calendar .events .module.event .title {
	font-size: 26px;
}

.menu-push.calendar .events .module.event .time {
	font-size: 16px;
	/*display: block;*/
}

.menu-push.calendar .events .module.event .time .weekday {
	width: 90px;
}

@media screen and (max-width: 767px) {
    
    .menu-push.calendar .teaser,
    .menu-push.calendar .events {
        padding-left: 20px;
        padding-right: 20px;
    }

    .menu-push.calendar .teaser .module.event,
    .menu-push.calendar .events .module.event {
        width: 100%;
    }

    .menu-push.calendar .events .module.event,
    .menu-push.calendar .events .module.event:first-child,
    .menu-push.calendar .events .module.event:nth-child(3n + 1) {
        margin-left: 0;
    }

}

@media screen and (max-width: 1239px) {

    .section.calendar-new .container {
        width: 100%;
    }
    
    .menu-push.calendar .events {
        padding-left: 20px;
        padding-right: 20px;
    }

}




.section.exhibition {
    padding-bottom: 100px;
}

.section.exhibition > .video {
    display: block;
    position: relative;
    width: 100%;
    margin: 0;
}

.section.exhibition > .module.image {
    display: block;
    position: relative;
    width: 100%;
    height: 100vh;
    margin: 0;
	overflow: hidden;
}

.section.exhibition > .video video {
    position: relative;
    width: 100%;
	/*position: absolute;*/
	/*top: 50%;*/
	/*left: 50%;*/
	/*transform: translateX(-50%) translateY(-50%);*/
	/*min-width: 100%;*/
	/*min-height: 100%;*/
}

.section.exhibition .container {
    margin: 0 auto;
}

.section.exhibition .intro {
    max-width: 780px;
	margin: 100px auto 0;
}

.section.exhibition .intro > .title {
    margin-bottom: 30px;
}

.section.exhibition .intro > .introduction {
    padding-left: 60px;
	position: relative;
}

.section.exhibition .intro > .introduction > .icon {
    position: absolute;
	left: 4px;
	font-size: 24px;
}

.section.exhibition .modules {
	margin: 100px auto 0;
}

.section.exhibition .modules > *:not(:first-child) {
	margin-top: 100px;
}

.section.exhibition .list.teasers {	
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
}

.section.exhibition .list.teasers:after {
	content: '';
	display: table;
	clear: both;
}

.section.exhibition .list.teasers .node {
	display: block;
	width: calc((100% - 100px) / 2);
	float: left;
}

.section.exhibition .list.teasers .node:nth-child(2) {
    margin-top: 200px;
}

.section.exhibition .list.teasers .node:nth-child(even) {
	float: right;
}

.section.exhibition .list.teasers .image .ratio {
	padding-top: calc(100% / 4 * 3) !important;
}

.section.exhibition .list.teasers .node .link {
	display: block;
	text-decoration: none;
	padding: 30px;
}

.section.exhibition .list.teasers .node .subtitle {
	margin-top: 10px;
}

.section.exhibition .list.teasers .node .introduction {
	height: 2.4em;
	clear: both;
	padding-bottom: 20px;
}

.section.exhibition .list.teasers .node .icon {
	display: block;
	font-size: 30px;
	line-height: 100%;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	text-align: center;
	padding-top: 10px;
	float: right;
	transition: opacity 0.3s ease;
}

.section.exhibition .list.teasers .node:hover .icon {
	opacity: 0.7;
}

.section.exhibition .module.images-text {
	margin-left: auto;
	margin-right: auto;
	max-width: 980px;
}

.section.exhibition .module.images-text .column {
	position: relative;
	display: inline-block;
	width: calc(50% - 50px);
	float: left;
}

.section.exhibition .module.images-text .column.right {
	margin-left: 100px;
	float: right;
}

.section.exhibition .module.images-text .subtitle {
	margin-top: 20px;
}

.section.exhibition .module.images-text .text {
	margin-top: 30px;
	padding-left: 50px;
	position: relative;
}

.section.exhibition .module.images-text .text > .icon {
    position: absolute;
	left: 4px;
	font-size: 20px;
}

.section.exhibition .module.post-images {
	width: 100%;
}

.section.exhibition .module.post-images .image:nth-child(1),
.section.exhibition .module.post-images.landscape .image:nth-child(1) {
    width: 55%;
	height: auto;
	float: left;
	clear: none;
	margin-top: 20%;
}

.section.exhibition .module.post-images .image:nth-child(1) .ratio {
	padding-top: 135% !important;
}

.section.exhibition .module.post-images.trio .image:nth-child(2),
.section.exhibition .module.post-images.landscape.trio .image:nth-child(2) {
    width: calc(45% - 20px);
	height: auto;
    margin: 0 0 0 20px;
	float: right;
}

.section.exhibition .module.post-images.trio .image:nth-child(2) .ratio {
	padding-top: 100% !important;
}

.section.exhibition .module.post-images.trio .image:nth-child(3),
.section.exhibition .module.post-images.landscape.trio .image:nth-child(3) {
    width: calc(35% - 20px);
	height: auto;
	margin: 20px 0 0 20px;
	float: right;
}

.section.exhibition .module.post-images.trio .image:nth-child(3) .ratio {
	padding-top: 100%;
}

.section.exhibition .module.post-images.trio .description {
	display: none !important;
}

@media screen and (max-width: 767px) {

    .section.exhibition .container {
        width: 100%;
    }

    .section.exhibition .intro {
        padding: 0 30px;
    }

}

@media screen and (max-width: 1239px) {

    .section.exhibition .container {
        width: 100%;
    }
    
    .section.exhibition .list.teasers {	
        padding: 0;
    }

    .section.exhibition .list.teasers .node {
        display: block;
        width: 100%;
        float: none;
    }

    .section.exhibition .list.teasers .node:nth-child(2) {
        margin-top: 0;
    }
    
    .section.exhibition .module.images-text .column {
        display: block;
        width: 100%;
        float: none;
        padding: 0 30px;
    }
    
    .section.exhibition .module.images-text .column.right {
        padding-top: 20px;
    }

}


/* ######################### FONTS - DRIVE ######################### */

/*@font-face {
	font-family: 'TheSans_B2_500';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/TheSans_B2_500.woff') format('woff');
}

@font-face {
	font-family: 'TheSans_B2_700';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/TheSans_B2_700.woff') format('woff');
}*/

@font-face {
	font-family: 'TheSans_B2_500';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/VWAGTheSans-Regular.woff') format('woff');
}

@font-face {
	font-family: 'TheSans_B2_700';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/VWAGTheSans-Bold.woff') format('woff');
}

.font-default,
.font-medium,
.font-thesans,
.font-thesans-regular {
	font-family: 'TheSans_B2_500';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.font-bold,
.font-thesans-bold,
strong {
	font-family: 'TheSans_B2_700';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-weight: 400;
}

.font-smallest {
	font-size: 13px;
	line-height: 120%;
}

.font-small {
	font-size: 16px;
	line-height: 120%;
}

.font-default,
.font-regular {
	font-size: 18px;
	line-height: 150%;
}

.font-large {
	font-size: 28px;
	line-height: 120%;
}

.font-larger {
	font-size: 32px;
	line-height: 120%;
}

.font-largest {
	font-size: 45px;
	line-height: 120%;
}

.font-maximum {
	font-size: 75px;
	line-height: 120%;
}

.text-center {
	text-align: center;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.font-smallest {
		font-size: 13px;
		line-height: 120%;
	}

	.font-small {
		font-size: 14px;
		line-height: 120%;
	}

	.font-default,
	.font-regular {
		font-size: 16px;
		line-height: 150%;
	}

	.font-large {
		font-size: 21px;
		line-height: 120%;
	}

	.font-largest {
		font-size: 24px;
		line-height: 120%;
	}

	.font-maximum {
		font-size: 32px;
		line-height: 120%;
	}

}


.section.front {
	padding-top: 140px;
	padding-bottom: 100px;
}

.section.front .container {
	margin: 0 auto;
}

.section.front .intro:after {
    content: '';
    display: table;
    clear: both;
}


.section.front .intro .module.image {
	height: 596px;
    opacity: 1;
    transition: opacity 0.7s ease;
}

.section.front .intro .module.image.link {
    text-decoration: none;
    border: none;
}

.section.front .intro .module.image.link:hover {
    opacity: 0.8;
}

.section.front .intro > .title {
	display: inline-block;
	font-size: 65px;
	width: 750px;
	margin-top: 80px;
}

.section.front .intro .module.event {
	width: 330px;
	background: #91e3c8;
	border-color: #91e3c8;
	margin-top: 80px;
	float: right;
	transition: background-color 0.3s ease, border-color 0.3s ease;
	cursor: pointer;
}

.section.front .intro .module.event:hover {
	background-color: rgba(145,227,200,0.4);
	border-color: rgba(145,227,200,0.4);
}

.section.front .intro .module.event .date {
	font-size: 20px;
}

.section.front .intro .module.event .title {
	font-size: 26px;
}




@media screen and (max-width: 768px) {
	
	.no-news .section.front {
		padding-top: 70px;
	}

	.section.front .container {
		width: 100%;
	}

	.section.front .intro .module.image {
		height: 320px;
	}

	.section.front .intro > .title {
		width: 100%;
		font-size: 30px;
		padding: 0 20px;
		margin-top: 30px;
	}

	.section.front .intro .module.event {
		width: calc(100% - 40px);
		margin: 30px 20px 20px;
	}

	.section.front .intro > .text {
		width: 100%;
		padding: 0 20px;
	}

}

@media screen and (min-width:769px) and (max-width: 1239px) {

	.section.front .container {
		width: 100%;
	}

	.section.front .intro > .title,
	.section.front .intro > .text {
		width: calc(100% - 400px);
	}
}

.section.front .posts {
	position: relative;
	margin-top: 150px;
}

.section.front .posts:before
.section.front .posts:after {
	content: '';
	display: table;
	clear: both;
}

.section.front .posts .fact {
	display: inline-block;
	width: 530px;
	background: #eceded;
	background-image: url('../img/fact-arrow.svg');
	background-repeat: no-repeat;
	background-size: 100px 100px;
	background-position: top 50px right 50px;
	padding: 30px 50px;
	text-decoration: none;
	float: left;
	transition: background-color 0.3s ease;
}

.section.front .posts .fact.has-hover {
	cursor: pointer;
}

.section.front .posts .fact.has-hover:hover {
	background-color: #f4f5f5;
}

.section.front .posts .fact strong {
	display: block;
}

.section.front .posts .fact small {
	display: inline-block;
	width: 50%;
	margin-top: 10px;
}

.section.front .post {
	position: relative;
	width: 530px;
	margin-top: 80px;
	text-decoration: none;
	margin-left: 80px;
	float: right;
}

.section.front .post:nth-child(2) {
	margin-top: 0;
}

.section.front .post:nth-child(odd) {
	margin-left: 0px;
	float: left;
}

@media screen and (min-width:769px) and (max-width: 1239px) {

	.section.front .container {
		width: 100%;
		padding: 0 20px;
	}

	.section.front .post {
		width: calc((100% - 20px) / 2);
		margin-left: 20px;
	}

	.section.front .post:nth-child(odd) {
		margin-left: 0px;
	}

}

.section.front .post .image {
	width: 100%;
	height: 353px;
}

.section.front .post .tags {
	margin-top: 20px;
}

.section.front .post .title {
	margin-top: 10px;
	height: 2.4em;
	overflow: hidden;
}

.section.front .post .excerpt {
	margin-top: 16px;
	height: 135px;
	overflow: hidden;
}

@media screen and (max-width: 768px) {

	.section.front .posts {
		margin-top: 30px;
		padding: 0 20px;
	}

	.section.front .posts .fact {
		width: 100%;
	}

	.section.front .post,
	.section.front .post:nth-child(2) {
		width: 100%;
		margin-top: 40px;
	}

}    

@media screen and (min-width:769px) and (max-width: 1239px) {

	.section.front .posts .fact {
		width: calc((100% - 20px) / 2);
	}

}


/* —————————————————————————————————————————————————— */

.section.front .newsletter {
	/*margin-top: 20px;*/
	/*margin-bottom: 40px;*/
}

.section.front .newsletter .description {
	margin-bottom: 20px;
	/*font-size: 13px;*/
	/*line-height: 150%;*/
}

.section.front .newsletter .form {
	position: relative;
	text-align: left !important;
}

.section.front .newsletter .form h2 {
	text-align: left !important;
}

.section.front .newsletter .label {
	position: absolute;
	left: 0;
	bottom: -20px;
}

.section.front .newsletter .input {
	width: calc(100% - 10px);
	background-color: transparent;
	border: 1px solid #fff;
	border-width: 0 0 1px;
	padding: 0 0 10px;
	color: #fff;
	border-radius: 0;
}

.section.front .newsletter .input:focus {
	outline: none;
}

.section.front .newsletter .input:required,
.section.front .newsletter .input:invalid {
	box-shadow: 0 0 0 red;
}

.section.front .newsletter .button {
	position: absolute;
	bottom: 0;
	right: 10px;
	width: 40px;
	height: 50px;
	overflow: hidden;
	font-family: 'DriveIcons' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background: transparent;
	border: none;
	color: transparent;
	cursor: pointer;
	display: inline-block;
	width: 40px;
	height: 40px;
	background: #fff;
	border: none;
	border-radius: 50%;
	-webkit-appearance: none;
	float: right;
	margin-bottom: 5px;
}

.section.front .newsletter .button, .module.footer .newsletter .button {
	width: 60px !important;
	height: 60px !important;
}


.section.front .newsletter .button:before {
	content: "\e60e";
	position: relative;
	left: -5px;
	font-size: 28px;
	color: #000;
}

/* —————————————————————————————————————————————————— */

.section.front .newsletter {
	display: inline-block;
	position: relative;
	width: 530px;
	padding: 30px 50px;
	background: #ffef44;
	margin-top: 80px;
	float: right;
}

.section.front .newsletter .form .submit {
	position: relative;
	display: inline-block;
	width: 40px;
	height: 40px;
	background: #fff;
	border: none;
	border-radius: 50%;
	-webkit-appearance: none;
	transform: rotate(90deg);
}

.section.front .newsletter .text {
	margin-top: 30px;
}

.section.front .newsletter .form {
	padding: 0 0 5px;
	border-bottom: 1px solid #000;
	margin-top: 80px;
}

.section.front .newsletter .form:after {
	content: '';
	display: table;
	clear: both;
}

.section.front .newsletter .form .input {
	-webkit-appearance: none;
	/*width: 75%;*/
	font-size: 16px;
	background: none;
	border: none;
}

.section.front .newsletter .form .input::placeholder {
	color: #777;
}

.section.front .newsletter .form .submit {
	float: right;
	margin-bottom: 5px;
}

.section.front .newsletter .form .submit i {
	position: relative;
	font-size: 30px;
}


@media screen and (max-width: 768px) {

	.section.front .newsletter {
		position: relative;
		width: 100%;
		padding: 30px 20px;
		background: #ffef44;
		margin: 80px 0 0;
		float: none;
	}

}

@media screen and (min-width:769px) and (max-width: 1239px) {

	.section.front .newsletter {
		width: calc((100% - 20px) / 2);
	}

}

.section.front .action {
	text-align: center;
	padding-top: 80px;
	clear: both;
}

.section.front .action .button {
	display: inline-block;
	position: relative;
	margin: 40px auto;
	cursor: pointer;
	border-color: #D9DADB;
}

.section.front .action .button .module.link {
	width: 250px;
	height: 100px;
	padding: 10px 50px 10px 35px;
	text-align: center;
	border: none;
}

.section.front .action .button:hover .module.link {
	color: #fff;
}

.section.front .action .button:before {
	content: '';
	position: absolute;
	top: 15px;
	left: 0;
	right: 40px;
	bottom: 15px;
	border: 35px solid #D9DADB;
	border-color: inherit;
	border-left: 25px solid transparent;
	z-index: 0;
	transition: border-color 0.3s ease;
}

.section.front .action .button:hover:before {
	border-color: #000;
	border-left-color: transparent;
}

.section.front .action .button:after {
	content: '';
	display: block;
	position: absolute;
	width: 40px;
	height: 100px;
	top: 0;
	right: 0;
	bottom: 0;
	border: 50px solid transparent;
	border-left: 40px solid #D9DADB;
	border-left-color: inherit;
	border-right-width: 0;
	z-index: 0;
	transition: border-color 0.3s ease;
}

.section.front .action .button:hover:after {
	border-left-color: #000;
}

.section.front .events {
	background: #91e3c8;
	padding: 80px 0;
}

.section.front .events > .container > .title {
	width: 25%;
	float: left;
}

.section.front .events .module.event {
	width: calc((75% - 40px) / 3);
	height: 355px;
	background: #fff;
	border: none;
	float: left;
	transition: background 0.3s ease;
	cursor: pointer;
}

.section.front .events .module.event:hover {
	background: rgba(255,255,255, 0.6);
}

.section.front .events .module.event:not(:nth-child(2)) {
	margin-left: 20px;
}

.section.front .events .module.event .date {
	font-size: 16px;
}

.section.front .events .module.event .title {
	font-size: 26px;
}

.section.front .events .module.event .time {
	font-size: 16px;
	/*display: block;*/
}
.section.front .events .module.event .time .weekday {
	width: 90px;
}

@media screen and (max-width: 768px) {

	.section.front .events {
		padding: 20px 20px 30px;
	}

	.section.front .events .module.event {
		width: 100%;
		float: none;
		margin: 20px 0 0;
	}

	.section.front .events .module.event:not(:nth-child(2)) {
		margin-left: 0;
	}

}

@media screen and (min-width:769px) and (max-width: 1239px) {

	.section.front .events > .container > .title {
		width: 100%;
		float: none;
	}

	.section.front .events .module.event {
		margin-top: 20px;
		width: calc((100% - 40px) / 2);
	}

	.section.front .events .module.event:nth-child(even) {
		margin-left: 0;
	}

}


/*///////////////////////// START — PAGES ///////////////////////// */

.section.pages {
	background: #CBEAEF;
	padding: 120px 0 100px;
	margin-top: 30px;
}

.section.pages .intro .title {
	display: inline-block;
	width: 460px;
	float: left;
}

.section.pages .intro .description {
	display: inline-block;
	width: 460px;
	margin-top: 50px;
	float: left;
}

.section.pages .intro .module.image {
	width: 620px;
	height: 500px;
	float: right;
}

.section.pages .teasers {
	margin-top: 150px;
}

.section.pages .teasers .module.teaser {
	width: 350px;
	margin-left: calc(50% - 350px - 60px);
	float: left;
	min-height: 1000px;
}

.section.pages .teasers .module.teaser:not(:first-child) {
	margin-top: 80px;
}

.section.pages .teasers .module.teaser:nth-child(2) {
	margin-top: 100px;
}

.section.pages .teasers .module.teaser:nth-child(even) {
	margin-left: 0;
	margin-right: calc(50% - 350px - 60px);
	float: right;
}

.section.pages .teasers .module.teaser .module.image {
	height: 500px;
}

.section.pages .teasers .module.teaser .label {
	display: block;
	margin-top: 40px;
}

.section.pages .teasers .module.teaser .title {
	display: block;
	margin-top: 20px;
}

.section.pages .teasers .module.teaser .excerpt {
	display: block;
	margin-top: 40px;
}

.section.pages .teasers .module.teaser .links {
	display: block;
	margin-top: 40px;
}

.section.pages .teasers .module.teaser .links .node {
	display: block;
}

.section.pages .teasers .module.teaser .links .node:not(:first-child) {
	margin-top: 10px;
}

.intro .link,
.section.pages .teasers .module.teaser .links .link {
	text-decoration: none;
}

.intro .link {
    display: inline-block;
    margin-top: 20px;
    font-size: 18px;
}

.intro .link .text,
.section.pages .teasers .module.teaser .links .link .text {
	border-bottom: 1px solid transparent;
	transition: border-color 0.3s ease;
}

.intro .link:hover .text,
.section.pages .teasers .module.teaser .links .link:hover .text {
	border-color: #000;
}

.intro .link .icon {
	display: inline-block;
	position: relative;
	width: 30px;
	height: 10px;
	background-image: linear-gradient(0deg, #000, #000, #000);
	background-position: 50%;
	background-repeat: repeat-x;
	background-size: auto 1px;
	margin-right: 20px;
}

.intro .link .icon:before,
.intro .link .icon:after {
	content: '';
	display: inline-block;
	position: absolute;
	width: 8px;
	height: 1px;
	right: 0;
	background-color: #000;
}

.intro .link .icon:before {
	margin-top: -3px;
	top: 50%;
	transform: rotateZ(45deg);
}

.intro .link .icon:after {
	margin-bottom: -4px;
	bottom: 50%;
	transform: rotateZ(-45deg);
}

.section.pages .action .button {
	border-color: #ffffff;
}

@media screen and (max-width: 768px) {

	.section.pages {
		padding: 20px 0 30px;
		margin-top: 30px;
	}

	.section.pages .intro .title {
		width: 100%;
		padding: 0 20px;
		float: none;
	}

	.section.pages .intro .description {
		display: inline-block;
		width: 100%;
		padding: 0 20px;
		margin-top: 20px;
		float: none;
	}

	.section.pages .intro .module.image {
		width: 100%;
		height: 320px;
		float: none;
	}

	.section.pages .teasers {
		margin-top: 30px;
		padding: 0 20px;
	}

	.section.pages .teasers .module.teaser {
		width: 100%;
		margin-left: 0;
		margin-top: 50px;
		min-height: 0;
		float: none;
	}

	.section.pages .teasers .module.teaser:not(:first-child) {
		margin-top: 50px;
	}

	.section.pages .teasers .module.teaser:nth-child(2) {
		margin-top: 50px;
	}

	.section.pages .teasers .module.teaser:nth-child(even) {
		margin-left: 0;
		margin-right: 0;
		float: none;
	}

	.section.pages .teasers .module.teaser .module.image {
		height: 320px;
	}

}

@media screen and (min-width:769px) and (max-width: 1239px) {

	.section.pages .intro .module.image {
		width: calc((100% - 20px) / 2);
	}

}


/*///////////////////////// START — PAGES ///////////////////////// */

.section.posts {
	padding: 120px 0 100px;
}

.section.posts .intro .title {
	display: inline-block;
	width: 460px;
	margin-top: 0;
	float: left;
}

.section.posts .intro .description {
	display: inline-block;
	width: 460px;
	margin-top: 50px;
	float: left;
}

.section.posts .intro .categories {
	display: inline-block;
	width: 500px;
	/*height: 350px;*/
	background: #eceded;
	padding: 50px;
	float: right;
}

.section.posts .intro .categories .links {
	margin-top: 30px;
}

.section.posts .intro .categories .links .node:not(:first-child) {
	margin-top: 10px;
}

.section.posts .intro .categories .links .link {
	text-decoration: none;
}

.section.posts .intro .categories .icon {
	display: inline-block;
	position: relative;
	width: 30px;
	height: 10px;
	background-image: linear-gradient(0deg, #000, #000, #000);
	background-position: 50%;
	background-repeat: repeat-x;
	background-size: auto 1px;
	margin-right: 20px;
}

.section.posts .intro .categories .icon:before,
.section.posts .intro .categories .icon:after {
	content: '';
	display: inline-block;
	position: absolute;
	width: 8px;
	height: 1px;
	right: 0;
	background-color: #000;
}

.section.posts .intro .categories .icon:before {
	margin-top: -3px;
	top: 50%;
	transform: rotateZ(45deg);
}

.section.posts .intro .categories .icon:after {
	margin-bottom: -4px;
	bottom: 50%;
	transform: rotateZ(-45deg);
}

.section.posts .posts .post:first-child {
	margin-top: -150px;	
}

@media screen and (max-width: 768px) {

	.section.posts .intro .title {
		width: 100%;
		margin-top: 0;
		float: none;
	}

	.section.posts .intro .description {
		width: 100%;
		margin-top: 50px;
		float: none;
	}

	.section.posts .intro .categories {
		width: 100%;
		padding: 20px;
		float: none;
		margin-top: 20px;
	}

	.section.posts .posts {
		padding: 0;
	}

	.section.posts .posts .post:first-child {
		margin-top: 30px;
	}

}

@media screen and (min-width:769px) and (max-width: 1239px) {

	.section.posts .intro .categories {
		width: calc((100% - 20px) / 2);
	}

}

/* MARTIN */

.section.front .newsletter .form .input {
	color: black;
}

.section.front .newsletter .form {
	margin-top: 40px;
}

.section.front .newsletter {
	padding: 60px 50px;
}

.section.front .newsletter .button:before {
	left: 8px;
}

.section.front .newsletter .button {
	width: 60px !important;
	height: 60px !important;
}


/* MARTIN */


p#gdpr-info-home, p#gdpr-info-footer {
	width: 80%;
}

.section.front .newsletter .button, .module.footer .newsletter .button {
	right: 0px;
	transition: all, 0.3s;
}

.section.front .newsletter .button:hover {
	background-color: black;
}

.section.front .newsletter .button:hover:before {
	color: white;
}

.module.footer .newsletter .button:hover {
	background-color: #ffef44;
}

.module.footer .newsletter .button:hover:before {
	color: black;
}

form.row.left, form.row.right {
	flex-basis: 100%;
}

.section.front .newsletter .form .row, .module.footer .newsletter .form .row { display:flex;    margin-top: 15px;}

.section.front .newsletter .form .input::placeholder {
	color: rgba(0,0,0,0.5);
}

.module.footer .newsletter .form .input::placeholder {
	color: rgba(255,255,255,0.5);
}

.section.front .newsletter .form .input {
	color: black;
}

.section.front .newsletter .form {
	margin-top: 40px;
}

.section.front .newsletter {
	padding: 60px 50px;
}


@font-face {
	font-family: 'DriveIcons';
	src: url('../fonts/DriveIcons.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
	font-family: 'DriveIcons' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.icon-instagram:before {
	content: "\e907";
}

.icon-language:before {
	content: "\e906";
}

.icon-bell:before {
	content: "\e903";
}

.icon-calendar:before {
	content: "\e904";
}

.icon-clock-line:before {
	content: "\e900";
}
.icon-clock:before {
	content: "\e901";
}
.icon-youtube:before {
	content: "\e902";
}
.icon-twitter:before {
	content: "\e600";
}
.icon-mail:before {
	content: "\e601";
}
.icon-facebook:before {
	content: "\e602";
}
.icon-location:before {
	content: "\e603";
}
.icon-media:before {
	content: "\e604";
}
.icon-financial:before {
	content: "\e605";
}
.icon-clock-old:before {
	content: "\e606";
}
.icon-youtube-old:before {
	content: "\e607";
}
.icon-arrow-short-down:before {
	content: "\e608";
}
.icon-arrow-short-left:before {
	content: "\e609";
}
.icon-arrow-long-down:before {
	content: "\e60a";
}
.icon-arrow-long-up:before {
	content: "\e60b";
}
.icon-arrow-short-up:before {
	content: "\e60c";
}
.icon-arrow-long-left:before {
	content: "\e60d";
}
.icon-arrow-long-right:before {
	content: "\e60e";
}
.icon-arrow-short-right:before {
	content: "\e60f";
}



/* ######################### DRIVE — PAGE ######################### */

body {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
	-webkit-transform:translateZ(1px);
	-moz-transform:translateZ(1px);
	-o-transform:translateZ(1px);
	transform:translateZ(1px);
}

a,
a:visited {
	color: inherit;
}

.max-width {
	width: 1170px;
	max-width: 1170px;
}

.max-width-50-100 {
	width: 585px;
	max-width: 585px;
}

::-moz-selection {
	background-color: #ffef44;
}

::selection {
	background-color: #ffef44;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.max-width {
		width: 100%;
		max-width: 100%;
	}

}

.container.body {
	background-color: #fff;
}

.container.body .logo {
	display: block;
	width: 128px;
	height: 46px;
	position: absolute;
	left: 50%;
	top: 30px;
	margin-left: -64px;
	background-size: contain;
	background-repeat: no-repeat;
	z-index: 10;
	background-image: url('../img/logo.svg');
	transition: opacity 0.5s ease, top 0.5s ease;
	-webkit-transform:translateZ(1px);
	-moz-transform:translateZ(1px);
	-o-transform:translateZ(1px);
	transform:translateZ(1px);
}

.container.body .logo.color-black {
	background-image: url('../img/logo.svg');
}

.container.body .logo.color-white,
.menu-push.question .logo,
.menu-push.category-question .logo {
	background-image: url('../img/logo-white.svg');
}

.container.body .logo.color-transparent {
	opacity: 0;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 1024px) {

	.container.body .logo {
		width: 100px;
		height: 46px;
		top: 90px;
		margin-left: -50px;
	}

	.mobile-scroll .container.body .logo {
		top: 15px;
	}
	
	.no-news .container.body .logo {
		top: 20px;
	}

}



/* ######################### DRIVE — PAGE — ELEMENTS ######################### */

.icon.arrow {
	display: inline-block;
	position: relative;
	width: 30px;
	height: 10px;
	background-image: linear-gradient(0deg, #000, #000, #000);
	background-position: 50%;
	background-repeat: repeat-x;
	background-size: auto 1px;
	margin-right: 20px;
}

.icon.arrow:before,
.icon.arrow:after {
	content: '';
	display: inline-block;
	position: absolute;
	width: 9px;
	height: 1px;
	right: 0;
	background-color: #000;
}

.icon.arrow:before {
	margin-top: -3px;
	top: 50%;
	transform: rotateZ(45deg);
}

.icon.arrow:after {
	margin-bottom: -4px;
	bottom: 50%;
	transform: rotateZ(-45deg);
}



/* ######################### DRIVE — PAGE — FOOTER ######################### */

.module.layout.row.footer {
	background-color: #000;
	color: #fff;
}

/* —————————————————————————————————————————————————— */

.module.footer .sitemap {
	margin-top: -10px;
	margin-bottom: -15px;
}

.module.footer .sitemap .node {
	display: inline-block;
	width: 25%;
	float: left;
	margin: 0 0 15px;
}

.module.footer .sitemap .icon {
	position: relative;
	top: 5px;
	font-size: 26px;
	margin-right: 10px;
}

.module.footer .legal .link {
	text-decoration: none;
	border-bottom: 2px solid transparent;
	transition: border-color 0.3s ease;
}

.module.footer .legal .link:hover {
	border-color: #fff;
}

/* —————————————————————————————————————————————————— */

.module.footer .newsletter {
	/*margin-top: 20px;*/
	/*margin-bottom: 40px;*/
}

.module.footer .newsletter .description {
	margin-bottom: 20px;
	/*font-size: 13px;*/
	/*line-height: 150%;*/
}

.module.footer .newsletter .form {
	position: relative;
	text-align: left !important;
}

.module.footer .newsletter .form h2 {
	text-align: left !important;
}

.module.footer .newsletter .label {
	position: absolute;
	left: 0;
	bottom: -20px;
}

/*.module.footer .newsletter .input {*/
	/*width: calc(100% - 10px);*/
	/*background-color: transparent;*/
	/*border: 1px solid #fff;*/
	/*border-width: 0 0 1px;*/
	/*padding: 0 0 10px;*/
	/*color: #fff;*/
	/*border-radius: 0;*/
/*}*/

/*.module.footer .newsletter .input:focus {*/
	/*outline: none;*/
/*}*/

/*.module.footer .newsletter .input:required,*/
/*.module.footer .newsletter .input:invalid {*/
	/*box-shadow: 0 0 0 red;*/
/*}*/

/*.module.footer .newsletter .button {*/
	/*position: absolute;*/
	/*bottom: 0;*/
	/*right: 10px;*/
	/*width: 40px;*/
	/*height: 50px;*/
	/*overflow: hidden;*/
	/*font-family: 'DriveIcons' !important;*/
	/*speak: none;*/
	/*font-style: normal;*/
	/*font-weight: normal;*/
	/*font-variant: normal;*/
	/*text-transform: none;*/
	/*line-height: 1;*/
	/*-webkit-font-smoothing: antialiased;*/
	/*-moz-osx-font-smoothing: grayscale;*/
	/*background: transparent;*/
	/*border: none;*/
	/*color: transparent;*/
	/*cursor: pointer;*/
/*}*/

/*.module.footer .newsletter .button:before {*/
	/*content: "\e60e";*/
	/*font-size: 28px;*/
	/*color: #fff;*/
/*}*/

/*.module.footer .newsletter .form > div {*/
/*padding-bottom: 100px;*/
/*}*/

/*.module.footer .newsletter .form > div div:nth-child(2) {*/
/*margin-top: 20px;*/
/*}*/

/*.module.footer .newsletter .form > div div:nth-child(3) {*/
/*position: absolute;*/
/*bottom: 0;*/
/*width: 100%;*/
/*}*/

/* ######################### Martin ######################### */


form .right {
	width: 100%;
}

input[type="checkbox"]:focus {
	outline-offset: 0px;
	outline: none;
}

input[type="checkbox"]{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 2px solid black;
	display: inline-block;
	vertical-align: middle;
	min-width: 2em;
	height: 2em;
	background: white;
	cursor: pointer;
	transition: all .2s ease;
}

input[type="checkbox"]:hover{
	background-color: rgba(0,0,0,0.2);
}

input[type="checkbox"]:checked{
	background-color: black;
	border-color: black;
}



p#gdpr-info-home, label[for=gdpr-label-home], 
p#gdpr-info-footer, label[for=gdpr-label-footer] {
	font-size: 13px;
	line-height: 120%;
}

label[for=gdpr-label-home], label[for=gdpr-label-footer] {
	margin-left: 12px;
}

input#gdpr-checkbox-footer[type="checkbox"]:hover {
	background-color: rgba(255,255,255,0.2);
}

input#gdpr-checkbox-footer[type="checkbox"] {
	border:  2px solid white;
	background: black;
}


input#gdpr-checkbox-footer[type="checkbox"]:checked  {
	border:  2px solid white;
	background: white;
}  


.module.footer .newsletter .input {
	width: calc(100% - 10px);
	background-color: transparent;
	border: 1px solid #fff;
	border-width: 0 0 1px;
	padding: 0 0 10px;
	color: #fff;
	border-radius: 0;
}

.module.footer .newsletter .input:focus {
	outline: none;
}

.module.footer .newsletter .input:required,
.module.footer .newsletter .input:invalid {
	box-shadow: 0 0 0 red;
}

.module.footer .newsletter .button {
	position: absolute;
	bottom: 0;
	right: 10px;
	width: 40px;
	height: 50px;
	overflow: hidden;
	font-family: 'DriveIcons' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background: transparent;
	border: none;
	color: transparent;
	cursor: pointer;
}

.module.footer .newsletter .button:before {
	content: "\e60e";
	font-size: 28px;
	color: #fff;
}

.module.footer .newsletter .form > div {
	padding-bottom: 100px;
}

.module.footer .newsletter .form > div div:nth-child(2) {
	margin-top: 20px;
}

.module.footer .newsletter .form > div div:nth-child(3) {
	position: absolute;
	bottom: 0;
	width: 100%;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.footer .sitemap {
		margin-top: 10px;
	}

	.module.footer .sitemap .node {
		display: block;
		width: 100%;
		margin: 0 0 15px;
		float: none;
	}

}

/* —————————————————————————————————————————————————— */

@media screen and (width: 768px) {

	.module.footer .sitemap .node {
		width: 33%;
	}

}

/* —————————————————————————————————————————————————— */

.module.footer .social {
	margin-top: 20px;
}

.module.footer .social.facebook {
	margin-top: 20px;
	margin-bottom: 30px;
}

.module.footer .social .node {
	display: inline-block;
}

.module.footer .social .node:not(:first-child) {
	margin-left: 30px;
}

.module.footer .social .link {
	text-decoration: none;
	border-bottom: 2px solid transparent;
	transition: border-color 0.3s ease;
}

.module.footer .social .link:hover {
	border-color: #fff;
}

.module.footer .social .icon {
	font-size: 28px;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.footer .description {
		line-height: 130%;
	}

}

/* —————————————————————————————————————————————————— */

.module.footer .notice {
	padding-top: 30px;
	padding-bottom: 30px;
}

/* —————————————————————————————————————————————————— */

.module.footer .legal {
	color: #D9DADB;
	padding-bottom: 20px;
}

.module.footer .legal .node {
	display: inline-block;
}

.module.footer .legal .node:not(:first-child):before {
	content: '|';
	display: inline-block;
	margin: 0 10px;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.footer .legal {
		text-align: left;
	}

	.module.footer .legal .node {
		display: block;
	}

	.module.footer .legal .node:not(:first-child) {
		margin-top: 10px;
	}

	.module.footer .legal .node:not(:first-child):before {
		display: none;
	}

}


/* ######################### DRIVE — PAGE — LANGUAGE ######################### */

.language-toggle {
	display: block;
	width: 50px;
	height: 50px;
	position: absolute;
	top: 35px;
	left: 100px;
	font-size: 40px;
	z-index: 3;
	text-decoration: none;
	text-transform: uppercase;
	transition: top 0.5s ease;
	-webkit-transform:translateZ(1px);
	-moz-transform:translateZ(1px);
	-o-transform:translateZ(1px);
	transform:translateZ(1px);
}

.language-toggle .icon {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	color: #fff;
	z-index: 0;
	transition: color 0.3s ease;
}

.no-touch .language-toggle:hover .icon,
.language-toggle.hover-touch .icon {
	color: #000;
}

.language-toggle .label {
	position: relative;
	font-size: 16px;
	color: #000;
	z-index: 1;
	transition: color 0.3s ease;
}

.no-touch .language-toggle:hover .label,
.language-toggle.hover-touch .label {
	color: #fff;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 1024px) {

	.language-toggle {
		position: absolute;
		top: 85px;
		left: 55px;
		width: 40px;
		height: 40px;
		font-size: 32px;
	}

	.no-news .language-toggle {
		top: 20px;
	}

	.mobile-scroll .language-toggle {
		top: 10px;
	}

	.schedule-toggle .icon,
	.calendar-toggle .icon,
	.news-toggle .icon {
		font-size: 18px;
	}

}



/* ######################### DRIVE — PAGE — SCHEDULE / CALENDAR ######################### */

.menu-push .schedule,
.menu-push .calendar {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin-left: 100%;
	overflow-x: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	z-index: 4;
	-webkit-transition-property: transform;
	-moz-transition-property: transform;
	transition-property: transform;
	-webkit-transition-duration: 0.7s;
	-moz-transition-duration: 0.7s;
	transition-duration: 0.7s;
	-webkit-transition-timing-function: cubic-bezier(0.86, 0.01, 0.77, 0.78);
	-moz-transition-timing-function: cubic-bezier(0.86, 0.01, 0.77, 0.78);
	transition-timing-function: cubic-bezier(0.86, 0.01, 0.77, 0.78);
	transform: translateZ(1px);
}

.menu-push .schedule .module.layout.column .reveal.unrevealed,
.menu-push .calendar .module.layout.column .reveal.unrevealed {
	opacity: 1;
	transform: scale(1);
}

.module.schedule > .close,
.module.calendar > .close {
	position: absolute;
	top: 30px;
	right: 30px;
	width: 56px;
	height: 56px;
	background-color: #fff;
	border-radius: 50%;
	z-index: 2;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.module.schedule > .close:hover,
.module.calendar > .close:hover {
	background-color: #000;
}

.module.schedule > .close:before,
.module.schedule > .close:after,
.module.calendar > .close:before,
.module.calendar > .close:after {
	content: '';
	display: inline-block;
	position: absolute;
	width: 50%;
	height: 1px;
	top: 50%;
	left: 25%;
	margin-top: -1px;
	background-color: #000;
	transition: background-color 0.3s ease;
}

.module.schedule > .close:before,
.module.calendar > .close:before {
	transform: rotateZ(45deg);
}

.module.schedule > .close:after,
.module.calendar > .close:after {
	transform: rotateZ(-45deg);
}

.no-touch .module.schedule > .close:hover:before,
.no-touch .module.schedule > .close:hover:after,
.no-touch .module.calendar > .close:hover:before,
.no-touch .module.calendar > .close:hover:after {
	background-color: #fff;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 1024px) {

	.module.schedule > .close,
	.module.calendar > .close {
		right: 10px;
		top: 10px;
		width: 40px;
		height: 40px;
	}
}

/* —————————————————————————————————————————————————— */

.menu-push.schedule-active .schedule,
.menu-push.calendar-active .calendar {
	transform: translateX(-100%) translateZ(1px);
}

.menu-push .calendar ul.container {
	text-align: left;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.schedule .row,
	.module.calendar .row {
		padding: 80px 0 50px;
	}

}

/* —————————————————————————————————————————————————— */

.schedule-toggle,
.calendar-toggle,
.news-toggle {
	position: absolute;
	top: 30px;
	width: 56px;
	height: 56px;
	border-radius: 28px;
	z-index: 3;
	transition: background-color 0.3s ease, top 0.5s ease;
	cursor: pointer;
	-webkit-transform:translateZ(1px);
	-moz-transform:translateZ(1px);
	-o-transform:translateZ(1px);
	transform:translateZ(1px);
	text-decoration: none;
}

.schedule-toggle {
	right: 30px;
}

.calendar-toggle {
	right: 106px;
}

.schedule-toggle .icon,
.calendar-toggle .icon,
.news-toggle .icon {
	font-size: 24px;
}

.news-toggle.is-alarm {
	background-color: #ffef44;
}

.news-toggle.is-alarm.collapsed .icon {
	-webkit-animation: shake 1.4s infinite cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
	-moz-animation: shake 1.4s infinite cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
	animation: shake 1.4s infinite cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
}

@keyframes shake {
	0%, 50%, to {
		-webkit-transform:rotate(0deg);
		transform:rotate(0deg);
		-webkit-transform-origin:50% 50%;
		transform-origin:50% 50%;
	}
	5% {
		-webkit-transform:rotate(8deg);
		transform:rotate(8deg);
	}
	10%, 20%, 30% {
		-webkit-transform:rotate(-10deg);
		transform:rotate(-10deg);
	}
	15%, 25%, 35% {
		-webkit-transform:rotate(10deg);
		transform:rotate(10deg);
	}
	40% {
		-webkit-transform:rotate(-8deg);
		transform:rotate(-8deg)
	}
	45% {
		-webkit-transform:rotate(8deg);
		transform:rotate(8deg);
	}
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 1024px) {

	.schedule-toggle,
	.calendar-toggle {
		position: absolute;
		top: 85px;
		width: 40px;
		height: 40px;
		border-radius: 20px;
	}

	.mobile-scroll .schedule-toggle,
	.mobile-scroll .calendar-toggle {
		top: 10px;
	}
	
	.no-news .schedule-toggle,
	.no-news .calendar-toggle {
		top: 15px;
	}

	.schedule-toggle {
		right: 10px;
	}

	.calendar-toggle {
		right: 55px;
	}

	.schedule-toggle .icon,
	.calendar-toggle .icon,
	.news-toggle .icon {
		font-size: 18px;
	}

	.news-toggle.is-alarm {
		background-color: #fff;
	}

}



/* ######################### DRIVE — PAGE — NEWS ######################### */

.news-toggle {
	width: 360px;
	right: 182px;
}

.news-toggle.active {
	transition: width 0.5s ease, background-color 0.3s ease, height 0.5s ease;
}

.news-toggle.collapsed {
	width: 56px;
}

.news-toggle .text {
	position: absolute;
	top: 10px;
	bottom: 10px;
	left: 20px;
	right: 50px;
	font-size: 14px;
	line-height: 130%;
	overflow: hidden;
	opacity: 1;
	transition: opacity 0.3s ease;
	display: none;
}

.news-toggle.active .text {
	display: block;
}

.news-toggle .container {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

.news-toggle .node {
	position: relative;
	top: 0px;
	min-height: 36px;
	/*top: 0;*/
	/*bottom: 0;*/
	/*left: 0;*/
	/*right: 0;*/
}

.news-toggle .text .title,
.news-toggle .text .excerpt {
	display: inline;
	/*float: left;*/
}

.news-toggle .text .excerpt {
}

.news-toggle .text .excerpt:before {
	content: '>';
	display: inline-block;
	margin: 0 5px;
}

.news-toggle .text.hidden {
	opacity: 0;
}

.no-touch .schedule-toggle:hover,
.no-touch .calendar-toggle:hover,
.no-touch .news-toggle:hover,
.schedule-toggle.hover-touch,
.calendar-toggle.hover-touch {
	background-color: #000;
	color: #fff;
}

.news-toggle.active .icon,
.news-toggle.active .close {
	transition: opacity 0.5s ease;
}

.news-toggle .icon,
.news-toggle.collapsed .close {
	opacity: 0;
}

.news-toggle.collapsed .icon,
.news-toggle .close {
	opacity: 1;
}

.news-toggle .close {
	display: none;
	position: absolute;
	top: 8px;
	right: 8px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	z-index: 10;
	cursor: pointer;
}

.news-toggle.active .close {
	display: inline-block;
}

.news-toggle .close:before,
.news-toggle .close:after {
	content: '';
	display: inline-block;
	position: absolute;
	width: 60%;
	height: 1px;
	top: 50%;
	left: 20%;
	margin-top: -1px;
	background-color: #000;
	transition: background-color 0.3s ease;
}

.news-toggle .close:before {
	transform: rotateZ(45deg);
}

.news-toggle .close:after {
	transform: rotateZ(-45deg);
}

.no-touch .news-toggle:hover .close:before,
.no-touch .news-toggle:hover .close:after {
	background-color: #fff;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 1024px) {

	.news-toggle {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		width: auto;
		height: 75px;
		border-radius: 0;
	}

	.mobile-scroll .news-toggle {
		height: 0;
	}

	.news-toggle .text {
		right: 20px;
	}

	.news-toggle.active .close {
		display: none;
	}

}



/* ######################### DRIVE — PAGE — BACK-TO-TOP ######################### */

.back-to-top {
	position: fixed;
	right: 30px;
	bottom: 30px;
	width: 40px;
	height: 40px;
	background-color: #fff;
	border-radius: 50%;
	color: #000;
	font-size: 28px;
	text-decoration: none;
	transition: transform 0.5s ease, color 0.3s ease, background-color 0.3s ease;
	z-index: 5;
	cursor: pointer;
	transform: translateZ(5px);
}

.back-to-top.downwards {
	transform: rotateZ(180deg);
}

.no-touch .back-to-top:hover,
.back-to-top.hover-touch {
	background-color: #000;
	color: #fff;
}



/* ######################### DRIVE — PAGE — REVEAL ######################### */

.module.reveal,
.tile.reveal {
	transition: opacity 1.3s ease, transform 1.7s ease;
}

.module.layout.column .module.reveal,
.module.layout.column .tile.reveal {
	transform: scale(1);
	opacity: 1;
}

.module.layout.column .module.reveal.unrevealed,
.module.layout.column .tile.reveal.unrevealed {
	opacity: 0;
	transform: scale(0.8);
}

.module.layout.column > .module.image.reveal {
	transform: translateX(-50%) translateY(-50%) scale(1);
}

.module.layout.column > .module.image.reveal.unrevealed {
	opacity: 0;
	transform: translateX(-50%) translateY(-50%) scale(0.8);
}



/* ######################### DRIVE — PAGE — COOKIE NOTICE ######################### */

.notice-cookie {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	max-height: 0;
	background-color: #fff;
	border-bottom: 1px solid #fff;
	color: #000;
	z-index: 10;
	overflow: hidden;
	transition: max-height 0.5s ease;
	-webkit-transform:translateZ(1px);
	-moz-transform:translateZ(1px);
	-o-transform:translateZ(1px);
	transform:translateZ(1px);
    
    /*TEMPORARY*/
    display: none;
}

.notice-cookie.active {
	max-height: 350px;
}

.notice-cookie .container {
	position: relative;
	padding: 30px 50px;
}

.notice-cookie .container .title,
.notice-cookie .container .text {
	padding-right: 200px;
}

.notice-cookie .container .text {
	margin-top: 6px;
}

.notice-cookie .container .link {
	display: inline-block;
	margin-top: 10px;
	text-decoration: none;
	border-bottom: 2px solid #000;
	transition: border-color 0.3s ease;
}

.notice-cookie .container .link:hover {
	border-color: #000;
}

.notice-cookie .buttons {
	display: block;
	max-width: 200px;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
}

.notice-cookie button {
	display: block;
	width: 200px;
	background: #fff;
	border: 2px solid #000;
	color: #000;
	padding: 5px 25px 6px;
	transition: background-color 0.3s ease, color 0.3s ease;
	cursor: pointer;
}

.notice-cookie button:not(:first-child) {
	margin-top: 10px;
}

.notice-cookie button,
.notice-cookie button:focus,
.notice-cookie button:active {
	outline: none;
}

.notice-cookie button:hover {
	background: #000;
	color: #fff;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 768px) {

	.notice-cookie .container {
		padding: 15px 30px 80px;
	}

	.notice-cookie .container .title,
	.notice-cookie .container .text {
		padding-right: 0;
	}

	.notice-cookie .buttons {
		position: relative;
		top: auto;
		left: 50%;
		right: auto;
		margin: 30px 0 0;
		transform: translateX(-50%);
	}

}


.clamp > * {
	display: block;
}


/*MARTIN FIXES*/

.section.question > .container > .column.right > h2.font-large {
	font-size: 21px;
}

.category-question .section.category > .container .column.right > h1.font-large {
	font-size: 21px;
}


ul.legal.clearfix:after {
	height:135px;
}

@media screen and (max-width: 767px) {
	.category-question .section.category > .container, .section.question .crosslinks .node .link {
	padding: 30px;}

	.section.question .crosslinks {
		padding: 0;
	}

	.section.exhibition .intro, .section.exhibition .modules {
	margin-top: 20px;}

	.category-question .list.questions .node .link {
	padding: 30px; }

	.font-larger {
	font-size: 28px; }

	.category-question .list.questions .node .link .icon, .section.question .crosslinks .node .link .icon {
		right: 20px;
		bottom: 20px;
	}
}


.section.posts {
	padding: 0;
}

.module > p > iframe {
	width: 720px;
	height: 450px;
}

.category-question .list.questions {
	margin: 80px 0;
}

.module.footer .newsletter .description {
	font-family: 'TheSans_B2_700';
}


.flex-control-paging li a {
	background: rgba(0,0,0,.2) !important;
	transition: background 0.3s;
}

.flex-control-paging li a:hover {
	background: rgba(0,0,0,.4) !important;
}

.flex-control-paging li a.flex-active {
	background: rgba(0,0,0,1) !important;
}

.section.front .newsletter .form .input {
	padding: 0 0 5px;
	border-bottom: 1px solid #000;
}

.section.front .newsletter .form {
	padding: 0;
	border-bottom: 0;
}

.section.front .newsletter {
	padding: 50px;
}

.section.front .newsletter .form .row, .module.footer .newsletter .form .row {
	margin-top:25px;
}

.module.footer .newsletter .form .input {
	margin-top: 0;
}

.module.footer .newsletter .form {
	padding: 0;
}

.modules.new-layout {
	padding-top: 140px;
	padding-bottom: 100px;
}

.modules.new-layout .content {
    display: block;
    position: relative;
    width: 100%;
    max-width: 1064px;
    padding: 0 20px;
    margin: 0 auto;
}


.category-question {
	display: block;
	min-height: 800px;
}

.category-question .section.category {
	display: block;
	min-height: 800px;
}

.category-question .section.category .gradient {
	position: absolute;
	display: block;
	width: 100%;
	height: 600px;
	top: 0;
	left: 0;
	right: 0;
	z-index: -1;
}

.category-question .section.category > .container {
	position: relative;
	display: block;
	width: 1170px;
	padding: 50px;
	margin: 200px auto 0;
}

.category-question .section.category > .container:nth-child(3),
.category-question .section.category > .container:nth-child(4) {
    margin-top: 0;
}

.category-question .section.category > .container:after {
	content: '';
	display: table;
	clear: both;
}

.category-question .section.category .intro:after {
	content: '';
	display: table;
	clear: both;
}

.category-question .section.category > .container .column {
	float: left;
	width: 50%;
	padding-right: 50px;
}

.category-question .section.category > .container .column.right {
	float: right;
	padding-left: 50px;
	padding-right: 0;
}

.category-question .section.category > .container .column .image {
	display: block;
	width: 100%;
}

.category-question .section.category > .container .column .video {
	display: block;
	width: 100%;
}

.category-question .section.category > .container .introduction {
	position: relative;
	padding: 0 0 0 60px;
	margin: 40px 0 0;
}

.category-question .section.category > .container .introduction .icon {
	position: absolute;
	left: 2px;
	top: 0;
	font-size: 26px;
}

.category-question .section.category > .container > .title {
	margin-top: 120px;
}

.category-question .section.category > .container > .subtitle {
	margin-top: 10px;
}

.category-question .section.category .container > .image {
	width: calc((100% - 110px) / 2);
	margin-top: 80px;
}

.category-question .section.category .container > .image .ratio {
	padding-top: 65% !important;
}

.category-question .list.questions {
	list-style-type: none;
	padding: 0;
	margin: 80px 0 0;
}

.category-question .list.questions:after {
	content: '';
	display: table;
	clear: both;
}

.category-question .list.questions .node {
	display: inline-block;
	width: calc((100% - 110px) / 2);
	background-color: #c6dfe7;
	float: left;
}

.category-question .list.questions .node:first-child {
	background-color: transparent;
}

.category-question .list.questions .node {
	margin-top: 60px;
}

.category-question .list.questions .node:nth-child(even) {
	float: right;
}

.category-question .list.questions .node .link {
	display: block;
    position: relative;
	padding: 50px;
    text-decoration: none;
}

.category-question .list.questions .node .link .title {
	display: block;
	width: auto;
	padding: 0;
	margin: 0;
    text-decoration: none;
}

.category-question .list.questions .node .link .answer {
    display: inline-block;
    margin-top: 40px;
    text-decoration: underline;
}

.category-question .list.questions .node .link .icon {
	display: block;
    position: absolute;
    right: 40px;
    bottom: 40px;
	font-size: 30px;
	line-height: 100%;
	width: 50px;
	height: 50px;
	border-radius: 50%;
    background-color: #fff;
	text-align: center;
	padding-top: 10px;
	transition: opacity 0.3s ease;
}

.category-question .list.questions .node .link:hover .icon {
	opacity: 0.7;
}

.category-question .form {
	position: relative;
	display: block;
	max-width: 780px;
	margin: 0 auto;
	padding: 80px 0 100px;
}

.category-question .form .instructions {
	margin-top: 20px;
}

.category-question .form .input {
	display: block;
	width: 100%;
	appearance: none;
	border: none;
	border-bottom: 1px solid #000;
	border-radius: 0;
	background: transparent;
	padding: 0 50px 5px 0;
	margin-top: 50px;
	font-family: 'TheSans_B2_500';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 18px;
	color: #000;
	outline: none;
}

.category-question .form .label {
	
}

.category-question .form .submit {
	position: absolute;
	width: 40px;
	height: 40px;
	right: 0;
	margin-top: -50px;
	appearance: none;
	border: none;
	background: #fff;
	border-radius: 50%;
}

.category-question .form .submit .icon {
	position: relative;
	left: -4px;
	top: 1px;
	font-size: 26px;
	line-height: 100%;
}

.category-question .form .cover {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	display: none;
	z-index: 1;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.category-question .backlink .link {
    text-decoration: none;
    padding: 0 0 2px;
    border-bottom: 2px solid #000;
}

.category-question .crosslinks {
	background: #fff;
	padding: 60px 0 0;
}

.category-question .crosslinks .container {
	position: relative;
	display: block;
	width: 1170px;
	padding: 50px;
	margin: 0 auto;
}

.category-question .crosslinks .container:after {
	content: '';
	display: table;
	clear: both;
}

.category-question .crosslinks .container > .title {
	display: inline-block;
	width: calc((100% - 110px) / 2);
	margin-bottom: 40px;
	float: left;
}

.category-question .post {
	position: relative;
	margin-top: 60px;
	text-decoration: none;
	display: inline-block;
	width: calc((100% - 110px) / 2);
	float: left;
}

.category-question .post:nth-child(even) {
	float: right;
}

.category-question .post:nth-child(2) {
	margin-top: 0;
}

.category-question .post .image {
	display: block;
	width: 100%;
}

.category-question .post .image .ratio {
	padding-top: 62% !important;
}

.category-question .post .tags {
	margin-top: 20px;
}

.category-question .post .title {
	margin-top: 10px;
	height: 2.4em;
	overflow: hidden;
}

.category-question .post .excerpt {
	margin-top: 16px;
	height: 100px;
	overflow: hidden;
}

@media screen and (max-width: 767px) {

    .category-question .section.category > .container {
        width: 100%;
        padding: 40px;
		margin-top: 50px;
    }
    
    .category-question .section.category > .container .column {
        float: none;
        width: 100%;
        padding-right: 0;
    }
    
    .category-question .section.category > .container .column.right {
        padding-top: 30px;
        padding-left: 0;
    }
    
    .category-question .list.questions .node {
        width: 100%;
        float: none;
        margin-top: 20px;
    }
    
    .category-question .form {
        padding-bottom: 0;
    }
    
    .category-question .crosslinks {
        padding-top: 0;
    }

    .category-question .crosslinks .container {
        width: 100%;
    }
    .category-question .crosslinks .container > .title {
        display: block;
        width: 100%;
        margin-bottom: 50px;
        float: none;
    }

    .category-question .post {
        width: 100%;
        float: none;
        margin-top: 50px;
    }

}

@media screen and (max-width: 1239px) {


}


/* ######################### PARAGRAPH - DRIVE ######################### */

.module.paragraph ul {
	position: relative;
	padding-left: 60px;
}

.module.paragraph li {
	position: relative;
}

.module.paragraph li:not(:first-child) {
	margin-top: 10px;
}

.module.paragraph li:before {
	font-family: 'DriveIcons';
	font-size: 28px;
	content: '\e60e';
	position: absolute;
	left: -60px;
}

/* ######################### DRIVE — POPUP ######################### */

.module.popup {
	background-color: rgba(0,0,0,0.8);
}

.module.popup > .container {
	position: absolute;
	width: 90%;
	max-width: 1170px;
	height: auto;
	background-color: #fff;
	margin: 0 auto;
	opacity: 0;
	transition: opacity 0.5s ease;
	overflow-x: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
}

/* —————————————————————————————————————————————————— */



.module.bodymovin {
    position: relative;
    display: block;
    width: 300px;
    height: 300px;
}

.module.bodymovin .lottie {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}


.module.post-events {
	position: relative;
	width: 720px;
	margin: 40px auto 0;
}

.module.post-events:after {
	content: '';
	display: table;
	clear: both;
}

.module.post-events:not(:first-child) {
	margin-top: 80px;
}

.module.post-events .module.event {
	width: calc((100% - 20px) / 2);
	height: 355px;
	float: left;
}

.module.post-events .module.event:nth-child(even) {
	margin-left: 20px;
}


.module.post-images {
    position: relative;
    width: 820px;
    margin: 0 auto;
}

.module.post-images:not(:first-child) {
    margin-top: 80px;
}

.module.post-images .image {
    float: left;
}

.module.post-images .image:nth-child(1) {
    position: relative;
    width: 100%;
    height: 544px;
}

.module.post-images.single .image:nth-child(2),
.module.post-images.single .image:nth-child(3) {
    display: none;
}

.module.post-images.duo .image:nth-child(1),
.module.post-images.duo .description {
    width: 440px;
}

.module.post-images.duo .image:nth-child(1) {
    height: 300px;
}

.module.post-images.duo .image:nth-child(2) {
    width: 360px;
    height: 220px;
    margin-top: 160px;
    float: right;
}

.module.post-images.duo .image:nth-child(3) {
    display: none;
}

.module.post-images.trio .image:nth-child(1),
.module.post-images.trio .description {
    width: 360px;
}

.module.post-images.trio .image:nth-child(1) {
    height: 540px;
}

.module.post-images.trio .image:nth-child(2) {
    width: 440px;
    height: 300px;
    margin-top: 80px;
    float: right;
}

.module.post-images.trio .image:nth-child(3) {
    width: 360px;
    height: 220px;
    margin-top: 20px;
    margin-right: 80px;
    float: right;
}

.module.post-images.landscape.trio .image:nth-child(1) {
    display: block;
    position: relative;
    width: calc(100% - 180px);
    height: 440px;
    margin: 0 auto;
    float: none;
    clear: both;
}

.module.post-images.landscape.trio .image:nth-child(2) {
    margin-top: 20px;
    float: left;
}

.module.post-images.landscape.trio .image:nth-child(3),
.module.post-images.landscape.trio .description {
    width: 360px;
    margin-right: 0;
}

.module.post-images.landscape.trio .image:nth-child(3) {
    height: 220px;
    margin-top: 20px;
    float: right;
}

.module.post-images .description {
    display: block;
    padding: 20px 40px 0;
    float: left;
}

.module.post-images.landscape.trio .description {
    float: right;
    padding: 20px 0;
}

@media screen and (max-width: 767px) {

    .module.post-images .image {
        float: none;
    }

    .module.post-images .image:nth-child(1) {
        position: relative;
        width: 100%;
        height: auto;
    }

    .module.post-images.single .image:nth-child(2),
    .module.post-images.single .image:nth-child(3) {
        display: none;
    }

    .module.post-images.duo .image:nth-child(1),
    .module.post-images.duo .description {
        width: 100%;
    }

    .module.post-images.duo .image:nth-child(1) {
        height: auto;
    }

    .module.post-images.duo .image:nth-child(2) {
        width: 100%;
        height: auto;
        margin-top: 20px;
        float: none;
    }

    .module.post-images.duo .image:nth-child(3) {
        display: none;
    }

    .module.post-images.trio .image:nth-child(1),
    .module.post-images.trio .description {
        width: 100%;
    }

    .module.post-images.trio .image:nth-child(1) {
        height: auto;
    }

    .module.post-images.trio .image:nth-child(2) {
        width: 100%;
        height: auto;
        margin-top: 20px;
        float: none;
    }

    .module.post-images.trio .image:nth-child(3) {
        width: 100%;
        height: auto;
        margin-top: 20px;
        margin-right: 0;
        float: none;
    }

    .module.post-images.landscape.trio .image:nth-child(1) {
        width: 100%;
        height: auto;
    }

    .module.post-images.landscape.trio .image:nth-child(2) {
        margin-top: 20px;
        float: none;
    }

    .module.post-images.landscape.trio .image:nth-child(3),
    .module.post-images.landscape.trio .description {
        width: 100%;
        margin-right: 0;
    }

    .module.post-images.landscape.trio .image:nth-child(3) {
        height: auto;
        margin-top: 20px;
        float: none;
    }

    .module.post-images .description {
        padding: 20px 20px 0;
        float: none;
    }

    .module.post-images.landscape.trio .description {
        float: none;
        padding: 20px 20px 0;
    }

}


.module.image.post-image {
    display: block;
    position: relative;
    width: 1140px;
    height: 596px;
    margin: 40px auto;
}

.section.post .wp-caption-text {
    font-size: 0.7em;
    color: grey;
}

.section.post .caption {
    max-width: 1140px;
    display: block;
    font-size: 15px;
    text-align: center;
    padding: 10px 20px 30px;
    margin: 0 auto;
}

.module.post-excerpt {
	position: relative;
	width: 720px;
	font-size: 24px;
	line-height: 150%;
	margin: 20px auto;
}

.module.post-footer {
	position: relative;
	width: 720px;
	border-top: 4px solid #eceded;
	margin: 80px auto 120px;
}

.module.post-footer .date {
	margin-top: 20px;
}

.module.post-footer .link {
	display: inline-block;
	text-decoration: none;
	border-bottom: 2px solid #000000;
	padding: 0 0 0px;
	margin-top: 120px;
}


@media screen and (max-width: 767px) {
    
    .module.image.post-image {
        width: 100%;
        height: auto;
        margin-top: 40px;
    }

    .section.post {
        padding: 0 20px;
    }
    
    .section.post .module {
        width: 100%;
    }
    
    .module.post-excerpt {
        width: 100;
        font-size: 20px;
    }

}


.section.question {
    display: block;
    min-height: 800px;
    padding: 0 0 80px;
}

.section.question .gradient {
    position: absolute;
    display: block;
    width: 100%;
    height: 600px;
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

.section.question > .container {
    position: relative;
    display: block;
    width: 1170px;
    padding: 50px;
    margin: 200px auto 0;
    background-color: #fff;
}

.section.question > .container:after {
    content: '';
    display: table;
    clear: both;
}

.section.question > .container .column {
    float: left;
    width: 50%;
    padding-right: 50px;
}

.section.question > .container .column.left .image {
    display: block;
    width: 100%;
}

.section.question > .container .column.left .video {
	display: block;
	width: 100%;
}

.section.question > .container .column.right {
    float: right;
    padding-left: 50px;
    padding-right: 0;
}

.section.question > .container .column.right .title {
    margin-top: 10px;
}

.section.question > .container .text.answer {
    position: relative;
    padding: 0 0 0 60px;
    margin: 40px 0 0;
}

.section.question > .container .text.answer .icon {
    position: absolute;
    left: 2px;
    top: 0;
    font-size: 26px;
}

.section.question .crosslinks {
    display: block;
    max-width: 1170px;
    margin: 60px auto 0;
}

.section.question .crosslinks:after {
    content: '';
    display: table;
    clear: both;
}

.section.question .crosslinks .node {
    display: inline-block;
    width: calc((100% - 110px) / 2);
    background-color: #c6dfe7;
    float: left;
}

.section.question .crosslinks .node:nth-child(even) {
    float: right;
}

.section.question .crosslinks .node .link {
    position: relative;
    display: block;
    padding: 50px;
    text-decoration: none;
}

.section.question .crosslinks .node .link .title {
    display: block;
    width: auto;
    padding: 0;
    margin: 0;
    text-decoration: none;
}

.section.question .crosslinks .node .link .answer {
    display: inline-block;
    margin-top: 40px;
    text-decoration: underline;
}

.section.question .crosslinks .node .link .icon {
	display: block;
    position: absolute;
    right: 40px;
    bottom: 40px;
	font-size: 30px;
	line-height: 100%;
	width: 50px;
	height: 50px;
	border-radius: 50%;
    background-color: #fff;
	text-align: center;
	padding-top: 10px;
	transition: opacity 0.3s ease;
}

.section.question .crosslinks .node .link:hover .icon {
	opacity: 0.7;
}

.section.question > .overview {
    margin: 60px auto 0;
    text-align: center;
}

.section.question > .overview .link {
    text-decoration: none;
    padding: 0 0 2px;
    border-bottom: 2px solid #000;
}

@media screen and (max-width: 767px) {

    .section.question {
        padding: 0 20px;
    }

    .section.question > .container {
        width: 100%;
        padding: 20px;
		margin-top: 100px;
    }

    .section.question > .container .column {
        float: none;
        width: 100%;
        padding-right: 0;
    }
    
    .section.question > .container .column.right {
        padding-top: 20px;
        padding-left: 0;
    }

    .section.question .crosslinks {
        width: 100%;
        padding: 0 20px;
    }

    .section.question .crosslinks .node {
        display: block;
        width: 100%;
        float: none;
        margin-top: 20px;
    }

    .section.question > .overview {
        padding: 0 0 40px;
    }

}


.module.post-quote {
	position: relative;
	width: 720px;
	padding-left: 80px;
	border-left: 4px solid #ffef44;
	margin: 0 auto;
}

.module.post-quote:not(:first-child) {
	margin-top: 40px;
}

.module.post-quote .text:before {
	content: '„';
}

.module.post-quote .text:after {
	content: '“';
}

.module.post-quote .author {
	display: inline-block;
	line-height: 20px;
	margin-top: 50px;
}


.module.post-text {
    position: relative;
    width: 720px;
    margin: 0 auto;
}

.module.post-text:not(:first-child) {
    margin-top: 40px;
}

.module.post-text ul {
	display: inline-block;
	list-style-type: disc;
	padding-left: 20px;
}

.module.post-text p {
	margin-block-start: 1em;
}


.module.post-text b {
	font-family: 'TheSans_B2_700';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-weight: 400;
}

.module.post-text ul:not(:first-child) {
	margin-top: 40px;
}

.module.post-text hr {
    border: 2px solid #eceded;
		    margin-block-start: 2em;
    margin-block-end: 2em;
}


.module.post-text h5 {
	font-family: 'TheSans_B2_700';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-weight: 400;
		font-size: 21px;
	line-height: 120%;
	    margin-block-start: 1.33em;
    margin-block-end: 1.33em;
}


.module.post-text h4 {
	font-family: 'TheSans_B2_700';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-weight: 400;
		font-size: 28px;
	line-height: 120%;
	    margin-block-start: 1.33em;
    margin-block-end: 1.33em;
}


.module.post-text h3 {
	font-family: 'TheSans_B2_700';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-weight: 400;
		font-size: 36px;
	line-height: 120%;
	    margin-block-start: 1.33em;
    margin-block-end: 1.33em;
}

.module.post-text h2 {
	font-family: 'TheSans_B2_700';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-weight: 400;
	font-size: 45px;
	line-height: 120%;
	    margin-block-start: 1.33em;
    margin-block-end: 1.33em;
}

.module.post-text h1 {
	font-family: 'TheSans_B2_700';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-weight: 400;
	font-size: 75px;
	line-height: 120%;
}


.module.post-title {
    position: relative;
    width: 720px;
    margin: 140px auto 0;
}

.module.post-title:not(:first-child) {
    margin-top: 80px;
}

@media screen and (max-width: 767px) {

    .module.post-title:not(:first-child) {
        margin-top: 50px;
    }

}


/* ######################### DRIVE — SLIDER ######################### */

.module.slider {
	max-width: 100%;
}

.row > .container:not(.max-width) .column-100-100:only-child .module.slider {
	max-width: none;
	/*width: calc(100% + 40px);
	margin-left: -20px;
	margin-right: -20px;*/
}

.row.screen-height .column-100-100:only-child .module.slider {
	min-height: 100vh;
	max-height: 100vh;
	margin-top: -20px;
	margin-bottom: -20px;
}

/* —————————————————————————————————————————————————— */

.module.slider .navigation.previous,
.module.slider .navigation.next {
	width: 34px;
	height: 34px;
	background-color: #fff;
	border-radius: 50%;
	cursor: pointer;
	opacity: 1;
	transition: background-color 0.3s ease;

}

.no-touch .module.slider .navigation:hover,
.module.slider .navigation.hover-touch {
	background-color: #000;
}

.module.slider .navigation.previous {
	left: 30px;
}

.module.slider .navigation.next {
	right: 30px;
}

.module.slider .navigation.previous .icon,
.module.slider .navigation.next .icon {
	font-family: 'DriveIcons' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #000;
	transition: color 0.3s ease;
	transform: translateX(-50%) translateY(-50%);
	font-size: 26px;
	border: none;
	width: auto;
	height: auto;
	top: 50%;
	left: 50%;
	right: auto;
}

.module.slider .navigation.previous .icon:before {
	content: "\e609";
}

.module.slider .navigation.next .icon:before {
	content: "\e60f";
}

.no-touch .module.slider .navigation:hover .icon:before,
.module.slider .navigation.hover-touch .icon:before {
	color: #fff;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.slider .navigation.previous,
	.module.slider .navigation.next {
		display: none;
	}

}

/* —————————————————————————————————————————————————— */

.module.slider .pagination li:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 14px;
	height: 14px;
	border: 1px solid #fff;
	border-radius: 50%;
	opacity: 0.99;
	transition: border-color 1s ease;
}

.module.slider.color-white .pagination li:before {
	border-color: #fff;
}

.module.slider.color-black .pagination li:before {
	border-color: #000;
}

.module.slider .pagination li:after {
	width: 6px;
	height: 6px;
	background-color: transparent;
	opacity: 1;
	transition: background-color 0.3s ease;
}

.module.slider .pagination li:hover:after,
.module.slider .pagination li.active:after {
	background-color: #fff;
	opacity: 1;
}

.module.slider.color-white .pagination li:hover:after,
.module.slider.color-white .pagination li.active:after {
	background-color: #fff;
	opacity: 1;
}

.module.slider.color-black .pagination li:hover:after,
.module.slider.color-black .pagination li.active:after {
	background-color: #000;
	opacity: 1;
}

/* —————————————————————————————————————————————————— */

.module.slider .caption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 50px;
	z-index: 2;
	text-align: center;
}

.module.slider .caption .title {
	text-transform: uppercase;
}

.module.slider.has-pagination .caption {
	padding-bottom: 80px;
}

.module.slider .caption.text-white {
	color: #fff;
}

.module.slider .caption.text-black {
	color: #000;
}

.module.slider .caption .subtitle {
	margin-top: 20px;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.slider .caption {
		padding: 20px;
	}

}

/* ######################### DRIVE — SPACE ######################### */

.module.space {
	position: relative;
	display: block;
	width: 100%;
}

.module.space-small {
	height: 40px;
}

.module.space-medium {
	height: 80px;
}

.module.space-large {
	height: 120px;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.space-small,
	.module.space-medium,
	.module.space-large {
		height: 0;
	}

	.container.modules .row:first-child .column:only-child .module.space-small,
	.container.modules .row:first-child .column:only-child .module.space-medium,
	.container.modules .row:first-child .column:only-child .module.space-large {
		height: 60px;
	}

}



.module.table .container {
	margin: 0 auto;
}

.module.table {
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
}

.module.table:not(:first-child) {
    margin-top: 30px;
}

.module.table .table {
    display: table;
    width: 100%;
    padding: 0;
}

.module.table .head {
    text-align: left;
}

.module.table .head .cell {
    padding: 5px 10px;
}

.module.table .body .row:nth-child(odd) {
    background-color: #eeeeee;
}

.module.table .body .cell {
    padding: 5px 10px;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

    /*.module.table .head .cell,*/
    /*.module.table .body .cell {*/
        /*display: block;*/
        /*width: 100%;*/
    /*}*/

}

@media screen and (max-width: 1239px) {

    .module.table .container {
        max-width: 100%;
        padding: 0 20px;
    }

}


/* ######################### DRIVE — TEASER ######################### */

.module.teaser {
	display: inline-block;
	position: relative;
	text-decoration: none;
	color: inherit;
	text-decoration: none;
	border: none;
}

/* —————————————————————————————————————————————————— */

.module.teaser.teaser-small {
	width: 60%;
}

.module.teaser.teaser-medium {
	width: 80%;
}

.module.teaser.teaser-large {
	width: 100%;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.teaser.teaser-small,
	.module.teaser.teaser-medium {
		width: 100%;
	}

}

/* —————————————————————————————————————————————————— */

.module.teaser.teaser-offset-none {
	margin-top: 30px;
}

.module.teaser.teaser-offset-none:first-child {
	margin-top: 0;
}

.module.teaser.teaser-offset-small {
	margin-top: 40px;
}

.module.teaser.teaser-offset-medium {
	margin-top: 70px;
}

.module.teaser.teaser-offset-large {
	margin-top: 100px;
}

/* —————————————————————————————————————————————————— */

@media screen and (max-width: 767px) {

	.module.teaser.teaser-offset-none,
	.module.teaser.teaser-offset-small,
	.module.teaser.teaser-offset-medium,
	.module.teaser.teaser-offset-large {
		margin-top: 20px;
	}

	.module.teaser.teaser-offset-small:first-child,
	.module.teaser.teaser-offset-medium:first-child,
	.module.teaser.teaser-offset-large:first-child {
		margin-top: 0;
	}

}

/* —————————————————————————————————————————————————— */

.module.teaser.teaser-left {
	float: left;
}

.module.teaser.teaser-right {
	float: right;
}

/* —————————————————————————————————————————————————— */

.module.teaser .image {
	position: relative;
	margin: 10px 0 0;
}

.module.teaser:hover .image .module.image {
	opacity: 0.7;
}

/* —————————————————————————————————————————————————— */

.module.teaser .title {
}

.module.teaser .title.title-black {
	color: #000;
}

.module.teaser .title.title-white {
	color: #fff;
}

/* —————————————————————————————————————————————————— */

.module.teaser .excerpt {
    position: relative;
    color: #000;
}

/* —————————————————————————————————————————————————— */

.module.teaser .icon {
	display: inline-block;
	position: relative;
	width: 30px;
	height: 10px;
	background-image: linear-gradient(0deg, #000, #000, #000);
	background-position: 50%;
	background-repeat: repeat-x;
	background-size: auto 1px;
	margin-right: 20px;
}

.module.teaser .icon:before,
.module.teaser .icon:after {
	content: '';
	display: inline-block;
	position: absolute;
	width: 8px;
	height: 1px;
	right: 0;
	background-color: #000;
}

.module.teaser .icon:before {
	margin-top: -3px;
	top: 50%;
	transform: rotateZ(45deg);
}

.module.teaser .icon:after {
	margin-bottom: -4px;
	bottom: 50%;
	transform: rotateZ(-45deg);
}


.module.text .container {
	margin: 0 auto;
}

.module.text {
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
}

.module.text:not(:first-child) {
    margin-top: 30px;
}

.module.text .text > *:not(:first-child) {
    margin-top: 10px;
}

@media screen and (max-width: 1239px) {

    .module.text .container {
        max-width: 100%;
        padding: 0 20px;
    }

}


.module.title .container {
	margin: 0 auto;
}

.module.title {
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
}

.module.title:not(:first-child) {
    margin-top: 30px;
}

@media screen and (max-width: 1239px) {

    .module.title .container {
        max-width: 100%;
        padding: 0 20px;
    }

}


/* ######################### DRIVE — VIDEO ######################### */


.module.video {
	position: relative;
    max-width: 720px;
    margin: 0 auto;
}

.module.video:not(:first-child) {
	margin-top: 50px;
}

/*——————————————————————————————————————————————————*/

@media (max-width: 767px) {
	
	.module.video iframe {
	}

}


.module.virtualtour {
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
}

.module.virtualtour:not(:first-child) {
    margin-top: 30px;
}

.module.virtualtour .container {
    position: relative;
    margin: 0 auto;
    padding-bottom: 30px;
}

.module.virtualtour .ratio {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
}

.module.virtualtour .iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 1;
}

@media screen and (max-width: 1239px) {

    .module.virtualtour .container {
        max-width: 100%;
        padding: 0 20px;
    }

}

/* Hide Tour on Mobile */

.container.clearfix.max-width.onlydesktop {
    display:block;

}

@media screen and (max-width: 767px) {

    .container.clearfix.max-width.onlydesktop {
        display: none;
    }
}

/* Hide Button on Desktop */

.module.cta.onlymobile {
    display:none;
}

@media screen and (max-width: 767px) {

    .module.cta.onlymobile {
        display: block;
    }
}

