	[class*="mb-"] { margin-bottom: 0; }
	[class*="pb-"] { padding-bottom: 0; }
	[class*="pt-"] { padding-top: 0; }
	[class*="gap-fluid-"] { gap: 0; }

	/* Margin Bottom */
	.mb-0 { margin-bottom: 0; }
	.mb-5 { margin-bottom: var(--calc-size-5); }
	.mb-10 { margin-bottom: var(--calc-size-10); }
	.mb-15 { margin-bottom: var(--calc-size-15); }
	.mb-20 { margin-bottom: var(--calc-size-20); }
	.mb-25 { margin-bottom: var(--calc-size-25); }
	.mb-30 { margin-bottom: var(--calc-size-30); }
	.mb-35 { margin-bottom: var(--calc-size-35); }
	.mb-40 { margin-bottom: var(--calc-size-40); }
	.mb-45 { margin-bottom: var(--calc-size-45); }
	.mb-50 { margin-bottom: var(--calc-size-50); }
	.mb-55 { margin-bottom: var(--calc-size-55); }
	.mb-60 { margin-bottom: var(--calc-size-60); }
	.mb-65 { margin-bottom: var(--calc-size-65); }
	.mb-70 { margin-bottom: var(--calc-size-70); }
	.mb-75 { margin-bottom: var(--calc-size-75); }
	.mb-80 { margin-bottom: var(--calc-size-80); }
	.mb-85 { margin-bottom: var(--calc-size-85); }
	.mb-90 { margin-bottom: var(--calc-size-90); }
	.mb-95 { margin-bottom: var(--calc-size-95); }
	.mb-100 { margin-bottom: var(--calc-size-100); }
	.mb-110 { margin-bottom: var(--calc-size-110); }
	.mb-120 { margin-bottom: var(--calc-size-120); }
	.mb-130 { margin-bottom: var(--calc-size-130); }
	.mb-140 { margin-bottom: var(--calc-size-140); }
	.mb-150 { margin-bottom: var(--calc-size-150); }
	.mb-160 { margin-bottom: var(--calc-size-160); }
	.mb-170 { margin-bottom: var(--calc-size-170); }
	.mb-180 { margin-bottom: var(--calc-size-180); }
	.mb-190 { margin-bottom: var(--calc-size-190); }
	.mb-200 { margin-bottom: var(--calc-size-200); }
	

	/* Padding Bottom */
	.pb-0 { padding-bottom: 0; }
	.pb-5 { padding-bottom: var(--calc-size-5); }
	.pb-10 { padding-bottom: var(--calc-size-10); }
	.pb-15 { padding-bottom: var(--calc-size-15); }
	.pb-20 { padding-bottom: var(--calc-size-20); }
	.pb-25 { padding-bottom: var(--calc-size-25); }
	.pb-30 { padding-bottom: var(--calc-size-30); }
	.pb-35 { padding-bottom: var(--calc-size-35); }
	.pb-40 { padding-bottom: var(--calc-size-40); }
	.pb-45 { padding-bottom: var(--calc-size-45); }
	.pb-50 { padding-bottom: var(--calc-size-50); }
	.pb-55 { padding-bottom: var(--calc-size-55); }
	.pb-60 { padding-bottom: var(--calc-size-60); }
	.pb-65 { padding-bottom: var(--calc-size-65); }
	.pb-70 { padding-bottom: var(--calc-size-70); }
	.pb-75 { padding-bottom: var(--calc-size-75); }
	.pb-80 { padding-bottom: var(--calc-size-80); }
	.pb-85 { padding-bottom: var(--calc-size-85); }
	.pb-90 { padding-bottom: var(--calc-size-90); }
	.pb-95 { padding-bottom: var(--calc-size-95); }
	.pb-100 { padding-bottom: var(--calc-size-100); }
	.pb-110 { padding-bottom: var(--calc-size-110); }
	.pb-120 { padding-bottom: var(--calc-size-120); }
	.pb-130 { padding-bottom: var(--calc-size-130); }
	.pb-140 { padding-bottom: var(--calc-size-140); }
	.pb-150 { padding-bottom: var(--calc-size-150); }
	.pb-160 { padding-bottom: var(--calc-size-160); }
	.pb-170 { padding-bottom: var(--calc-size-170); }
	.pb-180 { padding-bottom: var(--calc-size-180); }
	.pb-190 { padding-bottom: var(--calc-size-190); }
	.pb-200 { padding-bottom: var(--calc-size-200); }

	/* Padding Top */
	.pt-0 { padding-top: 0; }
	.pt-5 { padding-top: var(--calc-size-5); }
	.pt-10 { padding-top: var(--calc-size-10); }
	.pt-15 { padding-top: var(--calc-size-15); }
	.pt-20 { padding-top: var(--calc-size-20); }
	.pt-25 { padding-top: var(--calc-size-25); }
	.pt-30 { padding-top: var(--calc-size-30); }
	.pt-35 { padding-top: var(--calc-size-35); }
	.pt-40 { padding-top: var(--calc-size-40); }
	.pt-45 { padding-top: var(--calc-size-45); }
	.pt-50 { padding-top: var(--calc-size-50); }
	.pt-55 { padding-top: var(--calc-size-55); }
	.pt-60 { padding-top: var(--calc-size-60); }
	.pt-65 { padding-top: var(--calc-size-65); }
	.pt-70 { padding-top: var(--calc-size-70); }
	.pt-75 { padding-top: var(--calc-size-75); }
	.pt-80 { padding-top: var(--calc-size-80); }
	.pt-85 { padding-top: var(--calc-size-85); }
	.pt-90 { padding-top: var(--calc-size-90); }
	.pt-95 { padding-top: var(--calc-size-95); }
	.pt-100 { padding-top: var(--calc-size-100); }
	.pt-110 { padding-top: var(--calc-size-110); }
	.pt-120 { padding-top: var(--calc-size-120); }
	.pt-130 { padding-top: var(--calc-size-130); }
	.pt-140 { padding-top: var(--calc-size-140); }
	.pt-150 { padding-top: var(--calc-size-150); }
	.pt-160 { padding-top: var(--calc-size-160); }
	.pt-170 { padding-top: var(--calc-size-170); }
	.pt-180 { padding-top: var(--calc-size-180); }
	.pt-190 { padding-top: var(--calc-size-190); }
	.pt-200 { padding-top: var(--calc-size-200); }

	/* Gap Fluid */
	.gap-fluid-0 { gap: 0; }
	.gap-fluid-5 { gap: var(--calc-size-5); }
	.gap-fluid-10 { gap: var(--calc-size-10); }
	.gap-fluid-15 { gap: var(--calc-size-15); }
	.gap-fluid-20 { gap: var(--calc-size-20); }
	.gap-fluid-25 { gap: var(--calc-size-25); }
	.gap-fluid-30 { gap: var(--calc-size-30); }
	.gap-fluid-35 { gap: var(--calc-size-35); }
	.gap-fluid-40 { gap: var(--calc-size-40); }
	.gap-fluid-45 { gap: var(--calc-size-45); }
	.gap-fluid-50 { gap: var(--calc-size-50); }
	.gap-fluid-55 { gap: var(--calc-size-55); }
	.gap-fluid-60 { gap: var(--calc-size-60); }
	.gap-fluid-65 { gap: var(--calc-size-65); }
	.gap-fluid-70 { gap: var(--calc-size-70); }
	.gap-fluid-75 { gap: var(--calc-size-75); }
	.gap-fluid-80 { gap: var(--calc-size-80); }
	.gap-fluid-85 { gap: var(--calc-size-85); }
	.gap-fluid-90 { gap: var(--calc-size-90); }
	.gap-fluid-95 { gap: var(--calc-size-95); }
	.gap-fluid-100 { gap: var(--calc-size-100); }
	.gap-fluid-110 { gap: var(--calc-size-110); }
	.gap-fluid-120 { gap: var(--calc-size-120); }
	.gap-fluid-130 { gap: var(--calc-size-130); }
	.gap-fluid-140 { gap: var(--calc-size-140); }
	.gap-fluid-150 { gap: var(--calc-size-150); }
	.gap-fluid-160 { gap: var(--calc-size-160); }
	.gap-fluid-170 { gap: var(--calc-size-170); }
	.gap-fluid-180 { gap: var(--calc-size-180); }
	.gap-fluid-190 { gap: var(--calc-size-190); }
	.gap-fluid-200 { gap: var(--calc-size-200); }

	.gap-fix-8 {gap: .5rem;}
	.gap-fix-16 {gap: 1rem;}
	.gap-fix-24 {gap: 1.5rem;}
	.gap-fix-32 {gap: 2rem;}
	.gap-fix-48 {gap: 3rem;}
	.gap-fix-96 {gap: 6rem;}
	.gap-fix-144 {gap: 9rem;}

	.gap-em-0-15 {gap: .15em;}
	.gap-em-0-25 {gap: .25em;}
	.gap-em-0-5 {gap: .5em;}
	.gap-em-0-75 {gap: .75em;}
	.gap-em-1 {gap: 1em;}

/* END SPACING */

.vc_section {
	padding-left: 0; padding-right: 0;
	position: relative;  z-index: 100;
	margin: 0 auto;
	overflow: hidden; overflow-x: clip; overflow-y: visible;
}
.vc_section:not([class*="pt-"]) {padding-top: var(--calc-size-55);}
.vc_section:not([class*="pb-"]) {padding-bottom: var(--calc-size-55);}
.vc_section:first-child:not([class*="pt-"]) {padding-top: var(--calc-size-110);}
.vc_section:last-child:not([class*="pb-"]) {padding-bottom: var(--calc-size-110);}

.vc_row {
	--def-row-gap: var(--calc-size-50);
	--def-row-half-gap: calc(var(--def-row-gap) / 2);
	--def-row-gap-margin: calc(var(--def-row-half-gap) * -1);
	--def-row-gap-padding: var(--def-row-half-gap);
	--def-row-gap-mobile: var(--def-row-gap);
  margin-left: 0;
  margin-right: 0;
	/* padding-top: var(--calc-size-96); 
	padding-bottom: var(--calc-size-96);  */
	position: relative;  z-index: 100;
}

.vc_inner {--def-row-gap: var(--calc-size-50);}
.vc_row:not(.vc_inner) {overflow: hidden; overflow-x: clip; overflow-y: visible; background: var(--colors-white);}
.templatera_shortcode > .vc_row:not(.vc_inner) {overflow: visible; overflow-x: visible;}

.vc_row_parent:not([class*="pt-"]) {padding-top: var(--calc-size-70);}
.vc_row_parent:not([class*="pb-"]) {padding-bottom: var(--calc-size-70);}
.vc_row_parent:not([class*="pt-"]):first-child {padding-top: var(--calc-size-90);}

.vc_row_parent.row-with-bg:not([class*="pt-"]):not(.vc_row_layout_box) {padding-top: var(--calc-size-70);}
.vc_row_parent.row-with-bg:not([class*="pb-"]):not(.vc_row_layout_box) {padding-bottom: var(--calc-size-70);}
.vc_row_parent.row-with-bg:not([class*="mb-"]):last-child {margin-bottom: var(--calc-size-70);}
.vc_row_parent.row-with-bg + .vc_row_parent:not(.row-with-bg):not([class*="pt-"]):not(.vc_row_layout_box) {padding-top: var(--calc-size-70);}

.vc_row.with-top-border {border-top: solid 1px #000;}


.vc_row.vc_inner:not([class*="pb-"]) {padding-bottom: var(--calc-size-55);}
.vc_row.vc_inner:not([class*="pb-"]):last-child {padding-bottom: 0;}

/* with-abs-image */
.vc_row.with-abs-image {padding-bottom: 0;}
.vc_row.with-abs-image .wpb_column:last-child .wpb_single_image {margin-right: calc(var(--wrapper-side-padding) * -1);}
.vc_row.with-abs-image .wpb_column:last-child .wpb_single_image img {width: 65%;  margin-left: auto;  display: block;}

.wpb_button:not([class*="mb-"]):not(:last-child), 
.wpb_content_element:not([class*="mb-"]):not(:last-child), 
.vc_btn3-container:not([class*="mb-"]):not(:last-child) {margin-bottom: var(--calc-size-25);}
.vc_btn3-container:not([class*="mb-"]):last-child {margin-bottom: 0;}

.wpb_single_image:not([class*="mb-"]):not(:last-child) {margin-bottom: var(--calc-size-25);}

.wpb_content_element + .vc_btn3-container, .vc_custom_heading + .vc_btn3-container {margin-top: var(--calc-size-35);}


@media screen and (max-width: 767px) {
	.vc_row {--def-row-gap-mobile: var(--wrapper-side-padding);}
}

.vc_column_container > .vc_column-inner,
.vc_row-no-padding .vc_column_container > .vc_column-inner {
  padding-left: var(--def-row-gap-padding);
  padding-right: var(--def-row-gap-padding);
}

.as-vc_row_wrapper {
	display: flex; 
	margin-left: var(--def-row-gap-margin); 
	margin-right: var(--def-row-gap-margin); 
	flex-wrap: wrap; flex-grow: 1;
	min-width: 0;
}
.vc_row-o-content-middle .as-vc_row_wrapper {align-items: center;}
.vc_row-o-content-bottom .as-vc_row_wrapper {align-items: flex-end;}

.as-row-gap_fluid .as-vc_row_wrapper, .as-row-gap_fixed .as-row-gap_fluid .as-vc_row_wrapper {
	--def-fluid-gap-vw: calc(var(--rem-to-px) / 2 / var(--clamp_vw_devider) * 100); 
	--def-row-gap-margin: clamp(var(--def-row-half-gap) * -1, var(--def-fluid-gap-vw) * 1vw * -1, 1rem * -1);
	--def-row-gap-padding: clamp(1rem, var(--def-fluid-gap-vw) * 1vw, var(--def-row-half-gap));
	--def-row-gap-mobile: clamp(var(--wrapper-side-padding), var(--def-fluid-gap-vw) * 2 * 1vw, var(--def-row-gap));
}
.as-row-gap_fixed .as-vc_row_wrapper {
	--def-row-half-gap: calc(var(--def-row-gap) / 2);
	--def-row-gap-margin: calc(var(--def-row-half-gap) * -1);
	--def-row-gap-padding: var(--def-row-half-gap);
	--def-row-gap-mobile: var(--def-row-gap);
}

.as-row-gap_0rem, .as-row-gap_0rem .vc_inner, .vc_row .vc_inner.as-row-gap_0rem {--rem-to-px: 0; --def-row-gap: 0rem;}
.as-row-gap_2rem, .as-row-gap_2rem .vc_inner, .vc_row .vc_inner.as-row-gap_2rem {--rem-to-px: 32; --def-row-gap: 2rem;}

/* @media screen and (max-width: 900px) { */
@media screen and (max-width: 767px) {
	.as-vc_row_wrapper {
		/* gap: var(--def-row-gap-mobile); */
		gap: var(--calc-size-35);
	}
	.as-vc_row_wrapper:has(.vc_col-sm-2):has(.vc_col-sm-8) {gap: 0;}
}

.vc_row_parent.bg-dark, .vc_row_layout_box > .content-wrapper {background: var(--colors-dark-accent);}
.vc_row_parent.bg-grey, .vc_row_layout_box > .content-wrapper {background: var(--colors-grey);}
.vc_row_parent.bg-white {background: var(--colors-white);}
.vc_row_parent.no-bg-section, .vc_row_parent.vc_row_layout_box {background: none;}

.vc_row.row_templarera_wrapper {padding-top: 0!important; padding-bottom: 0!important; background: none;}
.vc_parallax-inner .para-image {display: block; width: 100%; height: 100%; opacity: 0!important;}
.vc_parallax-inner .para-image img {display: block; width: 100%; height: 100%; object-fit: cover;}
.vc_row.vc_parallax .vc_parallax-inner {top: 0 !important; height: 100%!important;	background-attachment: fixed; background-position: 50% 50%;}
.full-width-image * {display: block; width: 100%;}


.as-grid {display: grid;}
.as-grid-def-gap:not([class*="gap-fluid-"]) {gap: var(--calc-size-20);}
.vc_column-inner .as-grid > .wpb_content_element {margin: 0;} /* asgrid class in wpb_wrapper */
.as-grid-auto-rows {grid-auto-rows: 1fr;}
.as-grid-align-top .vc_column-inner > .wpb_wrapper .wpb_text_column {align-items: flex-start;}
.as-grid-col-1, .as-grid-def-col-1 {grid-template-columns: repeat(1, minmax(0, 1fr))!important;}
.as-grid-col-2, .as-grid-def-col-2 {grid-template-columns: repeat(2, minmax(0, 1fr));}
.as-grid-col-3, .as-grid-def-col-3 {grid-template-columns: repeat(3, minmax(0, 1fr));}
.as-grid-col-4, .as-grid-def-col-4 {grid-template-columns: repeat(4, minmax(0, 1fr));}
.as-grid-col-5, .as-grid-def-col-5 {grid-template-columns: repeat(5, minmax(0, 1fr));}
.as-grid-col-percentage {grid-template-columns: repeat(auto-fit, minmax(0, calc(33.33% - 9px))); justify-content: center;}

.def-grid-boxes {justify-items: center; margin: 0 auto;}
.def-grid-box {width: 100%;}
.grid-box-inner {}
.grid-box-top {}
.grid-box-content {}

img.def-icon, svg.def-icon, .def-icon img, .def-icon svg {height: clamp(70px, 5.2vw, 100px); width: auto;}



@media (prefers-reduced-motion: no-preference) {
	/* simple animations */
	.fade-in {opacity: 0; }
	.slide-from-bottom {transform: translateY(1rem); transform: translateY(var(--calc-size-5)); will-change: transform;}
	.slide-from-top {transform: translateY(-1rem); will-change: transform;}
	.slide-from-left {transform: translateX(-2rem); will-change: transform;}
	.slide-from-right {transform: translateX(2rem); will-change: transform;}
	.is_inview.fade-in {opacity: 1; transition: opacity .8s ease;}
	.is_inview.slide-from-bottom,
	.is_inview.slide-from-top {transform: translateY(0); transition: opacity .8s ease, transform .6s cubic-bezier(0.260, 0.860, 0.440, 0.985);}
	.is_inview.slide-from-left, .is_inview.slide-from-right {transform: translateX(0);transition: opacity .8s ease, transform .6s cubic-bezier(0.260, 0.860, 0.440, 0.985);}
	.is_inview.fade-in.slide-from-bottom, .is_inview.fade-in.slide-from-top, .is_inview.fade-in.slide-from-left, .is_inview.fade-in.slide-from-right {transition: opacity .8s ease, transform .6s cubic-bezier(0.260, 0.860, 0.440, 0.985);}
	.is_inview.delay-0-1s {transition-delay: .1s!important;}
	.is_inview.delay-0-2s {transition-delay: .2s!important;}
	.is_inview.delay-0-3s {transition-delay: .3s!important;}
	.is_inview.delay-0-4s {transition-delay: .4s!important;}
	.is_inview.delay-0-5s {transition-delay: .5s!important;}
	.is_inview.delay-0-6s {transition-delay: .5s!important;}
	.is_inview.delay-0-7s {transition-delay: .7s!important;}
	.is_inview.delay-0-8s {transition-delay: .8s!important;}
	.is_inview.delay-0-9s {transition-delay: .9s!important;}
	.is_inview.delay-1-0s {transition-delay: 1s!important;}

	.def-grid-box.animate_on_scroll {opacity: 0; transform: translateY(2rem); will-change: transform;}
	.topAnimsStart .def-grid-box.animate_on_scroll {transition: opacity .8s ease, transform .6s cubic-bezier(0.260, 0.860, 0.440, 0.985);}
	.def-grid-box.is_inview {opacity: 1; transform: translateY(0);}

}

@media (prefers-reduced-motion: no-preference) and (min-width: 901px) {
	.as-grid-def-col-3 .def-grid-box.animate_on_scroll:nth-child(3n+2) {transition-delay: .3s;}
	.as-grid-def-col-3 .def-grid-box.animate_on_scroll:nth-child(3n) {transition-delay: .6s;}
	.as-grid-def-col-2 .def-grid-box.animate_on_scroll:nth-child(even) {transition-delay: .3s;}
}


/* buttons */ 
.as-button {display: flex; justify-content: flex-start;}
.vc_btn3-center {justify-content: center;}
.vc_btn3-right {justify-content: flex-end;}

.as-button a, .wpb_content_element:not(.google-map-container) button, button.wpcf7-submit {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: inherit;
  font-size: inherit;
  font-weight: var(--weight-medium);
  line-height: 138%;
  border: none;
  border-radius: 0;
  padding: 0.5em 2.25em;
	min-width: 13.75rem;
  background: var(--colors-accent);
  color: var(--colors-white);
  cursor: pointer;
	transition: ease;
  transition-duration: .3s;
  transition-property: color, box-shadow, background;
	gap: .5rem;
	text-decoration: none;
	font-size: 1rem;
}
.vc_btn3-full-width a {justify-content: center; flex-grow: 1;}

.as-button.as-button-lg a {font-size: clamp(1rem, 1.3889vw, 1.25rem); line-height: 190%;  padding-top: 0;  padding-bottom: 0;}

@media only screen and (min-width: 1441px) {
		.as-button a, .wpb_content_element:not(.google-map-container) button, button.wpcf7-submit {font-size: clamp(1rem, 0.624rem + 0.4175vw, 1.125rem);}
		.as-button.as-button-lg a {font-size: clamp(1.25rem, 0.4979rem + 0.8351vw, 1.5rem);}
}

.bg-dark .as-button:not(.as-button-secondary) a, .bg-dark .wpb_content_element:not(.google-map-container) button, .bg-dark button.wpcf7-submit {
	/* background: var(--colors-mid-accent); */
}

@media (min-width: 768px) and (max-width: 1680px) {
	.as-button a, .wpb_content_element:not(.google-map-container) button, button.wpcf7-submit {
		/* font-size: clamp(1rem, 0.5821rem + 0.7421vw, 1.25rem); */
	}
}


.as-button.as-button-secondary a, .wpb_content_element:not(.google-map-container) .as-button.as-button-secondary button, button.wpcf7-submit.as-button-secondary {
	background: var(--colors-white);
  color: var(--colors-accent);
}


/* button/link hover */
@media screen and (hover) {

	
	.as-button a:hover, .wpb_content_element:not(.google-map-container) button:hover, .wpb_content_element:not(.google-map-container) button:hover, button.wpcf7-submit:hover
	{
		/* background: var(--colors-dark-accent); */
  	/* color: var(--colors-dark-accent); */
	}

	.bg-dark .as-button.as-button:not(.as-button-secondary) a:hover {
		/* background: var(--colors-white);
		color: var(--colors-mid-accent); */
	}

	.as-button.as-button-secondary a:hover, .wpb_content_element:not(.google-map-container) .as-button.as-button-secondary button:hover, button.wpcf7-submit.as-button-secondary:hover {
		/* background: var(--colors-grey); */
  	/* color: var(--colors-accent); */
	}

	.bg-dark .as-button.as-button-secondary a:hover, .bg-dark .wpb_content_element:not(.google-map-container) .as-button.as-button-secondary button:hover, .bg-dark button.wpcf7-submit.as-button-secondary:hover {
		/* background: none;
  	color: var(--colors-white);
		box-shadow: inset 0 0 0 1px var(--colors-white); */
	}

}


/* HERO //////////////////////////////// */
	
	.hero {background: var(--colors-dark-accent); position: relative; z-index: 40;}
	.hero {aspect-ratio: 2.345/1; aspect-ratio: 2.5/1;}
	.hero.small-height {aspect-ratio: 9.47/1;}
	.white-header .hero {margin-top: 6.25vw;}
	.hero_container {height: 100%; position: relative;}
	.hero_container .picture_container {height: 100%; width: 100%; position: fixed; left: 0; top: 0; overflow: hidden;  z-index: 1; backface-visibility: hidden;}
	.white-header .hero_container .picture_container {top: 6.25vw;}
	.hero .picture_container {aspect-ratio: 2.345/1;  aspect-ratio: 2.5/1; height: auto;}
	.hero.small-height .picture_container {aspect-ratio: 9.47/1;}
	.hero_container .picture_container picture {height: 100%;}
	.hero_container .picture_container picture img {height: 100%; width: 100%; object-fit: cover; object-position: top center;}
	.hero.small-height .picture_container picture img {object-position: center;}
	.hero_element {height: 100%;}
	.hero .s_texts {position: absolute;  width: 100%;  left: 0;  top: 0;  z-index: 100; }
	.hero .s_texts::before {content: ''; display: block; position: absolute; left: 0; top: 0; width: 30%; height: 100%; background: var(--colors-dark-accent);}
	.hero h1 {margin: .06em 0 .26em; hyphens: none;  word-wrap: normal;}
	.hero h4 {margin: 0 0 1.1em;}
	@media only screen and (min-width: 441px) and (max-width: 1440px) {
		.hero h4 {font-size: clamp(16px, 1.667vw, 24px);}
	}
	
	.s_texts_inner {width: fit-content; background: var(--colors-dark-accent); padding: 10.416vw 8.75vw 5vw 0; padding: 9.416vw 8.75vw 4vw 0;}


	.hero h1, .hero h4, .hero .as-button {
		opacity: 0; transform: translateY(.5rem);
	}
	.topAnimsStart .hero .picture_container picture {
		transform: scale(1.1);
		transition: transform 7s linear;
	}
	.topAnimsStart .hero h1, .topAnimsStart .hero h4, .topAnimsStart .hero .as-button {
		opacity: 1; transform: translateY(0);
		transition: opacity 1.5s ease, transform 1s ease; transition-delay: .1s;
	}
	.topAnimsStart .hero h4 {transition-delay: .3s;}
	.topAnimsStart .hero .as-button {transition-delay: .5s;}

/* END HERO //////////////////////////////// */

/* breadcrumb */
	.home .breadcrumb-wrapper {display: none;}
	.breadcrumb {}
	.breadcrumb ul {display: flex; gap: .5rem; list-style: none; white-space: nowrap; overflow: auto; width: fit-content;  margin: 0 auto;  max-width: 100%;}
	.breadcrumb li > a, .breadcrumb li > span {display: flex; align-items: center; gap: .5rem;}
	.breadcrumb li > a {}
	.breadcrumb li.hidden {display: none!important;}
	.breadcrumb li > a::after, .breadcrumb li:not(:last-child) > span::after {content: '/';	}


/* end breadcrumb */

/* slick global */
.slick-slider {position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none;  user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent;}
.slick-list {position: relative; display: block; overflow: hidden; overflow: clip; margin: 0; padding: 0;}
.slick-list:focus {outline: none;}
.slick-list.dragging {cursor: pointer; cursor: hand;}
/*.slick-slider .slick-track, .slick-slider .slick-list {-webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0);}*/
.slick-track {position: relative; top: 0; left: 0;display: block; /*margin-left: auto; margin-right: auto;*/}
.slick-track:before,.slick-track:after{display: table; content: '';}
.slick-track:after{clear: both;}
.slick-loading .slick-track{visibility: hidden;}
.slick-slide {display: none; float: left; height: 100%; min-height: 1px;}
.slick-slide:focus {outline: none;}
/* .slick-slide:focus-visible {outline: 2px solid var(--colors-semantic-highlight-primary);  outline-offset: 4px;} */
[dir='rtl'] .slick-slide{float: right;}
.slick-slide img{display: block; margin: 0 auto;}
.slick-slide.slick-loading img{display: none;}
.slick-slide.dragging img{pointer-events: none;}
.slick-initialized .slick-slide{display: block;}
.slick-loading .slick-slide{visibility: hidden;}
.slick-vertical .slick-slide{display: block; height: auto; border: 1px solid transparent;}
ul.slick-dots {position: absolute;  width: 100%; bottom: clamp(40px, 2.6vw, 50px); display: flex; gap: 21px; padding: 0; margin: 0; list-style: none; text-align: center; z-index: 100; justify-content: center;	align-items: center;}
ul.slick-dots li {}

ul.slick-dots li button {cursor: pointer; text-indent: -1000em; min-width: 1px; width: 8px; height: 8px; margin: 0; position: relative; background: var(--colors-white); border: none; padding: 0; border-radius: 50%; transition: transform .2s ease;}
ul.slick-dots li.slick-active button {background: var(--colors-accent); top: 0; transform: scale(1.5);}
ul.slick-dots li:before {content: none;}

.slick-arrow {
	z-index: 40000;
  cursor: pointer;
  font-family: inherit;
  background: none;
  border: none;
  outline: none;
  padding: 0;
	text-indent: -1000em;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: clamp(30px, 2.87vw, 55px);
	height: auto;
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg width='57' height='42' viewBox='0 0 57 42' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M56.4995 21.909L2.06111 21.9966M2.06111 21.9966L21.8278 42.9027M2.06111 21.9966L21.7603 1.02702' stroke='white' stroke-width='3'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	transition: transform .3s ease;
	left: 2.6vw;
	aspect-ratio: 1 / 0.7636;
}

.slick-next { transform: translateY(-50%) rotate(180deg); left: auto; right: 2.6vw;}


.main_slider-slick {height: 100%; width: 100%; z-index: 1; backface-visibility: hidden; overflow: hidden; overflow: clip;}
.main_slider-slick .slick-list {height: 100% !important; z-index: 99;}
.main_slider-slick .slick-track {height: 100%; }
.main_slider-slick .slick-slide {height: 100%; position: relative;}

/* END slick global */




/* kontakt */


/* form elements */

input[type="text"], input[type="email"], input[type="tel"], textarea, select, input[type="file"] { 
	-webkit-border-radius: 0; 
	width: 100%; 
	font-family: var(--font-family-primary); 
	/* background: var(--colors-grey); */
	background: none;
  border: none;
	color: var(--colors-text-secondary); 
	font-weight: var(--weight-normal);
	font-size: var(--font-size-base); 
	/* height: var(--calc-size-90);
	line-height: var(--calc-size-90);  */
	padding: var(--calc-size-10) var(--calc-size-10) var(--calc-size-5);
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; 
	/* transition: all .3s ease; */
	box-shadow: none; border-radius: 0; position: relative;
	position: relative; z-index: 10;
	overflow: hidden; 
	border-bottom: dashed 1px #000;
}
input[type="text"]:focus-visible, input[type="email"]:focus-visible, input[type="tel"]:focus-visible, input[type="radio"]:focus-visible, input[type="checkbox"]:focus-visible, textarea:focus-visible /*, .focused input[type="text"], .focused input[type="email"], .focused  textarea*/ {
  outline: 1px dashed var(--colors-focus); outline-offset: -1px;
}  

input[type="text"], input[type="email"], textarea {-webkit-appearance: none;}
select {border: solid 1px #D9D9D9;}

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  transition: background-color 9999s ease-in-out 0s;
}

textarea {height: var(--calc-size-150); background: #F5F5F5; resize: none; display: block; line-height: 1.4; padding-top: var(--calc-size-10); border: none;}

::-webkit-input-placeholder {color: rgba(0, 0, 0, 0.53) !important; font-weight: var(--weight-light);}
::-moz-placeholder {color: rgba(0, 0, 0, 0.53) !important; font-weight: var(--weight-light);}
:-moz-placeholder {color: rgba(0, 0, 0, 0.53) !important; font-weight: var(--weight-light);}
:-ms-input-placeholder {color: rgba(0, 0, 0, 0.53) !important; font-weight: var(--weight-light);}

/* contact row */

.frm_error_style {
  background-color: #F2DEDE;
  border: 1px solid #EBCCD1;
  color: #B94A48;
 	margin: 0 0 var(--calc-size-35);
	padding: var(--calc-size-20);
}

.frm_error {color: #B94A48; flex-grow: 1; text-align: right; width: 100%;}

.frm_forms span.hide {display: none;}
.frm_forms h3 {color: var(--colors-text-secondary); font-size: var(--font-size-22); margin: 0 0 var(--calc-size-35);}
.frm_forms h4 {font-size: var(--font-size-18);}
.frm_forms label {line-height: 1.1;}
.frm_inside_container label {position: absolute; color: var(--colors-accent); left: var(--calc-size-15); top: var(--calc-size-15); z-index: 20;}
.frm_inside_container.frm_label_float_top label {display: none;}
.frm_form_field {position: relative;}
.frm_form_field:not([class*="mb-"]) {margin: 0 0 var(--calc-size-20);}
.frm_form_field.frm_inline_container {display: flex; gap: var(--calc-size-20); align-items: flex-end; flex-wrap: wrap;}
.frm_form_field.frm_inline_container.lastin-row {margin-top: var(--calc-size-54);}
.frm_form_field.frm_inline_container.select-container {align-items: center; align-self: flex-start;}
.frm_form_field.frm_inline_container .frm_primary_label, .frm_form_field.frm_right_container .frm_primary_label, .frm_form_field.frm_left_container .frm_primary_label {margin: 0; padding: 0;}
.frm_form_field.frm_inline_container input[type="text"], .frm_form_field.frm_inline_container input[type="email"], .frm_form_field.frm_inline_container select, .frm_with_box {width: auto; flex-grow: 1;}
.frm_form_field.frm_inline_container select {height: var(--calc-size-30); padding-top: 0;  padding-bottom: 0; color: var(--colors-accent);}
.frm_with_box input[type="text"], .frm_with_box input[type="email"], .frm_with_box select {width: 100%!important;}
.frm_description {font-size: var(--font-size-14); padding: var(--calc-size-40) 0 0; flex-grow: 1;  width: 100%;}
.accent-color .frm_primary_label {color: var(--colors-accent); line-height: 1.3;}
.radios-inline {}
.frm_opt_container {display: flex; flex-direction: column; gap: var(--calc-size-20);}
.radios-inline .frm_opt_container {flex-direction: row; gap: var(--calc-size-40); align-items: center; padding: 0!important;}

.frm_radio label, .frm_checkbox label {display: flex; align-items: center; gap: var(--calc-size-15); position: relative; z-index: 10; cursor: pointer; line-height: var(--line-height-base);}
.vertical_radio:not(.radios-inline) .frm_radio label, .vertical_radio:not(.radios-inline) .frm_checkbox label {line-height: 1.85;}
.privacy-check .frm_checkbox label {align-items: flex-start;  color: #6D6D6D;  font-size: 10px;  line-height: 1.4;}
.frm_radio input[type="radio"], .frm_checkbox input[type="checkbox"] {position: relative; flex-shrink: 0; cursor: pointer; border-radius: 0; appearance: none; margin: 0; padding: 0; background: #fff; border: solid 1px #000; transition: background .3s ease, border-color .3s ease; width: var(--calc-size-20); height: var(--calc-size-20); }
.rounded-radios .frm_radio input[type="radio"] {border-radius: 50%;}
.frm_radio input[type="radio"]:checked, .frm_checkbox input[type="checkbox"]:checked {background: rgba(173, 157, 131, 0.5); }

.wpb_content_element .frm_submit button.frm_final_submit {min-width: 1rem; width: 100%;}
.wpb_content_element .frm_submit button:not(.frm_final_submit) {min-width: 1px; background: none; color: var(--colors-accent); font-size: var(--font-size-14); }
.wpb_content_element .frm_submit button:not(.frm_prev_page):not(.frm_final_submit) {padding-right: 0;}
.wpb_content_element .frm_submit button.frm_prev_page {padding-left: 0;}
.wpb_content_element .frm_submit button.frm_final_submit + button {display: none;}

.frm_submit.frm_flex {flex-direction: row-reverse; justify-content: space-between; margin: var(--calc-size-40) 0 0; border-top: solid 1px #000; gap: var(--calc-size-20);}
.frm4 .frm_submit.frm_flex {flex-direction: row; margin: 0; border-top: none; gap: 0;}

.contactform-container {display: flex; gap: var(--calc-size-70); max-width: 90%; margin: 0 auto;}
.contactform-container .frm_forms  {flex-grow: 1; position: relative; overflow: hidden; z-index: 1;}




/* Makes the custom property animatable */
@property --progress {
  syntax: '<percentage>';
  inherits: false;
  initial-value: 25%;
}

#custom-step-indicator {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: var(--calc-size-90);
  font-family: sans-serif;
  color: #444;
	flex-shrink: 0; flex-grow: 0;
	background: #fff;
	position: relative; z-index: 10;
	gap: var(--calc-size-10);
}



#custom-step-indicator .step-circle {
  width: var(--calc-size-90);
  height: var(--calc-size-90);
  border-radius: 50%;
  border: 1px solid var(--colors-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  background: conic-gradient(
    #EAE6E0 var(--progress),  /* filled slice */
    #fff 0%                /* background slice */
  );
  transition: --progress 500ms ease-in-out; 
}

/* Donut hole via ::after */
/* #custom-step-indicator .step-circle::after {
  content: '';
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #ddd;
} */

#custom-step-indicator .step-number {
  font-size: var(--font-size-60);
  font-weight: bold;
  color: var(--colors-text-secondary);
  line-height: 1;
}


#custom-step-indicator .step-label, #custom-step-indicator .step-von {
  font-size: var(--font-size-14);
  letter-spacing: .2em;
  text-transform: uppercase;
	color: #000;
}
#custom-step-indicator .step-von {font-variant-caps: all-small-caps;}



h3.stepform-headline {max-width: 90%; margin-left: auto; margin-right: auto; padding-left: var(--calc-size-160);}










/* intro grid */
.intro_grid_container {margin: 0 auto; max-width: 83.5%;}
.intro_grid {display: grid;  grid-template-columns: repeat(3, minmax(0, 1fr));  gap: clamp(12px, 1.112vw, 16px);}
.intro_col { display: flex;  flex-direction: column;  gap: clamp(12px, 1.112vw, 16px);}
.intro_col:nth-child(odd) .def-grid-box {aspect-ratio: 1 / 1;}
.intro_col:nth-child(2) .def-grid-box:first-child {aspect-ratio: 100 / 131.9;}
.intro_col .def-grid-box:last-child {flex: 1;}
.intro_grid h3 {line-height: 1.0909; font-size: clamp(16px, 1.52778vw, 22px); text-align: center; position: absolute; width: 100%; left: 0; top: 1.4em; z-index: 20;}
.intro_grid a {position: absolute; width: 100%; height: 100%; left: 0; top: 0; z-index: 30;}
.intro_grid .vertical-align-middle h3 {top: 50%; transform: translateY(-50%);}
.intro_grid .def-grid-box:not(.dark-section) h3 {color: #4E4844;}
.intro_grid .def-grid-box-inner {position: relative; height: 100%;}
.intro_grid .grid-image {position: relative; z-index: 10; height: 100%;}
.intro_grid .grid-image video {height: 100%;  width: 100%;  object-fit: cover;}

/* tables */
.details-table {line-height: 1.3;}
.tables-container {margin: var(--calc-size-55) auto var(--calc-size-50); font-weight: var(--weight-medium); gap: var(--calc-size-80) var(--calc-size-20);}
.tables-container h5 {background: var(--colors-mid-accent); font-size: var(--font-size-20); padding: .25rem .75rem; margin: 0 0 1.75rem; color: var(--colors-text-secondary); letter-spacing: .12em ;}
.tables-container h6 {background: #EAE6E0; font-size: var(--font-size-16); padding: .375rem .5rem .375rem .75rem; color: var(--colors-text-secondary); margin: 1.75rem 0 0; }
.tables-container h6 span {color: var(--colors-text); }
.tables-container .table-footer {font-weight: var(--weight-normal); font-size: var(--font-size-14); padding: .2rem .75rem;}
.details-table-footer > div:first-child {font-size: var(--font-size-14);}
.details-table-footer {padding: .25rem .5rem 0 .75rem; gap: .5rem;}
.details-table-footer > div:first-child {color: var(--colors-accent);}
.details-table-footer > div:last-child, .details-table-row > div:last-child {flex-shrink: 0;}
.details-table-row {border-top: solid 1px #B1B2B2; padding: .4375rem .5rem .4375rem .75rem; gap: .5rem;}
.details-table-row:first-child {border-top: none;}
.details-table-row > div:first-child {color: var(--colors-accent);}

/* contact widget */
/* .contact-widget {position: fixed; right: 0; padding-right: var(--calc-size-20); padding-bottom: var(--calc-size-5); bottom: var(--calc-size-15); z-index: 99999; visibility: hidden; opacity: 0; } */
.contact-widget {position: absolute; right: 0; padding-right: var(--calc-size-20); padding-bottom: var(--calc-size-5); bottom: var(--calc-size-15); top: calc(100vh - var(--calc-size-90)); z-index: 99999; visibility: hidden; opacity: 0; transition: opacity .3s ease .5s, visibility .3s ease .5s;}
.contact-widget.overflow-x-hidden {overflow: hidden;}
.contact-widget.widget-fixed {position: fixed; top: 50%;}
/* .contact-widget.widget-fixed {position: fixed; top: 50%;} */
.topAnimsStart .contact-widget {visibility: visible; opacity: 1;}
.contact-widget-content {transform: translateX(200%); transition: transform 1.2s cubic-bezier(.19,1,.22,1) .5s;}
.topAnimsStart .contact-widget-content {transform: translateX(0);}
.contact-widget-image {box-shadow: 0 0 4px rgba(0,0,0,.25);  border-radius: 50%;}
.contact-widget picture {width: var(--calc-size-70); height: var(--calc-size-70); overflow: hidden; border-radius: 50%; }
.contact-widget picture img {width: 100%; height: 100%; object-fit: cover;}
.contact-widget-text {line-height: 1.428; font-size: var(--font-size-14); visibility: hidden; opacity: 0; transition: opacity .3s ease, visibility .3s ease; position: absolute; right: var(--calc-size-70); bottom: var(--calc-size-25);  z-index: 10;}
.contact-widget-text h6 {color: var(--colors-text-secondary); font-size: var(--font-size-16); margin: 0 0 .5em;}
.contact-widget-text a {color: var(--colors-accent);}
.contact-widget-text p:not(:last-child) {margin: 0 0 .5em;}
.contact-widget-text-inner {background: #fff; position: relative; z-index: 4; padding: var(--calc-size-20) var(--calc-size-50) var(--calc-size-20) var(--calc-size-20); width: max-content; margin-right: var(--calc-size-10);  box-shadow: 0 0 4px rgba(0,0,0,.25);}
@media screen and (hover) { .contact-widget-content:hover .contact-widget-text {visibility: visible; opacity: 1;} }
.contact-widget-text.active {visibility: visible; opacity: 1;}
.contact-widget-arrow {filter: drop-shadow(5px 0 4px rgba(0, 0, 0, 0.15)); width: var(--calc-size-10); height: var(--calc-size-15); position: absolute; right: 1px; bottom: var(--calc-size-5); /*background: #fff; box-shadow: 0 0 4px rgba(0,0,0,.25);*/ z-index: 5;}
.contact-widget-arrow-inner {width: var(--calc-size-10);  height: var(--calc-size-15);  clip-path: polygon(100% 50%, 0% 0%, 0% 100%);  background: #fff;  transform: rotate(0deg);}
a.go-to-top {visibility: hidden; opacity: 0; transition: all .5s ease .5s; position: absolute; transform: translateX(calc(var(--calc-size-10) * -1)); top: calc(var(--calc-size-34) * -1); left: calc(50% - var(--calc-size-24) / 2); width: var(--calc-size-24); height: var(--calc-size-24); background: #fff; border-radius: 50%; box-shadow: 0 0 4px rgba(0,0,0,.25); display: flex; align-items: center; justify-content: center;}
.topAnimsStart a.go-to-top {visibility: visible; opacity: 1;}
a.go-to-top svg {width: 50%; height: auto;}

/* advantage section */
.adv_grid_container {}
.adv_grid .adv-image {margin: 0 auto var(--calc-size-40); width: 38%; padding: var(--calc-size-40) 0 0;}
.adv_grid h3 {line-height: 1.5; padding: 0 1.35vw var(--calc-size-40);}
.adv_grid .adv_grid_item:nth-child(3) h3 {padding: 0 1vw var(--calc-size-40);}

/* projects slider */
.projects-content {margin: 0 auto; /*max-width: 480px;*/ width: 33.33%; min-width: 400px; padding: var(--calc-size-60) 0 var(--calc-size-70);}
.projects-slick .slick-list {overflow: visible;}
.projects-slick .slick-track {display: flex !important;}
.projects-element {position: relative; z-index: 1; transition: transform .3s ease;}
.projects-element.slick-active {z-index: 2; transform: scale(1.2);}
.projects-image {transition: all .3s ease;}
.projects-element.slick-active .projects-image {box-shadow: 0 0 var(--calc-size-15) rgba(0,0,0,0.7);}
.projects-overlay-source {display: none;}
.projects-overlay[hidden] {display: none !important;}
.projects-overlay {position: fixed; inset: 0; z-index: 99999; background: rgba(78, 72, 68, 0.97); display: flex; align-items: center; justify-content: center; padding: var(--calc-size-40); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .25s ease, visibility .25s ease;}
.projects-overlay.is-open {opacity: 1; visibility: visible; pointer-events: auto;}
.projects-overlay-inner {width: fit-content; max-width: 100%; display: flex; justify-content: center; align-items: center;}
.projects-overlay-content {width: auto; max-width: 70vw; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: #ffffff;}
.projects-overlay-figure {width: 100%; max-height: 70vh; display: flex; justify-content: center;}
.projects-overlay-inner picture {display: block; width: 100%;}
.projects-overlay-inner img {display: block; width: 100%; height: 100%; object-fit: cover; margin: 0 auto;}
.projects-overlay-header {width: 100%; margin: 0 0 var(--calc-size-25);}
.projects-overlay-header h3 {margin: 0; color: var(--colors-accent-on-dark); font-size: var(--font-size-24);}
.projects-overlay-description {width: 100%; text-align: left; padding-top: var(--calc-size-15);}
.projects-overlay-description p {margin: 0; font-size: var(--font-size-18); line-height: 1.5;}
.projects-overlay-close {border: 0; background: transparent; cursor: pointer; padding: 0;}
.projects-overlay-close svg {width: 28px; height: 27px;}
body.projects-overlay-open {overflow: hidden;}
.projects-description {text-align: center; padding: var(--calc-size-15) 0 0;}
.projects-description h3 {margin: 0; font-size: var(--font-size-14); font-weight: var(--weight-normal); transition: all .3s ease;}
.projects-element.slick-active .projects-description h3 {text-shadow: 0 0 var(--calc-size-15) rgba(0,0,0,0.7);}
.projects-description p {margin: 0; font-size: var(--font-size-14); }
.projects-description p.project-start {}


/* advantage section */
	.adv_grid .adv_grid_item {transition: all 1s cubic-bezier(0.260, 0.860, 0.440, 0.985) .1s;  transform: translateX(70%);  opacity: 0;}
	.adv_grid.is_inview .adv_grid_item {transform: translateX(0);  opacity: 1;}
	.adv_grid.is_inview .adv_grid_item:nth-child(2) {transition-delay: .2s;}
	.adv_grid.is_inview .adv_grid_item:nth-child(3) {transition-delay: .3s;}
	.adv_grid.is_inview .adv_grid_item:nth-child(4) {transition-delay: .4s;}
	.adv_grid.is_inview .adv_grid_item:nth-child(5) {transition-delay: .5s;}
	.adv_grid.is_inview .adv_grid_item:nth-child(6) {transition-delay: .6s;}


	
@media screen and (min-width: 768px) {
	/* with-abs-image */
	.vc_row.with-abs-image {padding-bottom: clamp(50px, 8.59vw, 165px);}
	.vc_row.with-abs-image-2 {padding-bottom: clamp(50px, 10.42vw, 200px);}
	.vc_row.with-abs-image .content-wrapper, .vc_row.with-abs-image .wpb_column {position: static;}
	.vc_row.with-abs-image .wpb_column:last-child .wpb_single_image {position: absolute;  right: 0;  bottom: 0;  width: 43%; margin: 0;}
	.vc_row.with-abs-image .wpb_column:last-child .wpb_single_image img {width: 100%; margin: 0;}

	

	/* projects slider */
	.projects-image[data-project-overlay-trigger="true"] {cursor: pointer;}
	
}


@media screen and (min-width: 1025px) {
	/* image-text-row */
	.image-text-row .content-wrapper {width: 92%; max-width: 1770px; line-height: 175%;}
	.image-text-row .wpb_column:first-child {width: 50%;}
	.image-text-row .wpb_column:last-child {width: 50%;}
	.image-text-row .wpb_column:first-child .vc_column-inner {padding-right: 0; height: 100%;}
	.image-text-row .wpb_column:last-child .vc_column-inner {padding-left: 0; height: 100%;}
	.image-text-row .wpb_column:last-child .vc_column-inner > .wpb_wrapper {height: 100%; padding: 3vw 4vw 3vw 2.77vw;}
	.image-text-row .wpb_text_column {padding-right: 1vw;}

	.image-text-row .wpb_column:first-child .vc_column-inner *:not(source) {height: 100%;}
	.image-text-row .wpb_column:first-child img {width: 100%; object-fit: cover; object-position: top center;}
}



@media screen and (min-width: 1280px) {
	.image-text-row .wpb_column:first-child {width: 57.34%;}
	.image-text-row .wpb_column:last-child {width: 42.66%;}

	.vc_row.narrow-content .vc_column-inner > .wpb_wrapper {margin: 0 auto; max-width: 83.5%;}
	.tables-container {max-width: 83.5%;}
	
}

@media screen and (min-width: 1440px) {
	.contactform-container {max-width: 59%; margin: 0 auto; min-height: 40vw;}
	h3.stepform-headline {max-width: 59%; margin-left: auto; margin-right: auto;}
}


@media screen and (min-width: 1441px) {
	.intro_grid {gap: clamp(16px, 1.042vw, 20px);}
	.intro_grid h3 {font-size: clamp(22px, 1.51vw, 29px);}
}





@media screen and (max-width: 1440px) {

	.adv_grid h3 {font-size: clamp(14px, 1.1112vw, 16px);}


}

@media screen and (max-width: 1280px) {
	.as-grid-col-lg-1 {grid-template-columns: repeat(1, minmax(0, 1fr));}
	.as-grid-col-lg-2 {grid-template-columns: repeat(2, minmax(0, 1fr));}
	.as-grid-col-lg-3 {grid-template-columns: repeat(3, minmax(0, 1fr));}

	.adv_grid h3 {hyphens: auto;		word-wrap: break-word;}
}




@media screen and (max-width: 1024px) and (min-width: 768px) {
	/* image-text-row */
	.image-text-row .content-wrapper {}
	.image-text-row .wpb_column:first-child {width: 100%;}
	.image-text-row .wpb_column:last-child {width: 100%;}
	.image-text-row .wpb_column:last-child .vc_column-inner > .wpb_wrapper {padding: 4vw 4vw 6vw; text-align: center;}
	.image-text-row h2 {text-align: center!important;}
	.image-text-row .as-button a {margin: 0 auto;}

}


@media screen and (max-width: 900px) {

	.as-grid-def-col-md-1:not([class*="as-grid-col"]) {grid-template-columns: repeat(1, minmax(0, 1fr)); grid-auto-rows: auto;}
	.as-grid-def-col-md-2:not([class*="as-grid-col"]) {grid-template-columns: repeat(2, minmax(0, 1fr));}

	.as-grid-col-md-1 {grid-template-columns: repeat(1, minmax(0, 1fr)); grid-auto-rows: auto;}
	.as-grid-col-md-2 {grid-template-columns: repeat(2, minmax(0, 1fr));}

	.vc_row_parent:not([class*="pt-"]):first-child {padding-top: var(--calc-size-60);}

	.frm_radio input[type="radio"], .frm_checkbox input[type="checkbox"] {width: 20px; height: 20px; }
	.frm_form_field.frm_inline_container select {height: 32px;}
	.frm_form_field.frm_inline_container.lastin-row {margin-top: 47px;}

	.contactform-container {flex-direction: column; max-width: 100%;}

	#custom-step-indicator {
		width: 90px; margin: 0 auto;
	}

	#custom-step-indicator .step-circle {
		width: 70px;
		height: 70px;
	}

	h3.stepform-headline {text-align: center !important; padding-left: 0; max-width: 100%;}

}




@media screen and (max-width: 767px) {

	.hero {aspect-ratio: inherit; padding-top: clamp(80px, 23.64vw, 104px);}
  .hero_container {height: auto;}
  .hero_element {height: auto; display: flex;  flex-direction: column-reverse;  width: 100%;}
  .hero .s_texts {position: relative;}
  .hero .picture_container {aspect-ratio: 2/1; height: auto; position: relative; transform: none!important; margin-top: -15px;}
	.s_texts_inner {width: 100%; padding: 0; outline: none; text-align: center; background: none;}
	.s_texts_inner .as-button a {margin: 0 auto;}
	.hero .s_texts::before {display: none;}

	.hero.small-height {aspect-ratio: auto;}
	.hero.small-height .picture_container {aspect-ratio: auto;}



	.white-header .hero {padding-top: clamp(80px, 23.64vw, 104px); margin-top: 0;}
	.white-header .hero_container .picture_container {top: 0;  margin-top: 0;}

	.as-grid-def-col-sm-1:not([class*="as-grid-col"]) {grid-template-columns: repeat(1, minmax(0, 1fr)); grid-auto-rows: auto;}
	.as-grid-def-col-sm-2:not([class*="as-grid-col"]) {grid-template-columns: repeat(2, minmax(0, 1fr));}

	.as-grid-col-sm-1 {grid-template-columns: repeat(1, minmax(0, 1fr)); grid-auto-rows: auto;}
	.as-grid-col-sm-2 {grid-template-columns: repeat(2, minmax(0, 1fr));}

	.intro_boxes {display: none;}

	/* tables */
	.tables-_container {max-width: 100%;}

	/* image-text-row */
	.image-text-row .content-wrapper {line-height: 162.5%;}
	.image-text-row {margin-left: calc(var(--wrapper-side-padding) * -1);  margin-right: calc(var(--wrapper-side-padding) * -1);}
	.image-text-row .as-vc_row_wrapper {gap: 0;}
	.image-text-row .wpb_column:last-child .vc_column-inner > .wpb_wrapper {padding: var(--calc-size-50) var(--wrapper-side-padding) var(--calc-size-70); text-align: center;}
	.image-text-row h2 {text-align: center!important;}
	.image-text-row .as-button a {margin: 0 auto;}

	.adv_grid {display: block; margin: 0 auto; width: 188px;}
	.adv_grid .slick-list {overflow: visible; margin: 0 -10px;}
	.adv_grid .adv-image {max-width: 80px;}
	.adv_grid h3 {font-size: 1rem; padding: 0 20px var(--calc-size-70) !important; word-wrap: normal;    hyphens: none;}
	.adv_grid .slick-track {display: flex; align-items: stretch;}
	.adv_grid .slick-track .slick-slide {background: none; padding: 0 10px; height: auto;}
	.adv_grid .slick-track .adv_grid_item_inner {height: 100%;}
	.adv_grid .adv-image {padding: var(--calc-size-50) 0 0; margin: 0 auto var(--calc-size-50);}

	/* projects slider */
	.projects-content {width: 100%; min-width: 1px; padding: var(--calc-size-35) 0 var(--calc-size-50); transform: translateX(50%); transition: transform .8s cubic-bezier(.47,1.64,.41,.8);}
	.projects-element.slick-active {transform: none;}
	.projects-element.slick-active .projects-description h3 {text-shadow: none;}
	.projects-description {padding: var(--calc-size-40) 0 0;}
	.projects-description h3 {font-size: var(--font-size-18); font-weight: var(--weight-medium); margin: 0 0 .8em;}
	.projects-description p {font-size: var(--font-size-16); line-height: 1.5;}

	.projects-content.is_inview {transform: translateX(0);}

}	


/* @media screen and (max-width: 767px) and (orientation: landscape) { */
@media screen and (max-width: 900px) and (orientation: landscape) {


}


@media screen and (max-width: 600px) {
	
	.as-grid-def-col-s-1:not([class*="as-grid-col"]) {grid-template-columns: repeat(1, minmax(0, 1fr)); grid-auto-rows: auto;}
	.as-grid-def-col-s-2:not([class*="as-grid-col"]) {grid-template-columns: repeat(2, minmax(0, 1fr));}

	.as-grid-col-s-1 {grid-template-columns: repeat(1, minmax(0, 1fr)); grid-auto-rows: auto;}
	.as-grid-col-s-2 {grid-template-columns: repeat(2, minmax(0, 1fr));}

	/* .frm_form_field.frm2.vertical_radio {grid-column: span 2/span 2!important;}
	.frm_form_field.frm7.select-container {grid-column: span 10/span 10!important;} */
	.frm_form_field.frm8.lastin-row {margin-top: 0;}

}


@media screen and (max-width: 500px) {
	.s_texts_inner br {display: none;}

	.tables-container, .tables-container h6 span {font-size: var(--font-size-14);}
}

@media screen and (max-width: 460px) {

	.as-grid-def-col-xs-1:not([class*="as-grid-col"]) {grid-template-columns: repeat(1, minmax(0, 1fr)); grid-auto-rows: auto;}
	
	.as-grid-col-xs-1 {grid-template-columns: repeat(1, minmax(0, 1fr)); grid-auto-rows: auto;}
	.as-grid-col-xs-2 {grid-template-columns: repeat(2, minmax(0, 1fr));}

}

@media screen and (max-width: 380px) {
	.as-grid-col-xxs-1 {grid-template-columns: repeat(1, minmax(0, 1fr)); grid-auto-rows: auto;}
	.as-grid-col-xxs-2 {grid-template-columns: repeat(2, minmax(0, 1fr));}

	h3.stepform-headline br {display: none;}

}

@media screen and (max-width: 359px) {
	
}