﻿/**
Theme Name: Sova Child
Description: Child theme of Hello Elementor for the sovaimpex.ro homepage recreation.
Author: Sova Impex
Template: hello-elementor
Version: 1.0.0
Text Domain: sova-child
*/


	:root {
		--pad-xs: 25px;
		--pad-sm: clamp(25px, 2.385vw, 45px);
		--pad-md: clamp(25px, 3.2vw, 72px);
		--pad-lg: clamp(25px, 6.2vw, 100px);
		--pad-xl: clamp(25px, 8.594vw, 165px);
		--pad-xxl: clamp(25px, 15.26vw, 293px);
		--sova-danger: #ff0000;
		--sova-white: #fff;
	}

	img { user-drag: none; -webkit-user-drag: none; user-select: none; -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; }
	a { transition: all .25s ease !important; }

	body,
	button,
	input,
	select,
	textarea { line-height: 1.4; }

	body { font-family: var(--FontBody); }

	#content { overflow: hidden !important; }

	.elementor .e-flexbox-base { padding: 0; }


	.pad_xs { padding-block: var(--pad-xs) !important; }
	.pad_sm { padding-block: var(--pad-sm) !important; }
	.pad_md { padding-block: var(--pad-md) !important; }
	.pad_lg { padding-block: var(--pad-lg) !important; }
	.pad_xl { padding-block: var(--pad-xl) !important; }
	.pad_xxl { padding-block: var(--pad-xxl) !important; }

	h1, h2, h3 { font-family: var(--FontHeading); font-size: clamp(22px, 2.4vw, 38px) !important; line-height: 125% !important;  text-transform: uppercase; }

	.elementor-widget-text-editor p { margin-bottom: 1em !important; }

	.elementor-widget-text-editor p:last-of-type, 
	.elementor-widget-text-editor p:has(+ .btn1, + .btn2) { margin-bottom: 0 !important; }

	.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; }
	.fluentform .text-danger { color: var(--sova-danger); font-weight: bold; }
	.ff-message-success { background-color: var(--sova-white); color: var(--DarkText) !important; }
	.ff-message-success p { margin-bottom: 0; text-align: center; }
	.fluentform .ff-el-group { margin-bottom: 16px !important; }
	.fluentform .ff-el-form-control::placeholder, .ff-default .ff-el-form-control { color: var(--BodyGrey) !important; }
	.ff-default .ff-el-form-control { font-size: 18px !important; }
	.ff-default .ff-el-form-control:focus { border-color: var(--Orange) !important; border-width: 1px !important; border-style: solid !important; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25) !important; }
	.ff-el-group.ff-text-right.ff_submit_btn_wrapper { margin-bottom: 0 !important; }
	::selection, 
	.flatpickr-day.selected, 
	.flatpickr-day.startRange, 
	.flatpickr-day.endRange, 
	.flatpickr-day.selected.inRange, 
	.flatpickr-day.startRange.inRange, 
	.flatpickr-day.endRange.inRange, 
	.flatpickr-day.selected:focus, 
	.flatpickr-day.startRange:focus, 
	.flatpickr-day.endRange:focus, 
	.flatpickr-day.selected:hover, 
	.flatpickr-day.startRange:hover, 
	.flatpickr-day.endRange:hover, 
	.flatpickr-day.selected.prevMonthDay, 
	.flatpickr-day.startRange.prevMonthDay, 
	.flatpickr-day.endRange.prevMonthDay, 
	.flatpickr-day.selected.nextMonthDay, 
	.flatpickr-day.startRange.nextMonthDay, 
	.flatpickr-day.endRange.nextMonthDay { background: var(--Orange) !important; }
	:root {
		--fluentform-primary: var(--Orange) !important;
		--fluentform-danger: var(--Orange) !important;
	} 

	button[type=submit]:before { display: none !important; opacity: 0 !important; }

	.single-post .post_cont { padding-inline: 15px !important; }
	.single-post .post_cont h2 { font-size: clamp(22px, 2vw, 37px) !important; }
	.single-post .post_cont h3 { font-size: clamp(22px, 1.7vw, 34px) !important; }

	.w_img img { object-fit: cover !important; max-width: 100%; height: 100% !important; object-position: center; width: 100%; }
	.w_img { overflow: hidden !important; }
	.w_img.right.top img,
	.bg_img.right.top img { object-position: right top !important; }
	.w_img.left.top img,
	.bg_img.left.top img { object-position: left top !important; }
	.w_img.center.top img,
	.bg_img.center.top img { object-position: center top !important; }
	.w_img.center.bottom img,
	.bg_img.center.bottom img { object-position: center bottom !important; }
	.w_img.center img,
	.bg_img.center img { object-position: center !important; }
	.w_img.left.center img,
	.bg_img.left.center img { object-position: left center !important; }
	.w_img.right.bottom img,
	.bg_img.right.bottom img { object-position: right bottom !important; }	
	.w_img.right.center img,
	.bg_img.right.center img { object-position: right center !important; }
	.w_img.left.bottom img,
	.bg_img.left.bottom img { object-position: left bottom !important; }
	

	.elementor-widget-heading + :where(.elementor-widget-text-editor, .fluentform), 
	ul + p, 
	p + ul { margin-top: clamp(16px, 1.4vw, 28px) !important; }
	
	p:has(+ h1),
	p:has(+ h2),
	p:has(+ h3) { margin-bottom: clamp(14px, 1vw, 24px) !important; }

	p + :where(.btn1, .btn2, .btns), 
	script + :where(.btn1, .btn2, .btns), 
	div + :where(.btn1, .btn2, .btns), 
	:where(.btn1, .btn2) + .elementor-widget-text-editor, 
	p + .elementor-widget-text-editor { margin-top: clamp(4px, 1.7vw, 34px) !important; }

	.whitext :where(h2, h3, h4, strong, p, li, span, a) { color: #fff !important; }

	:where(#content, footer) a { text-decoration: none !important; border-bottom: 1px solid transparent; }
	:where(#content, footer) a:hover { border-color: inherit; }

	p { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; }

	button, 
	.button, 
	input[type="button"], 
	input[type="reset"], 
	input[type="submit"] { box-shadow: none !important; }

	.whitext .btn1 a { background-color: var(--Orange); }
	
	.elementor-menu-toggle:focus, .elementor-menu-toggle:hover { outline: 0 !important; border: 0 !important; }

/* hero */
	.herow, .herow > .inner01, .hero_copy, .hero_row, .hero_btns, .hero_stats { padding: 0 !important; }
	.herow > .inner01 { padding: clamp(115px, 22vw, 330px) 30px 0 !important; }
	.stat { padding: clamp(10px, 1vw, 20px) clamp(10px, 1.2vw, 22px) !important; }
	.herow { position: relative; overflow: hidden; width: 100vw; max-width: 100vw; margin-inline: calc(50% - 50vw); color: var(--sova-white); background-color: var(--DarkSection); background-image: linear-gradient(90deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, .92) 14%, rgba(0, 0, 0, .55) 40%, rgba(0, 0, 0, .15) 70%, rgba(0, 0, 0, 0) 100%), url("https://t2.motechweb.com/wp-content/uploads/2026/10/hero.jpg"); background-size: cover; background-position: 60% 80%; }
	.herow > .inner01 { width: 100%; max-width: 1600px; height: auto; min-height: clamp(760px, 56vw, 1074px); margin-inline: auto; padding-inline: 30px; box-sizing: border-box; }
	.herow .hero_h1 { margin: 0; font-family: var(--FontHeading); font-weight: 900; line-height: 1.12; text-transform: uppercase; color: var(--sova-white); }
	.herow .hero_h1 > br { display: none; }
	.herow .hero_h1 > span { display: block; line-height: 1.12; }
	.herow .hero_h1 > span:nth-of-type(1) { margin-bottom: clamp(6px, .5vw, 12px); font-weight: 400; font-size: clamp(17px, 2vw, 36px); letter-spacing: .12em; line-height: 1.2; }
	.herow .hero_h1 > span:nth-of-type(2) { font-size: clamp(30px, 5.6vw, 104px); color: var(--Orange); letter-spacing: .005em; }
	.herow .hero_h1 > span:nth-of-type(3) { font-size: clamp(28px, 3.9vw, 74px); }
	.hero_copy { gap: 14px; margin: clamp(16px, 1.6vw, 26px) 0 0; max-width: 820px; }
	.hero_copy_p { margin: 0; font-family: var(--FontBody); font-weight: 500; font-size: clamp(15px, 1.1vw, 19px); line-height: 1.5; letter-spacing: .01em; }
	.hero_row { gap: 40px; margin-top: auto !important; padding: 60px 0 clamp(40px, 5vw, 100px) !important; }
	.hero_btns { gap: clamp(14px, 1.2vw, 20px); }
	.hero_btns .btn1, .hero_btns .hero_ghost { display: inline-flex; align-items: center; justify-content: center; width: clamp(190px, 19vw, 380px) !important; flex-shrink: 1 !important; min-width: 0; height: clamp(48px, 3.5vw, 66px); border-radius: 999px !important; box-sizing: border-box; font-family: var(--FontBody); font-weight: 700; font-size: clamp(15px, calc(12px + .3vw), 18px); text-decoration: none; transition: background-color .3s ease, color .3s ease, border-color .3s ease; }
	.hero_btns .btn1 { padding-inline: clamp(28px, 3.4vw, 64px) !important; border: 0; background-color: var(--OrangeButton) !important; color: var(--sova-white) !important; }
	.hero_btns .btn1:hover { background-color: var(--BorderGrey) !important; color: var(--DarkText) !important; }
	.hero_btns .hero_ghost { padding-inline: clamp(28px, 2.2vw, 42px) !important; border: 1.5px solid var(--sova-white) !important; background-color: rgba(0, 0, 0, .7) !important; backdrop-filter: blur(6px); color: var(--sova-white) !important; }
	.hero_btns .hero_ghost:hover { background-color: var(--OrangeAccent) !important; border-color: var(--OrangeAccent); }
	.hero_btns .btn1::after, .hero_btns .hero_ghost::after { content: "\203A"; margin-left: 12px; }
	.hero_stats { width: max-content !important; max-width: 623px !important; flex-shrink: 0 !important; }
	.hero_stats { gap: 12px; border-radius: 20px; background-color: rgba(0, 0, 0, .35); backdrop-filter: blur(12px); box-sizing: border-box; }
	.stat { min-width: max-content; box-sizing: border-box; }
	.stat + .stat { border-left: 1px solid rgba(255, 255, 255, .35); }
	.stat_v { margin: 0; font-family: var(--FontStat); font-size: clamp(34px, 3vw, 52px); line-height: 1; letter-spacing: -.01em; }
	.stat_l { margin: 6px 0 0; font-family: var(--FontBody); font-weight: 600; font-size: clamp(12px, .9vw, 16px); line-height: 1.3; text-align: center; }

/* row1 â€” plata */
	.row1 { padding: clamp(70px, 8vw, 150px) 0 !important; overflow: hidden; gap: clamp(40px, 4vw, 76px); }
	.row1 > .row1_img { flex: 1 1 460px; max-width: 935px; padding: 0 !important; }
	.row1 > .row1_txt { flex: 1 1 460px; max-width: 640px; padding: 0 30px; gap: 30px; box-sizing: border-box; }
	.row1 .row1_head { gap: 0; }
	.row1 .eyebrow { margin: 0; font-family: var(--FontHeading); font-weight: 700; font-size: clamp(18px, 1.7vw, 30px); color: var(--OrangeAccent); }
	.row1 .row1_h2 { margin: 0; font-family: var(--FontHeading); font-weight: 900; font-size: clamp(30px, 3.5vw, 68px) !important; line-height: 1.08 !important; text-transform: uppercase; color: var(--DarkText); }
	.row1 .row1_h2 > span { white-space: nowrap; }
	.row1 .row1_h2 > span:nth-of-type(1) { color: var(--Orange); }
	.row1 .row1_copy { gap: 28px; }
	.row1 .row1_p { margin: 0; font-family: var(--FontBody); font-weight: 400; font-size: clamp(15px, calc(13px + .25vw), 17px); line-height: 1.65; letter-spacing: .01em; color: var(--BodyGrey); }
	.row1_grid .prepay { flex: 0 0 50%; width: 50%; box-sizing: border-box; gap: 16px; }
	.row1_grid .prepay:nth-of-type(odd) { border-right: 1px solid var(--BorderGrey); }
	.row1_grid .prepay:nth-of-type(-n+2) { border-bottom: 1px solid var(--BorderGrey); }
	.row1_grid .prepay:nth-of-type(1) { padding: 0 24px 34px 0; }
	.row1_grid .prepay:nth-of-type(2) { padding: 0 0 34px 54px; }
	.row1_grid .prepay:nth-of-type(3) { padding: 34px 24px 0 0; }
	.row1_grid .prepay:nth-of-type(4) { padding: 34px 0 0 54px; }
	.row1 .prepay_i { width: 62px !important; height: 62px !important; object-fit: contain; }
	.row1 .prepay_t { margin: 0; font-family: var(--FontBody); font-weight: 600; font-size: 17px; line-height: 1.55; letter-spacing: .01em; color: var(--BodyGrey); }

/* header */
	.site_header { position: fixed !important; top: 0; left: 0; right: 0; z-index: 10; width: 100%; background: transparent !important; padding: 0 !important; }
	.site_header.is-scrolled { background: rgba(0, 0, 0, .7) !important; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); transition: background-color .3s ease; }
	.site_header > .header_inner { width: 100%; max-width: 1600px; height: 103px; gap: 24px; margin-inline: auto; padding: 22px 30px !important; box-sizing: border-box; border-bottom: 1px solid rgba(255, 255, 255, .35); }
	.header_logo { width: auto !important; height: clamp(34px, 2.8vw, 52px) !important; max-width: none; }
	.header_nav { width: auto !important; flex: 0 1 auto; min-width: 0; margin-inline: auto !important; }
	.header_nav .elementor-nav-menu a.elementor-item { padding-inline: 0 !important; }
	.header_nav .elementor-menu-toggle { background: transparent !important; color: var(--OrangeAccent) !important; }
	.header_nav .elementor-menu-toggle svg { fill: var(--OrangeAccent) !important; }
	.header_nav ul { flex-wrap: nowrap !important; gap: clamp(10px, 1.2vw, 24px) !important; justify-content: flex-start !important; padding-inline: 18px 0 !important; }
	.header_nav a { position: relative; font-family: var(--FontHeading); font-weight: 800; font-size: clamp(14px, 1.3vw, 18px); letter-spacing: .02em; color: var(--sova-white) !important; text-decoration: none; white-space: nowrap; transition: color .3s ease; }
	.header_nav .elementor-nav-menu a.elementor-item::after { content: none; background: transparent !important; inset: auto !important; border: 0 !important; opacity: 1 !important; }
	.header_nav .elementor-nav-menu a.elementor-item::before { content: ""; position: absolute; left: 0; right: 0; bottom: -8px; height: 2px; inset: auto 0 -30px 0 !important; background: var(--OrangeAccent) !important; opacity: 1 !important; border: 0 !important; transform: scaleX(0) !important; transition: transform .35s cubic-bezier(.2, .7, .2, 1); }
	.header_nav .elementor-nav-menu a.elementor-item:hover::before, .header_nav .elementor-nav-menu a.elementor-item.elementor-item-active::before, .header_nav .nav_active > a.elementor-item::before { transform: scaleX(1) !important; }
	.header_nav a:hover { color: var(--OrangeAccent) !important; }
	.header_nav .nav_active > a { color: var(--sova-white) !important; }
	.header_nav .elementor-nav-menu li.nav_drop > a.elementor-item::after { content: ""; display: inline-block; position: static; width: 6px; height: 6px; margin: 0 0 3px 10px; border-right: 2px solid var(--sova-white); border-bottom: 2px solid var(--sova-white); background: transparent !important; transform: rotate(45deg) !important; }
	.header_lang { margin: 0; font-family: var(--FontHeading); font-weight: 700; font-size: 18px; color: var(--sova-white); white-space: nowrap; }
	.header_btn { margin: 0 !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; line-height: 1 !important; align-items: center; justify-content: center; flex: 0 0 auto; height: clamp(44px, 3vw, 58px); padding: 0 clamp(18px, 1.8vw, 34px) !important; border-radius: 999px !important; background-color: var(--OrangeButton) !important; color: var(--sova-white) !important; font-family: var(--FontHeading); font-weight: 700; font-size: clamp(15px, 1.2vw, 18px); white-space: nowrap; text-decoration: none; transition: background-color .3s ease, color .3s ease; }
	.header_btn:hover { background-color: var(--BorderGrey) !important; color: var(--black, #000) !important; }
	.header_btn::after { content: "\203A"; margin-left: 10px; }

/* animations - hide in CSS; JS adds .is-in
   Keep it light: opacity + small translate only, no will-change, no scale */

:where(
	.herow .txt > *,
	.heroi .txt > *,
	.herog h1,
	.row1 .txt > :not(.row1_grid),
	.row2 .txt > *,
	.row3 .txt > *,
	.row4 .txt > *,
	.row5 .txt > *,
	.row6 .txt > *,
	.gen_cont .txt > *,
	.cta1 .txt > *,
	.cta2 .txt > *,
	.cta3 .txt > *,
	.cta4 .txt > *,
	.cta1 h3,
	.cta2 h3,
	.cta3 h3,
	.cta4 h3,
	.row1 .btn1,
	.row1 .btn2,
	.row2 .btn1,
	.row2 .btn2,
	.row3 .btn1,
	.row3 .btn2,
	.row4 .btn1,
	.row4 .btn2,
	.cta1 .btn1,
	.cta1 .btn2,
	.cta2 .btn1,
	.cta2 .btn2,
	.cta3 .btn1,
	.cta3 .btn2,
	.cta4 .btn1,
	.cta4 .btn2,
	.w_steps,
	.row1 .w_img,
	.row2 .w_img,
	.row3 .w_img,
	.row4 .w_img,
	.row5 .w_img,
	.row6 .w_img,
	.row1 .row1_grid > *
) { opacity: 0; translate: 0 16px; }

/* directional media - opacity + x only (no transform; plays nicer with existing layout) */

:where(
	.lft .w_img
) { opacity: 0; translate: 24px 0; }

:where(
	.rgt .w_img
) { opacity: 0; translate: -24px 0; }

.is-in { opacity: 1 !important; translate: 0 0 !important; transition: opacity .45s ease, translate .45s ease; transition-delay: var(--js-anim-delay, 0ms); }

.txt > .btns { opacity: 1; translate: 0; }

@media (prefers-reduced-motion: reduce), (scripting: none) {
	:where(
		.herow .txt > *,
		.heroi .txt > *,
		.herog h1,
		.row1 .txt > :not(.row1_grid),
		.row2 .txt > *,
		.row3 .txt > *,
		.row4 .txt > *,
		.row5 .txt > *,
		.row6 .txt > *,
		.gen_cont .txt > *,
		.cta1 .txt > *,
		.cta2 .txt > *,
		.cta3 .txt > *,
		.cta4 .txt > *,
		.cta1 h3,
		.cta2 h3,
		.cta3 h3,
		.cta4 h3,
		.row1 .w_img,
		.row2 .w_img,
		.row3 .w_img,
		.row4 .w_img,
		.row5 .w_img,
		.row6 .w_img,
		.row1 .row1_grid > *,
		.lft .w_img,
		.rgt .w_img,
		.w_steps,
		.row1 .btn1,
		.row1 .btn2,
		.row2 .btn1,
		.row2 .btn2,
		.row3 .btn1,
		.row3 .btn2,
		.row4 .btn1,
		.row4 .btn2,
		.cta1 .btn1,
		.cta1 .btn2,
		.cta2 .btn1,
		.cta2 .btn2,
		.cta3 .btn1,
		.cta3 .btn2,
		.cta4 .btn1,
		.cta4 .btn2
	),
	.is-in { opacity: 1 !important; translate: 0 0 !important; transition: none !important; }
}

/* media */
	@media (min-width: 1025px) {
	.row1 { position: relative; }
	.row1 > .w_img { position: absolute !important; left: 0; top: clamp(70px, 8vw, 150px); bottom: clamp(70px, 8vw, 150px); width: min(935px, 49.2%); padding: 0 !important; border-radius: 0 120px 120px 0; }
	.row1 > .row1_txt { margin-left: calc(min(935px, 49.2%) + clamp(40px, 4vw, 76px)) !important; padding-block: clamp(40px, 4vw, 60px); }
	}
	@media (max-width: 1024px) {
	.row1 > .w_img, .row1 > .row1_txt { width: 100%; max-width: none !important; }
	.row1 > .w_img { flex: none !important; padding: 0 30px !important; }
	.row1 .w_img img { height: auto !important; border-radius: 50px; }
	.header_nav { order: 2; align-self: center !important; align-items: flex-end !important; justify-content: center !important; gap: 0 !important; margin-inline: 0 0 !important; position: relative; }
	.header_btn { margin-left: auto !important; }
	.header_nav .elementor-menu-toggle { margin: 0 !important; }
	.header_nav .elementor-nav-menu--dropdown { position: absolute; top: 100%; left: 0; right: 0; }
	.hero_row { flex-wrap: wrap !important; }
	.hero_btns .btn1, .hero_btns .hero_ghost { width: auto !important; }
	}
	@media (max-width: 767px) {
	.site_header > .header_inner { height: auto !important; padding-inline: 20px !important; }
	.header_btn { display: none !important; }
	.herow { min-height: 0 !important; background-image: linear-gradient(180deg, rgba(0, 0, 0, .92) 0%, rgba(0, 0, 0, .85) 40%, rgba(0, 0, 0, .35) 62%, rgba(0, 0, 0, .1) 80%, rgba(0, 0, 0, .45) 100%), url("https://t2.motechweb.com/wp-content/uploads/2026/10/hero.jpg"); background-position: 22% 100%; }
	.herow > .inner01 { min-height: 0; }
	.herow .hero_h1, .herow .hero_h1 > span { line-height: .95; }
	.hero_copy { margin-top: 26px; }
	.hero_row { flex-direction: column !important; align-items: stretch !important; gap: 120px !important; margin-top: auto; padding: 60px 0 0 !important; }
	.hero_btns { flex-direction: column !important; align-items: stretch !important; }
	.hero_btns .btn1, .hero_btns .hero_ghost { width: 100% !important; }
	.hero_stats { width: calc(100% + 60px) !important; max-width: none !important; margin-inline: -30px; padding: 18px 0 !important; border-radius: 0; justify-content: space-around; }
	.stat { min-width: 0; flex: 0 1 auto; padding: 0 clamp(6px, .7vw, 12px) !important; }

	.row1_grid .prepay:nth-of-type(1) { padding: 0 12px 26px 0; }
	.row1_grid .prepay:nth-of-type(2) { padding: 0 0 26px 30px; }
	.row1_grid .prepay:nth-of-type(3) { padding: 26px 12px 0 0; }
	.row1_grid .prepay:nth-of-type(4) { padding: 26px 0 0 30px; }
	}
	
