/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/



/* GENERAL RULES */

			html {scroll-behavior: smooth; overflow-x: hidden !important; }

		/* -variables- */
			:root {
				/* site colors */
				--blu: #032374;
				--lblu: #02F9FC;
				--txtgrad: linear-gradient(90deg, #0088F3 0%, #02F9FC 25.28%, #7EFC4E 53.94%, #00EBFE 87.65%);
				--grad1: linear-gradient(180deg, rgba(17, 15, 39, 0) 0%, #110F27 100%);

				/* default paddings */
				--pad1: 42px;
				--pad2: 60px;
				--pad3: 99px;
				--pad4: 111px;
				--pad5: 130px;
				--pad6: 180px;
			}

		/* -wp stuff- */
			.g-cols.via_flex.type_default { margin: 0; }
			a.moove-gdpr-branding {display: none !important; }
			#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-company-logo-holder img {display: block !important; margin: auto !important; } 
			.moove-gdpr-branding-cnt {display: none !important; }
			a[href^="tel:"] { white-space: nowrap; }
			.vc_column-inner, .wpb_row {background-size: cover !important; background-position: center !important; background-repeat: no-repeat !important;}
			img {user-drag: none; -webkit-user-drag: none; user-select: none; -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; }

		/* -paddings- */
			.pad3 { padding-top: var(--pad3); padding-bottom: var(--pad3); }
			
			.pad34 { padding-top: var(--pad3); padding-bottom: var(--pad4); }
			.pad54 { padding-top: var(--pad5); padding-bottom: var(--pad4); }

			.pad1 { padding-top: var(--pad1); padding-bottom: var(--pad1); }
			.pad2 { padding-top: var(--pad2); padding-bottom: var(--pad2); }
			.pad4 { padding-top: var(--pad4); padding-bottom: var(--pad4); }
			.pad5 { padding-top: var(--pad5); padding-bottom: var(--pad5); }
			.pad6 { padding-top: var(--pad6); padding-bottom: var(--pad6); }

		.centerthis .g-cols { justify-content: center !important; }
		.nolink a {pointer-events: none; }
		.tacenter { text-align: center; }
		
		.mrgbot20 { margin-bottom: 20px !important; }
		.mrgbot42 { margin-bottom: 42px !important; }
		
		.pw1310 p { max-width: 1310px; margin-left: auto !important; margin-right: auto !important; }
		.pw1200 p { max-width: 1200px; margin-left: auto !important; margin-right: auto !important; }
		.pw910 p { max-width: 970px; margin-left: auto !important; margin-right: auto !important; }
		.pw710 p { max-width: 710px; margin-left: auto !important; margin-right: auto !important; }
		.pw670 p { max-width: 670px; margin-left: auto !important; margin-right: auto !important; }
		
		div#bottom_links i { padding: 0 6px 0 0; line-height: normal; }
		div#bottom_links { display: flex; position: fixed;bottom: 0;width: 100%;z-index: 99;background-color: #fff;); bottom: 0; opacity: 1;  align-items: center;gap: 1px; } 
		div#bottom_links a {  width: 100%; display: flex; justify-content: center; color: #fff; text-decoration: none !important; font-size: 16px; font-weight: 400; align-items: center;min-height: 45px;background-color: var(--blu); }
		
		.wpb_text_column img { max-width: 100% !important;}
		
		a { transition-duration: .25s;}
		
		.vc_column-inner > .wpb_wrapper > .wpb_text_column + :where(.btn1, .btn2), .vc_column-inner > .wpb_wrapper > :where(.btn1, .btn2) + .wpb_text_column, .vc_column-inner > .wpb_wrapper > .wpb_text_column + .btns, .btn1 p + p a {margin-top: 25px;}
		.wpb_raw_html + .btn1 { margin-top: 15px;}
		
		p + .fluentform { margin-top: 25px; }
		
		p, ul, ol, dl, address, pre, table, blockquote, fieldset {margin: 0 0 15px;}
		.wpb_text_column ul { margin-left: 0; list-style-position: inside; list-style: inside; }
		
		h1, h2, h3 { line-height: 119% !important; letter-spacing: -.02rem !important; text-transform: capitalize !important; } 
		h1 + p, h2 + p, h3 + p, h1 + ul, h2 + ul {margin-top: 20px; } 
		/* h1 strong, h2 strong, h3 strong { background: white; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; transition: background 1s ease-in-out; } */
		h1 span, h2 span, h3 span { font-size: 30px; font-family: var(--font-family,inherit); display: block; line-height: normal; text-decoration: none !important; font-weight: 400; }

		h1 strong, h2 strong, h3 strong{ background: var(--txtgrad); background-size: 300%; background-position: 0% 50%; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent;   transition: background-position 1.5s ease, background-size 1.5s ease; }
		h1 strong.anim, h2 strong.anim, h3 strong.anim { background-size: 100%; background-position: 50% 50%; }

		
		.frm-fluent-form .ff-t-cell .ff_submit_btn_wrapper_custom button, .ff-el-group.ff-text-right.ff_submit_btn_wrapper.ff_submit_btn_wrapper_custom{margin: 0 !important; }
		.w-btn:before, .button:before, button[type=submit]:before {display: none !important; opacity: 0 !important;}
		
		.img .vc_column-inner { background-size: cover !important; background-repeat: no-repeat !important; background-position: center; margin: 0 !important;  }
				
		.header_hor .l-header.pos_fixed~.l-main>.l-section:first-of-type>.l-section-h, .header_hor .l-header.pos_fixed~.l-main>form>.l-section:first-of-type>.l-section-h, .header_hor .l-header.pos_static.bg_transparent~.l-main>.l-section:first-of-type>.l-section-h, .header_hor .l-header.pos_static.bg_transparent~.l-main>form>.l-section:first-of-type>.l-section-h { padding-top: 0; }

/* animations */

	.w3-animate-top {z-index: 2;position:relative;animation:animatetop  1.2s}	@keyframes animatetop {from{top:-300px; opacity:0}	 to {top:0;opacity:1}} .w3-animate-left	{z-index: 2;position:relative;animation:animateleft  1.2s}	@keyframes animateleft {from{left:-300px; opacity:0} to {left:0;opacity:1}} .w3-animate-right	{z-index: 2;position:relative;animation:animateright 1.2s}	@keyframes animateright {from{right:-300px; opacity:0}  to {right:0;opacity:1}} .w3-animate-bottom	{z-index: 2;position:relative;animation:animatebottom  1.2s}	@keyframes animatebottom	{from{bottom:-300px;	opacity:0}  to {bottom:0;opacity:1}} .w3-animate-right2	{z-index: 2;position:relative;animation:animateright2  1.2s}	@keyframes animateright2	{from{right:-300px;  }   to {right:0; }} .w3-animate-bg {z-index: 2;position:relative;animation:animatebg  1.2s} @keyframes animatebg {from{margin-top: 100%; opacity: 0;} to {margin-top: 0%; opacity: 1; }} .one-header-top { display: none !important; opacity: 0 !important; visibility: hidden !important;  }
	.swirl-in-fwd { -webkit-animation: swirl-in-fwd 4.2s cubic-bezier(0.75, 0.8, 0.75, 1) both; animation: swirl-in-fwd 4.2s cubic-bezier(0.75, 0.8, 0.75, 1) both; } @-webkit-keyframes swirl-in-fwd { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } @keyframes swirl-in-fwd { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
	
/* mml_hero */

	.mml_hero { position: relative; box-sizing: border-box; display: flex; align-items: center; position: relative; overflow: visible; padding: calc(var(--header-height) + 5.208vw) 0 6.979vw; }
	/* .mml_hero .g-cols { min-height: 46.927vw; } */
	.mml_hero:before { content: ''; width: 100%; height: 223px; position: absolute; bottom: 0; left: 0; background: var(--grad1); }
	/* .mml_hero .img img { filter: drop-shadow(0 0 60px rgba(0, 136, 243, 0.25)) drop-shadow(30px 0 60px rgba(2, 249, 252, 0.25)) drop-shadow(-30px 0 60px rgba(126, 252, 78, 0.25)) drop-shadow(0 0 60px rgba(0, 235, 254, 0.25)); } */
	.mml_hero .w-image { position: relative; }
	.mml_hero .w-image img { position: relative; z-index: 11; }
	.mml_hero .w-image:before { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; height: auto; content: ''; border-radius: 50%; aspect-ratio: 1 / 1; background: linear-gradient(90deg, rgba(0, 136, 243, 0.4) 0%, rgba(2, 249, 252, 0.4) 25.28%, rgba(126, 252, 78, 0.4) 53.94%, rgba(0, 235, 254, 0.4) 87.65%); filter: blur(147px); }
	
/* btn1 */

	.btn1 a, .btn2 a { display: inline-flex; justify-content: center; gap: 10px; align-items: center; color: var(--blu); text-transform: capitalize; font-size: 18px; line-height: normal; background-size: 100% 100%; background-position: center; transition: background-size 0.35s ease, background-position 0.35s ease; position: relative; z-index: 13; } 
	.btn1 a { font-family: var(--h1-font-family,inherit); padding: 12px 24px; background-image: linear-gradient(90deg, #0088F3 0%, #02F9FC 48.31%, #7EFC4E 87.65%); border-radius: 69.9272px; font-weight: 700; }
	.btn2 a { padding: 12px 24px; background-image: linear-gradient(90deg, #0088F3 0%, #7EFC4E 35.82%, #02F9FC 62.22%, #00EBFE 87.65%); border-radius: 69.9272px 0 69.9272px 0; font-weight: 400; font-weight: 700; flex-wrap: wrap; }
	.btn1 a i { font-style: normal; font-family: 'fontawesome'; }
	.btn1 a:hover, .btn2 a:hover { background-size: 200% 100%; background-position: left center; color: var(--blu); }
	
/* mml_row1 */
	
	.mml_row1 { text-align: center; font-size: 24px; }
	
/* mml_row2 */
	
	.mml_row2 .w-image { position: relative; }
	.mml_row2 .w-image img { position: relative; z-index: 11; }
	.mml_row2 .w-image:before { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; height: 100%; content: ''; border-radius: 50%; aspect-ratio: 1 / 1; background: linear-gradient(90deg, rgba(0, 136, 243, 0.4) 0%, rgba(2, 249, 252, 0.4) 25.28%, rgba(126, 252, 78, 0.4) 53.94%, rgba(0, 235, 254, 0.4) 87.65%); filter: blur(147px);  transition: all 2.5s ease-in-out; }
	.mml_row2 .w-image.anim:before { opacity: 1; }
 	
/* mml_row3 */

	.mml_row3 .img img { filter: drop-shadow(0px 4px 55px rgba(0, 0, 0, 0.6)); }
	.mml_row3 .wpb_text_column + .inner0 { margin-top: 35px; }
	.mml_row3 .inner0 .txt h3 { font-size: 18px !important; line-height: normal !important; padding-top: 0 !important; color: var(--lblu); letter-spacing: .02rem !important;  }
	.mml_row3 .inner0 .txt + .txt { margin-top: 3.513vw; margin-bottom: 3.513vw; }
	.mml_row3:before, .mml_row3:after { content: ''; position: absolute; left: 0; width: 100%; height: 223px; } 
	.mml_row3:before { top: 0; background-image: linear-gradient(180deg, #110F27 0%, rgba(17, 15, 39, 0) 100%); }
	.mml_row3:after { bottom: 0; background-image: linear-gradient(180deg, rgba(17, 15, 39, 0) 0%, #110F27 100%); }
	.mml_row3 .l-section-h { position: relative; z-index: 11; }
	.mml_row3 .img .vc_column-inner { justify-content: end !important; }
	/* .mml_row3 .w-image img { position: relative; z-index: 11; } */
	.mml_row3 .w-image { position: relative; z-index: 11; transition: all 2.5s ease-in-out; }
	.mml_row3 .w-image:before { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 100%; height: 40%; content: ''; border-radius: 50%; background: linear-gradient(90deg, rgba(0, 136, 243, 0.4) 0%, rgba(2, 249, 252, 0.4) 25.28%, rgba(126, 252, 78, 0.4) 53.94%, rgba(0, 235, 254, 0.4) 87.65%); filter: blur(147px); z-index: 11; }
	.mml_row3 .w-image.anim:before { opacity: 1; transition: all 2.5s ease-in-out; }
	
/* mml_row4 */

	.mml_row4 .vc_column-inner > .wpb_wrapper { padding-top: var(--pad6); padding-bottom: var(--pad2); }
	.mml_row4 .img img { width: 100%; }
	.mml_row4 .txt h2 { font-size: 84.25px !important; letter-spacing: .34em !important; line-height: 135% !important; text-align: center; transition: all 1.5s ease-in-out;  }
	.mml_row4 .txt h2.anim { text-shadow: 0px 4px 91px rgba(181, 255, 0, 0.82); }
	.mml_row4 .txt { bottom: 0; left: 12%; z-index: 11; }
	.mml_row4 .w-image img { position: relative; z-index: 11; }
	.mml_row4 .w-image { position: relative; z-index: 11; }
	.mml_row4 .w-image:before { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; height: 100%; content: ''; border-radius: 50%; aspect-ratio: 1 / 1; background: linear-gradient(90deg, rgba(0, 136, 243, 0.4) 0%, rgba(2, 249, 252, 0.4) 25.28%, rgba(126, 252, 78, 0.4) 53.94%, rgba(0, 235, 254, 0.4) 87.65%); filter: blur(147px); }
	.mml_row4 .vc_column-inner { padding: 0 !important; }

/* mml_row5 */

	.mml_row5 .frm .wpb_text_column { max-width: 694px; }
	.mml_row5 .ff-default .ff-el-form-control { min-height: 57px; border: 1px solid transparent; border-radius: 9px; background: linear-gradient(#000, #000) padding-box, linear-gradient(to right, rgba(0, 136, 243, 1), rgba(2, 249, 252, 1), rgba(126, 252, 78, 1), rgba(0, 235, 254, 1)); box-sizing: border-box; }
	/* .mml_row5 .w-image img { position: relative; z-index: 11; } */
	.mml_row5 .w-image { position: relative; z-index: 11; }
	.mml_row5 .w-image:before { position: absolute; bottom: 0; right: 0; width: 100%; height: 40%; transform: translate(25%, 25%);  content: ''; border-radius: 50%; background: linear-gradient(90deg, rgba(0, 136, 243, 0.4) 0%, rgba(2, 249, 252, 0.4) 25.28%, rgba(126, 252, 78, 0.4) 53.94%, rgba(0, 235, 254, 0.4) 87.65%); filter: blur(147px); }
	.mml_row5 .w-image.anim:before { opacity: 1; transition: all 2.5s ease-in-out; }

	
	
		button.ff-btn.ff-btn-submit.ff-btn-md.ff_btn_style.wpf_has_custom_css { display: inline-flex !important; justify-content: center!important; gap: 10px!important; align-items: center!important; color: var(--blu)!important; text-transform: capitalize!important; font-size: 18px!important; line-height: normal!important; background-size: 100% 100%!important; background-position: center!important; transition: background-size 0.35s ease, background-position 0.35s ease!important;font-family: var(--h1-font-family,inherit) !important; padding: 12px 24px !important; background-image: linear-gradient(90deg, #0088F3 0%, #02F9FC 48.31%, #7EFC4E 87.65%) !important; border-radius: 69.9272px !important; font-weight: 700 !important; border: none !important; outline: none !important; }
		button.ff-btn.ff-btn-submit.ff-btn-md.ff_btn_style.wpf_has_custom_css:hover { background-size: 200% 100% !important; background-position: left center !important; color: var(--blu) !important; opacity: 1 !important; }
		button.ff-btn.ff-btn-submit.ff-btn-md.ff_btn_style.wpf_has_custom_css i { font-style: normal; font-family: 'fontawesome'; }
	
/* mml_innerheader */

	.mml_innerheader .g-cols { padding: 175px 0 25px; }
	.mml_innerheader h1 { font-size: 72px !important; }
	
/* footer */

	footer { overflow: visible !important; position: relative; }
	.mml_footer { overflow: visible; }
	.mml_footer .g-cols { position: relative; z-index: 11; background-color: #000; border-radius: 0 90px 0 0; }
	.mml_footer .vc_column-inner { padding: 0 !important; }
	.mml_footer .bbl { position: absolute; left: 0; bottom: 0; }
	.mml_footer .inner0 { padding: 50px 11.458vw 50px 250px; box-sizing: border-box; /* margin-left: 3.906vw;*/ gap: 24px; }
	.mml_footer .txt { font-size: 20px; }
	.mml_footer .txt a { font-style: italic; letter-spacing: 0.02em; background: linear-gradient(90deg, #0088F3 0%, #02F9FC 25.28%, #7EFC4E 53.94%, #00EBFE 87.65%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; font-weight: 900; }
	
	.mml_footer .w-menu { margin-left: 14.906vw; text-align: center; }
	.mml_footer .inner0 + .w-menu { margin-top: 24px; }
	.mml_footer .w-menu a { color: #cacaca !important; font-size: 16px; }
	.mml_footer .w-menu a strong { font-weight: 400 !important; }
	 
	.w-toplink { background-image: linear-gradient(90deg, #0088F3 0%, #02F9FC 48.31%, #7EFC4E 87.65%) !important; }
	.w-toplink i { color: var(--blu); }



/* responsive */

	
	@media (min-width: 768px) { 
		.btn1 a { min-height: 57.5px; }
		.btn2 a { min-height: 79px; font-size: 22px; padding: 12px 74px; }
		
		div#bottom_links { display: none; }
		
		.mml_row4 .txt { position: absolute; }

	}
	
	@media (min-width: 1024px) { 
		.mml_row5 .frm .wpb_text_column { margin: auto 0 auto auto; }
	}
	
	@media (min-width: 1025px) { 
		.mml_row1 .wpb_text_column, .mml_row2 .img, .mml_row2 .txt, .mml_row3 .w_txt .txt, .mml_row3 .w-image, .mml_row3 .btn2, .mml_row5 .img, .mml_row5 .frm, .mml_row2 .w-image:before, .mml_row3 .w-image:before, .mml_row5 .w-image:before { opacity: 0; }
	}
	
	
	@media (min-width: 1366px) { 
		.mml_innerheader .g-cols {min-height: 317px;}
		
		.btn2 a { padding: 12px 74px; }
	}
	
	
	
	/* */
	
	@media (max-width: 1536px) { 
		:root {
				--pad1: 32px;
				--pad2: 32px;
				--pad3: 32px;				
				--pad4: 32px;				
				--pad5: 54px;				
				--pad6: 54px;				
			}
	
		h1 { font-size: 92px !important; }
	}	
	
	@media (max-width: 1536px) { 
		h1 { font-size: 72px !important; }
		
		.mml_footer .inner0 { padding: 50px 6.458vw 30px 269px; }
	}
	
	@media (max-width: 1199px) { 
		h2 { font-size: 42px !important; }
		
		.mml_row3 .inner0 .w_txt { order: 1; width: 50% !important; }
		.mml_row3 .inner0 .w_txt .vc_column-inner { justify-content: start !important; }
		.mml_row3 .inner0 .img { order: 2; width: 100%; }
		.mml_row3 { padding-left: .5rem !important; padding-right: .5rem !important; }
		
		.mml_row4 .txt h2 { font-size: 44.25px !important; }
	}
	
	@media (max-width: 1024px) { 
		.mml_row2 .wpb_column { width: 100% !important; margin: 0 !important; text-align: center; }
		.mml_row2 .g-cols { row-gap: 24px; }
	}
	
	@media (max-width: 1023px) { 
		h1, .mml_innerheader h1 { font-size: 52px !important; }
	
		.mml_row5 .wpb_column { width: 100% !important; margin: 0 !important; text-align: center; }
		.mml_row5 .g-cols { row-gap: 24px; }
		.mml_row5 .frm .wpb_text_column { margin: auto; }
	}
	
	@media (max-width: 767px) { 
		.mml_hero { padding-top: calc(var(--header-height) + 80px); }
	
	
		h1, .mml_innerheader h1 { font-size: 38px !important; }
		h2, .mml_row4 .txt h2 { font-size: 32px !important; }
		
		
		.mml_hero .g-cols .wpb_column { width: 100%; margin: 0 !important; text-align: center; }
		.mml_hero .g-cols { gap: 50px; }
		
		.mml_row3 .inner0 .w_txt { width: 100% !important; text-align: center !important; margin: 0 !important; }
		.mml_row3 .inner0 .w_txt .vc_column-inner { padding: 0 !important; }
		.mml_row3 .inner0 .txt { margin-bottom: 32px; }


		h2 { font-size: 32px !important; }
		
		footer { margin-bottom: 45px !important; }
		.w-toplink { bottom: 55px !important; }
		
		.mml_footer .bbl { max-width: 120px; left: calc(50% - 60px);}
		.mml_footer .inner0 { flex-direction: column; padding: 25px 70px 25px 129px; padding: 25px 50px 130px 50px; margin-left: 0; text-align: center; }
	}