html {
	scroll-behavior: smooth;
}

body {
	min-height: 100%;
}

html[dir='rtl'] body {
	direction: ltr;
}

html[dir='rtl'],
html[dir='rtl'] body {
	overflow-x: hidden;
}

html[dir='rtl'] #menu-hauptmenue,
html[dir='rtl'] .ips365-language-switcher,
html[dir='rtl'] .elementor-heading-title,
html[dir='rtl'] .elementor-widget-text-editor,
html[dir='rtl'] .elementor-button-text,
html[dir='rtl'] .elementor-icon-list-text,
html[dir='rtl'] .elementor-icon-box-content,
html[dir='rtl'] .elementskit-section-title-wraper,
html[dir='rtl'] .elementskit-card-header,
html[dir='rtl'] .elementskit-card-body,
html[dir='rtl'] .elementor-field-group,
html[dir='rtl'] .cmplz-cookiebanner,
html[dir='rtl'] .elementor-location-footer .elementor-widget {
	direction: rtl;
}

html[dir='rtl']
	.elementor-289
	.elementor-element.elementor-element-6fc8eea1
	.elementor-button-wrapper {
	text-align: right;
}

html[dir='rtl'] input[type='email'],
html[dir='rtl'] input[type='tel'],
html[dir='rtl'] a[href^='mailto:'],
html[dir='rtl'] a[href^='tel:'] {
	direction: ltr;
	text-align: left;
	unicode-bidi: embed;
}

body.cmplz-banner-active *:not(.cmplz-cookiebanner):not(.cmplz-cookiebanner *) {
	pointer-events: auto !important;
	user-select: auto !important;
}

#cmplz-manage-consent .cmplz-manage-consent {
	cursor: pointer;
}

.elementskit-menu-hamburger,
.elementskit-menu-close,
.elementskit-menu-overlay {
	cursor: pointer;
}

.ekit-template-content-header,
.ekit-template-content-header .elementor,
.ekit-template-content-header .elementor-element,
.ekit-template-content-header .elementor-widget-container,
.ekit-template-content-header nav.ekit-wid-con,
.ekit-template-content-header .elementskit-menu-container {
	overflow: visible !important;
}

.ekit-template-content-header {
	position: relative;
	z-index: 10010;
}

#menu-hauptmenue {
	align-items: center;
}

#menu-hauptmenue > .ips365-language-switcher {
	position: relative;
	display: flex;
	align-items: center;
	margin-left: 22px;
}

html[dir='rtl'] #menu-hauptmenue > .ips365-language-switcher {
	margin-right: 22px;
	margin-left: 0;
}

.ips365-language-switcher__details {
	position: relative;
}

.ips365-language-switcher__details[open] {
	z-index: 10030;
}

.ips365-language-switcher__summary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-width: 62px;
	min-height: 36px;
	box-sizing: border-box;
	padding: 0 11px;
	border: 1px solid rgba(40, 83, 141, 0.18);
	border-radius: 999px;
	background: #ffffff;
	color: var(--e-global-color-text, #120e0b);
	font-family: "Inter", sans-serif;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	list-style: none;
	cursor: pointer;
	transition:
		border-color 0.2s ease,
		color 0.2s ease,
		background-color 0.2s ease;
}

.ips365-language-switcher__summary::-webkit-details-marker {
	display: none;
}

.ips365-language-switcher__summary:hover,
.ips365-language-switcher__details[open] .ips365-language-switcher__summary {
	border-color: rgba(40, 83, 141, 0.42);
	background: #f7f9fc;
	color: #28538d;
}

.ips365-language-switcher__icon {
	flex: 0 0 auto;
}

.ips365-language-switcher__current,
.ips365-language-switcher__code {
	white-space: nowrap;
}

.ips365-language-switcher__list {
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	z-index: 90020;
	min-width: 172px;
	margin: 0;
	padding: 8px;
	border: 1px solid rgba(40, 83, 141, 0.16);
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 16px 34px rgba(18, 48, 88, 0.16);
	list-style: none;
}

html[dir='rtl'] .ips365-language-switcher__list {
	right: auto;
	left: 0;
	text-align: right;
}

.ips365-language-switcher__list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 9px 10px;
	border-radius: 6px;
	color: var(--e-global-color-text, #120e0b);
	font-family: "Inter", sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
}

.ips365-language-switcher__list a:hover,
.ips365-language-switcher__list a:focus,
.ips365-language-switcher__list a.is-active {
	background: #edf3fa;
	color: #28538d;
}

.ips365-language-switcher__code {
	color: #6f7b88;
	font-size: 12px;
	font-weight: 700;
}

.ips365-language-switcher--mobile {
	display: none;
}

@media (max-width: 1320px) and (min-width: 768px) {
	.elementor-1460 .elementor-element.elementor-element-3e1d3dd .elementskit-navbar-nav > li > a {
		padding-left: 18px !important;
		font-size: 15px !important;
	}

	#menu-hauptmenue > .ips365-language-switcher {
		margin-left: 16px;
	}

	html[dir='rtl'] #menu-hauptmenue > .ips365-language-switcher {
		margin-right: 16px;
		margin-left: 0;
	}
}

@media (max-width: 767px) {
	.ekit-template-content-header nav.ekit-wid-con {
		position: relative;
	}

	.ekit-template-content-header .elementskit-menu-hamburger {
		display: block !important;
	}

	.ips365-language-switcher--navigation {
		display: none !important;
	}

	.ips365-language-switcher--mobile {
		position: absolute;
		top: 0;
		right: 53px;
		z-index: 10050;
		display: block;
	}

	.ips365-language-switcher--mobile .ips365-language-switcher__summary {
		min-width: 56px;
		min-height: 34px;
		padding: 0 9px;
	}

	.ips365-language-switcher--mobile .ips365-language-switcher__list {
		position: absolute;
		top: calc(100% + 8px);
		right: -53px;
		width: 172px;
		min-width: 172px;
		margin-top: 0;
		box-shadow: 0 16px 34px rgba(18, 48, 88, 0.16);
	}

	html[dir='rtl'] .ips365-language-switcher--mobile .ips365-language-switcher__list {
		right: -53px;
		left: auto;
	}

	body.ips365-menu-active .ekit-template-content-header,
	body.ips365-menu-active .ekit-template-content-header .elementor-widget-ekit-nav-menu,
	body.ips365-menu-active .ekit-template-content-header
		.elementor-widget-ekit-nav-menu
		> .elementor-widget-container,
	body.ips365-menu-active .ekit-template-content-header nav.ekit-wid-con {
		position: relative;
		z-index: 100400 !important;
		overflow: visible !important;
	}

	.ekit_menu_responsive_mobile .elementskit-navbar-nav-default.elementskit-menu-offcanvas-elements {
		position: fixed !important;
		top: 0 !important;
		left: -100vw;
		height: 100vh !important;
		height: 100dvh !important;
		max-height: none !important;
		padding: 0 !important;
		display: flex !important;
		flex-direction: column-reverse !important;
		justify-content: flex-end !important;
		overflow-y: auto !important;
		overflow-x: hidden !important;
		background: #f7f7f7 !important;
		z-index: 90000 !important;
	}

	.ekit_menu_responsive_mobile .elementskit-menu-overlay {
		position: fixed !important;
		top: 0 !important;
		left: -100vw !important;
		width: 100vw !important;
		height: 100vh !important;
		height: 100dvh !important;
		pointer-events: none !important;
		background: rgba(51, 51, 51, 0.5) !important;
		transition: all 0.6s cubic-bezier(0.6, 0.1, 0.68, 0.53) 0.4s !important;
	}

	body.ips365-menu-active nav.ekit-wid-con .elementskit-menu-container {
		z-index: 100400 !important;
	}

	body.ips365-menu-active nav.ekit-wid-con .elementskit-menu-overlay {
		z-index: 100200 !important;
	}

	body.ips365-menu-active .cmplz-cookiebanner {
		z-index: 100100 !important;
	}

	.ekit_menu_responsive_mobile .elementskit-menu-overlay.active {
		left: 0 !important;
		pointer-events: auto !important;
		transition: all 0.6s cubic-bezier(0.22, 0.61, 0.24, 1) 0s !important;
	}

	.ekit_menu_responsive_mobile .elementskit-menu-offcanvas-elements.active {
		left: 0 !important;
		z-index: 100300 !important;
	}

	html[dir='rtl'] .ekit_menu_responsive_mobile .elementskit-navbar-nav-default.elementskit-menu-offcanvas-elements {
		right: -100vw;
		left: auto !important;
	}

	html[dir='rtl'] .ekit_menu_responsive_mobile .elementskit-menu-overlay {
		right: -100vw !important;
		left: auto !important;
	}

	html[dir='rtl'] .ekit_menu_responsive_mobile .elementskit-menu-overlay.active,
	html[dir='rtl'] .ekit_menu_responsive_mobile .elementskit-menu-offcanvas-elements.active {
		right: 0 !important;
		left: auto !important;
	}

	.ekit_menu_responsive_mobile .elementskit-nav-identity-panel {
		display: block !important;
		position: relative !important;
		z-index: 5 !important;
		width: 100% !important;
		text-align: right !important;
	}

	html[dir='rtl'] .ekit_menu_responsive_mobile .elementskit-nav-identity-panel {
		text-align: left !important;
	}

	.ekit_menu_responsive_mobile .elementskit-navbar-nav {
		height: auto !important;
		min-height: 0 !important;
	}

	#menu-hauptmenue {
		align-items: stretch;
	}

	#menu-hauptmenue > .ips365-language-switcher {
		display: block;
		margin-left: 0;
		padding: 10px 20px 16px;
	}

	html[dir='rtl'] #menu-hauptmenue > .ips365-language-switcher {
		margin-right: 0;
		margin-left: 0;
	}

	.ips365-language-switcher__summary {
		justify-content: flex-start;
		width: fit-content;
		min-height: 34px;
	}

	.ips365-language-switcher__list {
		position: static;
		min-width: 0;
		width: 100%;
		margin-top: 10px;
		box-shadow: none;
	}
}
