/* ----------------------------------------------------------------
	Variablen
-----------------------------------------------------------------*/
@font-face {
    font-family: OpenSansCustom;
    src: url(../fonts/OpenSans-Regular.ttf);
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: OpenSansCustom;
    src: url(../fonts/OpenSans-Bold.ttf);
    font-weight: 700;
    font-display: swap;
}

:root {
	--display-font: 'OpenSansCustom', sans-serif;
	--common-font: 'OpenSansCustom', sans-serif;

	--main-white: #ffffff;
	--main-black: #0E1319;

	--main-shade-600: #49474B;
	--main-shade-400: #dcdcdc;
	--main-shade-50: #F8F6F6;

	--main-color: #EF8744;
	--main-color-light: #FCE7DA;
	--second-color: #033063;
	--second-color-light: #E5F2FC;

	--page-width: 1400px;
	--page-padding: calc((100% - var(--page-width)) / 2);

	--border-full: 99999rem;
	--border-round: 2.5rem;
	
	--nav-height: 6.5rem;
}
@media only screen and (max-width: 1800px) {
	:root {
		--page-width: 1350px;
	}
}
@media only screen and (max-width: 1640px) {
	:root {
		--page-width: 1150px;
	}
}
@media only screen and (max-width: 1480px) {
	:root {
		--page-width: 950px;
	}
}
@media only screen and (max-width: 1200px) {
	:root {
		--page-width: 850px;
	}
}
@media only screen and (max-width: 992px) {
	:root {
		--page-width: calc(100% - 8rem);
	}
}
@media only screen and (max-width: 688px) {
	:root {
		--page-width: calc(100% - 4rem);
	}
}

/* ----------------------------------------------------------------
	Basic
-----------------------------------------------------------------*/
html, body {
	padding: 0px;
	margin: 0px;
	max-width: 100vw;
	font-size: 100%;
	font-family: var(--common-font);
	overflow-x: hidden;
}

dl, dt, dd, h1, h2, h3, h4, h5, h6, p, span, q, a, button {
	margin: 0;
	padding: 0;
	list-style-type: none;
	will-change: transform;
}

ol, ul {
	will-change: transform;
	text-align: left;
	margin: 0;
	padding-left: 1.25rem;
}

section, main, footer {
	position: relative;
	margin-top: -1px;
	z-index: 5;
}
section:not(.section-graphic) {
	box-sizing: border-box;
	padding-top: 9.375rem;
	padding-bottom: 9.375rem;
}
section.graphic-after {
	padding-bottom: 1px;
}
section.section-graphic + section {
	padding-top: 5rem;
}

::selection {
	background: var(--main-color);
	color: var(--main-white);
	text-shadow: none;
}

::-moz-selection {
	background: var(--main-color); /* Firefox */
	color: var(--main-white);
	text-shadow: none;
}

::-webkit-selection {
	background: var(--main-color); /* Safari */
	color: var(--main-white);
	text-shadow: none;
}

:active,
:focus { outline: none !important; }

/*Media Queries*/
@media only screen and (max-width: 1480px) {
	html, body {
		font-size: 75%;
	}
}
@media only screen and (max-width: 992px) {
	html, body {
		font-size: 95%;
	}
	section:not(.section-graphic) {
		padding-top: 5rem;
		padding-bottom: 5rem;
	}
}
@media only screen and (max-width: 688px) {
	html, body {
		font-size: 85%;
	}
}

/* ----------------------------------------------------------------
	Typography
-----------------------------------------------------------------*/
p, span, q, label, ul, a, button, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	font-family: var(--common-font);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5em;
	color: var(--main-black);
}
a, button {
	position: relative;
	padding: 0px;
	margin: 0px;
	text-decoration: none;
	color: var(--main-color);
	background: none;
	border: none;
}
a:not(:disabled), button:not(:disabled) {
	cursor: pointer;
}
a {
	color: var(--main-black);
	transition: color 0.25s;
}
a:hover, a:focus {
	color: var(--main-color);
}
.bg-dark p, .bg-dark span, .bg-dark q, .bg-dark label, .bg-dark ul, .bg-dark a, .bg-dark button, .bg-dark h1, .bg-dark .h1, .bg-dark h2, .bg-dark .h2, .bg-dark h3, .bg-dark .h3, .bg-dark h4, .bg-dark .h4, .bg-dark h5, .bg-dark .h5, .bg-dark h6, .bg-dark .h6 {
	color: var(--main-white);
}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	font-family: var(--display-font);
	font-weight: 700;
	line-height: 1.1em;
	text-transform: uppercase;

}
.text-tiny {
	font-size: 0.8rem;
}
.text-small {
	font-size: 0.9rem;
}
.text-big {
	font-size: 1.25rem;
}
.text-huge {
	font-size: 1.5rem;
}
.text-white {
	color: var(--main-white);
}
.text-dark {
	color: var(--main-black);
}
.text-up {
	text-transform: uppercase;
}

h1, .h1 {
	font-size: 3.125rem;
	font-weight: 700;
	text-transform: none;
	color: var(--second-color);
}
h2, .h2 {
	font-size: 2.75rem;
	color: var(--second-color);
}
.flexbox-v > h1 + p, .flexbox-v > .h1 + p, .flexbox-v > h2 + p, .flexbox-v > .h2 + p {
	margin-top: 1.75rem;
}
h3, .h3 {
	font-size: 1.5rem;
	color: var(--second-color);
}
.flexbox-v > h3 + p, .flexbox-v > .h3 + p , .flexbox-v > h3 + ul, .flexbox-v > .h3 + ul {
	margin-top: 1rem;
}
h4, .h4 {
	font-size: 1.25rem;
	color: var(--second-color);
}
h5, .h5 {
	font-size: 1rem;
	line-height: 1.3em;
	color: var(--second-color);
}

.kicker {
	text-transform: uppercase;
	letter-spacing: 0.2rem;
	margin-bottom: 1.75rem;
	color: var(--main-color);
}
.bg-dark .kicker {
	color: var(--main-white);
}

.link-self {
	text-transform: uppercase;
	font-weight: 700;
}

.container-text {
	position: relative;
}

.italic {
	font-style: italic;
}

strong {
	font-weight: 700;
}
@media only screen and (max-width: 992px) {
	h1, .h1 {
		font-size: 2.5rem;
	}
	h2, .h2 {
		font-size: 2rem;
	}
	h3, .h3 {
		font-size: 1.5rem;
	}
	h4, .h4 {
		font-size: 1rem;
	}
}
@media only screen and (max-width: 688px) {
	h1, .h1 {
		font-size: 2rem;
	}
	h2, .h2 {
		font-size: 1.75rem;
	}
	h3, .h3 {
		font-size: 1.25rem;
	}

}

/* ----------------------------------------------------------------
	Helper Classes
-----------------------------------------------------------------*/
.fullwidth, .full {
	width: 100%;
}
.fullheight, .full {
	height: 100%;
}
.relative {
	position: relative;
}
.none {
	display: none !important;
}

.flexbox-h, .flexbox-v, .flexbox-hr, .flexbox-vr {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	align-content: flex-start;
}
.flexbox-v, .flexbox-vr {
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}
.flexbox-hr {
	flex-direction: row-reverse;
}
.flexbox-vr {
	flex-direction: column-reverse;
}
.flexbox-c {
	justify-content: center;
	align-items: center;
	align-content: center;
}
.flexbox-c * {
	text-align: center;
}

.content-right, .content {
	box-sizing: border-box;
	padding-right: var(--page-padding)
}
.content-left, .content {
	box-sizing: border-box;
	padding-left: var(--page-padding)
}

.flexbox-hr.content-right, .flexbox-hr .content-right {
	box-sizing: border-box;
	padding-right: 0px;
	padding-left: var(--page-padding)
}
.flexbox-hr.content-left, .flexbox-hr .content-left {
	box-sizing: border-box;
	padding-left: 0px;
	padding-right: var(--page-padding)
}

section.bg-white:not(.section-graphic) + section.bg-white, section.bg-light.orange:not(.section-graphic) + section.bg-light.orange, section.bg-light.blue:not(.section-graphic) + section.bg-light.blue, section.bg-dark:not(.section-graphic) + section.bg-dark {
	padding-top: 0px;
}

.top-right, .top-left, .bottom-right, .bottom-left {
	position: absolute;
}
.top-right, .top-left {
	top: 0px;
}
.bottom-right, .bottom-left {
	bottom: 0px;
}
.top-right, .bottom-right {
	right: 0px;
}
.top-left, .bottom-left {
	left: 0px;
}
.top-right.inside, .bottom-right.inside {
	right: var(--page-padding)
}
.top-left.inside, .bottom-left.inside {
	left: var(--page-padding)
}

.center {
	align-self: center;
}

.align-left, .arrange-left {
	align-items: flex-start;
}
.align-center, .arrange-center {
	align-items: center;
}
.align-right, .arrange-right {
	align-items: flex-end;
}

.text-left, .arrange-left {
	text-align: left;
}
.text-center, .arrange-center {
	text-align: center;
}
.text-right, .arrange-right {
	text-align: right;
}

.arrange-left .flexbox-h:not(.flexbox-c) {
	justify-content: flex-start;
}
.arrange-center .flexbox-h:not(.flexbox-c) {
	justify-content: center;
}
.arrange-right .flexbox-h:not(.flexbox-c) {
	justify-content: flex-end;
}

.bg-white, .bg-white-not {
	background-color: var(--main-white);
}
.bg-light.orange, .bg-light-not.orange {
	background-color: var(--main-color-light);
}
.bg-light.blue, .bg-light-not.blue {
	background-color: var(--second-color-light);
}
.bg-dark, .bg-dark-not {
	background-color: var(--main-color);
}
.link-self::before {
	content: "";
	position: absolute;
	top: 50%;
	right: calc(100% + 0.375rem);
	width: 2px;
	height: 0%;
	background-color: var(--second-color);
	transition: height 0.25s, background-color 0.25s, top 0.25s, bottom 0.25s;
	z-index: -1;
}
.border-full {
	border-radius: var(--border-full);
	-webkit-border-radius: var(--border-full);
	-moz-border-radius: var(--border-full);
	overflow: hidden;
}
.border-round:not(.scale) {
	border-radius: var(--border-round);
	-webkit-border-radius: var(--border-round);
	-moz-border-radius: var(--border-round);
	overflow: hidden;
}

.overflow {
	overflow: hidden;
}

img, video, picture {
    display: inline-block;
	width: 100%;
	height: 100%;
	vertical-align: middle;
}
.bg-image > img[data-speed]:not([data-speed="1"]) {
	height: 125%;
}
.full-image > img[data-speed]:not([data-speed="1"]) {
	height: 150%;
}
.full-image, .bg-image, .full-image > *, .bg-image > * {
	object-fit: cover;
	object-position: center;
}
.contain, .scale {
	object-fit: contain;
}
.bg-image {
	position: absolute;
	top: 0px;
	left: 0px;
	z-index: 0;
}
svg {
	vertical-align: middle;
}

.shadow:not(.scale) {
	box-shadow: 0px 1.25rem 3.75rem rgba(0, 0, 0, 0.2)
}
.bg-dark .shadow:not(.scale), .bg-dark-not.but-shadow .shadow:not(.scale) {
	box-shadow: 0px 0px 3.75rem rgba(49, 78, 163, 0.4)
}

.container-buttons {
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-end;
	gap: 1.25rem;
}
.container-buttons.arrows {
	gap: 0.75rem;
}
div.flexbox-v > .container-buttons:not(:first-child), div.flexbox-vr > .container-buttons:not(:last-child) {
	margin-top: 2.5rem;
}

.primary, .secondary {
    display: inline-block;
	padding: 0.875rem 2rem;
	font-family: var(--common-font);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1em;
	text-transform: uppercase;
	color: var(--main-white);
	background-color: var(--main-color);
	border: 2px solid var(--main-color);
	white-space: nowrap;
	transition: color 0.25s, background-color 0.25s, border-color 0.25s, padding 0.25s;
}
.primary:not(:disabled), .secondary:not(:disabled) {
	cursor: pointer;
}
.secondary {
	color: var(--main-color);
	background-color: transparent;
}
.bg-dark .primary {
	color: var(--main-color);
	background-color: var(--main-white);
	border-color: var(--main-white);

}
.bg-dark .secondary {
	color: var(--main-white);
	border-color: var(--main-white);
}
.primary .container-arrow, .secondary .container-arrow {
	top: 50%;
	transform: translateY(-50%);
	opacity: 0;
	transition: opacity 0.25s, left 0.25s;
}
.primary .container-arrow svg.stroke, .primary .container-arrow svg.fill, .secondary .container-arrow svg.stroke, .secondary .container-arrow svg.fill {
	width: 1.25rem;
	height: 1.25rem;
	transition: stroke 0.25s, fill 0.25s;
}
.primary:hover, .primary:focus, .secondary:hover, .secondary:focus {
	padding-left: 2.5rem;
	padding-right: 1.5rem;
	background-color: var(--second-color);
	border-color: var(--second-color);
	color: var(--main-white);
}
.primary:hover .container-arrow, .primary:focus .container-arrow, .secondary:hover .container-arrow, .secondary:focus .container-arrow {
	opacity: 1;
	left: 1rem;
}
.primary:hover .container-arrow svg.stroke, .primary:focus .container-arrow svg.stroke {
	stroke: var(--main-white);
}
.secondary:hover .container-arrow svg.stroke, .secondary:focus .container-arrow svg.stroke {
	stroke: var(--main-white);
}
.primary:hover .container-arrow svg.fill, .primary:focus .container-arrow svg.fill {
	fill: var(--main-white);
}
.secondary:hover .container-arrow svg.fill, .secondary:focus .container-arrow svg.fill {
	fill: var(--main-white);
}
.bg-dark .primary:hover {
	color: var(--main-white);
}
.bg-dark .primary:hover .container-arrow svg.stroke, .bg-dark .primary:focus .container-arrow svg.stroke {
	stroke: var(--main-white);
}
.bg-dark .secondary:hover .container-arrow svg.stroke, .bg-dark .secondary:focus .container-arrow svg.stroke {
	stroke: var(--main-white);
}
.bg-dark .primary:hover .container-arrow svg.fill, .bg-dark .primary:focus .container-arrow svg.fill {
	fill: var(--main-white);
}
.bg-dark .secondary:hover .container-arrow svg.fill, .bg-dark .secondary:focus .container-arrow svg.fill {
	fill: var(--main-white);
}

.iconary button, .iconary .container-icon {
	padding: 0.275rem;
	margin: 0px;
	border: 2px solid var(--main-color);
	transition: border-color 0.25s;
}
.iconary button svg, .iconary .container-icon svg {
	height: 1.5rem;
	width: 1.5rem;
}
.bg-dark .iconary button, .bg-dark .iconary .container-icon {
	border-color: var(--main-white);
}

.radio {
	padding: 0.375rem;
	border: 1px solid var(--main-color);
	flex-wrap: wrap;
	justify-content: flex-start;
	z-index: 1;
}
.bg-dark .radio {
	border-color: var(--main-white);
}
.radio label {
	position: relative;
	margin-top: -1px;
    margin-left: -1px;
}
.radio label input {
	margin: 0px !important;
	position: absolute;
	cursor: pointer;
	opacity: 0;
}
.radio label span {
	box-sizing: border-box;
	display: block;
	padding: 0.5rem 1.25rem;
	font-family: var(--common-font);
	font-size: 1rem;
	font-weight: 700;
	color: var(--main-color);
	background-color: transparent;
	white-space: nowrap;
	cursor: pointer;
	transition: background-color 0.2s, color 0.2s;
}
.bg-dark .radio label span {
	color: var(--main-white);
}
.radio label input:checked + span {
	color: var(--main-white);
	cursor: default;
}
.bg-dark .radio label input:checked + span {
	color: var(--main-black);
}
.radio label span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: calc(100% - 1rem);
	width: 2px;
	height: 0%;
	background-color: var(--main-color);
	transition: height 0.25s, top 0.25s, bottom 0.25s;
}
.bg-dark .radio label span::before {
	background-color: var(--main-white);
}
.radio label:hover input:not(:checked) + span::before {
	top: calc(10% + 0.5rem);
	height: calc(80% - 1rem);
}
.radio .radio-indicator {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-color: var(--main-color);
	pointer-events: none;
	z-index: -1;
}
.bg-dark .radio .radio-indicator {
	background-color: var(--main-white);
}

.select {
	padding: 1rem 1.25rem;
	background: none;
	border: 1px solid var(--second-color);
	transition: color 0.25s, background-color 0.25s, border-color 0.25s;
}
.bg-dark .select {
	border-color: var(--main-white);
	color: var(--main-white);
}
.select > * {
	font-family: var(--common-font);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1em;
	color: var(--main-black);
	white-space: nowrap;
}
.bg-dark .select > * {
	color: var(--main-white);
}
.select > select {
	background: none;
	border: none;
	cursor: pointer;
	justify-content: space-between;
	width: 100%;
}
.bg-dark .select > select {
	color: var(--main-white);
}
.select option {
	font-family: var(--common-font);
	background: var(--main-white);
}
.bg-dark .select option {
	background: var(--main-black);
}

svg.stroke {
	fill: none;
	stroke: var(--main-color);
	stroke-width: 2px;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-miterlimit: 10;
	transition: stroke 0.25s;
}
.bg-dark svg.stroke {
	fill: none;
	stroke: var(--main-white);
}
svg.fill {
	fill: var(--main-color);
	stroke: none;
	transition: fill 0.25s;
}
.bg-dark svg.fill {
	fill: var(--main-white);
	stroke: none;
}

.container-slider {
	width: 100%;
	align-self: center;
	align-items: flex-start;
}
.container-slide {
	box-sizing: border-box;
	padding-right: 3.75rem;
	width: 66.666%;
	flex-shrink: 0;
}

.form {
	gap: 1.75rem;
}
.form .container-input {
	width: 100%;
    gap: 0.5rem;
}
.form .flexbox-h {
	justify-content: flex-start;
	align-items: flex-start;
}
.form > .flexbox-h:not(.consent) {
	width: 100%;
	gap: 1.75rem;
}
.form label:not(.submit)  {
	padding-left: 1.25rem;
	color: var(--second-color);
	text-transform: uppercase;
	letter-spacing: 0.2rem;
	
}
.form input:not([type=submit]):not([type=checkbox]), .form textarea, .form .file label {
	box-sizing: border-box;
    padding: 1rem 1.25rem;
	width: 100%;
	text-align: left;
	font-family: var(--common-font);
	font-size: 1rem;
	font-weight: 400;
    color: var(--main-black);
	background: transparent;
	border: 1px solid var(--second-color);
	resize: none;
	white-space: nowrap;
	transition: border-color 0.25s;
}
.form .bg-dark input:not([type=submit]):not([type=checkbox]), .form .bg-dark textarea, .form .bg-dark .file label {
	border: 1px solid var(--main-white);
}
.form .flexbox-h > input:not([type=submit]):not([type=file]):not([type=checkbox]), .form .flexbox-h > textarea, .form .radio {
	width: calc(50% - 1.25rem * 0.5);
}
.form input:not([type=submit]):not([type=file]):not([type=checkbox]):focus, .form textarea:focus, .form .file:focus-within {
	border-color: var(--main-color);
}
.form input[type=checkbox] {
	margin: 0.666rem 1rem 0px 1rem;
	border-radius: 0px;
	-webkit-border-radius: 0px;
}
.form input[type=checkbox], .form input[type=checkbox] + label {
	cursor: pointer;
}
.form .primary {
    margin-top: 1.25rem;
}
.form input[type="submit"] {
    padding: 2px;
	margin: 0px;
	font-family: var(--common-font);
	font-size: 1rem;
	font-weight: 700;
	white-space: nowrap;
	text-transform: uppercase;
	color: var(--main-white);
	background: none;
	border: none;
	cursor: pointer;
}
.form input:not([type=submit]):not([type=file]):not([type=checkbox])::placeholder, .form textarea::placeholder, .form .file label {
	color: var(--main-white);
}
.form .radio {
    justify-content: space-between;
}
.form input[type=file]::file-selector-button {
	display: none;
}

input:-webkit-autofill{
    -webkit-text-fill-color: var(--main-black) !important;
}
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active {
    -webkit-box-shadow: 0px 0px 0px 9999rem var(--main-white) inset !important;
	box-shadow: 0px 0px 0px 9999rem var(--main-white) inset !important;
}

.form .honeypot {
    position: absolute;
    left: -9999px;
}
/*Media Queries*/
@media only screen and (max-width: 992px) {
	.content-right, .content {
		padding-right: 4rem;
	}
	.content-left, .content {
		padding-left: 4rem;
	}
	.flexbox-hr .content-right {
		padding-left: 4rem;
	}
	.flexbox-hr .content-left {
		padding-right: 4rem;
	}
}
@media only screen and (max-width: 688px) {
	.content-right, .content {
		padding-right: 2rem;
	}
	.content-left, .content {
		padding-left: 2rem;
	}
	.flexbox-hr .content-right {
		padding-left: 2rem;
	}
	.flexbox-hr .content-left {
		padding-right: 2rem;
	}

}

/* ----------------------------------------------------------------
	Blocks
-----------------------------------------------------------------*/
header {
	padding-top: var(--nav-height);
}
header .header-subpages {
	padding-bottom: 0px;
}

nav.main {
	position: fixed !important;
	z-index: 100;
}
nav.main .container-bar {
	position: relative;
	height: var(--nav-height);
}
nav.main .container-bar > *:last-child {
	justify-content: flex-end;
}
nav.main .container-logo a {
	display: inline-flex;
	height: 2.75rem;
	justify-content: flex-start;
	gap: 1rem;
}
nav.main .logo-menu {
	gap: 8vw;
}
nav.main .container-logo a .container-word {
	width: 2.75rem;
	height: 2.75rem;
}
nav.main .container-logo a .container-word svg {
	position: absolute;
	top: 0px;
	left: 0px;
	width: auto;
	height: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transition: transform 0.5s;
}
nav.main .container-logo a .container-word svg:last-child {
	transform: rotateY(180deg);
}
nav.main .container-logo a:hover .container-word svg:first-child , nav.main .container-logo a:focus .container-word svg:first-child  {
	transform: rotateY(180deg);
}
nav.main .container-logo a:hover .container-word svg:last-child , nav.main .container-logo a:focus .container-word svg:last-child  {
	transform: rotateY(360deg);
}
nav.main .container-logo a > svg {
	height: 2.75rem;
	align-self: flex-end;
}
nav.main .container-links {
	gap: 3.125rem;
}
nav.main .container-links a {
	white-space: nowrap;
	color: var(--main-black);
}
nav.main .container-links a:hover {
	color: var(--main-color);
}
nav.main .container-links a[aria-current] {
	border-bottom: 2px solid var(--main-color);
	padding-bottom: 0.5rem;
	padding-top: calc(0.5rem + 2px);
}
nav.main .container-tools {
	gap: 1.25rem;
}
nav.main .container-tools .icon-search {
	box-sizing: content-box;
	padding-right: 0px;
	width: 1.25rem;
	height: 1.25rem;
}
nav.main .container-tools .icon-search svg {
	stroke: var(--main-black);
	vertical-align: initial;
	fill: none;
	stroke-width: 2px;
}
nav.main .container-tools .icon-search:hover svg, nav.main .container-tools .icon-search:focus svg {
	stroke: var(--main-color);
}

nav.main .button-menu {
	display: none;
	flex: initial;
}
nav.main .button-menu .menu-icon {
	gap: 0.35rem;
}
nav.main .button-menu .menu-icon-bar {
	height: 2px;
	width: 1.75rem;
	border-radius: 2px;
	background-color: var(--main-black);
	transition: background-color 0.25s, border-color 0.25s, transform 0.25s;
}
nav.main .button-menu.active .menu-icon-bar:nth-child(1) {
	transform: translate(0, 0.5rem) rotate(-45deg);
}
nav.main .button-menu.active .menu-icon-bar:nth-child(2) {
	opacity: 0;
}
nav.main .button-menu.active .menu-icon-bar:nth-child(3) {
	transform: translate(0, -0.5rem) rotate(45deg);
}

nav.main .container-buttons a:last-child.secondary {
	color: var(--second-color);
	border-color: var(--second-color);
}
nav.main .container-buttons a:last-child.secondary:hover {
	color: var(--main-white);
	border-color: var(--main-black);
}
nav.main .container-buttons a:last-child.secondary svg {
	fill: var(--second-color);
}
nav.main .container-buttons a:last-child.secondary:hover svg {
	fill: var(--main-white);
}
nav.main .container-mega {
	top: 100%;
	align-items: stretch;
	pointer-events: none;
	z-index: -1;
	min-height: calc(5 * 1.5rem + 4 * 2.5rem + 3.75rem * 2 );
}
nav.main .mega {
	opacity: 0;
	height: auto;
	align-items: stretch;
	justify-content: center;
	flex-shrink: 0;
	pointer-events: none;
	z-index: -2;
}
nav.main .mega:nth-child(2) {
	transform: translateX(-100%);
}
nav.main .mega:nth-child(3) {
	transform: translateX(-200%);
}
nav.main .mega:nth-child(4) {
	transform: translateX(-300%);
}
nav.main .mega:nth-child(5) {
	transform: translateX(-400%);
}
nav.main .mega:nth-child(6) {
	transform: translateX(-500%);
}
nav.main .mega:nth-child(7) {
	transform: translateX(-600%);
}
nav.main .mega .container-sublinks {
	box-sizing: border-box;
	padding-top: 3.75rem;
	padding-bottom: 3.75rem;
	padding-left: calc(2.75rem * 2.68 + 8vw);
	width: 100%;
	align-items: flex-start;
	justify-content: flex-start;
}
nav.main .mega .container-submenu {
	width: 22.5%;
	gap: 2.5rem;
}
nav.main .mega .container-submenu a[aria-current], nav.main .mega .container-sidemenu a[aria-current]  {
	border-bottom: 2px solid var(--main-color);
	padding-bottom: 0.5rem;
}
nav.main .mega .container-submenu.no-quick {
	width: 100%;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 1.25rem 2.5rem;
}
nav.main .mega .container-submenu.no-quick a {
	width: calc(50% - 1.25rem);
}
nav.main .mega .container-submenu p {
	color: var(--main-shade-400);
}
nav.main .mega .container-line {
	width: 6.3rem;
}
nav.main .mega .container-line .line {
	width: 1px;
	background-color: var(--main-black);
}
nav.main .mega .container-sidemenu {
	width: 17.5%;
	gap: 1.25rem;
}
nav.main .mega .container-sidemenu:not(.static) {
	opacity: 0;
	pointer-events: none;
}
nav.main .mega .container-sidemenu .h3 {
	font-weight: 400;
	color: var(--main-shade-400);
}
nav.main .mega .container-quicklinks {
	gap: 2.5rem;
}
nav.main .mega .container-sidemenu:not(.static) .container-quicklinks {
	display: none;
	opacity: 0;
}
nav.main .mega .container-quicklinks a {
	white-space: nowrap;
}
nav.main .mega .container-contact {
	background-color: var(--main-color);
	width: 20vw;
	height: 100%;
	position: absolute;
	justify-content: space-between;
}
nav.main .mega .container-contact picture {
	height: 50%;
}
nav.main .mega .container-contact .container-text {
	box-sizing: border-box;
	padding: 1.25rem 2rem;
	gap: 0.5rem;
	height: 50%;
}
nav.main .mega .container-contact span {
	color: var(--main-white);
}
nav.main .mega .container-contact .icon-text {
	gap: 0.5rem;
}
nav.main .mega .container-contact svg {
	width: 2rem;
	height: 2rem;
}
nav.main .mega .container-contact svg.fill {
	fill: var(--main-white);
}
nav.main .mega .container-contact svg.stroke {
	stroke: var(--main-white);
}
nav.main .container-mobile-menu {
	opacity: 0;
	box-sizing: border-box;
	padding-top: 2.5rem;
	padding-bottom: 3.75rem;
	width: 100%;
	height: calc(100vh - 5rem);
	height: calc(100dvh - 5rem);
	justify-content: flex-start;
	overflow-y: auto;
	z-index: -1;
}
nav.main .container-mobile-menu .container-mobile-links {
	gap: 1.75rem;
	width: 100%;
}
nav.main .container-mobile-menu .container-mobile-sublinks {
	gap: 1rem;
}
nav.main .container-mobile-menu .subsublink {
	gap: 1rem;
	padding-left: 1rem;
}
nav.main .container-mobile-links .link-button {
	width: 100%;
	display: flex;
	justify-content: space-between;
	padding-top: 1rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid var(--main-shade-400);
}
nav.main .container-mobile-links .link-button a, nav.main .container-mobile-links .h3 {
	color: var(--main-black);
}
nav.main .container-mobile-link {
	gap: 1.25rem;
}
nav.main .container-mobile-menu a[aria-current], nav.main .container-mobile-menu button[aria-current] {
	color: var(--main-color);
}
nav.main .container-mobile-links .iconary {
	width: 2rem;
	height: 2rem;
}
nav.main .overlay-menu {
	display: none;
	opacity: 0;
    z-index: -3;
	width: 100%;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.2);
    pointer-events: none;
}
@media only screen and (max-width: 992px) {
	header {
		padding-top: 5rem;
	}
	nav.main .container-bar {
		position: relative;
		height: 5rem;
	}
	nav.main .container-bar > *:not(.button-menu) {
		flex: 1;
	}
	nav.main .container-logo a > svg {
		height: 2rem;
	}
	nav.main .container-links, nav.main .container-tools .container-buttons {
		display: none;
	}
	nav.main .container-tools {
		margin-right: 1.75rem;
		justify-content: flex-end;
	}
	nav.main .button-menu {
		display: flex;
	}
}
@media only screen and (max-width: 688px) {
	nav.main .container-logo {
		flex: initial;
	}
}

footer .container-content {
	padding-bottom: 5rem;
	width: 100%;
	align-items: flex-start;
	border-bottom: 1px solid var(--second-color);
}
footer .container-logo svg {
	width: auto;
	height: 3.75rem;
}
footer .container-footer, footer .container-brand {
	gap: 1.25rem;
}
footer .container-lists {
	align-items: flex-start;
	gap: 2.5rem 12.5rem;
	white-space: nowrap;
}
footer .container-links .h2 {
	font-size: 1.75rem;
	margin-bottom: 1.25rem;
}
footer .container-links nav {
	gap: 1.25rem;
}
footer .container-socials {
	bottom: 1.25rem;
	gap: 1.25rem;
}
footer .container-socials svg {
	width: 2rem;
	height: 2rem;
	transition: fill 0.25s, stroke 0.25s;
}
footer .container-socials svg.fill {
	fill: var(--second-color);
}
footer .container-socials a:hover svg.fill, footer .container-socials a:focus svg.fill {
	fill: var(--main-color);
}
footer .container-socials svg.stroke {
	stroke: var(--second-color);
}
footer .container-socials a:hover svg.stroke, footer .container-socials a:focus svg.stroke {
	stroke: var(--main-white);
}
footer .container-copyright {
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
}
footer .container-copyright > * {
	flex: 1;
}
footer .container-copyright .container-links, footer .container-copyright .container-links a, footer .container-cookie button {
	color: var(--second-color);
	transition: color 0.25s;
}
footer .container-copyright .container-links a:hover, footer .container-copyright .container-links a:focus, footer .container-cookie button:hover, footer .container-cookie button:focus {
	color: var(--main-white);
}
footer #cookie-settings {
	padding: 0px;
}
footer .copyright {
	text-align: left;
}
footer .container-maveo {
	justify-content: flex-end;
}
footer .container-maveo a {
	background-image: -webkit-linear-gradient(180deg, var(--second-color) 50%, #b87345 50%, #ceaa6d 100%);
	background-clip: text;
	-webkit-background-clip: text;
  	-webkit-text-fill-color: transparent;
	background-size: 200% 100%;
	background-position: top left 100%;
	transition: background-position 0.35s;
}
footer .container-maveo a:hover, footer .container-maveo a:focus {
	background-position: top left !important;
}
/*Media Queries*/
@media only screen and (max-width: 992px) {
	footer .container-lists {
		gap: 2.5rem 5rem;
	}
}
@media only screen and (max-width: 688px) {
	footer .container-footer {
		margin-top: 2.5rem;
	}
	footer .container-content {
		flex-direction: column;
		gap: 2.5rem;
	}
}

.section-graphic.bg-white svg > *:nth-child(2) {
	fill: var(--main-white);
}
.section-graphic.bg-light.orange svg > *:nth-child(2) {
	fill: var(--main-color-light);
}
.section-graphic.bg-light.blue svg > *:nth-child(2) {
	fill: var(--second-color-light);
}
.section-graphic.bg-dark svg > *:nth-child(2) {
	fill: var(--main-color);
}
.section-graphic svg > *:first-child {
	fill: var(--main-white);
}

#cookie {
	display: none;
	opacity: 0;
	position: fixed;
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100vh;
	height: 100dvh;
	background-color: rgba(0, 0, 0, 0.75);
	z-index: 999;
}
#cookie .cookie-wrapper {
	width: 38.2%;
	max-height: 100%;
}
#cookie .cookie-container {
	box-sizing: border-box;
	padding: 1.75rem 2.5rem 0.75rem 2.5rem;
	max-height: 100%;
	align-items: stretch;
	justify-content: flex-start;
	gap: 0.75rem;
	overflow-y: auto;
}
#cookie .cookie-container .h4, #cookie .cookie-container p {
	text-align: left;
}
#cookie .container-toggles {
	padding: 0.25rem 0px;
	justify-content: flex-start;
	gap: 0.75rem;
}
#cookie .container-toggles .container-toggle {
	align-items: center;
}
#cookie .container-toggles .container-toggle:not(:first-child) label {
	padding: 0.25rem 0px;
	cursor: pointer;
}
#cookie .container-buttons {
	margin-top: 0px;
	gap: 0.75rem;
}
#cookie .container-buttons .primary {
	margin-top: 0px;
}
#cookie .cookie-container > button {
	flex-shrink: 0;
}
#cookie .wrapper-descriptions {
	gap: 0.75rem;
}
#cookie .wrapper-descriptions > label {
	cursor: pointer;
}
#cookie .wrapper-descriptions > input:checked + label .toggle-show, #cookie .wrapper-descriptions > input:not(:checked) + label .toggle-hide, #cookie .wrapper-descriptions > input:not(:checked) ~ .container-descriptions {
	display: none;
}
#cookie .container-descriptions {
	gap: 0.75rem;
}
#cookie .container-description {
	box-sizing: border-box;
	padding: 1.25rem;
	gap: 0.75rem;
}
#cookie .container-description table {
	border-collapse: collapse;
	background-color: var(--main-white);
}
#cookie .container-description table * {
	text-align: left;
}
#cookie .container-description tr:nth-child(even):not(.divider) {
	background-color: var(--main-white);
}
#cookie .container-description tr.divider {
	background-color: var(--brown-color);
}
#cookie .container-description tr th, #cookie .container-description tr td {
	padding: 0.75rem;
	font-size: 0.8rem;
	border: 1px solid var(--brown-color);
}
#cookie .container-description tr.divider th, #cookie .container-description tr.divider td {
	padding: 0.375rem;
}
#cookie .container-description tr th {
	background-color: var(--main-shade-50);
}
#cookie .line {
	height: 1px;
	background-color: var(--main-shade-600);
	flex-shrink: 0;
}
#cookie .wrapper-descriptions button, #cookie .container-links, #cookie .container-links * {
	font-weight: 400;
}
@media only screen and (max-width: 992px) {
	#cookie .cookie-wrapper {
		width: 75%;
	}
}
@media only screen and (max-width: 688px) {
	#cookie .cookie-wrapper {
		width: 100%;
	}
	#cookie .cookie-container {
		padding: 1.25rem 1.25rem 0.75rem 1.25rem;
	}
}

.overlay {
	position: fixed;
	z-index: 111;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
	background-color: rgba(238, 238, 238, 0.75);
	-webkit-backdrop-filter: blur(0.75rem);
    backdrop-filter: blur(0.75rem);
}
.overlay:not(.show) {
	display: none;
	opacity: 0;
}
.overlay > svg:first-child {
	position: absolute;
	top: 1.25rem;
	right: 1.25rem;
	width: 1.75rem;
	height: 1.75rem;
	fill: var(--main-shade-900);
	cursor: pointer;
}
.overlay > svg:first-child .fill {
	fill: var(--main-shade-900);
	transition: fill 0.2s;
}
.overlay > svg:first-child:hover .fill, .overlay > svg:first-child:focus .fill {
	fill: var(--main-color);
}
.overlay > svg:first-child .stroke {
	stroke: var(--main-shade-900);
	transition: stroke 0.2s;
}
.overlay > svg:first-child:hover .stroke, .overlay > svg:first-child:focus .stroke {
	stroke: var(--main-color);
}

#overlay-search .container-content {
	gap: 1.75rem;
}
#overlay-search.overlay .container-content {
	box-sizing: border-box;
	padding: 3.75rem 6.25rem 5rem 6.25rem;
	min-width: 61.8%;
	max-width: 100%;
	max-height: 82.5%;
	justify-content: flex-start;
	overflow-y: auto;
}
#overlay-search .h2, #overlay-search .h3, #overlay-language .h3 {
	margin-bottom: 1.25rem;
}
#overlay-search .h3 {
	align-self: center;
}
#overlay-search .form + span {
	margin-top: 0.5rem;
}
#overlay-search .container-search label.submit {
	flex-shrink: 0;
}
#overlay-search .container-results {
	width: 100%;
	gap: 1.25rem;
}
#overlay-search .container-results a.link-self p {
	text-transform: initial;
}
#overlay-search .all-results {
	color: var(--main-color);
}
@media only screen and (max-width: 992px) {
	#overlay-search.overlay .container-content {
		padding: 3.75rem 4rem 5rem 4rem;
		width: 100%;
	}
}
@media only screen and (max-width: 688px) {
	#overlay-search.overlay .container-content {
		padding: 2.5rem 2rem;
		width: 100%;
	}
}

/* ----------------------------------------------------------------
	Content
-----------------------------------------------------------------*/

/*Header Default*/
.header-default {
	padding: 0px !important;
	min-height: calc(70vh - var(--nav-height));
	align-items: stretch;
}
.header-default .slide {
	box-sizing: border-box;
	padding-top: 3.75rem;
	padding-bottom: 3.75rem;
	width: 100%;
	height: auto;
	min-height: calc(70vh - var(--nav-height));
	flex-shrink: 0;
}
.header-default.slider .slide {
	cursor: grab;
}
.header-default.slider .slide:active {
	cursor: grabbing;
}
.header-default .header-text {
	padding: 4.5rem;
	width: 37.5rem;
	background: none;
	z-index: 1;
	margin-left: calc(var(--page-padding) / 2);
}
.header-default .header-text > * {
	cursor: initial;
}
.header-default .slide:not(:first-child) .container-text {
	opacity: 0;
}
.header-default .bg-dark:not(.header-text) {
	opacity: 0.9;
	z-index: -1;
}
.header-default picture {
	left: initial;
	right: 0px;
	width: calc((100% - var(--page-padding) * 0.75) * 0.85);
	border-bottom-right-radius: 0px !important;
	-webkit-border-bottom-right-radius: 0px !important;
	-moz-border-bottom-right-radius: 0px !important;
	border-top-right-radius: 0px !important;
	-webkit-top-right-radius: 0px !important;
	-moz-top-right-radius: 0px !important;
}
.header-default .slide img {
	pointer-events: none;
	user-select: none;
}
.header-default .container-buttons.iconary {
	bottom: 1px;
	right: calc(((100% - var(--page-padding) * 0.75) * 0.85) + 2rem);
	gap: 0.75rem;
}
.header-default .job-info svg {
	width: 3rem;
	height: 3rem;
}
.header-default .job-infos {
	gap: 3.125rem;
	margin-bottom: 2.5rem;
}
.header-default .job-info {
	gap: 0.5rem;
}
@media only screen and (max-width: 992px) {
	.header-default .slide {
		padding-top: 0px;
		padding-bottom: 0px;
		flex-direction: column-reverse;
	}
	.header-default.slider .slide {
		padding-bottom: 3.75rem;
		justify-content: flex-end;
	}
	.header-default picture {
		position: relative;
		width: 100%;
		height: auto;
		aspect-ratio: 16/9;
		border-radius: 0px !important;
	}
	.header-default .header-text {
		box-sizing: border-box;
		padding: 3rem;
		margin-top: -10rem;
		margin-left: 0px;
		width: calc(100% - 8rem);
		align-items:flex-start;
	}
	.header-default .container-buttons.iconary {
		right: 50%;
		transform: translateX(50%);
		margin-top: 1rem;
		gap: 0.75rem;
	}
	.header-default .job-infos {
		gap: 1.5rem;
	}
}
@media only screen and (max-width: 688px) {
	.header-default .header-text {
		padding: 2.5rem;
		margin-top: -5rem;		
		width: calc(100% - 4rem);
	}
	.header-default .job-infos {
		flex-direction: column;
		align-items: flex-start;
		gap: 1rem;
	}
}

/* Header Subpages */
.header-subpages {
	gap: 5rem;
}
.header-subpages .header-text {
	align-items: flex-start;
	gap: 3.125rem;
}
.header-subpages h1, .header-subpages .header-text-buttons {
	width: calc(50% - 3.125rem / 2);
}
.header-subpages picture {
	height: 45rem;
}

@media only screen and (max-width: 992px) {
	.header-subpages {
		flex-direction: column-reverse;
		gap: 2rem;
	}
	.header-subpages .header-text {
		flex-direction: column;
		gap: 2rem;
	}
	.header-subpages h1, .header-subpages .header-text-buttons {
		width: 100%;
	}
	.header-subpages picture {
		height: 25%;
	}
}

/* text-default*/
.section-text-default .container-text {
	max-width: 61.8%;
}

@media only screen and (max-width: 992px) {
	.section-text-default .container-text {
		max-width: 75%;
	}
}
@media only screen and (max-width: 688px) {
	.section-text-default .container-text {
		max-width: 100%;
	}
}

/*text-aside*/
.section-text-aside {
	align-items: flex-start;
	gap: 3.125rem;
}
.section-text-aside .container-text {
	gap: 1rem;
}
.section-text-aside .container-headline.half {
	width: calc(50% - 3.125rem / 2);
}
.section-text-aside .container-text.half {
	width: calc(50% - 3.125rem / 2);
}
.section-text-aside .container-headline.third {
	width: calc(33.333% - 3.125rem / 2);
}
.section-text-aside .container-text.third {
	width: calc(66.666% - 3.125rem / 2);
}
.section-text-aside .container-blocks {
	position: relative;
	margin-top: 0.875rem;
	align-items: flex-start;
	gap: 1.875rem;
	flex-wrap: wrap;
}
.section-text-aside .container-block {
	min-width: calc(50% - 1.875rem / 2);
	flex: 1;
}

@media only screen and (max-width: 992px) {
	.section-text-aside {
		flex-direction: column;
		gap: 2rem;
	}
	.section-text-aside .container-text {
		width: 80%;
	}
	.section-text-aside .container-headline.half, .section-text-aside .container-text.half, .section-text-aside .container-headline.third, .section-text-aside .container-text.third {
		width: 80%;
	}
}
@media only screen and (max-width: 688px) {
	.section-text-aside .container-blocks {
		flex-direction: column;
	}
	.section-text-aside .container-text {
		width: 100%;
	}
	.section-text-aside .container-headline.half, .section-text-aside .container-text.half, .section-text-aside .container-headline.third, .section-text-aside .container-text.third {
		width: 100%;
	}
}

/*text-icon*/
.section-text-icon .container-text .kicker, .section-text-icon .container-text .h2, .section-text-icon .container-text .p {
	max-width: 61.8%;
}
.section-text-icon .container-block svg {
	width: 3rem;
	height: 3rem;
	padding-bottom: 1rem;
	grid-area: icon;
	align-self: center;
}
.section-text-icon svg.fill {
	fill: var(--main-color);
}
.bg-dark.section-text-icon svg.fill {
	fill: var(--main-white);
}
.section-text-icon svg.stroke {
	stroke: var(--main-color);
}
.bg-dark.section-text-icon svg.stroke {
	stroke: var(--main-white);
}
.section-text-icon .container-blocks {
	margin-top: 3.125rem;
	gap: 1.875rem;
	align-items: start;
}
.section-text-icon .container-block {
	display: grid;	
	grid-auto-flow: column;
	align-items: start;
	min-width: calc(25% - 1.875rem / 2 - 1rem);
	flex: 1;
}
.section-text-icon .container-block h3 {
	grid-area: headline;
	align-self: center;
}
.section-text-icon .container-block p {
	margin-top: 1rem;
	grid-area: text;
}
.section-text-icon .container-block ul {
	margin-top: 1rem;
	grid-area: ul;
}
.section-text-icon .container-block .grid-h {
	display: grid;
	column-gap: 1rem;
	grid-template-columns: 3rem 1fr;
	grid-template-areas: 
	"icon headline"
	" . text"
	" . ul";
}
.section-text-icon .container-block .grid-h svg {
	padding-bottom: 0px;
}
.section-text-icon .container-block .grid-v {
	display: grid;
	grid-template-areas: 
	"icon"
	"headline"
	"text"
	"ul";
}
.section-text-icon .container-block .grid-v .arrange-center {
	justify-self: center;
}
.section-text-icon .container-block .grid-v.arrange-center svg {
	justify-self: center;
}
.section-text-icon .container-block .grid-v .arrange-right {
	justify-self: end;
}
.section-text-icon .container-block .arrange-center ul {
	justify-self: center;
}
.section-text-icon .container-block .arrange-right ul {
	justify-self: right;
}

@media only screen and (max-width: 992px) {
	.section-text-icon .container-blocks {
		width: 100%;
		gap: 1.875rem;
		flex-wrap: wrap;
	}
	.section-text-icon .container-block {
		width: calc(50% - 1.875rem / 2 - 1rem);
		flex: initial;
	}
	.section-text-icon .container-text .kicker, .section-text-icon .container-text .h2, .section-text-icon .container-text .p {
		max-width: 75%;
	}
}
@media only screen and (max-width: 688px) {
	.section-text-icon .container-blocks {
		flex-direction: column;
	}
	.section-text-icon .container-text .kicker, .section-text-icon .container-text .h2, .section-text-icon .container-text .p {
		max-width: 100%;
	}
	.section-text-icon .container-block {
		min-width: 100%;
	}
}

/*text-image-default*/
.section-text-image-default {
	gap: 3.125rem;
}
.section-text-image-default .container-text, .section-text-image-default picture {
	width: calc(50% - 3.125rem / 2);
}
.section-text-image-default .container-text-icon {
	margin-top: 2rem;
	gap: 0.5rem;
}
.section-text-image-default .container-text-icon div {
	gap: 1rem;
}
.section-text-image-default .container-text-icon svg {
	width: 2.5rem;
	height: 2.5rem;
}

@media only screen and (max-width: 992px) {
	.section-text-image-default {
		flex-direction:column-reverse;
		align-items: flex-start;
	}
	.section-text-image-default .container-text, .section-text-image-default picture {
		width: 80%;
	}
}
@media only screen and (max-width: 688px) {
	.section-text-image-default .container-text, .section-text-image-default picture {
		width: 100%;
	}
}

/*teaser*/
.section-teaser .container-text {
	width: 61.8%;
	margin-bottom: 2.5rem;
}
.section-teaser .container-text p {
	padding-top: 1rem;
}
.section-teaser .container-teaser {
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 3.125rem;
}
.section-teaser h3 {
	margin-top: 2.5rem;
}
.section-teaser img {
	height: 22rem;
}
.section-teaser .teaser-two {
	width: calc(50% - 3.125rem / 2);
}
.section-teaser .container-teaser .teaser-two:not(:nth-child(-n + 2)) {
	margin-top: 3rem;
}
.section-teaser .teaser-three {
	width: calc(33.333% - 3.125rem * 2 / 3);
}
.section-teaser .container-teaser .teaser-three:not(:nth-child(-n + 3)) {
	margin-top: 3rem;
}

@media only screen and (max-width: 992px) {
	.section-teaser .container-text {
		max-width: 75%;
	}
	.section-teaser .teaser-three {
		width: calc(50% - 3.125rem / 2);
	}
	.section-teaser img {
		height: 15rem;
	}
}
@media only screen and (max-width: 688px) {
	.section-teaser .container-teaser {
		flex-direction: column;
	}
	.section-teaser .teaser-two, .section-teaser .teaser-three {
		width: 100%;
	}
}

/*testimonial*/
.section-testimonial .container-text {
	max-width: 61.8%;
	margin-bottom: 5rem;
}
.section-testimonial .container-testimonial {
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 3.125rem;
	width: 100%
}
.section-testimonial .testimonial-three {
	width: calc(33.333% - 3.125rem * 2 / 3);
}
.section-testimonial .testimonial-four {
	width: calc(25% - 3.125rem * 3 / 4);
}
.section-testimonial .testimonial-icons {
	margin-top: 1rem;
	gap: 1rem;
}
.section-testimonial .testimonial-icons svg {
	width: 2rem;
	height: 2rem;
}
.section-testimonial img {
	height: 5rem;
	width: 50%;
	justify-content: flex-start;
	object-position: left bottom;
	margin-bottom: 2rem;
}
.section-testimonial .testimonial-three picture, .section-testimonial .testimonial-four picture {
	width: 100%;
	height: 100%;
	justify-content: flex-start;
}
.section-testimonial .testimonial-four img {
	width: 65%;
	margin-bottom: 1.5rem;
}
.section-testimonial .big img {
	height: 18rem;
	width: 100%;
	object-position: inherit;
	border-radius: var(--border-round);
}

@media only screen and (max-width: 992px) {
	.section-testimonial .container-text {
		max-width: 75%;
	}
	.section-testimonial .testimonial-three, .section-testimonial .testimonial-four {
		width: calc(50% - 3.125rem / 2);
	}
}
@media only screen and (max-width: 688px) {
	.section-testimonial .container-text {
		max-width: 100%;
	}
	.section-testimonial .testimonial-three, .section-testimonial .testimonial-four {
		width: 100%;
	}
}

/*text-image-accordion*/
.section-text-image-accordion .container-accordions .button-headline {
	justify-content: space-between;
}
.section-text-image-accordion .container-accordions .container-buttons {
	overflow: hidden;
}
.section-text-image-accordion .container-accordions .container-accordion-content {
	align-items: start;
	flex-wrap: wrap;
	gap: 3.125rem;
	margin-top: 3.125rem;
	margin-bottom: 3.125rem;
}
.section-text-image-accordion .container-accordion:not(:first-child) {
	padding-top: 3.125rem;
}

.section-text-image-accordion .container-accordion:not(:last-child) {
	border-bottom: 1px solid var(--main-shade-400);
	padding-bottom: 3.125rem;
}
.section-text-image-accordion.bg-dark .container-accordion:not(:last-child), .section-text-image-accordion.bg-light .container-accordion:not(:last-child) {
	border-bottom: 1px solid var(--main-white);
}
.section-text-image-accordion button {
	gap: 1.75rem;
}
.section-text-image-accordion svg {
	width: 2rem;
	height: 2rem;
}
.section-text-image-accordion button .container-icon:first-child svg {
	opacity: 0;
}
.section-text-image-accordion .container-accordion.active button .container-icon:first-child svg {
	opacity: 100;
	rotate: 180deg;
	transition: opacity 0.25s, rotate 0.25s ; 
}
.section-text-image-accordion button .container-icon:last-child svg {
	opacity: 1;
}
.section-text-image-accordion .container-accordion.active button .container-icon:last-child svg {
	opacity: 0;
	transition: opacity 0.25s ; 
	overflow: hidden;
}
.section-text-image-accordion .container-accordion-text {
	width: calc(50% - 3.125rem / 2);
	height: auto;
}
.section-text-image-accordion picture {
	width: calc(50% - 3.125rem / 2);
	height: 27.5rem;
}
.section-text-image-accordion .accordion-ansprechpartner h3 {
	margin-bottom: 1rem;
}
.section-text-image-accordion .container-accordion-text p {
	margin-bottom: 1.75rem;
}
.section-text-image-accordion .accordion-ansprechpartner .ansprechpartner {
	gap: 3.125rem;
}
.section-text-image-accordion .ansprechpartner-icon {
	gap: 0.5rem;
	margin-bottom: 0.5rem;
}
.section-text-image-accordion .container-platz {
	margin-top: 1.75rem;
	gap: 0.5rem;
}

@media only screen and (max-width: 992px) {
	.section-text-image-accordion .container-accordion-text {
		width: 100%;
	}
	.section-text-image-accordion picture {
		width: 100%;
		height: 25rem;
	}
}
@media only screen and (max-width: 688px) {
	.container-accordions {
		width: 100%;
	}
	.section-text-image-accordion picture {
		height: 15rem;
	}
	.section-text-image-accordion .accordion-ansprechpartner .ansprechpartner {
		flex-direction: column;
		gap: 1.25rem;
	}
	.section-text-image-accordion .container-accordions .button-headline h2 {
		padding-right: 1rem;
	}
}

/*slider*/
.section-slider {
	gap: 3.125rem;
}
.section-slider .slider-text {
	width: calc(30% - 3.125rem / 2);
}
.section-slider .wrapper-slider {
	width: calc(70% - 3.125rem / 2);
}
.section-slider .container-slide {
	height: 25rem;
}
.section-slider picture {
	background-color: var(--main-white);
	border-radius: var(--border-round);
}

@media only screen and (max-width: 992px) {
	.section-slider .slider-text {
		width: 40%;
	}
	.section-slider .wrapper-slider {
		width: 60%;
	}
	.section-slider .container-slide {
		height: 12rem;
		padding-right: 1.875rem;
	}
}
@media only screen and (max-width: 688px) {
	.section-slider {
		flex-direction: column;
		align-items: flex-start;
	}
	.section-slider .slider-text {
		width: 100%;
	}
	.section-slider .wrapper-slider {
		width: 100%;
	}
	.section-slider .container-slide {
		height: 10rem;
		padding-right: 1.875rem;
	}
}

/*text-image-toggle*/
.section-text-image-toggle {
	gap: 3.125rem;
	align-items: flex-start;
}
.section-text-image-toggle .toggle-height {
	height: auto;
}
.section-text-image-toggle p {
	margin-top: 1rem;
}
.section-text-image-toggle > * {
	width: calc(50% - 3.125rem / 2);
}
.section-text-image-toggle .container-images {
	height: 25rem;
}
.section-text-image-toggle .container-toggle {
	padding-bottom: 2.25rem;
	width: 100%;
}
.section-text-image-toggle .container-toggle:not(:first-child) {
	padding-top: 2.25rem;
}
.section-text-image-toggle .container-toggle::before {
	content: "";
	position: absolute;
	top: 50%;
	right: calc(100% + 1.25rem);
	transform: translateY(-50%);
	width: 2px;
	height: 0%;
	background-color: var(--main-color);
	transition: height 0.25s;
}
.section-text-image-toggle .container-toggle.active::before {
	height: 100%;
}
.section-text-image-toggle button {
	align-items: center;
	justify-content: space-between;
	gap: 3.125rem;
}
.section-text-image-toggle .container-toggle:not(:last-child) {
	border-bottom: 1px solid var(--main-shade-400);
}
.section-text-image-toggle.bg-dark .container-toggle:not(:last-child) {
	border-bottom: 1px solid var(--main-shade-400);
}
.section-text-image-toggle button .container-icon:first-child svg {
	opacity: 0;
}
.section-text-image-toggle .container-toggle.active button .container-icon:first-child svg {
	opacity: 100;
	rotate: 180deg;
	transition: opacity 0.25s, rotate 0.25s ; 
}
.section-text-image-toggle button .container-icon:last-child svg {
	opacity: 1;
}
.section-text-image-toggle .container-toggle.active button .container-icon:last-child svg {
	opacity: 0;
	transition: opacity 0.25s ; 
	overflow: hidden;
}

@media only screen and (max-width: 992px) {
	.section-text-image-toggle {
	flex-direction: column-reverse;
	}
	.section-text-image-toggle > * {
		width: 100%;
	}
}
@media only screen and (max-width: 688px) {
	.section-text-image-toggle .container-images {
		height: 17rem;
	}
	.section-text-image-toggle button {
		gap: 1.5rem;
	}
}

/*jobs*/
.jobs-head {
	align-items: flex-start;
}
.section-jobs, .section-jobs .jobs-head {
	gap: 5rem;
}
.section-jobs h2, .section-jobs p, .section-jobs ul {
	max-width: 61.8%;
}
.section-jobs .h3 {
	margin-top: 3.125rem;
}
.section-jobs h1 {
	width: calc(61.8% - 3.125rem / 2);
}
.section-jobs .jobs-head-container {
	width: calc(38.2% - 3.125rem / 2);
}
.section-jobs .jobs-head svg {
	width: 3rem;
	height: 3rem;
}
.section-jobs .jobs-head svg.fill {
	fill: var(--main-color);
}
.section-jobs .jobs-head svg.stroke {
	stroke: var(--main-color);
}
.section-jobs .jobs-head .job-infos {
	gap: 1.25rem;
}
.section-jobs .jobs-head .job-info {
	gap: 0.5rem;
}
.section-jobs picture {
	border-radius: var(--border-round);
}
.section-jobs .jobs-content p:last-child {
	margin-top: 1.75rem;
}

@media only screen and (max-width: 992px) {
	.section-jobs {
		gap: 3rem;
	}
	.section-jobs h2, .section-jobs p, .section-jobs ul {
		max-width: 75%;
	}
	.section-jobs .jobs-head {
		gap: 1.5rem;
		width: 100%;
	}
	.section-jobs .jobs-head-container {
		width: 100%;
	}
	.jobs-head {
		flex-direction: column;
	}
	.section-jobs h1 {
		width: 100%;
	}
	.section-jobs .jobs-head .job-infos {
		gap: 2rem;
	}
}
@media only screen and (max-width: 688px) {
	.section-jobs h2, .section-jobs p, .section-jobs ul {
		max-width: 100%;
	}
	.section-jobs .jobs-head .job-infos {
		flex-direction: column;
		align-items: start;
		gap: 1rem;
	}
}


/*contact-default*/
.section-contact-default {
	gap: 3.125rem;
	align-items: start;
}
.section-contact-default .container-text, .section-contact-default form {
	width: calc(50% - 3.125rem / 2);
}
.section-contact-default .icon-text {
	gap: 0.5rem;
	margin-bottom: 0.5rem;
}
.section-contact-default .icon-list {
	margin-top: 1.75rem;
}
.section-contact-default svg {
	width: 2rem;
	height: 2rem;
}
.section-contact-default .consent {
	align-items: center;
}
.section-contact-default .consent input[type=checkbox] {
	margin-top: 0px;
}
.section-contact-default .consent label, .section-contact-default .consent a {
	text-transform: none;
	font-weight: 400;
	letter-spacing: 0;
}
.section-contact-default .consent label, .section-contact-default .consent a:not(:hover):not(:focus) {
	color: var(--main-black);
}
.section-contact-default .consent label {
	padding-left: 0px;
}
.section-contact-default .container-select {
	gap: 0.5rem;
	width: 100%;
}
.section-contact-default .container-select label.select {
	width: calc(100% - 2 * 1.25rem);
	padding-top: 0.9rem;
	padding-bottom: 0.9rem;
}

@media only screen and (max-width: 992px) {
	.section-contact-default {
		flex-direction: column;
	}
	.section-contact-default .container-text, .section-contact-default form {
		width: 100%;
	}
}
@media only screen and (max-width: 688px) {
	.section-contact-default .form .flexbox-h:not(:nth-last-child(2)) {
		flex-direction: column;
	}
}

/*contact-person*/
.section-contact-person {
	gap: 3.125rem;
	align-items: start;
}
.section-contact-person .container-text, .section-contact-person picture {
	width: calc(50% - 3.125rem / 2);
}
.section-contact-person picture {
	max-height: 27rem;
}
.section-contact-person .icon-text {
	gap: 0.5rem;
	margin-bottom: 0.5rem;
}
.section-contact-person .icon-list, .section-contact-person form {
	margin-top: 1.75rem;
}
.section-contact-person svg {
	width: 2rem;
	height: 2rem;
}
.section-contact-person .consent a {
	color: var(--main-black);
	text-transform: none;
	font-weight: 400;
	letter-spacing: 0;
}
.section-contact-person .consent label {
	padding-left: 0px;
}
.section-contact-person .container-select {
	width: 100%;
	gap: 0.5rem;
}
.section-contact-person .consent input[type=checkbox] {
	margin-top: 0px;
}
.section-contact-person .consent {
	align-items: center;
}
.section-contact-person .container-select label.select {
	width: calc(100% - 2 * 1.25rem);
	padding-top: 0.9rem;
	padding-bottom: 0.9rem;
}

@media only screen and (max-width: 992px) {
	.section-contact-person {
		flex-direction: column-reverse;
	}
	.section-contact-person .container-text, .section-contact-default form {
		width: 100%;
	}
	.section-contact-person picture {
		width: 75%;
	}
}
@media only screen and (max-width: 688px) {
	.section-contact-person .form .flexbox-h:not(:nth-last-child(2)) {
		flex-direction: column;
	}
	.section-contact-person .container-text, .section-contact-person picture {
		width: 100%;
	}
}

/*application-default*/
.section-application-default {
	gap: 3.125rem;
}
.section-application-default .container-text {
	width: 61.8%;
}
.section-application-default .container-text span {
	margin-top: 1.75rem;
	font-weight: 700;
}
.section-application-default .consent {
	align-items: center;
}
.section-application-default .consent input[type=checkbox] {
	margin-top: 0px;
}
.section-application-default .consent a {
	color: var(--main-black);
	text-transform: none;
	font-weight: 400;
	letter-spacing: 0;
}
.section-application-default .consent label {
	padding-left: 0px;
	text-align: left;
}
.section-application-default form {
	align-items: start;
	width: 75%;
}

@media only screen and (max-width: 992px) {
	.section-application-default form {
		width: 100%;
	}
	.section-application-default .container-text {
		width: 100%;
	}
}
@media only screen and (max-width: 688px) {
	.section-application-default .form .flexbox-h:not(:nth-last-child(2)) {
		flex-direction: column;
	}
}

/*application-proactive*/
.section-application-proactive {
	gap: 3.125rem;
}
.section-application-proactive .container-text {
	width: 61.8%;
}
.section-application-proactive .container-text span {
	margin-top: 1.75rem;
	font-weight: 700;
}
.section-application-proactive .consent {
	align-items: center;
}
.section-application-proactive .consent input[type=checkbox] {
	margin-top: 0px;
}
.section-application-proactive .consent a {
	color: var(--main-black);
	text-transform: none;
	font-weight: 400;
	letter-spacing: 0;
}
.section-application-proactive .consent label {
	padding-left: 0px;
}
.section-application-proactive form {
	align-items: start;
	width: 75%;
}

@media only screen and (max-width: 992px) {
	.section-application-proactive form {
		width: 100%;
	}
	.section-application-proactive .container-text {
		width: 100%;
	}
}
@media only screen and (max-width: 688px) {
	.section-application-proactive .form .flexbox-h:not(:nth-last-child(2)) {
		flex-direction: column;
	}
}

/*application-jobs*/
.section-application-jobs .container-jobs {
	width: 100%;
}
.section-application-jobs .search {
	padding-bottom: 3.125rem;
	width: 100%;
	align-items: end;
}
.section-application-jobs .container-search {
	width: calc(45% - 1.75rem);
	gap: 0.5rem;
}
.section-application-jobs .container-search label.select {
	padding-top: 0.9rem;
	padding-bottom: 0.9rem;
	width: calc(100% - 2 * 1.25rem)
}
.section-application-jobs .container-job {
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
}
.section-application-jobs .container-job:last-child {
	padding-bottom: 0px;
}
.section-application-jobs .container-job h3 {
	width: 61.8%;
	margin-bottom: 0.5rem;
}
.section-application-jobs .container-job:not(:last-child) {
	border-bottom: 1px solid var(--main-shade-400);
}
.section-application-jobs .job-info svg {
	width: 3rem;
	height: 3rem;
}
.section-application-jobs .job-info {
	gap: 0.5rem;
}
.section-application-jobs .job-infos {
	gap: 3.125rem;
}

@media only screen and (max-width: 992px) {

}
@media only screen and (max-width: 688px) {
	.section-application-jobs .form {
		flex-direction: column;
		align-items: flex-start;
	}
	.section-application-jobs .container-search {
		width: 100%;
	}
	.section-application-jobs .container-job h3 {
		width: 100%;
	}
	.section-application-jobs .container-infos {
		flex-direction: column;
		align-items: flex-start;
		gap: 1rem;
		width: 100%;
	}
	.section-application-jobs .job-infos {
		gap: 1.5rem;
	}
}

/*article*/
.article .content {
	max-width: 61.8%;
}
.article .content h2, .article .content .h2 {
	margin-top: 2rem;
}
.article .content h3, .article .content .h3 {
	margin-top: 1.5rem;
}
.article .content > p + p, .article .content > p + ul, .article .content > ul + p {
	margin-top: 1rem;
}