/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
#jet-popup-783 .jet-popup__container-overlay,
#jet-popup-150 .jet-popup__container-overlay {
	opacity: 0.5;
}

.menu-underline .elementor-nav-menu--main .elementor-item:hover::after,
.menu-underline .elementor-nav-menu--main .elementor-item:focus-visible::after,
.menu-underline .elementor-nav-menu--main .elementor-item.elementor-item-active::after {
	transform: scaleX(1);
	transform-origin: left;
}

.menu-underline .elementor-nav-menu--main .elementor-item {
	--menu-underline-hover: var(--e-global-color-accent);
	position: relative;
	transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}

.menu-underline .elementor-nav-menu--main .elementor-item::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 100%;
	height: 2px;
	background-color: var(--menu-underline-hover);
	transform: scaleX(0);
	transform-origin: right;
	transition: transform .45s cubic-bezier(.22, 1, .36, 1);
}

.menu-underline .elementor-nav-menu--main .elementor-item:hover,
.menu-underline .elementor-nav-menu--main .elementor-item:focus-visible {
	transform: translateY(-2px);
}

.menu-underline .elementor-nav-menu--main .elementor-item:hover::after,
.menu-underline .elementor-nav-menu--main .elementor-item:focus-visible::after {
	transform: scaleX(1);
	transform-origin: left;
}

.last-p-no-margin p:last-child {
	margin: 0;
}

.text-no-wrap {
	text-wrap: nowrap;
}

.btn-icon svg {
	height: auto;
	width: 20px;
}

.elementor-button-icon svg {
	transition: fill 300ms;
}

.btn-icon .elementor-button-icon svg {
	transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}

.btn-icon .elementor-button:hover .elementor-button-icon svg {
	transform: translateY(-4px);
}

.bg-anim img {
	filter: grayscale(1);
}

.bg-anim:hover img {
	filter: grayscale(0);
}

.bg-anim.action {
	position: relative;
	cursor: pointer;
}

.bg-anim.action::after {
	content: "";
	position: absolute;
	right: 1rem;
	bottom: 1rem;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #EF5537 url("/wp-content/uploads/2026/10/zoom.svg") center / 22px no-repeat;
	box-shadow: 0 4px 16px rgb(0 0 0 / .2);
	pointer-events: none;
	z-index: 2;
	transition: transform .4s cubic-bezier(.22, 1, .36, 1);
}

.bg-anim.action:hover::after {
	transform: scale(1.12);
}

.subtitle .elementor-heading-title {
	position: relative;
	padding-left: 50px;
}

.subtitle .elementor-heading-title:before {
	position: absolute;
	content: "";
	top: 8px;
	left: 0;
	background-color: var(--e-global-color-8d169e2);
	width: 34px;
	height: 2px;
}

.color-span span {
	color: var(--e-global-color-8d169e2);
}

.color-span span {
	--span-from: #FFD3A6;
	--span-to: #EF5537;
	background: linear-gradient(100deg, var(--span-to) 40%, var(--span-from) 60%) 100% 0 / 250% 100%;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.color-span.animated span {
	animation: span-shine 2.4s ease-out 1s 1 forwards;
}

.color-span.blank span {
	--span-from: #FFFFFF;
}

@keyframes span-shine {
	to { background-position: 0 0; }
}

.hero-section {
	position: relative;
	overflow: hidden;
	--hero-img: none;
}

.hero-section:before {
	position: absolute;
	content: "";
	background:
		linear-gradient(90deg, rgba(59, 7, 31, 0.98) 2%, rgba(58, 10, 36, 0.18) 95%),
		var(--hero-img) center / cover no-repeat;
	position: absolute;
	top: 0;
	left: auto;
	right: 0;
	bottom: 0;
	width: 35%;
	z-index: 1;
}

.hero-gradient {
	position: relative;
}

.hero-gradient::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(59, 7, 31, 0.98) 2%, rgba(63, 14, 36, 0.93) 32%, rgba(66, 13, 38, 0.68) 55%, rgba(58, 10, 36, 0.18) 95%);
	pointer-events: none;
	z-index: 0;
}

.horizontal-repeater .jet-listing-grid__item {
	position: relative;
}

.horizontal-repeater .jet-listing-grid__items .jet-listing-grid__item:before {position:absolute;content: "✱";top: -5px;left: 0;color: red;}

.touch-motif {
	overflow: hidden;
}

.touch-motif:before {
	left: -65px !important;
}

.touch-motif::after {
	content: "";
	position: absolute;
	background-image: url(/wp-content/uploads/2026/10/right-motif.svg);
	--background-overlay: '';
	background-position: center right;
	background-repeat: no-repeat;
	transition: background var(--overlay-transition, .3s), border-radius var(--border-transition, .3s), opacity var(--overlay-transition, .3s);
	height: max(100% + var(--border-top-width) + var(--border-bottom-width), 100%);
	right: -65px !important;
	mix-blend-mode: var(--overlay-mix-blend-mode);
	opacity: var(--overlay-opacity);
	top: calc(0px - var(--border-top-width));
	transition: var(--overlay-transition, .3s);
	width: max(100% + var(--border-left-width) + var(--border-right-width), 100%);
}

.bg-icon-box.address .elementor-icon-box-description a {
	color: var( --e-global-color-text );
}

.bg-icon-box .elementor-icon-box-icon .elementor-icon {
	border-radius: 100px;
	background: #FDEAE4;
	padding: 15px;
}



.btn-form {
	display: inline-flex;
	align-items: center;
	gap: 10px;
}

.btn-form::after {
	content: "";
	flex: none;
	width: 20px;
	height: 20px;
	background-color: currentColor;
	-webkit-mask: url("/wp-content/uploads/2026/10/btn-arrow-1.svg") center / contain no-repeat;
	mask: url("/wp-content/uploads/2026/10/btn-arrow-1.svg") center / contain no-repeat;
	transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}

.btn-form:hover::after,
.btn-form:focus-visible::after {
	transform: translateY(-4px);
}

.overflow-hidden {
	overflow: hidden;
}

.read-more .elementor-button {
	--read-more-hover: var(--e-global-color-accent);
	position: relative;
	transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}

.read-more .elementor-button::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 100%;
	height: 2px;
	background-color: var(--read-more-hover);
	transform: scaleX(0);
	transform-origin: right;
	transition: transform .45s cubic-bezier(.22, 1, .36, 1);
}

.read-more .elementor-button:hover,
.read-more .elementor-button:focus-visible {
	transform: translateY(-2px);
}

.read-more .elementor-button:hover::after,
.read-more .elementor-button:focus-visible::after {
	transform: scaleX(1);
	transform-origin: left;
}

/* Post Content */
.post-content h2 span {
	--span-from: #FFD3A6;
	--span-to: #EF5537;
	background: linear-gradient(100deg, var(--span-to) 40%, var(--span-from) 60%) 100% 0 / 250% 100%;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.post-content h2 span {
	animation: span-shine 2.4s ease-out 1s 1 forwards;
}

.post-content h2:not(:first-child) {
	margin-top: 40px;
}

.post-content h3 {
	margin-top: 30px;
}

/* Footer Animation */
.animation-parent {
	position: relative;
	overflow: hidden;
}

.footer-animation {
	position: absolute;
	right: -60px;
	bottom: -80px;
	width: min(720px, 70vw);
	z-index: 0;
	opacity: 0.03;
	pointer-events: none;
}

.footer-logo {
	width: 100%;

	svg {
		display: block;
		width: 100%;
		height: auto;
		overflow: visible;
	}

	path {
		fill: #fff;
	}
}

.isf-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 16px 24px;
	border: 1px solid var(--e-global-color-primary);
	border-radius: 100px;
	background-color: var(--e-global-color-primary);
	color: var(--e-global-color-f189180) !important;
	font-family: "Public Sans", sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4em;
	text-decoration: none;
	cursor: pointer;
}

.isf-btn:hover,
.isf-btn:focus {
	background-color: #FFFFFF00 !important;
	color: var(--e-global-color-primary) !important;
	border-color: var(--e-global-color-primary) !important;
}

.isf-btn::after {
	content: "";
	flex: none;
	width: 20px;
	height: 20px;
	background-color: currentColor;
	-webkit-mask: url("/wp-content/uploads/2026/10/btn-arrow-1.svg") center / contain no-repeat;
	mask: url("/wp-content/uploads/2026/10/btn-arrow-1.svg") center / contain no-repeat;
	transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}

.isf-btn:hover::after,
.isf-btn:focus-visible::after {
	transform: translateY(-4px);
}

.foundation-table th.jet-table__cell .jet-table__cell-text span {
	font-size: 12px;
	font-weight: 400;
	line-height: 1.5em;
	display: block;
	text-transform: uppercase;
}

.foundation-table .jet-table__head-row .jet-table__cell:first-child .jet-table__cell-inner,
.foundation-table .jet-table__body-row .jet-table__cell:first-child .jet-table__cell-inner {
	padding-left: 0 !important;
}

.foundation-table .jet-table__body-row .jet-table__cell:first-child .jet-table__cell-text {
	font-size: 20px;
	font-weight: 600;
}

.foundation-table .jet-table__body-row .jet-table__cell .jet-table__cell-text p:last-of-type {
	margin: 0;
}

.foundation-table .jet-table__head-row .jet-table__cell:first-child {
	width: 20%;
}

.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(1),
.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(3),
.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(5),
.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(7) {
	display: none;
}

.partners-list .jet-engine-swiper-pagination-wrapper {
	margin-top: 20px;
}

/* Responsive */
@media(min-width: 1366px) {
	.touch-motif:before {
		left: -55px !important;
	}

	.touch-motif:after {
		right: -55px !important;
	}
}

@media(min-width: 1600px) {
	.touch-motif:before {
		left: 150px !important;
	}

	.touch-motif:after {
		right: 150px !important;
	}
}

@media(max-width: 1024px) {
	.hero-section:before {
		background-image: none;
	}

	.hero-section {
		background:
			linear-gradient(90deg, rgba(58, 7, 32, 0.97) 0%, rgba(59, 7, 32, 0.91) 43%, rgba(59, 7, 32, 0.50) 100%),
			var(--hero-img) center / cover no-repeat;
	}

	@media(max-width: 768px) {
		.touch-motif:before,
		.touch-motif:after {
			display: none !important;
		}

		.foundation-table .jet-table__body-row .jet-table__body-cell:first-child {
			display: none;
		}

		.foundation-table .jet-table__head-row:first-child .jet-table__head-cell:first-child {
			display: none;
		}

		.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(1),
		.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(3), 
		.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(5),
		.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(7) {
			display: table-row;
		}

		.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(1) td.jet-table__cell,
		.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(3) td.jet-table__cell,
		.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(5) td.jet-table__cell,
		.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(7) td.jet-table__cell {
			border-width: 0 !important;
		}

		.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(1) td.jet-table__cell .jet-table__cell-inner,
		.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(3) td.jet-table__cell .jet-table__cell-inner,
		.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(5) td.jet-table__cell .jet-table__cell-inner,
		.foundation-table tbody.jet-table__body tr.jet-table__body-row:nth-of-type(7) td.jet-table__cell .jet-table__cell-inner {
			padding-bottom: 0;
			font-size: 20px;
			font-weight: 600;
		}
	}