/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/

@font-face {
	font-family: 'Neue Haas Grotesk 25 Thin';
	src: url('fonts/NeueHaasGroteskDisplay-25XThin-Web.woff2') format('woff2');
	font-weight: 200;
	font-style: normal;
}

@font-face {
	font-family: 'Neue Haas Grotesk 55 Roman';
	/* font-family:"Neue Haas Grotesk Disp W04_55R"; */
	src: url('fonts/84e77085-d635-4ced-9736-fbea6027ff05.woff2') format('woff2'),
		url('fonts/37ccc33f-38c2-4b1b-adb1-7842b57a9b50.woff') format('woff');
}

@font-face {
	font-family: 'Neue Haas Grotesk 65 Medium';
	/* font-family:"Neue Haas Grotesk Disp W04_65M"; */
	src: url('fonts/b0f06a93-70cb-46c4-a214-5050c3443812.woff2') format('woff2'),
		url('fonts/c4f1d9a2-1f03-44cd-8f25-64e3698567d1.woff') format('woff');
}

:root {
	--spacer-base: 8px;
	--spacer-xxs: calc(var(--spacer-base) * 0.5);
	--spacer-xs: calc(var(--spacer-base) * 1);
	--spacer-s: calc(var(--spacer-base) * 2);
	--spacer-m: calc(var(--spacer-base) * 3);
	--spacer-l: calc(var(--spacer-base) * 4);
	--spacer-xl: calc(var(--spacer-base) * 9);
	--spacer-xxl: calc(var(--spacer-base) * 14);

	/* --awb-typography1-font-family: 'Neue Haas Grotesk 55 Roman' !important;
	--awb-typography2-font-family: 'Neue Haas Grotesk 55 Roman' !important;
	--awb-typography3-font-family: 'Neue Haas Grotesk 55 Roman' !important;
	--awb-typography4-font-family: 'Neue Haas Grotesk 55 Roman' !important;
	--awb-typography5-font-family: 'Neue Haas Grotesk 55 Roman' !important;
	--awb-text-font-family: 'Neue Haas Grotesk 55 Roman' !important;
	--awb-fusion-font-family-typography: 'Neue Haas Grotesk 55 Roman' !important; */
}

/* Mobile S */
/* @media screen and (min-width: 393px) {
	:root {
		--spacer-base: 10px;
	}
} */

/* Tablet M */
@media screen and (min-width: 1024px) {
	:root {
		--spacer-base: 10px;
	}
}
/* Desktop L */
@media screen and (min-width: 1440px) {
	:root {
		--spacer-base: 12px;
	}
}

/* Desktop XL */
@media screen and (min-width: 1920px) {
	:root {
		--spacer-base: 16px;
	}
}

body {
	font-feature-settings: 'salt' on, 'ss01' on;
}

/* Site Padding Override */

html:not(.avada-has-site-width-percent) .page-template-default #main {
	padding: 0 var(--spacer-m) !important;
}

.module-header {
	/* max-width: 1580px; */
	padding: 0 30px !important;
	max-height: 50px;
	&.fusion-sticky-transition {
		border-radius: 6px;
		backdrop-filter: blur(27px);
	}
}
.module-header-mobile {
	margin: var(--spacer-l) 30px var(--spacer-xs) 30px !important;
	.fusion-menu {
		margin-top: var(--spacer-s);
	}
}

/* Margin Override for BG parallax effect */
.module-kontakt + .fusion-fullwidth {
	margin-top: 0 !important;
}

.fusion-fullwidth {
	.fusion-text > p,
	.post-content p {
		margin: 0;
	}
	&.module-personio {
		margin: var(--spacer-xl) 0;
		.fusion-title {
			margin-bottom: var(--spacer-m);
		}
	}
	&.module-hero {
		margin-bottom: var(--spacer-m);
		/* padding-top: 56.25%; */
		padding-top: calc(565 / 1368 * 100%);
		overflow: hidden;
		border-radius: 10px;
	}
	&.module-hero-text {
		padding: var(--spacer-m) !important;
		.fusion-title {
			margin-bottom: var(--spacer-m) !important;
		}
		.fusion-text {
			padding-top: var(--spacer-xxs);
		}
		.fusion-button {
			margin-top: var(--spacer-m);
		}
	}

	&.module-text-image {
		margin: var(--spacer-xl) 0;
		.fusion-title {
			margin: var(--spacer-s) 0 !important;
			font-size: 48px;
			line-height: 120%;
		}
		.fusion-button {
			margin-top: var(--spacer-m);
		}
		&.right .fusion-row {
			flex-direction: column-reverse;
		}
	}
	&.module-kontakt {
		margin: 0;
		padding: var(--spacer-xl) 0;
		background-position: center 20%;
		.fusion-title {
			margin: 0 0 var(--spacer-s) 0 !important;
		}
		.fusion-button {
			margin-top: var(--spacer-m);
		}
	}
	&.module-text {
		margin: var(--spacer-xl) 0;
		.fusion-title {
			margin-bottom: auto;
		}
		.fusion-text {
			padding-top: var(--spacer-xxs);
		}
		.fusion-button {
			margin-top: var(--spacer-m);
		}
	}
	&.module-zitat {
		margin: var(--spacer-xl) 0;
		.fusion-text {
			padding: 0 var(--spacer-s) var(--spacer-s) var(--spacer-s);
		}
	}
	&.module-kpi {
		margin: var(--spacer-xl) 0;
		background-position: center 20%;
		.fusion-title {
			font-size: 56px;
			line-height: 120%;
			margin-top: var(--spacer-m);
		}
	}
	&.module-formular {
		margin: var(--spacer-xl) 0;
		padding: var(--spacer-m);
		min-height: clamp(580px, 60vh, 680px) !important;
		.fusion-text {
			padding-top: var(--spacer-s);
		}
		iframe {
			border: 0;
			width: 100%;
			height: 100%;
			min-height: 80vh;
			overflow: hidden;
		}
		.fusion-lottie {
			position: absolute;
			left: -10px;
			bottom: -70px;
			z-index: -1;
			width: 30vh;
			max-height: 366px;
		}
	}
	&.module-cases {
		margin: var(--spacer-xl) 0;
		.fusion-text {
			padding-top: var(--spacer-xxs);
		}

		.module-case {
			margin-top: var(--spacer-m);
			:hover {
				background-color: var(--awb-color4);
			}
			.fusion-text {
				font-size: 16px;
				padding: var(--spacer-m);
				padding-bottom: 0;
				p {
					padding-top: var(--spacer-xs);
					line-height: 140%;
				}
			}
			.fusion-button {
				padding: var(--spacer-m);
				padding-bottom: 0;
				background: none;

				.button-icon-right {
					margin-left: var(--spacer-xxs);
					font-size: 12px;
				}
			}
			.fusion-image-element img {
				border-radius: 0;
			}
			.fusion-content-layout-column {
				padding-bottom: var(--spacer-m);
			}
		}
	}
	&.module-4-cards {
		margin: var(--spacer-xl) 0;

		.fusion-title {
			margin-bottom: var(--spacer-m) !important;
		}

		.fusion-content-boxes {
			display: grid !important;
			grid-template-columns: 1fr;
			gap: var(--spacer-s) !important;
			&::before {
				display: none !important;
			}
		}

		.content-box-column {
			width: 100%;
			* {
				text-align: left;
			}

			.content-box-wrapper {
				display: flex;
				flex-direction: column;
			}

			.content-container {
				margin-bottom: 0;
				margin-top: auto;
				padding-top: var(--spacer-m);
				text-align: left;
				font-size: 16px;
			}

			flex: 0 0 auto;
			text-align: left;
			border: 1px solid var(--awb-color2);
			border-radius: 10px;
			display: flex;
			padding: var(--spacer-m);
			margin-bottom: var(--spacer-xs) !important;
		}
	}
	&.module-slider {
		margin: var(--spacer-xl) 0;

		.fusion-title {
			margin-bottom: var(--spacer-m) !important;
		}

		/* slider-container */
		.slider-container .fusion-column-wrapper {
			width: 100%;
			position: relative;
			touch-action: pan-y;
			user-select: none;
			outline: none;
		}

		/* slider-track  */
		.fusion-content-boxes {
			display: flex;
			transition: transform 0.4s cubic-bezier(0.22, 0.61, 0.36, 1);
			will-change: transform;
			cursor: grab;
			user-select: none;
			align-items: stretch;

			.content-box-column:last-of-type {
				background-color: blueviolet;
			}
		}

		/* slide */
		.content-box-column {
			* {
				text-align: left;
			}
			&:not(.content-box-column-last):after {
				font-family: 'quipped' !important;
				content: '\e90d';
				color: var(--awb-color4);
				font-size: 40px;
				position: absolute;
				right: -6px;
				transform: translateX(100%);
			}

			.content-container {
				margin-bottom: 0;
				padding-top: var(--spacer-m);
				text-align: left;
			}
			flex: 0 0 auto;
			margin-right: 62px;
			border: 1px solid var(--awb-color2);
			border-radius: 10px;
			display: flex;
			padding: var(--spacer-m);
			justify-content: center;
			align-items: center;
			user-select: none;
			pointer-events: none;
			min-width: 0;
		}
	}
	&.module-karriere {
		margin: var(--spacer-xl) 0;
		border-radius: 10px;

		&::after {
			position: absolute;
			top: 0;
			right: 0;
			background: linear-gradient(90deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.4));
			width: 70%;
			height: 100%;
			z-index: 1;
			content: '';
			border-radius: 10px;
		}

		.fusion-layout-column {
			padding: var(--spacer-l);
		}

		.fusion-title {
			padding-bottom: var(--spacer-s);
			margin-bottom: auto;
		}
		.fusion-button {
			margin-top: var(--spacer-m);
		}
	}
	&.module-partner {
		margin: var(--spacer-m) 0 var(--spacer-xl) 0;
		padding: var(--spacer-xl) var(--spacer-m) !important;
		.fusion-gallery-container {
			gap: var(--spacer-m);
			display: flex;
			flex-direction: column;
			margin: var(--spacer-xxs) 0;
			justify-content: center;
			.fusion-grid-column {
				width: auto;
				position: relative !important;
				left: unset !important;
				top: unset !important;
			}
			.fusion-gallery-image {
				display: flex;
				justify-content: center;
				align-items: center;
			}
		}
	}
	&.module-list {
		margin: var(--spacer-xl) 0;

		/* .fusion-column-wrapper {
			padding-left: var(--spacer-xxl);
		} */

		.fusion-li-item {
			margin-bottom: var(--spacer-xs);
			padding: 0 0 var(--spacer-xs) 0;

			.fusion-li-item-content {
				margin-inline-start: var(--spacer-xs);
				display: inline-block;
			}
			.icon-wrapper {
				font-size: 4px;
				width: auto;
				margin-inline-end: 0;
				justify-content: flex-start;
			}
		}
	}

	&.module-kpi {
		.fusion-counters-box {
			margin-top: var(--spacer-m);
			margin-left: 0;

			.fusion-counter-box {
				padding: 0;
			}

			.content-box-counter {
				font-size: 100px;
			}
		}
		.counter-box-container {
			border-radius: 10px;
			text-align: left;
			padding: var(--spacer-l) !important;
		}
		.display-counter,
		.unit {
			font-family: 'Neue Haas Grotesk 25 Thin';
			line-height: 130px;
		}
	}
}

.post-content .fusion-image-element img {
	border-radius: 10px;
}

.fusion-footer {
	padding: 0 30px;
	#menu-footer {
		margin-bottom: var(--spacer-xxl);
		li {
			margin: 0 0 var(--spacer-s) 0;
		}
	}
	#menu-footer-subline {
		text-decoration: underline;
	}
}

/* Formidable */

.module-formular-overview {
	.fusion-column-wrapper {
		margin-top: var(--spacer-s);
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: var(--spacer-s) !important;
	}
	a {
		padding: var(--spacer-s);
		background-color: #fff;
		border-radius: 5px;
		display: flex;
		transition: none;
		margin-right: 14px;
		flex-direction: column;

		h4 {
			font-size: 20px;
		}

		span {
			font-size: 14px;
			line-height: 140%;
		}

		.quippedicon-arrow-optimized {
			/* font-family: 'quipped' !important;
			content: '\e906'; */
			font-size: 16px;
			margin-top: auto;
			transition: none;
			padding-top: var(--spacer-s);
		}

		&:hover {
			background-color: #000;
			color: #fff !important;
			* {
				color: #fff !important;
			}
			.quippedicon-arrow-optimized {
				color: #fff;
			}
		}
	}
}

.with_frm_style {
	/* .frm_inside_container {
		padding-top: 0;
	} */
	.dsgvo {
		font-size: 14px !important;
		line-height: 140% !important;
		.frm_checkbox {
			padding: 0 !important;
			background: none !important;
			input {
				width: 5px !important;
				min-width: 5px !important;
				height: 5px !important;
				padding: var(--spacer-xxs) !important;
			}
			label {
				font-size: 14px;
			}
		}
	}
	.frm_error {
		color: #d3281bff !important;
		font-size: 17px !important;
	}
	.frm_error_style {
		display: none;
	}
	label.frm_primary_label {
		/* left: var(--spacer-xs); */
		/* padding-top: var(--spacer-xxs); */
		margin-top: 3px;
	}
	.frm_label_float_top {
		/* padding-top: 0; */
		label.frm_primary_label {
			margin-left: var(--spacer-xs);
			font-size: 12px;
			opacity: 0.5;
			top: 18px;

			/* margin-top: -6px; */
		}
	}
	input {
		padding: var(--spacer-xs) !important;
	}

	/* .frm_button_submit {
		border: none !important;
		padding: var(--spacer-xxs) var(--spacer-xs) !important;
		&:hover {
			background-color: var(--awb-color4) !important;
			color: #000 !important;
		}
	} */
}

.frm_form_fields {
	fieldset {
		padding: 0 !important;
	}

	.frm_label_button_container {
		border: none !important;
		box-shadow: none !important;
	}
	.frm_button_submit {
		padding: var(--spacer-xs) var(--spacer-s) !important;
		border: 2px solid #000 !important;
		&:hover {
			background-color: var(--awb-color4) !important;
			color: #000 !important;
		}
	}

	.frm_prev_page {
		padding: var(--spacer-xs) var(--spacer-s) !important;
		border: 2px solid #000 !important;
		background-color: var(--awb-color4) !important;
		color: #000 !important;
		&:hover {
			background-color: #000 !important;
			color: #fff !important;
		}
	}

	.frm_section_heading {
		margin-top: 0 !important;
		padding-top: 0 !important;
	}

	.frm_input_group.frm_with_post > input {
		border-radius: 5px !important;
		margin: 8px 0 !important;
	}

	.frm_pos_inside.frm_section_spacing {
		padding: 0 !important;
		margin-bottom: var(--spacer-s) !important;
	}

	.frm_html_container {
		h3 {
			font-size: 20px;
		}
		p {
			font-size: 16px;
		}
	}
	.frm_opt_container {
		grid-gap: var(--spacer-xs) !important;
	}
	.frm_checkbox {
		background-color: #fff;
		padding: var(--spacer-xs);
		border-radius: 5px;

		input {
			border: 1px solid #000 !important;
		}
	}

	.frm_input_group.frm_with_boxes {
		background-color: rgba(255, 255, 255, 0.1) !important;
	}

	.frm_inline_box {
		font-size: 20px !important;
		border-radius: 5px !important;
		box-shadow: none !important;
		background: none !important;
		border: none !important;
	}

	.frm_pos_top.frm_section_spacing {
		margin-bottom: var(--spacer-xs) !important;
	}

	/* Progressbar */

	.frm_rootline > .frm_rootline_single {
		min-width: 20px;
		padding: 0;
	}

	ul.frm_page_bar {
		gap: var(--spacer-xs);
		li {
			flex: unset;
		}
	}
}

@media screen and (max-width: 400px) {
	.frm_forms {
		max-width: 98% !important;
	}
	.frm_form_fields {
		.frm_input_group {
			flex-wrap: wrap;
			.frm_inline_box:first-of-type {
				flex: 1 1 100%;
			}
		}
		.frm_opt_container {
			grid-template-columns: 1fr !important;
		}
	}
}
@media screen and (min-width: 401px) and (max-width: 600px) {
	.frm_form_fields {
		.frm_opt_container {
			grid-template-columns: 1fr 1fr !important;
		}
	}
}

/* Tablet M */
@media screen and (min-width: 768px) {
	.fusion-fullwidth {
		&.module-text-image {
			margin: var(--spacer-xl) 0;
			&.right .fusion-row {
				flex-direction: row;
			}
			.fusion-title {
				margin: 0 0 auto 0 !important;
			}
			.fusion-button {
				margin-top: var(--spacer-m);
			}
		}
		&.module-hero-text {
			.fusion-title {
				margin-bottom: 0 !important;
			}
		}
		&.module-list {
			.fusion-column-wrapper {
				padding-left: var(--spacer-xxl);
			}
		}
		&.module-text {
			margin: var(--spacer-xl) 0;
			.fusion-title {
				margin-bottom: auto;
			}
			.fusion-text {
				padding-top: var(--spacer-xxs);
			}
			.fusion-button {
				margin-top: var(--spacer-m);
			}
		}
		&.module-kpi {
			.fusion-counters-box {
				margin-left: var(--spacer-xxl);
				margin-top: var(--spacer-m);
				&:last-of-type {
					margin-top: 0;
					display: flex;
					> div {
						flex-grow: 2;
					}
				}
				.content-box-counter {
					font-size: 200px;
				}
			}
			.counter-box-container {
				border-radius: 10px;
				margin: 0 var(--spacer-xs) var(--spacer-xs) var(--spacer-xs);
				text-align: left;
				padding: var(--spacer-l) !important;
			}
			.display-counter,
			.unit {
				font-family: 'Neue Haas Grotesk 25 Thin';
				line-height: 130%;
			}
		}
		&.module-4-cards {
			.fusion-content-boxes {
				grid-template-columns: 1fr 1fr 1fr 1fr;
			}
		}
		&.module-slider {
			/* slider-container */
			.slider-container .fusion-column-wrapper {
				overflow: hidden;
			}
			/* slide */
			.content-box-column {
				&:not(.content-box-column-last):after {
					font-size: 50px;
				}
			}
		}
		&.module-cases {
			.module-case {
				margin-top: var(--spacer-xl);
			}
		}
		&.module-partner {
			.fusion-gallery-container {
				flex-direction: row;
			}
		}
		&.module-formular {
			iframe {
				min-height: 40vh;
			}
		}
	}
}
@media screen and (min-width: 600px) {
	.module-formular-overview {
		.fusion-column-wrapper {
			grid-template-columns: 1fr 1fr !important;
		}
		a {
			h4 {
				font-size: 20px;
			}

			span {
				font-size: 16px;
			}
		}
	}
}
html:has(body.page-template-blank) {
	/* width */
	::-webkit-scrollbar {
		width: 10px;
	}

	/* Track */
	::-webkit-scrollbar-track {
		background: rgba(255, 255, 255, 0.2);
		border-radius: 10px;
	}

	/* Handle */
	::-webkit-scrollbar-thumb {
		background: rgba(0, 0, 0, 0.2);
		border-radius: 10px;
	}

	#boxed-wrapper {
		margin-right: 10px;
	}
}
