/* Sky Blue brand overrides - loaded last */

:root {
	/* Replace orange accents with sky blue family */
	--wp--preset--color--luminous-vivid-orange: #0d6efd; /* sky-500 */
	--wp--preset--color--luminous-vivid-amber: #0d6efd;
	--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,#0284c7 0%,#0d6efd 100%);
	--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,#0284c7 0%,#0d6efd 100%);
	/* Elementor global secondary to sky blue */
	--e-global-color-secondary: #0d6efd;
}

/* Generic utility for elements that used orange backgrounds/borders */
.has-luminous-vivid-orange-background-color,
.has-luminous-vivid-amber-background-color,
.has-vivid-red-background-color,
.rkit-btn,
.elementor-button,
.elementor-button.elementor-size-sm,
.elementor-button.elementor-size-md,
.elementor-button.elementor-size-lg {
	background: #0d6efd !important;
	border-color: #0d6efd !important;
	color: #ffffff !important;
}

.has-luminous-vivid-orange-color,
.has-luminous-vivid-amber-color,
.has-vivid-red-color {
	color: #0d6efd !important;
}

/* Gradient sections that previously used orange */
.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background,
.has-luminous-vivid-orange-to-vivid-red-gradient-background {
	background-image: linear-gradient(135deg,#0284c7 0%, #0d6efd 100%) !important;
}

/* RomeTheme common widget accents */
.rkit-cta .rkit-cta__btn,
.rkit-pricing .rkit-pricing__btn,
.rkit-tabs .rkit-tabs__nav .rkit-tabs__nav-item.active,
.rkit-accordion .rkit-accordion__header:focus,
.rkit-accordion .rkit-accordion__header:hover {
	background: #0d6efd !important;
	border-color: #0d6efd !important;
}

/* Icon list bullets and small list dots */
.elementor-icon-list-icon,
.elementor-icon-list-icon i,
.elementor-icon-list-icon svg {
	color: #0d6efd !important;
	fill: #0d6efd !important;
}

/* Header/Footer Elementor nav active/underline accents */
.hfe-nav-menu .hfe-pointer__underline .menu-item.current-menu-item > a:after,
.hfe-nav-menu .hfe-pointer__underline .menu-item:hover > a:after {
	background-color: #0d6efd !important;
}

/* Icons and small badges that used orange */
.elementor-widget-icon .elementor-icon,
.elementor-widget-counter .elementor-counter-number-suffix,
.elementor-widget-counter .elementor-counter-title {
	color: #0d6efd !important;
}

/* Hero: "8+" and "Years Of Experience" counter – white */
.elementor-element-6df0bcd .elementor-counter-title,
.elementor-element-6df0bcd .elementor-counter-number,
.elementor-element-6df0bcd .elementor-counter-number-prefix,
.elementor-element-6df0bcd .elementor-counter-number-suffix {
	color: #ffffff !important;
}

/* Back-to-top and misc buttons (rkit) */
.rkit-back-to-top .rkit-back-to-top__button {
	background: #0d6efd !important;
	border-color: #0d6efd !important;
}

/* Links on dark sections previously colored orange */
 a,
 a:focus,
 a:hover {
	color: #0d6efd;
}

/* Replace hero gradient image with CSS gradient when detected */
[style*="Background-Gradient-Pemogan-3"],
[style*="BG-Gradient-Footer-Pemogan-2"],
img[src*="Background-Gradient-Pemogan-3"],
img[src*="BG-Gradient-Footer-Pemogan-2"],
.hero-gradient-replace,
.footer-gradient-replace {
	/* Sun-ray effect from top-right, fading to black at the bottom to blend with next section */
	background-color: #0e1116 !important;
	background-image:
		/* soft glow at top-right corner */
		radial-gradient(100% 70% at 100% 0%, rgba(255,110,52,0.55) 0%, rgba(255,110,52,0.25) 22%, rgba(255,110,52,0) 46%),
		/* sun rays (diagonal stripes) */
		repeating-linear-gradient(225deg, rgba(255,110,52,0.18) 0%, rgba(255,110,52,0.18) 4%, rgba(255,110,52,0) 10%),
		/* vertical fade to black for section blending */
		linear-gradient(to bottom, rgba(0,0,0,0) 0%, #0a0d12 75%, #000000 100%) !important;
	background-size: cover !important;
	background-position: center !important;
}

/* Small accent dots/badges that were orange */
.rkit-badge,
.rkit-dot,
.elementor-widget-icon .elementor-icon i {
	color: #0d6efd !important;
}

/* Hover/active states */
.elementor-button:hover,
.elementor-button:focus,
.rkit-btn:hover,
.rkit-btn:focus {
	background: #0284c7 !important;
	border-color: #0284c7 !important;
}

/* Force override any inline orange-ish colors (hex) */
[style*="#ff6900"],
[style*="#fcb900"],
[style*="#f97316"],
[style*="#ea580c"],
[style*="#fb923c"],
[style*="#f59e0b"],
[style*="#ff6a00"],
[style*="#ff5a00"],
[style*="#ff8c00"],
[style*="#ef4444"],
[style*="#dc2626"],
[style*="#e94e1b"] {
	color: #0d6efd !important;
	border-color: #0d6efd !important;
	background-color: #0d6efd !important;
}

/* Force override any inline orange-ish rgba */
[style*="rgb(255, 105, 0"],
[style*="rgba(255, 105, 0"],
[style*="rgb(252, 185, 0"],
[style*="rgba(252, 185, 0"],
[style*="rgb(207, 46, 46"],
[style*="rgba(207, 46, 46"] {
	color: #0d6efd !important;
	border-color: #0d6efd !important;
	background-color: #0d6efd !important;
}

/* Soft borders that used orange outline */
.rkit-box, .rkit-card, .rkit-feature, .rkit-service,
.elementor-widget, .elementor-widget-container {
	--accent-color: #0d6efd;
}

/* High-specificity overrides for hero/footer containers generated by Elementor */
/* Footer - background image removed */
.elementor-7 .elementor-element.elementor-element-3b4b2d7:not(.elementor-motion-effects-element-type-background),
.elementor-7 .elementor-element.elementor-element-3b4b2d7 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: #0e1116 !important;
	background-image: none !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	background-position: center !important;
}

/* Hero gradient - DISABLED for Spline replacement - Maximum specificity override */
.elementor-41 .elementor-element.elementor-element-6df0bcd:not(.elementor-motion-effects-element-type-background),
.elementor-41 .elementor-element.elementor-element-6df0bcd > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor.elementor-41 .elementor-element.elementor-element-6df0bcd:not(.elementor-motion-effects-element-type-background),
.elementor.elementor-41 .elementor-element.elementor-element-6df0bcd > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: transparent !important;
	background-image: none !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	background-position: center !important;
}

/* Spline viewer as hero background */
.hero-spline-background,
spline-viewer.hero-spline-background {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 100vh !important;
	z-index: 0 !important;
	pointer-events: none !important;
}

/* Main Content Spline Background - must stay behind all content (z-index -1 so it never covers text) */
.main-content-spline-background,
spline-viewer.main-content-spline-background {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	height: 100vh !important;
	min-height: 100vh !important;
	z-index: -1 !important;
	pointer-events: none !important; /* let scroll and clicks pass through so page scrolls when cursor is over Spline */
	opacity: 0.4 !important;
}
/* Let pointer events pass through so scrolling works when cursor is over Spline */
spline-viewer.main-content-spline-background *,
spline-viewer.main-content-spline-background canvas,
spline-viewer.main-content-spline-background iframe {
	z-index: -1 !important;
	pointer-events: none !important;
}

/* Our Technology Expertise section – in-page Spline viewer (replaces phone image) */
.technology-expertise-spline,
spline-viewer.technology-expertise-spline {
	display: block !important;
	width: 100% !important;
	min-width: 280px;
	min-height: 380px;
	height: 100%;
	max-height: 500px;
	border-radius: 16px;
	overflow: hidden;
}
.elementor-element-d7910a4 {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 380px !important;
}

/* Technology Expertise spline: full width, centered, full height visible in responsive */
@media (max-width: 1024px) {
	.technology-expertise-spline,
	spline-viewer.technology-expertise-spline {
		min-height: 420px !important;
		max-height: 75vh !important;
		height: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		overflow: hidden;
	}
	.elementor-element-d7910a4 {
		min-height: 420px !important;
		align-items: center !important;
		justify-content: center !important;
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}
@media (max-width: 768px) {
	.technology-expertise-spline,
	spline-viewer.technology-expertise-spline {
		/* Fixed height so full graphic fits in view and isn’t clipped; width fills container */
		width: 100% !important;
		max-width: 100% !important;
		height: 70vmin !important;
		min-height: 320px !important;
		max-height: 75vh !important;
	}
	.elementor-element-d7910a4 {
		min-height: 75vh !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 100% !important;
		max-width: 100% !important;
		padding: 2rem 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	/* Pull spline full-bleed so no side spaces – break out of section padding */
	.elementor-41 .elementor-element-a4119e5 .elementor-element-df7cfa1 {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.elementor-41 .elementor-element-a4119e5 .elementor-element-7042e1a {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.elementor-41 .elementor-element-a4119e5 .elementor-element-d7910a4 {
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: calc(-50vw + 50%) !important;
		margin-right: calc(-50vw + 50%) !important;
		left: 0;
		right: 0;
		box-sizing: border-box !important;
	}
	.elementor-41 .elementor-element-a4119e5 .elementor-element-d7910a4 spline-viewer.technology-expertise-spline {
		width: 100% !important;
		max-width: 100% !important;
		border-radius: 0 !important;
	}
}
@media (max-width: 480px) {
	.technology-expertise-spline,
	spline-viewer.technology-expertise-spline {
		height: 65vmin !important;
		min-height: 280px !important;
		max-height: 70vh !important;
		width: 100% !important;
		max-width: 100% !important;
	}
	.elementor-element-d7910a4 {
		min-height: 70vh !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		padding: 1.5rem 0 !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}

/* Ensure main content spline-viewer canvas renders */
spline-viewer.main-content-spline-background canvas {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
}

/* Ensure main content area is always above Spline (so text stays white when Spline loads) */
main#content,
#content.site-main {
	position: relative !important;
	z-index: 1 !important;
	isolation: isolate !important;
}
.page-content,
.elementor.elementor-41 {
	position: relative !important;
	z-index: 1 !important;
}

/* Let cursor events pass through to Spline background on adaptive-ai page only (so Spline can track cursor) */
body.elementor-page-37 #page {
	pointer-events: none !important;
}
body.elementor-page-37 #navbar-container,
body.elementor-page-41 #navbar-container {
	pointer-events: auto !important; /* navbar must stay clickable */
}
body.elementor-page-41 #page,
body.elementor-page-41 main#content,
body.elementor-page-41 .page-content {
	pointer-events: auto !important; /* homepage: allow scroll and clicks */
}
body.elementor-page-37 main#content,
body.elementor-page-37 .page-content {
	pointer-events: none !important;
}
/* Elementor wrapper and sections pass through so Spline gets mouse events (adaptive-ai only) */
body.elementor-page-37 .page-content .elementor,
body.elementor-page-37 .page-content .elementor-element.e-con.e-parent {
	pointer-events: none !important;
}
/* Only interactive elements capture clicks/hover on adaptive-ai so Spline can track cursor elsewhere */
body.elementor-page-37 .page-content a,
body.elementor-page-37 .page-content button,
body.elementor-page-37 .page-content input,
body.elementor-page-37 .page-content select,
body.elementor-page-37 .page-content textarea,
body.elementor-page-37 .page-content [role="button"],
body.elementor-page-37 .page-content .elementor-widget-button a {
	pointer-events: auto !important;
}

/* Ensure spline-viewer canvas renders */
spline-viewer.hero-spline-background canvas {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
}

/* Ensure main content spline-viewer canvas renders */
spline-viewer.main-content-spline-background canvas {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
}

/* Ensure hero container is positioned relative for absolute positioning of spline and remove gradient */
.elementor-41 .elementor-element.elementor-element-6df0bcd,
.elementor.elementor-41 .elementor-element.elementor-element-6df0bcd {
	position: relative !important;
	overflow: hidden !important;
	height: 100vh !important;
	min-height: 100vh !important;
	background-color: transparent !important;
	background-image: none !important;
}

/* Bring content above spline background and fill hero height */
.elementor-41 .elementor-element.elementor-element-6df0bcd .e-con-inner {
	position: relative !important;
	z-index: 1 !important;
	height: 100% !important;
	min-height: 100% !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
}

/* Contact page hero: half viewport height + Spline background */
.elementor-11 .elementor-element.elementor-element-434fa39.contact-hero-with-spline,
.elementor-11 .contact-hero-with-spline {
	position: relative !important;
	overflow: hidden !important;
	height: 50vh !important;
	min-height: 50vh !important;
	background-color: transparent !important;
	background-image: none !important;
}
.elementor-11 .elementor-element.elementor-element-434fa39.contact-hero-with-spline:not(.elementor-motion-effects-element-type-background),
.elementor-11 .elementor-element.elementor-element-434fa39.contact-hero-with-spline > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-image: none !important;
	background-color: transparent !important;
}
/* Contact hero: Spline background full screen; hero content stays half page */
.elementor-11 .contact-hero-with-spline spline-viewer.hero-spline-background {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	height: 100vh !important;
	min-height: 100vh !important;
	bottom: auto !important;
}
.elementor-11 .elementor-element.elementor-element-434fa39.contact-hero-with-spline .e-con-inner,
.elementor-11 .contact-hero-with-spline .e-con-inner {
	position: relative !important;
	z-index: 1 !important;
	height: 100% !important;
	min-height: 100% !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	align-items: center !important;
}

/* Ensure main content area has proper z-index to appear above spline */
.page-content,
.elementor.elementor-41 {
	position: relative !important;
	z-index: 1 !important;
}

/* Logo image styling for desktop */
#masthead .elementor-element-7e6a5c1 img.elementor-heading-title {
	max-width: 50px !important;
	height: auto !important;
	display: block !important;
}

/* Industry Icons Styling */
.elementor-widget-image svg[style*="color: #0d6efd"] {
	width: 120px !important;
	height: 120px !important;
	max-width: 100% !important;
	display: block !important;
	margin: 0 auto !important;
	opacity: 0.9 !important;
	transition: opacity 0.3s ease, transform 0.3s ease !important;
}

.elementor-widget-image svg[style*="color: #0d6efd"]:hover {
	opacity: 1 !important;
	transform: scale(1.05) !important;
}

/* Mobile header alignment fixes */
@media only screen and (max-width: 767px) {
	/* Remove top spacing to touch screen edge */
	html {
		margin-top: 0 !important;
		padding-top: 0 !important;
	}
	
	/* Ensure body doesn't have padding preventing fullscreen */
	body {
		margin: 0 !important;
		margin-top: 0 !important;
		padding: 0 !important;
		padding-top: 0 !important;
		overflow-x: hidden !important;
		width: 100% !important;
		max-width: 100% !important;
	}
	
	/* Make header fullscreen - remove all constraints and touch top */
	#masthead {
		width: 100vw !important;
		max-width: 100vw !important;
		margin: 0 !important;
		margin-top: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding: 0 !important;
		padding-top: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		position: relative !important;
		left: 0 !important;
		right: 0 !important;
		top: 0 !important;
	}
	
	/* Ensure page container doesn't constrain header */
	#page.hfeed.site {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		margin-top: 0 !important;
		padding: 0 !important;
		padding-top: 0 !important;
		overflow-x: hidden !important;
	}
	
	/* Fix header container padding and alignment on mobile */
	#masthead .elementor-element-5287a09.e-con-boxed,
	#masthead .elementor-element-5287a09.e-con-boxed .e-con-inner {
		padding-left: 0 !important;
		padding-right: 0 !important;
		padding-top: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		margin-top: 0 !important;
		max-width: 100% !important;
		width: 100% !important;
	}
	
	/* Reorganize header layout: hamburger left, logo center */
	#masthead .elementor-element-2003800 {
		padding-left: 1rem !important;
		padding-right: 1rem !important;
		justify-content: space-between !important;
		align-items: center !important;
		width: 100% !important;
		max-width: 100% !important;
		position: relative !important;
	}
	
	/* Hamburger menu on the left */
	#masthead .elementor-element-4f62722 {
		order: 1 !important;
		flex: 0 0 auto !important;
		margin-right: auto !important;
	}
	
	#masthead .hfe-nav-menu__toggle {
		margin: 0 !important;
		padding: 0.5rem !important;
	}
	
	/* Logo centered */
	#masthead .elementor-element-7e6a5c1 {
		order: 2 !important;
		flex: 1 1 auto !important;
		text-align: center !important;
		position: absolute !important;
		left: 50% !important;
		transform: translateX(-50%) !important;
		width: auto !important;
		margin: 0 !important;
	}
	
	#masthead .elementor-element-7e6a5c1 img.elementor-heading-title,
	#masthead .elementor-element-7e6a5c1 h2.elementor-heading-title {
		margin: 0 !important;
		text-align: center !important;
		max-width: 50px !important;
		height: auto !important;
		display: block !important;
	}
	
	/* Hide Contact Us button on mobile */
	#masthead .elementor-element-a94dd73 {
		display: none !important;
		visibility: hidden !important;
		opacity: 0 !important;
		height: 0 !important;
		width: 0 !important;
		overflow: hidden !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	
	/* Fix flex container alignment */
	#masthead .elementor-element-2003800.e-flex {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 0 !important;
	}
	
	/* Ensure Elementor containers don't constrain width */
	#masthead .elementor,
	#masthead .elementor-5 {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		margin-top: 0 !important;
		padding: 0 !important;
		padding-top: 0 !important;
	}

	/* Prevent hero/main content from overflowing on mobile */
	.elementor-41,
	.page-content,
	.elementor.elementor-41 {
		overflow-x: hidden !important;
		max-width: 100vw !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}
	/* Hero: allow section to extend so all content is visible (no fixed height) */
	.elementor-41 .elementor-element.elementor-element-6df0bcd,
	.elementor.elementor-41 .elementor-element.elementor-element-6df0bcd {
		height: auto !important;
		min-height: 100vh !important;
		overflow-x: hidden !important;
		overflow-y: visible !important;
		display: block !important;
	}
	.elementor-41 .elementor-element-6df0bcd .e-con-inner {
		height: auto !important;
		min-height: 80vh !important;
		justify-content: flex-start !important;
		padding-top: 5rem !important;
		padding-bottom: 3.5rem !important;
		overflow-x: hidden !important;
		max-width: 100% !important;
		padding-left: 1rem !important;
		padding-right: 1rem !important;
		box-sizing: border-box !important;
	}
	/* Space for top headings so they’re not cut off below header */
	.elementor-41 .elementor-element-6df0bcd .elementor-element-966bd8c {
		padding-top: 0.5rem !important;
		margin-top: 0 !important;
	}
	.elementor-41 .elementor-element-6df0bcd .elementor-element-d3cdef2,
	.elementor-41 .elementor-element-6df0bcd .elementor-element-5e15b68 {
		margin-top: 0 !important;
		padding-top: 0.25rem !important;
	}
	.elementor-41 .elementor-element-6df0bcd .e-con.e-child,
	.elementor-41 .elementor-element-6df0bcd .elementor-widget {
		min-width: 0 !important;
		max-width: 100% !important;
	}
	.elementor-41 .elementor-element-6df0bcd {
		overflow-x: hidden !important;
	}
	/* Hero laptop image: keep inside viewport */
	.elementor-41 .elementor-element-0abc641,
	.elementor-41 .elementor-element-4629397 {
		max-width: 100% !important;
		overflow: hidden !important;
	}
	.elementor-41 .elementor-element-4629397 img {
		max-width: 100% !important;
		width: 100% !important;
		height: auto !important;
		display: block !important;
		object-fit: contain !important;
	}
	/* Hero "Partner with Block Intelligence" and sibling sections – stay in bounds */
	.elementor-41 .elementor-element-02a9960 .e-con-inner,
	.elementor-41 .elementor-element-73916dc .e-con-inner {
		padding-left: 1rem !important;
		padding-right: 1rem !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}
}

/* ========== Homepage hero: tablet/small desktop (≤1025px) – stack content so all data visible ========== */
@media (max-width: 1025px) {
	.elementor-41 .elementor-element.elementor-element-6df0bcd,
	.elementor.elementor-41 .elementor-element.elementor-element-6df0bcd {
		height: auto !important;
		min-height: auto !important;
		overflow-x: hidden !important;
		overflow-y: visible !important;
	}
	.elementor-41 .elementor-element-6df0bcd .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: flex-start !important;
		height: auto !important;
		min-height: 0 !important;
		padding-bottom: 4rem !important;
		max-width: 100% !important;
		overflow-x: hidden !important;
		overflow-y: visible !important;
	}
	/* Top block: full width, stack column, center content */
	.elementor-41 .elementor-element-6df0bcd .elementor-element-966bd8c {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 auto !important;
		min-width: 0 !important;
		align-items: center !important;
		display: flex !important;
		flex-direction: column !important;
	}
	.elementor-41 .elementor-element-6df0bcd .elementor-element-58bd42d {
		align-items: center !important;
		text-align: center !important;
	}
	/* Row that holds icon list + description + experience: stack, center */
	.elementor-41 .elementor-element-6df0bcd .elementor-element-4aa3184 {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		width: 100% !important;
		max-width: 100% !important;
		flex-grow: 0 !important;
		align-self: stretch !important;
		align-items: center !important;
		min-width: 0 !important;
	}
	.elementor-41 .elementor-element-6df0bcd .elementor-element-9183229,
	.elementor-41 .elementor-element-6df0bcd .elementor-element-f399048,
	.elementor-41 .elementor-element-6df0bcd .elementor-element-f4c8d00,
	.elementor-41 .elementor-element-6df0bcd .elementor-element-939f2cc {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		flex: 0 0 auto !important;
		align-items: center !important;
		display: flex !important;
		flex-direction: column !important;
	}
	/* Service list (Web3, AI, Computer Vision): center */
	.elementor-41 .elementor-element-6df0bcd .elementor-element-5e15b68 {
		text-align: center !important;
	}
	.elementor-41 .elementor-element-6df0bcd .elementor-element-5e15b68 .elementor-icon-list-items {
		justify-content: center !important;
		align-items: center !important;
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: wrap !important;
	}
	/* Description box: center text and box */
	.elementor-41 .elementor-element-6df0bcd .elementor-element-3093905,
	.elementor-41 .elementor-element-6df0bcd .elementor-element-3093905 .elementor-icon-box-content {
		text-align: center !important;
		align-items: center !important;
	}
	.elementor-41 .elementor-element-6df0bcd .elementor-element-3093905 .elementor-icon-box-description {
		text-align: center !important;
	}
	/* Experience counter (8+ Years): center */
	.elementor-41 .elementor-element-6df0bcd .elementor-element-33495c4,
	.elementor-41 .elementor-element-6df0bcd .elementor-element-33495c4 .elementor-counter {
		text-align: center !important;
		align-items: center !important;
		justify-content: center !important;
	}
	.elementor-41 .elementor-element-6df0bcd .elementor-element-33495c4 .elementor-counter-number-wrapper {
		justify-content: center !important;
	}
	.elementor-41 .elementor-element-6df0bcd .elementor-element-33495c4 .elementor-counter-title {
		text-align: center !important;
	}
	/* Laptop and CTA row: full width, center */
	.elementor-41 .elementor-element-6df0bcd .elementor-element-0abc641,
	.elementor-41 .elementor-element-6df0bcd .elementor-element-02a9960 {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		flex: 0 0 auto !important;
		align-items: center !important;
		display: flex !important;
		flex-direction: column !important;
	}
	.elementor-41 .elementor-element-6df0bcd .elementor-element-02a9960 .e-con-inner,
	.elementor-41 .elementor-element-6df0bcd .elementor-element-73916dc,
	.elementor-41 .elementor-element-6df0bcd .elementor-element-899d498 {
		align-items: center !important;
		text-align: center !important;
	}
	/* CTA container: reduce negative margin so "WE ARE HERE LET'S TALK" and arrow stay in view */
	.elementor-41 .elementor-element-6df0bcd .elementor-element-02a9960 {
		margin-top: 0 !important;
		padding-bottom: 1rem !important;
	}
}

/* Short viewports: extra hero bottom padding so CTA and arrow are not cut off */
@media (max-width: 1025px) and (max-height: 920px) {
	.elementor-41 .elementor-element-6df0bcd .e-con-inner {
		padding-bottom: 5rem !important;
		min-height: 0 !important;
	}
	.elementor-41 .elementor-element-6df0bcd .elementor-element-02a9960 {
		padding-bottom: 2rem !important;
	}
}

/* Client logos & chains marquee: full width on small screens, no clipping */
@media (max-width: 1025px) {
	.bi-clients-marquee,
	.bi-chains-marquee,
	.bi-projects-marquee {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		padding-left: 0.75rem !important;
		padding-right: 0.75rem !important;
	}
	.bi-clients-marquee {
		overflow: hidden !important; /* keep for marquee scroll */
	}
}
@media (max-width: 768px) {
	.bi-clients-marquee-item img {
		max-width: 140px !important;
	}
}

/* Fix top gap for all screen sizes; ensure page can scroll */
html {
	margin-top: 0 !important;
	padding-top: 0 !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
}

body {
	margin: 0 !important;
	margin-top: 0 !important;
	padding: 0 !important;
	padding-top: 0 !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
}

#page.hfeed.site {
	margin: 0 !important;
	margin-top: 0 !important;
	padding: 0 !important;
	padding-top: 0 !important;
}

/* Remove WordPress admin bar spacing if present */
#wpadminbar {
	display: none !important;
}

body.admin-bar #masthead {
	margin-top: 0 !important;
	padding-top: 0 !important;
	top: 0 !important;
}

/* Ensure header container has proper top spacing */
#masthead .elementor-element-5287a09.e-con-boxed,
#masthead .elementor-element-5287a09.e-con-boxed .e-con-inner {
	margin-top: 0 !important;
	padding-top: 20px !important;
}

/* Clean Modern Navbar - Liquid glass translucent */
/* Header: liquid glass translucent so cosmic background shows through */
#masthead {
	background: rgba(14, 17, 22, 0.32) !important;
	backdrop-filter: blur(12px) saturate(1.3) !important;
	-webkit-backdrop-filter: blur(12px) saturate(1.3) !important;
	-webkit-box-shadow: 0 0 0 1px rgba(255,255,255,0.08), 0 1px 0 0 rgba(255,255,255,0.05) !important;
	box-shadow: 0 0 0 1px rgba(255,255,255,0.08), 0 1px 0 0 rgba(255,255,255,0.05) !important;
	padding: 0 !important;
	padding-top: 0 !important;
	margin: 0 !important;
	margin-top: 0 !important;
	position: relative;
	z-index: 100;
	top: 0 !important;
}

/* Navbar container: inherit glass, no extra solid background */
#masthead .elementor-element-5287a09,
#masthead .elementor-element-5287a09 .e-con-inner {
	background: transparent !important;
	padding: 20px 32px !important;
	padding-top: 20px !important;
	margin: 0 !important;
	margin-top: 0 !important;
	min-height: 60px !important;
	display: flex !important;
	align-items: center !important;
}

/* Navigation menu container - clean centered layout */
.hfe-nav-menu__layout-horizontal {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	margin: 0 auto !important;
	position: relative !important;
}

.hfe-nav-menu.bi-nav {
	position: relative;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-wrap: nowrap !important;
	gap: 0 !important;
	list-style: none !important;
	margin: 0 auto !important;
	padding: 0 !important;
	width: auto !important;
	max-width: calc(100% - 160px) !important;
}

/* Menu items - clean spacing and even distribution */
.hfe-nav-menu.bi-nav > li.menu-item {
	position: static !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	margin: 0 !important;
	display: flex !important;
	flex: 0 0 auto !important;
	align-items: center !important;
	align-self: center !important;
}

.hfe-nav-menu.bi-nav > li.menu-item > a.bi-menu-item,
.hfe-nav-menu.bi-nav > li.menu-item .bi-has-submenu-container > a.bi-menu-item {
	position: relative;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	padding: 12px 20px !important;
	border-radius: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: rgba(255, 255, 255, 0.95) !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	text-decoration: none !important;
	background: transparent !important;
	white-space: nowrap;
	border: none !important;
	line-height: 1.5 !important;
	height: 100% !important;
}

/* Hover state - rounded background like reference */
.hfe-nav-menu.bi-nav > li.menu-item:hover > a.bi-menu-item,
.hfe-nav-menu.bi-nav > li.menu-item:hover .bi-has-submenu-container > a.bi-menu-item {
	background-color: rgba(255, 255, 255, 0.1) !important;
	color: #ffffff !important;
	border-radius: 6px !important;
}

/* Active/current menu item */
.hfe-nav-menu.bi-nav > li.menu-item.current-menu-item > a.bi-menu-item,
.hfe-nav-menu.bi-nav > li.menu-item.current-menu-item .bi-has-submenu-container > a.bi-menu-item {
	background-color: rgba(255, 255, 255, 0.15) !important;
	color: #ffffff !important;
	border-radius: 6px !important;
}

/* Remove blue underline - reference doesn't have it */
.hfe-nav-menu.bi-nav > li.menu-item > a.bi-menu-item::after,
.hfe-nav-menu.bi-nav > li.menu-item .bi-has-submenu-container > a.bi-menu-item::after {
	display: none !important;
}

/* Reference-style organized dropdown menu - two column layout with sections */
.bi-nav-submenu,
.hfe-nav-menu__layout-horizontal .hfe-nav-menu > li.menu-item-has-children > .bi-nav-submenu {
	position: absolute;
	top: calc(100% + 12px);
	left: 50% !important;
	right: auto !important;
	transform: translateX(-50%) translateY(-8px);
	background: rgba(30, 30, 35, 0.95) !important;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border-radius: 12px !important;
	padding: 32px 40px !important;
	min-width: 720px !important;
	max-width: 1040px !important;
	width: min(1040px, calc(100vw - 120px)) !important;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4) !important;
	margin-top: 0 !important;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	pointer-events: none;
	z-index: 1000;
	display: grid !important;
	grid-template-columns: repeat(2, 1fr) !important;
	gap: 48px !important;
	list-style: none !important;
	margin: 0 !important;
	border: none !important;
}

/* Services mega menu specific styling - fixed height to prevent auto-adjustment */
.bi-nav-submenu.services-mega-menu,
.hfe-nav-menu__layout-horizontal .hfe-nav-menu > li.menu-item-has-children > .bi-nav-submenu.services-mega-menu {
	display: flex !important;
	flex-direction: row !important;
	grid-template-columns: none !important;
	gap: 24px !important;
	min-width: 900px !important;
	max-width: 1080px !important;
	width: min(1080px, calc(100vw - 120px)) !important;
	height: 80vh !important;
	max-height: 700px !important;
	min-height: 600px !important;
	padding: 20px 24px !important;
	box-sizing: border-box !important;
	overflow: hidden !important;
	left: 50% !important;
	transform: translateX(-50%) translateY(-8px);
}

.bi-nav-submenu.services-mega-menu *,
.bi-nav-submenu.services-mega-menu *::before,
.bi-nav-submenu.services-mega-menu *::after {
	box-sizing: border-box !important;
}

/* Left and right column containers - fixed height with scroll */
.bi-nav-submenu.services-mega-menu .services-menu-left-column {
	flex: 0 0 180px;
	display: flex;
	flex-direction: column;
	gap: 2px;
	height: 100%;
	max-height: 100%;
	overflow-y: auto;
	overflow-x: hidden;
	padding-right: 8px;
	scrollbar-width: thin;
	scrollbar-color: rgba(14, 165, 233, 0.3) transparent;
}

.bi-nav-submenu.services-mega-menu .services-menu-left-column::-webkit-scrollbar {
	width: 6px;
}

.bi-nav-submenu.services-mega-menu .services-menu-left-column::-webkit-scrollbar-track {
	background: transparent;
}

.bi-nav-submenu.services-mega-menu .services-menu-left-column::-webkit-scrollbar-thumb {
	background: rgba(14, 165, 233, 0.3);
	border-radius: 3px;
}

.bi-nav-submenu.services-mega-menu .services-menu-left-column::-webkit-scrollbar-thumb:hover {
	background: rgba(14, 165, 233, 0.5);
}

.bi-nav-submenu.services-mega-menu .services-menu-right-column {
	flex: 1 1 auto;
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	height: 100% !important;
	max-height: 100% !important;
	overflow: hidden !important;
	padding-right: 12px !important;
	min-width: 0 !important;
	position: relative !important;
}

/* Subcategory groups - scrollable content area */
.bi-nav-submenu.services-mega-menu .services-menu-right-column > .subcategory-group {
	flex: 0 0 auto;
	overflow: visible;
}

/* Make right column scrollable for content, search stays at bottom */
.bi-nav-submenu.services-mega-menu .services-menu-right-column {
	overflow-y: auto !important;
	overflow-x: hidden !important;
	scrollbar-width: thin !important;
	scrollbar-color: rgba(14, 165, 233, 0.3) transparent !important;
}

.bi-nav-submenu.services-mega-menu .services-menu-right-column::-webkit-scrollbar {
	width: 6px !important;
}

.bi-nav-submenu.services-mega-menu .services-menu-right-column::-webkit-scrollbar-track {
	background: transparent !important;
}

.bi-nav-submenu.services-mega-menu .services-menu-right-column::-webkit-scrollbar-thumb {
	background: rgba(14, 165, 233, 0.3) !important;
	border-radius: 3px !important;
}

.bi-nav-submenu.services-mega-menu .services-menu-right-column::-webkit-scrollbar-thumb:hover {
	background: rgba(14, 165, 233, 0.5) !important;
}

/* Left column: Main categories (selectable items) */
.bi-nav-submenu.services-mega-menu .main-category-item {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	border-top: none !important;
	border-bottom: none !important;
	border-left: none !important;
	border-right: none !important;
}

.bi-nav-submenu.services-mega-menu .main-category-item::before,
.bi-nav-submenu.services-mega-menu .main-category-item::after {
	display: none !important;
	content: none !important;
}

.bi-nav-submenu.services-mega-menu .main-category-item a.main-category-link {
	padding: 8px 12px !important;
	font-weight: 500 !important;
	font-size: 13px !important;
	color: rgba(255, 255, 255, 0.85) !important;
	transition: all 0.2s ease !important;
	display: block !important;
	border-radius: 4px !important;
	background: transparent !important;
	text-decoration: none !important;
	line-height: 1.4 !important;
	margin-bottom: 2px !important;
	white-space: nowrap !important;
}

.bi-nav-submenu.services-mega-menu .main-category-item a.main-category-link:hover {
	color: #ffffff !important;
	background: rgba(255, 255, 255, 0.05) !important;
}

.bi-nav-submenu.services-mega-menu .main-category-item.active a.main-category-link {
	background: #0d6efd !important;
	color: #ffffff !important;
	font-weight: 600 !important;
}

/* Right column: Subcategories with services */
.bi-nav-submenu.services-mega-menu .subcategory-group {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-bottom: 20px;
	border: none !important;
	border-top: none !important;
	border-bottom: none !important;
}

.bi-nav-submenu.services-mega-menu .subcategory-group::before,
.bi-nav-submenu.services-mega-menu .subcategory-group::after {
	display: none !important;
	content: none !important;
}

.bi-nav-submenu.services-mega-menu .subcategory-group:last-of-type {
	margin-bottom: 0;
}

/* Subcategory heading */
.bi-nav-submenu.services-mega-menu .subcategory-heading {
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: 0.3px !important;
	color: #0d6efd !important;
	margin-bottom: 8px !important;
	padding-bottom: 6px !important;
	border-bottom: none !important;
	line-height: 1.4 !important;
	text-transform: uppercase !important;
}

/* Services list under subcategory - 5 columns with proper spacing */
.bi-nav-submenu.services-mega-menu .subcategory-services {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 12px 20px;
	width: 100%;
	border: none !important;
	border-top: none !important;
	border-bottom: none !important;
}

/* Responsive: 4 columns on medium screens, 3 on small */
@media (max-width: 1400px) {
	.bi-nav-submenu.services-mega-menu .subcategory-services {
		grid-template-columns: repeat(4, 1fr);
		gap: 10px 16px;
	}
}

@media (max-width: 1200px) {
	.bi-nav-submenu.services-mega-menu .subcategory-services {
		grid-template-columns: repeat(3, 1fr);
		gap: 8px 14px;
	}
	
	.bi-nav-submenu.services-mega-menu,
	.hfe-nav-menu__layout-horizontal .hfe-nav-menu > li.menu-item-has-children > .bi-nav-submenu.services-mega-menu {
		height: 75vh !important;
		max-height: 650px !important;
		min-height: 550px !important;
	}
}

@media (max-width: 1024px) {
	.bi-nav-submenu.services-mega-menu .subcategory-services {
		grid-template-columns: repeat(2, 1fr);
		gap: 8px 12px;
	}
}

.bi-nav-submenu.services-mega-menu .subcategory-services li {
	border: none !important;
	border-top: none !important;
	border-bottom: none !important;
}

.bi-nav-submenu.services-mega-menu .subcategory-services li::before,
.bi-nav-submenu.services-mega-menu .subcategory-services li::after {
	display: none !important;
	content: none !important;
}

.bi-nav-submenu.services-mega-menu .subcategory-services li {
	margin: 0 !important;
	padding: 4px 0 !important;
	border: none !important;
	border-top: none !important;
	border-bottom: none !important;
}

.bi-nav-submenu.services-mega-menu .subcategory-services a.hfe-sub-menu-item {
	padding: 6px 8px !important;
	font-weight: 400 !important;
	font-size: 13px !important;
	color: rgba(255, 255, 255, 0.85) !important;
	transition: all 0.2s ease !important;
	display: block !important;
	text-decoration: none !important;
	line-height: 1.5 !important;
	white-space: normal !important;
	word-break: break-word !important;
	border: none !important;
	border-top: none !important;
	border-bottom: none !important;
	border-radius: 4px !important;
}

.bi-nav-submenu.services-mega-menu .subcategory-services a.hfe-sub-menu-item::before,
.bi-nav-submenu.services-mega-menu .subcategory-services a.hfe-sub-menu-item::after {
	display: none !important;
	content: none !important;
	border: none !important;
}

.bi-nav-submenu.services-mega-menu .subcategory-services a.hfe-sub-menu-item:hover {
	color: #0d6efd !important;
	background: rgba(14, 165, 233, 0.1) !important;
	padding-left: 8px !important;
}

/* Remove all horizontal lines from navbar - comprehensive override */
.hfe-nav-menu.bi-nav,
.hfe-nav-menu.bi-nav *,
.hfe-nav-menu.bi-nav ul,
.hfe-nav-menu.bi-nav li,
.hfe-nav-menu.bi-nav a,
.bi-nav-submenu,
.bi-nav-submenu *,
.bi-nav-submenu li,
.bi-nav-submenu a,
.bi-nav-submenu.services-mega-menu,
.bi-nav-submenu.services-mega-menu *,
.bi-nav-submenu.services-mega-menu .main-category-item,
.bi-nav-submenu.services-mega-menu .subcategory-group,
.bi-nav-submenu.services-mega-menu .subcategory-heading,
.bi-nav-submenu.services-mega-menu .subcategory-services,
.bi-nav-submenu.services-mega-menu .subcategory-services li,
.bi-nav-submenu.services-mega-menu .subcategory-services a {
	border-top: none !important;
	border-bottom: none !important;
}

.hfe-nav-menu.bi-nav *::before,
.hfe-nav-menu.bi-nav *::after {
	border-top: none !important;
	border-bottom: none !important;
	content: none !important;
}

/* Search bar at bottom - sticky to bottom of right column */
.bi-nav-submenu.services-mega-menu .services-menu-search {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	margin-top: auto !important;
	padding-top: 12px !important;
	border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
	position: sticky !important;
	bottom: 0 !important;
	background: rgba(30, 30, 35, 0.98) !important;
	backdrop-filter: blur(10px) !important;
	-webkit-backdrop-filter: blur(10px) !important;
	padding-bottom: 4px !important;
	z-index: 10 !important;
	flex-shrink: 0 !important;
}

.bi-nav-submenu.services-mega-menu .services-search-input {
	flex: 1;
	padding: 6px 10px;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 6px;
	color: #ffffff;
	font-size: 12px;
	outline: none;
	transition: all 0.2s ease;
}

.bi-nav-submenu.services-mega-menu .services-search-input::placeholder {
	color: rgba(255, 255, 255, 0.5);
}

.bi-nav-submenu.services-mega-menu .services-search-input:focus {
	background: rgba(255, 255, 255, 0.15);
	border-color: #0d6efd;
}

.bi-nav-submenu.services-mega-menu .services-search-button {
	padding: 6px;
	background: #0d6efd;
	border: none;
	border-radius: 6px;
	color: #ffffff;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s ease;
	width: 32px;
	height: 32px;
	flex-shrink: 0;
}

.bi-nav-submenu.services-mega-menu .services-search-button:hover {
	background: #0284c7;
	transform: scale(1.05);
}

/* Section headings for columns */
.bi-nav-submenu .section-heading {
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 1px !important;
	text-transform: uppercase !important;
	color: rgba(255, 255, 255, 0.5) !important;
	margin-bottom: 20px !important;
	padding-bottom: 12px !important;
	border-bottom: none !important;
	display: block !important;
	grid-column: span 1 !important;
	pointer-events: none !important;
}

/* Smooth dropdown reveal */
.hfe-nav-menu.bi-nav > li.menu-item-has-children:hover > .bi-nav-submenu,
.hfe-nav-menu.bi-nav > li.menu-item-has-children:focus-within > .bi-nav-submenu,
.hfe-nav-menu.bi-nav > li.menu-item-has-children.menu-hovered > .bi-nav-submenu {
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateX(-50%) translateY(0);
	pointer-events: all;
}

/* Dropdown column styling - clean organization */
.bi-nav-submenu li.menu-item {
	margin: 0 !important;
	padding: 0 !important;
	opacity: 0;
	transform: translateY(4px);
	transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
	list-style: none !important;
	display: block !important;
}

.hfe-nav-menu.bi-nav > li.menu-item-has-children:hover > .bi-nav-submenu li,
.hfe-nav-menu.bi-nav > li.menu-item-has-children:focus-within > .bi-nav-submenu li,
.hfe-nav-menu.bi-nav > li.menu-item-has-children.menu-hovered > .bi-nav-submenu li {
	opacity: 1;
	transform: translateY(0);
}

/* Staggered animation delays */
.hfe-nav-menu.bi-nav > li.menu-item-has-children:hover > .bi-nav-submenu li:nth-child(1),
.hfe-nav-menu.bi-nav > li.menu-item-has-children:focus-within > .bi-nav-submenu li:nth-child(1),
.hfe-nav-menu.bi-nav > li.menu-item-has-children.menu-hovered > .bi-nav-submenu li:nth-child(1) {
	transition-delay: 0.03s;
}

.hfe-nav-menu.bi-nav > li.menu-item-has-children:hover > .bi-nav-submenu li:nth-child(2),
.hfe-nav-menu.bi-nav > li.menu-item-has-children:focus-within > .bi-nav-submenu li:nth-child(2),
.hfe-nav-menu.bi-nav > li.menu-item-has-children.menu-hovered > .bi-nav-submenu li:nth-child(2) {
	transition-delay: 0.06s;
}

.hfe-nav-menu.bi-nav > li.menu-item-has-children:hover > .bi-nav-submenu li:nth-child(3),
.hfe-nav-menu.bi-nav > li.menu-item-has-children:focus-within > .bi-nav-submenu li:nth-child(3),
.hfe-nav-menu.bi-nav > li.menu-item-has-children.menu-hovered > .bi-nav-submenu li:nth-child(3) {
	transition-delay: 0.09s;
}

.hfe-nav-menu.bi-nav > li.menu-item-has-children:hover > .bi-nav-submenu li:nth-child(4),
.hfe-nav-menu.bi-nav > li.menu-item-has-children:focus-within > .bi-nav-submenu li:nth-child(4),
.hfe-nav-menu.bi-nav > li.menu-item-has-children.menu-hovered > .bi-nav-submenu li:nth-child(4) {
	transition-delay: 0.12s;
}

/* Reference-style dropdown items - text only, no icons */
.bi-nav-submenu li.menu-item {
	position: relative;
	margin-bottom: 0 !important;
	padding: 4px 0 !important;
	min-height: 40px !important;
	display: flex !important;
	align-items: center !important;
}

/* Apply 5-column grid to all submenu lists (Bootstrap-like) - fixed height to prevent auto-adjustment */
.bi-nav-submenu:not(.services-mega-menu) {
	display: grid !important;
	grid-template-columns: repeat(5, 1fr) !important;
	gap: 12px 20px !important;
	padding: 24px 32px !important;
	max-height: 70vh !important;
	height: auto !important;
	min-height: 400px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	scrollbar-width: thin;
	scrollbar-color: rgba(14, 165, 233, 0.3) transparent;
}

.bi-nav-submenu:not(.services-mega-menu)::-webkit-scrollbar {
	width: 6px;
}

.bi-nav-submenu:not(.services-mega-menu)::-webkit-scrollbar-track {
	background: transparent;
}

.bi-nav-submenu:not(.services-mega-menu)::-webkit-scrollbar-thumb {
	background: rgba(14, 165, 233, 0.3);
	border-radius: 3px;
}

.bi-nav-submenu:not(.services-mega-menu)::-webkit-scrollbar-thumb:hover {
	background: rgba(14, 165, 233, 0.5);
}

/* Responsive: 4 columns on medium screens, 3 on small */
@media (max-width: 1400px) {
	.bi-nav-submenu:not(.services-mega-menu) {
		grid-template-columns: repeat(4, 1fr) !important;
		gap: 10px 16px !important;
	}
}

@media (max-width: 1200px) {
	.bi-nav-submenu:not(.services-mega-menu) {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 8px 14px !important;
	}
}

.bi-nav-submenu a.hfe-sub-menu-item {
	color: rgba(255, 255, 255, 0.85) !important;
	padding: 8px 12px !important;
	border-radius: 4px !important;
	display: block !important;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	text-decoration: none !important;
	position: relative;
	border: none !important;
	background: transparent !important;
	margin-bottom: 0 !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
	width: 100% !important;
	white-space: normal !important;
	word-break: break-word !important;
}

.bi-nav-submenu a.hfe-sub-menu-item:hover {
	color: #0d6efd !important;
	background: rgba(14, 165, 233, 0.1) !important;
	padding-left: 16px !important;
	transform: translateX(2px);
}

.bi-nav-submenu li.menu-item:last-child a.hfe-sub-menu-item {
	margin-bottom: 0 !important;
}

/* Remove icons - no ::before pseudo-element */
.bi-nav-submenu a.hfe-sub-menu-item::before {
	display: none !important;
	content: none !important;
}

/* Content wrapper - title and description */
.bi-nav-submenu a.hfe-sub-menu-item .menu-item-content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 4px;
}

/* Title styling - bold */
.bi-nav-submenu a.hfe-sub-menu-item .menu-item-title {
	font-weight: 600 !important;
	font-size: 15px !important;
	color: #ffffff !important;
	line-height: 1.4;
	display: block;
	margin-bottom: 2px;
}

/* Description text - lighter, smaller */
.bi-nav-submenu a.hfe-sub-menu-item .menu-item-description {
	font-size: 13px !important;
	font-weight: 400 !important;
	color: rgba(255, 255, 255, 0.65) !important;
	line-height: 1.5;
	display: block;
}

.bi-nav-submenu a.hfe-sub-menu-item:hover {
	background-color: transparent !important;
	color: #ffffff !important;
	transform: none;
}

.bi-nav-submenu a.hfe-sub-menu-item:hover .menu-item-title {
	color: #ffffff !important;
}

.bi-nav-submenu a.hfe-sub-menu-item:hover .menu-item-description {
	color: rgba(255, 255, 255, 0.8) !important;
}

/* Contact Us button - clean styling - already defined above */

#masthead .elementor-element-a94dd73 .elementor-button {
	background: rgba(14, 165, 233, 0.15) !important;
	border: 1px solid rgba(14, 165, 233, 0.3) !important;
	color: #ffffff !important;
	padding: 10px 20px !important;
	border-radius: 8px !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

#masthead .elementor-element-a94dd73 .elementor-button:hover {
	background: rgba(14, 165, 233, 0.25) !important;
	border-color: rgba(14, 165, 233, 0.5) !important;
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(14, 165, 233, 0.2);
}

/* Logo styling - already defined above, but ensure it's not overridden */
#masthead .elementor-element-7e6a5c1 img.elementor-heading-title {
	filter: brightness(0) invert(1) !important;
}

/* Ensure proper layout for header container */
#masthead .elementor-element-2003800 {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	width: 100% !important;
	gap: 0 !important;
	flex-wrap: nowrap !important;
	position: relative !important;
	min-height: 60px !important;
}

/* Logo - fixed left position */
#masthead .elementor-element-7e6a5c1 {
	flex: 0 0 auto !important;
	margin-right: 40px !important;
	order: 1 !important;
	align-self: center !important;
	display: flex !important;
	align-items: center !important;
}

/* Navigation menu - centered and flexible */
#masthead .elementor-element-4f62722 {
	flex: 1 1 auto !important;
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	order: 2 !important;
	margin: 0 auto !important;
	min-width: 0 !important;
}

/* Ensure navigation widget container doesn't interfere */
#masthead .elementor-element-4f62722 .elementor-widget-container {
	width: 100% !important;
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
}

/* Ensure all menu items are vertically aligned */
#masthead .elementor-element-4f62722 nav,
#masthead .elementor-element-4f62722 nav ul {
	display: flex !important;
	align-items: center !important;
}

/* Contact Us button - fixed right position */
#masthead .elementor-element-a94dd73 {
	flex: 0 0 auto !important;
	margin-left: 20px !important;
	order: 3 !important;
	margin-right: 0 !important;
	align-self: center !important;
}

/* Ensure Contact Us button stays on right on all screen sizes */
@media (min-width: 768px) {
	#masthead .elementor-element-2003800 {
		display: flex !important;
		flex-direction: row !important;
		justify-content: space-between !important;
		align-items: center !important;
	}
	
	#masthead .elementor-element-7e6a5c1 {
		flex-shrink: 0 !important;
	}
	
	#masthead .elementor-element-4f62722 {
		flex: 1 1 auto !important;
		min-width: 0 !important;
	}
	
	#masthead .elementor-element-a94dd73 {
		flex-shrink: 0 !important;
		margin-left: 20px !important;
		margin-right: 0 !important;
	}
}

/* Fix submenu container positioning */
.bi-has-submenu-container {
	position: relative;
}

/* Remove any default margins/padding that cause clutter */
.hfe-nav-menu__layout-horizontal,
.hfe-nav-menu__layout-horizontal nav {
	margin: 0 !important;
	padding: 0 !important;
}

/* Responsive dropdown */
@media (min-width: 1024px) {
	.hfe-nav-menu .sub-menu {
		grid-template-columns: repeat(2, 1fr) !important;
		min-width: 600px !important;
	}
}

@media (max-width: 1023px) {
	.hfe-nav-menu .sub-menu {
		grid-template-columns: 1fr !important;
		min-width: 280px !important;
		left: 0 !important;
		transform: translateX(0) translateY(-8px);
	}
	
	.hfe-nav-menu > li.menu-item-has-children:hover > .sub-menu,
	.hfe-nav-menu > li.menu-item-has-children:focus-within > .sub-menu,
	.hfe-nav-menu > li.menu-item-has-children.menu-hovered > .sub-menu {
		transform: translateX(0) translateY(0);
	}
}

@media (max-width: 1280px) {
	.hfe-nav-menu .sub-menu,
	.hfe-nav-menu .sub-menu.services-mega-menu {
		width: calc(100vw - 72px) !important;
		min-width: auto !important;
		max-width: calc(100vw - 72px) !important;
	}
}

/* Smooth tab switching animation */
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(8px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.hfe-nav-menu > li.menu-item-has-children:hover > .sub-menu,
.hfe-nav-menu > li.menu-item-has-children.menu-hovered > .sub-menu {
	animation: fadeInUp 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

/* Prevent layout shift and overlaps */
.hfe-nav-menu .sub-menu {
	will-change: transform, opacity;
}

/* Ensure no overflow or overlaps */
.hfe-nav-menu,
.hfe-nav-menu__layout-horizontal,
#masthead .elementor-element-2003800 {
	overflow: visible !important;
}

/* Fix any z-index issues */
.hfe-nav-menu > li.menu-item-has-children {
	z-index: 1001;
}

.hfe-nav-menu > li.menu-item-has-children:hover {
	z-index: 1002;
}

/* Prevent any overlaps or layout issues - already defined above */

/* Clean up any default Elementor styles that cause clutter */
.elementor-widget-navigation-menu .elementor-widget-container {
	padding: 0 !important;
	margin: 0 !important;
}

/* Ensure menu items don't wrap awkwardly */
.hfe-nav-menu > li.menu-item {
	flex-shrink: 0 !important;
}

/* Clean spacing between logo, menu, and button */
#masthead .elementor-element-2003800 > * {
	margin: 0 !important;
}

/* Remove any default list styling */
.hfe-nav-menu,
.hfe-nav-menu ul,
.hfe-nav-menu li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Ensure dropdowns don't cause page scroll */
.hfe-nav-menu .sub-menu {
	overflow: visible !important;
	max-height: none !important;
}

/* Clean arrow icons */
.bi-menu-toggle {
	display: inline-block;
	margin-left: 6px;
	transition: transform 0.2s;
}

.hfe-nav-menu.bi-nav > li.menu-item-has-children:hover .bi-menu-toggle {
	transform: rotate(180deg);
}

/* Homepage hero h1: prominent, centered, responsive */
.elementor-element-d3cdef2 {
	text-align: center !important;
}
.elementor-element-d3cdef2 h1.elementor-heading-title {
	font-size: clamp(2rem, 3.5vw + 1.5rem, 3.25rem) !important;
	line-height: 1.2 !important;
	white-space: normal !important;
	max-width: 100%;
}
@media (max-width: 991px) {
	.elementor-element-d3cdef2 h1.elementor-heading-title {
		font-size: clamp(1.5rem, 4.5vw + 1rem, 2.25rem) !important;
		white-space: normal !important;
	}
}
@media (max-width: 576px) {
	.elementor-element-d3cdef2 h1.elementor-heading-title {
		font-size: clamp(1.25rem, 5.5vw + 0.75rem, 1.625rem) !important;
		white-space: normal !important;
	}
}

/* Hero subheading "Your Code, Our Vision": prominent subheading */
.elementor-element-fcafc20 h2.elementor-heading-title {
	font-size: clamp(1.5rem, 2.5vw + 1.25rem, 5.25rem) !important;
	line-height: 2.3 !important;
	white-space: nowrap !important;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
}
@media (max-width: 768px) {
	.elementor-element-fcafc20 h2.elementor-heading-title {
		font-size: clamp(1.25rem, 3vw + 1rem, 1.75rem) !important;
		white-space: normal !important;
		text-overflow: clip;
	}
}
@media (max-width: 576px) {
	.elementor-element-fcafc20 h2.elementor-heading-title {
		font-size: clamp(1.125rem, 4vw + 0.75rem, 1.5rem) !important;
		white-space: normal !important;
		text-overflow: clip;
	}
}

/* Homepage: no background on main sections; card style only on inner content */
.elementor-41 .e-con.e-parent.e-con-boxed:not(.elementor-element-6df0bcd) {
	background: none !important;
	border: none !important;
	box-shadow: none !important;
}
/* Main content sections: horizontal edge spacing (not edge-to-edge) */
.elementor-41 > .e-con.e-parent.e-con-boxed:not(.elementor-element-6df0bcd) {
	padding-left: clamp(1.25rem, 5vw, 3rem) !important;
	padding-right: clamp(1.25rem, 5vw, 3rem) !important;
	max-width: 1600px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box !important;
}
/* Inner card for most sections – liquid glass: double white border, pill-rounded */
.elementor-41 .e-con.e-parent.e-con-boxed:not(.elementor-element-6df0bcd):not(.elementor-element-9abcea5):not(.elementor-element-8980d64):not(.elementor-element-0f2e586):not(.elementor-element-ac2a9e9) > .e-con-inner {
	background: transparent !important;
	border: none !important;
	border-radius: 28px !important;
	backdrop-filter: blur(3px) saturate(1.4);
	-webkit-backdrop-filter: blur(3px) saturate(1.4);
	box-shadow:
		0 0 0 1px rgba(255,255,255,0.55),
		0 0 0 3px rgba(255,255,255,0.22),
		inset 0 1px 0 1px rgba(255,255,255,0.12),
		0 4px 12px rgba(0,0,0,0.1),
		0 16px 40px rgba(0,0,0,0.12);
	transition: box-shadow 0.35s ease, background 0.35s ease, transform 0.35s ease;
}
.elementor-41 .e-con.e-parent.e-con-boxed:not(.elementor-element-6df0bcd):not(.elementor-element-9abcea5):not(.elementor-element-8980d64):not(.elementor-element-0f2e586):not(.elementor-element-ac2a9e9):hover > .e-con-inner {
	background: transparent !important;
	box-shadow:
		0 0 0 1px rgba(255,255,255,0.65),
		0 0 0 3px rgba(255,255,255,0.28),
		inset 0 1px 0 1px rgba(255,255,255,0.18),
		0 8px 24px rgba(0,0,0,0.12),
		0 24px 56px rgba(0,0,0,0.14);
	transform: translateY(-3px);
}
/* Tabs section: card only on tab content panels – same liquid glass style */
.elementor-41 .elementor-element-9abcea5 .e-n-tabs-content .e-con-boxed.e-con.e-child {
	background: transparent !important;
	border: none !important;
	border-radius: 28px !important;
	backdrop-filter: blur(3px) saturate(1.4);
	-webkit-backdrop-filter: blur(3px) saturate(1.4);
	box-shadow:
		0 0 0 1px rgba(255,255,255,0.55),
		0 0 0 3px rgba(255,255,255,0.22),
		inset 0 1px 0 1px rgba(255,255,255,0.12),
		0 4px 12px rgba(0,0,0,0.1),
		0 16px 40px rgba(0,0,0,0.12);
	transition: box-shadow 0.35s ease, background 0.35s ease, transform 0.35s ease;
}
.elementor-41 .elementor-element-9abcea5 .e-n-tabs-content .e-con-boxed.e-con.e-child:hover {
	background: transparent !important;
	box-shadow:
		0 0 0 1px rgba(255,255,255,0.65),
		0 0 0 3px rgba(255,255,255,0.28),
		inset 0 1px 0 1px rgba(255,255,255,0.18),
		0 8px 24px rgba(0,0,0,0.12),
		0 24px 56px rgba(0,0,0,0.14);
	transform: translateY(-3px);
}

/* Homepage tabs: move image up in responsive for all tabs (Web3, AI, Computer Vision, Mobile, Maintenance) */
@media (max-width: 1024px) {
	.elementor-41 .elementor-element-9abcea5 .e-n-tabs-content .e-con-boxed.e-con.e-child .e-con-inner > .e-con.e-child:first-child,
	.elementor-41 .elementor-element-9abcea5 .elementor-element-9d80e4f,
	.elementor-41 .elementor-element-9abcea5 .elementor-element-8e8c07c,
	.elementor-41 .elementor-element-9abcea5 .elementor-element-6397df8,
	.elementor-41 .elementor-element-9abcea5 .elementor-element-3aeb57c,
	.elementor-41 .elementor-element-9abcea5 .elementor-element-2f532d8 {
		padding-top: 0 !important;
		margin-top: -1rem !important;
	}
	.elementor-41 .elementor-element-9abcea5 .e-n-tabs-content .e-con-boxed .e-con-inner > .e-con.e-child:first-child .elementor-widget-image {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}
}
@media (max-width: 768px) {
	.elementor-41 .elementor-element-9abcea5 .e-n-tabs-content .e-con-boxed.e-con.e-child .e-con-inner > .e-con.e-child:first-child,
	.elementor-41 .elementor-element-9abcea5 .elementor-element-9d80e4f,
	.elementor-41 .elementor-element-9abcea5 .elementor-element-8e8c07c,
	.elementor-41 .elementor-element-9abcea5 .elementor-element-6397df8,
	.elementor-41 .elementor-element-9abcea5 .elementor-element-3aeb57c,
	.elementor-41 .elementor-element-9abcea5 .elementor-element-2f532d8 {
		padding-top: 0 !important;
		margin-top: -1.5rem !important;
	}
}

/* Building With the Best Tools (ac2a9e9): blur(3px) saturate(1.4) + transparent on container, tab titles, and tech pills */
.elementor-41 .elementor-element-ac2a9e9 .e-n-tabs-content .e-con-boxed.e-con.e-child .e-con-inner {
	background: transparent !important;
	backdrop-filter: blur(3px) saturate(1.4);
	-webkit-backdrop-filter: blur(3px) saturate(1.4);
}
.elementor-41 .elementor-element-ac2a9e9 .e-n-tab-title {
	background: transparent !important;
	backdrop-filter: blur(3px) saturate(1.4);
	-webkit-backdrop-filter: blur(3px) saturate(1.4);
}
.elementor-41 .elementor-element-ac2a9e9 .e-n-tabs-content .e-con:has(> .elementor-widget-heading):has(> .elementor-widget-text-editor) {
	background: transparent !important;
	backdrop-filter: blur(3px) saturate(1.4);
	-webkit-backdrop-filter: blur(3px) saturate(1.4);
}

/* ========== FAQ Section: heading/content top, 3-column grid, responsive ========== */
/* Keep FAQ above Spline background so title/intro stay bright white when Spline loads */
#faq.blockint-faq,
section#faq.blockint-faq {
	position: relative !important;
	z-index: 2 !important;
	isolation: isolate !important;
}
.blockint-faq,
#faq.blockint-faq {
	padding: clamp(2.5rem, 5vw, 4rem) 0 !important;
}
/* Same color variables as .elementor-kit-3 so FAQ title/intro match "Building With the Best Tools" */
#faq.blockint-faq,
#faq.blockint-faq .blockint-faq__container {
	--e-global-color-text: #ffffff;
	--e-global-color-5102508: #ffffff;
	color: #ffffff !important;
}
/* Ensure no overlay dims FAQ header (Elementor section/container :before can act as overlay) */
#faq.blockint-faq::before,
#faq .blockint-faq__container::before,
#faq .blockint-faq__header::before {
	display: none !important;
	opacity: 0 !important;
}
/* Force bright white: isolate from ancestor opacity/color, literal #ffffff */
#faq.blockint-faq .blockint-faq__header,
#faq.blockint-faq .blockint-faq__header h2,
#faq.blockint-faq .blockint-faq__header p,
#faq.blockint-faq .blockint-faq__title,
#faq.blockint-faq .blockint-faq__intro {
	color: #ffffff !important;
	opacity: 1 !important;
}
#faq.blockint-faq .blockint-faq__header {
	isolation: isolate;
}
.blockint-faq__container {
	display: flex !important;
	flex-direction: column !important;
	gap: clamp(1.5rem, 4vw, 2.5rem) !important;
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
}
.blockint-faq__header {
	text-align: center;
	max-width: 640px;
	margin: 0 auto;
	opacity: 1 !important;
}
/* Same as "Building With the Best Tools" heading: kit h2 color + typography */
#faq.blockint-faq .blockint-faq__header,
#faq .blockint-faq__header *,
.blockint-faq__title,
#faq .blockint-faq__title,
#faq h2.blockint-faq__title,
.blockint-faq .blockint-faq__header .elementor-heading-title,
.blockint-faq__intro,
#faq .blockint-faq__intro,
.blockint-faq__header p {
	color: var(--e-global-color-5102508, #ffffff) !important;
	opacity: 1 !important;
}
/* FAQ title: same as .elementor-kit-3 h2 / Building With the Best Tools */
.blockint-faq__title,
#faq .blockint-faq__title,
#faq h2.blockint-faq__title,
.blockint-faq .elementor-heading-title {
	margin: 0 0 0.5rem 0 !important;
	font-family: var(--e-global-typography-secondary-font-family, "Instrument Sans"), Sans-serif !important;
	font-size: clamp(1.5rem, 3vw, 2rem) !important;
	font-weight: var(--e-global-typography-secondary-font-weight, 600) !important;
	line-height: 1.2 !important;
	letter-spacing: -0.02em !important;
	color: var(--e-global-color-5102508, #ffffff) !important;
}
.blockint-faq__intro,
#faq .blockint-faq__intro,
.blockint-faq__header p {
	margin: 0 !important;
	font-size: clamp(0.9375rem, 1.5vw, 1.0625rem) !important;
	line-height: 1.55 !important;
	color: var(--e-global-color-5102508, #ffffff) !important;
}
.blockint-faq__dl {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 1rem !important;
}
/* FAQ cards: liquid glass – double white border, pill-rounded */
.blockint-faq__item {
	position: relative !important;
	z-index: 1 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 28px !important;
	padding: 1.25rem 1.5rem !important;
	backdrop-filter: blur(3px) saturate(1.4);
	-webkit-backdrop-filter: blur(3px) saturate(1.4);
	box-shadow:
		0 0 0 1px rgba(255,255,255,0.55),
		0 0 0 3px rgba(255,255,255,0.22),
		inset 0 1px 0 1px rgba(255,255,255,0.12),
		0 4px 16px rgba(0,0,0,0.1),
		0 16px 40px rgba(0,0,0,0.12);
	transition: box-shadow 0.35s ease, background 0.35s ease, transform 0.35s ease;
}
.blockint-faq__item:hover {
	background: transparent !important;
	box-shadow:
		0 0 0 1px rgba(255,255,255,0.65),
		0 0 0 3px rgba(255,255,255,0.28),
		inset 0 1px 0 1px rgba(255,255,255,0.18),
		0 8px 24px rgba(0,0,0,0.12),
		0 24px 56px rgba(0,0,0,0.14);
	transform: translateY(-3px);
}
.blockint-faq__question,
#faq .blockint-faq__question,
.blockint-faq__question strong,
#faq .blockint-faq__item dt {
	margin: 0 0 0.5rem 0 !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
	color: #ffffff !important;
	line-height: 1.35 !important;
}
.blockint-faq__answer,
#faq .blockint-faq__answer,
#faq .blockint-faq__item dd,
.blockint-faq__answer span,
#faq .blockint-faq__item dd span[itemprop="text"] {
	margin: 0 !important;
	font-size: 0.9375rem !important;
	color: #ffffff !important;
	line-height: 1.6 !important;
	opacity: 1 !important;
}
@media (max-width: 992px) {
	.blockint-faq__dl {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}
@media (max-width: 576px) {
	.blockint-faq__container {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
	.blockint-faq__dl {
		grid-template-columns: 1fr !important;
	}
	.blockint-faq__item {
		padding: 1rem 1.25rem !important;
	}
}

/* ===== CTA section: "Ready to Start Your Project?" ===== */
/* When CTA is used outside homepage (e.g. contact page), constrain width like homepage */
.elementor-11 .blockint-cta-container.e-con-boxed,
body:not(.elementor-41) .blockint-cta-container.e-con-boxed {
	max-width: 1600px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: clamp(1.25rem, 5vw, 3rem) !important;
	padding-right: clamp(1.25rem, 5vw, 3rem) !important;
	box-sizing: border-box !important;
}
/* Single container: remove inner box so no double-border effect */
.blockint-cta-container.e-con-boxed .e-con-inner {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
}
.blockint-cta-container {
	padding-top: 4rem !important;
	padding-bottom: 4rem !important;
}
.blockint-cta-section {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	gap: 3rem;
	align-items: start;
	max-width: 1100px;
	margin: 0 auto;
}
.blockint-cta-section__left {
	min-width: 0;
}
/* CTA heading "Ready to Start Your Project?" – smaller on all pages */
.blockint-cta-section__left .elementor-heading-title {
	font-size: 1.35rem !important;
	line-height: 1.35 !important;
	color: #fff !important;
}
/* Entire CTA (form + offices) inside one container – padding, border-radius, subtle background */
.blockint-cta-section {
	padding: 2rem 2.5rem !important;
	border-radius: 16px !important;
	background: linear-gradient(160deg, rgba(30, 38, 50, 0.45) 0%, rgba(18, 24, 32, 0.55) 50%, rgba(14, 165, 233, 0.04) 100%) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.05) inset, 0 8px 24px rgba(0, 0, 0, 0.15);
}
/* Contact page: no grey gap between CTA and footer */
body.elementor-page-11 .bi-footer {
	margin-top: 0 !important;
}
body.elementor-page-11 #footer-container {
	background: transparent !important;
	border-top: none !important;
}
/* Contact page: more opaque CTA containers so text is visible over Spline background */
body.elementor-page-11 .blockint-cta-location {
	background: rgba(255, 255, 255, 0.14) !important;
	border-color: rgba(255, 255, 255, 0.2) !important;
}
body.elementor-page-11 .blockint-cta-location:hover {
	background: rgba(255, 255, 255, 0.2) !important;
	border-color: rgba(255, 255, 255, 0.28) !important;
}
body.elementor-page-11 .blockint-cta-form__medium-card {
	background: rgba(255, 255, 255, 0.14) !important;
	border-color: rgba(255, 255, 255, 0.25) !important;
}
body.elementor-page-11 .blockint-cta-form__medium-card:hover {
	background: rgba(255, 255, 255, 0.2) !important;
	border-color: rgba(255, 255, 255, 0.35) !important;
}
body.elementor-page-11 .blockint-cta-form__medium-card-icon {
	background: rgba(255, 255, 255, 0.2) !important;
}
body.elementor-page-11 .blockint-cta-form input,
body.elementor-page-11 .blockint-cta-form select,
body.elementor-page-11 .blockint-cta-form textarea {
	background: rgba(255, 255, 255, 0.18) !important;
	border-color: rgba(255, 255, 255, 0.3) !important;
}
body.elementor-page-11 .blockint-cta-form input::placeholder,
body.elementor-page-11 .blockint-cta-form textarea::placeholder {
	color: rgba(255, 255, 255, 0.6) !important;
}
/* Contact page: glassmorphism container for CTA section (form + offices) */
body.elementor-page-11 .blockint-cta-section {
	background: linear-gradient(160deg, rgba(30, 38, 50, 0.5) 0%, rgba(18, 24, 32, 0.6) 50%, rgba(14, 165, 233, 0.04) 100%) !important;
	backdrop-filter: blur(24px) saturate(1.3);
	-webkit-backdrop-filter: blur(24px) saturate(1.3);
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 20px !important;
	padding: 2.5rem !important;
	box-shadow:
		0 0 0 1px rgba(255, 255, 255, 0.06) inset,
		0 8px 32px rgba(0, 0, 0, 0.2),
		0 24px 64px rgba(0, 0, 0, 0.12);
}
/* Adaptive AI page: same glassmorphism background for CTA section (form + offices) */
body.elementor-page-37 .blockint-cta-section {
	background: linear-gradient(160deg, rgba(30, 38, 50, 0.5) 0%, rgba(18, 24, 32, 0.6) 50%, rgba(14, 165, 233, 0.04) 100%) !important;
	backdrop-filter: blur(24px) saturate(1.3);
	-webkit-backdrop-filter: blur(24px) saturate(1.3);
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 20px !important;
	padding: 2.5rem !important;
	box-shadow:
		0 0 0 1px rgba(255, 255, 255, 0.06) inset,
		0 8px 32px rgba(0, 0, 0, 0.2),
		0 24px 64px rgba(0, 0, 0, 0.12);
}
/* Adaptive AI page: CTA form and office cards – translucent so background shows through */
/* Adaptive AI page: CTA office cards – container background glassmorphism */
body.elementor-page-37 .blockint-cta-location {
	background: rgba(255, 255, 255, 0.12) !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	backdrop-filter: blur(12px) saturate(1.2);
	-webkit-backdrop-filter: blur(12px) saturate(1.2);
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.06) inset;
	border-radius: 12px !important;
}
body.elementor-page-37 .blockint-cta-location:hover {
	background: rgba(255, 255, 255, 0.18) !important;
	border-color: rgba(255, 255, 255, 0.25) !important;
}
/* Adaptive AI page: CTA contact medium cards – container background glassmorphism */
body.elementor-page-37 .blockint-cta-form__medium-card {
	background: rgba(255, 255, 255, 0.12) !important;
	border: 1px solid rgba(255, 255, 255, 0.2) !important;
	backdrop-filter: blur(12px) saturate(1.2);
	-webkit-backdrop-filter: blur(12px) saturate(1.2);
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.06) inset;
}
body.elementor-page-37 .blockint-cta-form__medium-card:hover {
	background: rgba(255, 255, 255, 0.18) !important;
	border-color: rgba(255, 255, 255, 0.3) !important;
}
body.elementor-page-37 .blockint-cta-form__medium-card-icon {
	background: rgba(255, 255, 255, 0.2) !important;
}
/* Adaptive AI page: CTA form inputs/textarea – container background glassmorphism */
body.elementor-page-37 .blockint-cta-form input,
body.elementor-page-37 .blockint-cta-form select,
body.elementor-page-37 .blockint-cta-form textarea {
	background: rgba(255, 255, 255, 0.12) !important;
	border: 1px solid rgba(255, 255, 255, 0.25) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-radius: 10px !important;
}
body.elementor-page-37 .blockint-cta-form input::placeholder,
body.elementor-page-37 .blockint-cta-form textarea::placeholder {
	color: rgba(255, 255, 255, 0.6) !important;
}
.blockint-cta-section__right {
	display: flex;
	align-items: stretch;
	justify-content: center;
}
/* CTA right: locations with icons and addresses */
.blockint-cta-locations {
	width: 100%;
	max-width: 460px;
	padding: 1.5rem 0 0;
}
.blockint-cta-locations__title {
	margin: 0 0 1.25rem;
	font-size: 1.15rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.95);
	letter-spacing: -0.02em;
}
.blockint-cta-locations__list {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}
.blockint-cta-location {
	display: flex;
	gap: 1rem;
	align-items: flex-start;
	padding: 1rem;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 12px;
	transition: background 0.2s, border-color 0.2s;
}
.blockint-cta-location:hover {
	background: rgba(255, 255, 255, 0.06);
	border-color: rgba(255, 255, 255, 0.12);
}
.blockint-cta-location__icon {
	flex-shrink: 0;
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.blockint-cta-location__icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.blockint-cta-location--dubai .blockint-cta-location__icon img {
	filter: invert(1);
}
.blockint-cta-location__content {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}
.blockint-cta-location__name {
	font-size: 1rem;
	font-weight: 600;
	color: #fff;
}
.blockint-cta-location__address {
	margin: 0;
	font-size: 0.85rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.7);
	font-style: normal;
}
@media (max-width: 900px) {
	.blockint-cta-section {
		grid-template-columns: 1fr;
		gap: 2rem;
	}
	.blockint-cta-section__right {
		order: -1;
	}
	.blockint-cta-locations {
		max-width: 100%;
		padding-top: 0;
	}
	.blockint-cta-locations__title {
		margin-bottom: 1rem;
	}
}
@media (max-width: 600px) {
	.blockint-cta-container {
		padding-top: 2.5rem !important;
		padding-bottom: 2.5rem !important;
	}
	.blockint-cta-location {
		padding: 0.85rem;
		gap: 0.85rem;
	}
	.blockint-cta-location__icon {
		width: 42px;
		height: 42px;
	}
	.blockint-cta-location__address {
		font-size: 0.8rem;
	}
}

.blockint-cta-form-wrapper {
	max-width: 100%;
	margin-top: 1rem;
}
.blockint-cta-form {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}
.blockint-cta-form__status {
	min-height: 1.5rem;
	font-size: 0.9rem;
	padding: 0.5rem 0;
}
.blockint-cta-form__status.success { color: #4ade80; }
.blockint-cta-form__status.error { color: #f87171; }
.blockint-cta-form__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem 1.25rem;
}
.blockint-cta-form__field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}
.blockint-cta-form__field--mobile { grid-column: 1 / -1; }
.blockint-cta-form__contact-mode[hidden] {
	display: none !important;
}
.blockint-cta-form__contact-mode:not([hidden]) {
	display: flex !important;
}
/* Contact medium: icon cards (select hidden, cards are the UI) */
.blockint-cta-form__medium-select-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
.blockint-cta-form__field--contact-mode {
	position: relative;
}
.blockint-cta-form__medium-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0.75rem;
}
.blockint-cta-form__medium-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 1rem 0.75rem;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 12px;
	cursor: pointer;
	transition: border-color 0.2s, background 0.2s, transform 0.2s, box-shadow 0.2s;
	color: rgba(255, 255, 255, 0.85);
	font-size: 0.9rem;
	font-weight: 500;
}
.blockint-cta-form__medium-card:hover {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.25);
	transform: translateY(-2px);
}
.blockint-cta-form__medium-card--selected {
	background: rgba(14, 165, 233, 0.15);
	border-color: rgba(14, 165, 233, 0.5);
	box-shadow: 0 0 0 1px rgba(14, 165, 233, 0.3);
	color: #fff;
}
.blockint-cta-form__medium-card--selected:hover {
	background: rgba(14, 165, 233, 0.2);
	border-color: rgba(14, 165, 233, 0.6);
}
.blockint-cta-form__medium-card-icon {
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.1);
	color: #0d6efd;
	transition: background 0.2s, color 0.2s;
}
.blockint-cta-form__medium-card-icon svg {
	width: 24px;
	height: 24px;
}
.blockint-cta-form__medium-card-icon--email svg {
	fill: none !important;
	stroke: currentColor !important;
}
.blockint-cta-form__medium-card--selected .blockint-cta-form__medium-card-icon {
	background: rgba(14, 165, 233, 0.3);
	color: #fff;
}
.blockint-cta-form__medium-card-icon--whatsapp {
	color: #25d366;
}
.blockint-cta-form__medium-card--selected .blockint-cta-form__medium-card-icon--whatsapp {
	background: rgba(37, 211, 102, 0.25);
	color: #25d366;
}
.blockint-cta-form__medium-card-icon--telegram {
	color: #0088cc;
}
.blockint-cta-form__medium-card--selected .blockint-cta-form__medium-card-icon--telegram {
	background: rgba(0, 136, 204, 0.25);
	color: #2aabee;
}
.blockint-cta-form__medium-card-label {
	line-height: 1.2;
}
.blockint-cta-form__field label,
.blockint-cta-form__label {
	font-size: 0.85rem;
	font-weight: 500;
	color: rgba(255,255,255,0.9);
}
.blockint-cta-form input,
.blockint-cta-form select,
.blockint-cta-form textarea {
	width: 100%;
	padding: 0.7rem 1rem;
	font-size: 1rem;
	color: #fff;
	background: rgba(255,255,255,0.08);
	border: 1px solid rgba(255,255,255,0.2);
	border-radius: 8px;
	transition: border-color 0.2s, box-shadow 0.2s;
}
.blockint-cta-form input::placeholder,
.blockint-cta-form textarea::placeholder {
	color: rgba(255,255,255,0.45);
}
.blockint-cta-form input:focus,
.blockint-cta-form select:focus,
.blockint-cta-form textarea:focus {
	outline: none;
	border-color: #0d6efd;
	box-shadow: 0 0 0 3px rgba(14,165,233,0.2);
}
.blockint-cta-form__mobile-row {
	display: grid;
	grid-template-columns: 140px 1fr;
	gap: 0.75rem;
}
.blockint-cta-form select {
	cursor: pointer;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.75rem center;
	padding-right: 2.25rem;
}
.blockint-cta-form__submit {
	margin-top: 0.25rem;
	padding: 0.85rem 1.75rem;
	font-size: 1rem;
	font-weight: 600;
	color: #fff;
	background: linear-gradient(135deg, #0d6efd 0%, #0284c7 100%);
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: transform 0.2s, box-shadow 0.2s;
}
.blockint-cta-form__submit:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(14,165,233,0.4);
}
.blockint-cta-form__submit:active { transform: translateY(0); }
.blockint-cta-form__submit:disabled {
	opacity: 0.7;
	cursor: not-allowed;
	transform: none;
}
@media (max-width: 600px) {
	.blockint-cta-form__grid {
		grid-template-columns: 1fr;
	}
	.blockint-cta-form__mobile-row {
		grid-template-columns: 1fr;
	}
	.blockint-cta-form__medium-cards {
		grid-template-columns: 1fr;
		gap: 0.5rem;
	}
	.blockint-cta-form__medium-card {
		flex-direction: row;
		justify-content: flex-start;
		gap: 0.75rem;
		padding: 0.85rem 1rem;
	}
	.blockint-cta-form__medium-card-icon {
		width: 40px;
		height: 40px;
	}
	.blockint-cta-form__medium-card-icon svg {
		width: 22px;
		height: 22px;
	}
}

/* ===== Success popup (futuristic, professional) ===== */
.blockint-success-popup {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1.5rem;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, visibility 0.3s ease;
}
.blockint-success-popup--open {
	opacity: 1;
	visibility: visible;
}
.blockint-success-popup__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.75);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}
.blockint-success-popup__card {
	position: relative;
	width: 100%;
	max-width: 420px;
	padding: 2.25rem 2rem;
	text-align: center;
	background: linear-gradient(145deg, rgba(15, 23, 42, 0.95) 0%, rgba(8, 12, 24, 0.98) 100%);
	border: 1px solid rgba(14, 165, 233, 0.35);
	border-radius: 16px;
	box-shadow:
		0 0 0 1px rgba(255, 255, 255, 0.06),
		0 25px 50px -12px rgba(0, 0, 0, 0.6),
		0 0 60px -15px rgba(14, 165, 233, 0.4);
	transform: scale(0.92) translateY(10px);
	transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.blockint-success-popup--open .blockint-success-popup__card {
	transform: scale(1) translateY(0);
}
.blockint-success-popup__icon {
	width: 56px;
	height: 56px;
	margin: 0 auto 1.25rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: linear-gradient(135deg, rgba(14, 165, 233, 0.25) 0%, rgba(6, 182, 212, 0.2) 100%);
	border: 1px solid rgba(14, 165, 233, 0.5);
	box-shadow: 0 0 24px rgba(14, 165, 233, 0.3);
	color: #22d3ee;
}
.blockint-success-popup__icon svg {
	width: 28px;
	height: 28px;
}
.blockint-success-popup__title {
	margin: 0 0 0.75rem;
	font-size: 1.5rem;
	font-weight: 700;
	color: #fff;
	letter-spacing: -0.02em;
}
.blockint-success-popup__text {
	margin: 0 0 0.5rem;
	font-size: 1rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.88);
}
.blockint-success-popup__text strong {
	color: #fff;
	font-weight: 600;
}
.blockint-success-popup__sub {
	margin: 0 0 1.5rem;
	font-size: 0.9rem;
	color: rgba(255, 255, 255, 0.6);
}
.blockint-success-popup__close {
	display: inline-block;
	padding: 0.7rem 1.75rem;
	font-size: 0.95rem;
	font-weight: 600;
	color: #fff;
	background: linear-gradient(135deg, #0d6efd 0%, #0284c7 100%);
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: transform 0.2s, box-shadow 0.2s;
}
.blockint-success-popup__close:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(14, 165, 233, 0.45);
}
.blockint-success-popup__close:focus {
	outline: none;
	box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.5);
}

/* Adaptive AI Development: "Why Choose" section – heading on top, paragraph below, then cards (top-to-bottom layout) */
.elementor-element-0cb4cef.e-con.e-parent > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
}
.elementor-element-0cb4cef .elementor-element-05efc70 {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	max-width: 100% !important;
	align-items: center !important;
	text-align: center !important;
}
.elementor-element-0cb4cef .elementor-element-05efc70 .elementor-widget-heading,
.elementor-element-0cb4cef .elementor-element-05efc70 .elementor-widget-text-editor {
	width: 100% !important;
	max-width: 100% !important;
	text-align: center !important;
}
.elementor-element-0cb4cef .elementor-element-05efc70 .elementor-heading-title,
.elementor-element-0cb4cef .elementor-element-05efc70 .elementor-widget-text-editor p {
	text-align: center !important;
}
.elementor-element-0cb4cef .elementor-element-01839e4 {
	width: 100% !important;
	max-width: 100% !important;
}

/* Adaptive AI Development page (elementor-page-37): navbar solid black to match body */
body.elementor-page-37 #mainNavbar,
body.elementor-page-37 #mainNavbar.scrolled {
	background: #000000 !important;
}
/* Adaptive AI Development page (elementor-page-37): hero placement and padding like contact page */
body.elementor-page-37 .elementor-element-542c7fc,
body.elementor-page-37 .elementor-element-542c7fc:not(.elementor-motion-effects-element-type-background),
body.elementor-page-37 .elementor-element-542c7fc > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background: none !important;
	background-image: none !important;
	background-color: transparent !important;
}
body.elementor-page-37 .elementor-element-542c7fc {
	position: relative !important;
	overflow: visible !important;
	height: auto !important;
	min-height: 50vh !important;
	padding-top: 180px !important;
	padding-bottom: 130px !important;
}
body.elementor-page-37 .elementor-element-542c7fc .e-con-inner {
	position: relative !important;
	z-index: 1 !important;
	height: auto !important;
	min-height: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	align-items: center !important;
	text-align: center !important;
	background: transparent !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}
body.elementor-page-37 .elementor-element-542c7fc .elementor-element-6fcea88 {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	/* Hero title + subtext readable over Spline */
	background: rgba(0, 0, 0, 0.5) !important;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-radius: 12px;
	padding: 1.5rem 2rem !important;
	max-width: 42em;
}
body.elementor-page-37 .elementor-element-542c7fc .elementor-element-6fcea88 .elementor-heading-title,
body.elementor-page-37 .elementor-element-542c7fc .elementor-element-6fcea88 .elementor-widget-text-editor,
body.elementor-page-37 .elementor-element-542c7fc .elementor-element-6fcea88 p {
	color: #ffffff !important;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}
body.elementor-page-37 .elementor-element-542c7fc .elementor-element-6fcea88 .elementor-widget-text-editor p {
	font-size: 1rem;
	line-height: 1.6;
}
/* Glassmorphism on outer layer only: containers that hold inner boxes (not sections, not leaf) */
body.elementor-page-37 .elementor-37 .elementor-element.e-con.e-child:has(.elementor-element.e-con.e-child) {
	background: linear-gradient(160deg, rgba(30, 38, 50, 0.45) 0%, rgba(18, 24, 32, 0.55) 50%, rgba(14, 165, 233, 0.06) 100%) !important;
	backdrop-filter: blur(20px) saturate(1.2);
	-webkit-backdrop-filter: blur(20px) saturate(1.2);
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 16px !important;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.05) inset, 0 8px 24px rgba(0, 0, 0, 0.12);
}
/* Inner/leaf containers: no glass (transparent so outer layer shows through) */
body.elementor-page-37 .elementor-37 .elementor-element.e-con.e-child:not(:has(.elementor-element.e-con.e-child)) {
	background: none !important;
	background-color: transparent !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border: none !important;
	box-shadow: none !important;
}
/* No background/glass on hero section – override glass rule with equal/higher specificity */
body.elementor-page-37 .elementor-37 .elementor-element-542c7fc .e-con-inner,
body.elementor-page-37 .elementor-37 .elementor-element.elementor-element-05efc70.e-con.e-child {
	background: none !important;
	background-color: transparent !important;
	background-image: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}
/* Hero content block (6fcea88) keeps dark backdrop for subtext readability – do not make transparent */
body.elementor-page-37 .elementor-37 .elementor-element-542c7fc .elementor-element.elementor-element-6fcea88.e-con.e-child {
	background: rgba(0, 0, 0, 0.5) !important;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-radius: 12px;
}

/* Finance industry page (elementor-page-33): hero like service pages – centered H1 + paragraph, Spline behind */
body.elementor-page-33 .elementor-element-95d73fe,
body.elementor-page-33 .elementor-element-95d73fe:not(.elementor-motion-effects-element-type-background),
body.elementor-page-33 .elementor-element-95d73fe > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background: none !important;
	background-image: none !important;
	background-color: transparent !important;
}
body.elementor-page-33 .elementor-element-95d73fe {
	position: relative !important;
	overflow: visible !important;
	height: auto !important;
	min-height: 50vh !important;
	padding-top: 180px !important;
	padding-bottom: 130px !important;
}
body.elementor-page-33 .elementor-element-95d73fe .e-con-inner {
	position: relative !important;
	z-index: 1 !important;
	height: auto !important;
	min-height: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	align-items: center !important;
	text-align: center !important;
	background: transparent !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}
/* No black box: text only with padding, Spline visible like service page */
body.elementor-page-33 .elementor-element-95d73fe .elementor-element-ab79098 {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	background: none !important;
	background-color: transparent !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	max-width: 42em;
	padding: 0 !important;
}
body.elementor-page-33 .elementor-element-95d73fe .elementor-element-ab79098 .elementor-heading-title,
body.elementor-page-33 .elementor-element-95d73fe .elementor-element-ab79098 .elementor-widget-text-editor,
body.elementor-page-33 .elementor-element-95d73fe .elementor-element-ab79098 p {
	color: #ffffff !important;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}
body.elementor-page-33 .elementor-element-95d73fe .elementor-element-ab79098 .elementor-widget-text-editor p {
	font-size: 1rem;
	line-height: 1.6;
}
body.elementor-page-33 .elementor-33 .elementor-element-95d73fe .e-con-inner {
	background: none !important;
	background-color: transparent !important;
	background-image: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	/* Proper horizontal padding like service page – narrow text column */
	padding-left: clamp(1.5rem, 6vw, 4rem) !important;
	padding-right: clamp(1.5rem, 6vw, 4rem) !important;
}
body.elementor-page-33 .elementor-33 .elementor-element-95d73fe .elementor-element.elementor-element-ab79098.e-con.e-child {
	background: none !important;
	background-color: transparent !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border: none !important;
	box-shadow: none !important;
}

/* Service & industry hero: mobile responsive overrides – larger typography */
@media screen and (max-width: 767px) {
	body.elementor-page-37 .elementor-element-542c7fc,
	body.elementor-page-33 .elementor-element-95d73fe {
		padding-top: 120px !important;
		padding-bottom: 80px !important;
		margin-top: 0 !important;
	}
	body.elementor-page-37 .elementor-element-542c7fc .elementor-element-6fcea88 .elementor-heading-title,
	body.elementor-page-33 .elementor-element-95d73fe .elementor-element-ab79098 .elementor-heading-title {
		font-size: clamp(1.75rem, 6.5vw + 1.25rem, 2.75rem) !important;
		line-height: 1.2 !important;
		white-space: normal !important;
	}
	body.elementor-page-37 .elementor-element-542c7fc .elementor-element-6fcea88 .elementor-widget-text-editor p,
	body.elementor-page-33 .elementor-element-95d73fe .elementor-element-ab79098 .elementor-widget-text-editor p {
		font-size: 1rem !important;
		line-height: 1.55 !important;
	}
}
@media screen and (max-width: 480px) {
	body.elementor-page-37 .elementor-element-542c7fc,
	body.elementor-page-33 .elementor-element-95d73fe {
		padding-top: 100px !important;
		padding-bottom: 60px !important;
	}
	body.elementor-page-37 .elementor-element-542c7fc .elementor-element-6fcea88 .elementor-heading-title,
	body.elementor-page-33 .elementor-element-95d73fe .elementor-element-ab79098 .elementor-heading-title {
		font-size: clamp(1.5rem, 6vw + 1rem, 2.25rem) !important;
	}
}

/* Building With the Best Tools intro – readable over Spline background */
body.elementor-page-37 .elementor-element-a82fa98 {
	background: rgba(0, 0, 0, 0.5) !important;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-radius: 12px;
	padding: 1.25rem 1.5rem !important;
	width: 100% !important;
	max-width: none !important;
	text-align: center !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
}
body.elementor-page-37 .elementor-element-a82fa98 .elementor-element-cdaf13f,
body.elementor-page-37 .elementor-element-a82fa98 .elementor-widget-text-editor {
	width: 100% !important;
	text-align: center !important;
}
body.elementor-page-37 .elementor-element-a82fa98 .elementor-heading-title,
body.elementor-page-37 .elementor-element-a82fa98 .elementor-widget-text-editor,
body.elementor-page-37 .elementor-element-a82fa98 p {
	text-align: center !important;
}
body.elementor-page-37 .elementor-element-a82fa98 .elementor-heading-title,
body.elementor-page-37 .elementor-element-a82fa98 .elementor-widget-text-editor,
body.elementor-page-37 .elementor-element-a82fa98 p {
	color: #ffffff !important;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}
body.elementor-page-37 .elementor-element-a82fa98 .elementor-widget-text-editor,
body.elementor-page-37 .elementor-element-a82fa98 p {
	font-size: 0.875rem !important;
	line-height: 1.5 !important;
}


