/* FONTS */

@font-face {font-family:'BR'; src:url('fonts/bitter-regular.woff2') format('woff2'), url('fonts/bitter-regular.woff') format('woff'); font-weight:normal; font-style:normal; font-display:swap;}
@font-face {font-family:'BM'; src:url('fonts/bitter-medium.woff2') format('woff2'), url('fonts/bitter-medium.woff') format('woff'); font-weight:normal; font-style:normal; font-display:swap;}
@font-face {font-family:'OS-R'; src:url('fonts/open-sans-regular.woff2') format('woff2'), url('fonts/open-sans-regular.woff') format('woff'); font-weight:normal; font-style:normal; font-display:swap;}
@font-face {font-family:'OS-RI'; src:url('fonts/open-sans-regular-italic.woff2') format('woff2'), url('fonts/open-sans-regular-italic.woff') format('woff'); font-weight:normal; font-style:normal; font-display:swap;}
@font-face {font-family:'OS-SB'; src:url('fonts/open-sans-semibold.woff2') format('woff2'), url('fonts/open-sans-semibold.woff') format('woff'); font-weight:normal; font-style:normal; font-display:swap;}
@font-face {font-family:'OS-SBI'; src:url('fonts/open-sans-semibold-italic.woff2') format('woff2'), url('fonts/open-sans-semibold-italic.woff') format('woff'); font-weight:normal; font-style:normal; font-display:swap;}

/* COLORS */

:root {
	--black: #000000;
	--white: #FFFFFF;
	--grey: #4D4D4D;
	--grey-medium: #686868;
	--beige-dark: #83735C;
	--beige-semidark: #B2A28D;
	--beige-medium: #9E9991;
	--beige-light: #C9BEAB;
	--beige-semilight: #E4DED5;
	--beige-bright: #EFEBE6;
}

/* MANDATORY */

* {margin: 0px; padding: 0px; box-sizing: border-box; background-repeat:no-repeat; background-position: 0px 0px;}
html, body {top: 0; left: 0; right: 0; width:100%; height:100%;}
table {border: none; border-collapse: collapse;}
table td, table th {padding: 0;}
ul, ol {list-style-type: none;}
img, iframe {border: none;}
input, textarea, select {border-radius:0px;}

/* GLOBAL */

body {
	font-family: 'OS-R', sans-serif;
	font-size: 20px;
	line-height: 140%;
	text-align: center;
	color: var(--beige-dark);
	background-color: var(--white);
	-webkit-text-size-adjust: 100%;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

body.menu-open {
	overflow: hidden;
}

a, a:link, a:visited, a:focus, a:active, a:hover {
	color: var(--beige-dark);
	text-decoration: none;
	transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out, opacity 0.2s ease-in-out, border-color 0.2s ease-in-out;
}

p {
	line-height: 160%;
	margin: 20px 0px;
}

p a {
	text-decoration: underline !important;
}

a.button {
	font-family: 'OS-SB', sans-serif;
	display: inline-block;
	color: var(--grey);
	margin-top: 20px;
	padding-right: 32px;
	text-decoration: none !important;
	background-image: url(img/button-arrow.svg);
	background-position: right center;
	background-size: 24px 15px;
}

a.button:hover {
	text-decoration: underline !important;
}

a.phone,
a.mail {
	display: inline-block;
	font-size: 24px;
	position: relative;
	padding-left: 40px;
}

a.phone::before,
a.mail::before {
	content: "";
	width: 30px;
	height: 30px;
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	background-repeat: no-repeat;
	background-position: top left;
	background-size: 100% 100%;
}

a.phone::before {
	background-image: url(img/phone.svg);
}

a.mail::before {
	background-image: url(img/mail.svg);
}

div.segment a.phone,
div.segment a.mail {
	font-size: inherit;
	padding-left: 28px;
	text-decoration: none !important;
}

div.segment a.phone:hover,
div.segment a.mail:hover {
	color: var(--white) !important;
}

div.segment a.phone::before,
div.segment a.mail::before {
	width: 20px;
	height: 20px;
	top: 6px;
}

div.segment-grey-dark a {
	color: var(--beige-light);
}

b, strong {
	font-family: 'OS-SB', sans-serif;
	font-weight: normal;
}

i, em {
	font-family: 'OS-RI', sans-serif;
	font-style: normal;
}

i strong, strong i, i b, b i, em strong, strong em, em b, b em {
	font-family: 'OS-SBI', sans-serif;
	font-weight: normal;
	font-style: normal;
}

.text-left, .ce-headline-left {
	text-align: left;
}

.text-center, .ce-headline-center {
	text-align: center;
}

.text-right, .ce-headline-right {
	text-align: right;
}

h1, h2, h3, h4, h5 {
	width: 100%;
	font-family: 'OS-SB', sans-serif;
	font-weight: normal;
	display: block;
	float: left;
	clear: both;
	-webkit-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	line-height: 130%;
	margin: 0px 0px 10px 0px;
	color: var(--grey);
}

div.segment-grey-dark h1,
div.segment-grey-dark h2,
div.segment-grey-dark h3,
div.segment-grey-dark h4,
div.segment-grey-dark h5 {
	color: var(--white);
}

h1, h2 {
	font-size: 50px;
}

h2 {
	font-family: 'BM', sans-serif;
}

h3 {
	font-size: 34px;
}

h4 {
	font-size: 30px;
	line-height: 140%;
}

h5 {
	font-size: 24px;
	line-height: 140%;
}

span.subline {
	width: 100%;
	float: left;
	clear: both;
}

hr {
	width: 100%;
	height: 100px;
	display: block;
	border: none;
	float: left;
	clear: both;
	background-color: transparent;
}

/* OBJECTS */

div.top {
	width: 100%;
	max-width: 1920px;
	height: 130px;
	top: 0px;
	left: 50%;
	z-index: 90;
	transform: translateX(-50%);
	text-align: left;
	position: fixed;
	padding: 0px 150px;
	background: rgb(0,0,0);
	background: linear-gradient(180deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
	transition: background 0.2s ease-in-out;
}

.no-header div.top {
	background: transparent;
	box-shadow: none;
}

.top-fix div.top {
	height: 100px;
	background: var(--white);
	box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.1);
}

div.top-spacer {
	width: 100%;
	height: 60px;
	float: left;
	clear: both;
	display: none;
}

div.top-left {
	float: left;
	clear: none;
}

div.top-left a.logo {
	width: 190px;
	height: 50px;
	display: block;
	float: left;
	clear: none;
	text-indent: -999px;
	overflow: hidden;
	background-image: url(img/logo.svg);
	background-position: top left;
	background-size: 100% 100%;
	margin-top: 40px;
	transition: margin-top 0.2s ease-in-out;
}

.no-header div.top-left a.logo {
	background-image: url(img/logo-alt.svg);
}

.top-fix div.top-left a.logo {
	margin-top: 25px;
	background-image: url(img/logo-alt.svg);
}

div.top-right {
	float: right;
	clear: none;
}

div.top-trigger {
	float: left;
	clear: none;
	padding-top: 55px;
}

.top-fix div.top-trigger {
	padding-top: 35px;
}

div.menu-trigger {
	float: left;
	clear: none;
	cursor: pointer;
}

div.menu-trigger span.menu-trigger-label {
	font-family: 'OS-SB', sans-serif;
	font-size: 20px;
	line-height: 100%;
	color: var(--white);
	display: block;
	float: left;
	clear: none;
	padding: 5px 20px 0px 0px;
	transition: color 0.2s ease-in-out;
}

.no-header div.menu-trigger span.menu-trigger-label,
.top-fix div.menu-trigger span.menu-trigger-label {
	color: var(--grey);
}

div.menu-trigger span.menu-trigger-icon {
	width: 50px;
	height: 30px;
	display: block;
	float: left;
	clear: none;
	position: relative;
}

div.menu-trigger span.menu-trigger-icon > span {
	width: 100%;
	height: 5px;
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	background-color: var(--white);
	transition: background-color 0.2s ease-in-out;
}

.no-header div.menu-trigger span.menu-trigger-icon > span,
.top-fix div.menu-trigger span.menu-trigger-icon > span {
	background-color: var(--beige-medium);
}

div.menu-trigger span.menu-trigger-icon > span:nth-child(2) {
	top: 50%;
	transform: translateY(-50%);
}

div.menu-trigger span.menu-trigger-icon > span:nth-child(3) {
	top: auto;
	bottom: 0px;
}

div.menu {
	width: 100%;
	max-width: 1920px;
	height: 100%;
	top: 0px;
	left: 50%;
	z-index: 100;
	transform: translateX(-50%);
	text-align: left;
	position: fixed;
	overflow: hidden;
	display: none;
}

div.menu-offset {
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 1;
	top: 0px;
	left: 0px;
	background-color: var(--grey);
	opacity: 0.8;
}

div.menu-bar {
	width: 100%;
	max-width: 640px;
	height: 100%;
	position: absolute;
	z-index: 2;
	top: 0px;
	right: 0px;
	transform: translateX(100%);
	background-color: var(--beige-light);
	transition: transform 0.3s ease-in-out;
}

div.menu.open div.menu-bar {
	transform: translateX(0%);
}

div.menu-bar-content {
	width: 100%;
	max-width: 480px;
	float: left;
	clear: none;
}

div.menu-closer {
	float: right;
	clear: both;
	cursor: pointer;
	margin-top: 60px;
}

.top-fix div.menu-closer {
	margin-top: 40px;
}

div.menu-closer span.menu-trigger-label {
	font-family: 'OS-SB', sans-serif;
	font-size: 20px;
	line-height: 100%;
	color: var(--beige-dark);
	display: block;
	float: left;
	clear: none;
	padding: 10px 20px 0px 0px;
	transition: color 0.2s ease-in-out;
}

div.menu-closer span.menu-trigger-icon {
	width: 40px;
	height: 40px;
	display: block;
	float: left;
	clear: none;
	position: relative;
	transition: opacity 0.2s ease-in-out;
}

div.menu-closer span.menu-trigger-icon > span {
	width: 100%;
	height: 5px;
	display: block;
	position: absolute;
	top: 20px;
	left: 0px;
	transform: rotate(45deg);
	background-color: var(--grey);
}

div.menu-closer span.menu-trigger-icon > span:nth-child(2) {
	transform: rotate(-45deg);
}


div.menu-main {
	width: 100%;
	float: left;
	clear: both;
	padding: 60px 0px 0px 60px;
}

ul.menu-main {
	width: 100%;
	float: left;
	clear: both;
	font-family: 'OS-SB', sans-serif;
	font-size: 40px;
	text-transform: uppercase;
	line-height: 100%;
}

ul.menu-main > li {
	width: 100%;
	float: left;
	clear: both;
	margin: 20px 0px;
}

ul.menu-main > li > a {
	color: var(--white);
}

ul.menu-main > li > a:hover,
ul.menu-main > li.current > a {
	opacity: 0.5;
}

div.center {
	width: 1920px;
	margin: 0px auto;
	position: relative;
	z-index: 1;
}

div.page-content {
	width: 100%;
	float: left;
	clear: both;
	position: relative;
}

div.segments {
	width: 100%;
	float: left;
	clear: both;
	background-color: var(--white);
}

.no-header div.segments > div:first-child::before {
	content: "";
	width: 100%;
	height: 60px;
	float: left;
	clear: both;
}

div.frame {
	width: 100%;
	float: left;
	clear: none;
	text-align: left;
	padding: 0px 20px;
	position: relative;
}

div.frame img {
	max-width: 100%;
	height: auto;
	float: left;
	clear: none;
}

div.frame-default {
	padding: 0px;
}

div.frame-col-12 {
	width: calc(100% / 2);
	text-align: left;
}

div.frame-col-13 {
	width: calc(100% / 3);
}

div.frame-col-23 {
	width: calc(100% / 3 * 2);
}

div.frame-col-14 {
	width: calc(100% / 4);
}

div.frame-col-34 {
	width: calc(100% / 4 * 3);
}

div.frame-type-image {
	margin: 15px 0px;
}

span.img-bg {
	width: 100%;
	height: 100%;
	display: block;
	float: left;
	clear: none;
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: cover !important;
}

div.segment {
	width: 100%;
	padding: 200px 160px;
	float: left;
	clear: both;
	background-color: var(--white);
}

div.segment-grey-dark {
	background-color: var(--grey);
}

div.segment-beige-matt {
	color: var(--grey-medium);
	background-color: var(--beige-light);
}

div.segment-beige-medium {
	background-color: var(--beige-semilight);
}

div.segment-beige-hell {
	background-color: var(--beige-bright);
}

div.segment-struktur {
	background-color: var(--beige-bright);
	background-image: url(img/struktur.svg);
	background-size: cover;
	background-position: center center;
}

div.header {
	width: 100%;
	height: 1100px;
	float: left;
	clear: both;
	position: relative;
}

div.header-image {
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

div.header-title,
div.header-slider header {
	right: 0px;
	bottom: 200px;
	z-index: 2;
	padding-right: 150px;
	position: absolute;
	background-color: var(--white);
}

div.header-title h1,
div.header-slider header h1 {
	width: auto !important;
	color: var(--grey) !important;
	margin: 10px 10px 10px 20px;
}

div.header-title h1 a,
div.header-slider header h1 a {
	color: var(--grey) !important;
}

div.header-slider div.frame-type-image{
	margin: 0px !important;
}

div.header-slider div.frame {
	width: 100%;
	height: 1100px;
	position: relative;
}

div.header-slider div.ce-image {
	width: 100%;
	height: 100%;
	float: left;
	clear: none;
	position: absolute;
	top: 0px;
	left: 0px;
	z-index: 1;
}

div.header-slider div.ce-gallery,
div.header-slider div.ce-outer,
div.header-slider div.ce-inner,
div.header-slider div.ce-row,
div.header-slider div.ce-column,
div.header-slider figure,
div.header-slider div.ce-gallery a {
	width: 100%;
	height: 100%;
	display: block;
	float: left;
	clear: none;
}

div.owl-dots {
	width: 100%;
	float: left;
	clear: both;
	position: absolute;
	z-index: 2;
	bottom: 30px;
	left: 0px;
	text-align: center;
}

div.owl-dots button {
	width: 16px;
	height: 16px;
	display: inline-block;
	margin: 0px 5px;
	background-color: var(--grey) !important;
	cursor: pointer;
	outline: none;
	border-radius: 50%;
	opacity: 0.5;
}

div.owl-dots button.active {
	opacity: 1;
}

div.centered {
	width: 100%;
	float: left;
	clear: both;
	margin-left: 50%;
	transform: translateX(-50%);
}

div.centered-1200 {
	max-width: 1200px;
}

div.centered-1000 {
	max-width: 1000px;
}

div.centered-800 {
	max-width: 800px;
}

blockquote {
	width: 100%;
	float: left;
	clear: both;
	display: block;
	font-family: 'BR', sans-serif;
	font-size: 34px;
}

div.segment-grey-dark {
	color: var(--beige-light);
}

span.sc-signatur {
	width: 280px;
	height: 80px;
	display: inline-block;
	background-image: url(img/sc-signatur.svg);
	background-size: 100% 100%;
	background-position: center center;
}

div.column-grid {
	width: 100%;
	float: left;
	clear: both;
	display: grid;
	grid-auto-columns: minmax(0, 1fr);
	grid-auto-flow: column;
}

div.column-grid > div.frame {
	padding: 80px 40px;
	position: relative;
}

div.column-grid > div.frame h3 {
	margin-bottom: 30px;
}

div.column-grid > div.frame::before {
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	z-index: 1;
	background-color: var(--beige-light);
}

div.column-grid > div.frame header,
div.column-grid > div.frame div.ce-gallery,
div.column-grid > div.frame div.ce-bodytext,
div.column-grid > div.frame div.rte-content {
	position: relative;
	z-index: 2;
}

div.column-grid > div.frame:nth-child(1)::before {
	opacity: 0.9;
}

div.column-grid > div.frame:nth-child(2)::before {
	opacity: 0.7;
}

div.column-grid > div.frame:nth-child(3)::before {
	opacity: 0.8;
}

div.column-grid > div.frame:nth-child(4)::before {
	opacity: 0.6;
}

div.column-grid > div.frame-type-textpic div.ce-gallery {
	width: 100%;
	float: left;
	clear: both;
	text-align: center;
	margin-bottom: 20px;
}

div.column-grid > div.frame-type-textpic div.ce-gallery img {
	float: none;
	display: inline-block;
}

div.column-grid > div.frame-type-textpic div.ce-bodytext {
	width: 100%;
	float: left;
	clear: both;
}

div.frame-layout-1,
div.frame-layout-2 {
	clear: both;
	margin-top: 40px;
}

div.frame-layout-2 {
	float: right;
}

div.frame-layout-1 h3,
div.frame-layout-2 h3 {
	font-family: 'BM', sans-serif;
}

div.segment-beige-matt div.frame-layout-1 h3,
div.segment-beige-matt div.frame-layout-2 h3 {
	color: var(--white);
}

div.frame-layout-3 {
	margin: 0px;
}

div.frame-layout-3 div.ce-image,
div.frame-layout-3 div.ce-gallery {
	width: 100%;
	float: left;
	clear: none;
}

div.frame-layout-3 div.ce-gallery {
	display: grid;
	display: grid;
	grid-template-columns: repeat(4,1fr);
	grid-auto-rows: 1fr;
}

div.frame-layout-3 div.ce-row {
	padding: 5px;
}

div.quote-slider-wrapper {
	width: calc(100% / 3 * 2);
	float: left;
	clear: none;
	padding-bottom: 20px;
	background-image: url(img/quote-slider-bg.svg);
	background-size: 150px 120px;
	background-position: top center;
}

div.quote-slider div.frame-type-text {
	text-align: center;
}

div.segment-beige-medium div.quote-slider div.frame-type-text blockquote {
	color: var(--grey);
}

div.quote-slider-wrapper div.owl-dots {
	bottom: -20px;
}

div.frame-layout-4 div.ce-gallery {
	width: 100%;
	height: auto;
	float: left;
	clear: both;
	position: relative;
}

div.frame-layout-4 div.ce-row {
	width: calc(100% / 3);
	padding: 10px;
}

div.frame-layout-4 div.ce-row img {
	width: 100%;
	height: auto;
}

div.frame-layout-4 figure.image {
	width: 100%;
	height: 100%;
	float: left;
	clear: both;
	position: relative;
}

div.frame-layout-4 a {
	width: 100%;
	height: 100%;
	float: left;
	clear: both;
	position: relative;
}

div.frame-layout-4 figcaption {
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	font-size: inherit !important;
	padding: 20px;
	color: var(--white);
	font-size: 20px;
	background-color: rgba(0,0,0,0.5);
	opacity: 0;
	transition: opacity 0.3s linear;
}

div.frame-layout-4 a figcaption {
	border: none;
}

div.frame-layout-4 figure.image:hover figcaption {
	opacity: 1;
}

span.image-caption-text {
	width: 100%;
	position: absolute;
	bottom: 0px;
	left: 0px;
	padding: 0px 20px 15px 20px;
}

span.image-caption-link {
	width: 15px;
	height: 15px;
	display: block;
	float: right;
	clear: none;
	background-image: url(img/image-link.svg);
	background-size: 15px 15px;
}

.fancybox-bg {
	opacity: 0.9 !important;
	background: var(--black) !important;
}

.fancybox-thumbs__list a:before {
	border-color: var(--beige-semidark) !important;
}

div.tabs-menu {
	width: 100%;
	float: left;
	clear: both;
	margin-top: 20px;
}

div.tabs-menu > div {
	color: var(--white);
	display: inline-block;
	padding: 15px 20px;
	margin: 5px;
	background-color: var(--beige-semidark);
	cursor: pointer;
}

div.tabs-menu > div.inactive {
	background-color: var(--beige-dark);
}

div.tabs-container {
	width: 100%;
	float: left;
	clear: both;
	position: relative;
}

div.maps-link {
	width: 100%;
	height: 800px;
	float: left;
	clear: both;
}

div.maps-link a {
	width: 100%;
	height: 100%;
	display: block;
	text-align: left;
	text-indent: -999px;
	overflow: hidden;
	float: left;
	clear: none;
	background-image: url(../../user_upload/grafiken/maps-link.jpg);
	background-size: cover;
	background-position: center center;
}

div.schema {
	width: 100%;
	float: left;
	clear: both;
}

div.schema-item {
	width: 100%;
	float: left;
	clear: both;
	position: relative;
}

div.schema-item:nth-child(1),
div.schema-item:nth-child(2) {
	padding-bottom: 100px;
}

div.schema-item:nth-child(1)::after,
div.schema-item:nth-child(2)::after {
	content: "";
	width: 2px;
	height: 100%;
	display: block;
	float: left;
	clear: none;
	z-index: 1;
	position: absolute;
	left: 50%;
	bottom: 0px;
	transform: translateX(-50%);
	background-color: var(--beige-medium);
}

div.si-text {
	width: 50%;
	min-height: 200px;
	float: left;
	clear: none;
	position: relative;
	z-index: 2;
	padding-top: 15px;
}

div.si-text h3 {
	font-family: 'BM', sans-serif;
}

div.schema-item.left div.si-text {
	padding-right: 150px;
	float: left;
	text-align: right;
}

div.schema-item.right div.si-text {
	padding-left: 150px;
	float: right;
	text-align: left;
}

div.si-icon {
	width: 200px;
	height: 200px;
	position: absolute;
	top: 0px;
	left: 50%;
	z-index: 2;
	transform: translateX(-50%);
}

div.content-header {
	width: 100%;
	height: 700px;
	float: left;
	clear: both;
	position: relative;
}

div.content-header div.owl-nav.disabled {
	display: none;
}

div.content-header div.owl-dots {
	width: auto;
	height: auto;
	left: auto;
	right: 30px;
	bottom: auto;
	top: 50%;
	transform: translateY(-50%);
}

div.content-header div.owl-dots button {
	float: left;
	clear: both;
	display: block;
	margin: 5px 0px;
	border: none;
}

div.content-header div.frame {
	width: 100%;
	height: 700px;
	float: left;
	clear: none;
	margin: 0px !important;
	padding: 0px !important;
	position: relative;
}

div.content-header div.ce-image,
div.content-header div.ce-gallery,
div.content-header div.ce-row,
div.content-header div.ce-column,
div.content-header figure {
	width: 100%;
	height: 100%;
	float: left;
	clear: none;
}

div.content-header div.ce-image {
	position: relative;
	z-index: 1;
}

div.content-header header {
	position: absolute;
	z-index: 2;
	left: 0px;
	bottom: 100px;
	padding-left: 150px;
	background-color: var(--white);
}

div.content-header header h1,
div.content-header header h2,
div.content-header header h3,
div.content-header header h4,
div.content-header header h5 {
	font-family: 'OS-SB', sans-serif;
	padding: 10px 20px 10px 0px;
	margin: 0px;
}

div.cards-grid {
	width: 100%;
	float: left;
	clear: both;
	margin-top: 40px;
	display: grid;
	grid-template-columns: repeat(3,1fr);
	grid-auto-rows: 1fr;
}

div.cards-grid > div.frame {
	height: 100%;
	padding: 0px 10px;
}

div.cards-grid > div.frame > div.ce-textpic {
	width: 100%;
	height: 100%;
	float: left;
	clear: none;
	background-color: var(--grey);
}

div.cards-grid div.ce-bodytext {
	width: 100%;
	float: left;
	clear: both;
	padding: 40px 10px 20px 10px;
}

div.cards-grid div.ce-bodytext h1,
div.cards-grid div.ce-bodytext h2,
div.cards-grid div.ce-bodytext h3,
div.cards-grid div.ce-bodytext h4,
div.cards-grid div.ce-bodytext h5,
div.cards-grid div.ce-bodytext h1 a,
div.cards-grid div.ce-bodytext h2 a,
div.cards-grid div.ce-bodytext h3 a,
div.cards-grid div.ce-bodytext h4 a,
div.cards-grid div.ce-bodytext h5 a {
	color: var(--white);
}

div.cards-grid div.ce-bodytext p {
	color: var(--beige-light);
}

div.cards-grid div.ce-bodytext a.button {
	color: var(--beige-medium);
	margin: 0px;
}

div.footer-cta {
	width: 100%;
	float: left;
	clear: both;
	text-align: left;
	display: flex;
	padding: 100px 160px;
	background-color: var(--grey-medium);
}

div.footer-cta h1,
div.footer-cta h2,
div.footer-cta h3,
div.footer-cta h4,
div.footer-cta h5 {
	color: var(--white);
}

div.footer-cta span.subline {
	color: var(--beige-light);
}

div.footer-cta p {
	display: block;
	float: right;
	clear: none;
	white-space: nowrap;
	margin: 0px;
}

div.footer-cta p a {
	color: var(--white);
	text-decoration: none !important;
	margin: 10px 0px;
}

div.footer-cta p a:hover {
	text-decoration: underline !important;
}

div.footer {
	width: 100%;
	float: left;
	clear: both;
	text-align: left;
	display: flex;
	padding: 100px 160px;
	background-color: var(--grey);
}

div.footer-left {
	width: 190px;
	float: left;
	clear: none;
}

div.footer-left a.logo {
	width: 190px;
	height: 50px;
	display: block;
	float: left;
	clear: none;
	text-indent: -999px;
	overflow: hidden;
	background-image: url(img/logo-footer.svg);
	background-position: top left;
	background-size: 100% 100%;
}

div.footer-center {
	flex-grow: 1;
	float: none;
	clear: none;
	text-align: center;
}

ul.menu-footer {
	font-family: 'OS-SB', sans-serif;
	font-size: 24px;
	line-height: 100%;
	display: inline-block;
	text-align: left;
}

ul.menu-footer > li {
	width: 100%;
	float: left;
	clear: both;
	margin-bottom: 15px;
}

ul.menu-footer > li > a {
	color: var(--white);
}

ul.menu-footer > li > a:hover {
	opacity: 0.5;
}

div.footer-right {
	font-size: 18px;
	width: 400px;
	float: left;
	clear: none;
	position: relative;
}

div.footer-right p {
	color: var(--beige-light);
	margin: 0px 0px 20px 0px;
}

div.footer-right p:last-child {
	margin-bottom: 0px;
}

div.footer-right p a {
	color: var(--beige-light);
}

div.footer-right p a:hover {
	color: var(--white);
}

div.bottom {
	width: 100%;
	float: left;
	clear: both;
	padding: 20px 0px 15px 0px;
	text-align: center;
	background-color: var(--grey-medium);
}

ul.menu-bottom {
	font-family: 'OS-SB', sans-serif;
	font-size: 18px;
	line-height: 100%;
	display: inline-block;
}

ul.menu-bottom > li {
	margin: 0px 20px;
	float: left;
	clear: none;
}

ul.menu-bottom > li > a {
	color: var(--white);
}

ul.menu-bottom > li > a:hover {
	opacity: 0.5;
}

video {
	width: 100%;
	height: auto;
	float: left;
	clear: both;
}

/* MEDIA-QUERIES */

@media screen and (max-width:1920px) {
	div.top, div.menu, div.center {width:100%; max-width:100%;}
	div.header, div.header-slider div.frame {height:1050px;}
}

@media screen and (max-width:1820px) {
	div.menu-bar {max-width:620px;}
	div.footer, div.footer-cta {padding:95px 140px;}
	div.segment {padding:190px 140px;}
	div.header, div.header-slider div.frame {height:1000px;}
}

@media screen and (max-width:1720px) {
	div.menu-bar {max-width:610px;}
	div.footer, div.footer-cta {padding:90px 130px;}
	div.segment {padding:180px 130px;}
	div.header, div.header-slider div.frame {height:950px;}
}

@media screen and (max-width:1620px) {
	hr {height:80px;}
	div.top {padding:0px 120px;}
	div.menu-bar {max-width:600px;}
	div.footer, div.footer-cta {padding:85px 120px;}
	div.segment {padding:160px 120px;}
	div.header, div.header-slider div.frame {height:900px;}
	div.header-title, div.header-slider header {padding-right:120px;}
	div.content-header header {padding-left:120px;}
}

@media screen and (max-width:1520px) {
	div.top {padding:0px 110px;}
	div.menu-bar {max-width:590px;}
	div.footer, div.footer-cta {padding:80px 110px;}
	div.segment {padding:140px 110px;}
	div.header, div.header-slider div.frame {height:850px;}
	div.header-title, div.header-slider header {padding-right:110px;}
	div.content-header header {padding-left:110px;}
}

@media screen and (max-width:1420px) {
	hr {height:60px;}
	div.top {height:100px; padding:0px 100px;}
	div.menu-bar {max-width:580px;}
	div.footer, div.footer-cta {padding:75px 100px;}
	div.header, div.header-slider div.frame {height:800px;}
	div.header-title, div.header-slider header {padding-right:100px;}
	div.content-header header {padding-left:100px;}
	blockquote {font-size:32px;}
	div.column-grid > div.frame {padding:40px 20px;}
}

@media screen and (max-width:1320px) {
	h1, h2 {font-size:36px;}
	h3 {font-size:30px;}
	h4 {font-size:26px;}
	h5 {font-size:22px;}
	div.top {padding:0px 80px;}
	div.menu-bar {max-width:560px;}
	div.footer, div.footer-cta {padding:70px 80px;}
	div.segment {padding:100px 80px;}
	body {font-size:20px;}
	div.header, div.header-slider div.frame, div.maps-link {height:750px;}
	div.header-title, div.header-slider header {padding-right:80px;}
	div.content-header header {padding-left:80px;}
}

@media screen and (max-width:1220px) {
	hr {height:40px;}
	div.top, .top-fix div.top {height:80px; padding:0px 60px;}
	div.top-left a.logo {margin-top:20px;}
	.top-fix div.top-left a.logo {margin-top:15px;}
	div.top-trigger {padding-top:30px;}
	div.menu-trigger span.menu-trigger-label {font-size:22px;}
	.top-fix div.top-trigger {padding-top:25px;}
	div.menu-closer {margin-top:35px;}
	.top-fix div.menu-closer {margin-top:15px;}
	div.menu-bar {max-width:540px;}
	div.footer, div.footer-cta {padding:60px;}
	div.header, div.header-slider div.frame, div.maps-link {height:700px;}
	div.header-title, div.header-slider header {padding-right:60px;}
	div.content-header header {padding-left:60px;}
	div.owl-dots button {width:12px; height:12px;}
	blockquote {font-size:30px;}
	div.si-icon {width:150px; height:150px;}
	div.schema-item:nth-child(1), div.schema-item:nth-child(2) {padding-bottom:50px;}
	div.schema-item:nth-child(1)::after, div.schema-item:nth-child(2)::after {width:1.5px;}
	div.schema-item.left div.si-text {padding-right:100px;}
	div.schema-item.right div.si-text {padding-left:100px;}
	div.content-header div.owl-dots {right:20px;}
}

@media screen and (max-width:1120px) {
	div.top, .top-fix div.top {padding:0px 50px;}
	a.phone, a.mail {font-size:20px;}
	div.footer-cta p a {margin:5px 0px;}
	div.menu-bar {max-width:530px;}
	div.lang-menu {padding:50px 0px 0px 50px;}
	div.menu-main {padding:20px 0px 0px 50px;}
	div.footer, div.footer-cta {padding:50px;}
	div.segment {padding:70px 50px;}
	h1, h2 {font-size:38px;}
	h3 {font-size:28px;}
	h4 {font-size:24px;}
	h5 {font-size:20px;}
	div.header, div.header-slider div.frame, div.maps-link, div.content-header, div.content-header div.frame {height:650px;}
	div.header-title, div.header-slider header {padding-right:50px; bottom:150px;}
	div.header-title h1, div.header-slider header h1 {margin:10px;}
	div.content-header header {padding-left:50px; bottom:80px;}
	div.column-grid > div.frame h3 {margin-bottom:inherit;}
}

@media screen and (max-width:1020px) {
	hr {height:20px;}
	div.top, .top-fix div.top {height:80px; padding:0px 40px;}
	div.top-left a.logo {width:152px; height:40px; margin-top:30px;}
	.top-fix div.top-left a.logo {margin-top:20px;}
	div.top-trigger {padding-top:35px;}
	.top-fix div.top-trigger {padding-top:30px;}
	div.menu-trigger span.menu-trigger-label {font-size:18px; padding:3px 10px 0px 0px;}
	div.menu-trigger span.menu-trigger-icon {width:40px; height:24px;}
	div.menu-trigger span.menu-trigger-icon > span {height:4px;}
	div.menu-bar {max-width:520px;}
	div.lang-menu {padding:40px 0px 0px 40px;}
	div.menu-main {padding:20px 0px 0px 40px;}
	ul.menu-main {font-size:30px;}
	ul.menu-main > li {margin:10px 0px;}
	div.footer, div.footer-cta {padding:40px;}
	div.footer-left a.logo {width:152px; height:40px;}
	div.footer-left {width:160px;}
	ul.menu-footer {font-size:20px;}
	div.footer-right {width:280px; font-size:16px;}
	div.segment {padding:60px 40px;}
	ul.menu-bottom {font-size:16px;}
	div.header, div.header-slider div.frame, div.maps-link, div.content-header, div.content-header div.frame {height:600px;}
	div.header-title, div.header-slider header {padding-right:40px; bottom:130px;}
	div.content-header header {padding-left:40px; bottom:70px;}
	blockquote {font-size:28px;}
	div.column-grid {display:block;}
	div.column-grid > div.frame {padding:40px 20px 20px 20px;}
	div.cards-grid {margin-top:20px;}
	div.cards-grid > div.frame {padding:0px 5px;}
	div.cards-grid div.ce-bodytext {padding:20px 10px;}
}

@media screen and (max-width:920px) {
	div.top {padding:0px 30px;}
	div.menu-bar {max-width:510px;}
	div.footer, div.footer-cta {padding:40px 30px;}
	div.segment {padding:50px 30px;}
	
	body {font-size:18px;}
	div.frame {width:100%; clear:both; padding:10px 0px;}
	div.footer-cta {display:block;}
	div.footer-cta p {width:100%; float:left; clear:both; white-space:normal;}
	a.phone, a.mail {font-size:inherit; padding-left:28px;}
	a.phone::before, a.mail::before {width:20px; height:20px; top:3px;}
	div.header, div.header-slider div.frame, div.maps-link, div.content-header, div.content-header div.frame {height:550px;}
	div.header-title, div.header-slider header {padding-right:30px; bottom:100px;}
	div.content-header header {padding-left:30px; bottom:60px;}
	blockquote {font-size:26px;}
	div.frame-type-image {margin:0px;}
	div.frame-layout-1, div.frame-layout-2 {margin:0px;}
	div.quote-slider-wrapper {width:100%; clear:both; background-size:100px 80px; background-position:top 20px center; padding-bottom:0px;}
	div.quote-slider-wrapper div.owl-dots {bottom:0px;}
	div.tabs-menu {margin:0px;}
}

@media screen and (max-width:820px) {
	hr {height:0px;}
	div.top, .top-fix div.top {padding:0px 30px;}
	div.menu-trigger span.menu-trigger-label {display:none;}
	div.top-trigger {padding-top:40px;}
	.top-fix div.top-trigger {padding-top:30px;}
	div.menu-closer span.menu-trigger-label {display:none;}
	div.menu-closer span.menu-trigger-icon {width:34px; height:34px;}
	div.menu-closer span.menu-trigger-icon > span {height:4px;}
	div.menu-bar {width:50%;}
	div.menu-bar-content {width:100%; max-width:100%; padding:0px 40px 40px 40px;}
	div.menu-main {padding:20px 0px 0px 0px;}
	div.bottom {padding:15px 0px 10px 0px;}
	div.header, div.header-slider div.frame, div.maps-link, div.content-header, div.content-header div.frame {height:500px;}
	div.header-title, div.header-slider header {padding-right:30px; bottom:100px;}
	blockquote {font-size:24px;}
	div.frame-layout-4 div.ce-row {width:calc(100% / 2); padding:5px;}
	div.si-title {padding:20px 20px 70px 20px;}
	div.si-icon {width:120px; height:120px; left:0px; transform:none;}
	div.si-text {padding:0px;}
	div.schema-item:nth-child(1), div.schema-item:nth-child(2) {padding-bottom:20px;}
	div.schema-item:nth-child(1)::after, div.schema-item:nth-child(2)::after {width:2px; left:60px; transform:none;}
	div.schema-item div.si-text {width:100% !important; padding-left:150px !important; padding-right:0px !important; text-align:left !important; float:left !important;}
	div.cards-grid {display:block;}
	div.cards-grid > div.frame {padding:10px 0px;}
	div.cards-grid div.ce-bodytext {padding:30px 10px;}
}

@media screen and (max-width:720px) {
	h1, h2 {font-size:32px;}
	h3 {font-size:26px;}
	h4 {font-size:22px;}
	h5 {font-size:18px;}
	p {margin:10px 0px;}
	div.footer {display:block;}
	div.footer-left {display:none;}
	div.footer-center {width:auto; float:left; clear:left;}
	div.footer-right {width:auto; float:right; clear:right;}
	div.header, div.header-slider div.frame, div.maps-link, div.content-header, div.content-header div.frame {height:450px;}
	div.header-title, div.header-slider header {bottom:80px;}
	div.content-header header {bottom:60px;}
	blockquote {font-size:22px;}
	span.sc-signatur {width:210px; height:60px;}
	div.frame-layout-3 div.ce-gallery {grid-template-columns:repeat(3,1fr);}
	div.frame-layout-3 div.ce-row {padding:2px;}
}

@media screen and (max-width:620px) {
	div.top, .top-fix div.top {height:60px; padding:0px 20px; background:transparent; background-color:var(--white); box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.1);}
	div.top-left a.logo, .top-fix div.top-left a.logo {width:114px; height:30px; margin-top:15px; background-image:url(img/logo-alt.svg);}
	.top-fix div.top-left a.logo {margin-top:15px;}
	div.top-trigger, .top-fix div.top-trigger {padding-top:20px;}
	div.top-spacer {display:block;}
	div.menu-closer {margin-top:10px;}
	div.menu-trigger span.menu-trigger-icon {height:20px;}
	div.menu-trigger span.menu-trigger-icon > span {height:3px; background-color:var(--beige-medium);}
	div.menu-bar {width:60%;}
	div.menu-bar-content {padding:0px 30px 30px 30px;}
	div.footer, div.footer-cta {padding:40px 20px;}
	div.bottom {padding:12px 0px 8px 0px;}
	ul.menu-bottom > li {margin:0px 10px;}
	div.segment {padding:40px 20px;}
	h1, h2 {font-size:28px;}
	h3 {font-size:24px;}
	h4 {font-size:22px;}
	h5 {font-size:18px;}
	body {font-size:16px;}
	div.header, div.header-slider div.frame, div.maps-link, div.content-header, div.content-header div.frame {height:350px;}
	div.header-title, div.header-slider header {bottom:50px;}
	div.content-header header {padding-left:20px; bottom:40px;}
	div.owl-dots {bottom:20px;}
	div.owl-dots button {width:10px; height:10px;}
	blockquote {font-size:20px;}
	div.segment a.phone::before, div.segment a.mail::before {top:2px;}
	div.tabs-menu > div {margin:3px; padding:10px 15px;}
	.no-header div.segments > div:first-child::before {height:0px;}
}

@media screen and (max-width:520px) {
	div.menu-bar {width:70%;}
	ul.menu-main {font-size:24px;}
	div.footer-center {display:none;}
	div.footer-right {width:100%; text-align:center;}
	div.footer-right p {font-size:14px;}
	ul.menu-bottom {font-size:14px;}
	div.header, div.header-slider div.frame, div.maps-link, div.content-header, div.content-header div.frame {height:300px;}
	div.maps-link a {background-size:300% auto;}
	div.header-title, div.header-slider header {bottom:40px;}
	div.owl-dots {bottom:15px;}
	blockquote {font-size:18px;}
	span.sc-signatur {width:175px; height:50px;}
	div.si-icon {width:100px; height:100px;}
	div.schema-item div.si-text {padding-left:120px !important;}
	div.schema-item:nth-child(1)::after, div.schema-item:nth-child(2)::after {width:1px; left:50px;}
}

@media screen and (max-width:420px) {
	p {margin:5px 0px;}
	div.menu-bar {width:90%;}
	ul.menu-main {font-size:28px;}
	div.menu-bar-content {padding:0px 20px 20px 20px;}
	ul.menu-main {font-size:22px;}
	h1, h2 {font-size:22px;}
	h3 {font-size:20px;}
	h4 {font-size:18px;}
	h5 {font-size:16px;}
	div.header, div.header-slider div.frame {height:250px;}
	div.header-title, div.header-slider header {width:100%; text-align:center; bottom:40px; padding:0px;}
	div.header-title h1, div.header-slider header h1 {width:100%; margin:0px; padding:10px;}
	div.quote-slider-wrapper {background-size:75px 60px; background-position:top center;}
	div.quote-slider-wrapper div.frame {padding:0px;}
	div.quote-slider-wrapper blockquote p {margin-top:0px;}
	div.frame-layout-4 div.ce-row {width:100%; padding:2px 0px;}
	div.si-icon {width:80px; height:80px;}
	div.schema-item div.si-text {padding-left:100px !important;}
	div.schema-item:nth-child(1)::after, div.schema-item:nth-child(2)::after {left:40px;}
}

@media screen and (max-width:360px) {
	div.header, div.header-slider div.frame {height:220px;}
	div.header-title, div.header-slider header {width:100%; bottom:20px;}
	div.owl-dots {bottom:5px;}
	div.owl-dots button {width:8px; height:8px; margin:0px 3px;}
	div.frame-layout-3 div.ce-gallery {grid-template-columns:repeat(2,1fr);}
}