/*

Theme Name: 8create
Theme URI: https://www.8create.digital
Version: 1.1
Description: 8create child theme
Author: 8create
Author URI: https://www.8create.digital
Template: Divi

*/

/*
global vars
*/

:root {
	/* global */
	--global-page-width: 100%;
	--global-content-width: 1920px;
	--global-font-family: 'Booton', Helvetica, Arial, sans-serif;
	/* colors */
	--color-gelb-500: #FFFF7D;
	--color-blau-500: #B3E6E7;
	--color-petrol-400: #5D6F6F;
	--color-petrol-700: #13616A;
	--color-petrol-900: #09292A;
	--color-neutral-50: #EDEFF2;
	--color-neutral-100: #E3E5E8;
	--color-neutral-200: #C7CBD1;
	--color-neutral-950: #010101;
	--color-white: #FFFFFF;
	--color-error: #E40028;
	/* headline */
	--headline-font-family: 'Booton', Helvetica, Arial, sans-serif;
	--headline-color: var(--color-petrol-900);
	--headline-hero-font-size: clamp(41px, calc(23.65px + 3.70vw), 77px);
	--headline-h1-font-size: clamp(36px, calc(23.00px + 2.78vw), 63px);
	--headline-h2-font-size: clamp(32px, calc(22.85px + 1.96vw), 51px);
	--headline-h3-font-size: clamp(29px, calc(22.74px + 1.34vw), 42px);
	--headline-h4-font-size: clamp(26px, calc(21.67px + 0.93vw), 35px);
	--headline-h5-font-size: clamp(23px, calc(20.59px + 0.51vw), 28px);
	--headline-h6-font-size: clamp(20px, calc(18.55px + 0.31vw), 23px);
	/* text */
	--text-color-dark: var(--color-petrol-900);
	--text-color-light: var(--color-white);
	--text-font-size: clamp(16px, 1.5vw + 0.6rem, 19px);
	--text-font-size-largest: clamp(23px, 2vw + 0.6rem, 28px);
	--text-font-size-large: clamp(20px, 2vw + 0.6rem, 23px);
	--text-font-size-small: clamp(16px, 2vw + 0.6rem, 16px);
	--text-font-size-smallest: clamp(14px, 2vw + 0.6rem, 14px);
	--text-font-size-tiny: clamp(14px, 2vw + 0.6rem, 14px);;
	/* primary button dark */
	--button-padding: 20px 40px 20px 40px;
	--button-fontfamily: 'Booton', Helvetica, Arial, sans-serif;
	--button-font-size: var(--text-font-size-small);
	--button-background: transparent;
	--button-background-hover: var(--color-petrol-900);
	--button-color: var(--color-petrol-900);
	--button-color-hover: var(--color-white);
	--button-border: 1.5px solid var(--color-petrol-900);
	--button-border-hover: 1.5px solid var(--color-petrol-900);
	--button-border-radius: 50px;
	--button-transistion: 0.3s;
	/* primary button light */
	--button-lig-background: transparent;
	--button-lig-background-hover: var(--color-white);
	--button-lig-color: var(--color-white);
	--button-lig-color-hover: var(--color-petrol-900);
	--button-lig-border: 1.5px solid var(--color-white);
	--button-lig-border-hover: 1.5px solid var(--color-white);
	/* secondary button dark */
	--button-sec-background: var(--color-petrol-700);
	--button-sec-background-hover: var(--color-petrol-900);
	--button-sec-color: var(--color-white);
	--button-sec-color-hover: var(--color-white);
	--button-sec-border: 1.5px solid var(--color-petrol-700);
	/* secondary button light */
	--button-sec-lig-background: var(--color-petrol-700);
	--button-sec-lig-background-hover: var(--color-petrol-700);
	--button-sec-lig-color: var(--color-white);
	--button-sec-lig-color-hover: var(--color-white);
	--button-sec-lig-border: 1.5px solid var(--color-petrol-700);
	/* form */
	--form-font-size: var(--text-font-size-small);
	--form-field-padding: 0;
	--form-field-color: var(--color-petrol-900);
	--form-field-background: var(--color-white);
	--form-field-border-width: 1px;
	--form-field-border: var(--form-field-border-width) solid rgba(51, 51, 51, 0.44);
	--form-field-border-radius: 0px;
	--form-field-placeholder-color: var(--color-neutral-900);
	--form-field-height: 40px;
	--form-field-gap: 16px;
	--form-dropdown-arrow-size: 6px;
	/* spacing */
	--spacing-xxs: 8px;
	--spacing-xs: 16px;
	--spacing-sm: clamp(16px, calc(12.15px + 0.82vw), 24px);
	--spacing-md: clamp(24px, calc(20.148px + 0.823vw), 32px);
	--spacing-lg: clamp(40px, calc(35.15px + 0.82vw), 48px);
	--spacing-xl: clamp(48px, calc(40.77px + 1.65vw), 64px);
	--spacing-xxl: clamp(80px, calc(66.31px + 3.09vw), 128px);
	--spacing-xxxl: clamp(128px, calc(112.6px + 3.29vw), 160px);
	--spacing-section: var(--spacing-xxl);
	--spacing-row: var(--spacing-xl);
	--spacing-column: var(--spacing-md);
	--spacing-module: var(--spacing-lg);
	/* divi */
	--row-gutter-vertical: var(--spacing-row);
	--row-gutter-horizontal: var(--spacing-column);
	--module-gutter: var(--spacing-module);
}

/*
layout
*/

.et_section_regular.et_pb_section {
	max-width: var(--global-page-width);
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding: var(--spacing-section) 0;
}

.et_section_regular.et_pb_section .et_pb_row {
	max-width: var(--global-content-width);
	width: 100%;
}

.et_section_regular.et_pb_section .et_pb_row .et_pb_row {
	padding-left: 0;
	padding-right: 0;
}

@media (max-width: 1984px) {
	.et_section_regular.et_pb_section .et_pb_row {
		padding-left: var(--spacing-md);
		padding-right: var(--spacing-md);
		max-width: 100%;
	}
}

@media (max-width: 1200px) {
	.et_section_regular.et_pb_section .et_pb_row {
		padding-left: var(--spacing-xs);
		padding-right: var(--spacing-xs);
	}
}

/*
general
*/

html {
	background-color: var(--color-neutral-50);
}

header {
	position: relative;
	z-index: 99;
}

body header {
	position: absolute;
	width: 100%;
}

.scrollblock {
	overflow: hidden;
	height: 100svh;
}

.mfp-removing img {
	opacity: 0 !important;
}

.et_pb_module svg {
	display: block;
}

#main-content {
	position: relative;
	z-index: 1;
}

@media (max-width: 1200px) {
	#main-content {
		margin-bottom: 0 !important;
	}
}

/*
fonts
*/

@font-face {
	font-family: 'Booton';
	src: url('/wp-content/themes/8create/fonts/booton.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
}

@font-face {
	font-family: 'Stellage';
	src: url('/wp-content/themes/8create/fonts/stellage.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
}

body,
body .et_pb_module,
body {
	font-family: var(--global-font-family);
	color: var(--text-color-dark);
	font-size: var(--text-font-size);
}

.et_pb_module.et_pb_bg_layout_light {
	color: var(--text-color-dark);
}

.et_pb_module.et_pb_bg_layout_dark {
	color: var(--text-color-light);
}

.et_pb_module h1,
.et_pb_module h2,
.et_pb_module h3,
.et_pb_module h4,
.et_pb_module h5,
.et_pb_module h6,
.et_pb_module p.h1,
.et_pb_module p.h2,
.et_pb_module p.h3,
.et_pb_module p.h4,
.et_pb_module p.h5,
.et_pb_module p.h6 {
	font-family: var(--headline-font-family) !important;
	color: var(--headline-color);
	padding-bottom: 0;
	/*hyphens: auto;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;*/
}

.et_pb_module h1.serif,
.et_pb_module h2.serif,
.et_pb_module h3.serif,
.et_pb_module h4.serif,
.et_pb_module h5.serif,
.et_pb_module h6.serif,
.et_pb_module p.h1.serif,
.et_pb_module p.h2.serif,
.et_pb_module p.h3.serif,
.et_pb_module p.h4.serif,
.et_pb_module p.h5.serif,
.et_pb_module p.h6.serif {
	font-family: 'Stellage', 'Times New Roman', serif !important;
}

h1.hero {
    font-size: var(--headline-hero-font-size);
    line-height: 110%;
}

h1,
h1.h1,
h2.h1,
h3.h1,
h4.h1,
h5.h1,
h6.h1,
.et_pb_module p.h1 {
    font-size: var(--headline-h1-font-size);
    line-height: 110%;
}

h2,
h1.h2,
h2.h2,
h3.h2,
h4.h2,
h5.h2,
h6.h2,
.et_pb_module p.h2 {
    font-size: var(--headline-h2-font-size);
    line-height: 110%;
}

h3,
h1.h3,
h2.h3,
h3.h3,
h4.h3,
h5.h3,
h6.h3,
.et_pb_module p.h3 {
    font-size: var(--headline-h3-font-size);
    line-height: 110%;
}

h4,
h1.h4,
h2.h4,
h3.h4,
h4.h4,
h5.h4,
h6.h4,
.et_pb_module p.h4 {
    font-size: var(--headline-h4-font-size);
    line-height: 110%;
}

h5,
h1.h5,
h2.h5,
h3.h5,
h4.h5,
h5.h5,
h6.h5,
.et_pb_module p.h5 {
    font-size: var(--headline-h5-font-size);
    line-height: 110%;
}

h6,
h1.h6,
h2.h6,
h3.h6,
h4.h6,
h5.h6,
h6.h6,
.et_pb_module p.h6 {
    font-size: var(--headline-h6-font-size);
    line-height: 130%;
}

.et_pb_module p,
.et_pb_module ul {
	font-size: var(--text-font-size);
	line-height: 140%;
}

.et_pb_module.largest p,
.et_pb_module p.largest,
.et_pb_module p .largest,
.et_pb_module.largest ul,
.et_pb_module ul.largest {
	font-size: var(--text-font-size-largest);
	line-height: 130%;
}

.et_pb_module.large p,
.et_pb_module p.large,
.et_pb_module p .large,
.et_pb_module.large ul,
.et_pb_module ul.large {
	font-size: var(--text-font-size-large);
	line-height: 130%;
}

.et_pb_module.small p,
.et_pb_module p.small,
.et_pb_module p .small,
.et_pb_module.small ul,
.et_pb_module ul.small {
	font-size: var(--text-font-size-small);
	line-height: 140%;
}

.et_pb_module.smallest p,
.et_pb_module p.smallest,
.et_pb_module p .smallest,
.et_pb_module.smallest ul,
.et_pb_module ul.smallest {
	font-size: var(--text-font-size-smallest);
	line-height: 140%;
}

.et_pb_module.tiny p,
.et_pb_module p.tiny,
.et_pb_module p .tiny,
.et_pb_module.tiny ul,
.et_pb_module ul.tiny {
	font-size: var(--text-font-size-tiny);
	line-height: 140%;
}

.et_pb_module strong {
	font-weight: bold;
}

/*
buttons
*/

/* primary dark */

.et_pb_module .et_pb_button,
.et_pb_bg_layout_light.et_pb_module.et_pb_button {
	border: var(--button-border);
	border-radius: var(--button-border-radius);
	background-color: var(--button-background);
	color: var(--button-color);
	font-size: var(--button-font-size);
	line-height: 1em !important;
	padding: var(--button-padding);
	transition: all var(--button-transistion);
}

.et_pb_module .et_pb_button:hover,
.et_pb_bg_layout_light.et_pb_module.et_pb_button:hover {
	padding: var(--button-padding) !important;
	border: var(--button-border-hover);
	background-color: var(--button-background-hover);
	color: var(--button-color-hover);
}

.et_pb_module .et_pb_button::after,
.et_pb_bg_layout_light.et_pb_module.et_pb_button::after {
	display: none;
}

/* primary light */

.et_pb_module .et_pb_button.light {
	border: var(--button-lig-border);
	background-color: var(--button-lig-background);
	color: var(--button-lig-color);
}

.et_pb_module .et_pb_button.light:hover {
	padding: var(--button-padding);
	border: var(--button-lig-border-hover);
	background-color: var(--button-lig-background-hover);
	color: var(--button-lig-color-hover);
}

/* secondary dark */

.et_pb_module .et_pb_button.secondary {
	border: var(--button-sec-border);
	background-color: var(--button-sec-background);
	color: var(--button-sec-color);
}

.et_pb_module .et_pb_button.secondary:hover {
	border: var(--button-sec-border);
	background-color: var(--button-sec-background-hover);
	color: var(--button-sec-color-hover);
}

/* secondary light */

.et_pb_module .et_pb_button.secondary.light {
	border: var(--button-sec-lig-border);
	background-color: var(--button-sec-lig-background);
	color: var(--button-sec-lig-color);
}

.et_pb_module .et_pb_button.secondary.light:hover {
	border: var(--button-sec-lig-border);
	background-color: var(--button-sec-lig-background-hover);
	color: var(--button-sec-lig-color-hover);
}

/* inline buttons within section/row/column */

.inline_buttons .et_pb_button_module_wrapper {
	display: inline-block;
	vertical-align: middle;
	margin: 0 20px 0 0 !important;
}

/* block buttons with full width */

.et_pb_button.block {
	display: block;
	width: 100%;
	text-align: center;
}

/* burger buttons */

.et_pb_module .et_pb_button.burger,
.et_pb_module .et_pb_button.burger_close {
	font-family: 'ETmodules';
	font-size: 30px;
	padding: 12px 11px 10px 11px;
	background: var(--color3);
	color: var(--color4);
}

.et_pb_module .et_pb_button.burger:hover,
.et_pb_module .et_pb_button.burger_close:hover {
	font-family: 'ETmodules';
	font-size: 30px;
	padding: 12px 11px 10px 11px;
	background: var(--color4);
	color: var(--color3);
}

.burger rect {
	transition: transform 0.3s ease, opacity 0.2s ease;
	transform-origin: 0;
}

.burger.close rect.first {
	transform: translateY(-11px) translateX(2px) rotate(45deg);
}

.burger.close rect.last {
	transform: translateY(9px) translateX(2px) rotate(-45deg);
}

.burger.close rect.middle {
	opacity: 0;
}


/* buttons with icon */

.et_pb_module .et_pb_button.icon,
.et_pb_bg_layout_light.et_pb_module.et_pb_button.icon {
	display: inline-flex;
	width: fit-content;
	flex-direction: row;
	gap: var(--spacing-xxs);
	align-items: center;
}

.et_pb_module .et_pb_button.icon.search svg path,
.et_pb_bg_layout_light.et_pb_module.et_pb_button.icon.search svg path,
.et_pb_module .et_pb_button.icon.whatsapp svg path,
.et_pb_bg_layout_light.et_pb_module.et_pb_button.icon.whatsapp svg path,
.et_pb_module .et_pb_button.icon.mail svg path,
.et_pb_bg_layout_light.et_pb_module.et_pb_button.icon.mail svg path {
	transition: all .3s;
}

.et_pb_module .et_pb_button.icon.search:hover svg path,
.et_pb_bg_layout_light.et_pb_module.et_pb_button.icon.search:hover svg path {
	stroke: var(--color-petrol-900);
}

.et_pb_module .et_pb_button.icon.whatsapp:hover svg path,
.et_pb_bg_layout_light.et_pb_module.et_pb_button.icon.whatsapp:hover svg path {
	stroke: var(--color-white);
}

.et_pb_module .et_pb_button.icon.mail:hover svg path,
.et_pb_bg_layout_light.et_pb_module.et_pb_button.icon.mail:hover svg path {
	stroke: var(--color-white);
}

/*
links
*/

.et_pb_module.et_pb_text a {
	color: var(--text-color-dark);
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: auto;
	text-decoration-thickness: auto;
	text-underline-offset: auto;
	text-underline-position: from-font;
}

.et_pb_module.et_pb_text a.button_link {
	border: 1px solid transparent;
	border-radius: 50px;
	transition: border .3s;
	text-decoration: none;
	color: var(--color-petrol-700);
}

@media (min-width: 981px) {
	.et_pb_module.et_pb_text a.button_link {
		padding: 8px 16px;
	}

	.et_pb_module.et_pb_text a.button_link:hover {
		border: 1px solid var(--color-petrol-700);
		transition: border .3s;
	}
}

/*
navigation
*/

.navigation {
	display: grid;
	grid-template-columns: auto 1fr;
	justify-content: space-between;
	align-items: center;
	gap: var(--spacing-lg);
	padding: var(--spacing-sm) 0;
	position: relative;
	z-index: 2;
}

.navigation .menu {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: var(--spacing-md);
}

.navigation .menu a {
	color: var(--color-white);
	line-height: 1em;
	transition: color .3s;
	padding: 8px 16px;
	border: 1px solid transparent;
	border-radius: 50px;
	transition: border .3s;
	font-size: var(--text-font-size-small);
}

.navigation .menu a:hover {
	border: 1px solid var(--color-white);
}

.navigation .menu .burger {
	display: none;
	cursor: pointer;
}

.navigation .logo svg path {
	transition: fill .3s;
}

@media (max-width: 980px) {
	.navigation .menu .entry {
		display: none;
	}

	.navigation .menu .burger {
		display: block;
	}
}

/* dark version */

body.page-id-284 .navigation .menu a,
body.page-id-434 .navigation .menu a,
body.page-id-470 .navigation .menu a {
	color: var(--color-petrol-900);
}

body.page-id-284 .navigation:not(.burgermenu_active) .burger rect,
body.page-id-434 .navigation:not(.burgermenu_active) .burger rect,
body.page-id-470 .navigation:not(.burgermenu_active) .burger rect {
	fill: var(--color-petrol-900);
}


body.page-id-284 .navigation:not(.burgermenu_active) .logo svg path,
body.page-id-434 .navigation:not(.burgermenu_active) .logo svg path,
body.page-id-470 .navigation:not(.burgermenu_active) .logo svg path {
	fill: var(--color-petrol-900);
}

body.page-id-284 .navigation .menu .burger svg path,
body.page-id-434 .navigation .menu .burger svg path,
body.page-id-470 .navigation .menu .burger svg path {
	fill: var(--color-petrol-900);
}

body.page-id-284 .navigation .menu a:hover,
body.page-id-434 .navigation .menu a:hover,
body.page-id-470 .navigation .menu a:hover {
	border: 1px solid var(--color-petrol-900);
}

/*
burgermenu
*/

.burgermenu {
	position: absolute;
	top: 0;
	left: -150vw;
	height: 100svh;
	width: 100vw;
	background: var(--color-petrol-700);
	display: block;
	transition: left .3s;
	padding: var(--spacing-sm) var(--spacing-xs);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.burgermenu.active {
	left: calc(-1 * var(--spacing-xs));
}

.burgermenu .header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--spacing-lg);
}

.burgermenu .close {
	cursor: pointer;
}

.burgermenu .entries,
.burgermenu .footer {
	display: grid;
	grid-template-columns: 100%;
}

.burgermenu .entries a {
	color: var(--color-white);
	font-size: var(--headline-hero-font-size);
	display: block;
	width: fit-content;
	line-height: 110%;
}

.burgermenu .footer a {
	color: var(--color-blau-500);
	font-size: var(--text-font-size-small);
	display: block;
	width: fit-content;
}

.burgermenu .signet {
	position: absolute;
	bottom: 50px;
	right: 0;
}

/*
partner slider
*/

.partner_slider_wrap {
	overflow: hidden;
	position: relative;
	width: 100%;
}

.partner_slider {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	white-space: nowrap;
	width: max-content;
	animation: partner-slider-scroll linear infinite;
	will-change: transform;
}

.partner_slider_item {
	display: inline-block;
	margin-right: var(--spacing-xxl);
}

.partner_logo {
	max-height: 60px;
	display: block;
	object-fit: contain;
}

@keyframes partner-slider-scroll {
	from { transform: translateX(0); }
	to   { transform: translateX(-50%); }
}

/*
people slider
*/

.people_slider {
	display: grid;
	grid-template-columns: calc(50% - var(--spacing-column) / 2) calc(50% - var(--spacing-column) / 2);
	gap: calc(var(--spacing-column) / 2);
	overflow: hidden;
}

.people_slider .content {
	padding-left: calc((100vw - var(--global-content-width)) / 2);
	position: relative;
}

.people_slider .arrows {
	display: flex;
	gap: var(--spacing-xxs);
	margin-bottom: var(--spacing-xxl);
}

.people_slider .arrows svg {
	cursor: pointer;
}

.people_slider .arrows svg path {
	transition: all .3s;
}

.people_slider .arrows svg .circle {
	fill: transparent;
}

.people_slider .arrows svg:hover .arrow {
	stroke: var(--color-petrol-700);
}

.people_slider .arrows svg:hover .circle {
	fill: var(--color-blau-500);
}

.people_slider .meta .entry {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	max-width: 500px;
	transition: opacity 1s;
}

.people_slider .meta .entry.active {
	opacity: 1;
	visibility: visible;
}

.people_slider .meta h3,
.people_slider .meta p {
	color: var(--color-white);
}

.people_slider .meta .people-position {
	color: var(--color-white);
	font-size: var(--text-font-size-small);
	padding: var(--spacing-xs) 0;
}

.people_slider .meta .people-contact {
	display: flex;
	gap: var(--spacing-xs);
	align-items: center;
	color: var(--color-blau-500);
	font-size: var(--text-font-size-small);
	padding: 0 0 var(--spacing-xs) 0;
	text-decoration: none;
}

.people_slider .meta .people-contact:last-of-type {
	padding-bottom: 0;
}

.people_slider .meta .people-contact:hover svg path {
	fill: var(--color-white);
}

.people_slider .meta .people-contact:hover {
	color: var(--color-white);
}

.people_slider .meta .entry > div:last-of-type {
	padding-top: var(--spacing-xs);
}

.people_slider .images {
	display: flex;
	flex-wrap: nowrap;
	overflow-x: hidden;
	gap: var(--spacing-sm);
	padding-right: 50vw;
}

.people_slider .images img {
	width: 440px;
	min-width: 440px;
	height: 580px;
	flex: 0 0 440px;
	object-fit: cover;
	opacity: 0.2;
	transition: opacity .3s ease;
	border-radius: 16px;
}

.people_slider .images img.active {
	opacity: 1;
}

@media (max-width: 767px) {
	.people_slider {
		padding-top: 80px;
		grid-template-columns: 100%;
	}

	.people_slider .content {
		order: 2;
		position: unset;
		padding-right: var(--spacing-xs);
	}

	.people_slider .arrows {
		position: absolute;
		top: 0;
	}

	.people_slider .meta {
		height: 220px;
		position: relative;
	}

	.people_slider .images img {
		width: 280px;
		min-width: 280px;
		height: auto;
		flex: 0 0 280px;
		object-fit: cover;
	}
}

/*
color switcher
*/

.color_switcher_section {
	transition: background-color .5s ease;
}

.color_switcher_section .image_switcher {
	position: absolute;
}

.color_switcher_section .image_switcher .et_pb_image {
	width: 100% !important;
}

.color_switcher_section .image_switcher img {
	width: 100% !important;
	object-fit: cover;
	opacity: 0;
	transition: opacity .5s;
}

.color_switcher_section .image_switcher img.active {
	opacity: 1;
}

/*
accordion
*/

.et_pb_accordion {
	--vertical-gap: 0;
}

.et_pb_toggle {
	border: 0;
	border-bottom: 1px solid var(--color-neutral-100);
	background-color: transparent;
	padding: var(--spacing-sm) var(--spacing-xs) var(--spacing-sm) 0;
}

.et_pb_toggle_title {
	color: var(--color-petrol-900) !important;
	font-size: var(--headline-h5-font-size) !important;
}

.et_pb_toggle_title:before {
	position: absolute;
	content: "";
	display: inline-block !important;
	width: 24px;
	height: 24px;
	background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='16' height='2' transform='translate(4 11)' fill='%2313616A'/%3E%3Crect width='2' height='16' transform='translate(11 4)' fill='%2313616A'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	top: 50%;
	transform: translateY(-50%) rotate(0deg);
	font-size: 0;
	transition: transform .3s;
	transform-origin: center center;   
}

.et_pb_toggle_open .et_pb_toggle_title:before {
	transform: translateY(-50%) rotate(45deg);
}

.et_pb_toggle_content {
	max-width: 90%;
}

@media (max-width: 767px) {
	.et_pb_toggle {
		padding-right: 0;
	}

	.et_pb_toggle_content {
		max-width: 100%;
	}
}

/*
logo_container
*/

.logo_container {
	z-index: 2;
	position: fixed;
	bottom: var(--spacing-md);
	right: -20px;
	animation: spin 40s linear infinite;
}

.logo_container svg {
	width: 200px;
	height: 200px;
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

@media (max-width: 980px) {
	.logo_container {
		display: none;
	}
}

/*
jobfilter
joblist
*/

.jobfilter {
	border-bottom: 1px solid var(--regius-neutral-200, #C7CBD1);
	background-color: var(--color-white);
}

@media (min-width: 981px) {
	.jobfilter.sticky {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 1000;
	}
}

.jobfilter .wrapper,
.joblist .wrapper {
	max-width: var(--global-content-width);
	margin: 0 auto;
}

.jobfilter .wrapper {
	display: grid;
	grid-template-columns: 1.5fr 1.5fr 1fr 1fr 240px;
	align-items: center;

}

.jobfilter .wrapper > div {
	padding: var(--spacing-xs) var(--spacing-md);
	position: relative;
	background-color: transparent;
	transition: background-color .3s;
}

.jobfilter .wrapper > div.focus:not(.submit) {
	background-color: #F6F7F9;
}

.jobfilter .wrapper > div p {
	color: var(--color-petrol-700);
	font-size: var(--text-font-size-smallest);
}

.jobfilter input,
.jobfilter .selected,
.jobfilter .select > div {
	color: var(--color-petrol-900);
	font-size: var(--text-font-size-small);
	border: none;
	padding: 0;
	background-color: transparent;
}

.jobfilter .clear {
	position: absolute;
	width: 24px;
	height: 24px;
	top: 50%;
	right: var(--spacing-sm);
	transform: translateY(-50%) rotate(45deg);
	font-size: 0;
	transform-origin: center center;
	display: inline-block;
	opacity: 0;
	visibility: hidden;
	transition: all .3s;
	cursor: pointer;
}

.jobfilter .clear.active {
	opacity: 1;
	visibility: visible;
}

.jobfilter input {
	font-family: var(--global-font-family);
	width: 90%;
}

.jobfilter input::placeholder {
	color: var(--color-petrol-400) !important;
	opacity: 1;
}

.jobfilter input::-webkit-input-placeholder {
	color: var(--color-petrol-400) !important;
}

.jobfilter input::-moz-placeholder {
	color: var(--color-petrol-400) !important;
}

.jobfilter input:-moz-placeholder {
	color: var(--color-petrol-400) !important;
}

.jobfilter input:-ms-input-placeholder {
	color: var(--color-petrol-400) !important;
}

.jobfilter input::-ms-input-placeholder {
	color: var(--color-petrol-400) !important;
}

.jobfilter .dropdown {
	cursor: pointer;
}

.jobfilter .select {
	position: absolute;
	top: calc(100% + 1px);
	left: 0;
	width: 100%;
	display: none;
	background-color: var(--color-white);
	z-index: 9;
}

.jobfilter .select.active {
	display: block;
}

.jobfilter .select > div {
	line-height: 1em;
	padding: var(--spacing-xs) var(--spacing-sm);
}

.jobfilter .select > div:hover {
	background-color: rgba(237, 239, 242, 0.5);
}

.jobfilter .arrow {
	position: absolute;
	right: var(--spacing-sm);
	top: 50%;
	transform: translateY(-50%);
}

.jobfilter .submit {
	text-align: right;
}

.joblist {
	background-color: var(--color-neutral-50);
	padding: var(--spacing-lg) 0 var(--spacing-xxl);
}

.joblist .entry {
	display: none;
	grid-template-columns: auto 20% 20% 50px;
	border-bottom: 1px solid var(--neutral-100, #DBDBDB);
	padding: var(--spacing-xxs) var(--spacing-md);
	align-items: center;
	cursor: pointer;
	gap: var(--spacing-sm);
	color: var(--color-petrol-900);
}

.joblist .entry:hover {
	background-color: var(--color-blau-500);
}

.joblist .entry.loaded {
	display: grid;
}

.joblist .more_wrapper {
	text-align: center;
}

.joblist .more {
	display: inline-block;
	margin-top: var(--spacing-lg);
}

.joblist .button {
	opacity: 0;
}

.joblist .entry:hover .button {
	opacity: 1;
}

.joblist .button svg {
	width: 50px;
	height: 50px;
}

.joblist .button svg:hover .circle {
	stroke: transparent;
}

.joblist .loader,
.joblist .no_results {
	margin-left: var(--spacing-sm);
	margin-right: var(--spacing-sm);
}

@media (max-width: 1200px) {
	.jobfilter .wrapper > div {
		padding: var(--spacing-xs) var(--spacing-xs);
	}

	.joblist .entry {
		padding: var(--spacing-xxs) var(--spacing-xs);
	}
}

@media (max-width: 980px) {
	.jobfilter .wrapper {
		grid-template-columns: 1fr 1fr;
	}

	.jobfilter .wrapper > :last-child {
		grid-column: 1 / -1;
	}

	.jobfilter .submit {
		text-align: center;
	}

	.jobfilter .submit a {
		display: block;
		width: 100%;
	}
}

@media (max-width: 767px) {
	.jobfilter .wrapper .term,
	.jobfilter .wrapper .type {
		grid-column: 1 / -1;
		border-bottom: 1px solid var(--regius-neutral-200, #C7CBD1);
	}

	.joblist .entry {
		grid-template-columns: 100%;
		padding-top: var(--spacing-xs);
		padding-bottom: var(--spacing-xs);
		gap: 0;
	}

	.joblist .entry:hover {
		background-color: transparent;
	}

	.joblist .entry .button {
		display: none;
	}

	.joblist .entry .name {
		padding-bottom: var(--spacing-xxs);
	}

	.joblist .entry .type,
	.joblist .entry .location {
		font-size: var(--text-font-size-smallest);
	}
}

/*
job detail
*/

.page-id-284 .sharing .et_pb_code_inner {
	display: grid;
	grid-template-columns: auto repeat(5, 48px);
	align-items: center;
}

.page-id-284 .sharing a {
	width: 48px;
	height: 48px;
	border: 1px solid transparent;
	border-radius: 48px;
	transition: border .3s;
}

.page-id-284 .sharing a:hover {
	border: 1px solid var(--color-petrol-700);
}

.page-id-284 .sharing a svg {
	margin: 11px;
}

.api_html * {
	font-family: var(--global-font-family) !important;
	font-size: var(--text-font-size) !important;
	line-height: 140% !important;
	color: var(--text-color-dark) !important;
	padding: 0 !important;
	margin: 0 !important;
	background-color: transparent !important;
}

.api_html ul {
	padding-left: 20px !important;
	padding-bottom: 0 !important;
}

.api_html ul li::marker {
	color: var(--color-petrol-700) !important;
}

.api_html ul li {
	padding-bottom: var(--spacing-xxs) !important;
}

.api_html ul br {
	display: none !important;
}

.api_html .KundenfeldText {
	padding-bottom: var(--spacing-sm) !important;
}

@media (max-width: 767px) {
	.page-id-284 .social .et_pb_code_inner {
		display: block;
	}

	.page-id-284 .social a {
		display: inline-block;
	}

	.page-id-284 .social a svg {
		margin-left: 0;
	}
}

/*
job slider
*/

.job_slider_wrap {
	overflow: hidden;
	position: relative;
	width: 100%;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.job_slider_wrap::-webkit-scrollbar {
	display: none;
}


.job_slider {
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	width: max-content;
	animation: job-slider-scroll linear infinite;
	will-change: transform;
}

.job_slider:hover {
	animation-play-state: paused;
}

.job_slider .entry {
	display: inline-block;
	margin-right: var(--spacing-sm);
	padding: var(--spacing-sm) var(--spacing-sm) 170px var(--spacing-sm);
	background-color: var(--color-white);
	color: var(--text-color-dark);
	width: 440px;
	text-align: left;
	position: relative;
}

.job_slider .entry:hover {
	background-color: var(--color-blau-500);
}

.job_slider .entry p {
	padding: var(--spacing-xs) 0 0 0;
}

.job_slider .entry .name {
	hyphens: auto;
	overflow-wrap: break-word;
	word-wrap: break-word; 
}

.job_slider .entry .location {
	position: absolute;
	bottom: var(--spacing-sm);
	left: var(--spacing-sm);
}

@keyframes job-slider-scroll {
	from { transform: translateX(0); }
	to   { transform: translateX(-50%); }
}

@media (max-width: 980px) {
	.job_slider_wrap {
		overflow: scroll;
	}

	.job_slider {
		animation: none;
		padding-left: var(--spacing-xs);
	}

	.job_slider .entry {
		width: 300px;
		margin-right: var(--spacing-xs);
		padding-bottom: 120px;
	}

	.job_slider .entry.duplicate {
		display: none;
	}
}

/*
forms
*/

.gform_wrapper .gform_fields {
	row-gap: var(--form-field-gap) !important;
}

.gform_wrapper label.gfield_label,
.gform_wrapper legend {
	font-size: var(--text-font-size-smallest) !important;
	color: var(--color-petrol-900) !important;
	margin-bottom: 0 !important;
	opacity: 0;
	transition: opacity 0.3s;
}

.gform_wrapper .gfield_required .gfield_required_text,
.gform_wrapper .gfield_required .gfield_required_asterisk {
	font-size: var(--text-font-size-smallest);
	font-style: normal;
	color: var(--color-error);
}

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="number"],
.gform_wrapper select,
.gform_wrapper textarea {
	width: 100% !important;
	font-size: var(--form-font-size) !important;
	padding: var(--form-field-padding) !important;
	color: var(--form-field-color) !important;
	background-color: var(--form-field-background) !important;
	border: none !important;
	border-bottom: var(--form-field-border) !important;
	border-radius: var(--form-field-border-radius) !important;
	line-height: var(--form-field-height) !important;
	height: var(--form-field-height) !important;
	font-weight: 500 !important;
	box-shadow: none !important;
}

.gform_wrapper input[type="text"]:focus,
.gform_wrapper input[type="email"]:focus,
.gform_wrapper input[type="number"]:focus,
.gform_wrapper select:focus,
.gform_wrapper textarea:focus{
	outline: none !important;
}

.gform_wrapper textarea  {
	resize: none;
	min-block-size: 8rem !important;
}

.gform_wrapper select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	background-image:
	linear-gradient(135deg, var(--color-green)  50%, transparent 50%),
    linear-gradient(45deg, transparent 50%, var(--color-green) 50%);
  background-position:
    calc(100% - var(--form-field-padding)) 50%,
    calc(100% - var(--form-field-padding) - var(--form-dropdown-arrow-size)) 50%;
  background-size:
    var(--form-dropdown-arrow-size) var(--form-dropdown-arrow-size),
    var(--form-dropdown-arrow-size) var(--form-dropdown-arrow-size);
  background-repeat: no-repeat;
}

.gform_wrapper .gfield_checkbox .gchoice,
.gform_wrapper .gfield_radio .gchoice {
	line-height: 2em;
}

.gform_wrapper .gfield_checkbox label,
.gform_wrapper .gfield_radio label,
.gform_wrapper .gfield--type-choice label {
	font-size: var(--text-font-size-smallest) !important;
	color: var(--color-petrol-900) !important;
}

.gform_wrapper input[type="submit"] {
	cursor: pointer !important;
	border: var(--button-sec-border) !important;
	border-radius: var(--button-border-radius) !important;
	background-color: var(--button-sec-background) !important;
	color: var(--button-sec-color) !important;
	font-size: var(--button-font-size) !important;
	padding: var(--button-padding) !important;
	line-height: 1em !important;
	transition: all var(--button-transistion) !important;
	width: 100% !important;
}

.gform_wrapper input[type="submit"]:hover {
	padding: var(--button-padding) !important;
	border: var(--button-sec-border) !important;
	color: var(--button-sec-color-hover) !important;
	background-color: var(--button-sec-background-hover) !important;
}

.gform_wrapper input[type="submit"]:focus {
    outline: none !important;
    box-shadow: none !important;
}

.gform_wrapper ::placeholder {
	color: var(--form-field-placeholder-color) !important;
	opacity: 0.7 !important;
}

.gform_wrapper :-ms-input-placeholder {
	color: var(--form-field-placeholder-color) !important;
	opacity: 0.7 !important;
}

.gform_wrapper ::-ms-input-placeholder {
	color: var(--form-field-placeholder-color) !important;
	opacity: 0.7 !important;
}

.gform_wrapper .select-placeholder {
	color: rgba(9, 41, 42, 0.7) !important;
}

.gform_wrapper .gform-loader {
	position: absolute !important;
	right: 15px !important;
	border-block-end-color: var(--color-white) !important;
	border-inline-start-color: var(--color-white) !important;
    width: 30px !important;
    height: 30px !important;
    border-width: 2px !important;
}

.gform_wrapper .gform_validation_errors {
	border: none !important;
	box-shadow: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 0 !important;
	background-color: transparent !important;
}

.gform_wrapper .gform_validation_errors:focus {
    outline: none !important;
    box-shadow: none !important;
}

.gform_wrapper .gform_validation_errors > h2.gform_submission_error {
	display: none;
}

.gform_wrapper .gform_validation_errors > .custom_validation_error {
	font-family: var(--global-font-family) !important;
	font-size: var(--text-font-size-small) !important;
	line-height: 150% !important;
	color: var(--color-error) !important;
	text-transform: none !important;
}

.gform_wrapper .gform_validation_errors h2 span {
	display: none !important;
}

.gform_wrapper .gfield .gfield_validation_message,
.gform_wrapper .gfield .validation_message,
.gform_wrapper .gfield .gfield_description.validation_message {
	border: none !important;
	padding: 0 !important;
	color: var(--color-error) !important;
	background-color: transparent !important;
	width: fit-content;
	font-size: var(--text-font-size-smallest) !important;
}

.gform_wrapper .gfield_error [aria-invalid=true] {
	border-color: var(--color-error) !important;
	border-width: 2px !important;
}

.gform_wrapper .gform_confirmation_message {
	font-size: var(--text-font-size);
	font-weight: 700;
}

.gform_wrapper .gfield--type-section {
	padding: var(--spacing-md) 0 0 !important;
	border-block-end: none !important;
}

.gform_wrapper .gsection_title {
	font-size: var(--headline-h6-font-size);
}

.gform_wrapper .gsection_description {
	padding-top: 16px;
	font-size: var(--text-font-size-small);
}

.gform_wrapper .gfield_description {
	color: var(--color-petrol-900) !important;
	font-size: var(--text-font-size-smallest) !important;
}

.gform_wrapper .gform_drop_area {
	border-style: solid !important;
	border-width: 1px !important;
	border-color: var(--color-petrol-900) !important;
	border-radius: 0 !important;
}

.gform_wrapper .gform_drop_area::before,
.gform_wrapper .gform_drop_instructions {
	color: var(--color-petrol-900) !important;
}

.gform_wrapper .gform_button_select_files {
	background-color: transparent !important;
	box-shadow: none !important;
	color: var(--color-petrol-900) !important;
	border: 1px solid var(--color-petrol-900) !important;
	border-radius: 50px !important;
	outline: none !important;
}

.gform_wrapper .gfield_fileupload_progressbar_progress {
	background-color: var(--color-petrol-700) !important;
}

.gform_wrapper .gfield_fileupload_filesize,
.gform_wrapper .gfield_fileupload_progress_complete::after {
	color: var(--color-petrol-700) !important;
}

/*
regius application form (ersetzt Gravity Forms)
*/

/* Font überall: Labels, Inputs, Placeholder, Descriptions, Messages, Buttons */
.regius-application-form,
.regius-application-form *,
.regius-application-form input,
.regius-application-form select,
.regius-application-form textarea,
.regius-application-form label,
.regius-application-form .gfield_label,
.regius-application-form .gfield_description,
.regius-application-form .gsection_title,
.regius-application-form .gsection_description,
.regius-application-form .gform_drop_instructions,
.regius-application-form .gform_button_select_files,
.regius-application-form .regius-doc-filename,
.regius-application-form .regius-doc-remove,
.regius-application-form .custom_validation_error,
.regius-application-form .gfield_validation_message,
.regius-application-form .validation_message,
.regius-application-form .regius-submit-btn {
	font-family: var(--global-font-family) !important;
}

.regius-application-form input::placeholder,
.regius-application-form input::-webkit-input-placeholder,
.regius-application-form input::-moz-placeholder,
.regius-application-form input:-ms-input-placeholder,
.regius-application-form input::-ms-input-placeholder {
	font-family: var(--global-font-family) !important;
}

/* Validierungsfehler: rot, ohne Box, unter dem Feld */
.regius-application-form .gform_validation_errors {
	border: none !important;
	box-shadow: none !important;
	margin: 0 0 var(--form-field-gap, 1rem) 0 !important;
	padding: 0 !important;
	background-color: transparent !important;
	border-radius: 0 !important;
}

.regius-application-form .gform_validation_errors .custom_validation_error {
	color: var(--color-error) !important;
	background: none !important;
	border: none !important;
	padding: 0 !important;
	box-shadow: none !important;
	font-size: var(--text-font-size-smallest) !important;
}

.regius-application-form .gfield .gfield_validation_message,
.regius-application-form .gfield .validation_message,
.regius-application-form .gfield .gfield_description.validation_message,
.regius-application-form .gfield .gfield_description.gfield_validation_message {
	color: var(--color-error) !important;
	background-color: transparent !important;
	background: none !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin-top: 0.25em !important;
	font-size: var(--text-font-size-smallest) !important;
}

.regius-application-form.gform_wrapper .gform_fields {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--form-field-gap);
}

.regius-application-form.gform_wrapper .gfield {
	grid-column: 1 / -1;
}

.regius-application-form.gform_wrapper .regius-field-half {
	grid-column: auto;
}

.regius-application-form.gform_wrapper select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	padding-right: 24px;
	background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.292893 0.292893C0.683417 -0.097631 1.31658 -0.097631 1.70711 0.292893L5 3.58579L8.29289 0.292893C8.68342 -0.0976311 9.31658 -0.0976311 9.70711 0.292893C10.0976 0.683417 10.0976 1.31658 9.70711 1.70711L5.70711 5.70711C5.31658 6.09763 4.68342 6.09763 4.29289 5.70711L0.292893 1.70711C-0.0976311 1.31658 -0.0976311 0.683418 0.292893 0.292893Z' fill='rgba(17, 35, 55, 0.65)'/%3E%3C/svg%3E");
	background-position: right 12px center;
	background-size: 10px 6px;
	background-repeat: no-repeat;
}

@media (max-width: 767px) {
	.regius-application-form.gform_wrapper .gform_fields {
		grid-template-columns: 1fr;
	}
}

.regius-application-form.gform_wrapper .gfield--type-section,
.regius-application-form.gform_wrapper .gfield--type-file,
.regius-application-form.gform_wrapper .gfield--type-submit {
	grid-column: 1 / -1;
}

.regius-application-form.gform_wrapper .gfield--type-submit {
	margin-top: var(--spacing-md);
}

/* Datenschutz-Checkbox: Label sichtbar, Layout checkbox links / Text rechts */
.regius-application-form .regius-privacy-consent {
	padding-top: var(--spacing-md);
}

.regius-application-form .regius-privacy-consent .regius-privacy-label {
	display: flex;
	align-items: flex-start;
	gap: var(--spacing-sm);
	opacity: 1 !important;
	font-size: var(--text-font-size) !important;
	color: var(--color-petrol-900) !important;
	cursor: pointer;
}

.regius-application-form .regius-privacy-consent .regius-privacy-checkbox {
	flex-shrink: 0;
	width: 1.25em;
	height: 1.25em;
	margin: 6px 0 0 0;
	cursor: pointer;
	accent-color: var(--color-petrol-700);
}

.regius-application-form .regius-privacy-consent .regius-privacy-text {
	flex: 1;
	line-height: 1.4;
}

.regius-application-form .regius-privacy-consent .regius-privacy-text a {
	color: var(--text-color-dark);
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: auto;
	text-decoration-thickness: auto;
	text-underline-offset: auto;
	text-underline-position: from-font;
}

.regius-application-form .regius-document-uploads {
	display: flex;
	flex-direction: column;
	gap: var(--form-field-gap);
}

.regius-application-form .regius-doc-upload-wrap {
	display: flex;
	flex-direction: column;
	gap: var(--form-field-gap);
}

.regius-application-form .regius-doc-drop-target {
	position: relative;
	width: 100%;
	min-height: var(--spacing-xl);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: var(--spacing-xs);
}

.regius-application-form .regius-doc-kind-radios {
	display: flex;
	flex-wrap: wrap;
	row-gap: var(--spacing-xs);
	column-gap: var(--spacing-md);
	align-items: center;
	justify-content: center;
	width: 100%;
	margin-bottom: var(--spacing-xxs);
	font-size: var(--text-font-size-smallest);
	line-height: 1;
}

.regius-application-form .regius-doc-kind-option {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: var(--spacing-xxs);
	min-height: 1.5em;
	cursor: pointer;
	line-height: 1;
}

.regius-application-form .regius-doc-kind-option input[type="radio"] {
	margin: 0;
	flex: 0 0 auto;
	align-self: center;
	width: 1.125rem;
	height: 1.125rem;
	cursor: pointer;
	accent-color: var(--color-petrol-700);
	vertical-align: middle;
}

.regius-application-form .regius-doc-kind-option > span {
	display: inline-flex;
	align-items: center;
	line-height: 1.35;
}

@media (max-width: 767px) {
	.regius-application-form .regius-doc-kind-radios {
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: flex-start;
		justify-content: flex-start;
		row-gap: var(--spacing-xxs);
		column-gap: 0;
	}
}

.regius-application-form .regius-doc-item > .gfield_validation_message {
	position: relative;
	z-index: 2;
	margin-top: var(--spacing-xxs);
	width: 100%;
	text-align: center;
}

/* Gap nur zwischen Upload-Boxen, nicht vor der Beschreibung */
.regius-application-form .regius-doc-upload-boxes {
	display: flex;
	flex-direction: column;
}

.regius-application-form .regius-doc-upload-boxes .regius-doc-item {
	margin-bottom: var(--form-field-gap);
}

/* Descriptions (Geburtsdatum DD.MM.YYYY, Max. Dateigröße): Abstand nach oben 8px */
.regius-application-form .gfield .gfield_description:not(.validation_message):not(.gfield_validation_message),
.regius-application-form .regius-doc-upload-wrap .gfield_description {
	margin: 0;
	margin-top: calc(var(--form-field-gap) / 2 * -1);
}

.regius-application-form .gform_drop_area.regius-doc-item {
	position: relative;
	padding: var(--spacing-md);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: var(--spacing-lg);
}

.regius-application-form .gform_drop_area.regius-doc-item.regius-doc-hidden {
	display: none;
}

.regius-application-form .regius-doc-drop-target .regius-file-input {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.regius-application-form .gform_drop_area.regius-doc-item.has-file .regius-doc-drop-target .regius-file-input {
	pointer-events: none;
}

/* Nach Dateiwahl: Typ (Dokument/Foto) nicht mehr änderbar */
.regius-application-form .gform_drop_area.regius-doc-item.has-file .regius-doc-kind-radios {
	display: none;
}

.regius-application-form .gform_drop_area .regius-doc-upload-area {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.75em;
}

.regius-application-form .gform_drop_area.regius-doc-item.has-file .regius-doc-upload-area {
	display: none;
}

.regius-application-form .gform_drop_area .regius-doc-selected-area {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1em;
	width: 100%;
	max-width: 100%;
}

.regius-application-form .gform_drop_area .regius-doc-selected-area.regius-doc-hidden {
	display: none;
}

.regius-application-form .gform_drop_area.regius-doc-item.has-file .regius-doc-selected-area {
	display: flex;
}

.regius-application-form .gform_drop_area .regius-doc-filename {
	font-size: var(--text-font-size-smallest);
	color: var(--color-petrol-900);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	flex: 1;
	min-width: 0;
}

.regius-application-form .gform_drop_area .regius-doc-remove {
	background: transparent;
	border: 1px solid var(--color-petrol-900);
	border-radius: 50px;
	color: var(--color-petrol-900);
	font-size: var(--text-font-size-smallest);
	font-family: inherit;
	padding: 6px 16px;
	cursor: pointer;
	flex-shrink: 0;
}

.regius-application-form .gform_drop_area .regius-doc-remove:hover {
	background: var(--color-petrol-900);
	color: var(--color-white);
}

.regius-application-form .gform_drop_area .gform_drop_instructions {
	pointer-events: none;
	font-size: var(--text-font-size-smallest);
}

.regius-application-form .gform_drop_area .gform_button_select_files {
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 38px;
	padding: 0 20px;
	font-size: var(--text-font-size-smallest);
	font-family: inherit;
	line-height: 1em;
}

/* Submit-Button mit Loader */
.regius-application-form .regius-submit-btn {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	width: 100%;
	cursor: pointer;
	border: var(--button-sec-border);
	border-radius: var(--button-border-radius);
	background-color: var(--button-sec-background);
	color: var(--button-sec-color);
	font-size: var(--button-font-size);
	padding: var(--button-padding);
	line-height: 1em;
	transition: all var(--button-transistion);
	font-family: inherit;
}

.regius-application-form .regius-submit-btn:hover:not(:disabled) {
	border: var(--button-sec-border);
	color: var(--button-sec-color-hover);
	background-color: var(--button-sec-background-hover);
}

.regius-application-form .regius-submit-btn:focus {
	outline: none;
	box-shadow: none;
}

.regius-application-form .regius-btn-loader {
	display: none;
	width: 20px;
	height: 20px;
	border: 2px solid rgba(255, 255, 255, 0.3);
	border-top-color: var(--color-white);
	border-radius: 50%;
	animation: regius-spin 0.8s linear infinite;
	flex-shrink: 0;
}

.regius-application-form .regius-submit-btn.regius-loading .regius-btn-loader {
	display: block;
}

.regius-application-form .regius-submit-btn.regius-loading .regius-btn-text {
	opacity: 0.8;
}

@keyframes regius-spin {
	to { transform: rotate(360deg); }
}

/*
footer
*/

footer {
	position: fixed;
	width: 100%;
	bottom: 0;
	--module-gutter: var(--spacing-md);
}

footer .light {
	color: var(--color-blau-500) !important;
}

footer a {
	text-decoration: none !important;
}

footer .social .et_pb_code_inner {
	display: flex;
	align-items: center;
	gap: var(--spacing-sm);
}

@media (max-width: 1200px) {
	footer {
		position: relative;
	}
}

@media (max-width: 767px) {
	footer {
		--row-gutter-vertical: var(--spacing-md);
	}
}