.elementor-kit-6{--e-global-color-primary:#FC5A20;--e-global-color-secondary:#18181B;--e-global-color-text:#6B6B73;--e-global-color-accent:#2F7A5A;--e-global-color-sxpeach:#FFF1E8;--e-global-color-sxgreenbg:#E8F3EC;--e-global-color-sxline:#ECE8E4;--e-global-color-sxinput:#FAF6F2;--e-global-color-sxwa:#1F7A57;--e-global-typography-primary-font-family:"Plus Jakarta Sans";--e-global-typography-primary-font-weight:800;--e-global-typography-secondary-font-family:"Plus Jakarta Sans";--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:600;background-color:#FFFFFF;color:#18181B;font-family:"Inter", Sans-serif;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:440px;}.e-con{--container-max-width:440px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ==========================================================
   Sunthrix Solar App – global styles
   Edit in: Elementor > Site Settings > Custom CSS
   ========================================================== */
:root {
	--sx-orange: #FC5A20;
	--sx-orange-soft: #FFF1E8;
	--sx-ink: #18181B;
	--sx-text: #6B6B73;
	--sx-label: #27272A;
	--sx-line: #ECE8E4;
	--sx-input: #FAF6F2;
	--sx-input-line: #EDE6DF;
	--sx-placeholder: #A8A29E;
	--sx-green: #2F7A5A;
	--sx-green-soft: #E8F3EC;
	--sx-nav-h: 74px;
}

body.sx-app {
	background: #FFFFFF;
	color: var(--sx-ink);
	-webkit-tap-highlight-color: transparent;
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}
.sx-app .elementor-widget-text-editor p { margin: 0; }
.sx-app .elementor-widget-text-editor p + p { margin-top: .6em; }
.sx-app a.e-con, .sx-app a.e-con:hover { color: inherit; text-decoration: none; }

/* Lucide-style line icons (uploaded SVGs) */
.sx-app svg.lucide { fill: none !important; stroke: currentColor; }

/* Headline helpers – use <span class="sx-hl"> / <span class="sx-sub"> in a heading */
.sx-hl { color: var(--sx-orange); }
.sx-sub { color: #6E6E76; }

/* Tappable cards */
.sx-card { transition: transform .15s ease, box-shadow .15s ease; }
.sx-card:active { transform: scale(.985); }

/* Back link */
.sx-back .elementor-button { background: transparent !important; padding: 0 !important; box-shadow: none !important; }
.sx-back .elementor-button-content-wrapper { gap: 4px; align-items: center; }
.sx-back .elementor-button-icon svg { width: 18px; height: 18px; }

/* Buttons with line icons */
.sx-app .elementor-button-icon svg.lucide { width: 1.15em; height: 1.15em; }
.sx-btn-call .elementor-button-icon { color: var(--sx-orange); }
.sx-btn-call .elementor-button-content-wrapper,
.sx-btn-wa .elementor-button-content-wrapper { gap: 8px; align-items: center; justify-content: center; }
.sx-btn-wa .elementor-button-icon svg { width: 1.25em; height: 1.25em; fill: currentColor; }
.sx-btn-pill .elementor-button-content-wrapper { gap: 6px; align-items: center; }

/* Info box */
.sx-info > .elementor-widget-text-editor { flex: 1 1 0; min-width: 0; }

/* Hero badge */
.sx-badge { -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }

/* Trust strip dividers */
.sx-trust > .e-con + .e-con { border-left: 1px solid #E6E0D9; }

/* ---------- AJAX page loading (sunthrix-app.js) ---------- */
.sx-progress {
	position: fixed; top: 0; left: 0; z-index: 10002;
	height: 3px; width: 0; opacity: 0;
	background: var(--sx-orange);
	box-shadow: 0 0 8px rgba(252, 90, 32, .5);
	pointer-events: none;
}
.sx-progress.is-active { opacity: 1; width: 85%; transition: width 4s cubic-bezier(.1, .7, .2, 1), opacity .15s; }
html.sx-loading [data-elementor-type="wp-page"] { opacity: .55; transition: opacity .15s ease; pointer-events: none; }
[data-elementor-type="wp-page"] { animation: sx-page-in .22s ease both; }
@keyframes sx-page-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
	[data-elementor-type="wp-page"] { animation: none; }
}

/* ---------- Bottom navigation (Theme Builder footer) ---------- */
.sx-app { padding-bottom: calc(var(--sx-nav-h) + env(safe-area-inset-bottom)); }
.sx-bottom-nav {
	position: fixed !important;
	left: 0; right: 0; bottom: 0;
	z-index: 999;
	padding-bottom: env(safe-area-inset-bottom) !important;
	box-shadow: 0 -1px 0 #EFECE8;
}
.sx-nav-item .elementor-icon {
	padding: 7px 18px;
	border-radius: 999px;
	transition: background-color .2s ease, color .2s ease;
}
.sx-nav-item .elementor-icon svg { width: 20px; height: 20px; }
.sx-nav-item.is-active .elementor-icon {
	background: var(--sx-orange);
	color: #FFFFFF !important;
	box-shadow: 0 6px 14px -4px rgba(252, 90, 32, .55);
}
.sx-nav-item.is-active .elementor-heading-title { color: var(--sx-orange) !important; font-weight: 600 !important; }

/* ---------- Forms ---------- */
.sx-form .elementor-form-fields-wrapper { margin: 0 !important; }
.sx-form .elementor-field-group { padding: 0 !important; margin: 0 !important; }

/* Cards are drawn automatically from the field list:
   an HTML field containing .sx-step starts a card; the next step, the Declaration or the button ends it.
   The Declaration (acceptance field) is always its own card. */
.sx-form .elementor-field-group:not(.e-form__buttons) {
	background: #FFFFFF;
	border-left: 1px solid var(--sx-line);
	border-right: 1px solid var(--sx-line);
	padding: 0 20px 18px !important;
}
.sx-form .elementor-field-group:has(.sx-step),
.sx-form .elementor-field-group.elementor-field-type-acceptance {
	border-top: 1px solid var(--sx-line);
	border-radius: 22px 22px 0 0;
	padding-top: 22px !important;
	margin-top: 16px !important;
}
.sx-form .elementor-field-group:has(.sx-step) { padding-bottom: 20px !important; }
.sx-form .elementor-field-group:not(.e-form__buttons):has(+ .elementor-field-group .sx-step),
.sx-form .elementor-field-group:not(.e-form__buttons):has(+ .elementor-field-type-acceptance),
.sx-form .elementor-field-group:not(.e-form__buttons):has(+ .e-form__buttons),
.sx-form .elementor-field-group.elementor-field-type-acceptance {
	border-bottom: 1px solid var(--sx-line);
	border-bottom-left-radius: 22px;
	border-bottom-right-radius: 22px;
	padding-bottom: 22px !important;
}
.sx-form .elementor-field-group.elementor-field-type-acceptance { border-radius: 22px; padding-top: 20px !important; padding-bottom: 20px !important; }
.sx-form .elementor-form-fields-wrapper > .elementor-field-group:first-child { margin-top: 0 !important; }
/* Two fields side by side: add CSS class sx-half-l / sx-half-r and set Column Width 50% */
.sx-form .elementor-field-group:has(.sx-half-l) { border-right: 0; padding-right: 6px !important; }
.sx-form .elementor-field-group:has(.sx-half-r) { border-left: 0; padding-left: 6px !important; }
/* a pair at the end of a card closes the card together */
.sx-form .elementor-field-group:has(.sx-half-l):has(+ .elementor-field-group + .e-form__buttons),
.sx-form .elementor-field-group:has(.sx-half-l):has(+ .elementor-field-group + .elementor-field-type-acceptance),
.sx-form .elementor-field-group:has(.sx-half-l):has(+ .elementor-field-group + .elementor-field-group .sx-step) {
	border-bottom: 1px solid var(--sx-line);
	border-bottom-left-radius: 22px;
	padding-bottom: 22px !important;
}
.sx-form .elementor-field-group:has(.sx-half-r) { border-bottom-left-radius: 0 !important; }
/* Small helper text under a field */
.sx-form .elementor-field-group:has(> .sx-help) { margin-top: -10px !important; }

/* Card heading: <div class="sx-step"><span class="sx-step-num">1</span>Title</div> */
.sx-step {
	display: flex; align-items: center; gap: 12px;
	font-family: "Plus Jakarta Sans", sans-serif; font-weight: 700; font-size: 17px;
	letter-spacing: -.2px; color: var(--sx-ink);
}
.sx-step-num {
	flex: none; width: 26px; height: 26px; border-radius: 50%;
	background: var(--sx-ink); color: #FFFFFF;
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 13px; font-weight: 700;
}
.sx-help { margin: 0; font-family: Inter, sans-serif; font-size: 12px; line-height: 1.45; color: var(--sx-text); }
.sx-desc { margin: 0; font-family: Inter, sans-serif; font-size: 13px; line-height: 1.5; color: var(--sx-text); }

/* Labels */
.sx-form .elementor-field-label {
	display: flex; align-items: baseline; gap: 2px;
	width: 100%; flex-basis: 100%;
	margin-bottom: 8px;
	font-family: Inter, sans-serif; font-weight: 600; font-size: 14px; color: var(--sx-label);
}
.sx-form .elementor-field-group:has(.sx-opt) > .elementor-field-label::after {
	content: "Optional";
	margin-left: auto;
	font-weight: 400; font-size: 12px; color: #7A7A82;
}

/* Inputs */
.sx-form .elementor-field-group .elementor-field-textual {
	min-height: 52px;
	padding: 12px 16px;
	background-color: var(--sx-input);
	border: 1px solid var(--sx-input-line);
	border-radius: 14px;
	font-family: Inter, sans-serif; font-size: 16px; color: var(--sx-ink);
	box-shadow: none;
	transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}
.sx-form textarea.elementor-field-textual { min-height: 118px; resize: none; line-height: 1.5; }
.sx-form .elementor-field-textual::placeholder { color: var(--sx-placeholder); opacity: 1; }
.sx-form .elementor-field-textual:focus {
	outline: none;
	border-color: var(--sx-orange);
	background-color: #FFFFFF;
	box-shadow: 0 0 0 3px rgba(252, 90, 32, .12);
}
.sx-form input[type="date"].elementor-field-textual { -webkit-appearance: none; appearance: none; color: var(--sx-label); }
.sx-form input[type="date"]::-webkit-date-and-time-value { text-align: left; }

/* Dropdowns */
.sx-form .elementor-select-wrapper .select-caret-down-wrapper { display: none; }
.sx-form .elementor-select-wrapper select.elementor-field-textual {
	-webkit-appearance: none; appearance: none;
	padding-right: 44px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2352525B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 16px center;
	background-size: 18px;
}
.sx-form .elementor-field-group select.sx-empty { color: var(--sx-placeholder) !important; }

/* Bottom-sheet picker for dropdowns (sunthrix-app.js) */
.sx-form .elementor-select-wrapper { position: relative; }
.sx-app .sx-select-hit,
.sx-app .sx-select-hit:hover,
.sx-app .sx-select-hit:focus {
	position: absolute; inset: 0; z-index: 2;
	width: 100%; height: 100%; margin: 0; padding: 0;
	background: transparent !important; border: 0 !important; border-radius: 14px;
	cursor: pointer;
}
.sx-app .sx-select-hit:focus-visible { outline: 2px solid var(--sx-orange); outline-offset: 2px; }
.sx-form .elementor-select-wrapper.sx-select-open select.elementor-field-textual {
	border-color: var(--sx-orange) !important;
	box-shadow: 0 0 0 3px rgba(252, 90, 32, .12);
}
html.sx-sheet-lock, html.sx-sheet-lock body { overflow: hidden; }
.sx-sheet-backdrop {
	position: fixed; inset: 0; z-index: 10000;
	background: rgba(24, 24, 27, .35);
	-webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px);
	opacity: 0; transition: opacity .22s ease;
}
.sx-sheet-backdrop.is-open { opacity: 1; }
.sx-sheet {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 10001;
	max-width: 440px; max-height: 75vh; margin: 0 auto;
	display: flex; flex-direction: column;
	padding: 10px 16px calc(20px + env(safe-area-inset-bottom));
	background: #FFFFFF; border-radius: 24px 24px 0 0;
	box-shadow: 0 -10px 30px rgba(0, 0, 0, .12);
	transform: translateY(100%); transition: transform .26s cubic-bezier(.2, .8, .2, 1);
}
.sx-sheet.is-open { transform: none; }
.sx-sheet:focus { outline: none; }
.sx-sheet-handle { flex: none; width: 40px; height: 4px; margin: 0 auto 16px; border-radius: 2px; background: #DAD6D2; }
.sx-sheet-head { flex: none; display: flex; align-items: center; justify-content: space-between; padding: 0 4px 14px; }
.sx-sheet-title { font-family: "Plus Jakarta Sans", sans-serif; font-weight: 700; font-size: 16px; line-height: 1.3; letter-spacing: -.2px; color: var(--sx-ink); }
.sx-sheet .sx-sheet-close,
.sx-sheet .sx-sheet-close:hover,
.sx-sheet .sx-sheet-close:focus {
	display: inline-flex; padding: 4px; margin: 0;
	background: transparent !important; border: 0 !important; border-radius: 8px;
	color: #3F3F46 !important; cursor: pointer;
}
.sx-sheet-close svg { width: 18px; height: 18px; }
.sx-sheet-list { display: flex; flex-direction: column; gap: 8px; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.sx-sheet .sx-sheet-opt,
.sx-sheet .sx-sheet-opt:hover,
.sx-sheet .sx-sheet-opt:focus {
	display: flex; align-items: center; gap: 14px;
	width: 100%; margin: 0; padding: 16px;
	background: #FAF8F6 !important; border: 1px solid #EFEBE7 !important; border-radius: 14px;
	font-family: Inter, sans-serif; font-weight: 500; font-size: 15px; line-height: 1.3; text-align: left;
	color: var(--sx-label) !important; cursor: pointer;
	outline: none;
}
.sx-sheet .sx-sheet-opt:focus-visible { box-shadow: 0 0 0 3px rgba(252, 90, 32, .18); }
.sx-sheet .sx-sheet-opt[aria-checked="true"] { background: #FFF5EF !important; border-color: var(--sx-orange) !important; }
.sx-radio {
	position: relative; flex: none;
	width: 20px; height: 20px; border-radius: 50%;
	border: 1.5px solid #D6D0CA; background: #FFFFFF;
	transition: border-color .15s ease;
}
.sx-sheet-opt[aria-checked="true"] .sx-radio { border-color: var(--sx-orange); }
.sx-sheet-opt[aria-checked="true"] .sx-radio::after {
	content: ""; position: absolute; inset: 3.5px; border-radius: 50%; background: var(--sx-orange);
}
.sx-form select option { color: var(--sx-ink); }

/* Phone field with +91 prefix (added by sunthrix-app.js) */
.sx-tel-wrap {
	flex-basis: 100%; width: 100%;
	display: flex; align-items: stretch;
	border: 1px solid var(--sx-input-line); border-radius: 14px;
	background: #FFFFFF; overflow: hidden;
	transition: border-color .15s ease, box-shadow .15s ease;
}
.sx-tel-wrap:focus-within { border-color: var(--sx-orange); box-shadow: 0 0 0 3px rgba(252, 90, 32, .12); }
.sx-tel-prefix {
	flex: none; display: flex; align-items: center; gap: 8px;
	padding: 0 14px 0 16px;
	background: #FDF3EE; border-right: 1px solid var(--sx-input-line);
	font-family: Inter, sans-serif; font-weight: 600; font-size: 16px; color: var(--sx-label);
}
.sx-tel-prefix svg { width: 16px; height: 16px; color: var(--sx-orange); }
.sx-form .sx-tel-wrap .elementor-field-textual,
.sx-form .sx-tel-wrap .elementor-field-textual:focus {
	flex: 1; min-width: 0;
	border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
	background-color: #FFFFFF !important;
}

/* Character counter */
.sx-count { flex-basis: 100%; display: block; margin-top: 6px; text-align: right; font-family: Inter, sans-serif; font-size: 12px; color: #7A7A82; }

/* Upload box (added by sunthrix-app.js) */
.sx-upload {
	position: relative;
	width: 144px; height: 104px;
	display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px;
	background: #FBF6F1; border: 1.5px dashed #E9C9B6; border-radius: 14px;
	font-family: Inter, sans-serif; font-weight: 600; font-size: 14px; color: var(--sx-label);
	cursor: pointer;
}
.sx-upload svg { width: 22px; height: 22px; color: var(--sx-orange); }
.sx-upload.has-files { border-color: var(--sx-orange); background: var(--sx-orange-soft); }
.sx-upload input[type="file"] {
	position: absolute; inset: 0; width: 100%; height: 100%;
	opacity: 0; cursor: pointer; font-size: 0;
}
.sx-upload-list { flex-basis: 100%; display: flex; flex-direction: column; gap: 2px; margin-top: 8px; font-size: 13px; color: var(--sx-label); word-break: break-all; }
.sx-upload-list:empty { display: none; }

/* Declaration checkbox */
.sx-form .elementor-field-type-acceptance .elementor-field-subgroup { display: block; }
.sx-form .elementor-field-type-acceptance .elementor-field-option { display: flex; align-items: flex-start; gap: 12px; margin: 0; }
.sx-form .elementor-field-type-acceptance input[type="checkbox"] {
	-webkit-appearance: none !important; appearance: none !important;
	flex: none; width: 22px !important; height: 22px !important; margin: 1px 0 0 !important;
	border: 1.5px solid #CFC8C1 !important; border-radius: 6px !important; background-color: #FFFFFF;
	opacity: 1 !important; position: static !important;
	cursor: pointer;
}
.sx-form .elementor-field-type-acceptance input[type="checkbox"]:checked {
	background: var(--sx-orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 14px no-repeat;
	border-color: var(--sx-orange);
}
.sx-form .elementor-field-type-acceptance .elementor-field-option label {
	font-family: Inter, sans-serif !important; font-size: 13px !important; line-height: 1.6 !important; color: var(--sx-text) !important; font-weight: 400 !important;
}
.sx-form .elementor-field-type-acceptance .elementor-field-option label strong {
	display: block; margin-bottom: 2px;
	font-size: 14px; font-weight: 600; color: var(--sx-ink);
}

/* Submit button */
.sx-form .e-form__buttons { padding: 0 !important; margin-top: 22px !important; }
.sx-form .elementor-button[type="submit"] {
	min-height: 56px;
	box-shadow: 0 14px 24px -10px rgba(252, 90, 32, .6);
}

/* Messages */
.sx-form .elementor-message { margin-top: 14px; padding: 12px 14px; border-radius: 14px; font-size: 14px; line-height: 1.5; }
.sx-form .elementor-message.elementor-message-success { background: var(--sx-green-soft); color: #1F5A41; }
.sx-form .elementor-message.elementor-message-danger { background: #FDECEC; color: #B42318; }
.sx-form .elementor-message::before { display: none; }
.sx-form .elementor-error .elementor-field-textual,
.sx-form .elementor-error .sx-tel-wrap { border-color: #E5484D; }
.sx-form .elementor-field-group .elementor-message.elementor-help-inline { padding: 0; margin-top: 6px; background: none; font-size: 12px; }/* End custom CSS */