/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

:root {
	--ts-bg: #eef4ff;
	--ts-card: #ffffff;
	--ts-text: #183152;
	--ts-muted: #667995;
	--ts-line: #e2eaf6;
	--ts-blue: #1677d2;
	--ts-blue-dark: #0f5fac;
	--ts-red: #ee2f35;
}

body.single-post {
	background: var(--ts-bg);
	color: var(--ts-text);
}

html {
	scroll-behavior: smooth;
}

.ts-article-page {
	background: linear-gradient(180deg, #f3f6ff 0%, #eaf3ff 100%);
	padding: 18px 0 56px;
}

.ts-article-shell {
	margin: 0 auto;
	max-width: 1270px;
	padding: 0 15px;
}

.ts-breadcrumb {
	align-items: center;
	color: #7b8ba5;
	display: flex;
	flex-wrap: wrap;
	font-size: 12px;
	gap: 8px;
	margin: 0 0 28px;
}

.ts-breadcrumb a {
	color: #4778b8;
}

.ts-article-layout {
	align-items: flex-start;
	display: grid;
	gap: 20px;
	grid-template-columns: minmax(0, 2fr) minmax(260px, 0.92fr);
}

.ts-article-card,
.ts-share-card,
.ts-related-card,
.ts-widget {
	background: var(--ts-card);
	border: 1px solid var(--ts-line);
	border-radius: 8px;
	box-shadow: 0 8px 24px rgba(32, 73, 125, 0.06);
	overflow: hidden;
}

.ts-article-header {
	padding: 34px 24px 24px;
}

.ts-article-header h1 {
	color: var(--ts-text);
	font-size: clamp(28px, 4vw, 38px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.18;
	margin: 0 0 18px;
}

.ts-post-meta {
	align-items: center;
	color: var(--ts-muted);
	display: flex;
	flex-wrap: wrap;
	font-size: 13px;
	gap: 8px 12px;
	line-height: 1.4;
}

.ts-post-meta a,
.ts-post-meta span {
	color: var(--ts-muted);
	position: relative;
}

.ts-post-meta .ts-meta-category {
	background: #f3f7ff;
	border: 1px solid #dbe7fb;
	border-radius: 4px;
	color: #3f6fae;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	padding: 6px 10px;
}

.ts-post-meta .ts-meta-date,
.ts-post-meta .ts-meta-comments {
	align-items: center;
	display: inline-flex;
	gap: 5px;
}

.ts-post-meta .ts-meta-date::before,
.ts-post-meta .ts-meta-comments::before {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: inline-block;
	flex: 0 0 auto;
	height: 14px;
	width: 14px;
}

.ts-post-meta .ts-meta-date::before {
	background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23667995' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/svg%3E");
}

.ts-post-meta .ts-meta-comments::before {
	background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23667995' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21 15a4 4 0 0 1-4 4H7l-4 4V7a4 4 0 0 1 4-4h10a4 4 0 0 1 4 4z'/%3E%3C/svg%3E");
}

.ts-featured-image {
	aspect-ratio: 16 / 9;
	background: #dbe7f7;
	margin: 0;
	overflow: hidden;
}

.ts-featured-image img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ts-toc-box {
	border-bottom: 1px solid var(--ts-line);
	border-top: 1px solid var(--ts-line);
	color: var(--ts-muted);
	display: grid;
	gap: 22px;
	padding: 18px 24px;
}

.ts-toc-box strong {
	color: var(--ts-text);
	font-size: 15px;
}

.ts-toc-box span {
	font-size: 13px;
}

.ts-toc-list {
	display: grid;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ts-toc-list li {
	margin: 0;
}

.ts-toc-list a {
	color: #4778b8;
	display: inline-flex;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
}

.ts-toc-list a:hover {
	color: var(--ts-blue-dark);
}

.ts-toc-level-3 {
	padding-left: 16px;
}

.ts-toc-level-4 {
	padding-left: 32px;
}

.ts-entry-content {
	color: #314761;
	font-size: 15px;
	line-height: 1.85;
	padding: 26px 24px 18px;
}

.ts-entry-content p,
.ts-entry-content ul,
.ts-entry-content ol,
.ts-entry-content blockquote,
.ts-entry-content figure {
	margin-bottom: 1.2em;
}

.ts-entry-content h2,
.ts-entry-content h3,
.ts-entry-content h4 {
	color: var(--ts-text);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.3;
	margin: 1.5em 0 0.7em;
	scroll-margin-top: 96px;
}

.ts-tags {
	align-items: center;
	border-top: 1px solid var(--ts-line);
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 18px 24px 24px;
}

.ts-tags strong {
	font-size: 14px;
}

.ts-tags a,
.ts-trend-list a {
	background: #f3f7ff;
	border: 1px solid #dbe7fb;
	border-radius: 4px;
	color: #4778b8;
	display: inline-flex;
	font-size: 12px;
	line-height: 1;
	margin: 0 6px 6px 0;
	padding: 7px 9px;
}

.ts-sidebar {
	display: grid;
	gap: 16px;
	position: sticky;
	top: 24px;
}

.ts-widget {
	padding: 18px;
}

.ts-sidebar .ts-widget {
	padding: 22px 24px;
}

.ts-widget h2,
.ts-widget-title {
	color: var(--ts-text);
	font-size: 16px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.3;
	margin: 0 0 14px;
}

.ts-sidebar .ts-widget h2,
.ts-sidebar .ts-widget-title {
	margin: 0 0 16px;
}

.ts-link-list,
.ts-popular-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.ts-sidebar .ts-link-list,
.ts-sidebar .ts-popular-list,
.ts-sidebar .ts-trend-list {
	margin: 0;
	padding: 0;
}

.ts-link-list li {
	border-top: 1px solid #edf2fa;
	margin: 0;
	padding: 12px 0;
}

.ts-link-list li:first-child {
	border-top: 0;
	padding-top: 0;
}

.ts-link-list a {
	color: #314761;
	font-size: 14px;
}

.ts-popular-list li {
	border-top: 1px solid #edf2fa;
	margin: 0;
	padding: 16px 0;
}

.ts-popular-list li:first-child {
	border-top: 0;
	padding-top: 0;
}

.ts-popular-list .ts-popular-title {
	color: var(--ts-text);
	display: block;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.45;
}

.ts-popular-list .ts-popular-meta {
	gap: 6px 9px;
	margin-top: 8px;
}

.ts-popular-list .ts-popular-meta .ts-meta-category {
	font-size: 10px;
	padding: 4px 7px;
}

.ts-popular-list .ts-popular-meta .ts-meta-date,
.ts-popular-list .ts-popular-meta .ts-meta-comments {
	font-size: 10px;
}

.ts-popular-list .ts-popular-meta .ts-meta-date::before,
.ts-popular-list .ts-popular-meta .ts-meta-comments::before {
	height: 12px;
	width: 12px;
}

.ts-sidebar .widget_media_image {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	padding: 0;
}

.ts-sidebar .widget_flatsome_child_article_search {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	padding: 0;
}

.ts-sidebar-search {
	background: #fff;
	border: 1px solid #cfe0f7;
	border-radius: 8px;
	box-shadow: 0 8px 24px rgba(32, 73, 125, 0.04);
	margin: 0;
	position: relative;
}

.ts-sidebar-search::before {
	background-image: url("data:image/svg+xml,%3Csvg width='19' height='19' viewBox='0 0 24 24' fill='none' stroke='%23183152' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 19px;
	left: 18px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 19px;
}

.ts-sidebar-search input {
	background: transparent;
	border: 0;
	box-shadow: none;
	color: var(--ts-text);
	font-size: 15px;
	height: 56px;
	margin: 0;
	padding: 0 18px 0 52px;
	width: 100%;
}

.ts-sidebar-search input:focus {
	box-shadow: none;
	outline: 0;
}

.ts-sidebar-search input::placeholder {
	color: #667995;
	opacity: 1;
}

.ts-sidebar .widget_media_image img {
	border-radius: 8px;
	display: block;
	height: auto;
	width: 100%;
}

.ts-share-card,
.ts-related-card {
	margin-top: 18px;
	padding: 24px;
}

.ts-share-card {
	max-width: calc((100% - 20px) * 0.69);
}

.ts-share-card h2,
.ts-section-head h2 {
	color: var(--ts-text);
	font-size: 20px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.3;
	margin: 0 0 16px;
}

.ts-share-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.ts-share-actions a {
	align-items: center;
	background: #fff;
	border: 1px solid #c9dcff;
	border-radius: 4px;
	color: #19345b;
	display: inline-flex;
	font-size: 13px;
	font-weight: 500;
	gap: 9px;
	min-height: 38px;
	overflow: hidden;
	padding: 0 12px 0 0;
}

.ts-share-actions a span {
	align-items: center;
	align-self: stretch;
	background: #eef5ff;
	border-right: 1px solid #d9e7ff;
	color: #2f6edb;
	display: inline-flex;
	font-size: 15px;
	font-weight: 800;
	justify-content: center;
	line-height: 1;
	min-width: 36px;
	text-transform: lowercase;
}

.ts-share-actions .ts-share-linkedin span {
	font-size: 13px;
}

.ts-share-actions a:hover {
	background: #f7fbff;
	border-color: #9fc2ff;
	color: var(--ts-blue-dark);
}

.ts-more-button {
	align-items: center;
	background: var(--ts-blue);
	border-radius: 4px;
	color: #fff;
	display: inline-flex;
	font-size: 13px;
	font-weight: 700;
	min-height: 38px;
	padding: 10px 16px;
}

.ts-more-button:hover {
	background: var(--ts-blue-dark);
	color: #fff;
}

.ts-related-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ts-related-item {
	border: 1px solid var(--ts-line);
	border-radius: 8px;
	overflow: hidden;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.ts-related-item:hover {
	box-shadow: 0 12px 30px rgba(32, 73, 125, 0.1);
	transform: translateY(-1px);
}

.ts-related-thumb {
	aspect-ratio: 4 / 3;
	background: #dbe7f7;
	display: block;
	overflow: hidden;
	position: relative;
}

.ts-related-thumb img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ts-related-thumb > span {
	align-items: center;
	color: #6d7e96;
	display: flex;
	font-weight: 700;
	height: 100%;
	justify-content: center;
}

.ts-related-thumb em {
	background: var(--ts-red);
	border-radius: 3px;
	color: #fff;
	font-size: 11px;
	font-style: normal;
	font-weight: 700;
	line-height: 1;
	padding: 6px 8px;
	position: absolute;
	right: 8px;
	top: 8px;
}

.ts-related-body {
	padding: 14px;
}

.ts-related-body h3 {
	font-size: 16px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.35;
	margin: 10px 0 8px;
}

.ts-related-body h3 a {
	color: var(--ts-text);
}

.ts-related-body p {
	color: #50627c;
	font-size: 13px;
	line-height: 1.55;
	margin: 0;
}

.ts-more-button {
	margin-top: 24px;
}

body.archive,
body.blog,
body.search {
	background: #ffffff;
	color: var(--ts-text);
}

.ts-news-archive-page {
	background: #ffffff;
	padding-bottom: 56px;
}

.ts-archive-shell {
	margin: 0 auto;
	max-width: 1270px;
	padding: 0 15px;
}

.ts-archive-hero {
	background:
		linear-gradient(90deg, rgba(17, 71, 123, 0.98) 0%, rgba(19, 116, 189, 0.9) 52%, rgba(19, 116, 189, 0.45) 100%),
		var(--ts-archive-hero-image, linear-gradient(135deg, #174a7d, #4ba3db));
	background-position: center;
	background-size: cover;
	color: #fff;
	margin-bottom: 26px;
	min-height: 230px;
	padding: 68px 0;
}

.ts-archive-hero h1 {
	color: #fff;
	font-size: clamp(32px, 4vw, 42px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.15;
	margin: 0 0 12px;
}

.ts-archive-hero p {
	color: rgba(255, 255, 255, 0.9);
	font-size: 16px;
	margin: 0;
}

.ts-archive-breadcrumb {
	margin-bottom: 38px;
}

.ts-archive-layout {
	align-items: flex-start;
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(0, 1fr) 320px;
}

.ts-archive-main {
	display: grid;
	gap: 52px;
	min-width: 0;
}

.ts-archive-section h2 {
	color: var(--ts-text);
	font-size: clamp(28px, 3vw, 36px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.2;
	margin: 0 0 24px;
}

.ts-latest-layout {
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(260px, 0.95fr) minmax(0, 1.55fr);
}

.ts-latest-list {
	display: grid;
	gap: 13px;
}

.ts-archive-card,
.ts-latest-row {
	background: #fff;
	border: 1px solid var(--ts-line);
	border-radius: 8px;
	box-shadow: 0 8px 24px rgba(32, 73, 125, 0.05);
	overflow: hidden;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.ts-archive-card:hover,
.ts-latest-row:hover {
	box-shadow: 0 12px 30px rgba(32, 73, 125, 0.1);
	transform: translateY(-1px);
}

.ts-archive-thumb {
	aspect-ratio: 4 / 3;
	background: #dbe7f7;
	display: block;
	overflow: hidden;
	position: relative;
}

.ts-archive-thumb img,
.ts-latest-row-thumb img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.ts-archive-thumb > span {
	align-items: center;
	color: #6d7e96;
	display: flex;
	font-weight: 700;
	height: 100%;
	justify-content: center;
}

.ts-archive-thumb em {
	background: var(--ts-red);
	border-radius: 3px;
	color: #fff;
	font-size: 11px;
	font-style: normal;
	font-weight: 700;
	line-height: 1;
	padding: 6px 8px;
	position: absolute;
	right: 8px;
	top: 8px;
}

.ts-archive-card-body {
	padding: 14px;
}

.ts-archive-card-body h3,
.ts-latest-row-body h3 {
	font-size: 17px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.35;
	margin: 11px 0 8px;
}

.ts-archive-card-body h3 a,
.ts-latest-row-body h3 a {
	color: var(--ts-text);
}

.ts-archive-card-body p,
.ts-latest-row-body p {
	color: #50627c;
	font-size: 13px;
	line-height: 1.55;
	margin: 0;
}

.ts-latest-row {
	display: grid;
	gap: 14px;
	grid-template-columns: 160px minmax(0, 1fr);
	padding: 10px;
}

.ts-latest-row-thumb {
	align-self: stretch;
	background: #dbe7f7;
	border-radius: 6px;
	display: block;
	height: 100%;
	min-height: 118px;
	overflow: hidden;
}

.ts-latest-row-body {
	min-width: 0;
	padding: 2px 4px 2px 0;
}

.ts-latest-row .ts-post-meta,
.ts-archive-card .ts-post-meta {
	font-size: 11px;
	gap: 6px 9px;
}

.ts-latest-row .ts-meta-category,
.ts-archive-card .ts-meta-category {
	font-size: 10px;
	padding: 4px 7px;
}

.ts-latest-row .ts-meta-date::before,
.ts-latest-row .ts-meta-comments::before,
.ts-archive-card .ts-meta-date::before,
.ts-archive-card .ts-meta-comments::before {
	height: 12px;
	width: 12px;
}

.ts-archive-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ts-load-more-button {
	background: #fff;
	border: 1px solid var(--ts-line);
	border-radius: 4px;
	color: #314761;
	display: inline-flex;
	font-size: 14px;
	font-weight: 700;
	margin-top: 24px;
	min-height: 42px;
	padding: 11px 18px;
}

.ts-load-more-button:hover {
	background: #f5f9ff;
	color: var(--ts-blue-dark);
}

.ts-archive-pagination {
	display: flex;
	justify-content: center;
	margin-top: 30px;
}

.ts-archive-pagination ul.page-numbers {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
}

.ts-archive-pagination li {
	margin: 0;
}

.ts-archive-pagination a.page-numbers,
.ts-archive-pagination span.page-numbers {
	align-items: center;
	background: #fff;
	border: 1px solid var(--ts-line);
	border-radius: 4px;
	color: #314761;
	display: inline-flex;
	font-size: 14px;
	font-weight: 700;
	justify-content: center;
	min-height: 38px;
	min-width: 38px;
	padding: 8px 12px;
}

.ts-archive-pagination span.page-numbers.current,
.ts-archive-pagination a.page-numbers:hover {
	background: var(--ts-blue);
	border-color: var(--ts-blue);
	color: #fff;
}

.ts-archive-sidebar {
	gap: 18px;
}

.ts-empty-message {
	color: var(--ts-muted);
	margin: 0;
}

@media (max-width: 849px) {
	.ts-article-layout,
	.ts-related-grid,
	.ts-archive-layout,
	.ts-latest-layout,
	.ts-archive-grid {
		grid-template-columns: 1fr;
	}

	.ts-share-card {
		max-width: none;
	}

	.ts-sidebar {
		order: 2;
		position: static;
	}

	.ts-archive-hero {
		min-height: 190px;
		padding: 48px 0;
	}
}

@media (max-width: 549px) {
	.ts-article-shell {
		padding: 0 12px;
	}

	.ts-article-header,
	.ts-entry-content,
	.ts-tags,
	.ts-share-card,
	.ts-related-card {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ts-toc-box {
		padding-left: 16px;
		padding-right: 16px;
	}

	.ts-article-header h1 {
		font-size: 26px;
	}

	.ts-latest-row {
		grid-template-columns: 112px minmax(0, 1fr);
	}

	.ts-latest-row-body p {
		display: none;
	}

	.ts-archive-section h2 {
		font-size: 26px;
	}
}

/* Homepage: Why choose us */
body .home-why-choose-us-section {
	background: transparent !important;
	margin: 46px auto 44px !important;
	max-width: 1270px !important;
	padding: 0 15px !important;
}

body .home-why-choose-us-section > .section-content {
	background: linear-gradient(135deg, #dce8ff 0%, #f0f7ff 100%) !important;
	border-radius: 20px !important;
	box-shadow: 0 18px 44px rgba(23, 58, 102, 0.08) !important;
	padding: 40px 34px !important;
	max-width: 1240px !important;
	margin: 0 auto !important;
}

body .home-why-choose-us-section .wcu-shell {
	align-items: center !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 1172px !important;
}

body .home-why-choose-us-section .wcu-left-col,
body .home-why-choose-us-section .wcu-right-col {
	padding-bottom: 0 !important;
}

body .home-why-choose-us-section .wcu-left-col .col-inner {
	align-items: flex-start !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-start !important;
	min-height: 100% !important;
	padding-right: 1px !important;
}

body .home-why-choose-us-section .wcu-main-copy {
	margin: 0 !important;
}

body .home-why-choose-us-section .wcu-main-title {
	color: #1a365d !important;
	font-size: 30px !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
	line-height: 1.18 !important;
	margin: 0 0 12px !important;
}

body .home-why-choose-us-section .wcu-main-subtitle {
	color: #1a365d !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.62 !important;
	margin: 0 0 22px !important;
	max-width: 329px !important;
}

body .home-why-choose-us-section .wcu-btn-detail,
body .home-why-choose-us-section .wcu-btn-detail.button {
	display: none !important;
}

body .home-why-choose-us-section .wcu-btn-detail-native {
	align-items: center !important;
	background: linear-gradient(90deg, #4169e1 0%, #0090ff 100%) !important;
	border-radius: 5px !important;
	box-shadow: 0 10px 18px rgba(0, 144, 255, 0.18) !important;
	color: #ffffff !important;
	display: inline-flex !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	gap: 10px !important;
	height: 43px !important;
	width: 154px !important;
	justify-content: center !important;
	line-height: 1 !important;
	padding: 12px 18px !important;
	text-decoration: none !important;
	transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease !important;
	box-sizing: border-box !important;
}

body .home-why-choose-us-section .wcu-btn-detail-native:hover {
	background: linear-gradient(90deg, #365bd0 0%, #0084ee 100%) !important;
	box-shadow: 0 12px 24px rgba(0, 144, 255, 0.25) !important;
	color: #ffffff !important;
	transform: translateY(-1px);
}

body .home-why-choose-us-section .wcu-btn-detail-native span {
	display: inline-block !important;
	font-size: 15px !important;
	height: 15px !important;
	line-height: 15px !important;
	text-align: center !important;
	width: 15px !important;
}

body .home-why-choose-us-section .wcu-card-grid {
	display: grid !important;
	gap: 16px !important;
	grid-template-columns: repeat(2, 330px) !important;
	justify-content: end !important;
}

body .home-why-choose-us-section .wcu-card {
	align-items: flex-start !important;
	background: #ffffff !important;
	border: 1px solid rgba(220, 231, 246, 0.86) !important;
	border-radius: 10px !important;
	box-shadow: 0 10px 24px rgba(23, 58, 102, 0.045) !important;
	display: flex !important;
	gap: 14px !important;
	justify-content: space-between !important;
	margin: 0 !important;
	width: 330px !important;
	height: 113px !important;
	padding: 30px 10px 20px 15px !important;
	transition: box-shadow 0.2s ease, transform 0.2s ease !important;
	box-sizing: border-box !important;
}

body .home-why-choose-us-section .wcu-card:hover {
	box-shadow: 0 16px 30px rgba(23, 58, 102, 0.09) !important;
	transform: translateY(-2px);
}

body .home-why-choose-us-section .wcu-card-content {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

body .home-why-choose-us-section .wcu-card-title {
	color: #4169e1 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
	line-height: 1.28 !important;
	margin: 0 0 7px !important;
}

body .home-why-choose-us-section .wcu-card-desc {
	color: #1a365d !important;
	font-size: 10px !important;
	font-weight: 500 !important;
	line-height: 1.55 !important;
	margin: 0 !important;
}

body .home-why-choose-us-section .wcu-card-icon {
	align-items: center !important;
	background: #1a365d !important;
	border-radius: 5px !important;
	box-shadow: none !important;
	display: inline-flex !important;
	flex: 0 0 35px !important;
	height: 35px !important;
	justify-content: center !important;
	margin-top: 2px !important;
	position: relative !important;
	width: 35px !important;
}

body .home-why-choose-us-section .wcu-card-icon::before {
	content: none !important;
	display: none !important;
}

body .home-why-choose-us-section .wcu-card-icon img {
	display: block !important;
	height: 15px !important;
	max-width: none !important;
	width: 15px !important;
}

@media (max-width: 849px) {
	body .home-why-choose-us-section {
		margin-bottom: 34px !important;
		margin-top: 34px !important;
		padding: 0 12px !important;
	}

	body .home-why-choose-us-section > .section-content {
		padding: 30px 18px !important;
	}

	body .home-why-choose-us-section .wcu-left-col .col-inner {
		align-items: center !important;
		padding-right: 0 !important;
		text-align: center !important;
	}

	body .home-why-choose-us-section .wcu-main-subtitle {
		max-width: 460px !important;
	}

	body .home-why-choose-us-section .wcu-card-grid {
		grid-template-columns: 1fr !important;
		margin-top: 24px !important;
	}

	body .home-why-choose-us-section .wcu-card {
		justify-self: center !important;
	}
}

@media (max-width: 549px) {
	body .home-why-choose-us-section .wcu-main-title {
		/* font-size: 26px !important; */
	}

	body .home-why-choose-us-section .wcu-card {
		min-height: 0 !important;
		padding: 16px !important;
	}
}

/* ==========================================
   Home Register Flow Section Overrides
   ========================================== */
body .home-register-flow-section {
	background: transparent !important;
	padding: 56px 0 !important;
}

body .home-register-flow-section .section-bg {
	background-color: transparent !important;
	background-image: none !important;
}

body .register-flow-heading-row {
	max-width: 1240px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body .register-flow-heading h2 {
	font-size: 32px !important;
	font-weight: 700 !important;
	color: #1a365d !important;
	margin-bottom: 8px !important;
}

body .register-flow-heading p {
	font-size: 16px !important;
	font-weight: 400 !important;
	color: #64748b !important;
}

body .register-flow-panel-native {
	max-width: 1240px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 50px 34px !important;
	border-radius: 20px !important;
	background: linear-gradient(135deg, #dce8ff 0%, #f0f7ff 100%) !important;
	box-shadow: 0 18px 44px rgba(23, 58, 102, 0.08) !important;
	display: grid !important;
	grid-template-columns: repeat(6, 1fr) !important;
	column-gap: 20px !important;
	row-gap: 28px !important;
}

body .register-flow-panel-native .register-step-spacer {
	display: none !important;
}

body .register-flow-panel-native .register-step-native {
	grid-column: span 2 !important;
	max-width: 350px !important;
	width: 100% !important;
	margin: 0 auto !important;
	padding: 0 !important;
	justify-self: center !important;
}

body .register-flow-panel-native .register-step-native--4 {
	grid-column: 2 / span 2 !important;
}

body .register-flow-panel-native .register-step-native--5 {
	grid-column: 4 / span 2 !important;
}

body .register-step-inner {
	display: grid !important;
	grid-template-columns: 80px minmax(0, 1fr) !important;
	gap: 12px !important;
	min-height: 80px !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
}

body .register-step-inner .register-step-icon-col,
body .register-step-inner .register-step-copy-col {
	width: 100% !important;
	max-width: none !important;
	flex-basis: auto !important;
	padding: 0 !important;
	margin: 0 !important;
}

body .register-step-num.button {
	position: absolute !important;
	z-index: 4 !important;
	top: -12px !important;
	left: -10px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 40px !important;
	height: 40px !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 10px !important;
	background: #4169e1 !important;
	color: #fff !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	border: 1px solid #ffffff !important;
}

body .register-step-icon.button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 80px !important;
	height: 80px !important;
	min-width: 80px !important;
	min-height: 80px !important;
	max-height: 80px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 10px !important;
	background: #fff !important;
	color: #4169e1 !important;
	box-shadow: 0 8px 22px rgba(65, 105, 225, 0.06) !important;
}

body .register-step-icon.button i {
	font-size: 30px !important;
	color: #4169e1 !important;
}

body .register-step-icon.button svg {
	height: 30px !important;
	width: auto !important;
	max-width: 30px !important;
	transition: all 0.2s ease !important;
}

body .register-step-icon.button:hover svg {
	transform: scale(1.05);
}

body .register-step-copy {
	min-width: 0 !important;
	padding-bottom: 12px !important;
	border-bottom: 1px solid #4169e1 !important;
}

body .register-step-copy h3 {
	margin: 0 0 8px !important;
	color: #4169e1 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
}

body .register-step-copy p {
	margin: 0 !important;
	color: #1a365d !important;
	font-size: 10px !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
	max-width: 238px !important;
}

/* Responsive styles for registration process */
@media (max-width: 1199px) {
	body .register-flow-panel-native {
		grid-template-columns: repeat(3, 1fr) !important;
		column-gap: 16px !important;
		padding: 30px 20px !important;
	}
	body .register-flow-panel-native .register-step-native {
		max-width: 100% !important;
	}
	body .register-step-copy p {
		max-width: 100% !important;
	}
}

@media (max-width: 991px) {
	body .register-flow-panel-native {
		display: flex !important;
		flex-direction: column !important;
		gap: 20px !important;
		padding: 30px 20px !important;
	}
	body .register-flow-panel-native .register-step-native {
		width: 100% !important;
		max-width: 100% !important;
	}
	body .register-step-copy p {
		max-width: 100% !important;
	}
}

@media (max-width: 549px) {
	body .register-step-inner {
		grid-template-columns: 64px minmax(0, 1fr) !important;
		gap: 10px !important;
	}
	body .register-step-icon.button {
		width: 64px !important;
		height: 64px !important;
		min-width: 64px !important;
		min-height: 64px !important;
		max-height: 64px !important;
	}
	body .register-step-icon.button i {
		font-size: 24px !important;
	}
	body .register-step-icon.button svg {
		height: 24px !important;
		max-width: 24px !important;
	}
	body .register-step-num.button {
		width: 32px !important;
		height: 32px !important;
		min-height: 32px !important;
		font-size: 15px !important;
		top: -8px !important;
		left: -6px !important;
		border-radius: 8px !important;
	}
}

/* ==========================================
   Responsive Header Navigation Adjustments
   ========================================== */
@media (min-width: 850px) and (max-width: 1199px) {
  body .header-nav-main > li > a {
    font-size: 13px !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
    text-transform: none !important;
  }
  body .header-nav-main {
    gap: 2px !important;
    flex-wrap: nowrap !important;
  }
  body .header-button {
    margin-left: 6px !important;
  }
  body .header-button .button {
    padding: 4px 10px !important;
    font-size: 12px !important;
  }
}

/* ==========================================
   Responsive Banner Section Adjustments
   ========================================== */
@media (max-width: 980px) {
  body.home .section-custom-full .section-bg img.bg {
    object-position: 25% center !important;
  }
}

@media (max-width: 767px) {
  body.home .section-custom-full {
    padding-top: 35px !important;
    padding-bottom: 35px !important;
  }
  body.home .section-custom-full .section-bg img.bg {
    object-position: 15% center !important;
  }
  body.home .section-custom-full > .section-content > .row > .col > .col-inner {
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  body.home .section-custom-full .text,
  body.home .section-custom-full .text p {
    text-align: center !important;
  }
  body.home .section-custom-full .text:first-of-type p {
    font-size: 1.6rem !important;
  }
  body.home .section-custom-full .row-btn {
    justify-content: center !important;
    gap: 10px !important;
  }
  body.home .section-custom-full .row-btn > .col {
    width: auto !important;
    max-width: 100% !important;
    flex: 0 1 auto !important;
    margin-bottom: 0 !important;
  }
  body.home .section-custom-full .row-btn .col-inner,
  body.home .section-custom-full .row-btn .col-inner.text-left {
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }
}

@media (max-width: 480px) {
  body.home .section-custom-full .text:first-of-type p {
    font-size: 1.35rem !important;
  }
  body.home .section-custom-full .row-btn {
    flex-direction: column !important;
    align-items: center !important;
  }
  body.home .section-custom-full .row-btn > .col {
    width: 100% !important;
  }
  body.home .section-custom-full .row-btn > .col .button {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }
}

/* ==========================================
   Premium Contact Page Styling (Figma Spec)
   ========================================== */
html body.page-id-249 {
  background-color: #f8fafc !important;
}

html body.page-id-249 #content.content-area {
  background-color: #f8fafc !important;
}

html body.page-id-249 .contact-main-section {
  background-color: #f8fafc !important;
  padding-top: 30px !important;
  padding-bottom: 80px !important;
}

/* Breadcrumb */
html body.page-id-249 .contact-breadcrumb-row {
  padding-top: 10px !important;
  margin-bottom: 24px !important;
}

html body.page-id-249 .contact-breadcrumb p {
  font-size: 13px !important;
  color: #64748b !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-weight: 500 !important;
}

html body.page-id-249 .contact-breadcrumb a {
  color: #64748b !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
}

html body.page-id-249 .contact-breadcrumb a[href="/"]::before {
  content: "" !important;
  display: inline-block !important;
  width: 14px !important;
  height: 14px !important;
  margin-right: 6px !important;
  vertical-align: -2px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3Cpolyline points='9 22 9 12 15 12 15 22'/%3E%3C/svg%3E") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
}

html body.page-id-249 .contact-breadcrumb a[href="/"]:hover::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%233858e9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3Cpolyline points='9 22 9 12 15 12 15 22'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .contact-breadcrumb a:hover {
  color: #3858e9 !important;
}

html body.page-id-249 .contact-breadcrumb span {
  color: #94a3b8 !important;
}

/* Contact Cards Layout */
html body.page-id-249 .contact-info-card,
html body.page-id-249 .contact-form-card {
  background: #ffffff !important;
  border: 1px solid #d6e4ff !important;
  border-radius: 16px !important;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.02), 0 5px 15px rgba(0, 0, 0, 0.02) !important;
  padding: 40px !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

html body.page-id-249 .contact-info-card:hover,
html body.page-id-249 .contact-form-card:hover {
  box-shadow: 0 20px 40px rgba(56, 88, 233, 0.04) !important;
}

html body.page-id-249 .contact-info-card h2 {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #0f294a !important;
  margin-bottom: 12px !important;
  letter-spacing: -0.3px !important;
}

html body.page-id-249 .contact-info-intro {
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #475569 !important;
  margin-bottom: 24px !important;
}

/* Disable Legacy CSS Border Drawings */
html body.page-id-249 .contact-info-icon::before,
html body.page-id-249 .contact-info-icon::after,
html body.page-id-249 .ql-contact-icon::before,
html body.page-id-249 .ql-contact-icon::after {
  content: none !important;
  display: none !important;
}

/* Contact Details Info List */
html body.page-id-249 .contact-info-list {
  gap: 20px !important;
  margin-bottom: 32px !important;
}

html body.page-id-249 .contact-info-item {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
}

html body.page-id-249 .contact-info-icon {
  background: #f3f7ff !important;
  border: 1px solid #dce8ff !important;
  border-radius: 8px !important;
  width: 36px !important;
  height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  background-size: 16px 16px !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  transition: all 0.3s ease !important;
}

html body.page-id-249 .contact-info-icon.icon-phone {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233858e9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.8 19.8 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.35 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.35 1.85.57 2.81.7a2 2 0 0 1 2.2 1.72z'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .contact-info-icon.icon-envelop {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233858e9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpolyline points='22,6 12,13 2,6'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .contact-info-icon.icon-clock {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233858e9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpolyline points='12 6 12 12 16 14'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .contact-info-item:hover .contact-info-icon {
  background: #3858e9 !important;
  border-color: #3858e9 !important;
  transform: scale(1.05) !important;
}

html body.page-id-249 .contact-info-item:hover .contact-info-icon.icon-phone {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.8 19.8 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.35 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.35 1.85.57 2.81.7a2 2 0 0 1 2.2 1.72z'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .contact-info-item:hover .contact-info-icon.icon-envelop {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpolyline points='22,6 12,13 2,6'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .contact-info-item:hover .contact-info-icon.icon-clock {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpolyline points='12 6 12 12 16 14'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .contact-info-item span:not(.contact-info-icon) {
  font-size: 11px !important;
  font-weight: 500 !important;
  color: #64748b !important;
  text-transform: none !important;
  letter-spacing: 0px !important;
  margin-bottom: 2px !important;
}

html body.page-id-249 .contact-info-item strong {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #0f294a !important;
}

/* Social Icon Badges */
html body.page-id-249 .contact-social-title {
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #36537a !important;
  text-transform: none !important;
  letter-spacing: 0px !important;
  margin-bottom: 12px !important;
}

html body.page-id-249 .contact-socials {
  gap: 8px !important;
}

html body.page-id-249 .contact-socials a {
  width: 24px !important;
  height: 24px !important;
  border-radius: 4px !important;
  background: #f3f7ff !important;
  border: 0 !important;
  color: transparent !important;
  font-size: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-size: 14px 14px !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  transition: all 0.2s ease !important;
}

html body.page-id-249 .contact-socials a:hover {
  background-color: #3858e9 !important;
  transform: translateY(-2px) !important;
}

html body.page-id-249 .contact-socials a[aria-label="Facebook"] {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233858e9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .contact-socials a[aria-label="Facebook"]:hover {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .contact-socials a[aria-label="LinkedIn"] {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233858e9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z'/%3E%3Crect x='2' y='9' width='4' height='12'/%3E%3Ccircle cx='4' cy='4' r='2'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .contact-socials a[aria-label="LinkedIn"]:hover {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z'/%3E%3Crect x='2' y='9' width='4' height='12'/%3E%3Ccircle cx='4' cy='4' r='2'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .contact-socials a[aria-label="YouTube"] {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233858e9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22.54 6.42a2.78 2.78 0 0 0-1.94-2C18.88 4 12 4 12 4s-6.88 0-8.6.46a2.78 2.78 0 0 0-1.94 2A29 29 0 0 0 1 11.75a29 29 0 0 0 .46 5.33A2.78 2.78 0 0 0 3.4 19c1.72.46 8.6.46 8.6.46s6.88 0 8.6-.46a2.78 2.78 0 0 0 1.94-2 29 29 0 0 0 .46-5.25 29 29 0 0 0-.46-5.33z'/%3E%3Cpolygon points='9.75 15.02 15.5 11.75 9.75 8.48 9.75 15.02'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .contact-socials a[aria-label="YouTube"]:hover {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22.54 6.42a2.78 2.78 0 0 0-1.94-2C18.88 4 12 4 12 4s-6.88 0-8.6.46a2.78 2.78 0 0 0-1.94 2A29 29 0 0 0 1 11.75a29 29 0 0 0 .46 5.33A2.78 2.78 0 0 0 3.4 19c1.72.46 8.6.46 8.6.46s6.88 0 8.6-.46a2.78 2.78 0 0 0 1.94-2 29 29 0 0 0 .46-5.25 29 29 0 0 0-.46-5.33z'/%3E%3Cpolygon points='9.75 15.02 15.5 11.75 9.75 8.48 9.75 15.02'/%3E%3C/svg%3E") !important;
}

/* Form Styling */
html body.page-id-249 .ql-contact-field {
  border: 1px solid #cbd5e1 !important;
  border-radius: 8px !important;
  transition: all 0.3s ease !important;
  background: #ffffff !important;
  min-height: 44px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: stretch !important;
  overflow: hidden !important;
}

html body.page-id-249 .ql-contact-field:focus-within {
  border-color: #3858e9 !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(56, 88, 233, 0.08) !important;
}

html body.page-id-249 .ql-contact-icon {
  background: #f3f7ff !important;
  color: #3858e9 !important;
  border-right: 1px solid #dce8ff !important;
  min-width: 40px !important;
  width: 40px !important;
  height: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.3s ease !important;
  background-size: 16px 16px !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  align-self: stretch !important;
  flex-shrink: 0 !important;
}

html body.page-id-249 .ql-contact-field:focus-within .ql-contact-icon {
  background: #3858e9 !important;
  border-right-color: #3858e9 !important;
}

html body.page-id-249 .ql-contact-field--name .ql-contact-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233858e9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E") !important;
}
html body.page-id-249 .ql-contact-field--name:focus-within .ql-contact-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .ql-contact-field--phone .ql-contact-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233858e9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.8 19.8 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.35 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.35 1.85.57 2.81.7a2 2 0 0 1 2.2 1.72z'/%3E%3C/svg%3E") !important;
}
html body.page-id-249 .ql-contact-field--phone:focus-within .ql-contact-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.8 19.8 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.35 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.35 1.85.57 2.81.7a2 2 0 0 1 2.2 1.72z'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .ql-contact-field--email .ql-contact-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233858e9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpolyline points='22,6 12,13 2,6'/%3E%3C/svg%3E") !important;
}
html body.page-id-249 .ql-contact-field--email:focus-within .ql-contact-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpolyline points='22,6 12,13 2,6'/%3E%3C/svg%3E") !important;
}

html body.page-id-249 .ql-contact-field input,
html body.page-id-249 .ql-contact-field textarea {
  background: transparent !important;
  font-size: 14px !important;
  color: #0f294a !important;
  padding: 10px 14px !important;
  border: 0 !important;
  box-shadow: none !important;
  margin: 0 !important;
  flex-grow: 1 !important;
  height: 100% !important;
}

html body.page-id-249 .ql-contact-field textarea {
  min-height: 110px !important;
  padding-top: 12px !important;
}

html body.page-id-249 .ql-contact-acceptance {
  font-size: 13px !important;
  color: #475569 !important;
  margin: 16px 0 24px !important;
}

html body.page-id-249 .ql-contact-acceptance a {
  color: #3858e9 !important;
  font-weight: 600 !important;
  transition: color 0.2s ease !important;
}

html body.page-id-249 .ql-contact-acceptance a:hover {
  color: #1d4ed8 !important;
}

html body.page-id-249 .ql-contact-submit input[type="submit"] {
  height: 44px !important;
  min-height: 44px !important;
  border-radius: 8px !important;
  background: #0084ff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

html body.page-id-249 .ql-contact-submit input[type="submit"]:hover {
  background: #0070d6 !important;
  box-shadow: 0 8px 20px rgba(0, 132, 255, 0.25) !important;
  transform: translateY(-2px) !important;
}

/* Map Column Stylization */
html body.page-id-249 .contact-map-col > .col-inner {
  border: 1px solid rgba(56, 88, 233, 0.08) !important;
  border-radius: 16px !important;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.02) !important;
}

html body.page-id-249 .contact-map-col .google-map {
  background-color: #edf6ff !important;
  background-image:
    linear-gradient(14deg, transparent 0 39%, rgba(126, 220, 235, 0.92) 40% 45%, transparent 46% 100%),
    linear-gradient(-8deg, transparent 0 56%, rgba(126, 220, 235, 0.68) 57% 61%, transparent 62% 100%),
    linear-gradient(27deg, transparent 0 28%, rgba(154, 178, 208, 0.46) 29% 30%, transparent 31% 100%),
    linear-gradient(-31deg, transparent 0 63%, rgba(154, 178, 208, 0.38) 64% 65%, transparent 66% 100%),
    linear-gradient(90deg, rgba(154, 178, 208, 0.22) 1px, transparent 1px),
    linear-gradient(0deg, rgba(154, 178, 208, 0.18) 1px, transparent 1px) !important;
  background-size: auto, auto, auto, auto, 118px 118px, 118px 118px !important;
  position: relative !important;
  overflow: hidden !important;
  border-radius: 16px 16px 0 0 !important;
  min-height: 270px !important;
}

html body.page-id-249 .contact-map-col .google-map .map-height {
  background: transparent !important;
  background-image: none !important;
  border-radius: 16px 16px 0 0 !important;
  min-height: 270px !important;
}

html body.page-id-249 .contact-map-col .google-map::before {
  background:
    radial-gradient(circle at 17% 34%, #ff5cb8 0 3px, transparent 4px),
    radial-gradient(circle at 54% 49%, #456a92 0 3px, transparent 4px),
    radial-gradient(circle at 82% 42%, #ff5cb8 0 3px, transparent 4px),
    radial-gradient(circle at 89% 72%, #ff5cb8 0 3px, transparent 4px) !important;
  content: "" !important;
  display: block !important;
  inset: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  z-index: 2 !important;
}

html body.page-id-249 .contact-map-col .google-map::after {
  background: #ff5cb8 !important;
  border: 3px solid #ffffff !important;
  border-radius: 50% 50% 50% 0 !important;
  box-shadow: 0 8px 20px rgba(65, 105, 225, 0.2) !important;
  content: "" !important;
  display: block !important;
  height: 18px !important;
  left: 52% !important;
  position: absolute !important;
  top: 44% !important;
  transform: rotate(-45deg) !important;
  width: 18px !important;
  z-index: 3 !important;
}

html body.page-id-249 .contact-map-address {
  background: #ffffff !important;
  border-top: 1px solid rgba(56, 88, 233, 0.08) !important;
  padding: 20px 24px !important;
  border-radius: 0 0 16px 16px !important;
}

html body.page-id-249 .contact-map-address p {
  color: #0f294a !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  display: flex !important;
  align-items: center !important;
}

html body.page-id-249 .contact-map-address p span::before {
  content: "" !important;
  display: inline-block !important;
  width: 16px !important;
  height: 16px !important;
  margin-right: 8px !important;
  vertical-align: -3px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233858e9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
}

html body.page-id-249 .contact-map-address strong {
  font-weight: 500 !important;
  color: #475569 !important;
}

/* Responsive Overrides */
@media (max-width: 849px) {
  html body.page-id-249 .contact-info-card,
  html body.page-id-249 .contact-form-card {
    padding: 30px 24px !important;
    border-radius: 12px !important;
  }
  
  html body.page-id-249 .contact-cards-row .contact-info-col {
    margin-bottom: 24px !important;
  }
}



