/* 
Theme Name: ONCE Elementor
Theme URI: https://github.com/elementor/hello-theme/
Description: Customized Hello Elementor Theme by the Once Interactive Team.
Author: Once Interactive
Author URI: https://onceinteractive.com
Template: hello-elementor
Version: 1.0.3
Text Domain: hello-elementor-child
*/


/* General */

@font-face {
	font-display: swap;
}

html, body {
	overflow-x: hidden;
	--layout-container: 1600;
}

.elementor-button:focus, button:focus, a:focus, input:focus {
	outline: none !important;
}

a, a:hover button, button:hover, a path, a:hover path, .elementor-button, .elementor-button:hover, a .elementor-icon-list-text, a .elementor-icon-list-icon i, a img, a:hover img {
	transition: all .3s ease-in-out !important;
}


/* ::selection {
background: #A6CE39;
color: #FFF;
} */

::placeholder {
	opacity: 1 !important;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	opacity: 1 !important;
}
::-moz-placeholder { /* Firefox 19+ */
	opacity: 1 !important;
}
:-ms-input-placeholder { /* IE 10+ */
	opacity: 1 !important;
}
:-moz-placeholder { /* Firefox 18- */
	opacity: 1 !important;
}

.no-mb, .no-mb * {
	margin-bottom: 0 !important;
}

.swiper-button a, .menu-item{
	position: relative;
}

.swiper-button a span{
	z-index: 100;
}

.swiper-button a::before{
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	inset: 0 0 0 0;
	z-index: 1;
	transition: transform .5s ease;
	transform: scaleX(0);
	transform-origin: bottom right;
	/* background: #ECB910; */ /* Uncomment this and change the background color for the hover color*/
}

.swiper-button a:hover, .swiper-button a:focus, .swiper-button a:active{
	background-color: transparent !important;
}

.swiper-button a:hover::before, .swiper-button a:active::before, .swiper-button a:focus::before{
	transform: scaleX(1);
	transform-origin: bottom left;
}

body:not(.highlight_links_on) .swiper-text:not(.no-swiper-color) a{
	/*background: linear-gradient(to right, #F1B209, #F1B209 50%, #007EFF 50%); */ /* Uncomment this and change the background color for the hover color, the first 2 colors are the hover and the last is the current color */
	overflow: hidden;
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-size: 200% 100%;
	background-position: 100%;
	transition: background-position 275ms ease;
	display: inline !important;
}

body:not(.highlight_links_on) .swiper-text:not(.no-swiper-color) a *:not(br){
	display: inline !important;
}

body:not(.is_underline) .swiper-text a{
	text-decoration: none !important;
}
body:not(.highlight_links_on) .swiper-text:not(.no-swiper-color) a:hover, body:not(.highlight_links_on) .swiper-text:not(.no-swiper-color) a:focus, body:not(.highlight_links_on) .swiper-text:not(.no-swiper-color) a:active{
	background-position: 0 100%;
	opacity: 1 !important;
}

.fake-background{
	position: absolute !important;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100%;
}

.fake-background-content{
	z-index: 10;
}

.fake-background.overlay +.fake-background-content::before{
	content: '';
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	background-color: rgba(0, 0, 0, .21); //change for the opacity that you want
	z-index: 1;
}

.fake-background.overlay +.fake-background-content > div{
	z-index: 10;
}

.full-img *, .full-img{
	height: 100% !important;
}

.fit-img, .fit-img *{
	width: 100% !important;	
}

.full-img img, .fit-img{
	object-fit: cover;
}

.hide-br-desktop br{
	display: none;
}

.button-bottom{
	position: absolute !important;
	bottom: 0;
}

html body .general-image img{
	width: clamp(var(--min), var(--size), var(--max)) !important;
}

html body .general-image.equal-size img{
	height: clamp(var(--min), var(--size), var(--max)) !important;
}

html body .general-button a, html body .general-text, html body .general-list-widget-no-icon .elementor-icon-list-text, html body .general-text-list ul li, html body .general-title .elementor-heading-title, html body .general-icon .elementor-icon {
	font-size: clamp(var(--min), var(--size), var(--max)) !important;
}


html body .general-social-icons a{
	width: clamp(var(--min), var(--size), var(--max)) !important;
	height: clamp(var(--min), var(--size), var(--max)) !important;
	font-size: clamp(var(--min), var(--size), var(--max)) !important;
}

html body .general-list-icon-text .elementor-icon-list-icon, html body .general-btn-with-icon .elementor-button-icon, html body .general-breadcrumbs svg{
	font-size: clamp(var(--min-icon), var(--size-icon), var(--max-icon)) !important;
}

html body .general-list-icon-text .elementor-icon-list-text, html body .general-btn-with-icon .elementor-button-text, html body .general-breadcrumbs span{
	font-size: clamp(var(--min-font), var(--size-font), var(--max-font)) !important;
}

html body .general-menu .elementor-nav-menu .menu-item a{
	font-size: clamp(var(--min-font), var(--size-font), var(--max-font)) !important;
}

html body .general-menu .elementor-nav-menu--main > .elementor-nav-menu, html body .general-menu .elementor-nav-menu--dropdown > .elementor-nav-menu{
	column-gap: clamp(var(--min-space), var(--size-space), var(--max-space)) !important;
}


html body .general-menu .elementor-nav-menu--main > .elementor-nav-menu .menu-item-has-children ul li a, html body .general-menu .elementor-nav-menu--dropdown > .elementor-nav-menu .menu-item-has-children ul li a{
	margin-left: 0 !important;
	padding: clamp(var(--min-child-padding), var(--size-child-padding), var(--max-child-padding));
} 

html body .general-menu .elementor-nav-menu--main > .elementor-nav-menu > .menu-item > a, html body .general-menu .elementor-nav-menu--dropdown > .elementor-nav-menu > .menu-item > a{
	padding-left: clamp(var(--min-parent-horiztonal-padding), var(--size-parent-horiztonal-padding), var(--max-parent-horiztonal-padding));
	padding-right: clamp(var(--min-parent-horiztonal-padding), var(--size-parent-horiztonal-padding), var(--max-parent-horiztonal-padding));
	padding-top: clamp(var(--min-parent-vertical-padding), var(--size-parent-vertical-padding), var(--max-parent-vertical-padding));
	padding-bottom: clamp(var(--min-parent-vertical-padding), var(--size-parent-vertical-padding), var(--max-parent-vertical-padding));
}

html body .general-form form .gform_body input:not([type="checkbox"]), html body .general-form form .gform_body textarea{
	font-size: clamp(var(--min-font), var(--size-font), var(--max-font)) !important;
}

html body .general-form form .gform_body input:not([type="checkbox"])::placeholder, html body .general-form form .gform_body textarea::placeholder{
	font-size: clamp(var(--min-placeholder-size), var(--size-placeholder), var(--max-placeholder-size)) !important;
}

html body .general-form form .gform_body .gform-field-label {
	font-size: clamp(var(--min-label-font), var(--size-label-font), var(--max-label-font)) !important;
}

html body .general-form form .gform_footer input{
	font-size: clamp(var(--min-button-size), var(--size-button), var(--max-button-size)) !important;
}

html body .general-form .gform_validation_errors *:not(.gform-icon){
	font-size: clamp(var(--min-error-size), var(--size-error), var(--max-error-size)) !important;
}

html body .general-form .gform_confirmation_message {
	font-size: clamp(var(--min-confirmation-size), var(--size-confirmation), var(--max-confirmation-size)) !important;
}

html body .general-button a{
	padding-left: clamp(var(--min-padding-left), var(--size-padding-left), var(--max-padding-left)) !important;
	padding-right: clamp(var(--min-padding-right), var(--size-padding-right), var(--max-padding-right)) !important;
	padding-top: clamp(var(--min-padding-top), var(--size-padding-top), var(--max-padding-top)) !important;
	padding-bottom: clamp(var(--min-padding-bottom), var(--size-padding-bottom), var(--max-padding-bottom)) !important;
}


html body .general-button.with-icon a .elementor-button-icon{
	font-size: clamp(var(--min-icon), var(--size-icon), var(--max-icon)) !important;
}

html body .general-button.with-icon a .elementor-button-content-wrapper{
	column-gap: clamp(var(--min-space), var(--size-space), var(--max-space)) !important;
}

html body .general-text{
	line-height: clamp(var(--min-line-height), var(--size-line-height), var(--max-line-height));
}

html body .general-width {
	max-width: clamp(var(--min-width), var(--size-width), var(--max-width)) !important;
}

html body .general-tabs .e-n-tabs-heading{
	column-gap: clamp(var(--min-space), var(--size-space), var(--max-space)) !important;
}

html body .general-tabs .e-n-tabs-heading button {
	font-size: clamp(var(--min), var(--size), var(--max)) !important;
	padding-left: clamp(var(--min-padding-left), var(--size-padding-left), var(--max-padding-left)) !important;
	padding-right: clamp(var(--min-padding-right), var(--size-padding-right), var(--max-padding-right)) !important;
	padding-top: clamp(var(--min-padding-top), var(--size-padding-top), var(--max-padding-top)) !important;
	padding-bottom: clamp(var(--min-padding-bottom), var(--size-padding-bottom), var(--max-padding-bottom)) !important;
	line-height: clamp(var(--min-line-height), var(--size-line-height), var(--max-line-height)) !important;

}




.show-element{
	display: inherit !important;
}

.hide-element {
	display: none !important;
}


/* Uncomment the code below if you want shiny effect on image hover */

/* .shiny-img .elementor-image{
position: relative;
overflow: hidden;
}

.shiny-img .elementor-image::before{
position: absolute;
top: 0;
left: -100%;
z-index: 2;
display: block;
content: '';
width: 50%;
height: 100%;
background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
-webkit-transform: skewX(-25deg);
transform: skewX(-25deg);
}

.shiny-img .elementor-image:hover::before{
-webkit-animation: shine .75s;
animation: shine .75s;
} */




/* Only if you have hero arrow */
/*
.down-arrow a{
animation: move_down 2s ease-in-out infinite;
}
*/


/************************************** 
***************************************
***************************************

ADA Plugin

***************************************
***************************************
***************************************/

body .accessability_container .aicon_link {
	bottom: 140px;
	left: -60px;
	padding: 0 !important;
}

body .accessability_container .aicon_link, body .accessability_container .aicon_link img {
	background: transparent !important;
	padding: 0 !important;
	height: inherit;
	display: block;
}


/* change the "color" for the color that you want, for the moment is based on the elementor text color */
button.close_container {
	line-height: 0 !important;
	background: var( --e-global-color-primary ) !important; 
	border: 1px solid var( --e-global-color-primary ) !important;
	color: var( --e-global-color-text ) !important;
}

/* change the "color" for the color that you want, for the moment is based on the elementor text color */
button.close_container:hover {
	background: transparent !important;
	color: var( --e-global-color-primary ) !important;  
}

/* change the "color" for the color that you want, for the moment is based on the elementor text color */
body .accessability_container button.wah-action-button:hover {
	background: var( --e-global-color-primary ) !important;  
	color: var( --e-global-color-text ) !important;  
}

/* change the "color" for the color that you want, for the moment is based on the elementor text color */
body .accessability_container button.wah-action-button {
	background: transparent !important;
	border: 1px solid var( --e-global-color-primary ) !important;  
	color: var( --e-global-color-primary ) !important;  
	font-weight: 400 !important;
}

/*************************************************
**************************************************
**************************************************

Header 

**************************************************
**************************************************
**************************************************/

.drop-mega-menu {
	width: 100%;
}

.drop-mega-menu .elementor-nav-menu {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 30px 10px;
	padding: 20px 0;
}

.mega-menu .elementor-nav-menu li::after, .drop-mega-menu .elementor-nav-menu li::after{
	transform: rotate(15deg);
}

.drop-mega-menu .elementor-nav-menu li{
	position: relative;
}


.drop-mega-menu .elementor-nav-menu li:first-child a {
	margin-right: 35px;
}

.drop-mega-menu .elementor-nav-menu li:last-child a {
	margin-left: 35px;
}

.drop-mega-menu .elementor-nav-menu li:not(:first-child, :last-child) a {
	margin-left: 35px;
	margin-right: 35px;
}

.drop-mega-menu .elementor-nav-menu li:not(:last-child)::after {
	content: '';
	height: 24px;
	border-left: 4px solid #FFFFFF99;
	align-self: center;
	display: block;
	position: absolute;
	top: 0px;
	right: -10px;
}

.submenu-header{
	backdrop-filter: blur(54px) !important;
}

.drop-mega-menu .elementor-nav-menu li a .sub-arrow svg{
	fill: #fff;
	font-size: 16px;
}

.drop-mega-menu .elementor-nav-menu li.menu-item-has-children .sub-menu a {
	font-size: 18px !important;
}

.drop-mega-menu .elementor-nav-menu li.menu-item-has-children .highlighted { 
	justify-content: center;	
}

.drop-mega-menu .elementor-nav-menu li.menu-item-has-children .highlighted + .sub-menu{
	display: flex !important;
	flex-wrap: wrap;
	justify-content: center;
	row-gap: 20px;
	padding-top: 20px;
	padding-bottom: 7px;
}

.drop-mega-menu .elementor-nav-menu li.menu-item-has-children .sub-menu li::after {
	top: -7px;
	right: -5px;
}

.drop-mega-menu .elementor-nav-menu li a:focus {
	background-color: transparent !important;
}

.drop-mega-menu .elementor-nav-menu li.menu-item-has-children .highlighted .sub-arrow .fas::before{
	content: "\f068" !important;
}

.drop-mega-menu .elementor-nav-menu li a .sub-arrow i {
    color: #fff;
    font-size: 25px;
}

/*************************************************
**************************************************
**************************************************

Homepage 

**************************************************
**************************************************
**************************************************/

.coma-spacing {
	letter-spacing: -3px;
}

.brand-btn .elementor-widget-container a {
    transition: all 0.3s ease !important;
}

.brand-btn .elementor-widget-container a:hover {
    padding: 0px 0px 0px 40px !important;
}

.home-footer-video::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	background: linear-gradient(
		to bottom,
		rgba(0, 0, 0, 1) 0%,
		rgba(26, 10, 31, 0.7) 47%,
		rgba(102, 74, 147, 0.4) 80%,
		rgba(26, 10, 31, 8.7) 90%,
		rgba(0, 0, 0, 1) 100%
	);
	z-index: 0;
}

.hero::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	background: linear-gradient(
		to bottom,
		rgba(0, 0, 0, 1) 0%,
		rgba(26, 10, 31, 0.9) 25%,
		rgba(102, 74, 147, 0.8) 50%,
		rgba(26, 10, 31, 8.9) 75%,
		rgba(0, 0, 0, 1) 100%
	);
	z-index: 0;
}

.hero::before{
	background-image: url(/wp-content/uploads/2025/08/hero-image.png);
	--background-overlay: '';
	background-position: 100% 45%;
	background-repeat: no-repeat;
	background-size: 473px auto;
	z-index: 1;
}

.hero .elementor-background-video-container{
	transform: scaleX(-1);
	-webkit-transform: scaleX(-1);
	-ms-transform: scaleX(-1);
}

.home-footer-video .elementor-background-video-container{
	transform: scaleX(-1);
	-webkit-transform: scaleX(-1);
	-ms-transform: scaleX(-1);
}

/************************************** 
***************************************
***************************************

		Privacy and Terms Styles

***************************************
***************************************
***************************************/

.privacy-content h2, .privacy-content h1, .privacy-content h3, .privacy-content h4 {
	line-height: 1.4;
	font-family: var(--e-global-typography-primary-font-family), Sans-serif;
}

.privacy-content h2, .privacy-content h1{
	font-size: 34px !important;
}

.privacy-content h3{
	font-size: 28px !important;
}

.privacy-content h4 {
	font-size: 20px !important;
}

.privacy-content h2, .privacy-content h3 {
	margin-top: 40px;
}

.privacy-content ul, .privacy-content ol{
	padding: 20px 0;
	list-style: outside;
	padding-left: 20px;
}

.privacy-content ol{
	list-style-type: decimal !important;
	padding-top:0;
}

/* .privacy-content ul {
	list-style-type: numeric;
}

.privacy-content ul ol{
	padding-left: 40px;
} */

.privacy-content a{
	color: currentColor;
	font-weight: 700;
}

.privacy-content a:hover {
	color: var( --e-global-color-secondary );
}

.legal-dots ol {
	list-style-type: none;
	counter-reset: section;
	padding-left: 0;
}

.legal-dots ol li{
	counter-increment: section;
	position: relative;
}

.legal-dots ol li::before{
	font-weight: 700;
	content: counters(section, ".") ".";
	display: inline-block;
	color: #ffad02;
	margin-right: 0.5em;
}

.legal-dots ol li:not(:last-child) {
	padding-bottom: 25px;
}

.legal-dots ol li ol {
	padding-left: 40px;
}




/*************************************************
**************************************************
**************************************************

Forms 

**************************************************
**************************************************
**************************************************/

.gform_wrapper .gform-body .ginput_container{
	position: relative;
}
.gform_wrapper .gform-body .ginput_container input:focus, .gform_wrapper .gform-body .ginput_container textarea:focus{
	outline: none;
	border: 0;
}

.gform_wrapper .gform-body .ginput_container input ~ .focus-border:before, .gform_wrapper .gform-body .ginput_container input ~ .focus-border:after, .gform_wrapper .gform-body .ginput_container textarea ~ .focus-border:before, .gform_wrapper .gform-body .ginput_container textarea ~ .focus-border:after{
	content: ""; 
	position: absolute; 
	top: 0; 
	left: 0; 
	width: 0; 
	height: 2px; 
	background-color: var( --e-global-color-primary ); 
	transition: 0.3s;
}

.gform_wrapper .gform-body .ginput_container input ~ .focus-border:after, .gform_wrapper .gform-body .ginput_container textarea ~ .focus-border:after{
	top: auto; 
	bottom: 0; 
	left: auto; 
	right: 0;
}

.gform_wrapper .gform-body .ginput_container input ~ .focus-border i:before, .gform_wrapper .gform-body .ginput_container input ~ .focus-border i:after, .gform_wrapper .gform-body .ginput_container textarea ~ .focus-border i:before, .gform_wrapper .gform-body .ginput_container textarea ~ .focus-border i:after{
	content: ""; 
	position: absolute; 
	top: 0; 
	left: 0; 
	width: 2px; 
	height: 0; 
	background-color: var( --e-global-color-primary ); 
	transition: 0.4s;
}

.gform_wrapper .gform-body .ginput_container input ~ .focus-border i:after, .gform_wrapper .gform-body .ginput_container textarea ~ .focus-border i:after{
	left: auto; 
	right: 0; 
	top: auto; 
	bottom: 0;
}

.gform_wrapper .gform-body .ginput_container input:focus ~ .focus-border:before, .gform_wrapper .gform-body .ginput_container input:focus ~ .focus-border:after, .gform_wrapper .gform-body .ginput_container textarea:focus ~ .focus-border:before, .gform_wrapper .gform-body .ginput_container textarea:focus ~ .focus-border:after{
	width: 100%; 
	transition: 0.3s;
}

.gform_wrapper .gform-body .ginput_container input:focus ~ .focus-border i:before, .gform_wrapper .gform-body .ginput_container input:focus ~ .focus-border i:after, .gform_wrapper .gform-body .ginput_container textarea:focus ~ .focus-border i:before, .gform_wrapper .gform-body .ginput_container textarea:focus ~ .focus-border i:after{
	height: 100%; 
	transition: 0.4s;
}

.gform_confirmation_message {
	font-family: 'Futura Now Headline', sans-serif !important;
}

/*************************************************
**************************************************
**************************************************

Footer 

**************************************************
**************************************************
**************************************************/


/* Animations - KeyFrames */

@keyframes opacDown {
	0% {
		transform: translate(0, -20px);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		transform: translate(0, 20px);
		opacity: 0;
	}
}

@keyframes shine{
	100%{
		left: 125%;		
	}
}


/* Media Queries */

@media (min-width: 1200px) {}

@media (max-width: 1800px) {}

@media (max-width: 1700px) {}

@media (max-width: 1600px) {}

@media (max-width: 1500px) {}

@media (max-width: 1440px) {
	.good-green .elementor-heading-title{
		margin-bottom: 36px;
	}
}

@media (max-width: 1400px) {}

@media (max-width: 1366px) {
	.good-green .elementor-heading-title{
		margin-bottom: 36px;
	}

	.hero::before{
		background-size: 373px auto;
	}
}

@media (max-width: 1300px) {}

@media (max-width: 1280px) {
	.good-green .elementor-heading-title{
		margin-bottom: 36px;
	}
}

@media (max-width: 1200px) {
	.privacy-content h2, .privacy-content h1, .privacy-content h3 {
		line-height: 1.4 !important;
		font-size: 34px !important;
		margin-top: 30px;
	}
}

@media (max-width: 1080px) {}

@media (max-width: 1024px) {
	.good-green .elementor-heading-title{
		margin-bottom: 0px;
	}
}

@media (max-width: 989px) {}

@media (max-width: 880px) {}

@media (max-width: 780px) {}

@media (max-width: 768px) {}

@media (max-width: 767px) {
	.privacy-content h2, .privacy-content h1, .privacy-content h3, .privacy-content h4 {
		font-size: 24px !important;
	}
}

@media (max-width: 360px) {}