/* General
--------------------------------------------------------- */
body {
	line-height: 1.8;
}
.container.large {
	max-width: var(--container-width-l);
}
#page {
	background: var(--c-white);
}
@media (max-width: 1080px) {
	body .elementor-section.elementor-section-boxed > .elementor-container {
		flex-wrap: wrap !important;
	}
}
/* Scrollbar
--------------------------------------------------------- */
/* width */
::-webkit-scrollbar {
	width: 13px;
}
/* Track */
::-webkit-scrollbar-track {
	background: #333;
}
/* Handle */
::-webkit-scrollbar-thumb {
	background: var(--c-primary);
	border-radius: 13px;
	transition: all var(--a-timing-default) var(--a-easing-default);
}
/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
	background: var(--c-primary);
}

.mm-item-wrap {
	text-align:center;
}

/* Typography
--------------------------------------------------------- */
.h1, .h2, .h3, .h4, .h5, .h6, .elementor-widget-heading h1.elementor-heading-title, .entry-content h1, h1, .elementor-widget-heading h2.elementor-heading-title, .entry-content h2, h2, .elementor-widget-heading h3.elementor-heading-title, .entry-content h3, h3, .elementor-widget-heading h4.elementor-heading-title, .entry-content h4, h4, .elementor-widget-heading h5.elementor-heading-title, .entry-content h5, h5, .elementor-widget-heading h6.elementor-heading-title, .entry-content h6, h6 {
	line-height: 1;
}
.h1, .elementor-widget-heading.h1 h2.elementor-heading-title, .entry-content h2.h1, h2.h1, .elementor-widget-heading.h1 h3.elementor-heading-title, .entry-content h3.h1, h3.h1, .elementor-widget-heading.h1 h4.elementor-heading-title, .entry-content h4.h1, h4.h1, .elementor-widget-heading.h1 h5.elementor-heading-title, .entry-content h5.h1, h5.h1, .elementor-widget-heading.h1 h6.elementor-heading-title, .entry-content h6.h1, h6.h1, .elementor-widget-heading.h1 h1.elementor-heading-title, .entry-content h1, h1 {
	font-size: clamp(2.8rem, 0.343rem + 5.800vw, 9rem);
}
.h2, .elementor-widget-heading.h2 h1.elementor-heading-title, .entry-content h1.h2, h1.h2, .elementor-widget-heading.h2 h3.elementor-heading-title, .entry-content h3.h2, h3.h2, .elementor-widget-heading.h2 h4.elementor-heading-title, .entry-content h4.h2, h4.h2, .elementor-widget-heading.h2 h5.elementor-heading-title, .entry-content h5.h2, h5.h2, .elementor-widget-heading.h2 h6.elementor-heading-title, .entry-content h6.h2, h6.h2, .elementor-widget-heading.h2 h2.elementor-heading-title, .entry-content h2, h2 {
	font-size: clamp(2.4rem, 0.974rem + 3.400vw, 6rem);
}
.h3, .elementor-widget-heading.h3 h1.elementor-heading-title, .entry-content h1.h3, h1.h3, .elementor-widget-heading.h3 h2.elementor-heading-title, .entry-content h2.h3, h2.h3, .elementor-widget-heading.h3 h4.elementor-heading-title, .entry-content h4.h3, h4.h3, .elementor-widget-heading.h3 h5.elementor-heading-title, .entry-content h5.h3, h5.h3, .elementor-widget-heading.h3 h6.elementor-heading-title, .entry-content h6.h3, h6.h3, .elementor-widget-heading.h3 h3.elementor-heading-title, .entry-content h3, h3 {
	font-size: clamp(2.2rem, 1.487rem + 1.700vw, 4rem);
}
.h4, .elementor-widget-heading.h4 h1.elementor-heading-title, .entry-content h1.h4, h1.h4, .elementor-widget-heading.h4 h2.elementor-heading-title, .entry-content h2.h4, h2.h4, .elementor-widget-heading.h4 h3.elementor-heading-title, .entry-content h3.h4, h3.h4, .elementor-widget-heading.h4 h5.elementor-heading-title, .entry-content h5.h4, h5.h4, .elementor-widget-heading.h4 h6.elementor-heading-title, .entry-content h6.h4, h6.h4, .elementor-widget-heading h4.elementor-heading-title, .entry-content h4, h4 {
	font-size: clamp(2rem, 1.842rem + 0.400vw, 2.4rem);
}
.h5, .elementor-widget-heading.h5 h1.elementor-heading-title, .entry-content h1.h5, h1.h5, .elementor-widget-heading.h5 h2.elementor-heading-title, .entry-content h2.h5, h2.h5, .elementor-widget-heading.h5 h3.elementor-heading-title, .entry-content h3.h5, h3.h5, .elementor-widget-heading.h5 h4.elementor-heading-title, .entry-content h4.h5, h4.h5, .elementor-widget-heading.h5 h6.elementor-heading-title, .entry-content h6.h5, h6.h5, .elementor-widget-heading h5.elementor-heading-title, .entry-content h5, h5 {
	font-size: clamp(1.8rem, 1.455rem + 0.600vw, 1.4rem);
}
.h6, .elementor-widget-heading.h6 h1.elementor-heading-title, .entry-content h1.h6, h1.h6, .elementor-widget-heading.h6 h2.elementor-heading-title, .entry-content h2.h6, h2.h6, .elementor-widget-heading.h6 h3.elementor-heading-title, .entry-content h3.h6, h3.h6, .elementor-widget-heading.h6 h4.elementor-heading-title, .entry-content h4.h6, h4.h6, .elementor-widget-heading.h6 h5.elementor-heading-title, .entry-content h5.h6, h5.h6, .elementor-widget-heading h6.elementor-heading-title, .entry-content h6, h6 {
	font-size: clamp(1.6rem, 1.370rem + 0.400vw, 2rem);
}
.h11 {
	color: var(--c-light-gray);
	margin-bottom: var(--gap-default);
	font-family: var(--ff-alt);
	font-size: var(--fs-s);
	letter-spacing: var(--ls-l);
	text-transform: uppercase;
	display: inline-block;
	font-weight: 700;
}
.entry-content p, p {
	hyphens: manual;
}
.text-container {
	display: flex;
}
#content {
	padding: 73px 0 0 0;
}
.wysiwyg ol li, .wysiwyg ul li, .elementor-widget-text-editor ol li:not(.elementor-editor-element-edit), .elementor-widget-text-editor ul li:not(.elementor-editor-element-edit) {
	padding-left: 3rem;
}
.wysiwyg ul li::before, .elementor-widget-text-editor ul li:not(.elementor-editor-element-edit)::before {
	content: "";
	display: block;
	box-sizing: border-box;
	position: absolute;
	width: 7px;
	height: 7px;
	border-bottom: 2px solid var(--c-light-gray);
	border-right: 2px solid var(--c-light-gray);
	transform: rotate(-45deg);
	right: auto;
	top: 12px;
	background-color: transparent;
	border-radius: 0;
}
.elementor-icon-list-icon svg {
	stroke: var(--c-primary);
}
@media (max-width:767px) {
	.elementor-icon-list-item .elementor-icon-list-text {
		font-size: 18px !important;
	}
	.elementor-icon-list-item,
	.elementor-icon-list-item > a {
		font-size: 18px !important;
		justify-content: flex-start !important;
		text-align:left;
	}
	.h1, .h2, .h3, .h4, .h5, .h6, .elementor-widget-heading h1.elementor-heading-title, .entry-content h1, h1, .elementor-widget-heading h2.elementor-heading-title, .entry-content h2, h2, .elementor-widget-heading h3.elementor-heading-title, .entry-content h3, h3, .elementor-widget-heading h4.elementor-heading-title, .entry-content h4, h4, .elementor-widget-heading h5.elementor-heading-title, .entry-content h5, h5, .elementor-widget-heading h6.elementor-heading-title, .entry-content h6, h6 {
		line-height: 1.2;
	}
	.h11 {
		margin-bottom: 10px !important;
	}
}


/* Buttons
--------------------------------------------------------- */
body .elementor-widget-button .elementor-button, body input#submit, body input[type="button"], body input[type="submit"], body .button{
	text-transform: uppercase;
	font-size: var(--fs-xs);
	font-family: var(--ff-alt);
	letter-spacing: var(--ls-l);
	background-color: var(--c-secondary);
	border-color: var(--c-secondary-alt);
	padding-top: 19px;
	padding-right: 39px;
	padding-bottom: 19px;
	padding-left: 39px;
	line-height: 1;
	transition: color var(--a-timing-default) var(--a-easing-default),
				background-color var(--a-timing-default) var(--a-easing-default),
				border-color var(--a-timing-default) var(--a-easing-default),
				transform var(--a-timing-default) var(--a-easing-default),
				opacity var(--a-timing-default) var(--a-easing-default),
				outline-width 0s linear 0s,
				outline-color 0s linear 0s;
}
.scrolltop-btn {
	background-color: var(--c-secondary);
}
.scrolltop-btn:hover,
body .elementor-widget-button .elementor-button:hover, body input#submit:hover, body input[type="button"]:hover, body input[type="submit"]:hover, body .button:hover {
	background-color: var(--c-secondary-alt);
	border-color: var(--c-secondary-alt);
}


/* Header
--------------------------------------------------------- */
#logo img,
#logo svg {
	height: 54px !important;
}
#main-menu {
	float: none;
	display: inline-block;
}
.header-right {
	display: flex;
	align-items:center;
	grid-gap: var(--gap-default);
}
.header-right .button {
	margin-bottom: 0;
	white-space: nowrap;
	font-size: 2rem;
	letter-spacing: 0px;
	padding:16px;
}
#main-menu li a {
	font-weight: 400;
	font-size: 1.6rem;
	padding-top: 19px;
	padding-right: 19px;
	padding-bottom: 19px;
	padding-left: 19px;
	line-height: 1;
}
header#main-header .menu-hauptmenue-en-container {
	display: none;
}
.mobile-menu-inner > .container {
	justify-content: center;
}
.mobile-menu-inner > .container .button {
	margin-top: 20px;
}
#main-menu li.current-menu-item > a[href*="#"] {
	color: var(--c-text);
}
#main-menu li.current-menu-item > a[href*="#"]:hover {
	color: var(--c-primary);
}
@media (min-width: 1081px) {
	header#main-header .menu-hauptmenue-en-container,
	header#main-header .menu-hauptmenue-container {
		display: inline-block;
		height: 53px;
	}
}
@media (max-width: 767px) {
	.header-right > .button {
		display: none;
	}
	.header-left {
		max-width: 50%;
	}
	#logo img, #logo svg {
		max-width: 100% !important;
	}
}


/* language switcher
--------------------------------------------------------- */
#lang_choice_1,
.language-switcher-container {
	display: inline-block;
	height: auto;
	border: none;
	padding: 0;
}
.language-switcher-container {
	position: relative;
	display: flex;
	align-self: stretch;
}
.h-ls-current {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.h-ls-current svg {
	width: 18px;
	height: 18px;
	margin-left: 5px;
}
.lang_dropdown {
	position: absolute;
	padding: 10px 0;
	top: calc(100% - 10px);
	left: 50%;
	transform: translateX(-50%);
	text-align: center;
	background-color: var(--c-white);
	box-shadow: 0 -5px 20px 0 rgba(0,0,0,.1);
	border-radius: 3px;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	transition: all var(--a-timing-default) var(--a-easing-default);
}
.lang_dropdown a {
	display: inline-block;
	padding: 8px 20px;
	width: 100%;
	color: var(--c-text);
	position: relative;
	line-height: 1;
}
.lang_dropdown a:hover {
	color: var(--c-primary);
	background-color: #f9f9f9;
}
.lang_dropdown a.current_language::after {
	content:"";
	position: absolute;
	left:0;
	top:0;
	height: 100%;
	width: 2px;
	background-color: var(--c-secondary);
}
.lang_dropdown:hover,
.h-ls-current:hover + .lang_dropdown {
	opacity: 1;
	pointer-events: all;
	visibility: visible;
}


/* mobile menu overlay
--------------------------------------------------------- */
.menu-hauptmenue-en-container,
.menu-hauptmenue-container {
	width: 100%;
	text-align:center;
}
#mobile-main-menu li a {
	font-size: clamp(2.2rem, 1.804rem + 0.900vw, 3.2rem);
}


/* swiper general
--------------------------------------------------------- */
#content .swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	background-color: #fff !important;
	margin: 8px;
	position: relative;
	opacity:.8;
	outline: 0 !important;
}
.swiper-pagination-bullet::after {
	content:"";
	top: 50%;
	left: 50%;
	position: absolute;
	transform: translate(-50%, -50%);
	border: 1px solid #fff;
	height: 16px;
	width: 16px;
	border-radius: 50%;
	opacity:0;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active,
.swiper-pagination-bullet.swiper-pagination-bullet-active::after {
	opacity:1;
}
.swiper-button-next, .swiper-button-prev {
	background-image: none !important;
	width: 50px !important;
	height: 50px !important;
}
.swiper-button-next::after, .swiper-button-prev::after {
	color: #fff;	
}
@media (max-width: 767px) {
	.swiper-pagination {
		bottom: 60px !important;		
	}
	.swiper-button-prev,
	.swiper-button-next {
		display: none !important;
	}
}


/* Widget: Text
--------------------------------------------------------- */
.nosun-text {
	position: relative;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-attachment: fixed;
}
.is-iPhone .nosun-text {
	background-attachment: scroll;
}
.nosun-text .container {
	position: relative;
	z-index: 2;
}
.nosun-text .text-widget-bg {
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	z-index: 2;
	pointer-events:none;
	opacity: .9;
}
.nosun-text.bg-color-white .text-widget-bg {background-color: var(--c-white);}
.nosun-text.bg-color-lightest-gray .text-widget-bg {background-color: var(--c-lightest-gray);}
.text-container-inner .button {
	margin-top: 20px;
}
@media (max-width: 767px) {
	.headline-container-inner,
	.text-container-inner {
		width: 100% !important;
	}
	.nosun-text {
		background-attachment: scroll;
	}
}


/* Widget: Bild & Text
--------------------------------------------------------- */
.nosun-bild-text {
	background-size: 100%;
	background-repeat: no-repeat;
	padding-top: 100px;
}
.bt-content-container {
	display: flex;
}
.bt-content-inner {
	width: 100%;
	margin:auto;
	padding: var(--gap-default);
	background-color: var(--c-lightest-gray);
}
.nosun-bild-text.bg-color-lightest-gray .bt-content-inner {
	background-color: var(--c-white);
}
@media (min-width:768px) {
	.nosun-bild-text {
		padding-top: 0;
		background-size:65% auto;
	}
	.bt-content-inner {
		width: 50%;
		margin:0;
		padding: calc(var(--gap-default) * 2);
	}
}
@media (min-width:1081px) {
	.bt-content-inner {
		padding: calc(var(--gap-default) * 4);
	}
}


/* Shortcode: partner
--------------------------------------------------------- */
.partner-container {
	padding-bottom: 60px !important;
}
.partner-container .swiper-slide {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: auto;
}
#content .partner-container .swiper-pagination {
	bottom: 5px !important;
}
#content .partner-container .swiper-pagination-bullet {
	background-color: var(--c-text) !important;
	opacity: .5;
}
#content .partner-container .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: var(--c-primary) !important;
	opacity: 1;
}
#content .partner-container .swiper-pagination-bullet::after {
	border-color: var(--c-primary);
}


/* Widget: Banner
--------------------------------------------------------- */
.nosun-banner {
	min-height: calc(100vh - 73px);
	position: relative;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align:center;
	overflow:hidden;
}
@media (max-width:767px) {
	.e--ua-isTouchDevice .nosun-banner {
		min-height: calc(100vh - 120px);
		height: calc(100vh - 73px);
		height: -webkit-fill-available;
		height: -moz-fill-available;
		height: fill-available;
		min-height: calc(100svh - 73px);
		height: calc(100svh - 73px);
	}
}
/* BANNER STIL 2 */
.nosun-banner.banner-stil-s2 {
	align-items: flex-end;
	text-align:left;
}
.banner-gallery-outer,
.banner-gallery-overlay {
	position: absolute;
	top: 0;
	left:0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.banner-gallery-overlay {
	z-index: 2;
	pointer-events:none;
}
.banner-gallery-item,
#content .banner-gallery-wrapper img,
.banner-gallery-wrapper,
.banner-gallery {
	width: 100%;
	height: 100%;
}
.banner-content-wrapper {
	position: relative;
	z-index: 3;
	padding-top: 20px;
	padding-bottom: 20px;
}
@media (min-width:768px) {
	.banner-content-wrapper {
		padding-top: 65px;
		padding-bottom: 65px;
	}
}
@media (min-width:1081px) {
	.banner-content-wrapper {
		padding-top: 110px;
		padding-bottom: 110px;
	}
}
/* BANNER STIL 1 */
.banner-slider-wrapper,
.banner-slider-item,
.banner-slider {
	width: 100%;
	height: 100%;
}
.video-wrapper-16-9 {
	width: 100%;
	height: 100vh;
	text-align: center;
	padding: 20px;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
}
.bsi-video-wrapper,
.bsi-image-wrapper {
	width: 100%;
	height: 100%;
	grid-column: 1;
	grid-row: 1;
}
.banner-slider-item video,
.banner-gallery-item video {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.banner-gallery-item {
	width: 100% !important;
	background-size:cover;
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	/* opacity: 0; */
	background-color: #fff;
}
.banner-slider-item {
	width: 100% !important;
	background-size:cover;
	background-color: #fff;
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	display: grid !important;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
}
.banner-gallery-item.swiper-slide-active,
.banner-slider-item.swiper-slide-active {
	opacity: 1 !important;
}
.is-iPhone .banner-gallery-item,
.is-iPhone .banner-slider-item {
	background-attachment: scroll;
}
#content .banner-gallery-item img,
#content .banner-slider-item img,
#content .bsi-image-wrapper img {
	position:absolute;
	clip:rect(0 0 0 0);opacity:0;
}
.bsi-content-wrapper {
	position: relative;
	z-index: 3;
	width: 100%;
	grid-row: 1;
	grid-column: 1;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
}
.nosun-banner .button {
	margin-top: var(--gap-default);
}
@media (min-width: 768px) {
	.nosun-banner .button {
		margin-top: calc(var(--gap-default) * 2);
	}
}
@media () {
	.banner-gallery-item,
	.banner-slider-item {
		background-attachment: scroll;
	}
}

.video-popup-bg {
	position: fixed;
	z-index: 9998;
	top: 0;
	left:0;
	margin:auto;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.8);
	transition: all var(--a-timing-default) var(--a-easing-default);
	opacity:0;
	visibility: hidden;
}
.video-popup {
	position: fixed;
	z-index: 9999;
	top: 0;
	left:0;
	margin:auto;
	width: 100%;
	height: 100%;
	pointer-events: none;
	display: flex;
	align-items:center;
	justify-content: center;
	transition: all var(--a-timing-default) var(--a-easing-default);
	opacity:0;
	visibility: hidden;
}
.video-popup-inner {
	width: calc(100% - 40px);
	margin:auto;
	max-width: 1800px;
	/* background-color: #fff; */
	/* padding:2px; */
	position: relative;
}
.video-popup-inner video {
	width: 100%;
	height: auto;
	display: inline-block;
	vertical-align: top;
	max-height: 100%;
}
.video-popup-bg.active {
	opacity: 1;
	visibility: visible;
	pointer-events: all;
}
.video-popup.active {
	opacity: 1;
	visibility: visible;
}
.video-popup.active .video-popup-inner {
	pointer-events: all;
}
.popup-video-trigger {
	display: inline-flex;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	margin: 20px;
	background-color: rgba(255,255,255,.9);
	align-items: center;
	justify-content: center;
	position: relative;
}
.popup-video-trigger::after {
	content:"";
	position: absolute;
	top: -10px;
	left: -10px;
	width: 100px;
	border-radius: 100px;
	height: 100px;
	background-color: transparent;
	border: 1px solid var(--c-white);
	opacity: .9;
	box-shadow:0 0 20px 0 rgba(255,255,255,.4);
	pointer-events: none;
}
.popup-video-trigger svg {
	position: relative;
	left: 2px;
	width: 40px;
	height: 40px;
}
.popup-video-trigger svg polygon {
	fill: var(--c-text);
	stroke: var(--c-text);
}
.vpop-close {
	z-index:2;
	position: absolute;
	top: 20px;
	right: -40px;
	height: 40px;
	width: 40px;
	border-radius: 50%;
	background-color: rgba(255,255,255,1);
	display: flex;
	align-items:center;
	justify-content: center;
	color: var(--c-text);
}
@media (max-width: 1890px) {
	.vpop-close {
		right: 0px;
	}
}
@media (max-width: 767px) {
	.popup-video-trigger {
		width: 60px;
		height: 60px;
	}
	.popup-video-trigger::after {
		width: 80px;
		border-radius: 80px;
		height: 80px;
	}
	.popup-video-trigger svg {
		width: 20px;
		height: 20px;
	}
}

.elementor-element-b3da52d {
	z-index: 2;
}


/* Widget: Call To Action
--------------------------------------------------------- */
.nosun-cta {
	position: relative;
	text-align:center;
	color: #fff;
	background-size:cover;
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-position: center;
}
.is-iPhone .nosun-cta {
	background-attachment: scroll;
}
.nosun-cta .h11,
.nosun-cta h3 {
	color: #fff !important;
}
.nosun-cta .container {
	position: relative;
	z-index: 3;
}
.nosun-cta .text-wrapper {
	display: flex;
	align-items:center;
}
.nosun-cta .text-wrapper-inner {
	width:100%;
	text-align:left;
}
.nosun-cta .cta-image {
	position:absolute;
	clip:rect(0 0 0 0);opacity:0;
}
.cta-widget-bg {
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	z-index: 2;
	pointer-events:none;
}
.nosun-cta .text-container {
	justify-content: center;
}
@media (min-width:768px) {
	.nosun-cta .text-wrapper-inner {
		width:50%;
	}
	.nosun-cta.align-center .text-wrapper-inner {
		width: calc(100% / 3 * 2);
	}
}
@media (max-width: 767px) {
	.nosun-cta {
		background-attachment: scroll;
	}
}


/* CF7 Contact form 7
--------------------------------------------------------- */
input[type=email], input[type=number], input[type=password], input[type=reset], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
	background-color: var(--c-white);
	color: var(--c-text);
}


/* Widget: Bilderboxen
--------------------------------------------------------- */
.nosun-bilderboxen .grid{
	grid-gap: 32px;
}
.bilderbox {
	z-index: 2;
}
.bb-image-wrapper img {
	box-shadow: 0px 0px 25px 0px rgba(0,0,0,0.5) !important;
}


/* Dienstleistungen
--------------------------------------------------------- */
/* Liste / Archive */
.dl-content {
	padding: 20px 0;
}
@media (min-width: 768px) {
	.dienstleistungen .grid {
		grid-gap: 40px;
	}
	.dl-content {
		padding: 20px;
	}	
	.dl-content .wysiwyg {
		padding-top: 20px;
	}
}
@media (min-width: 1081px) {
	.dienstleistungen .grid {
		grid-gap: 80px;
	}
	.dl-content {
		padding: 40px;
	}
}


/* Widget: Icon List (Elementor Default)
--------------------------------------------------------- */
.elementor-icon-list-items {
	grid-gap: 20px;
}
.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon{
	align-self: flex-start;
	margin-top: 7px;
}
@media (max-width: 767px) {
	.elementor-icon-list-items {
		flex-direction: column;
		/*grid-gap: 20px;*/
	}
}


/* Footer
--------------------------------------------------------- */
.footer-top {
	padding-top: calc(var(--gap-default) * 2);
	padding-bottom: calc(var(--gap-default) * 2);
	background-color: var(--c-white);
}
.footer-middle,
.footer-bottom {
	background-color: var(--c-white);
	color: var(--c-text);
	text-align:center;
}
.footer-middle {
	padding-bottom:0;
}
.fm-block {
	margin-bottom: var(--gap-default);
}
.footer-socmed {
	display: inline-block;
	margin: 10px;
	opacity: .7;
	transition: all var(--a-timing-default) var(--a-easing-default);
}
.footer-socmed svg {
	width: 30px;
	height: 30px;
}
.footer-socmed:hover {
	opacity: 1;
}
#logo-footer {
	margin-bottom: 20px;
}
#logo-footer img,
#logo-footer svg, .footer-logo-link img,
.footer-logo-link svg {
	height:auto;
	width: 200px;
	max-width: 80%;
}
#logo-footer img,
#logo-footer svg {
	width: 300px;
}
.iata-logo {
	max-width: 200px;
	height: auto;
	filter:grayscale(1);
	transition: all var(--a-timing-default) var(--a-easing-default);
}
.iata-logo:hover {
	filter:grayscale(0);
}
#footer-menu li {
	float: none;
	width: auto;
	display: inline-block;
	margin: 10px;
	list-style: none;
	font-size: 1.4rem;
}
.fm-block.fm-container {
	margin-bottom:0;
}
@media (min-width:768px) {
	.footer-top {
		padding-top: calc(var(--gap-default) * 4);
	}
	.fm-block {
		margin-bottom: calc(var(--gap-default) * 2);
	}
}
@media (max-width:767px) {
	.footer-top .flex-row {
		flex-direction: column;
		grid-gap: 20px;
	}
	#logo-footer img,
	#logo-footer svg, .footer-logo-link img, .footer-logo-link svg {
		height: auto;
		width: 200px;
		max-width: 80%;
	}
	#logo-footer img,
	#logo-footer svg {
		width: 250px;
	}
}


.team-content-container {
	padding: 20px;
	transform: translateY(-80px);
}
.team-content {
	padding: 20px 20px 1px;
	background-color: var(--c-white);
	text-align:center;
}
.team-content .team-name {
	display: inline-block;
	width: 100%;
	margin-bottom: var(--gap-default);
}
.team-content .h11 {
	hyphens: none;
	line-height: var(--lh-m);
}


/* Rechtliche Seiten, Datenschutz, Impressum, etc
--------------------------------------------------------- */
.page-template-page-legal-sites #content h1 { font-size: clamp(3rem, 2.683rem + 0.800vw, 3.8rem); }
.page-template-page-legal-sites #content h2 { font-size: clamp(2.6rem, 2.283rem + 0.800vw, 3.4rem); }
.page-template-page-legal-sites #content h3 { font-size: clamp(2.2rem, 1.962rem + 0.600vw, 2.8rem); }
.page-template-page-legal-sites #content h4 { font-size: 2.0rem; }
.page-template-page-legal-sites #content h5 { font-size: 1.8rem; }
.page-template-page-legal-sites #content h6 { font-size: 1.6rem; }


/* Animations
--------------------------------------------------------- */
/* default
.elementor-icon-list-items, */
.elementor-widget-heading, .elementor-widget-text-editor, .animate {
	opacity: 0;
	transform: translateY(40px);
	transition: all var(--a-timing-default) var(--a-easing-default);
}
.elementor-widget-button .elementor-button, .button {
	opacity: 0;
	transform: translateY(40px);
}
/* only fade */
.fadeIn {
	opacity: 0;
	transition: all var(--a-timing-default) var(--a-easing-default);
}
/* animation complete */
.elementor-editor-active .elementor-icon-list-items,
.elementor-icon-list-items.inView,
.elementor-editor-active .elementor-widget-heading,
.elementor-editor-active .elementor-widget-text-editor,
.elementor-editor-active .elementor-widget-button .elementor-button,
.elementor-editor-active .button,
.elementor-editor-active .animate,
.elementor-widget-heading.inView,
.elementor-widget-text-editor.inView,
.elementor-widget-button .elementor-button.inView,
.button.inView,
.animate.inView {
	opacity: 1;
	transform: translateY(0px);
}
.elementor-editor-active .fadeIn,
.fadeIn.inView {
	opacity: 1;
}


/* Display none classes for 
--------------------------------------------------------- */
@media (max-width: 767px) {
	.hidden-s { display: none; }
}
@media (max-width: 428px) {
	.hidden-s { display: none; }
}
@media only screen and (max-width: 768px) {
	/* For mobile phones: */
	.banner-slider-item {
		background-attachment: unset !important;	
	}
}