:root {
	--blue: #3B4AFF;
	--lime: #CBF86C;
	--dark: #080A1A;
	--ink: #0F1420;
	--light: #F4F6FB;
	--border: #E0E3EC;
	interpolate-size: allow-keywords;
}

a{
	text-decoration: none;
}

video {
	width: 100%;
}

p.hidethis{visibility:hidden}

/* Card wrapper */
.custom-related.align-qb-wrap--grid {
	gap: 5px;
}

.custom-related .align-qb-card {
	border-radius: 0;
}

.custom-related .align-qb-card--stacked {
	background: #fff;
	box-shadow: none;
	overflow: hidden;
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

/* .custom-related .align-qb-card--stacked:hover {
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
transform: translateY(-2px);
} */

/* Image area */
.custom-related .align-qb-card--stacked .align-qb-image-wrap {
	position: relative;
}

.custom-related .align-qb-card--stacked .align-qb-image-link {
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
}

.custom-related .align-qb-card--stacked .align-qb-image picture {
	padding: 16px;
}

.custom-related .align-qb-card--stacked .align-qb-image picture,
.custom-related .align-qb-card--stacked .align-qb-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}

/* .custom-related .align-qb-card--stacked:hover .align-qb-image img {
transform: scale(1.04);
} */

/* Badge — overlay top-left on image */
.custom-related .align-qb-card--stacked .align-qb-badge-wrap {
	position: absolute;
	top: 24px;
	left: 24px;
	z-index: 10;
}

.custom-related .align-qb-card--stacked .align-qb-badge {
	display: inline-block;
	background: #3b5bdb;
	color: #fff;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	padding: 4px 10px;
	text-decoration: none;
	line-height: 1.4;
	border-radius: 0;
}

/* Tag pills row — below image */
.custom-related .align-qb-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	padding: 12px 16px 0;
}

.custom-related .align-qb-tag {
	display: inline-block;
	background: transparent;
	border: 1px solid #d1d5db;
	color: #6b7280;
	font-size: 0.6875rem;
	font-weight: 500;
	padding: 3px 10px;
	text-decoration: none;
	line-height: 1.4;
	transition: border-color 0.2s, color 0.2s;
}

.custom-related .align-qb-tag:hover {
	border-color: #9ca3af;
	color: #374151;
}

/* Content area */
.custom-related .align-qb-card--stacked .align-qb-content {
	padding: 12px 16px 20px;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	gap: 6px;
}

/* Title */
.custom-related .align-qb-card--stacked .align-qb-title-link {
	text-decoration: none;
	color: inherit;
}

.custom-related .align-qb-card--stacked .align-qb-title {
	font-size: 1.0625rem;
	font-weight: 400;
	line-height: 1.4;
	color: #111827;
	margin: 0;
}

/* .custom-related .align-qb-card--stacked:hover .align-qb-title {
color: #3b5bdb;
} */

/* Excerpt */
.custom-related .align-qb-card--stacked .align-qb-excerpt {
	font-size: 0.875rem;
	color: #6b7280;
	line-height: 1.6;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Read More link */
.custom-related .align-qb-card--stacked .align-qb-readmore {
	color: #3b5bdb;
	font-size: 0.8125rem;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	text-decoration: none;
	margin-top: auto;
	padding-top: 4px;
	transition: gap 0.2s;
}

.custom-related .align-qb-card--stacked .align-qb-readmore:hover {
	gap: 8px;
}

.custom-related .align-qb-card--stacked .align-qb-image-link>div {
	width: 100%;
	height: 100%;
	background: #f3f4f6;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #9ca3af;
	font-size: 0.875rem;
}

.align-qb-item {
	border: 1px solid #E0E3EC;
}

.logo-slider-container .swiper-slide {
	border: none;
}

/* Align Breadcrumbs Style */
.align-breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-bottom: 24px;
	font-size: 13px;
	font-weight: 400;
	line-height: 20px;
}

.align-breadcrumbs a,
.align-breadcrumbs span:not(.text-black) {
	color: rgba(0, 0, 0, 0.5);
	text-decoration: none;
	transition: color 0.2s ease;
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
}

.align-breadcrumbs a:hover {
	color: rgba(0, 0, 0, 0.9);
}

.align-breadcrumbs span.text-black {
	color: #000000;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 400px;
	display: inline-block;
	vertical-align: middle;
}

/* Dark context breadcrumbs color override */
section.bg-\[\#1D5862\] .align-breadcrumbs a,
section.bg-\[\#1D5862\] .align-breadcrumbs span:not(.text-black),
section.bg-\[\#7C4AF7\] .align-breadcrumbs a,
section.bg-\[\#7C4AF7\] .align-breadcrumbs span:not(.text-black) {
	color: rgba(255, 255, 255, 0.6);
}

section.bg-\[\#1D5862\] .align-breadcrumbs a:hover,
section.bg-\[\#7C4AF7\] .align-breadcrumbs a:hover {
	color: #ffffff;
}

section.bg-\[\#1D5862\] .align-breadcrumbs span.text-black,
section.bg-\[\#7C4AF7\] .align-breadcrumbs span.text-black {
	color: #ffffff;
}

.blogs-detail .taxonomy-post_tag {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.blogs-detail .taxonomy-post_tag a {
	text-decoration: none;
	padding-left: 0.75rem;
	padding-right: 0.75rem;
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
	background-color: #F4F6FB;
	font-size: 11px;
	font-weight: 400;
	line-height: 17px;
	color: #0F14208C;
	user-select: none;
	text-transform: uppercase;
}

.blogs-detail .wp-block-post-terms__separator {
	display: none;
}

.align-breadcrumbs {
	display: none;
}

/* Custom template */
.press_release-template .press-top p.wp-block-paragraph,
.podcast-template .podcast-top p.wp-block-paragraph {
	color: #FFFFFF99 !important;
	border: 1px solid rgba(255, 255, 255, 0.20) !important;
	background: rgba(255, 255, 255, 0.05) !important;
	font-size: 11px;
	text-transform: uppercase;
}

.press_release-template .wp-block-post-author-name,
.podcast-template .wp-block-post-author-name {
	color: #FFF;
	font-family: Inter;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: 20px;
}

.press_release-template .wp-block-post-date,
.podcast-template .wp-block-post-date {
	color: rgba(255, 255, 255, 0.60);
	font-family: Aeonik;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 20px;
}

.blogs-detail p {
	font-size: 18px;
	margin-bottom: 16px;
	font-weight: 400;
	line-height: 29px;
	color: #0F1420C7;
	text-align: left;
}

.blogs-detail a,
.blogs-detail a strong {
	color: #0F1420C7 !important;
	font-weight: 400;
}

.blogs-detail a:hover,
.blogs-detail a:hover strong {
	color: #3B4AFF !important;
}

.top-blogs {
	min-height: 400px;
	padding-bottom: 40px; 
	padding-top: 120px;
}

.top-videos {
	min-height: 250px;
	padding-bottom: 40px;
	padding-top: 40px;
}

@media screen and (max-width: 1023px) {
	.top-videos {
		padding-top: 8px;
	}
}

.resources-cat-card:hover {
	transform: none !important;
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05) !important;
	z-index: 10 !important;
}

#blogs_s5 a:hover,
#podcast_s4 a:hover,
#press_s4 a:hover,
#press_s4 .swiper-slide a:hover {
	transform: none !important;
	box-shadow: none !important;
}

#blogs_s5 a:hover img,
#podcast_s4 a:hover img,
#press_s4 a:hover img {
	transform: none !important;
}

#blogs_s5 a:hover h3,
#podcast_s4 a:hover h3,
#press_s4 a:hover h3 {
	color: #0F1420 !important;
}

.child-menu p,
.child-menu p span,
.child-menu a,
.child-menu a span {
	font-weight: 400 !important;
}

@media screen and (max-width: 1199px) {
	#align-cad-2 .content-tabs-cad {
		padding-left: 0;
	}

	#align-cad-2 .tab-panel,
	#align-passenger-5 .tab-panel {
		flex-direction: column-reverse;
	}

	#align-cad-2 .tab-panel .content {
		padding: 0 32px;
	}
}

@media screen and (max-width: 1023px) {

	#align-cad-2 .tab-panel .content {
		padding: 0;
	}
}
@media (min-width: 1440px) {
	#align-blogs-s3 aside {
		position: sticky !important;
		top: 100px !important;
		align-self: flex-start !important;
	}
}

/* Custom Table Styling */
.wp-block-table,
.blogs-detail table {
	width: 100% !important;
	margin: 2.5rem 0 !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	border: 1px solid #E0E3EC !important;
	box-shadow: 0 4px 12px rgba(15, 23, 42, 0.03) !important;
}

.wp-block-table table,
.blogs-detail table {
	width: 100% !important;
	border: none !important;
	margin: 0 !important;
}

/* Header Styles */
.wp-block-table th,
.blogs-detail table th {
	background-color: #0f172a !important;
	/* Slate Dark */
	color: #ffffff !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	font-size: 12px !important;
	letter-spacing: 0.05em !important;
	padding: 14px 20px !important;
	text-align: left !important;
	border-bottom: 2px solid #1e293b !important;
	border-right: 1px solid #1e293b !important;
}

/* Cell Styles */
.wp-block-table td,
.blogs-detail table td {
	padding: 14px 20px !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	color: #334155 !important;
	border-bottom: 1px solid #E0E3EC !important;
	border-right: 1px solid #E0E3EC !important;
	background-color: #ffffff !important;
	transition: background-color 0.2s ease !important;
}

/* Remove right border on last column */
.wp-block-table td:last-child,
.blogs-detail table td:last-child,
.wp-block-table th:last-child,
.blogs-detail table th:last-child {
	border-right: none !important;
}

/* Remove bottom border on last row */
.wp-block-table tr:last-child td,
.blogs-detail table tr:last-child td {
	border-bottom: none !important;
}

/* Zebra striping for even rows */
.wp-block-table tr:nth-child(even) td,
.blogs-detail table tr:nth-child(even) td {
	background-color: #f8fafc !important;
}

/* Row Hover effect */
.wp-block-table tr:hover td,
.blogs-detail table tr:hover td {
	background-color: #f1f5f9 !important;
}

/* Style the first column (labels) to be slightly more prominent */
.wp-block-table td:first-child,
.blogs-detail table td:first-child {
	font-weight: 600 !important;
	color: #0f172a !important;
	background-color: #fafafa !important;
}

.wp-block-table tr:nth-child(even) td:first-child,
.blogs-detail table tr:nth-child(even) td:first-child {
	background-color: #f5f5f5 !important;
}

.wp-block-table tr:hover td:first-child,
.blogs-detail table tr:hover td:first-child {
	background-color: #eaeaea !important;
}

.page-id-281 .blogFeaturedImage {
	width: 100%;
}

/* Mega Menu Styles */
.glass-menu {
	border: 1px solid #E2E8F0;
	background: #FFFFFF !important;
	box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 10px 10px -5px rgba(0, 0, 0, 0.03);
	transform: translateZ(0);
	border-radius: 0 0 8px 8px;
}

/* Ensure readable text color on light background inside megamenu */
.glass-menu,
.glass-menu span,
p.tracking-wide,
.glass-menu a {
	color: #0f172a; /* slate-900 */
}

.glass-menu p {
	color: #64748b; /* slate-500 */
}

header p.tracking-wider.text-xs{
	margin-bottom:5px
}

.glass-menu p.uppercase,
.glass-menu p[class*="text-[#7c7f91]"] {
	color: #7c7f91 !important;
}

.glass-menu svg {
	/* stroke: #3B4AFF !important; */
	stroke: #FFF !important;
}

/* Hover state inside desktop megamenu */
.glass-menu a.group\/item:hover {
	background-color: #f0f3ff !important;
}

.glass-menu a.group\/item:hover span {
	color: #3b4aff !important;
}

.glass-menu a.group\/item:hover p {
	color: #3b4aff !important;
}

/* Sidebar Box style inside desktop megamenu */
.glass-menu .bg-slate-800\/50 {
	background-color: #f5f8ff !important;
	border-color: #e0e7ff !important;
}

.glass-menu .bg-slate-800\/50 p,
.glass-menu .bg-slate-800\/50 span,
.glass-menu .bg-slate-800\/50 a {
	color: #0f172a;
}

.glass-menu .bg-slate-800\/50 p.text-slate-300 {
	color: #475569 !important;
}

.glass-menu .bg-slate-800\/50 a.bg-\[\#3B4AFF\],
.glass-menu .bg-slate-800\/50 a[class*="bg-[#3B4AFF]"] {
	background-color: #3b4aff !important;
	color: #ffffff !important;
}

.glass-menu .bg-slate-800\/50 a.bg-\[\#3B4AFF\]:hover,
.glass-menu .bg-slate-800\/50 a[class*="bg-[#3B4AFF]"]:hover {
	background-color: #2b39cc !important;
}

/* ADA Keyboard Accessibility & Touch Device Active State for Desktop Megamenu */
.group:focus-within .glass-menu,
.group.is-active .glass-menu {
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateY(0) !important;
}

.glass-menu.force-hide {
	opacity: 0 !important;
	visibility: hidden !important;
	transition: none !important;
}

.ff-btn.ff-btn-submit {
	min-width: 220px;
	padding-left: 0;
	justify-content: center;
}

@media (min-width: 1024px) {
	/* Make the header centered wrapper static on desktop to let the absolute mega menu span the full viewport width (100% width) */
	header .align-content,
	header > div > div.relative,
	#header .align-content,
	#header > div > div.relative,
	#align-header .align-content,
	#align-header > div > div.relative,
	.fixed.top-0.left-0.w-full.z-50 .align-content,
	.fixed.top-0.left-0.w-full.z-50 > div.relative {
		position: static !important;
	}

	.glass-menu {
		/* Use absolute position and top: 100% so the mega menu stays perfectly attached to the bottom of the header */
		position: absolute !important;
		left: 0 !important;
		right: 0 !important;
		width: auto !important;
		top: 100% !important;
		border-radius: 0 !important;
		border-left: none !important;
		border-right: none !important;
		border-top: none !important;
		border-bottom: 1px solid #E2E8F0 !important;
	}
}

/* Ensure the header content area shrinks to 60px when scrolled, regardless of ID or tag wrapper */
header.scrolled,
#header.scrolled,
#align-header.scrolled,
.fixed.top-0.left-0.w-full.z-50.scrolled,
header.scrolled > div,
header.scrolled .align-content {
	height: 60px !important;
	transition: height 0.2s ease-in-out !important;
}

/* Scrolled header background color for both desktop and mobile */
#header.scrolled,
#align-header.scrolled,
header.scrolled,
.fixed.top-0.left-0.w-full.z-50.scrolled,
header.scrolled > div,
.scrolled .mobile-drawer-header{
	background-color: #000000a3 !important;
}

.scrolled .mobile-drawer-header{
	z-index: 2;
}

/* Style mobile drawer header area with solid dark background to ensure white logo is visible */
.mobile-drawer-panel > div > div:first-child {
	background-color:  !important;
	position: relative !important;
	z-index: 10 !important;
	/* Expand horizontally to cover/hide the parent container's vertical borders */
	margin-left: -16px !important;
	margin-right: -16px !important;
	padding-left: 28px !important;
	padding-right: 28px !important;
	padding-top: 24px !important;
	padding-bottom: 24px !important;
}

@media (min-width: 768px) {
	.mobile-drawer-header,
	.mobile-drawer-panel > div > div:first-child {
		margin-left: -48px !important;
		margin-right: -48px !important;
		padding-left: 60px !important;
		padding-right: 60px !important;
	}
}

.mobile-drawer-header .drawer-close-btn,
.mobile-drawer-panel > div > div:first-child .drawer-close-btn {
	color: #ffffff !important;
}

/* Mobile drawer link padding overrides to align with design specs */
#mobile-nav-links .group\/item,
#mobile-nav-links .group\/subitem {
	padding-left: 0px !important;
}

nav ul li a {
	align-items: center;
}

nav ul li a div.w-9.h-9 {
	width: 40px;
	height: 40px;
}

nav p.text-sm.leading-relaxed {
	font-size: 13px !important;
	margin-top: 0;
}

nav p.not-hide.text-sm {
	font-size: 16px !important;
}

@media screen and (max-width: 767px) {
	.os-svg {
		display: inline;
	}
}

@media (max-width: 640px) {
	.custom-related.align-qb-wrap--grid {
		gap: 20px;
	}
}

/* Category Archive Styles */
body.category main.wp-block-group {
	max-width: 1280px;
	margin: 140px auto 80px auto !important;
	padding: 0 40px !important;
	box-sizing: border-box;
}

body.category .wp-block-query-title {
	font-size: 2.5rem;
	font-weight: 800;
	color: #0f172a;
	margin-bottom: 48px;
	letter-spacing: -0.03em;
	position: relative;
	display: inline-block;
}

body.category .wp-block-query-title::after {
	content: '';
	display: block;
	width: 60px;
	height: 4px;
	background: #3B4AFF;
	margin-top: 12px;
	border-radius: 2px;
}

body.category ul.wp-block-post-template {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 32px;
	list-style: none;
	padding: 0 !important;
	margin: 0 0 56px 0 !important;
}

body.category li.wp-block-post {
	position: relative;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 0;
	padding: 32px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-sizing: border-box;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
	margin: 0 !important;
}

body.category h2.wp-block-post-title {
	font-size: 1.25rem;
	line-height: 1.4;
	font-weight: 600;
	margin: 0 0 16px 0 !important;
}

body.category h2.wp-block-post-title a {
	color: #0f172a;
	text-decoration: none;
	transition: color 0.2s ease;
	display: block;
}

body.category h2.wp-block-post-title a::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}

body.category h2.wp-block-post-title a:hover {
	color: #3B4AFF;
}

body.category .wp-block-post-excerpt {
	margin: 0;
	flex-grow: 1;
}

body.category .wp-block-post-excerpt__excerpt {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: #475569;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

body.category li.wp-block-post::after {
	content: 'Read Article →';
	display: inline-flex;
	align-items: center;
	margin-top: 24px;
	font-size: 0.875rem;
	font-weight: 600;
	color: #3B4AFF;
	transition: color 0.2s ease;
}

body.category nav.wp-block-query-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 16px;
	margin-top: 56px;
	padding-top: 32px;
	border-top: 1px solid #e2e8f0;
}

body.category nav.wp-block-query-pagination a,
body.category nav.wp-block-query-pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 14px;
	font-size: 0.875rem;
	font-weight: 500;
	color: #475569;
	text-decoration: none;
	border: 1px solid #cbd5e1;
	border-radius: 0;
	background: #ffffff;
	transition: all 0.2s ease;
	box-sizing: border-box;
}

body.category nav.wp-block-query-pagination a:hover {
	color: #3B4AFF;
	border-color: #3B4AFF;
	background: #f8fafc;
}

body.category nav.wp-block-query-pagination span.current {
	color: #ffffff;
	background: #3B4AFF;
	border-color: #3B4AFF;
	font-weight: 600;
}

body.category nav.wp-block-query-pagination .wp-block-query-pagination-next,
body.category nav.wp-block-query-pagination .wp-block-query-pagination-previous {
	font-weight: 600;
	padding: 0 16px;
}

@media (max-width: 1024px) {
	body.category main.wp-block-group {
		margin-top: 120px;
		padding: 0 24px !important;
	}

	body.category ul.wp-block-post-template {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 24px;
	}
}

@media (max-width: 640px) {
	body.category main.wp-block-group {
		margin-top: 100px;
		padding: 0 16px !important;
	}

	body.category ul.wp-block-post-template {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	body.category li.wp-block-post {
		padding: 24px;
	}
}

/* Fix banner height when Tailwind classes are not compiled */
[id^="align-section-1"] {
	height: 80vh !important;
}

@media (min-width: 768px) {
	[id^="align-section-1"] {
		height: 100vh !important;
	}
}

/* Force status cards to sit above the blurred card */
.status-cards-frame {
	z-index: 30 !important;
}

/* Logo Slider Marquee */
@keyframes logoMarquee {
	0% {
		transform: translate3d(0, 0, 0);
	}

	100% {
		transform: translate3d(calc(-100% / 3), 0, 0);
	}
}

.logo-slider-container {
	height: auto !important;
}

.logo-slider-container .swiper-wrapper {
	display: flex !important;
	width: max-content !important;
	animation: logoMarquee 25s linear infinite !important;
	will-change: transform;
}

.logo-slider-container:hover .swiper-wrapper {
	animation-play-state: paused !important;
}

.logo-slider-container .swiper-slide {
	width: auto !important;
	flex-shrink: 0 !important;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 60px !important;
	border: none;
}

.logo-slider-container .swiper-slide img {
	max-width: 100% !important;
	width: auto !important;
	height: 28px !important;
}

@media (max-width: 767px) {
	.logo-slider-container .swiper-slide {
		margin-right: 32px !important;
	}
}

/* Chat Transit GPT */
/* Dark hero backdrop: blueprint grid + blue glow */
.bg-grid {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image: linear-gradient(rgba(255, 255, 255, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .045) 1px, transparent 1px);
	background-size: 46px 46px;
	-webkit-mask-image: radial-gradient(ellipse 75% 65% at 50% 50%, #000 25%, transparent 78%);
	mask-image: radial-gradient(ellipse 75% 65% at 50% 50%, #000 25%, transparent 78%);
}

.bg-glow {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: radial-gradient(ellipse 50% 55% at 50% 50%, rgba(59, 74, 255, .20) 0%, transparent 70%);
}

/* Mockup frame: glow + lime corner brackets + status chip */
.mock {
	position: relative;
	width: 460px;
	max-width: calc(100vw - 40px)
}

.mock-glow {
	position: absolute;
	inset: -40px;
	pointer-events: none;
	background: radial-gradient(ellipse at center, rgba(59, 74, 255, .4) 0%, rgba(59, 74, 255, .1) 40%, transparent 72%);
	filter: blur(26px)
}

.br {
	position: absolute;
	width: 24px;
	height: 24px;
	z-index: 2;
	pointer-events: none
}

.br.tl {
	top: -10px;
	left: -10px;
	border-top: 2px solid var(--lime);
	border-left: 2px solid var(--lime)
}

.br.tr {
	top: -10px;
	right: -10px;
	border-top: 2px solid var(--lime);
	border-right: 2px solid var(--lime)
}

.br.bl {
	bottom: -10px;
	left: -10px;
	border-bottom: 2px solid var(--lime);
	border-left: 2px solid var(--lime)
}

.br.brr {
	bottom: -10px;
	right: -10px;
	border-bottom: 2px solid var(--lime);
	border-right: 2px solid var(--lime)
}

.chip {
	position: absolute;
	top: -14px;
	left: 24px;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 12px;
	background: var(--dark);
	border: 1px solid rgba(255, 255, 255, .16)
}

.chip span {
	font-size: 10px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .7);
	font-family: var(--body)
}

.chip .dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--lime);
	animation: pulse 2.2s ease-in-out infinite
}

/* Chat window (white product UI, squared corners) */
.chat {
	position: relative;
	width: 100%;
	height: 440px;
	background: #fff;
	border: 1px solid var(--border);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	box-shadow: 0 28px 70px rgba(0, 0, 0, .45)
}

.chat-header {
	background: var(--blue);
	padding: 14px 20px;
	display: flex;
	align-items: center;
	gap: 12px;
	flex-shrink: 0
}

.h-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--lime);
	flex-shrink: 0;
	animation: pulse 2.2s ease-in-out infinite
}

.h-title {
	font-family: var(--display);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	line-height: 1
}

.h-sub {
	color: rgba(255, 255, 255, .6);
	font-size: 10px;
	margin-top: 4px;
	font-family: var(--body)
}

.win-dots {
	margin-left: auto;
	display: flex;
	gap: 6px
}

.win-dots i {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .3);
	display: block
}

.step-bar {
	background: var(--blue);
	padding: 0 20px 12px;
	display: flex;
	gap: 6px;
	flex-shrink: 0
}

.pip {
	height: 3px;
	flex: 1;
	background: rgba(255, 255, 255, .2);
	transition: background .4s
}

.pip.active {
	background: var(--lime)
}

.chat-messages {
	flex: 1;
	overflow: hidden;
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 10px
}

.msg-user {
	align-self: flex-end;
	background: var(--blue);
	color: #fff;
	padding: 10px 14px;
	font-size: 13px;
	max-width: 84%;
	line-height: 1.45;
	font-family: var(--body);
	animation: chatin .34s ease both
}

.msg-bot {
	align-self: flex-start;
	background: var(--light);
	border: 1px solid var(--border);
	padding: 12px 14px;
	max-width: 90%;
	animation: chatin .34s ease both
}

.bot-label {
	font-size: 10px;
	font-weight: 700;
	color: var(--blue);
	letter-spacing: 1.2px;
	text-transform: uppercase;
	margin-bottom: 6px;
	font-family: var(--body)
}

.bot-title {
	font-size: 14px;
	font-weight: 600;
	color: var(--ink);
	line-height: 1.3;
	margin-bottom: 6px;
	font-family: var(--display)
}

.bot-text {
	font-size: 12.5px;
	color: rgba(15, 20, 32, .62);
	line-height: 1.5;
	font-family: var(--body)
}

.hl {
	background: rgba(203, 248, 108, .5);
	color: var(--ink);
	font-weight: 500;
	padding: 0 3px
}

.typing {
	align-self: flex-start;
	background: var(--light);
	border: 1px solid var(--border);
	padding: 12px 16px;
	display: flex;
	gap: 6px;
	align-items: center;
	animation: chatin .34s ease both
}

.typing i {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--blue);
	display: block;
	animation: bounce 1.1s infinite ease-in-out
}

.typing i:nth-child(2) {
	animation-delay: .18s
}

.typing i:nth-child(3) {
	animation-delay: .36s
}

.chat-input {
	border-top: 1px solid var(--border);
	padding: 10px 12px;
	display: flex;
	gap: 10px;
	align-items: center;
	flex-shrink: 0;
	background: #fff;
}

.input-field {
	flex: 1;
	background: var(--light);
	border: 1px solid var(--border);
	padding: 0 12px;
	min-height: 34px;
	display: flex;
	align-items: center;
	font-size: 12.5px;
	color: var(--ink);
	font-family: var(--body);
}

.cursor {
	display: inline-block;
	width: 1.5px;
	height: 14px;
	background: var(--blue);
	margin-left: 2px;
	animation: blink .7s infinite;
}

.send {
	width: 36px;
	height: 36px;
	background: var(--blue);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: transform .15s ease;
}

.send.pulse {
	transform: scale(.82);
}

.send svg {
	width: 16px;
	height: 16px;
}

.hero-banner-card div.inline-flex.w-fit {
	border-color: white;
}

.hero-banner-card div.inline-flex.w-fit span {
	color: white;
}

@media screen and (min-width: 1200px) {
	.pass-tab-img {
		width: 606px;
	}
}

@keyframes chatin {
	from {
		opacity: 0;
		transform: translateY(7px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes bounce {

	0%,
	60%,
	100% {
		transform: translateY(0);
		opacity: .4;
	}

	30% {
		transform: translateY(-4px);
		opacity: 1;
	}
}

@keyframes blink {

	0%,
	100% {
		opacity: 1;
	}

	50% {
		opacity: 0;
	}
}

@keyframes pulse {

	0%,
	100% {
		opacity: 1;
		transform: scale(1);
	}

	50% {
		opacity: .35;
		transform: scale(.72);
	}
}

.is-root-container #align-main-nav-links>.block-editor-inner-blocks>.block-editor-block-list__layout{
	display: flex !important;
	flex-direction: column !important;
}

.is-root-container #align-main-nav-links .glass-menu{
	position:relative !important;
}
.is-root-container #align-main-nav-links .group-hover:translate-y-0,
.is-root-container #align-main-nav-links .invisible,
.is-root-container #align-main-nav-links .opacity-0{
	opacity: 1 !important;
	visibility: visible !important;
	translateY: 0 !important;
}



@media only screen and (max-width:992px){
	p.hidethis{display:none}
	.isMenuOpenning,
	.isMenuOpenning body{
		overflow: hidden;
	}

	.css-qe880dd7{
		z-index: 9;
	}


	.hero-banner-section>.align-content .hero-banner-card .hero-banner-card-mobile .mb-12{
		margin-bottom:0
	}
	header .mobile-dropdown .space-y-6>p{
		font-size:11px;
		margin-bottom:0;
	}

	/* Mobile dropdown CTA buttons override */
	.mobile-dropdown a[class*="bg-[#3B4AFF]"],
	.mobile-dropdown a[class*="bg-blue"],
	.mobile-dropdown a[class*="bg-[#c4f053]"] {
		color: #ffffff !important;
	}
	.mobile-dropdown a[class*="bg-[#3B4AFF]"] span,
	.mobile-dropdown a[class*="bg-blue"] span {
		color: #ffffff !important;
	}
	.mobile-dropdown a[class*="bg-[#3B4AFF]"] svg,
	.mobile-dropdown a[class*="bg-blue"] svg {
		stroke: #ffffff !important;
	}


	.css-hf7i6n85,.css-s8spvt65,
	.mobile-drawer-panel [data-edit-id="edit-p4iiwxq2"]{
		margin-bottom:15px;
	}

	.featured-card-content{
		align-items: flex-start;
	}

	.css-group-n9b1wv1i>div, .css-r4p0y07z, .css-7ip3whns, .css-d9cfghq3,
	.css-hkbxcyfb, .css-q67os945, .css-oxo25l8p, .css-d21na5l3,
	.css-group-5ych91ix, .css-o2mcwp16,.css-x51kixkc, .css-3ldjlymo,
	.css-group-opzgpl2q,.css-lfviems0,.css-ob8tzpfw,
	.css-group-kmqfhamt,.css-r8w9b6km,.css-sseq12hi, .css-xr3hwsk7,
	#align-safety-4 .items-start.gap-12,
	#align-safety-4 .p-8, .css-jln46pda, .css-krxc7gxd,
	#align-safety-5 .gap-12, .css-xouf0xc3, .css-s0gkcz9b,
	#align-maintain-s3 .gap-16, .css-group-l2l90qid >div,
	#align-technology-s6 .gap-12, .css-be4ye9co,
	#align-technology-s4 .gap-10, .css-2jfifeqv,
	#align-technology-s3 .gap-10, .css-bk76w7dt,
	#align-technology-s3 .gap-12, .css-0ze54bke,
	#align-technology-s2 .gap-20, .css-vulm4y2w, .css-group-bll8qmwy,
	#align-technology-s2 .gap-10{
		gap:15px;
	}

	.css-dv9yf3mk, .css-r4p0y07z, .css-ul6azzpe,
	#align-technology-s3 .mt-14,
	#align-technology-s2 .mt-14{
		margin-top:15px
	}

	.css-2jxk5vu4 img{
		height:100%
	}
	.css-group-l2l90qid,
	.css-group-rky2w2ze,
	.css-group-0xlxq2v5{
		padding-top:24px;
		padding-bottom:24px;
	}

	.css-group-gg5cdduw,
	.css-group-eek2ma0x, .css-group-1ojlvv9s,
	.css-group-s17ax80u, .css-group-lrjuv1dl, .css-6iqwd3s3,
	.css-group-dngr3re1, .css-group-8u9m1t9t, .css-wxk3noft,
	.css-group-xc28yjif, .css-group-pzq2gzv2, .css-l8ixhqsa,
	#align-safety-4 .p-10, .css-group-5u37dsrh, .css-group-nphq2ij4,
	#align-technology-s5 .p-8{
		padding:24px
	}
	.css-xzs4938x{
		height:100%;
	}
	.css-mr528umh{
		position:relative;
	}
	.css-xzs4938x .blogFeaturedImage{
		height:250px;
	}

	.css-10d1p7th{
		padding-bottom:200px;
	}

	.css-4zyy4piw,
	.css-s3agbo53,
	.css-z7or9dmp,
	.css-fgxye9u1,
	.css-vzk0dj1h,
	.css-e09mlipo{
		height:100%;
		flex-direction: column;
		align-items: flex-start;
	}


	#align-section-7 .px-2,
	#align-maintain-s3 .lg\:gap-8.px-4,
	#align-maintain-s5 .px-2,
	#align-technology-s6 .px-6.pb-6, .css-yztfbgj3,
	#align-technology-s7 .px-2, .css-group-l2l90qid,
	.css-group-0xlxq2v5, .css-group-rky2w2ze,
	#align-technology-s6 .accordion-item button,
	#align-technology-s3 .p-8{
		padding-left:0;
		padding-right:0;
	}

	.css-rky2w2ze,
	.css-9mzwnki1,
	.css-tjpl2lxu,
	.css-xy4n03ow{
		padding-top:0;
		padding-bottom:0;
		margin-top:0;
		margin-bottom:0;
	}

	/** Footer fix **/
	#footer div.grid-cols-2 {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		padding-bottom:15px
	}
	.css-6nvt76af,
	#footer div.grid-cols-2 .col-span-2.pb-20{
		padding-bottom:15px
	}

	/* 2. Make Logo span all 3 columns (full-width row) */
	#footer div.grid-cols-2 > div:nth-child(1) {
		grid-column: 1 / -1 !important;
	}

	/* 3. Make Connect column span only 1 column and align vertically */
	#footer div.grid-cols-2 > div:nth-child(4) {
		grid-column: span 1 / span 1 !important;
		flex-direction: column !important;
	}

	/* 4. Reset width to 100% for Connect header and list */
	#footer div.grid-cols-2 > div:nth-child(4) h4,
	#footer div.grid-cols-2 > div:nth-child(4) ul {
		width: 100% !important;
	}

	.css-group-8zqxeb5m>div.none-grid {
		display: flex;
		flex-direction: column;
		gap: 16px;
		justify-content: start;
		align-items: start;
	}
}

span.css-group-o5eklg83{display:none}
@media only screen and (min-width:992px){
	.css-6txd4qww{
		z-index: 999;
	}

	header .text-base{
		font-size: var(--text-lg);
	}
	header .text-xs{
		font-size: var(--text-base)
	}
	header .items-start{
		gap: calc(var(--spacing) * 2)
	}
}

.squareDotslist li{
	font-size:20px;
	row-gap: calc(var(--spacing) * 4);
}

.privacy-policy #wp--skip-link--target {
	max-width: 900px;
	margin: 0 auto;
	padding: 100px 24px;
	font-family: 'Aeonik', sans-serif;
	color: #1f2937;
}

.privacy-policy .wp-block-post-title {
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 40px;
	color: #0f172a;
}

.privacy-policy .entry-content h2.wp-block-heading {
	font-size: 1.75rem;
	font-weight: 600;
	margin-top: 48px;
	margin-bottom: 16px;
	color: #0f172a;
	border-bottom: 1px solid #e5e7eb;
	padding-bottom: 8px;
}

.privacy-policy .entry-content h3.wp-block-heading {
	font-size: 1.35rem;
	font-weight: 600;
	margin-top: 32px;
	margin-bottom: 12px;
	color: #0f172a;
}

.privacy-policy .entry-content p {
	font-size: 1.05rem;
	line-height: 1.75;
	margin-bottom: 20px;
	color: #374151;
}

.privacy-policy .entry-content ul, 
.privacy-policy .entry-content ol {
	margin-bottom: 24px;
	padding-left: 24px;
}

.privacy-policy .entry-content ul {
	list-style: disc;
}

.privacy-policy .entry-content ol {
	list-style: numeric;
}

.privacy-policy .entry-content li {
	font-size: 1.05rem;
	line-height: 1.75;
	margin-bottom: 8px;
	color: #374151;
}

.privacy-policy .entry-content a {
	color: #2563eb;
	text-decoration: underline;
	transition: color 0.2s ease;
}

.privacy-policy .entry-content a:hover {
	color: #1d4ed8;
}

.page-id-4877 .css-group-qhsvjksf.btn-hero-secondary {
	display: none;
}

/** Hubspot Form **/
:root {
	/* Custom font variable - update here or override in project CSS */
	--hubspot-font-family: var(--font-primary, var(--font-body, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif));
}

/* Main Form Container */
.hubspotForm,
#contactFormHubSpot {
	background-color: var(--lime, #CBF86C);
	padding: 40px 36px;
	border-radius: 0px;
	font-family: var(--hubspot-font-family);
	box-sizing: border-box;
	width: 100%;
	max-width: 720px;
	margin: 0 auto;
}

/* Reset HubSpot default banner & internal paddings */
.hubspotForm .hsfc-Step__Banner,
#contactFormHubSpot .hsfc-Step__Banner {
	display: none !important;
}

.hubspotForm .hsfc-Step__Content,
#contactFormHubSpot .hsfc-Step__Content {
	padding: 0 !important;
	background: transparent !important;
}

.hubspotForm form,
#contactFormHubSpot form {
	background: transparent !important;
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--hubspot-font-family) !important;
}

/* Form Top Description Text (Regular 400 weight, 17px, Left Aligned) */
.hubspotForm .hsfc-Step__Content p,
.hubspotForm .hsfc-Step__Content .hsfc-RichText p,
#contactFormHubSpot .hsfc-Step__Content p,
#contactFormHubSpot .hsfc-Step__Content .hsfc-RichText p,
.hubspotForm p,
#contactFormHubSpot p {
	color: rgba(15, 20, 32, 0.8) !important;
	font-family: var(--hubspot-font-family) !important;
	font-size: 1.0625rem !important;
	line-height: 1.5 !important;
	font-weight: 400 !important;
	text-align: left !important;
	margin: 0 0 20px 0 !important;
}

/* HubSpot Grid Rows Spacing */
.hubspotForm .hsfc-Row,
#contactFormHubSpot .hsfc-Row {
	gap: 20px !important;
	margin-bottom: 18px !important;
}

/* Field Container (Tighter spacing with reserved error space) */
.hubspotForm [class*="Field"],
#contactFormHubSpot [class*="Field"] {
	position: relative !important;
	margin-bottom: 0 !important;
}

/* Reset HubSpot default internal element margins */
.hubspotForm [class*="Field"] > *:not(:last-child),
#contactFormHubSpot [class*="Field"] > *:not(:last-child) {
	margin-bottom: 0 !important;
}

/* Field Labels (Tighter 6px gap to input, Left Aligned) */
.hubspotForm label,
#contactFormHubSpot label {
	display: block !important;
	font-family: var(--hubspot-font-family) !important;
	font-size: 0.9375rem !important;
	font-weight: 600 !important;
	color: var(--ink, #0F1420) !important;
	margin-bottom: 6px !important;
	line-height: 1.3 !important;
	text-align: left !important;
	padding-bottom: 5px;
}

/* Required Indicator (*) */
.hubspotForm label .hsfc-FieldLabel__RequiredIndicator,
.hubspotForm label [class*="RequiredIndicator"],
#contactFormHubSpot label .hsfc-FieldLabel__RequiredIndicator,
#contactFormHubSpot label [class*="RequiredIndicator"] {
	color: #FF4D4D !important;
	font-weight: 600 !important;
	margin-left: 4px !important;
	display: inline-block !important;
}

/* Text Inputs (First Name, Last Name, Email, Tel, etc.) */
.hubspotForm input[type="text"],
.hubspotForm input[type="email"],
.hubspotForm input[type="tel"],
.hubspotForm input[type="number"],
.hubspotForm input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
#contactFormHubSpot input[type="text"],
#contactFormHubSpot input[type="email"],
#contactFormHubSpot input[type="tel"],
#contactFormHubSpot input[type="number"],
#contactFormHubSpot input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) {
	width: 100% !important;
	height: 48px !important;
	padding: 10px 16px !important;
	background-color: #F4FCE5 !important;
	border: 1px solid transparent !important;
	border-radius: 10px !important;
	font-size: 0.9375rem !important;
	font-family: var(--hubspot-font-family) !important;
	color: var(--ink, #0F1420) !important;
	box-sizing: border-box !important;
	outline: none !important;
	box-shadow: none !important;
	transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}

/* Textarea / Message Box */
.hubspotForm textarea,
#contactFormHubSpot textarea {
	width: 100% !important;
	min-height: 140px !important;
	padding: 14px 16px !important;
	background-color: #F4FCE5 !important;
	border: 1px solid transparent !important;
	border-radius: 12px !important;
	font-size: 0.9375rem !important;
	font-family: var(--hubspot-font-family) !important;
	color: var(--ink, #0F1420) !important;
	box-sizing: border-box !important;
	outline: none !important;
	box-shadow: none !important;
	resize: vertical !important;
	transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}

/* Input & Textarea Focus States */
.hubspotForm input:focus,
.hubspotForm textarea:focus,
#contactFormHubSpot input:focus,
#contactFormHubSpot textarea:focus {
	background-color: #FFFFFF !important;
	border-color: var(--blue, #3B4AFF) !important;
	box-shadow: 0 0 0 3px rgba(59, 74, 255, 0.15) !important;
}

/* Invalid / Error Field Highlight */
.hubspotForm input[aria-invalid="true"],
.hubspotForm textarea[aria-invalid="true"],
#contactFormHubSpot input[aria-invalid="true"],
#contactFormHubSpot textarea[aria-invalid="true"] {
	border-color: #DC2626 !important;
}

/* Error Alert Message (Friendly, Small & Absolutely Positioned below input) */
.hubspotForm .hsfc-ErrorAlert,
.hubspotForm [data-hsfc-id="ErrorAlert"],
#contactFormHubSpot .hsfc-ErrorAlert,
#contactFormHubSpot [data-hsfc-id="ErrorAlert"] {
	position: absolute !important;
	left: 2px !important;
	top: 100% !important;
	margin-top: 2px !important;
	font-family: var(--hubspot-font-family) !important;
	font-size: 0.75rem !important;
	font-weight: 500 !important;
	color: #DC2626 !important;
	padding: 0 !important;
	line-height: 1.2 !important;
	white-space: nowrap !important;
	pointer-events: none !important;
	z-index: 2 !important;
}

/* Placeholder Styling */
.hubspotForm input::placeholder,
.hubspotForm textarea::placeholder,
#contactFormHubSpot input::placeholder,
#contactFormHubSpot textarea::placeholder {
	color: rgba(15, 20, 32, 0.45) !important;
	font-family: var(--hubspot-font-family) !important;
}

/* Navigation Row & Left-Aligned Button Container */
.hubspotForm .hsfc-NavigationRow,
#contactFormHubSpot .hsfc-NavigationRow {
	margin-top: 16px !important;
}

.hubspotForm .hsfc-NavigationRow__Buttons,
#contactFormHubSpot .hsfc-NavigationRow__Buttons {
	justify-content: flex-start !important;
	display: flex !important;
}

/* Submit Button */
.hubspotForm button[type="submit"],
.hubspotForm button,
.hubspotForm input[type="submit"],
#contactFormHubSpot button[type="submit"],
#contactFormHubSpot button,
#contactFormHubSpot input[type="submit"] {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	background-color: var(--blue, #3B4AFF) !important;
	color: #FFFFFF !important;
	font-family: var(--hubspot-font-family) !important;
	font-size: 0.875rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	padding: 14px 28px !important;
	border: none !important;
	border-radius: 2px !important;
	cursor: pointer !important;
	box-shadow: none !important;
	transition: background-color 0.2s ease, transform 0.15s ease !important;
	margin-top: 4px !important;
}

/* Right Arrow Icon on Submit Button using ::after */
.hubspotForm button[type="submit"]::after,
.hubspotForm button::after,
.hubspotForm input[type="submit"]::after,
#contactFormHubSpot button[type="submit"]::after,
#contactFormHubSpot button::after {
	content: "" !important;
	display: inline-block !important;
	width: 14px !important;
	height: 14px !important;
	margin-left: 5px !important;
	margin-top: 2px;
	background-color: currentColor !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='4' y1='12' x2='20' y2='12'%3E%3C/line%3E%3Cpolyline points='14 6 20 12 14 18'%3E%3C/polyline%3E%3C/svg%3E") no-repeat center / contain !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='4' y1='12' x2='20' y2='12'%3E%3C/line%3E%3Cpolyline points='14 6 20 12 14 18'%3E%3C/polyline%3E%3C/svg%3E") no-repeat center / contain !important;
	transition: transform 0.2s ease !important;
}

/* Contact Form Submit Button Loading State */
#contactFormHubSpot button .hsfc-Button__LoadingSpinner,
#contactFormHubSpot button .hsfc-Spinner,
#contactFormHubSpot button [class*="Spinner"],
#contactFormHubSpot button [class*="loading-spinner"] {
	display: none !important;
}

#contactFormHubSpot button.hsfc-Button--loading,
#contactFormHubSpot button[aria-busy="true"] {
	color: transparent !important;
	opacity: 0.9 !important;
	cursor: wait !important;
	position: relative !important;
}

#contactFormHubSpot button.hsfc-Button--loading::after,
#contactFormHubSpot button[aria-busy="true"]::after {
	content: "" !important;
	position: absolute !important;
	top: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	right: 0 !important;
	margin: auto !important;
	width: 20px !important;
	height: 20px !important;
	background-color: transparent !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 2a10 10 0 1 0 10 10'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 20px 20px !important;
	-webkit-mask: none !important;
	mask: none !important;
	-webkit-mask-image: none !important;
	mask-image: none !important;
	display: block !important;
	transform-origin: center center !important;
	animation: hsSubscribeSpin 0.75s linear infinite !important;
	-webkit-animation: hsSubscribeSpin 0.75s linear infinite !important;
}

.hubspotForm button[type="submit"]:not(.hsfc-Button--loading):not([aria-busy="true"]):not(:disabled):not([disabled]):hover,
.hubspotForm button:not(.hsfc-Button--loading):not([aria-busy="true"]):not(:disabled):not([disabled]):hover,
.hubspotForm input[type="submit"]:not(.hsfc-Button--loading):not([aria-busy="true"]):not(:disabled):not([disabled]):hover,
#contactFormHubSpot button[type="submit"]:not(.hsfc-Button--loading):not([aria-busy="true"]):not(:disabled):not([disabled]):hover,
#contactFormHubSpot button:not(.hsfc-Button--loading):not([aria-busy="true"]):not(:disabled):not([disabled]):hover,
#contactFormHubSpot input[type="submit"]:not(.hsfc-Button--loading):not([aria-busy="true"]):not(:disabled):not([disabled]):hover {
	background-color: #2836EE !important;
	transform: translateY(-1px) !important;
}

.hubspotForm button[type="submit"]:not(.hsfc-Button--loading):not([aria-busy="true"]):not(:disabled):not([disabled]):hover::after,
.hubspotForm button:not(.hsfc-Button--loading):not([aria-busy="true"]):not(:disabled):not([disabled]):hover::after,
#contactFormHubSpot button[type="submit"]:not(.hsfc-Button--loading):not([aria-busy="true"]):not(:disabled):not([disabled]):hover::after,
#contactFormHubSpot button:not(.hsfc-Button--loading):not([aria-busy="true"]):not(:disabled):not([disabled]):hover::after {
	transform: translateX(4px) !important;
}

/* Form Disclaimer / Consent Text (Regular 400 weight, 14px, Left Aligned) */
.hubspotForm .disclaimer-text,
.hubspotForm .hsfc-DataPrivacyField,
.hubspotForm .hsfc-DataPrivacyField p,
#contactFormHubSpot .disclaimer-text,
#contactFormHubSpot .hsfc-DataPrivacyField,
#contactFormHubSpot .hsfc-DataPrivacyField p {
	margin-top: 20px !important;
	margin-bottom: 16px !important;
	font-family: var(--hubspot-font-family) !important;
	font-size: 0.875rem !important;
	font-weight: 400 !important;
	color: rgba(15, 20, 32, 0.75) !important;
	text-align: left !important;
	line-height: 1.45 !important;
}

/* ==========================================
Responsive Styles
========================================== */

/* Tablet & Smaller Screens (< 992px) */
@media (max-width: 992px) {
	.hubspotForm,
	#contactFormHubSpot {
		padding: 28px 20px;
	}

	.hubspotForm p,
	#contactFormHubSpot p {
		font-size: 0.9688rem !important;
		margin-bottom: 16px !important;
	}

	.hubspotForm .hsfc-Row,
	#contactFormHubSpot .hsfc-Row {
		display: flex !important;
		flex-direction: column !important;
		gap: 16px !important;
		margin-bottom: 16px !important;
	}
}

/* Mobile Screens (< 490px) */
@media (max-width: 490px) {
	.hubspotForm,
	#contactFormHubSpot {
		padding: 20px 16px;
	}

	.hubspotForm input[type="text"],
	.hubspotForm input[type="email"],
	.hubspotForm input[type="tel"],
	.hubspotForm input[type="number"],
	.hubspotForm input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
	#contactFormHubSpot input[type="text"],
	#contactFormHubSpot input[type="email"],
	#contactFormHubSpot input[type="tel"],
	#contactFormHubSpot input[type="number"],
	#contactFormHubSpot input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) {
		height: 44px !important;
		padding: 8px 12px !important;
		font-size: 0.875rem !important;
	}

	.hubspotForm textarea,
	#contactFormHubSpot textarea {
		min-height: 110px !important;
		padding: 10px 12px !important;
		font-size: 0.875rem !important;
	}

	.hubspotForm button[type="submit"],
	.hubspotForm button,
	.hubspotForm input[type="submit"],
	#contactFormHubSpot button[type="submit"],
	#contactFormHubSpot button,
	#contactFormHubSpot input[type="submit"] {
		width: 100% !important;
		padding: 13px 18px !important;
	}

	.hubspotForm .hsfc-ErrorAlert,
	.hubspotForm [data-hsfc-id="ErrorAlert"],
	#contactFormHubSpot .hsfc-ErrorAlert,
	#contactFormHubSpot [data-hsfc-id="ErrorAlert"] {
		white-space: normal !important;
	}
}

/* ==========================================
Post Submit / Success Message Styling ONLY
========================================== */

.hubspotForm .hsfc-PostSubmit,
.hubspotForm [data-hsfc-id="PostSubmit"],
#contactFormHubSpot .hsfc-PostSubmit,
#contactFormHubSpot [data-hsfc-id="PostSubmit"] {
	text-align: center !important;
	padding: 48px 24px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Checkmark Badge Icon above success message */
.hubspotForm .hsfc-PostSubmit::before,
.hubspotForm [data-hsfc-id="PostSubmit"]::before,
#contactFormHubSpot .hsfc-PostSubmit::before,
#contactFormHubSpot [data-hsfc-id="PostSubmit"]::before {
	content: "" !important;
	display: inline-block !important;
	width: 56px !important;
	height: 56px !important;
	background-color: var(--blue, #3B4AFF) !important;
	border-radius: 50% !important;
	margin-bottom: 20px !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E") no-repeat center / 28px !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E") no-repeat center / 28px !important;
}

/* Force ONLY post-submit thank you paragraphs to center text */
.hubspotForm .hsfc-PostSubmit p,
.hubspotForm [data-hsfc-id="PostSubmit"] p,
#contactFormHubSpot .hsfc-PostSubmit p,
#contactFormHubSpot [data-hsfc-id="PostSubmit"] p,
.hubspotForm .hsfc-PostSubmit .hsfc-RichText p,
#contactFormHubSpot .hsfc-PostSubmit .hsfc-RichText p {
	text-align: center !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Main Thank You Title (First <p> inside PostSubmit) */
.hubspotForm .hsfc-PostSubmit p:first-child,
.hubspotForm [data-hsfc-id="PostSubmit"] p:first-child,
#contactFormHubSpot .hsfc-PostSubmit p:first-child,
#contactFormHubSpot [data-hsfc-id="PostSubmit"] p:first-child,
.hubspotForm .hsfc-PostSubmit .hsfc-RichText p:first-child,
#contactFormHubSpot .hsfc-PostSubmit .hsfc-RichText p:first-child {
	font-family: var(--hubspot-font-family) !important;
	font-size: 1.5rem !important;
	font-weight: 700 !important;
	color: var(--ink, #0F1420) !important;
	margin: 0 0 12px 0 !important;
	line-height: 1.3 !important;
	text-align: center !important;
}

/* Secondary Message (Second <p> inside PostSubmit) */
.hubspotForm .hsfc-PostSubmit p:nth-child(2),
.hubspotForm [data-hsfc-id="PostSubmit"] p:nth-child(2),
#contactFormHubSpot .hsfc-PostSubmit p:nth-child(2),
#contactFormHubSpot [data-hsfc-id="PostSubmit"] p:nth-child(2),
.hubspotForm .hsfc-PostSubmit .hsfc-RichText p:nth-child(2),
#contactFormHubSpot .hsfc-PostSubmit .hsfc-RichText p:nth-child(2) {
	font-family: var(--hubspot-font-family) !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	color: rgba(15, 20, 32, 0.75) !important;
	max-width: 480px !important;
	margin: 0 auto !important;
	line-height: 1.5 !important;
	text-align: center !important;
}

/* ==========================================
Subscribe Form Style (#subcribeFormHubSpot)
Matches Design UI with Horizontal Layout, Light Border & Split Blue Submit Button
========================================== */

#subcribeFormHubSpot {
	background-color: transparent !important;
	padding: 0 !important;
	max-width: 520px !important;
	width: 100% !important;
	margin: 0 auto !important;
}

/* Hide labels and default non-postsubmit paragraphs in subscribe form */
#subcribeFormHubSpot label,
#subcribeFormHubSpot .hsfc-Step__Banner,
#subcribeFormHubSpot .hsfc-FieldLabel,
#subcribeFormHubSpot p:not(.hsfc-PostSubmit p):not(.hsfc-RichText p):not([data-hsfc-id="RichText"] p) {
	display: none !important;
}

/* Horizontal Form Wrapper */
#subcribeFormHubSpot form,
#subcribeFormHubSpot .hsfc-Step__Content {
	display: flex !important;
	flex-direction: row !important;
	align-items: stretch !important;
	width: 100% !important;
	background-color: #FFFFFF !important;
	border-radius: 0px !important;
	box-sizing: border-box !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Fields & Navigation Container Reset */
#subcribeFormHubSpot .hsfc-Row,
#subcribeFormHubSpot [class*="Field"],
#subcribeFormHubSpot .hsfc-NavigationRow,
#subcribeFormHubSpot .hsfc-NavigationRow__Buttons,
#subcribeFormHubSpot .hs-form-field,
#subcribeFormHubSpot .hs-submit {
	flex: 1 1 auto !important;
	display: flex !important;
	margin: 0 !important;
	padding: 0 !important;
	gap: 0 !important;
	width: auto !important;
}

#subcribeFormHubSpot .hsfc-Row,
#subcribeFormHubSpot [class*="Field"],
#subcribeFormHubSpot .hs-form-field {
	flex: 1 1 auto !important;
}

#subcribeFormHubSpot .hsfc-NavigationRow,
#subcribeFormHubSpot .hs-submit {
	flex: 0 0 auto !important;
}

/* Subscribe Email Input */
#subcribeFormHubSpot input[type="text"],
#subcribeFormHubSpot input[type="email"],
#subcribeFormHubSpot input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) {
	width: 100% !important;
	height: 48px !important;
	padding: 0 18px !important;
	background-color: #FFFFFF !important;
	border: 1px solid #e0e3ec !important;
	border-radius: 0 !important;
	font-size: 0.9375rem !important;
	font-family: var(--hubspot-font-family) !important;
	color: #1E293B !important;
	box-sizing: border-box !important;
	outline: none !important;
	box-shadow: none !important;
}

#subcribeFormHubSpot input::placeholder {
	color: #94A3B8 !important;
	opacity: 1 !important;
}

#subcribeFormHubSpot input:focus {
	background-color: #FFFFFF !important;
	box-shadow: none !important;
	border: none !important;
}

/* Submit Button Base */
#subcribeFormHubSpot button[type="submit"],
#subcribeFormHubSpot button,
#subcribeFormHubSpot input[type="submit"] {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 48px !important;
	background-color: #3B52FF !important;
	color: #FFFFFF !important;
	font-family: var(--hubspot-font-family) !important;
	font-size: 0.8125rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	padding: 0 20px 0 24px !important;
	padding-right: 68px !important;
	border: none !important;
	border-radius: 0 !important;
	cursor: pointer !important;
	margin: 0 !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	transition: background-color 0.2s ease !important;
}

/* Hide extra HubSpot default internal loading spinners */
#subcribeFormHubSpot button .hsfc-Button__LoadingSpinner,
#subcribeFormHubSpot button .hsfc-Spinner,
#subcribeFormHubSpot button [class*="Spinner"],
#subcribeFormHubSpot button [class*="loading-spinner"] {
	display: none !important;
}

/* Dark Blue Square on the Right of Submit Button (Always Sticky to Right 0) */
#subcribeFormHubSpot button::before,
#subcribeFormHubSpot button[type="submit"]::before,
#subcribeFormHubSpot input[type="submit"]::before {
	display: none !important;
	content: none !important;
}

#subcribeFormHubSpot button::after,
#subcribeFormHubSpot button[type="submit"]::after,
#subcribeFormHubSpot input[type="submit"]::after,
#subcribeFormHubSpot button.hsfc-Button--loading::after,
#subcribeFormHubSpot button[aria-busy="true"]::after {
	content: "" !important;
	position: absolute !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: auto !important;
	width: 48px !important;
	height: 100% !important;
	background-color: #2339ED !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	pointer-events: none !important;
	z-index: 2 !important;
	-webkit-mask: none !important;
	mask: none !important;
	-webkit-mask-image: none !important;
	mask-image: none !important;
}

/* Normal Arrow Icon inside Right Square */
#subcribeFormHubSpot button:not(.hsfc-Button--loading):not([aria-busy="true"])::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='4' y1='12' x2='20' y2='12'%3E%3C/line%3E%3Cpolyline points='14 6 20 12 14 18'%3E%3C/polyline%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 16px 16px !important;
	animation: none !important;
	-webkit-animation: none !important;
	transform: none !important;
	transition: background-color 0.2s ease, background-position 0.2s ease !important;
}

/* Hover Effects */
#subcribeFormHubSpot button:not(.hsfc-Button--loading):not([aria-busy="true"]):hover {
	background-color: #2D43F0 !important;
	transform: none !important;
}

#subcribeFormHubSpot button:not(.hsfc-Button--loading):not([aria-busy="true"]):hover::after {
	background-color: #1A2ECE !important;
	background-position: calc(50% + 4px) center !important;
	transform: none !important;
}

/* Spinner Animation Keyframes */
@keyframes hsSubscribeSpin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

@-webkit-keyframes hsSubscribeSpin {
	0% {
		-webkit-transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
	}
}

/* Loading State: Center smooth rotating spinner inside button when loading */
#subcribeFormHubSpot button.hsfc-Button--loading::after,
#subcribeFormHubSpot button[aria-busy="true"]::after {
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	background-color: transparent !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 2a10 10 0 1 0 10 10'/%3E%3C/svg%3E") !important;
	background-size: 20px 20px !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	animation: hsSubscribeSpin 0.75s linear infinite !important;
	-webkit-animation: hsSubscribeSpin 0.75s linear infinite !important;
}

#subcribeFormHubSpot button.hsfc-Button--loading,
#subcribeFormHubSpot button[aria-busy="true"] {
	color: transparent !important;
	opacity: 0.95 !important;
	cursor: wait !important;
}

/* ==========================================
Responsive Styles for Subscribe Form
========================================== */

/* Tablet Screens (< 992px) */
@media (max-width: 992px) {
	#subcribeFormHubSpot {
		max-width: 100% !important;
		padding: 0 20px !important;
	}
}

/* Mobile Screens (< 490px) */
@media (max-width: 490px) {
	#subcribeFormHubSpot {
		padding: 0 16px !important;
	}

	#subcribeFormHubSpot form,
	#subcribeFormHubSpot .hsfc-Step__Content {
		flex-direction: column !important;
		border: none !important;
		background: transparent !important;
		gap: 0 !important;
	}

	#subcribeFormHubSpot input[type="text"],
	#subcribeFormHubSpot input[type="email"],
	#subcribeFormHubSpot input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) {
		border: 1px solid #e0e3ec !important;
		height: 44px !important;
	}

	#subcribeFormHubSpot button[type="submit"],
	#subcribeFormHubSpot button,
	#subcribeFormHubSpot input[type="submit"] {
		width: 100% !important;
		height: 44px !important;
	}
}

/* ==========================================
Post-Submit / Success Message for Subscribe Form
========================================== */

/* Hide any icons (both top checkmark badge and text icon) for subscribe form post-submit */
#subcribeFormHubSpot .hsfc-PostSubmit::before,
#subcribeFormHubSpot [data-hsfc-id="PostSubmit"]::before,
#subcribeFormHubSpot .submitted-message::before,
#subcribeFormHubSpot .hsfc-RichText::before,
#subcribeFormHubSpot [data-hsfc-id="RichText"]::before,
#subcribeFormHubSpot .hsfc-PostSubmit p::before,
#subcribeFormHubSpot [data-hsfc-id="PostSubmit"] p::before,
#subcribeFormHubSpot .submitted-message p::before,
#subcribeFormHubSpot .hsfc-RichText p::before,
#subcribeFormHubSpot [data-hsfc-id="RichText"] p::before {
	display: none !important;
	content: none !important;
}

#subcribeFormHubSpot .hsfc-PostSubmit,
#subcribeFormHubSpot [data-hsfc-id="PostSubmit"],
#subcribeFormHubSpot .submitted-message,
#subcribeFormHubSpot .hsfc-RichText,
#subcribeFormHubSpot [data-hsfc-id="RichText"] {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	/*     height: 48px !important; */
	width: 100% !important;
	padding: 0 16px !important;
	background-color: #FFFFFF !important;
	border-top: 1px solid #e0e3ec !important;
	border-bottom: 1px solid #e0e3ec !important;
	border-left: none !important;
	border-right: none !important;
	border-radius: 0 !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	flex-direction: column;
	gap: 10px;
}

#subcribeFormHubSpot .hsfc-PostSubmit p,
#subcribeFormHubSpot [data-hsfc-id="PostSubmit"] p,
#subcribeFormHubSpot .submitted-message,
#subcribeFormHubSpot .hsfc-RichText p,
#subcribeFormHubSpot [data-hsfc-id="RichText"] p {
	font-family: var(--hubspot-font-family) !important;
	font-size: 0.8125rem !important;
	font-weight: 500 !important;
	color: #1E293B !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.2 !important;
	text-align: center !important;
	background: transparent !important;
	border: none !important;
}

.squareDotslist li {
	padding-left: 16px;
	position:relative;
}

.squareDotslist li:before {
	content:"";
	position:absolute;
	left:0;
	top:8px;
	width:5px;
	height:5px;
	background-color:#cbf86c
}

/* Header */
header .glass-menu p.css-group-19h2zddx.uppercase,
header .css-group-19h2zddx,
header .css-group-19h2zddx>span {
	color: #3B4AFF !important;
}

header a {
	cursor: pointer;
}

.error404 header a,
.page-template-template-thanks-you header a {
	color: white !important;
}

.error404 header a:hover span,
.page-template-template-thanks-you header a:hover span {
	color: #3B4AFF !important;
}

.hero-banner-card--company {
	border: none !important;
}