/**
 * Hydramet Design — Steel blue + fresh cyan
 * Brand: #1E3A5F · Accent: #5EC4E0 · Header: white
 */

:root {
	--es-brand: #1e3a5f;
	--es-brand-deep: #152d4a;
	--es-brand-mid: #2a5078;
	--es-brand-soft: #eaf4f8;
	--es-accent: #5ec4e0;
	--es-accent-cyan: #5ec4e0;
	--es-accent-cyan-light: #8fd9ec;
	--es-accent-blue: #3a8fa8;
	--es-accent-blue-deep: #2e7d96;
	--es-stats-bg: #1e3a5f;
	--es-accent-soft: rgba(94, 196, 224, 0.14);
	--es-bg: #ffffff;
	--es-bg-alt: #f4f9fb;
	--es-ink: #1e3a5f;
	--es-ink-light: #ffffff;
	--es-muted: #5a7088;
	--es-muted-light: #8aa0b4;
	--es-white: #ffffff;
	--es-border: rgba(30, 58, 95, 0.12);
	--es-border-dark: rgba(30, 58, 95, 0.18);
	--es-radius: 14px;
	--es-radius-lg: 20px;
	--es-shadow: 0 12px 40px rgba(30, 58, 95, 0.08);
	--es-font: "Plus Jakarta Sans", "Red Hat Display", system-ui, sans-serif;
	--es-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

/* ── Base ────────────────────────────────────────────── */
body,
button,
input,
select,
textarea {
	font-family: var(--es-font) !important;
}

body {
	color: var(--es-ink);
	background: var(--es-white);
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
}

::selection {
	background: rgba(94, 196, 224, 0.35);
}

/* ── Header ──────────────────────────────────────────── */
.site-elementor-header .elementor-element-a4b9818,
.elementor-location-header .elementor-element-a4b9818,
.elementor-1478 .elementor-element.elementor-element-a4b9818:not(.elementor-motion-effects-element-type-background),
.elementor-1478 .elementor-element.elementor-element-a4b9818 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	position: sticky !important;
	top: 0;
	z-index: 999 !important;
	background-color: var(--es-white) !important;
	background: var(--es-white) !important;
	border-bottom: 1px solid var(--es-border) !important;
	box-shadow: 0 4px 24px rgba(30, 58, 95, 0.06) !important;
	padding-top: 14px !important;
	padding-bottom: 14px !important;
	overflow: visible !important;
}

.site-elementor-header .elementor-element-a4b9818 > .elementor-container,
.site-elementor-header .elementor-element-a4b9818 .elementor-column,
.site-elementor-header .elementor-element-a4b9818 .elementor-widget-wrap,
.site-elementor-header .elementor-widget-html,
.elementor-location-header .elementor-element-a4b9818 > .elementor-container,
.elementor-location-header .elementor-element-a4b9818 .elementor-column,
.elementor-location-header .elementor-element-a4b9818 .elementor-widget-wrap,
.elementor-location-header .elementor-widget-html {
	overflow: visible !important;
}

a.es-brand-logo,
.es-brand-logo {
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 12px !important;
	text-decoration: none !important;
	color: var(--es-white) !important;
	line-height: 1 !important;
}

.es-brand-logo img {
	display: block !important;
	width: 56px !important;
	height: auto !important;
	flex-shrink: 0 !important;
}

.es-brand-logo--full img {
	width: auto !important;
	height: 52px !important;
	max-width: min(260px, 56vw) !important;
}

.es-brand-logo-text {
	display: flex !important;
	flex-direction: column !important;
	gap: 1px !important;
}

.es-brand-logo-text span {
	display: block !important;
	color: var(--es-white) !important;
	font-family: var(--es-font) !important;
	font-weight: 800 !important;
	font-size: 0.72rem !important;
	line-height: 1.08 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
}

.aux-elementor-header-menu .aux-master-menu.aux-horizontal .aux-menu-depth-0 > .aux-item-content,
.site-elementor-header .aux-master-menu.aux-horizontal .aux-menu-depth-0 > .aux-item-content,
.elementor-location-header .aux-master-menu.aux-horizontal .aux-menu-depth-0 > .aux-item-content,
.elementor-element-3365f25 .aux-master-menu.aux-horizontal .aux-menu-depth-0 > .aux-item-content {
	text-transform: none !important;
	font-weight: 600 !important;
	font-size: 0.92rem !important;
	letter-spacing: 0.01em !important;
	padding: 0.55rem 1rem !important;
	border-radius: 8px !important;
	color: rgba(30, 58, 95, 0.88) !important;
	background: transparent !important;
	border: 2px solid transparent !important;
	transition:
		color 0.2s var(--es-ease),
		background 0.2s var(--es-ease),
		border-color 0.2s var(--es-ease),
		box-shadow 0.2s var(--es-ease) !important;
}

.aux-elementor-header-menu .aux-master-menu.aux-horizontal .aux-menu-depth-0,
.site-elementor-header .aux-master-menu.aux-horizontal .aux-menu-depth-0,
.elementor-location-header .aux-master-menu.aux-horizontal .aux-menu-depth-0,
.elementor-element-3365f25 .aux-master-menu.aux-horizontal .aux-menu-depth-0 {
	background: transparent !important;
	border-radius: 8px !important;
	transition: background 0.2s var(--es-ease) !important;
}

.aux-elementor-header-menu .aux-master-menu.aux-horizontal .aux-menu-depth-0 > .aux-item-content:hover,
.aux-elementor-header-menu .aux-master-menu.aux-horizontal .aux-menu-depth-0.aux-hover > .aux-item-content,
.site-elementor-header .aux-master-menu.aux-horizontal .aux-menu-depth-0 > .aux-item-content:hover,
.site-elementor-header .aux-master-menu.aux-horizontal .aux-menu-depth-0.aux-hover > .aux-item-content,
.elementor-location-header .aux-master-menu.aux-horizontal .aux-menu-depth-0 > .aux-item-content:hover,
.elementor-location-header .aux-master-menu.aux-horizontal .aux-menu-depth-0.aux-hover > .aux-item-content,
.elementor-element-3365f25 .aux-master-menu.aux-horizontal .aux-menu-depth-0 > .aux-item-content:hover,
.elementor-element-3365f25 .aux-master-menu.aux-horizontal .aux-menu-depth-0.aux-hover > .aux-item-content {
	color: #ffffff !important;
	background: #00aaf0 !important;
	border-color: #00aaf0 !important;
	box-shadow: none !important;
}

.aux-elementor-header-menu .aux-master-menu.aux-horizontal .aux-menu-depth-0.aux-hover,
.site-elementor-header .aux-master-menu.aux-horizontal .aux-menu-depth-0.aux-hover,
.elementor-location-header .aux-master-menu.aux-horizontal .aux-menu-depth-0.aux-hover,
.elementor-element-3365f25 .aux-master-menu.aux-horizontal .aux-menu-depth-0.aux-hover {
	background: #00aaf0 !important;
}

.aux-elementor-header-menu .aux-master-menu.aux-with-splitter > .aux-menu-item > .aux-item-content::after {
	background-color: rgba(30, 58, 95, 0.22) !important;
	width: 4px !important;
	height: 4px !important;
}

.aux-elementor-header-menu .aux-master-menu.aux-horizontal .aux-menu-depth-0.current-menu-item > .aux-item-content,
.site-elementor-header .aux-master-menu.aux-horizontal .aux-menu-depth-0.current-menu-item > .aux-item-content,
.elementor-location-header .aux-master-menu.aux-horizontal .aux-menu-depth-0.current-menu-item > .aux-item-content,
.elementor-element-3365f25 .aux-master-menu.aux-horizontal .aux-menu-depth-0.current-menu-item > .aux-item-content {
	color: var(--es-brand) !important;
	background: transparent !important;
	border-color: transparent !important;
}

.aux-elementor-header-menu .aux-master-menu.aux-horizontal .aux-menu-depth-0.current-menu-item > .aux-item-content:hover,
.site-elementor-header .aux-master-menu.aux-horizontal .aux-menu-depth-0.current-menu-item > .aux-item-content:hover,
.elementor-location-header .aux-master-menu.aux-horizontal .aux-menu-depth-0.current-menu-item > .aux-item-content:hover,
.elementor-element-3365f25 .aux-master-menu.aux-horizontal .aux-menu-depth-0.current-menu-item > .aux-item-content:hover {
	color: #ffffff !important;
	background: #00aaf0 !important;
	border-color: #00aaf0 !important;
}

.aux-elementor-header-menu .lang-item > .aux-item-content {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 36px !important;
	min-height: 32px !important;
	padding: 0.35rem 0.45rem !important;
	border-radius: 6px !important;
	line-height: 1 !important;
}

.aux-elementor-header-menu .lang-item,
.site-elementor-header .lang-item,
.elementor-location-header .lang-item,
.elementor-element-3365f25 .lang-item {
	display: inline-flex !important;
	flex-shrink: 0 !important;
	align-items: center !important;
}

.site-elementor-header .lang-item > .aux-item-content,
.elementor-location-header .lang-item > .aux-item-content,
.elementor-element-3365f25 .lang-item > .aux-item-content {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 36px !important;
	min-height: 32px !important;
	padding: 0.35rem 0.45rem !important;
	border-radius: 6px !important;
	line-height: 1 !important;
	border: 1px solid transparent !important;
}

.aux-elementor-header-menu .lang-item img,
.site-elementor-header .lang-item img,
.elementor-location-header .lang-item img,
.elementor-element-3365f25 .lang-item img {
	display: block !important;
	width: 22px !important;
	height: auto !important;
	border-radius: 2px !important;
	opacity: 1 !important;
	visibility: visible !important;
}

.aux-elementor-header-menu .lang-item.current-lang > .aux-item-content {
	background: rgba(94, 196, 224, 0.12) !important;
	border-color: rgba(94, 196, 224, 0.35) !important;
}

.site-elementor-header .lang-item.current-lang > .aux-item-content,
.elementor-location-header .lang-item.current-lang > .aux-item-content,
.elementor-element-3365f25 .lang-item.current-lang > .aux-item-content {
	background: rgba(94, 196, 224, 0.12) !important;
	border-color: rgba(94, 196, 224, 0.35) !important;
}

.aux-elementor-header-menu .lang-item > .aux-item-content:hover,
.site-elementor-header .lang-item > .aux-item-content:hover,
.elementor-location-header .lang-item > .aux-item-content:hover,
.elementor-element-3365f25 .lang-item > .aux-item-content:hover {
	background: rgba(94, 196, 224, 0.16) !important;
	border-color: rgba(94, 196, 224, 0.45) !important;
}

/* Mobile menu burger — steel lines on light sticky header */
.site-elementor-header .aux-burger-box,
.elementor-location-header .aux-burger-box,
.elementor-element-a4b9818 .aux-burger-box,
.elementor-element-3365f25 .aux-burger-box {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
	z-index: 1000 !important;
	min-width: 44px !important;
	min-height: 44px !important;
	padding: 10px !important;
	margin-left: auto !important;
	cursor: pointer !important;
}

.site-elementor-header .aux-burger .mid-line,
.site-elementor-header .aux-burger::before,
.site-elementor-header .aux-burger::after,
.elementor-location-header .aux-burger .mid-line,
.elementor-location-header .aux-burger::before,
.elementor-location-header .aux-burger::after,
.elementor-element-a4b9818 .aux-burger .mid-line,
.elementor-element-a4b9818 .aux-burger::before,
.elementor-element-a4b9818 .aux-burger::after,
.elementor-element-3365f25 .aux-burger .mid-line,
.elementor-element-3365f25 .aux-burger::before,
.elementor-element-3365f25 .aux-burger::after {
	border-color: var(--es-brand) !important;
}

.site-elementor-header .aux-burger-box:hover .aux-burger .mid-line,
.site-elementor-header .aux-burger-box:hover .aux-burger::before,
.site-elementor-header .aux-burger-box:hover .aux-burger::after,
.elementor-location-header .aux-burger-box:hover .aux-burger .mid-line,
.elementor-location-header .aux-burger-box:hover .aux-burger::before,
.elementor-location-header .aux-burger-box:hover .aux-burger::after,
.elementor-element-3365f25 .aux-burger-box:hover .aux-burger .mid-line,
.elementor-element-3365f25 .aux-burger-box:hover .aux-burger::before,
.elementor-element-3365f25 .aux-burger-box:hover .aux-burger::after {
	border-color: var(--es-accent-cyan) !important;
}

@media (min-width: 769px) {
	.elementor-element-3365f25 .aux-burger-box {
		display: none !important;
	}
}

/* Mobile offcanvas navigation */
@media (max-width: 768px) {
	.aux-offcanvas-overlay::after {
		background-color: rgba(6, 16, 24, 0.74) !important;
		backdrop-filter: blur(2px);
	}

	.aux-offcanvas-menu {
		width: min(88vw, 320px) !important;
		background:
			linear-gradient(180deg, #152d4a 0%, #1e3a5f 52%, #152d4a 100%) !important;
		box-shadow: -12px 0 48px rgba(0, 0, 0, 0.45) !important;
		border-left: 1px solid rgba(94, 196, 224, 0.32);
		color: #fff;
	}

	.aux-offcanvas-menu.aux-pin-right {
		border-left: 1px solid rgba(94, 196, 224, 0.32);
	}

	.aux-offcanvas-menu .aux-panel-close {
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
		z-index: 5;
		width: 2.5rem;
		height: 2.5rem;
		margin: 1rem 1.1rem 0.35rem;
		padding: 0;
		border: 1px solid rgba(94, 196, 224, 0.35);
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.04);
		cursor: pointer;
		clear: both;
		transition: border-color 0.2s var(--es-ease), background 0.2s var(--es-ease);
	}

	.aux-offcanvas-menu.aux-pin-right .aux-panel-close {
		float: left;
	}

	.aux-offcanvas-menu .aux-panel-close:hover {
		border-color: rgba(94, 196, 224, 0.75);
		background: rgba(94, 196, 224, 0.12);
	}

	.aux-offcanvas-menu .aux-panel-close .aux-close {
		position: relative !important;
		float: none !important;
		width: 16px !important;
		height: 16px !important;
		min-width: 16px !important;
		min-height: 16px !important;
		padding: 0 !important;
		margin: 0 !important;
		top: 0 !important;
		cursor: pointer !important;
		display: block !important;
		overflow: visible !important;
	}

	.aux-offcanvas-menu .aux-panel-close .aux-close.aux-cross-symbol::before,
	.aux-offcanvas-menu .aux-panel-close .aux-close.aux-cross-symbol::after {
		content: "" !important;
		position: absolute !important;
		left: 0 !important;
		top: 50% !important;
		width: 100% !important;
		height: 2px !important;
		margin-top: -1px !important;
		background-color: rgba(255, 255, 255, 0.95) !important;
		display: block !important;
		opacity: 1 !important;
	}

	.aux-offcanvas-menu .aux-panel-close .aux-close.aux-cross-symbol::before {
		transform: rotate(45deg) !important;
	}

	.aux-offcanvas-menu .aux-panel-close .aux-close.aux-cross-symbol::after {
		transform: rotate(-45deg) !important;
	}

	.aux-offcanvas-menu .offcanvas-content {
		height: calc(100% - 5.5rem);
		padding: 0.35rem 0 1.5rem;
	}

	.aux-offcanvas-menu .aux-master-menu {
		margin: 0 !important;
		padding: 0 !important;
	}

	.aux-offcanvas-menu .aux-master-menu .aux-menu-depth-0 > .aux-item-content {
		color: rgba(255, 255, 255, 0.88) !important;
		font-family: var(--es-font) !important;
		font-size: 0.82rem !important;
		font-weight: 600 !important;
		letter-spacing: 0.08em !important;
		text-transform: uppercase !important;
		padding: 0.95rem 1.35rem !important;
		border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
		transition:
			color 0.2s var(--es-ease),
			background 0.2s var(--es-ease),
			padding-left 0.2s var(--es-ease) !important;
	}

	.aux-offcanvas-menu .aux-master-menu .aux-menu-depth-0 > .aux-item-content:hover {
		color: var(--es-accent-cyan) !important;
		background: rgba(94, 196, 224, 0.1) !important;
		padding-left: 1.55rem !important;
	}

	.aux-offcanvas-menu .aux-master-menu .aux-menu-depth-0.current-menu-item > .aux-item-content,
	.aux-offcanvas-menu .aux-master-menu .aux-menu-depth-0.current_page_item > .aux-item-content {
		color: var(--es-accent-cyan) !important;
		background: rgba(94, 196, 224, 0.12) !important;
		box-shadow: inset 3px 0 0 var(--es-accent-cyan);
	}

	.aux-offcanvas-menu .aux-master-menu .menu-item.lang-item {
		margin-top: 0.85rem;
	}

	.aux-offcanvas-menu .aux-master-menu .menu-item.lang-item > .aux-item-content {
		display: inline-flex;
		align-items: center;
		width: auto;
		margin: 0.2rem 1.35rem 0;
		padding: 0.55rem 0.75rem !important;
		border: 1px solid rgba(94, 196, 224, 0.28) !important;
		border-radius: 8px !important;
		background: rgba(255, 255, 255, 0.05) !important;
		box-shadow: none !important;
	}

	.aux-offcanvas-menu .aux-master-menu .menu-item.lang-item > .aux-item-content:hover {
		background: rgba(94, 196, 224, 0.16) !important;
		border-color: rgba(94, 196, 224, 0.55) !important;
		padding-left: 0.75rem !important;
	}

	.aux-offcanvas-menu .aux-master-menu .menu-item.lang-item.current-lang > .aux-item-content {
		background: rgba(94, 196, 224, 0.18) !important;
		border-color: rgba(94, 196, 224, 0.6) !important;
	}

	.aux-offcanvas-menu .aux-master-menu .menu-item.lang-item img {
		width: 22px;
		height: auto;
		border-radius: 2px;
	}
}

/* ── Hero (homepage) ───────────────────────────────── */
.elementor-element-da5db3e {
	position: relative;
	overflow: hidden;
}

.elementor-element-da5db3e.aux-appear-watch-animation {
	opacity: 1 !important;
	animation: none !important;
}

.elementor-element-da5db3e .elementor-background-video-container,
.elementor-element-da5db3e .elementor-background-video-embed,
.elementor-element-da5db3e .elementor-background-video-hosted {
	display: none !important;
}

.elementor-element-da5db3e:not(.elementor-motion-effects-element-type-background),
.elementor-element-da5db3e > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-position: center center !important;
	background-size: cover !important;
	background-repeat: no-repeat !important;
}

.elementor-element-da5db3e::before {
	content: "";
	position: absolute;
	inset: -3%;
	z-index: 0;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	filter: brightness(1.05) contrast(1.1) saturate(1.14);
	animation: es-hero-bg-kenburns 28s ease-in-out infinite alternate;
	transform: scale(1);
	will-change: transform;
	pointer-events: none;
}

.elementor-element-da5db3e.es-hero-slider-ready::before {
	display: none !important;
}

.elementor-element-da5db3e.es-hero-slider-ready:not(.elementor-motion-effects-element-type-background),
.elementor-element-da5db3e.es-hero-slider-ready > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-image: none !important;
	background-color: #0c1014 !important;
}

.es-hero-slider {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	pointer-events: none;
}

.es-hero-slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity 1.2s ease;
	overflow: hidden;
	background: #0c1014;
}

.es-hero-slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	transform: scale(1);
	transform-origin: center center;
	filter: brightness(1.02) contrast(1.04) saturate(1.05);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	will-change: transform, opacity;
}

.es-hero-slide.is-active {
	opacity: 1;
}

.es-hero-slide.is-active img {
	animation: es-hero-bg-kenburns 26s ease-in-out infinite alternate;
}

.es-hero-slider-nav {
	position: absolute;
	left: 50%;
	bottom: 2rem;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 0.55rem;
	transform: translateX(-50%);
}

.es-hero-slider-dot {
	width: 10px;
	height: 10px;
	padding: 0;
	border: 2px solid rgba(255, 255, 255, 0.45);
	border-radius: 999px;
	background: transparent;
	cursor: pointer;
	transition:
		width 0.3s var(--es-ease),
		background 0.3s var(--es-ease),
		border-color 0.3s var(--es-ease);
}

.es-hero-slider-dot:hover {
	border-color: rgba(255, 255, 255, 0.85);
}

.es-hero-slider-dot.is-active {
	width: 30px;
	background: var(--es-accent-cyan);
	border-color: var(--es-accent-cyan);
}

.elementor-element-c1e9fdb {
	transition: opacity 0.35s var(--es-ease), transform 0.35s var(--es-ease);
}

.elementor-element-c1e9fdb.es-hero-copy-fading {
	opacity: 0;
	transform: translateY(10px);
}

.elementor-element-da5db3e.es-hero-slider-ready .es-hero-collage-pro {
	display: none !important;
}

.elementor-element-da5db3e::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background:
		radial-gradient(ellipse at 72% 38%, rgba(255, 196, 120, 0.18) 0%, transparent 52%),
		radial-gradient(ellipse at 18% 52%, rgba(94, 196, 224, 0.06) 0%, transparent 45%);
	mix-blend-mode: soft-light;
	pointer-events: none;
}

.elementor-element-da5db3e > .elementor-background-overlay {
	background: linear-gradient(
		105deg,
		rgba(12, 16, 20, 0.78) 0%,
		rgba(12, 16, 20, 0.42) 38%,
		rgba(12, 16, 20, 0.12) 62%,
		rgba(12, 16, 20, 0.04) 100%
	) !important;
	opacity: 1 !important;
	mix-blend-mode: normal !important;
	z-index: 1;
}

.elementor-element-da5db3e > .elementor-container {
	position: relative;
	z-index: 2;
	min-height: 88vh;
	align-items: center !important;
}

@keyframes es-hero-bg-kenburns {
	from {
		transform: scale(1);
	}
	to {
		transform: scale(1.025);
	}
}

.elementor-element-c1e9fdb .aux-modern-heading-primary {
	display: none !important;
}

.elementor-element-c1e9fdb.es-hero-copy--has-eyebrow .aux-modern-heading-primary {
	display: block !important;
	margin: 0 0 0.75rem !important;
	font-size: 0.95rem !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	color: var(--es-accent-cyan) !important;
	text-shadow: 0 1px 12px rgba(0, 0, 0, 0.75) !important;
}

.elementor-element-c1e9fdb.es-hero-copy--title-solid .aux-modern-heading-secondary {
	text-transform: none !important;
	color: var(--es-accent-cyan) !important;
}

.elementor-element-c1e9fdb.es-hero-copy--title-solid .aux-modern-heading-secondary .aux-head-before,
.elementor-element-c1e9fdb.es-hero-copy--title-solid .aux-modern-heading-secondary .aux-head-highlight,
.elementor-element-c1e9fdb.es-hero-copy--title-solid .aux-modern-heading-secondary .aux-head-after {
	color: var(--es-accent-cyan) !important;
}

.elementor-element-c1e9fdb.es-hero-copy--title-solid .aux-head-highlight:empty {
	display: none !important;
}

.elementor-element-c1e9fdb .aux-modern-heading-description p + p {
	margin-top: 1rem !important;
}

.elementor-element-c1e9fdb .aux-modern-heading-secondary {
	font-size: clamp(1.85rem, 3.8vw, 3rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	letter-spacing: 0.01em !important;
	text-transform: uppercase !important;
	color: var(--es-accent-cyan) !important;
	text-shadow:
		0 2px 28px rgba(0, 0, 0, 0.9),
		0 1px 4px rgba(0, 0, 0, 0.85),
		0 0 1px rgba(0, 0, 0, 1) !important;
}

.elementor-element-c1e9fdb .aux-modern-heading-secondary .aux-head-before {
	color: var(--es-accent-cyan) !important;
}

.elementor-element-c1e9fdb .aux-modern-heading-secondary .aux-head-highlight {
	color: #ffffff !important;
	text-shadow:
		0 2px 28px rgba(0, 0, 0, 0.9),
		0 1px 4px rgba(0, 0, 0, 0.85),
		0 0 1px rgba(0, 0, 0, 1) !important;
}

.elementor-element-c1e9fdb .aux-modern-heading-description {
	font-size: 1rem !important;
	line-height: 1.65 !important;
	color: rgba(255, 255, 255, 0.92) !important;
	max-width: 680px !important;
	text-shadow: 0 1px 16px rgba(0, 0, 0, 0.85), 0 1px 3px rgba(0, 0, 0, 0.75) !important;
}

.elementor-element-9c9ec11 > .elementor-element-populated {
	position: relative;
}

.elementor-element-9c9ec11 > .elementor-element-populated::before {
	content: "";
	position: absolute;
	inset: -1.25rem -1.75rem -1.25rem -1.25rem;
	background: linear-gradient(
		135deg,
		rgba(10, 12, 14, 0.72) 0%,
		rgba(10, 12, 14, 0.38) 55%,
		transparent 100%
	);
	border-radius: 18px;
	pointer-events: none;
	z-index: 0;
}

.elementor-element-9c9ec11 .elementor-widget-wrap {
	position: relative;
	z-index: 1;
}

.elementor-element-c1e9fdb .aux-modern-heading-description p {
	margin: 0 !important;
}

.es-hero-formula {
	display: flex;
	align-items: center;
	gap: 1.25rem;
	margin-top: 1.75rem;
	color: var(--es-accent-cyan);
	filter: drop-shadow(0 2px 12px rgba(0, 0, 0, 0.75));
}

.es-hero-formula-op {
	font-size: 1.75rem;
	font-weight: 300;
	line-height: 1;
	opacity: 0.95;
}

.es-hero-formula-icon {
	width: 52px;
	height: 52px;
	border: 2px solid var(--es-accent-cyan);
	border-radius: 50%;
	position: relative;
	flex-shrink: 0;
}

.es-hero-formula-water::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 46%;
	width: 14px;
	height: 18px;
	border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%;
	border: 2px solid var(--es-accent-cyan);
	transform: translate(-50%, -50%);
}

.es-hero-formula-salt::before {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 14px;
	width: 22px;
	height: 10px;
	border: 2px solid var(--es-accent-cyan);
	border-bottom: none;
	border-radius: 50% 50% 0 0;
	transform: translateX(-50%);
}

.es-hero-formula-power::before {
	content: "⚡";
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.35rem;
	line-height: 1;
}

/* Legacy hero extras — redundant with new CTAs + collage plaque */
.elementor-element-da5db3e .es-hero-formula,
.elementor-element-da5db3e .elementor-element-29c24f4,
.elementor-element-da5db3e .elementor-element-cb5c38e {
	display: none !important;
}

.elementor-element-bf9ccd8 .premium-video-box-container {
	display: none !important;
}

/* ── Buttons ─────────────────────────────────────────── */
.aux-modern-button .aux-overlay:before,
.aux-modern-button .aux-overlay:after {
	border-radius: 10px !important;
}

.aux-modern-button .aux-text {
	font-weight: 600 !important;
}

/* ── Stats band ──────────────────────────────────────── */
.elementor-element-32cb84d,
.elementor-element-b719bf9 {
	padding: 3rem 5% 4rem !important;
	margin-top: 0 !important;
	background: var(--es-stats-bg) !important;
	position: relative;
	z-index: 4;
}

.elementor-element-32cb84d > .elementor-container,
.elementor-element-b719bf9 > .elementor-container {
	max-width: 1180px !important;
	margin: 0 auto !important;
}

.elementor-element-42b1ee0,
.elementor-element-2b350b2 {
	width: 100% !important;
}

.elementor-element-42b1ee0 > .elementor-container,
.elementor-element-2b350b2 > .elementor-container {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	align-content: stretch !important;
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 0 !important;
	gap: 0 !important;
	background: var(--es-stats-bg) !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

.elementor-element-42b1ee0 > .elementor-container > .elementor-column,
.elementor-element-2b350b2 > .elementor-container > .elementor-column {
	flex: 1 1 0 !important;
	width: 33.333% !important;
	max-width: 33.333% !important;
	min-width: 0 !important;
	float: none !important;
	position: relative !important;
}

.elementor-element-42b1ee0 .elementor-widget-wrap,
.elementor-element-2b350b2 .elementor-widget-wrap,
.elementor-element-42b1ee0 .elementor-widget-container,
.elementor-element-2b350b2 .elementor-widget-container,
.elementor-element-42b1ee0 .widget-container,
.elementor-element-2b350b2 .widget-container {
	height: 100% !important;
}

.elementor-element-42b1ee0 .aux-widget-advanced-text,
.elementor-element-2b350b2 .aux-widget-advanced-text,
.elementor-element-42b1ee0 .elementor-element-54c23ce .aux-widget-advanced-text,
.elementor-element-42b1ee0 .elementor-element-c0e9b48 .aux-widget-advanced-text,
.elementor-element-42b1ee0 .elementor-element-ee18c8c .aux-widget-advanced-text,
.elementor-element-2b350b2 .elementor-element-7cf548f .aux-widget-advanced-text,
.elementor-element-2b350b2 .elementor-element-872c020 .aux-widget-advanced-text,
.elementor-element-2b350b2 .elementor-element-6ee4a31 .aux-widget-advanced-text {
	background: transparent !important;
	background-color: transparent !important;
	padding: 2rem 1.75rem 2.25rem !important;
	min-height: 220px;
	height: 100%;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center !important;
	gap: 0.95rem;
	border-right: 1px solid rgba(255, 255, 255, 0.08);
	transition: background 0.25s var(--es-ease), background-color 0.25s var(--es-ease) !important;
}

.elementor-element-42b1ee0 .aux-ico-box,
.elementor-element-2b350b2 .aux-ico-box {
	width: 68px !important;
	height: 68px !important;
	border-radius: 50%;
	border: 2px solid rgba(94, 196, 224, 0.75) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: var(--es-accent-cyan) !important;
	font-size: 1.65rem !important;
	margin: 0 auto 0.15rem !important;
	padding: 0 !important;
	background:
		radial-gradient(circle at 30% 25%, rgba(94, 196, 224, 0.22) 0%, rgba(94, 196, 224, 0.08) 100%) !important;
	box-shadow:
		0 0 0 6px rgba(94, 196, 224, 0.08),
		0 8px 20px rgba(0, 0, 0, 0.18) !important;
	transition: color 0.25s, border-color 0.25s, background 0.25s, box-shadow 0.25s, transform 0.25s !important;
}

.elementor-element-42b1ee0 .aux-ico-box .aux-ico,
.elementor-element-2b350b2 .aux-ico-box .aux-ico {
	font-size: 1.65rem !important;
	line-height: 1 !important;
}

.elementor-element-42b1ee0 .aux-widget-advanced-text:hover .aux-ico-box,
.elementor-element-2b350b2 .aux-widget-advanced-text:hover .aux-ico-box {
	color: var(--es-white) !important;
	border-color: var(--es-accent-cyan) !important;
	background: rgba(94, 196, 224, 0.32) !important;
	box-shadow:
		0 0 0 8px rgba(94, 196, 224, 0.12),
		0 10px 24px rgba(0, 0, 0, 0.22) !important;
	transform: scale(1.04) !important;
}

.elementor-element-42b1ee0 .col-title,
.elementor-element-2b350b2 .col-title,
.elementor-element-42b1ee0 .col-title a,
.elementor-element-2b350b2 .col-title a {
	color: rgba(255, 255, 255, 0.72) !important;
	font-family: var(--es-font) !important;
	font-size: 0.72rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.12em !important;
	line-height: 1.4 !important;
	text-align: center !important;
	width: 100% !important;
}

.elementor-element-42b1ee0 .widget-content,
.elementor-element-2b350b2 .widget-content,
.elementor-element-42b1ee0 .widget-content p,
.elementor-element-2b350b2 .widget-content p {
	color: var(--es-white) !important;
	font-family: var(--es-font) !important;
	font-size: clamp(1.15rem, 1.6vw, 1.45rem) !important;
	font-weight: 800 !important;
	line-height: 1.28 !important;
	text-transform: none !important;
	text-align: center !important;
	margin: 0 auto !important;
	max-width: 22ch !important;
}

.elementor-element-42b1ee0 .elementor-column:last-child .aux-widget-advanced-text,
.elementor-element-2b350b2 .elementor-column:last-child .aux-widget-advanced-text {
	border-right: none;
}

.elementor-element-42b1ee0 .aux-widget-advanced-text:hover,
.elementor-element-2b350b2 .aux-widget-advanced-text:hover,
.elementor-element-42b1ee0 .elementor-element-54c23ce .aux-widget-advanced-text:hover,
.elementor-element-42b1ee0 .elementor-element-c0e9b48 .aux-widget-advanced-text:hover,
.elementor-element-42b1ee0 .elementor-element-ee18c8c .aux-widget-advanced-text:hover,
.elementor-element-2b350b2 .elementor-element-7cf548f .aux-widget-advanced-text:hover,
.elementor-element-2b350b2 .elementor-element-872c020 .aux-widget-advanced-text:hover,
.elementor-element-2b350b2 .elementor-element-6ee4a31 .aux-widget-advanced-text:hover {
	background: rgba(94, 196, 224, 0.22) !important;
	background-color: rgba(94, 196, 224, 0.22) !important;
}

.elementor-element-42b1ee0 .aux-ico-box .auxicon:before,
.elementor-element-2b350b2 .aux-ico-box .auxicon:before {
	display: block;
}

@media (max-width: 1024px) {
	.elementor-element-42b1ee0 > .elementor-container,
	.elementor-element-2b350b2 > .elementor-container {
		flex-direction: column !important;
		flex-wrap: wrap !important;
		height: auto !important;
		min-height: 0 !important;
	}

	.elementor-element-42b1ee0 > .elementor-container > .elementor-column,
	.elementor-element-2b350b2 > .elementor-container > .elementor-column {
		flex: 0 0 auto !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
	}

	.elementor-element-42b1ee0 .elementor-widget-wrap,
	.elementor-element-2b350b2 .elementor-widget-wrap,
	.elementor-element-42b1ee0 .elementor-widget-container,
	.elementor-element-2b350b2 .elementor-widget-container,
	.elementor-element-42b1ee0 .widget-container,
	.elementor-element-2b350b2 .widget-container {
		height: auto !important;
	}

	.elementor-element-42b1ee0 .aux-widget-advanced-text,
	.elementor-element-2b350b2 .aux-widget-advanced-text,
	.elementor-element-42b1ee0 .elementor-element-54c23ce .aux-widget-advanced-text,
	.elementor-element-42b1ee0 .elementor-element-c0e9b48 .aux-widget-advanced-text,
	.elementor-element-42b1ee0 .elementor-element-ee18c8c .aux-widget-advanced-text,
	.elementor-element-2b350b2 .elementor-element-7cf548f .aux-widget-advanced-text,
	.elementor-element-2b350b2 .elementor-element-872c020 .aux-widget-advanced-text,
	.elementor-element-2b350b2 .elementor-element-6ee4a31 .aux-widget-advanced-text {
		height: auto !important;
		border-right: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
		min-height: auto;
	}

	.elementor-element-42b1ee0 .elementor-column:last-child .aux-widget-advanced-text,
	.elementor-element-2b350b2 .elementor-column:last-child .aux-widget-advanced-text {
		border-bottom: none;
	}
}

@media (max-width: 767px) {
	.elementor-199 .elementor-element.elementor-element-32cb84d,
	.elementor-element-32cb84d,
	.elementor-element-b719bf9 {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
		padding: 2rem 1.25rem 2.5rem !important;
	}

	.elementor-element-75f6306.aux-appear-watch-animation {
		opacity: 1 !important;
		animation: none !important;
	}

	.elementor-element-esappsen,
	.es-industrias {
		position: relative;
		z-index: 1;
		clear: both;
	}
}

/* ── Clients / Prime User Organizations ──────────────── */
.elementor-element-5119aac,
.elementor-element-5119aac > .elementor-container,
.elementor-element-5119aac .elementor-column,
.elementor-element-5119aac .elementor-widget-wrap,
.elementor-element-5119aac .elementor-element-populated,
.elementor-element-5119aac .elementor-element-c0af5e4,
.elementor-element-5119aac .elementor-element-c0af5e4 > .elementor-container,
.elementor-element-5119aac .elementor-element-b847ae2,
.elementor-element-5119aac .elementor-element-b847ae2 .elementor-widget-wrap {
	background: transparent !important;
}

.elementor-element-5119aac {
	position: relative;
	overflow: hidden;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding: 5rem 0 4.75rem !important;
	background:
		linear-gradient(180deg, #101317 0%, #171b21 42%, #12151a 100%) !important;
}

.elementor-element-5119aac::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 18% 0%, rgba(94, 196, 224, 0.2) 0%, transparent 42%),
		radial-gradient(circle at 82% 100%, rgba(21, 101, 168, 0.18) 0%, transparent 38%),
		linear-gradient(180deg, rgba(94, 196, 224, 0.08) 0%, transparent 18%);
	pointer-events: none;
	z-index: 0;
}

.elementor-element-5119aac::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(94, 196, 224, 0.55) 20%,
		rgba(255, 255, 255, 0.35) 50%,
		rgba(94, 196, 224, 0.55) 80%,
		transparent 100%
	);
	opacity: 0.9;
	z-index: 1;
}

.elementor-element-5119aac > .elementor-container {
	position: relative;
	z-index: 2;
}

.elementor-element-5119aac .elementor-element-506f22b {
	margin-bottom: 2.5rem !important;
}

.elementor-element-5119aac .elementor-element-506f22b .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	width: 100% !important;
}

.elementor-element-5119aac .aux-modern-heading-primary {
	display: block !important;
	width: fit-content !important;
	margin: 0 auto 0.85rem !important;
	padding: 0 !important;
	color: rgba(94, 196, 224, 0.95) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.24em !important;
	text-transform: uppercase !important;
}

.elementor-element-5119aac .aux-modern-heading-primary::before,
.elementor-element-5119aac .aux-modern-heading-primary::after {
	content: "";
	display: inline-block;
	width: clamp(28px, 4vw, 52px);
	height: 1px;
	margin: 0 0.85rem;
	vertical-align: middle;
	background: linear-gradient(90deg, transparent, rgba(94, 196, 224, 0.75), transparent);
}

.elementor-element-5119aac .aux-modern-heading-secondary {
	color: #fff !important;
	font-size: clamp(2rem, 3.5vw, 2.85rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	text-transform: none !important;
	letter-spacing: -0.03em !important;
	max-width: none !important;
	margin: 0 auto !important;
}

.elementor-element-5119aac .aux-head-before {
	background: linear-gradient(90deg, #fff 0%, #cceef8 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
}

.elementor-element-6270203 > .elementor-widget-container {
	padding: 0 0 1.5rem !important;
}

.elementor-element-6270203 .swiper,
.elementor-element-6270203 .swiper-container {
	overflow: visible !important;
}

.elementor-element-6270203 .swiper-wrapper {
	align-items: stretch !important;
}

.elementor-element-6270203 .swiper-slide {
	height: auto !important;
	padding: 0.35rem !important;
	box-sizing: border-box !important;
}

.elementor-element-6270203 .swiper-slide figure {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 118px !important;
	margin: 0 !important;
	padding: 1rem 1.1rem !important;
	background: #fff !important;
	border: 1px solid rgba(255, 255, 255, 0.85) !important;
	border-radius: 18px !important;
	box-shadow:
		0 10px 28px rgba(0, 0, 0, 0.22),
		inset 0 0 0 1px rgba(30, 58, 95, 0.04) !important;
	transition:
		transform 0.35s var(--es-ease),
		border-color 0.35s var(--es-ease),
		box-shadow 0.35s var(--es-ease) !important;
}

.elementor-element-6270203 .swiper-slide:hover figure {
	transform: translateY(-6px) scale(1.02) !important;
	background: #fff !important;
	border-color: rgba(94, 196, 224, 0.75) !important;
	box-shadow:
		0 18px 40px rgba(8, 28, 42, 0.38),
		0 0 0 1px rgba(94, 196, 224, 0.35) !important;
}

.elementor-element-6270203 .swiper-slide img {
	display: block !important;
	width: auto !important;
	max-width: 100% !important;
	max-height: 68px !important;
	height: auto !important;
	object-fit: contain !important;
	opacity: 1 !important;
	filter: none !important;
	transition: transform 0.35s var(--es-ease) !important;
}

.elementor-element-6270203 .swiper-slide:hover img {
	transform: scale(1.05) !important;
}

.elementor-element-6270203 .swiper-pagination {
	position: relative !important;
	margin-top: 1.75rem !important;
}

.elementor-element-6270203 .swiper-pagination-bullet {
	width: 8px !important;
	height: 8px !important;
	margin: 0 6px !important;
	opacity: 1 !important;
	background: rgba(255, 255, 255, 0.22) !important;
	transition: width 0.3s var(--es-ease), background 0.3s var(--es-ease) !important;
}

.elementor-element-6270203 .swiper-pagination-bullet-active {
	width: 28px !important;
	border-radius: 999px !important;
	background: linear-gradient(90deg, var(--es-accent-cyan), var(--es-accent-blue)) !important;
	box-shadow: 0 0 16px rgba(94, 196, 224, 0.45) !important;
}

.elementor-element-6270203 .elementor-swiper-button {
	color: #fff !important;
	background: var(--es-accent-cyan) !important;
	border: 1px solid rgba(94, 196, 224, 0.85) !important;
	border-radius: 50% !important;
	width: 42px !important;
	height: 42px !important;
	box-shadow: 0 4px 16px rgba(94, 196, 224, 0.35) !important;
	transition: background 0.25s, border-color 0.25s, color 0.25s, transform 0.25s, box-shadow 0.25s !important;
}

.elementor-element-6270203 .elementor-swiper-button svg {
	fill: #fff !important;
}

.elementor-element-6270203 .elementor-swiper-button:hover {
	color: #fff !important;
	background: #8fd9ec !important;
	border-color: #fff !important;
	box-shadow: 0 6px 22px rgba(94, 196, 224, 0.5) !important;
	transform: translateY(-50%) scale(1.06) !important;
}

.elementor-element-6270203 .elementor-swiper-button:hover svg {
	fill: #fff !important;
}

@media (max-width: 767px) {
	.elementor-element-5119aac {
		padding: 3.5rem 0 3.25rem !important;
	}

	.elementor-element-6270203 .swiper-slide figure {
		min-height: 102px !important;
		padding: 0.9rem !important;
	}

	.elementor-element-6270203 .swiper-slide img {
		max-height: 58px !important;
	}
}

/* ── Testimonials ────────────────────────────────────── */
.elementor-element-e81ff23,
.elementor-element-e81ff23 > .elementor-container,
.elementor-element-e81ff23 .elementor-column,
.elementor-element-e81ff23 .elementor-widget-wrap,
.elementor-element-e81ff23 .elementor-element-populated {
	background: transparent !important;
}

.elementor-element-e81ff23 {
	position: relative;
	overflow: hidden;
	padding: 5rem 0 5.5rem !important;
	background:
		linear-gradient(165deg, #5ec4e0 0%, var(--es-accent-cyan) 38%, #5bb8d4 100%) !important;
}

.elementor-element-e81ff23::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 12% 18%, rgba(255, 255, 255, 0.35) 0%, transparent 42%),
		radial-gradient(circle at 88% 82%, rgba(21, 101, 168, 0.22) 0%, transparent 38%),
		radial-gradient(circle at 50% 120%, rgba(255, 255, 255, 0.12) 0%, transparent 55%);
	pointer-events: none;
	z-index: 0;
}

.elementor-element-e81ff23::after {
	content: "\201C";
	position: absolute;
	top: 1.5rem;
	right: 4%;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(8rem, 16vw, 14rem);
	line-height: 1;
	color: rgba(255, 255, 255, 0.07);
	pointer-events: none;
	z-index: 0;
}

.elementor-element-e81ff23 > .elementor-container {
	position: relative;
	z-index: 1;
}

.elementor-element-e81ff23 .elementor-element-715c14b {
	margin-bottom: 2.75rem !important;
	width: 100% !important;
}

.elementor-element-e81ff23 .elementor-element-715c14b .elementor-widget-container,
.elementor-element-e81ff23 .elementor-element-715c14b .aux-widget-modern-heading,
.elementor-element-e81ff23 .elementor-element-715c14b .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	text-align: center !important;
}

.elementor-element-e81ff23 .aux-modern-heading-primary {
	display: block !important;
	width: fit-content !important;
	margin: 0 auto 0.85rem !important;
	padding: 0 !important;
	color: rgba(255, 255, 255, 0.95) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.28em !important;
	text-transform: uppercase !important;
	background: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

.elementor-element-e81ff23 .aux-modern-heading-primary::before,
.elementor-element-e81ff23 .aux-modern-heading-primary::after {
	content: "";
	display: inline-block;
	width: clamp(28px, 4vw, 52px);
	height: 1px;
	margin: 0 0.85rem;
	vertical-align: middle;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.75), transparent);
}

.elementor-element-e81ff23 .aux-modern-heading-secondary {
	color: var(--es-brand) !important;
	font-size: clamp(2rem, 3.6vw, 2.85rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	text-transform: none !important;
	letter-spacing: -0.03em !important;
	max-width: none !important;
	margin: 0 auto !important;
	text-align: center !important;
}

.elementor-element-e81ff23 .elementor-row,
.elementor-element-e81ff23 > .elementor-container,
.elementor-element-e81ff23 .elementor-element-3f874b7 > .elementor-container,
.elementor-element-e81ff23 .elementor-element-3f874b7 .elementor-row {
	align-items: stretch !important;
}

.elementor-element-e81ff23 .elementor-column {
	display: flex !important;
	align-self: stretch !important;
}

.elementor-element-e81ff23 .elementor-column > .elementor-widget-wrap {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	height: 100% !important;
	flex: 1 1 auto !important;
}

.elementor-element-5fb5dee,
.elementor-element-4dc0352,
.elementor-element-4bc8842 {
	flex: 1 1 auto !important;
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	height: 100% !important;
	align-self: stretch !important;
}

.elementor-element-5fb5dee > .elementor-widget-container,
.elementor-element-4dc0352 > .elementor-widget-container,
.elementor-element-4bc8842 > .elementor-widget-container,
.elementor-element-5fb5dee .aux-widget-testimonial-container,
.elementor-element-4dc0352 .aux-widget-testimonial-container,
.elementor-element-4bc8842 .aux-widget-testimonial-container {
	display: flex !important;
	flex: 1 1 auto !important;
	flex-direction: column !important;
	width: 100% !important;
	height: 100% !important;
}

.elementor-element-5fb5dee .aux-widget-testimonial,
.elementor-element-4dc0352 .aux-widget-testimonial,
.elementor-element-4bc8842 .aux-widget-testimonial {
	position: relative !important;
	display: grid !important;
	grid-template-rows: minmax(0, 1fr) auto !important;
	grid-template-columns: 1fr !important;
	flex: 1 1 auto !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	align-self: stretch !important;
	margin-top: 4.25rem !important;
	padding: 5.25rem 1.75rem 1.75rem !important;
	text-align: left !important;
	background:
		linear-gradient(165deg, #252a30 0%, #171a1e 52%, #121418 100%) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 22px !important;
	box-shadow:
		0 22px 50px rgba(8, 28, 42, 0.28),
		0 1px 0 rgba(255, 255, 255, 0.06) inset !important;
	overflow: visible !important;
	transition:
		transform 0.35s var(--es-ease),
		box-shadow 0.35s var(--es-ease),
		border-color 0.35s var(--es-ease),
		background 0.35s var(--es-ease) !important;
}

.elementor-element-5fb5dee .aux-widget-testimonial:hover,
.elementor-element-4dc0352 .aux-widget-testimonial:hover,
.elementor-element-4bc8842 .aux-widget-testimonial:hover {
	transform: translateY(-10px) !important;
	background:
		linear-gradient(155deg, #3d8aa6 0%, #3a8fa8 46%, #1f5568 100%) !important;
	border-color: rgba(137, 220, 240, 0.75) !important;
	box-shadow:
		0 30px 64px rgba(14, 61, 98, 0.42),
		0 0 0 1px rgba(137, 220, 240, 0.35),
		inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

.elementor-element-5fb5dee .aux-widget-testimonial:hover::before,
.elementor-element-4dc0352 .aux-widget-testimonial:hover::before,
.elementor-element-4bc8842 .aux-widget-testimonial:hover::before {
	background: linear-gradient(90deg, #8fd9ec, #ffffff, #8fd9ec) !important;
	opacity: 1 !important;
}

.elementor-element-5fb5dee .aux-widget-testimonial:hover .aux-testimonial-content,
.elementor-element-4dc0352 .aux-widget-testimonial:hover .aux-testimonial-content,
.elementor-element-4bc8842 .aux-widget-testimonial:hover .aux-testimonial-content,
.elementor-element-5fb5dee .aux-widget-testimonial:hover .aux-testimonial-content p,
.elementor-element-4dc0352 .aux-widget-testimonial:hover .aux-testimonial-content p,
.elementor-element-4bc8842 .aux-widget-testimonial:hover .aux-testimonial-content p {
	color: #fff !important;
}

.elementor-element-5fb5dee .aux-widget-testimonial:hover .col-subtitle,
.elementor-element-4dc0352 .aux-widget-testimonial:hover .col-subtitle,
.elementor-element-4bc8842 .aux-widget-testimonial:hover .col-subtitle {
	color: #cceef8 !important;
}

.elementor-element-5fb5dee .aux-widget-testimonial::before,
.elementor-element-4dc0352 .aux-widget-testimonial::before,
.elementor-element-4bc8842 .aux-widget-testimonial::before {
	content: "";
	position: absolute;
	top: 0;
	left: 1.75rem;
	right: 1.75rem;
	height: 3px;
	border-radius: 0 0 4px 4px;
	background: linear-gradient(90deg, var(--es-accent-cyan), var(--es-accent-blue));
	opacity: 0.95;
}

.elementor-element-5fb5dee .aux-widget-testimonial::after,
.elementor-element-4dc0352 .aux-widget-testimonial::after,
.elementor-element-4bc8842 .aux-widget-testimonial::after {
	content: "\201C";
	position: absolute;
	top: 2.6rem;
	right: 1.5rem;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 4.5rem;
	line-height: 1;
	color: rgba(94, 196, 224, 0.14);
	pointer-events: none;
}

.elementor-element-5fb5dee .aux-testimonial-infobox,
.elementor-element-4dc0352 .aux-testimonial-infobox,
.elementor-element-4bc8842 .aux-testimonial-infobox {
	display: block !important;
	position: static !important;
	grid-row: 2 !important;
	grid-column: 1 !important;
	order: unset !important;
	align-self: end !important;
	margin-top: 2rem !important;
	margin-bottom: 0 !important;
	padding-top: 0 !important;
	border-top: none !important;
	background: none !important;
}

.elementor-element-5fb5dee .aux-testimonial-content,
.elementor-element-4dc0352 .aux-testimonial-content,
.elementor-element-4bc8842 .aux-testimonial-content {
	grid-row: 1 !important;
	grid-column: 1 !important;
	order: unset !important;
	flex: unset !important;
	align-self: stretch !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	border-bottom: none !important;
}

.elementor-element-5fb5dee .aux-testimonial-content .entry-content,
.elementor-element-4dc0352 .aux-testimonial-content .entry-content,
.elementor-element-4bc8842 .aux-testimonial-content .entry-content {
	padding: 0 !important;
	margin: 0 !important;
}

.elementor-element-5fb5dee .aux-testimonial-info,
.elementor-element-4dc0352 .aux-testimonial-info,
.elementor-element-4bc8842 .aux-testimonial-info {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: flex-end !important;
	gap: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	min-height: 5.75rem !important;
}

.elementor-element-e81ff23 .aux-rating-box.aux-star-rating {
	display: inline-flex !important;
	align-items: center !important;
	align-self: flex-end !important;
	margin: 0 0 1.5rem !important;
	order: unset !important;
}

.elementor-element-e81ff23 .es-testimonial-divider,
.elementor-element-e81ff23 .aux-testimonial-info::before {
	display: block !important;
	width: 100% !important;
	height: 1px !important;
	background: rgba(255, 255, 255, 0.16) !important;
	margin: 0 0 1.15rem !important;
	border: 0 !important;
	content: none !important;
}

.elementor-element-5fb5dee .col-title,
.elementor-element-4dc0352 .col-title,
.elementor-element-4bc8842 .col-title,
.elementor-element-5fb5dee .col-title a,
.elementor-element-4dc0352 .col-title a,
.elementor-element-4bc8842 .col-title a {
	order: unset !important;
	position: static !important;
	top: auto !important;
	color: #fff !important;
	font-size: 1.05rem !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	letter-spacing: -0.01em !important;
	margin: 0 0 0.3rem !important;
	padding: 0 !important;
}

.elementor-element-5fb5dee .col-subtitle,
.elementor-element-4dc0352 .col-subtitle,
.elementor-element-4bc8842 .col-subtitle {
	order: unset !important;
	color: rgba(94, 196, 224, 0.92) !important;
	font-size: 0.88rem !important;
	font-weight: 600 !important;
	line-height: 1.45 !important;
	margin: 0 !important;
}

/* Remove Phlox image-top pull that overlaps quote text */
.elementor-element-e81ff23 .aux-widget-testimonial.aux-testimonial-image-top,
.elementor-element-e81ff23 .aux-widget-testimonial.aux-testimonial-def-img {
	margin-top: 4.25rem !important;
	border: none !important;
	box-shadow: none !important;
}

.elementor-element-e81ff23 .aux-widget-testimonial.aux-testimonial-image-top .aux-testimonial-infobox,
.elementor-element-e81ff23 .aux-widget-testimonial.aux-testimonial-def-img .aux-testimonial-infobox {
	margin-top: 2rem !important;
}

.elementor-element-e81ff23 .aux-widget-testimonial.aux-testimonial-image-top .aux-testimonial-image,
.elementor-element-e81ff23 .aux-widget-testimonial.aux-testimonial-def-img .aux-testimonial-image {
	margin-bottom: 0 !important;
}

.elementor-element-5fb5dee .aux-testimonial-image,
.elementor-element-4dc0352 .aux-testimonial-image,
.elementor-element-4bc8842 .aux-testimonial-image {
	position: absolute !important;
	top: -3.65rem !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	width: 7.5rem !important;
	margin: 0 !important;
	z-index: 2 !important;
}

.elementor-element-5fb5dee .aux-testimonial-image img,
.elementor-element-4dc0352 .aux-testimonial-image img,
.elementor-element-4bc8842 .aux-testimonial-image img {
	width: 7.5rem !important;
	height: 7.5rem !important;
	object-fit: contain !important;
	padding: 0.7rem !important;
	background: #fff !important;
	border: 4px solid var(--es-accent-cyan) !important;
	border-radius: 50% !important;
	box-shadow:
		0 14px 34px rgba(8, 28, 42, 0.38),
		0 0 0 8px rgba(94, 196, 224, 0.16) !important;
	transition: transform 0.35s var(--es-ease), box-shadow 0.35s var(--es-ease), border-color 0.35s var(--es-ease) !important;
}

.elementor-element-5fb5dee .aux-widget-testimonial:hover .aux-testimonial-image img,
.elementor-element-4dc0352 .aux-widget-testimonial:hover .aux-testimonial-image img,
.elementor-element-4bc8842 .aux-widget-testimonial:hover .aux-testimonial-image img {
	transform: scale(1.05) !important;
	border-color: #cceef8 !important;
	box-shadow:
		0 18px 38px rgba(14, 61, 98, 0.45),
		0 0 0 8px rgba(200, 241, 251, 0.28) !important;
}

.elementor-element-5fb5dee .aux-testimonial-content,
.elementor-element-4dc0352 .aux-testimonial-content,
.elementor-element-4bc8842 .aux-testimonial-content,
.elementor-element-5fb5dee .aux-testimonial-content p,
.elementor-element-4dc0352 .aux-testimonial-content p,
.elementor-element-4bc8842 .aux-testimonial-content p {
	color: rgba(255, 255, 255, 0.94) !important;
	font-size: 1.05rem !important;
	font-weight: 500 !important;
	line-height: 1.72 !important;
	letter-spacing: 0.01em !important;
}

.elementor-element-e81ff23 .aux-rating-box.aux-star-rating::before,
.elementor-element-e81ff23 .aux-rating-box.aux-star-rating span::before {
	color: #ffd76a !important;
	text-shadow: 0 1px 8px rgba(255, 215, 106, 0.35) !important;
}

/* ── Theory / two-column content (dark) ──────────────── */
.elementor-element-9adfa4c,
.elementor-element-9adfa4c > .elementor-container,
.elementor-element-9adfa4c .elementor-column,
.elementor-element-9adfa4c .elementor-widget-wrap,
.elementor-element-9adfa4c .elementor-element-populated {
	background-color: #212121 !important;
	background: #212121 !important;
}

.elementor-element-9adfa4c {
	margin-top: 0 !important;
	padding: 4.5rem 0 5rem !important;
}

.elementor-element-9adfa4c .aux-modern-heading-primary {
	color: #5ec4e0 !important;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.14em !important;
	line-height: 1.4 !important;
}

.elementor-element-9adfa4c .aux-modern-heading-secondary {
	color: #fff !important;
	font-size: clamp(1.75rem, 3vw, 2.5rem) !important;
	font-weight: 800 !important;
	text-transform: none !important;
	letter-spacing: -0.02em !important;
	line-height: 1.2 !important;
}

.elementor-element-419d1b8 .aux-media-image,
.elementor-element-49da35b .aux-media-image {
	position: relative;
	border: 2px solid rgba(94, 196, 224, 0.35) !important;
	border-radius: var(--es-radius-lg) !important;
	overflow: hidden;
	background: #1e3a5f !important;
	aspect-ratio: 16 / 10;
	box-shadow: 0 14px 36px rgba(0, 0, 0, 0.45);
	transition: border-color 0.35s var(--es-ease), box-shadow 0.35s var(--es-ease), transform 0.35s var(--es-ease);
}

.elementor-element-419d1b8 .aux-media-image::after,
.elementor-element-49da35b .aux-media-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(33, 33, 33, 0) 55%, rgba(33, 33, 33, 0.35) 100%);
	opacity: 0.7;
	transition: opacity 0.35s var(--es-ease);
	pointer-events: none;
	z-index: 1;
}

.elementor-element-419d1b8 .aux-media-image img,
.elementor-element-49da35b .aux-media-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none;
	transform: scale(1);
	transition: transform 0.65s var(--es-ease), filter 0.4s var(--es-ease);
}

.elementor-element-419d1b8 .aux-widget-image:hover .aux-media-image,
.elementor-element-49da35b .aux-widget-image:hover .aux-media-image {
	border-color: var(--es-accent-cyan) !important;
	box-shadow: 0 18px 44px rgba(94, 196, 224, 0.28);
	transform: translateY(-4px);
}

.elementor-element-419d1b8 .aux-widget-image:hover .aux-media-image::after,
.elementor-element-49da35b .aux-widget-image:hover .aux-media-image::after {
	opacity: 0.35;
}

.elementor-element-419d1b8 .aux-widget-image:hover .aux-media-image img,
.elementor-element-49da35b .aux-widget-image:hover .aux-media-image img {
	transform: scale(1.05);
	filter: brightness(1.06) saturate(1.1);
}

.elementor-element-c66422b,
.elementor-element-94cfb35,
.elementor-element-c66422b .elementor-widget-container,
.elementor-element-94cfb35 .elementor-widget-container {
	color: rgba(255, 255, 255, 0.82) !important;
	line-height: 1.75 !important;
}

.elementor-element-c66422b p,
.elementor-element-94cfb35 p {
	color: rgba(255, 255, 255, 0.82) !important;
}

/* Hero + Theory buttons — cyan + blue */
.elementor-element-da5db3e .elementor-element-29c24f4 .aux-modern-button .aux-overlay:before,
.elementor-element-da5db3e .elementor-element-29c24f4 .aux-modern-button.aux-modern-button-outline .aux-overlay:before,
.elementor-element-9adfa4c .elementor-element-f5a8f1a .aux-modern-button .aux-overlay:before,
.elementor-element-9adfa4c .elementor-element-f5a8f1a .aux-modern-button.aux-modern-button-outline .aux-overlay:before {
	background-color: var(--es-accent-cyan) !important;
}

.elementor-element-da5db3e .elementor-element-29c24f4 .aux-modern-button .aux-overlay:after,
.elementor-element-da5db3e .elementor-element-29c24f4 .aux-modern-button.aux-modern-button-outline .aux-overlay:after,
.elementor-element-9adfa4c .elementor-element-f5a8f1a .aux-modern-button .aux-overlay:after,
.elementor-element-9adfa4c .elementor-element-f5a8f1a .aux-modern-button.aux-modern-button-outline .aux-overlay:after {
	background-color: var(--es-accent-blue) !important;
}

.elementor-element-da5db3e .elementor-element-cb5c38e .aux-modern-button .aux-overlay:before,
.elementor-element-da5db3e .elementor-element-cb5c38e .aux-modern-button.aux-modern-button-outline .aux-overlay:before,
.elementor-element-9adfa4c .elementor-element-fc15743 .aux-modern-button .aux-overlay:before,
.elementor-element-9adfa4c .elementor-element-fc15743 .aux-modern-button.aux-modern-button-outline .aux-overlay:before {
	background-color: var(--es-accent-blue-deep) !important;
}

.elementor-element-da5db3e .elementor-element-cb5c38e .aux-modern-button .aux-overlay:after,
.elementor-element-da5db3e .elementor-element-cb5c38e .aux-modern-button.aux-modern-button-outline .aux-overlay:after,
.elementor-element-9adfa4c .elementor-element-fc15743 .aux-modern-button .aux-overlay:after,
.elementor-element-9adfa4c .elementor-element-fc15743 .aux-modern-button.aux-modern-button-outline .aux-overlay:after {
	background-color: var(--es-accent-cyan) !important;
}

.elementor-element-da5db3e .elementor-element-29c24f4 .aux-text,
.elementor-element-da5db3e .elementor-element-cb5c38e .aux-text,
.elementor-element-9adfa4c .elementor-element-f5a8f1a .aux-text,
.elementor-element-9adfa4c .elementor-element-fc15743 .aux-text {
	color: #fff !important;
	font-weight: 600 !important;
}

.elementor-element-da5db3e .aux-modern-button:hover .aux-overlay:before,
.elementor-element-da5db3e .aux-modern-button:hover .aux-overlay:after,
.elementor-element-9adfa4c .aux-modern-button:hover .aux-overlay:before,
.elementor-element-9adfa4c .aux-modern-button:hover .aux-overlay:after {
	box-shadow: 0 10px 28px rgba(94, 196, 224, 0.32) !important;
}

.elementor-element-da5db3e .aux-modern-button .aux-overlay:before,
.elementor-element-da5db3e .aux-modern-button .aux-overlay:after,
.elementor-element-9adfa4c .aux-modern-button .aux-overlay:before,
.elementor-element-9adfa4c .aux-modern-button .aux-overlay:after {
	transition: background-color 0.3s var(--es-ease), box-shadow 0.3s var(--es-ease) !important;
}

.elementor-element-bf9ccd8 {
	display: none !important;
}

/* Legacy applications section — replaced by custom HTML grids */
.elementor-element-97c758b { display: none !important; }

/* ── About Us page ───────────────────────────────────── */
.page-id-2153,
.page-id-2154 {
	background: var(--es-white);
}

/* Hero background band */
.es-about-hero-bg {
	position: relative !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding: 7rem 5% 11rem !important;
	overflow: hidden !important;
}

.es-about-hero-bg:not(.elementor-motion-effects-element-type-background),
.es-about-hero-bg > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-position: center center !important;
	background-size: cover !important;
	animation: es-about-hero-kenburns 24s ease-in-out infinite alternate;
}

.es-about-hero-bg > .elementor-background-overlay {
	background:
		linear-gradient(180deg, rgba(8, 28, 42, 0.55) 0%, rgba(14, 61, 98, 0.72) 55%, rgba(10, 40, 64, 0.88) 100%) !important;
	opacity: 1 !important;
}

.es-about-hero-bg::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 120px;
	background: linear-gradient(180deg, transparent 0%, rgba(255, 255, 255, 0.08) 100%);
	pointer-events: none;
	z-index: 1;
}

@keyframes es-about-hero-kenburns {
	from {
		transform: scale(1);
	}
	to {
		transform: scale(1.08);
	}
}

/* Intro card overlapping hero */
.es-about-intro {
	position: relative;
	z-index: 3;
	padding: 0 5% !important;
	margin-top: -7rem !important;
	margin-bottom: 0 !important;
}

.es-about-intro > .elementor-container {
	max-width: 1100px !important;
	margin: 0 auto !important;
}

.es-about-intro .elementor-element-40570c65,
.es-about-intro .elementor-element-40570c65 > .elementor-element-populated {
	margin-top: 0 !important;
}

.es-about-intro .elementor-element-40570c65 > .elementor-widget-wrap.elementor-element-populated,
.es-about-intro .elementor-element-40570c65:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.es-about-intro .elementor-element-40570c65 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: #2e7d96 !important;
	background-image: linear-gradient(
		135deg,
		#1f5568 0%,
		#2e7d96 22%,
		var(--es-accent-blue) 48%,
		#1a8ec4 78%,
		var(--es-accent-cyan) 100%
	) !important;
}

.es-about-intro .elementor-element-40570c65 > .elementor-widget-wrap.elementor-element-populated {
	border-radius: 26px !important;
	overflow: hidden !important;
	padding: 0 !important;
	box-shadow:
		0 32px 70px rgba(8, 28, 42, 0.35),
		0 0 0 1px rgba(255, 255, 255, 0.12) inset !important;
}

.es-about-intro .elementor-element-28698ea3 .elementor-widget-container,
.es-about-intro .elementor-element-28698ea3 .aux-widget-modern-heading,
.es-about-intro .elementor-element-28698ea3 .aux-widget-inner,
.es-about-intro .elementor-element-0c32976,
.es-about-intro .elementor-element-0c32976 > .elementor-container,
.es-about-intro .elementor-element-0c32976 .elementor-column,
.es-about-intro .elementor-element-0c32976 .elementor-widget-wrap {
	background: transparent !important;
	background-color: transparent !important;
}

.es-about-intro .elementor-element-28698ea3,
.es-about-intro .elementor-element-28698ea3 .aux-widget-inner,
.es-about-intro .elementor-element-28698ea3 .aux-modern-heading-primary,
.es-about-intro .elementor-element-28698ea3 .aux-modern-heading-secondary,
.es-about-intro .elementor-element-28698ea3 .aux-modern-heading-description,
.es-about-intro .elementor-element-28698ea3 .aux-head-before {
	opacity: 1 !important;
	transform: none !important;
	animation: none !important;
	visibility: visible !important;
}

.es-about-intro .elementor-element-28698ea3 .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	padding: 3.25rem 2.75rem 2rem !important;
}

.es-about-intro .elementor-element-28698ea3 > .elementor-widget-container {
	margin-top: 0 !important;
}

.es-about-intro .elementor-element-28698ea3 .aux-modern-heading-primary {
	color: rgba(255, 255, 255, 0.9) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	line-height: 1.4 !important;
	margin-bottom: 0.85rem !important;
}

.es-about-intro .elementor-element-28698ea3 .aux-modern-heading-primary::before,
.es-about-intro .elementor-element-28698ea3 .aux-modern-heading-primary::after {
	content: "";
	display: inline-block;
	width: clamp(24px, 4vw, 48px);
	height: 1px;
	margin: 0 0.75rem;
	vertical-align: middle;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.65), transparent);
}

.es-about-intro .elementor-element-28698ea3 .aux-modern-heading-secondary,
.es-about-intro .elementor-element-28698ea3 .aux-head-before {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	background: none !important;
	font-size: clamp(2rem, 4vw, 2.85rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	letter-spacing: -0.03em !important;
	text-transform: none !important;
	max-width: 20ch !important;
	margin: 0 auto 1.15rem !important;
}

.es-about-intro .elementor-element-28698ea3 .aux-modern-heading-description,
.es-about-intro .elementor-element-28698ea3 .aux-modern-heading-description p {
	color: rgba(255, 255, 255, 0.94) !important;
	font-size: clamp(1rem, 1.45vw, 1.1rem) !important;
	font-weight: 500 !important;
	line-height: 1.75 !important;
	max-width: 58ch !important;
	margin: 0 auto !important;
}

.elementor-2153 .es-about-intro .elementor-element-28698ea3 .aux-modern-heading-primary,
.elementor-2154 .es-about-intro .elementor-element-28698ea3 .aux-modern-heading-primary {
	line-height: 1.4 !important;
	color: rgba(255, 255, 255, 0.9) !important;
}

.elementor-2153 .es-about-intro .elementor-element-28698ea3 .aux-modern-heading-secondary,
.elementor-2153 .es-about-intro .elementor-element-28698ea3 .aux-head-before,
.elementor-2154 .es-about-intro .elementor-element-28698ea3 .aux-modern-heading-secondary,
.elementor-2154 .es-about-intro .elementor-element-28698ea3 .aux-head-before {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
}

.elementor-2153 .es-about-intro .elementor-element-28698ea3 .aux-modern-heading-description,
.elementor-2154 .es-about-intro .elementor-element-28698ea3 .aux-modern-heading-description,
.elementor-2153 .es-about-intro .elementor-element-28698ea3 .aux-modern-heading-description p,
.elementor-2154 .es-about-intro .elementor-element-28698ea3 .aux-modern-heading-description p {
	color: rgba(255, 255, 255, 0.94) !important;
}

/* Stats row inside intro card */
.es-about-intro .elementor-element-0c32976 {
	padding: 0 1.75rem 2.5rem !important;
}

.es-about-intro .elementor-element-0c32976 > .elementor-container {
	max-width: 920px !important;
	margin: 0 auto !important;
	background: rgba(4, 18, 30, 0.52) !important;
	border-radius: 18px !important;
	border: 1px solid rgba(255, 255, 255, 0.16) !important;
	backdrop-filter: blur(10px);
	padding: 0.75rem 0 !important;
}

.es-about-intro .elementor-element-fdffd1c,
.es-about-intro .elementor-element-9e6168e,
.es-about-intro .elementor-element-0937a73 {
	border-color: rgba(255, 255, 255, 0.16) !important;
}

.es-about-intro .aux-counter-number,
.es-about-intro .aux-counter-number-prefix {
	color: var(--es-accent-cyan) !important;
	font-family: var(--es-font) !important;
	font-size: clamp(2.5rem, 5vw, 4.5rem) !important;
	font-weight: 800 !important;
	letter-spacing: -0.04em !important;
}

.es-about-intro .aux-icon-list-text {
	color: #fff !important;
	font-family: var(--es-font) !important;
	font-size: 0.95rem !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
}

.es-about-intro .aux-icon-list-item .aux-icon-list-icon {
	color: var(--es-accent-cyan) !important;
}

/* Purpose + video */
.es-about-purpose {
	position: relative;
	padding: 5.5rem 5% 5rem !important;
	margin-top: 2rem !important;
	background:
		linear-gradient(180deg, #f8fbfd 0%, #fff 45%, #f4f8fb 100%) !important;
}

.es-about-purpose::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(94, 196, 224, 0.5), transparent);
}

.es-about-purpose .elementor-element-1d47310 .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	margin-bottom: 2.5rem !important;
}

.es-about-purpose .elementor-element-1d47310 .aux-modern-heading-primary {
	color: var(--es-accent-blue) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
	margin-bottom: 0.65rem !important;
}

.es-about-purpose .elementor-element-1d47310 .aux-modern-heading-secondary {
	color: var(--es-brand) !important;
	font-size: clamp(1.85rem, 3.5vw, 2.75rem) !important;
	font-weight: 800 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.02em !important;
	text-transform: none !important;
	max-width: 22ch !important;
	margin: 0 auto !important;
}

.es-about-purpose .elementor-element-ee1c06d > .elementor-container {
	max-width: 1140px !important;
	margin: 0 auto !important;
	align-items: center !important;
	gap: 2rem;
}

.es-about-purpose .elementor-element-8d1177d .aux-modern-heading-description,
.es-about-purpose .elementor-element-8d1177d .aux-modern-heading-description p {
	color: var(--es-muted) !important;
	font-size: 1.05rem !important;
	line-height: 1.8 !important;
}

.es-about-purpose .elementor-element-8e9c1a2 .premium-video-box-image-container,
.es-about-purpose .elementor-element-8e9c1a2 .premium-video-box-image {
	border-radius: 22px !important;
	overflow: hidden !important;
	box-shadow:
		0 24px 56px rgba(14, 61, 98, 0.22),
		0 0 0 1px rgba(94, 196, 224, 0.25) !important;
}

.es-about-purpose .elementor-element-8e9c1a2 .premium-video-box-play-icon {
	width: 72px !important;
	height: 72px !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, 0.95) !important;
	color: var(--es-accent-blue) !important;
	box-shadow: 0 12px 32px rgba(8, 28, 42, 0.25) !important;
	transition: transform 0.3s var(--es-ease), box-shadow 0.3s var(--es-ease) !important;
}

.es-about-purpose .elementor-element-8e9c1a2:hover .premium-video-box-play-icon {
	transform: scale(1.08) !important;
	box-shadow: 0 16px 40px rgba(8, 28, 42, 0.32) !important;
}

/* Business unit / ChlorTech */
.es-about-business {
	position: relative;
	overflow: hidden;
	padding: 5.5rem 5% !important;
	background:
		linear-gradient(180deg, #101317 0%, #171b21 42%, #12151a 100%) !important;
}

.es-about-business::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 15% 0%, rgba(94, 196, 224, 0.18) 0%, transparent 40%),
		radial-gradient(circle at 85% 100%, rgba(21, 101, 168, 0.16) 0%, transparent 38%);
	pointer-events: none;
}

.es-about-business > .elementor-container {
	position: relative;
	z-index: 1;
	max-width: 1140px !important;
	margin: 0 auto !important;
}

.es-about-business .elementor-element-1ca94ef .aux-widget-inner,
.es-about-business .elementor-element-a3a7ef3 .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	margin-bottom: 2rem !important;
}

.es-about-business .elementor-element-1ca94ef .aux-modern-heading-primary,
.es-about-business .elementor-element-a3a7ef3 .aux-modern-heading-primary {
	color: rgba(94, 196, 224, 0.95) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
}

.es-about-business .elementor-element-1ca94ef .aux-modern-heading-secondary,
.es-about-business .elementor-element-a3a7ef3 .aux-modern-heading-secondary {
	color: #fff !important;
	font-size: clamp(1.75rem, 3vw, 2.5rem) !important;
	font-weight: 800 !important;
	line-height: 1.15 !important;
	text-transform: none !important;
	max-width: none !important;
}

.es-about-business .elementor-element-5e4bce1 > .elementor-container,
.es-about-business .elementor-element-c850892 > .elementor-container {
	background: rgba(255, 255, 255, 0.04) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 20px !important;
	padding: 2rem 2.25rem !important;
	margin-bottom: 2rem !important;
}

.es-about-business .elementor-element-759ea07 .aux-modern-heading-description,
.es-about-business .elementor-element-759ea07 .aux-modern-heading-description p,
.es-about-business .elementor-element-1fa7b08 .aux-modern-heading-description,
.es-about-business .elementor-element-1fa7b08 .aux-modern-heading-description p,
.es-about-business .elementor-element-c119d72 .aux-modern-heading-description,
.es-about-business .elementor-element-c119d72 .aux-modern-heading-description p,
.es-about-business .elementor-element-610f12d .aux-modern-heading-description,
.es-about-business .elementor-element-610f12d .aux-modern-heading-description p {
	color: rgba(255, 255, 255, 0.82) !important;
	font-size: 1rem !important;
	line-height: 1.75 !important;
}

.es-about-business .elementor-element-759ea07 .aux-modern-heading-description p:first-child,
.es-about-business .elementor-element-c119d72 .aux-modern-heading-description p:first-child {
	font-size: 1.15rem !important;
	font-weight: 700 !important;
	color: #fff !important;
	margin-bottom: 0.75rem !important;
}

.es-about-business .elementor-element-ccb7592,
.es-about-business .elementor-element-6788c21 {
	text-align: center !important;
}

.es-about-business .elementor-element-ccb7592 .elementor-button,
.es-about-business .elementor-element-6788c21 .elementor-button {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.5rem !important;
	padding: 0.95rem 2.1rem !important;
	background: var(--es-accent-cyan) !important;
	color: var(--es-brand) !important;
	border: 2px solid transparent !important;
	border-radius: 999px !important;
	font-family: var(--es-font) !important;
	font-size: 0.82rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	box-shadow: 0 10px 28px rgba(94, 196, 224, 0.35) !important;
	transition:
		transform 0.25s var(--es-ease),
		box-shadow 0.25s var(--es-ease),
		background 0.25s var(--es-ease) !important;
}

.es-about-business .elementor-element-ccb7592 .elementor-button:hover,
.es-about-business .elementor-element-6788c21 .elementor-button:hover {
	transform: translateY(-3px) !important;
	background: #fff !important;
	box-shadow: 0 14px 34px rgba(255, 255, 255, 0.2) !important;
}

/* Mission & Vision cards */
.es-about-mission {
	padding: 5rem 5% !important;
	background: var(--es-bg-alt) !important;
}

.es-about-mission > .elementor-container,
.es-about-mission .elementor-element-4d010cc > .elementor-container,
.es-about-mission .elementor-element-a2ee7b7 > .elementor-container {
	max-width: 1140px !important;
	margin: 0 auto !important;
	gap: 1.5rem;
}

.es-about-mission .elementor-element-8557232 > .elementor-widget-wrap.elementor-element-populated,
.es-about-mission .elementor-element-1eae167 > .elementor-widget-wrap.elementor-element-populated,
.es-about-mission .elementor-element-459ab8d > .elementor-widget-wrap.elementor-element-populated,
.es-about-mission .elementor-element-8dae50b > .elementor-widget-wrap.elementor-element-populated,
.es-about-mission .elementor-element-8557232 > .elementor-element-populated,
.es-about-mission .elementor-element-1eae167 > .elementor-element-populated,
.es-about-mission .elementor-element-459ab8d > .elementor-element-populated,
.es-about-mission .elementor-element-8dae50b > .elementor-element-populated,
.es-about-mission .elementor-element-887212a .elementor-column > .elementor-element-populated {
	background: #fff !important;
	border-radius: 22px !important;
	padding: 0 !important;
	border: 1px solid var(--es-border) !important;
	box-shadow: var(--es-shadow) !important;
	border-top: 4px solid var(--es-accent-cyan) !important;
	height: 100%;
	overflow: hidden !important;
	transition: transform 0.3s var(--es-ease), box-shadow 0.3s var(--es-ease) !important;
}

.es-about-mission .es-mv-card-image .elementor-widget-container {
	margin: 0 !important;
	padding: 1.5rem 2.25rem 0 !important;
	line-height: 0 !important;
}

.es-about-mission .es-mv-card-image img {
	display: block !important;
	width: 100% !important;
	max-width: 220px !important;
	height: 100px !important;
	margin: 0 auto !important;
	border-radius: 12px !important;
	object-fit: cover !important;
	object-position: center !important;
}

.es-about-mission .elementor-element-8557232 .elementor-element-7a716b1 > .elementor-widget-container,
.es-about-mission .elementor-element-1eae167 .elementor-element-086f4a1 > .elementor-widget-container,
.es-about-mission .elementor-element-459ab8d .elementor-element-977b7ce > .elementor-widget-container,
.es-about-mission .elementor-element-8dae50b .elementor-element-e81d5fe > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	background: #f7f8f8 !important;
}

.es-about-mission .elementor-element-7a716b1 .aux-widget-inner,
.es-about-mission .elementor-element-086f4a1 .aux-widget-inner,
.es-about-mission .elementor-element-977b7ce .aux-widget-inner,
.es-about-mission .elementor-element-e81d5fe .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	text-align: left !important;
}

.es-about-mission .elementor-element-7a716b1 .aux-modern-heading-primary,
.es-about-mission .elementor-element-086f4a1 .aux-modern-heading-primary,
.es-about-mission .elementor-element-977b7ce .aux-modern-heading-primary,
.es-about-mission .elementor-element-e81d5fe .aux-modern-heading-primary,
.elementor-2153 .es-about-mission .elementor-element-7a716b1 .aux-modern-heading-primary,
.elementor-2153 .es-about-mission .elementor-element-086f4a1 .aux-modern-heading-primary,
.elementor-2154 .es-about-mission .elementor-element-977b7ce .aux-modern-heading-primary,
.elementor-2154 .es-about-mission .elementor-element-e81d5fe .aux-modern-heading-primary {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 1.35rem 2rem 1.15rem !important;
	font-family: var(--es-font) !important;
	font-size: clamp(1.45rem, 2.5vw, 1.9rem) !important;
	font-weight: 800 !important;
	letter-spacing: -0.03em !important;
	text-transform: none !important;
	line-height: 1.12 !important;
	color: #fff !important;
	text-align: center !important;
	box-sizing: border-box !important;
	box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.12) !important;
}

.es-about-mission .elementor-element-7a716b1 .aux-modern-heading-primary,
.es-about-mission .elementor-element-977b7ce .aux-modern-heading-primary {
	background:
		linear-gradient(135deg, #1e3a5f 0%, #2e7d96 38%, var(--es-accent-blue) 100%) !important;
}

.es-about-mission .elementor-element-086f4a1 .aux-modern-heading-primary,
.es-about-mission .elementor-element-e81d5fe .aux-modern-heading-primary {
	background:
		linear-gradient(135deg, #2e7d96 0%, var(--es-accent-blue) 42%, #5ec4e0 78%, var(--es-accent-cyan) 100%) !important;
}

.es-about-mission .elementor-element-7a716b1 .aux-modern-heading-primary::before,
.es-about-mission .elementor-element-086f4a1 .aux-modern-heading-primary::before,
.es-about-mission .elementor-element-977b7ce .aux-modern-heading-primary::before,
.es-about-mission .elementor-element-e81d5fe .aux-modern-heading-primary::before {
	content: "";
	display: block;
	width: 36px;
	height: 3px;
	margin: 0 auto 0.85rem;
	border-radius: 999px;
	background: var(--es-accent-cyan);
	box-shadow: 0 0 14px rgba(94, 196, 224, 0.65);
}

.es-about-mission .elementor-element-7a716b1 .aux-modern-heading-primary::after,
.es-about-mission .elementor-element-086f4a1 .aux-modern-heading-primary::after,
.es-about-mission .elementor-element-977b7ce .aux-modern-heading-primary::after,
.es-about-mission .elementor-element-e81d5fe .aux-modern-heading-primary::after {
	content: "";
	display: block;
	width: 64px;
	height: 2px;
	margin: 0.85rem auto 0;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.82);
}

.es-about-mission .elementor-element-7a716b1 .aux-modern-heading-description,
.es-about-mission .elementor-element-086f4a1 .aux-modern-heading-description,
.es-about-mission .elementor-element-977b7ce .aux-modern-heading-description,
.es-about-mission .elementor-element-e81d5fe .aux-modern-heading-description {
	padding: 1.75rem 2.25rem 2.5rem !important;
	margin: 0 !important;
}

.es-about-mission .elementor-element-8557232 > .elementor-widget-wrap.elementor-element-populated:hover,
.es-about-mission .elementor-element-1eae167 > .elementor-widget-wrap.elementor-element-populated:hover,
.es-about-mission .elementor-element-459ab8d > .elementor-widget-wrap.elementor-element-populated:hover,
.es-about-mission .elementor-element-8dae50b > .elementor-widget-wrap.elementor-element-populated:hover,
.es-about-mission .elementor-element-8557232 > .elementor-element-populated:hover,
.es-about-mission .elementor-element-1eae167 > .elementor-element-populated:hover,
.es-about-mission .elementor-element-459ab8d > .elementor-element-populated:hover,
.es-about-mission .elementor-element-8dae50b > .elementor-element-populated:hover {
	transform: translateY(-4px) !important;
	box-shadow: 0 20px 50px rgba(14, 61, 98, 0.12) !important;
}

.es-about-mission .elementor-element-7a716b1 .aux-modern-heading-description,
.es-about-mission .elementor-element-086f4a1 .aux-modern-heading-description,
.es-about-mission .elementor-element-977b7ce .aux-modern-heading-description,
.es-about-mission .elementor-element-e81d5fe .aux-modern-heading-description,
.es-about-mission .elementor-element-7a716b1 .aux-modern-heading-description p,
.es-about-mission .elementor-element-086f4a1 .aux-modern-heading-description p,
.es-about-mission .elementor-element-977b7ce .aux-modern-heading-description p,
.es-about-mission .elementor-element-e81d5fe .aux-modern-heading-description p {
	color: var(--es-muted) !important;
	font-size: 1.05rem !important;
	line-height: 1.8 !important;
}

/* Organizations carousel */
.es-about-orgs {
	position: relative;
	overflow: hidden;
	padding: 5rem 5% 4.5rem !important;
	background:
		linear-gradient(180deg, #1f5568 0%, #3a8fa8 38%, #2e7d96 100%) !important;
}

.es-about-orgs::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 20% 0%, rgba(94, 196, 224, 0.25) 0%, transparent 45%),
		radial-gradient(circle at 80% 100%, rgba(255, 255, 255, 0.08) 0%, transparent 40%);
	pointer-events: none;
}

.es-about-orgs > .elementor-container {
	position: relative;
	z-index: 1;
	max-width: 1200px !important;
	margin: 0 auto !important;
}

.es-about-orgs .elementor-element-e5a4df6 .aux-widget-inner,
.es-about-orgs .elementor-element-9591e65 .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	margin-bottom: 2.5rem !important;
}

.es-about-orgs .elementor-element-e5a4df6 .aux-modern-heading-primary,
.es-about-orgs .elementor-element-9591e65 .aux-modern-heading-primary {
	color: rgba(255, 255, 255, 0.75) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
	margin-bottom: 0.65rem !important;
}

.es-about-orgs .elementor-element-e5a4df6 .aux-modern-heading-secondary,
.es-about-orgs .elementor-element-9591e65 .aux-modern-heading-secondary {
	color: #fff !important;
	font-size: clamp(1.85rem, 3.2vw, 2.65rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	text-transform: none !important;
	max-width: none !important;
}

.es-about-orgs .elementor-element-2ced0e7 .swiper-slide figure,
.es-about-orgs .elementor-element-7c893d7 .swiper-slide figure {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 110px !important;
	margin: 0 !important;
	padding: 1rem 1.1rem !important;
	background: #fff !important;
	border-radius: 16px !important;
	box-shadow: 0 10px 28px rgba(8, 28, 42, 0.2) !important;
	transition: transform 0.3s var(--es-ease) !important;
}

.es-about-orgs .elementor-element-2ced0e7 .swiper-slide figure:hover,
.es-about-orgs .elementor-element-7c893d7 .swiper-slide figure:hover {
	transform: translateY(-4px) scale(1.02) !important;
}

.es-about-orgs .elementor-element-2ced0e7 .swiper-slide img,
.es-about-orgs .elementor-element-7c893d7 .swiper-slide img {
	max-height: 64px !important;
	width: auto !important;
	object-fit: contain !important;
	filter: none !important;
}

.es-about-orgs .swiper-button-prev,
.es-about-orgs .swiper-button-next {
	width: 44px !important;
	height: 44px !important;
	border-radius: 50% !important;
	background: rgba(94, 196, 224, 0.9) !important;
	color: #fff !important;
	box-shadow: 0 6px 18px rgba(8, 28, 42, 0.2) !important;
}

.es-about-orgs .swiper-button-prev::after,
.es-about-orgs .swiper-button-next::after {
	font-size: 16px !important;
	font-weight: 800 !important;
}

/* Organizations table section */
.es-about-table {
	padding: 5rem 5% 6rem !important;
	background: #fff !important;
}

.es-about-table > .elementor-container {
	max-width: 1200px !important;
	margin: 0 auto !important;
}

.es-about-table .elementor-element-51e4883 .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	margin-bottom: 2.5rem !important;
}

.es-about-table .elementor-element-51e4883 .aux-modern-heading-secondary {
	color: var(--es-brand) !important;
	font-size: clamp(1.65rem, 3vw, 2.35rem) !important;
	font-weight: 800 !important;
	line-height: 1.15 !important;
	text-transform: none !important;
	max-width: 28ch !important;
	margin: 0 auto !important;
}

.es-about-table .elementor-element-51e4883 .aux-modern-heading-secondary::before {
	content: "";
	display: block;
	width: 56px;
	height: 4px;
	margin: 0 auto 1rem;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--es-accent-cyan), var(--es-accent-blue));
}

.es-about-table .elementor-element-6398144 > .elementor-container {
	gap: 1.5rem;
}

@media (max-width: 1024px) {
	.es-about-intro {
		margin-top: -5rem !important;
	}

	.es-about-intro .elementor-element-28698ea3 .aux-widget-inner {
		padding: 2.5rem 1.5rem 1.25rem !important;
	}

	.es-about-purpose .elementor-element-ee1c06d > .elementor-container {
		flex-direction: column !important;
	}

	.es-about-mission .elementor-element-4d010cc > .elementor-container,
	.es-about-mission .elementor-element-a2ee7b7 > .elementor-container {
		flex-direction: column !important;
	}
}

@media (max-width: 767px) {
	.es-about-hero-bg {
		padding: 5.5rem 4% 8rem !important;
		margin-top: 0 !important;
	}

	.es-about-intro {
		margin-top: -3.5rem !important;
		padding: 0 4% !important;
	}

	.es-about-intro .elementor-element-0c32976 {
		padding: 0 0.75rem 2rem !important;
	}

	.es-about-intro .elementor-element-0c32976 > .elementor-container {
		flex-direction: column !important;
	}

	.es-about-intro .elementor-element-fdffd1c,
	.es-about-intro .elementor-element-9e6168e {
		border-right: none !important;
		border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
	}

	.es-about-purpose,
	.es-about-business,
	.es-about-mission,
	.es-about-orgs,
	.es-about-table {
		padding-left: 4% !important;
		padding-right: 4% !important;
	}
}

/* ── Tables ──────────────────────────────────────────── */
.es-table-shell {
	background: var(--es-white);
	border: 1px solid var(--es-border);
	border-radius: var(--es-radius-lg);
	box-shadow: var(--es-shadow);
	overflow: hidden;
	margin: 1.5rem 0 2rem;
}

.es-table-scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.es-table-scroll table,
.aux-widget-responsive-table table {
	width: 100% !important;
	border-collapse: collapse !important;
	font-size: 0.84rem !important;
	min-width: 600px;
}

.es-table-scroll table th,
.aux-widget-responsive-table table th {
	background: var(--es-brand) !important;
	color: #fff !important;
	font-weight: 700 !important;
	font-size: 0.72rem !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	padding: 0.9rem 0.85rem !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	white-space: nowrap;
}

.es-table-scroll table td,
.aux-widget-responsive-table table td {
	padding: 0.75rem 0.85rem !important;
	border-bottom: 1px solid var(--es-bg-alt) !important;
	color: var(--es-ink) !important;
	text-align: center !important;
	background: var(--es-white) !important;
}

.es-table-scroll table tbody tr:nth-child(even) td,
.aux-widget-responsive-table table tbody tr:nth-child(even) td {
	background: var(--es-bg) !important;
}

.es-table-scroll table tbody tr:hover td,
.aux-widget-responsive-table table tbody tr:hover td {
	background: var(--es-accent-soft) !important;
}

/* ── Accordion ───────────────────────────────────────── */
.aux-widget-accordion .aux-accordion-item,
.widget-toggle .toggle-item {
	border: 1px solid var(--es-border) !important;
	border-radius: var(--es-radius) !important;
	margin-bottom: 0.65rem !important;
	overflow: hidden;
	background: var(--es-white) !important;
}

.aux-widget-accordion .aux-accordion-item.active .aux-accordion-header,
.widget-toggle .toggle-item.active .toggle-title {
	background: var(--es-brand) !important;
	color: #fff !important;
}

.aux-widget-accordion .aux-accordion-header,
.widget-toggle .toggle-title {
	font-weight: 600 !important;
	padding: 1rem 1.25rem !important;
	color: var(--es-ink) !important;
}

.aux-widget-accordion .aux-accordion-content,
.widget-toggle .toggle-content {
	padding: 1rem 1.25rem 1.25rem !important;
	color: var(--es-muted) !important;
	line-height: 1.7 !important;
}

/* ── Footer CTA band (above footer links) ─────────────── */
.elementor-192 .elementor-element-5c93dcd.es-footer-cta-section,
.elementor-1942 .elementor-element-5c93dcd.es-footer-cta-section {
	position: relative;
	margin: 0 !important;
	padding: clamp(3rem, 6vw, 4.5rem) 5% !important;
	background: #ffffff !important;
	overflow: hidden !important;
}

.elementor-192 .elementor-element-5c93dcd.es-footer-cta-section:not(.elementor-motion-effects-element-type-background),
.elementor-192 .elementor-element-5c93dcd.es-footer-cta-section > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-1942 .elementor-element-5c93dcd.es-footer-cta-section:not(.elementor-motion-effects-element-type-background),
.elementor-1942 .elementor-element-5c93dcd.es-footer-cta-section > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: #ffffff !important;
	background-image: url("/wp-content/uploads/2020/10/water-texture-background-transparent-liquid-1-scaled.jpeg") !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

.elementor-192 .elementor-element-5c93dcd.es-footer-cta-section > .elementor-container,
.elementor-1942 .elementor-element-5c93dcd.es-footer-cta-section > .elementor-container {
	position: relative;
	z-index: 1;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

.elementor-192 .elementor-element-5c93dcd.es-footer-cta-section .elementor-element-80df2d0 > .elementor-element-populated,
.elementor-1942 .elementor-element-5c93dcd.es-footer-cta-section .elementor-element-80df2d0 > .elementor-element-populated,
.elementor-192 .elementor-element-5c93dcd.es-footer-cta-section .elementor-element-80df2d0 .elementor-widget-wrap,
.elementor-1942 .elementor-element-5c93dcd.es-footer-cta-section .elementor-element-80df2d0 .elementor-widget-wrap,
.elementor-192 .elementor-element-5c93dcd.es-footer-cta-section .elementor-widget-html,
.elementor-1942 .elementor-element-5c93dcd.es-footer-cta-section .elementor-widget-html,
.elementor-192 .elementor-element-5c93dcd.es-footer-cta-section .elementor-widget-container,
.elementor-1942 .elementor-element-5c93dcd.es-footer-cta-section .elementor-widget-container {
	padding: 0 !important;
	background: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

.elementor-192 .elementor-element-5c93dcd.es-footer-cta-section .elementor-element-80df2d0:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.elementor-192 .elementor-element-5c93dcd.es-footer-cta-section .elementor-element-80df2d0 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-1942 .elementor-element-5c93dcd.es-footer-cta-section .elementor-element-80df2d0:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.elementor-1942 .elementor-element-5c93dcd.es-footer-cta-section .elementor-element-80df2d0 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background: transparent !important;
	background-image: none !important;
}

.elementor-192 .elementor-element-5c93dcd.es-footer-cta-section .elementor-element-80df2d0 > .elementor-element-populated > .elementor-background-overlay,
.elementor-1942 .elementor-element-5c93dcd.es-footer-cta-section .elementor-element-80df2d0 > .elementor-element-populated > .elementor-background-overlay {
	opacity: 0 !important;
}

.es-footer-cta {
	position: relative;
	z-index: 2;
	max-width: 760px;
	margin: 0 auto;
	padding: clamp(2rem, 4vw, 2.75rem) clamp(1.25rem, 4vw, 2rem);
	text-align: center;
	border-radius: 22px;
	background: linear-gradient(135deg, #152d4a 0%, #1e3a5f 52%, #1e3a5f 100%) !important;
	border: 1px solid rgba(94, 196, 224, 0.24);
	box-shadow: 0 24px 60px rgba(8, 20, 32, 0.14);
}

.es-footer-cta__eyebrow {
	margin: 0 0 0.75rem;
	color: var(--es-accent-cyan, #5ec4e0);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.es-footer-cta__title {
	margin: 0 0 0.85rem;
	color: #fff;
	font-size: clamp(1.55rem, 2.8vw, 2.1rem);
	line-height: 1.15;
	font-weight: 800;
	letter-spacing: -0.02em;
}

.es-footer-cta__lead {
	margin: 0 auto 1.5rem;
	max-width: 560px;
	color: rgba(255, 255, 255, 0.82);
	font-size: 1rem;
	line-height: 1.65;
}

.es-footer-cta__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0.85rem 1.6rem;
	border-radius: 999px;
	background: var(--es-accent-cyan, #5ec4e0);
	border: 1px solid rgba(94, 196, 224, 0.65);
	color: #152d4a !important;
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: none !important;
	box-shadow: 0 10px 28px rgba(94, 196, 224, 0.22);
	transition: transform 0.25s var(--es-ease), box-shadow 0.25s var(--es-ease), background 0.25s var(--es-ease);
}

.es-footer-cta__btn:hover {
	transform: translateY(-2px);
	background: #7dd4ef;
	box-shadow: 0 14px 34px rgba(94, 196, 224, 0.32);
	color: #152d4a !important;
}

/* ── Footer (Elementor template 192) ─────────────────── */
.elementor-location-footer,
.elementor-location-footer .elementor-192,
.elementor-192 .elementor-element-d6a291f,
.elementor-192 .elementor-element-d6a291f > .elementor-container,
.elementor-192 .elementor-element-d6a291f .elementor-column,
.elementor-192 .elementor-element-d6a291f .elementor-widget-wrap,
.elementor-192 .elementor-element-35c437b,
.elementor-192 .elementor-element-35c437b > .elementor-container,
.elementor-192 .elementor-element-35c437b .elementor-column,
.elementor-192 .elementor-element-35c437b .elementor-widget-wrap {
	background: transparent !important;
}

.elementor-location-footer,
.site-footer-section {
	background: #121418 !important;
	color: rgba(255, 255, 255, 0.82) !important;
	border-top: none !important;
}

.elementor-192 .elementor-element-d6a291f {
	position: relative !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding: 4.5rem 5% 2.75rem !important;
	background:
		linear-gradient(180deg, #14181d 0%, #101317 55%, #0d1014 100%) !important;
	overflow: hidden !important;
}

.elementor-192 .elementor-element-d6a291f::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(94, 196, 224, 0.55) 25%,
		rgba(255, 255, 255, 0.35) 50%,
		rgba(94, 196, 224, 0.55) 75%,
		transparent 100%
	);
	z-index: 1;
}

.elementor-192 .elementor-element-d6a291f::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 12% 0%, rgba(94, 196, 224, 0.1) 0%, transparent 42%),
		radial-gradient(circle at 88% 100%, rgba(21, 101, 168, 0.12) 0%, transparent 38%);
	pointer-events: none;
	z-index: 0;
}

.elementor-192 .elementor-element-d6a291f > .elementor-container {
	position: relative;
	z-index: 2;
	max-width: 1180px !important;
	margin: 0 auto !important;
}

.elementor-192 .elementor-element-d6a291f > .elementor-container > .elementor-column {
	width: 25% !important;
}

.elementor-192 .elementor-element-c7a6a0e img {
	width: auto !important;
	max-width: 220px !important;
	max-height: 72px !important;
	object-fit: contain !important;
	filter: brightness(1.05) !important;
	opacity: 0.96 !important;
}

.elementor-192 .elementor-element-c7a6a0e {
	text-align: left !important;
}

.elementor-192 .elementor-element-02dd991,
.elementor-192 .elementor-element-668c340,
.elementor-192 .elementor-element-e0d201b {
	text-align: left !important;
}

.elementor-192 .elementor-element-02dd991 .elementor-heading-title,
.elementor-192 .elementor-element-668c340 .elementor-heading-title,
.elementor-192 .elementor-element-e0d201b .elementor-heading-title {
	color: #fff !important;
	font-family: var(--es-font) !important;
	font-size: 0.95rem !important;
	font-weight: 800 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	margin: 0 0 0.75rem !important;
	padding-bottom: 0.5rem !important;
	border-bottom: 2px solid rgba(94, 196, 224, 0.55) !important;
	display: inline-block !important;
}

.elementor-192 .elementor-element-d2b7b5f .aux-burger-box {
	display: none !important;
}

.elementor-192 .elementor-element-d2b7b5f ul.aux-master-menu.aux-vertical,
.elementor-1942 .elementor-element-d2b7b5f ul.aux-master-menu.aux-vertical {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	column-gap: 0.75rem !important;
	row-gap: 0.1rem !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	width: 100% !important;
}

.elementor-192 .elementor-element-d2b7b5f ul.aux-master-menu.aux-vertical > .menu-item:not(.lang-item),
.elementor-1942 .elementor-element-d2b7b5f ul.aux-master-menu.aux-vertical > .menu-item:not(.lang-item) {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
	float: none !important;
}

.elementor-192 .elementor-element-d2b7b5f,
.elementor-192 .elementor-element-d2b7b5f .aux-vertical .aux-menu-depth-0 .aux-item-content {
	text-align: left !important;
}

.elementor-192 .elementor-element-d2b7b5f .aux-menu-depth-0 > .aux-item-content {
	color: rgba(255, 255, 255, 0.72) !important;
	font-family: var(--es-font) !important;
	font-size: 0.88rem !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
	padding: 0.12rem 0 !important;
	transition: color 0.2s var(--es-ease), transform 0.2s var(--es-ease) !important;
}

.elementor-192 .elementor-element-d2b7b5f .aux-menu-depth-0 > .aux-item-content:hover,
.elementor-192 .elementor-element-d2b7b5f .aux-menu-depth-0.current-menu-item > .aux-item-content {
	color: var(--es-accent-cyan) !important;
	transform: translateX(3px);
}

.elementor-192 .elementor-element-d2b7b5f .menu-item.lang-item,
.elementor-1942 .elementor-element-d2b7b5f .menu-item.lang-item {
	display: inline-block !important;
	width: auto !important;
	grid-column: 1 / -1 !important;
	margin: 0.55rem 0.35rem 0 0 !important;
}

.elementor-192 .elementor-element-d2b7b5f .menu-item.lang-item .aux-item-content {
	padding: 0.45rem 0.65rem !important;
	background: rgba(255, 255, 255, 0.06) !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 8px !important;
}

.elementor-192 .elementor-element-d2b7b5f .menu-item.lang-item .aux-item-content:hover {
	background: rgba(94, 196, 224, 0.16) !important;
	border-color: rgba(94, 196, 224, 0.45) !important;
	transform: none !important;
}

.elementor-192 .elementor-element-d2b7b5f .menu-item.lang-item img {
	display: block !important;
	width: 22px !important;
	height: auto !important;
	border-radius: 2px !important;
}

.elementor-192 .elementor-element-59e8a31 .elementor-icon-list-item,
.elementor-192 .elementor-element-b511ce6,
.elementor-192 .elementor-element-b511ce6 p {
	color: rgba(255, 255, 255, 0.72) !important;
	font-family: var(--es-font) !important;
	font-size: 0.95rem !important;
	line-height: 1.65 !important;
	text-align: left !important;
}

.elementor-192 .elementor-element-59e8a31 .elementor-icon-list-text {
	transition: color 0.2s var(--es-ease) !important;
}

.elementor-192 .elementor-element-59e8a31 .elementor-icon-list-item:hover .elementor-icon-list-text {
	color: var(--es-accent-cyan) !important;
}

.elementor-192 .elementor-element-b511ce6 > .elementor-widget-container {
	padding: 0 !important;
}

.elementor-192 .elementor-element-35c437b {
	padding: 0 5% 2rem !important;
	background: #0d1014 !important;
}

.elementor-192 .elementor-element-ac40d0c > .elementor-element-populated {
	border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
	padding: 1.35rem 0 0 !important;
}

.elementor-192 .elementor-element-eea698e small {
	color: rgba(255, 255, 255, 0.55) !important;
	font-family: var(--es-font) !important;
	font-size: 0.88rem !important;
	line-height: 1.5 !important;
}

.elementor-192 .elementor-element-31a384e,
.elementor-1942 .elementor-element-31a384e,
.es-footer-social-hidden {
	display: none !important;
}

.elementor-192 .elementor-element-31a384e .elementor-social-icon {
	background: rgba(255, 255, 255, 0.08) !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	transition: background 0.25s, border-color 0.25s, transform 0.25s !important;
}

.elementor-192 .elementor-element-31a384e .elementor-social-icon i {
	color: rgba(255, 255, 255, 0.85) !important;
}

.elementor-192 .elementor-element-31a384e .elementor-social-icon:hover {
	background: rgba(94, 196, 224, 0.2) !important;
	border-color: rgba(94, 196, 224, 0.55) !important;
	transform: translateY(-2px) !important;
}

.elementor-location-footer a {
	color: rgba(255, 255, 255, 0.72) !important;
}

.elementor-location-footer a:hover {
	color: var(--es-accent-cyan) !important;
}

@media (max-width: 1024px) {
	.elementor-192 .elementor-element-d6a291f > .elementor-container > .elementor-column {
		width: 50% !important;
		margin-bottom: 2rem !important;
	}

	.elementor-192 .elementor-element-d6a291f {
		padding: 3.5rem 5% 2rem !important;
	}
}

@media (max-width: 767px) {
	.elementor-192 .elementor-element-d6a291f > .elementor-container > .elementor-column {
		width: 100% !important;
	}

	.elementor-192 .elementor-element-c7a6a0e {
		text-align: center !important;
		margin-bottom: 0.5rem !important;
	}

	.elementor-192 .elementor-element-c7a6a0e img {
		margin: 0 auto !important;
	}
}

/* ── Products page ───────────────────────────────────── */
.page-id-861,
.page-id-2008 {
	background: var(--es-white);
}

/* Elementor columns ship with square 1px borders — clip to card radius */
.es-products-catalog .es-products-row .elementor-column,
.es-products-manuals .elementor-column,
.es-products-reports .elementor-column,
.es-hiw-manuals .elementor-column,
.es-hiw-manuals-grid .elementor-column,
.es-hiw-benefits .elementor-column,
.es-hiw-benefits-row .elementor-column {
	border: none !important;
	border-radius: 18px !important;
	overflow: hidden !important;
	box-shadow: none !important;
}

.es-products-reports .elementor-column {
	border-radius: 16px !important;
}

.es-products-catalog .elementor-column > .elementor-widget-wrap.elementor-element-populated,
.es-products-manuals .elementor-column > .elementor-widget-wrap.elementor-element-populated,
.es-products-reports .elementor-column > .elementor-widget-wrap.elementor-element-populated,
.es-hiw-manuals .elementor-column > .elementor-widget-wrap.elementor-element-populated,
.es-hiw-manuals-grid .elementor-column > .elementor-widget-wrap.elementor-element-populated {
	border: none !important;
	border-radius: inherit !important;
	overflow: hidden !important;
	background: transparent !important;
}

.es-products-catalog .elementor-column > .elementor-background-overlay,
.es-products-manuals .elementor-column > .elementor-background-overlay,
.es-products-reports .elementor-column > .elementor-background-overlay,
.es-hiw-manuals .elementor-column > .elementor-background-overlay,
.es-hiw-manuals-grid .elementor-column > .elementor-background-overlay {
	border-radius: inherit !important;
}

.es-products-catalog .elementor-widget-aux_text .elementor-widget-container,
.es-products-manuals .elementor-widget-aux_text .elementor-widget-container,
.es-products-reports .elementor-widget-aux_text .elementor-widget-container,
.es-hiw-manuals .elementor-widget-aux_text .elementor-widget-container,
.es-hiw-manuals-grid .elementor-widget-aux_text .elementor-widget-container {
	border: none !important;
	border-radius: inherit !important;
	overflow: hidden !important;
	padding: 0 !important;
}

.es-products-catalog .elementor-widget-aux_text .aux-text-inner,
.es-products-manuals .elementor-widget-aux_text .aux-text-inner,
.es-products-reports .elementor-widget-aux_text .aux-text-inner,
.es-hiw-manuals .elementor-widget-aux_text .aux-text-inner,
.es-hiw-manuals-grid .elementor-widget-aux_text .aux-text-inner {
	border: none !important;
}

.es-products-catalog .elementor-widget-aux_text .aux-widget-advanced-text,
.es-products-manuals .elementor-widget-aux_text .aux-widget-advanced-text,
.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text,
.es-hiw-manuals .elementor-widget-aux_text .aux-widget-advanced-text,
.es-hiw-manuals-grid .elementor-widget-aux_text .aux-widget-advanced-text {
	border-radius: inherit !important;
}

.es-products-hero-bg {
	position: relative !important;
	margin-top: 0 !important;
	padding: 7rem 5% 11rem !important;
	overflow: hidden !important;
}

.es-products-hero-bg:not(.elementor-motion-effects-element-type-background),
.es-products-hero-bg > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-position: center center !important;
	background-size: cover !important;
	animation: es-about-hero-kenburns 24s ease-in-out infinite alternate;
}

.es-products-hero-bg > .elementor-background-overlay {
	background:
		linear-gradient(180deg, rgba(6, 20, 32, 0.6) 0%, rgba(10, 40, 64, 0.78) 55%, rgba(8, 28, 42, 0.92) 100%) !important;
	opacity: 1 !important;
}

.es-products-catalog {
	position: relative;
	z-index: 3;
	padding: 0 5% !important;
	margin-top: -7rem !important;
	margin-bottom: 0 !important;
	padding-bottom: 3rem !important;
}

.es-products-catalog > .elementor-container {
	max-width: 1180px !important;
	margin: 0 auto !important;
}

.es-products-catalog .elementor-element-40570c65 > .elementor-widget-wrap.elementor-element-populated {
	border-radius: 26px !important;
	overflow: hidden !important;
	padding: 0 !important;
	box-shadow:
		0 32px 70px rgba(8, 28, 42, 0.35),
		0 0 0 1px rgba(255, 255, 255, 0.1) inset !important;
	background-color: #2e7d96 !important;
	background-image: linear-gradient(
		135deg,
		#1e3a5f 0%,
		#2e7d96 30%,
		var(--es-accent-blue) 58%,
		var(--es-accent-cyan) 100%
	) !important;
}

.es-products-catalog .elementor-element-28698ea3 .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	padding: 3rem 2.5rem 1.75rem !important;
}

.es-products-catalog .elementor-element-28698ea3 .aux-modern-heading-primary {
	color: rgba(255, 255, 255, 0.88) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	line-height: 1.4 !important;
	margin-bottom: 0.75rem !important;
}

.es-products-catalog .elementor-element-28698ea3 .aux-modern-heading-secondary,
.es-products-catalog .elementor-element-28698ea3 .aux-head-before {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	background: none !important;
	font-size: clamp(2rem, 4vw, 3rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	letter-spacing: -0.03em !important;
	text-transform: none !important;
	max-width: 20ch !important;
	margin: 0 auto !important;
}

.es-products-catalog .es-products-row {
	padding: 0 1.5rem 1.25rem !important;
}

.es-products-catalog .es-products-row + .es-products-row {
	padding-bottom: 2rem !important;
}

.es-products-catalog .es-products-row > .elementor-container {
	gap: 1rem;
	align-items: stretch !important;
}

.es-products-catalog .es-products-row .elementor-column > .elementor-widget-wrap {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
}

/* Product model cards — photo top, solid spec panel bottom */
.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) {
	display: flex !important;
	flex: 1 1 auto !important;
	height: 100% !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .elementor-widget-container {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
	width: 100% !important;
	min-height: 440px !important;
	height: 100% !important;
	border-radius: 18px !important;
	overflow: hidden !important;
	background-color: #edf3f9 !important;
	border: 1px solid rgba(21, 101, 168, 0.12) !important;
	box-shadow: 0 16px 40px rgba(8, 28, 42, 0.2) !important;
	transition:
		transform 0.35s var(--es-ease),
		box-shadow 0.35s var(--es-ease),
		border-color 0.35s var(--es-ease) !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .elementor-widget-container.es-product-card--photo {
	background-image: none !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .elementor-widget-container.es-product-card--photo::before {
	content: "";
	display: block;
	flex: 1 1 auto;
	width: 100%;
	min-height: 230px;
	padding: 1rem 0.85rem 0.75rem;
	box-sizing: border-box;
	background-color: #edf3f9;
	background-image: var(--es-product-bg);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	border-bottom: 1px solid rgba(21, 101, 168, 0.1);
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .widget-container,
.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .aux-widget-advanced-text {
	display: flex !important;
	flex-direction: column !important;
	flex: 0 0 auto !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .widget-container {
	background: linear-gradient(180deg, #2e7d96 0%, #1e3a5f 100%) !important;
	border-top: 2px solid rgba(94, 196, 224, 0.4) !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .aux-widget-advanced-text::after {
	display: none !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .aux-text-inner,
.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .aux-text-widget-content {
	position: relative !important;
	z-index: 2 !important;
	flex-shrink: 0 !important;
	margin-top: 0 !important;
	width: 100% !important;
	padding: 0.95rem 1.05rem 1.05rem !important;
	background: transparent !important;
	border: none !important;
	text-align: left !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .col-title,
.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .widget-title {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	font-family: var(--es-font) !important;
	font-size: 1.18rem !important;
	font-weight: 800 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.02em !important;
	text-transform: none !important;
	margin: 0 0 0.55rem !important;
	text-shadow: none !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .widget-content,
.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .widget-content p {
	margin: 0 !important;
	color: rgba(230, 244, 252, 0.92) !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .widget-content ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .widget-content li {
	display: flex !important;
	align-items: flex-start !important;
	gap: 0.55rem !important;
	margin: 0 0 0.38rem !important;
	padding: 0 !important;
	color: rgba(230, 244, 252, 0.92) !important;
	-webkit-text-fill-color: rgba(230, 244, 252, 0.92) !important;
	font-family: var(--es-font) !important;
	font-size: 0.8rem !important;
	line-height: 1.45 !important;
	text-align: left !important;
	text-transform: none !important;
	text-shadow: none !important;
	list-style: none !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .widget-content li::marker {
	content: none !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .widget-content li::before {
	content: "" !important;
	flex: 0 0 5px !important;
	width: 5px !important;
	height: 5px !important;
	margin-top: 0.58em !important;
	border-radius: 50% !important;
	background: var(--es-accent-cyan, #5ec4e0) !important;
	position: static !important;
	left: auto !important;
	top: auto !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .widget-content li:last-child {
	margin-bottom: 0 !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .aux-text-widget-footer {
	display: none !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .elementor-widget-container:hover {
	transform: translateY(-5px) !important;
	border-color: rgba(94, 196, 224, 0.55) !important;
	box-shadow:
		0 22px 48px rgba(8, 28, 42, 0.34),
		0 0 0 1px rgba(94, 196, 224, 0.2) !important;
}

.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2) .aux-widget-advanced-text:hover {
	transform: none !important;
	border-color: transparent !important;
	box-shadow: none !important;
}

/* Feature intro card — same split layout as product cards */
.es-products-catalog .elementor-element-9f8fbf2,
.es-products-catalog .elementor-element-0a8d217 {
	display: flex !important;
	flex: 1 1 auto !important;
	height: 100% !important;
}

.es-products-catalog .elementor-element-9f8fbf2 .elementor-widget-container,
.es-products-catalog .elementor-element-0a8d217 .elementor-widget-container {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
	width: 100% !important;
	min-height: 440px !important;
	height: 100% !important;
	border-radius: 18px !important;
	overflow: hidden !important;
	background-color: #edf3f9 !important;
	border: 1px solid rgba(21, 101, 168, 0.12) !important;
	box-shadow: 0 16px 40px rgba(8, 28, 42, 0.2) !important;
}

.es-products-catalog .elementor-element-9f8fbf2 .elementor-widget-container::before,
.es-products-catalog .elementor-element-0a8d217 .elementor-widget-container::before {
	content: "";
	display: block;
	flex: 1 1 auto;
	width: 100%;
	min-height: 230px;
	padding: 1rem 0.85rem 0.75rem;
	box-sizing: border-box;
	background-color: #edf3f9;
	background-image:
		linear-gradient(135deg, rgba(94, 196, 224, 0.18) 0%, rgba(21, 101, 168, 0.12) 100%),
		url("/wp-content/uploads/2026/06/chlorination-equipment.png");
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	border-bottom: 1px solid rgba(21, 101, 168, 0.1);
}

.es-products-catalog .elementor-element-9f8fbf2 .widget-container,
.es-products-catalog .elementor-element-0a8d217 .widget-container {
	flex: 0 0 auto !important;
	width: 100% !important;
	background: linear-gradient(180deg, #2e7d96 0%, #1e3a5f 100%) !important;
	border-top: 2px solid rgba(94, 196, 224, 0.4) !important;
}

.es-products-catalog .elementor-element-9f8fbf2 .aux-widget-advanced-text,
.es-products-catalog .elementor-element-0a8d217 .aux-widget-advanced-text {
	display: flex !important;
	flex-direction: column !important;
	flex: 0 0 auto !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: none !important;
	box-shadow: none !important;
}

.es-products-catalog .elementor-element-9f8fbf2 .aux-widget-advanced-text::after,
.es-products-catalog .elementor-element-0a8d217 .aux-widget-advanced-text::after {
	display: none !important;
}

.es-products-catalog .elementor-element-9f8fbf2 .aux-text-inner,
.es-products-catalog .elementor-element-9f8fbf2 .aux-text-widget-content,
.es-products-catalog .elementor-element-0a8d217 .aux-text-inner,
.es-products-catalog .elementor-element-0a8d217 .aux-text-widget-content {
	padding: 1rem 1.05rem 1.1rem !important;
	text-align: center !important;
	background: transparent !important;
}

.es-products-catalog .elementor-element-9f8fbf2 .widget-content,
.es-products-catalog .elementor-element-9f8fbf2 .widget-content p,
.es-products-catalog .elementor-element-0a8d217 .widget-content,
.es-products-catalog .elementor-element-0a8d217 .widget-content p {
	margin: 0 !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	font-size: 0.92rem !important;
	font-weight: 700 !important;
	line-height: 1.5 !important;
	text-align: center !important;
	text-transform: none !important;
}

.es-products-catalog .elementor-element-9f8fbf2 .aux-text-widget-footer,
.es-products-catalog .elementor-element-0a8d217 .aux-text-widget-footer {
	display: none !important;
}

/* AC-5 Solar — full product visible in photo zone */
.es-products-catalog .elementor-element-a5s0en2 .elementor-widget-container.es-product-card--photo::before,
.es-products-catalog .elementor-element-a5s0es2 .elementor-widget-container.es-product-card--photo::before {
	background-size: contain !important;
	background-position: center center !important;
}

/* Technology */
.es-products-tech {
	position: relative;
	overflow: hidden;
	padding: 5.5rem 5% !important;
	margin-top: 1rem !important;
	background:
		linear-gradient(180deg, #f8fbfd 0%, #fff 50%, #f4f8fb 100%) !important;
}

.es-products-tech .elementor-element-2a792b9 .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	margin-bottom: 2.5rem !important;
}

.es-products-tech .elementor-element-2a792b9 .aux-modern-heading-primary {
	color: var(--es-accent-blue) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
	margin-bottom: 0.65rem !important;
}

.es-products-tech .elementor-element-2a792b9 .aux-modern-heading-secondary {
	color: var(--es-brand) !important;
	font-size: clamp(1.85rem, 3.2vw, 2.65rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	text-transform: none !important;
	max-width: 24ch !important;
	margin: 0 auto !important;
}

.es-products-tech .elementor-element-3fee2c2 > .elementor-container {
	max-width: 1100px !important;
	margin: 0 auto !important;
	gap: 1.5rem;
	align-items: stretch !important;
}

.es-products-tech .elementor-element-ded6f3e > .elementor-widget-wrap.elementor-element-populated,
.es-products-tech .elementor-element-516f28a > .elementor-widget-wrap.elementor-element-populated {
	background: #fff !important;
	border: 1px solid var(--es-border) !important;
	border-radius: 22px !important;
	padding: 0 !important;
	overflow: hidden !important;
	box-shadow: var(--es-shadow) !important;
	height: 100%;
}

.es-products-tech .es-products-tech-image .elementor-widget-container {
	position: relative !important;
	overflow: hidden !important;
	line-height: 0 !important;
}

.es-products-tech .es-products-tech-image img {
	display: block !important;
	width: 100% !important;
	height: 220px !important;
	object-fit: cover !important;
	object-position: center 42% !important;
	transition:
		transform 0.45s var(--es-ease),
		filter 0.45s var(--es-ease) !important;
}

.es-products-tech .es-products-tech-photo .elementor-widget-container::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(
		180deg,
		rgba(8, 28, 42, 0.04) 0%,
		rgba(8, 28, 42, 0) 40%,
		rgba(8, 28, 42, 0.12) 100%
	);
	z-index: 1;
}

.es-products-tech .es-products-tech-photo img {
	display: block !important;
	width: 100% !important;
	height: 300px !important;
	object-fit: cover !important;
	object-position: center center !important;
	filter: contrast(1.04) saturate(1.05) !important;
	transition: transform 0.45s var(--es-ease) !important;
}

.es-products-tech .es-products-tech-photo:hover img {
	transform: scale(1.03) !important;
}

.es-products-tech .elementor-element-esprdimg1 .elementor-widget-container {
	border-bottom: 3px solid var(--es-accent-cyan) !important;
}

.es-products-tech .elementor-element-esprdimg2.es-products-tech-image img,
.es-products-tech .elementor-element-esprdimg2 .es-products-tech-image img {
	object-fit: cover !important;
	padding: 0 !important;
	background: transparent !important;
}

.es-products-tech .elementor-element-5938a54 > .elementor-widget-container,
.es-products-tech .elementor-element-a161e93 > .elementor-widget-container {
	padding: 1.75rem 2rem 2rem !important;
	background: #fff !important;
}

.es-products-tech .elementor-element-5938a54 .aux-modern-heading-primary,
.es-products-tech .elementor-element-a161e93 .aux-modern-heading-primary {
	color: var(--es-accent-blue) !important;
	font-size: clamp(1.15rem, 2vw, 1.4rem) !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	text-transform: none !important;
	margin-bottom: 0.85rem !important;
}

.es-products-tech .elementor-element-5938a54 .aux-modern-heading-description,
.es-products-tech .elementor-element-a161e93 .aux-modern-heading-description,
.es-products-tech .elementor-element-5938a54 .aux-modern-heading-description p,
.es-products-tech .elementor-element-a161e93 .aux-modern-heading-description p {
	color: var(--es-muted) !important;
	font-size: 1rem !important;
	line-height: 1.75 !important;
}

.es-products-tech .elementor-element-503f65b {
	text-align: center !important;
	padding: 0 2rem 2rem !important;
}

.es-products-tech .elementor-element-503f65b .elementor-button {
	display: inline-flex !important;
	align-items: center !important;
	padding: 0.95rem 2rem !important;
	background: var(--es-accent-cyan) !important;
	color: var(--es-brand) !important;
	border-radius: 999px !important;
	font-family: var(--es-font) !important;
	font-size: 0.82rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	box-shadow: 0 10px 28px rgba(94, 196, 224, 0.35) !important;
	transition: transform 0.25s var(--es-ease), box-shadow 0.25s var(--es-ease) !important;
}

.es-products-tech .elementor-element-503f65b .elementor-button:hover {
	transform: translateY(-3px) !important;
	background: var(--es-accent-blue) !important;
	color: #fff !important;
}

/* Manuals */
.es-products-manuals {
	position: relative;
	overflow: hidden;
	padding: 5rem 5% !important;
	background:
		linear-gradient(180deg, #1e3a5f 0%, #2e7d96 42%, #3a8fa8 100%) !important;
}

.es-products-manuals::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 18% 0%, rgba(94, 196, 224, 0.22) 0%, transparent 42%),
		radial-gradient(circle at 82% 100%, rgba(255, 255, 255, 0.06) 0%, transparent 38%);
	pointer-events: none;
}

.es-products-manuals > .elementor-container {
	position: relative;
	z-index: 1;
	max-width: 1100px !important;
	margin: 0 auto !important;
}

.es-products-manuals .elementor-element-2bcfbf5 .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	margin-bottom: 2.5rem !important;
}

.es-products-manuals .elementor-element-2bcfbf5 .aux-modern-heading-primary {
	color: rgba(255, 255, 255, 0.75) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
}

.es-products-manuals .elementor-element-2bcfbf5 .aux-modern-heading-secondary {
	color: #fff !important;
	font-size: clamp(1.85rem, 3.2vw, 2.65rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	text-transform: none !important;
}

.es-products-manuals .elementor-element-91b70a7 > .elementor-container {
	gap: 1.25rem;
}

.es-products-manuals .elementor-widget-aux_text .aux-widget-advanced-text {
	background: rgba(255, 255, 255, 0.08) !important;
	border: 1px solid rgba(255, 255, 255, 0.16) !important;
	border-radius: 18px !important;
	padding: 2rem 1.75rem !important;
	min-height: 220px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: space-between !important;
	transition: transform 0.3s var(--es-ease), background 0.3s var(--es-ease) !important;
}

.es-products-manuals .elementor-widget-aux_text .aux-text-widget-header {
	margin-bottom: 0 !important;
}

.es-products-manuals .elementor-widget-aux_text .aux-ico-box {
	width: 92px !important;
	height: 92px !important;
	min-width: 92px !important;
	min-height: 92px !important;
	margin: 0 auto 1.25rem !important;
	padding: 0 !important;
	border-radius: 18px !important;
	overflow: hidden !important;
	background: rgba(255, 255, 255, 0.14) !important;
	border: 1px solid rgba(255, 255, 255, 0.22) !important;
	box-shadow: 0 10px 24px rgba(8, 28, 42, 0.18) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.es-products-manuals .elementor-widget-aux_text .aux-ico-box img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	border-radius: inherit !important;
}

.es-products-manuals .elementor-widget-aux_text .aux-ico-box .aux-ico {
	color: var(--es-accent-cyan) !important;
	font-size: 2.1rem !important;
	line-height: 1 !important;
}

.es-products-manuals .elementor-widget-aux_text .aux-widget-advanced-text:hover {
	transform: translateY(-4px) !important;
	background: rgba(255, 255, 255, 0.14) !important;
	border-color: rgba(94, 196, 224, 0.45) !important;
}

.es-products-manuals .elementor-widget-aux_text .col-title,
.es-products-manuals .elementor-widget-aux_text .widget-title {
	color: #fff !important;
	font-size: 1.2rem !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
}

.es-products-manuals .elementor-widget-aux_text .aux-button,
.es-products-manuals .elementor-widget-aux_text .aux-text-widget-footer a {
	display: inline-flex !important;
	align-items: center !important;
	margin-top: 1.25rem !important;
	padding: 0.7rem 1.35rem !important;
	background: var(--es-accent-cyan) !important;
	color: var(--es-brand) !important;
	border-radius: 999px !important;
	font-family: var(--es-font) !important;
	font-size: 0.75rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
}

/* Reports */
.es-products-reports {
	padding: 5rem 5% 6rem !important;
	background: var(--es-bg-alt) !important;
}

.es-products-reports .elementor-element-5147644 .aux-widget-inner,
.es-products-reports .elementor-element-d7ed9e6 .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	margin-bottom: 2.5rem !important;
}

.es-products-reports .elementor-element-5147644 .aux-modern-heading-primary,
.es-products-reports .elementor-element-d7ed9e6 .aux-modern-heading-primary {
	color: var(--es-accent-blue) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
}

.es-products-reports .elementor-element-5147644 .aux-modern-heading-secondary,
.es-products-reports .elementor-element-d7ed9e6 .aux-modern-heading-secondary {
	color: var(--es-brand) !important;
	font-size: clamp(1.85rem, 3.2vw, 2.65rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	text-transform: none !important;
}

.es-products-reports .elementor-element-083b644 > .elementor-container,
.es-products-reports .elementor-element-27b8b50 > .elementor-container,
.elementor-861 .es-products-reports .elementor-element.elementor-element-083b644 > .elementor-container,
.elementor-861 .es-products-reports .elementor-element.elementor-element-27b8b50 > .elementor-container {
	max-width: 1240px !important;
	margin: 0 auto !important;
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	justify-content: space-between !important;
	gap: 1rem !important;
	width: 100% !important;
}

.es-products-reports .elementor-element-083b644 > .elementor-container > .elementor-column,
.es-products-reports .elementor-element-27b8b50 > .elementor-container > .elementor-column,
.elementor-861 .es-products-reports .elementor-element.elementor-element-083b644 > .elementor-container > .elementor-column,
.elementor-861 .es-products-reports .elementor-element.elementor-element-27b8b50 > .elementor-container > .elementor-column {
	flex: 1 1 0 !important;
	width: 0 !important;
	min-width: 0 !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.es-products-reports .elementor-element-083b644 .widget-content,
.es-products-reports .elementor-element-27b8b50 .widget-content,
.elementor-861 .es-products-reports .elementor-element.elementor-element-083b644 .widget-content,
.elementor-861 .es-products-reports .elementor-element.elementor-element-27b8b50 .widget-content {
	max-width: none !important;
	margin: 0 auto !important;
}

.es-products-reports .elementor-element-083b644 svg,
.es-products-reports .elementor-element-27b8b50 svg,
.elementor-861 .es-products-reports .elementor-element.elementor-element-083b644 svg,
.elementor-861 .es-products-reports .elementor-element.elementor-element-27b8b50 svg {
	min-width: 0 !important;
	min-height: 0 !important;
}

.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text {
	position: relative !important;
	background: #fff !important;
	border: 1px solid var(--es-border) !important;
	border-radius: 18px !important;
	padding: 1.35rem 0.9rem 1.15rem !important;
	min-height: 230px !important;
	height: 100% !important;
	box-shadow: var(--es-shadow) !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	overflow: hidden !important;
	transition: transform 0.3s var(--es-ease), box-shadow 0.3s var(--es-ease) !important;
}

.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text::before {
	content: "" !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	height: 3px !important;
	background: linear-gradient(90deg, var(--es-accent-cyan), var(--es-accent-blue)) !important;
}

.es-products-reports .elementor-widget-aux_text .aux-text-widget-header {
	margin-bottom: 0 !important;
}

.es-products-reports .elementor-widget-aux_text .aux-ico-box {
	width: 64px !important;
	height: 64px !important;
	min-width: 64px !important;
	min-height: 64px !important;
	margin: 0.35rem auto 0.85rem !important;
	padding: 0 !important;
	border-radius: 16px !important;
	background: linear-gradient(
		145deg,
		rgba(94, 196, 224, 0.24) 0%,
		rgba(21, 101, 168, 0.08) 100%
	) !important;
	border: 1px solid rgba(21, 101, 168, 0.14) !important;
	box-shadow: none !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.es-products-reports .elementor-widget-aux_text .aux-ico-box svg {
	display: block !important;
	width: 30px !important;
	height: 30px !important;
}

.es-products-reports .elementor-widget-aux_text .aux-ico-box .aux-ico {
	display: none !important;
}

.es-products-reports .elementor-widget-aux_text .aux-text-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	flex: 1 1 auto !important;
	width: 100% !important;
}

.es-products-reports .elementor-element-083b644 .elementor-column-wrap::before,
.es-products-reports .elementor-element-27b8b50 .elementor-column-wrap::before,
.elementor-861 .es-products-reports .elementor-element.elementor-element-083b644 .elementor-column-wrap::before,
.elementor-861 .es-products-reports .elementor-element.elementor-element-083b644 .elementor-column-wrap:hover::before,
.elementor-861 .es-products-reports .elementor-element.elementor-element-27b8b50 .elementor-column-wrap::before,
.elementor-861 .es-products-reports .elementor-element.elementor-element-27b8b50 .elementor-column-wrap:hover::before {
	display: none !important;
	content: none !important;
	background: none !important;
	box-shadow: none !important;
}

.es-products-reports .elementor-widget-aux_text .aux-ico-box svg path,
.es-products-reports .elementor-widget-aux_text .aux-ico-box svg circle,
.es-products-reports .elementor-widget-aux_text .aux-ico-box svg line,
.es-products-reports .elementor-widget-aux_text .aux-ico-box svg polyline,
.elementor-861 .es-products-reports .elementor-element.elementor-element-083b644 .aux-widget-advanced-text svg path,
.elementor-861 .es-products-reports .elementor-element.elementor-element-083b644 .aux-widget-advanced-text:hover svg path,
.elementor-861 .es-products-reports .elementor-element.elementor-element-27b8b50 .aux-widget-advanced-text svg path,
.elementor-861 .es-products-reports .elementor-element.elementor-element-27b8b50 .aux-widget-advanced-text:hover svg path {
	fill: none !important;
	stroke: #3a8fa8 !important;
	stroke-width: 1.8 !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
}

.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text:hover .aux-ico-box svg path,
.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text:hover .aux-ico-box svg circle {
	stroke: #2e7d96 !important;
}

.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text:hover {
	transform: translateY(-4px) !important;
	box-shadow: 0 18px 44px rgba(14, 61, 98, 0.12) !important;
	background: #fff !important;
}

.es-products-reports .elementor-widget-aux_text .widget-content,
.es-products-reports .elementor-widget-aux_text .widget-content p,
.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text:hover .widget-content,
.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text:hover .widget-content p,
.elementor-861 .es-products-reports .elementor-widget-aux_text:hover .widget-content {
	color: var(--es-brand) !important;
	font-family: var(--es-font) !important;
	font-size: 0.95rem !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	margin: 0 !important;
}

.es-products-reports .elementor-widget-aux_text .aux-button,
.es-products-reports .elementor-widget-aux_text .aux-text-inner .aux-button,
.es-products-reports .elementor-widget-aux_text .aux-text-widget-footer .aux-button,
.es-products-reports .aux-button.aux-white,
.es-products-reports .aux-button.aux-outline {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-top: auto !important;
	padding: 0.65rem 1.15rem !important;
	background: var(--es-brand) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 999px !important;
	box-shadow: none !important;
	font-family: var(--es-font) !important;
	font-size: 0.68rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	transition: background 0.25s var(--es-ease), color 0.25s var(--es-ease) !important;
}

.es-products-reports .aux-button .aux-overlay,
.es-products-reports .aux-button .aux-overlay::before,
.es-products-reports .aux-button .aux-overlay::after {
	display: none !important;
	opacity: 0 !important;
	background: none !important;
}

.es-products-reports .aux-button .aux-text {
	color: #fff !important;
	position: relative !important;
	z-index: 1 !important;
}

.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text:hover .aux-button,
.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text:hover .aux-button.aux-white,
.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text:hover .aux-button.aux-outline,
.es-products-reports .elementor-widget-aux_text .aux-button:hover,
.es-products-reports .elementor-widget-aux_text .aux-text-widget-footer a:hover {
	background: var(--es-accent-blue) !important;
	color: #fff !important;
	box-shadow: none !important;
}

.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text:hover .aux-button .aux-text,
.es-products-reports .elementor-widget-aux_text .aux-button:hover .aux-text {
	color: #fff !important;
}

@media (max-width: 1024px) {
	.es-products-catalog .es-products-row > .elementor-container {
		flex-wrap: wrap !important;
	}

	.es-products-catalog .es-products-row .elementor-column {
		width: 50% !important;
	}

	.es-products-reports .elementor-element-083b644 > .elementor-container,
	.es-products-reports .elementor-element-27b8b50 > .elementor-container,
	.elementor-861 .es-products-reports .elementor-element.elementor-element-083b644 > .elementor-container,
	.elementor-861 .es-products-reports .elementor-element.elementor-element-27b8b50 > .elementor-container,
	.elementor-2008 .es-products-reports .elementor-element.elementor-element-083b644 > .elementor-container,
	.elementor-2008 .es-products-reports .elementor-element.elementor-element-27b8b50 > .elementor-container {
		flex-wrap: wrap !important;
	}

	.es-products-reports .elementor-element-083b644 > .elementor-container > .elementor-column,
	.es-products-reports .elementor-element-27b8b50 > .elementor-container > .elementor-column,
	.elementor-861 .es-products-reports .elementor-element.elementor-element-083b644 > .elementor-container > .elementor-column,
	.elementor-861 .es-products-reports .elementor-element.elementor-element-27b8b50 > .elementor-container > .elementor-column,
	.elementor-2008 .es-products-reports .elementor-element.elementor-element-083b644 > .elementor-container > .elementor-column,
	.elementor-2008 .es-products-reports .elementor-element.elementor-element-27b8b50 > .elementor-container > .elementor-column {
		flex: 1 1 calc(50% - 0.5rem) !important;
		width: calc(50% - 0.5rem) !important;
		max-width: calc(50% - 0.5rem) !important;
	}
}

@media (max-width: 640px) {
	.es-products-reports .elementor-element-083b644 > .elementor-container,
	.es-products-reports .elementor-element-27b8b50 > .elementor-container,
	.elementor-861 .es-products-reports .elementor-element.elementor-element-083b644 > .elementor-container,
	.elementor-861 .es-products-reports .elementor-element.elementor-element-27b8b50 > .elementor-container,
	.elementor-2008 .es-products-reports .elementor-element.elementor-element-083b644 > .elementor-container,
	.elementor-2008 .es-products-reports .elementor-element.elementor-element-27b8b50 > .elementor-container {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		gap: 1rem !important;
	}

	.es-products-reports .elementor-element-083b644 > .elementor-container > .elementor-column,
	.es-products-reports .elementor-element-27b8b50 > .elementor-container > .elementor-column,
	.elementor-861 .es-products-reports .elementor-element.elementor-element-083b644 > .elementor-container > .elementor-column,
	.elementor-861 .es-products-reports .elementor-element.elementor-element-27b8b50 > .elementor-container > .elementor-column,
	.elementor-2008 .es-products-reports .elementor-element.elementor-element-083b644 > .elementor-container > .elementor-column,
	.elementor-2008 .es-products-reports .elementor-element.elementor-element-27b8b50 > .elementor-container > .elementor-column {
		flex: 0 0 auto !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.es-products-reports .elementor-widget-aux_text .aux-widget-advanced-text {
		height: auto !important;
		min-height: 0 !important;
		padding: 1.35rem 1.25rem 1.15rem !important;
	}

	.es-products-reports .aux-button .aux-text {
		white-space: nowrap !important;
		writing-mode: horizontal-tb !important;
	}
}

@media (max-width: 767px) {
	.es-products-hero-bg {
		padding: 5.5rem 4% 8rem !important;
	}

	.es-products-catalog {
		margin-top: -3.5rem !important;
		padding: 0 4% !important;
	}

	.es-products-catalog .es-products-row {
		padding-left: 1rem !important;
		padding-right: 1rem !important;
	}

	.es-products-catalog .es-products-row .elementor-column {
		width: 100% !important;
	}

	.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2):not(.elementor-element-0a8d217) .elementor-widget-container {
		min-height: 380px !important;
	}

	.es-products-catalog .elementor-element-9f8fbf2 .elementor-widget-container,
	.es-products-catalog .elementor-element-0a8d217 .elementor-widget-container {
		min-height: 380px !important;
	}

	.es-products-catalog .elementor-element-9f8fbf2 .elementor-widget-container::before,
	.es-products-catalog .elementor-element-0a8d217 .elementor-widget-container::before,
	.es-products-catalog .elementor-widget-aux_text:not(.elementor-element-9f8fbf2):not(.elementor-element-0a8d217) .elementor-widget-container.es-product-card--photo::before {
		min-height: 200px !important;
		padding: 0.75rem 0.65rem 0.6rem !important;
	}

	.es-products-tech,
	.es-products-manuals,
	.es-products-reports,
	.es-hiw-manuals {
		padding-left: 4% !important;
		padding-right: 4% !important;
	}

	.es-products-tech .elementor-element-3fee2c2 > .elementor-container {
		flex-direction: column !important;
	}
}

/* ── Forms ───────────────────────────────────────────── */
.wpcf7-form-control,
input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
	border-radius: 10px !important;
	border: 1px solid var(--es-border) !important;
	padding: 0.75rem 1rem !important;
}

.wpcf7-form-control:focus,
input:focus,
textarea:focus {
	border-color: var(--es-brand) !important;
	box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.1) !important;
	outline: none !important;
}

.wpcf7-submit,
input[type="submit"] {
	background: var(--es-brand) !important;
	color: var(--es-white) !important;
	border: none !important;
	border-radius: 10px !important;
	padding: 0.8rem 1.75rem !important;
	font-weight: 600 !important;
	transition: background 0.2s, transform 0.2s !important;
}

.wpcf7-submit:hover,
input[type="submit"]:hover {
	background: var(--es-brand-mid) !important;
	transform: translateY(-1px);
}

/* ── Inner pages typography ──────────────────────────── */
.elementor-page .elementor-widget-text-editor {
	color: var(--es-muted);
	line-height: 1.75;
}

/* ── Responsive ──────────────────────────────────────── */
@media (max-width: 1024px) {
	.elementor-element-da5db3e > .elementor-container {
		min-height: auto;
		padding-top: 5rem;
		padding-bottom: 3rem;
	}

	.es-hero-slider-nav {
		bottom: 1.25rem;
	}
}

/* ── Applications grid (EN) ──────────────────────────── */
.es-custom-applications-section,
.elementor-element-esappsen,
.elementor-element-esappses {
	padding: 0 !important;
	margin: 0 !important;
}

.es-custom-applications-section > .elementor-container,
.elementor-element-esappsen.elementor-section-boxed > .elementor-container,
.elementor-element-esappses.elementor-section-boxed > .elementor-container {
	max-width: none !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.es-custom-applications-section .elementor-column,
.es-custom-applications-section .elementor-widget-wrap,
.es-custom-applications-section .elementor-widget-html,
.elementor-element-esappsen .elementor-column,
.elementor-element-esappses .elementor-column,
.elementor-element-esappsen .elementor-widget-wrap,
.elementor-element-esappses .elementor-widget-wrap,
.elementor-element-esappsen .elementor-widget-container,
.elementor-element-esappses .elementor-widget-container {
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
	max-width: none !important;
}

.es-product-applications {
	background: var(--es-white);
	padding: 4.5rem 5% 5rem;
	border-top: 1px solid var(--es-border);
}

.es-pa-inner {
	max-width: 1180px;
	margin: 0 auto;
}

.es-pa-eyebrow {
	margin: 0 0 0.75rem;
	text-align: center;
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--es-muted);
}

.es-pa-title {
	margin: 0 0 2.5rem;
	text-align: center;
	font-size: clamp(2rem, 4vw, 2.75rem);
	font-weight: 800;
	line-height: 1.1;
	color: var(--es-ink);
	letter-spacing: -0.02em;
}

.es-pa-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.25rem;
}

.es-pa-card {
	position: relative;
	min-height: 200px;
	border-radius: var(--es-radius-lg);
	overflow: hidden;
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1.5rem;
	transition: transform 0.3s var(--es-ease), box-shadow 0.3s var(--es-ease);
}

.es-pa-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
}

.es-pa-card-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(30, 58, 95, 0.25) 0%, rgba(30, 58, 95, 0.72) 100%);
	transition: background 0.3s;
}

.es-pa-card:hover .es-pa-card-overlay {
	background: linear-gradient(180deg, rgba(30, 58, 95, 0.35) 0%, rgba(30, 58, 95, 0.85) 100%);
}

.es-pa-card-title {
	position: relative;
	z-index: 1;
	margin: 0;
	text-align: center;
	font-size: clamp(1rem, 1.5vw, 1.2rem);
	font-weight: 700;
	line-height: 1.35;
	color: #fff;
	max-width: 90%;
}

/* ── Industrias grid (dark theme) ────────────────────── */
.elementor-element-esappsen,
.elementor-element-esappses {
	background-color: #121212 !important;
}

.elementor-element-esappsen > .elementor-container,
.elementor-element-esappses > .elementor-container,
.elementor-element-esappsen .elementor-column,
.elementor-element-esappses .elementor-column,
.elementor-element-esappsen .elementor-widget-wrap,
.elementor-element-esappses .elementor-widget-wrap {
	background: transparent !important;
}

.es-industrias {
	background: #121212;
	padding: 4.5rem 5% 5rem;
	width: 100%;
	box-sizing: border-box;
}

.es-ind-inner {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
}

.es-ind-title {
	margin: 0 auto 2.5rem;
	font-size: clamp(2rem, 4vw, 2.85rem);
	font-weight: 800;
	line-height: 1.15;
	color: #fff;
	letter-spacing: -0.02em;
	text-align: center !important;
	max-width: 920px;
}

.es-ind-title span {
	color: #5ec4e0;
	font-weight: 800;
}

.es-ind-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1rem;
}

.es-ind-grid--premium {
	gap: 1.35rem;
}

a.es-ind-card--premium,
.es-ind-card--premium {
	width: calc((100% - 2.7rem) / 3);
	max-width: 400px;
	min-width: min(100%, 280px);
}

a.es-ind-card,
.es-ind-card {
	display: flex;
	align-items: center;
	gap: 1.15rem;
	padding: 1.1rem 1.25rem;
	background: #262626;
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 12px;
	box-shadow: none;
	overflow: hidden;
	transition: background 0.25s, border-color 0.25s, transform 0.25s, box-shadow 0.25s;
}

a.es-ind-card--premium,
.es-ind-card--premium {
	flex-direction: column;
	align-items: stretch;
	gap: 0;
	padding: 0;
	border-radius: 14px;
	background: linear-gradient(180deg, #2a2a2a 0%, #222 100%);
}

a.es-ind-card {
	text-decoration: none;
	color: inherit;
	cursor: pointer;
}

a.es-ind-card:focus-visible {
	outline: 2px solid #5ec4e0;
	outline-offset: 3px;
}

.es-ind-card:hover {
	background: #2e3338;
	border-color: rgba(94, 196, 224, 0.45);
	transform: translateY(-2px);
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.35);
}

.es-ind-card--premium:hover {
	background: linear-gradient(180deg, #30353a 0%, #262a2e 100%);
	transform: translateY(-4px);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
}

.es-ind-media {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #1e3a5f;
}

.es-ind-media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(18, 18, 18, 0) 35%, rgba(18, 18, 18, 0.55) 100%);
	opacity: 0.7;
	transition: opacity 0.35s ease;
	pointer-events: none;
}

.es-ind-card--premium .es-ind-photo {
	width: 100%;
	height: 100%;
	min-height: 100%;
	transform: scale(1.03);
}

.es-ind-card--premium:hover .es-ind-photo {
	transform: scale(1.08);
}

.es-ind-card--premium:hover .es-ind-media::after {
	opacity: 0.35;
}

.es-ind-card--premium .es-ind-body {
	padding: 1.15rem 1.2rem 1.25rem;
}

.es-ind-card--premium .es-ind-tag {
	font-size: 0.68rem;
	line-height: 1.35;
	margin-bottom: 0.5rem;
}

.es-ind-card--premium .es-ind-text {
	font-size: 0.9rem;
	line-height: 1.5;
	min-height: 2.85em;
}

.es-ind-link {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	margin-top: 0.85rem;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #5ec4e0;
	opacity: 0.85;
	transition: opacity 0.25s ease, transform 0.25s ease;
}

.es-ind-card--premium:hover .es-ind-link {
	opacity: 1;
	transform: translateX(3px);
}

.es-ind-thumb {
	position: relative;
	flex-shrink: 0;
	width: 108px;
	height: 108px;
	border-radius: 12px;
	overflow: hidden;
	border: 2px solid rgba(94, 196, 224, 0.35);
	background: #1e3a5f;
	transition: border-color 0.35s, box-shadow 0.35s;
}

.es-ind-photo {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transform: scale(1.02);
	filter: saturate(1.06) contrast(1.03);
	transition: transform 0.65s cubic-bezier(0.25, 0.46, 0.45, 0.94), filter 0.4s ease;
	will-change: transform;
}

.es-ind-thumb::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(18, 18, 18, 0.05) 0%, rgba(18, 18, 18, 0.45) 100%);
	opacity: 0.55;
	transition: opacity 0.35s ease;
	pointer-events: none;
}

.es-ind-card:hover .es-ind-thumb {
	border-color: #5ec4e0;
	box-shadow: 0 0 0 3px rgba(94, 196, 224, 0.15);
}

.es-ind-card:hover .es-ind-photo {
	transform: scale(1.14);
	filter: brightness(1.12) saturate(1.08);
}

.es-ind-card:hover .es-ind-thumb::after {
	opacity: 0.2;
}

.es-ind-body {
	flex: 1;
	min-width: 0;
}

.es-ind-tag {
	display: block;
	margin-bottom: 0.35rem;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	color: #5ec4e0;
}

.es-ind-text {
	margin: 0;
	font-size: 0.92rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.88);
	font-weight: 400;
}

.es-ind-text strong {
	color: #fff;
	font-weight: 400;
}

.es-ind-arrow {
	color: #fff;
	margin: 0 0.15rem;
	font-weight: 400;
}

.es-ind-footer {
	margin: 2rem auto 0;
	max-width: 820px;
	font-size: 1.05rem;
	line-height: 1.65;
	color: #fff;
	text-align: center;
}

/* ── Industry detail pages ───────────────────────────── */
body.page .es-industry-page-section,
.es-industry-page-section,
.elementor-element[class*="elementor-element-esind"] {
	background:
		radial-gradient(ellipse 80% 50% at 50% -10%, rgba(94, 196, 224, 0.08), transparent 55%),
		#0d0e0f !important;
}

body[class*="page-id-329"] .aux-primary,
body:has(.es-industry-page-section) .aux-primary,
body:has(.es-industry-page-section) .aux-wrapper {
	background: #0d0e0f !important;
}

body:has(.es-hub-industries-section) .aux-primary,
body:has(.es-hub-industries-section) .aux-wrapper {
	background: #fff !important;
}

.es-industry-page-section.elementor-section-boxed > .elementor-container {
	max-width: none !important;
	width: 100% !important;
}

.es-industry-page-section {
	padding-top: clamp(2.5rem, 5vw, 4.5rem) !important;
	padding-bottom: clamp(2.5rem, 5vw, 4rem) !important;
	position: relative;
	z-index: 2;
}

.es-industry-page-section > .elementor-container,
.es-industry-page-section .elementor-column,
.es-industry-page-section .elementor-widget-wrap {
	background: transparent !important;
}

.es-industry-detail {
	padding: clamp(2rem, 3.5vw, 2.75rem) 0 0;
	color: #fff;
}

.es-industry-shell {
	max-width: 1140px;
	margin: 0 auto;
	padding: 0 5% clamp(4rem, 7vw, 6rem);
}

.es-industry-back {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	margin-top: 0.75rem;
	margin-bottom: 1.75rem;
	padding: 0.45rem 0.85rem;
	border: 1px solid rgba(94, 196, 224, 0.25);
	border-radius: 999px;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: #5ec4e0;
	text-decoration: none;
	background: rgba(94, 196, 224, 0.06);
	transition: background 0.2s, border-color 0.2s, color 0.2s;
}

.es-industry-back:hover {
	color: #fff;
	border-color: rgba(94, 196, 224, 0.55);
	background: rgba(94, 196, 224, 0.14);
}

.es-industry-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	gap: 0;
	margin-bottom: 2rem;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 18px;
	overflow: hidden;
	background: #16181b;
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
}

.es-industry-hero__media {
	position: relative;
	min-height: 340px;
	background: #1a1d21;
	overflow: hidden;
	isolation: isolate;
}

.es-industry-hero__photo {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	filter: saturate(1.05) contrast(1.04);
}

.es-industry-hero__shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(13, 14, 15, 0.08) 0%, rgba(13, 14, 15, 0.42) 100%);
	pointer-events: none;
}

.es-industry-hero__grid {
	position: absolute;
	inset: 0;
	opacity: 0.12;
	background-image:
		linear-gradient(rgba(94, 196, 224, 0.12) 1px, transparent 1px),
		linear-gradient(90deg, rgba(94, 196, 224, 0.12) 1px, transparent 1px);
	background-size: 28px 28px;
	mask-image: linear-gradient(180deg, #000 0%, transparent 75%);
	pointer-events: none;
}

.es-industry-hero__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(1.75rem, 3vw, 2.75rem);
	background:
		linear-gradient(180deg, rgba(22, 24, 27, 0.98) 0%, rgba(18, 20, 22, 1) 100%);
	border-left: 1px solid rgba(255, 255, 255, 0.06);
	margin-left: -1px;
}

.es-industry-hero__brand {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
	margin-bottom: 1.25rem;
}

.es-industry-hero__logo {
	display: inline-flex;
	align-items: center;
	padding: 0.35rem 0.7rem;
	border-radius: 8px;
	background: rgba(94, 196, 224, 0.12);
	border: 1px solid rgba(94, 196, 224, 0.35);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	color: #5ec4e0;
}

.es-industry-hero__badge {
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: rgba(255, 255, 255, 0.55);
	text-transform: uppercase;
}

.es-industry-tag {
	display: inline-block;
	margin-bottom: 0.85rem;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	color: #5ec4e0;
}

.es-industry-title {
	margin: 0 0 0.85rem;
	max-width: 16ch;
	font-size: clamp(1.85rem, 3.2vw, 2.65rem);
	font-weight: 800;
	line-height: 1.08;
	color: #fff;
	letter-spacing: -0.03em;
}

.es-industry-lead {
	display: flex;
	align-items: flex-start;
	gap: 0.4rem;
	margin: 0;
	padding: 0.85rem 1rem;
	border-left: 3px solid #5ec4e0;
	border-radius: 0 10px 10px 0;
	background: rgba(94, 196, 224, 0.08);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.94);
}

.es-industry-lead-arrow {
	flex-shrink: 0;
	margin-right: 0;
	line-height: 1.5;
	color: #5ec4e0;
}

.es-industry-trust {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.85rem;
	margin-bottom: 2.25rem;
}

.es-industry-trust__item {
	padding: 1rem 1.1rem;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 14px;
	background: linear-gradient(180deg, rgba(38, 38, 38, 0.85) 0%, rgba(24, 26, 28, 0.95) 100%);
	text-align: center;
}

.es-industry-trust__item strong {
	display: block;
	margin-bottom: 0.2rem;
	font-size: clamp(1.35rem, 2.2vw, 1.75rem);
	font-weight: 800;
	line-height: 1.1;
	color: #5ec4e0;
	letter-spacing: -0.02em;
}

.es-industry-trust__item span {
	display: block;
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.58);
}

.es-industry-showcase {
	position: relative;
	margin: 0 0 2.75rem;
	padding: clamp(2rem, 4vw, 3rem);
	border-radius: 22px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background:
		radial-gradient(circle at 12% 18%, rgba(255, 92, 48, 0.16) 0%, transparent 42%),
		radial-gradient(circle at 88% 82%, rgba(0, 170, 240, 0.14) 0%, transparent 40%),
		linear-gradient(135deg, #120908 0%, #181b1f 45%, #0d1218 100%);
	box-shadow:
		0 28px 70px rgba(0, 0, 0, 0.42),
		inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.es-industry-showcase--emergency {
	border-color: rgba(255, 92, 48, 0.18);
}

.es-industry-showcase__bg {
	position: absolute;
	inset: 0;
	pointer-events: none;
	overflow: hidden;
}

.es-industry-showcase__orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(70px);
	opacity: 0.55;
	animation: es-industry-showcase-float 14s ease-in-out infinite;
}

.es-industry-showcase__orb--1 {
	width: 260px;
	height: 260px;
	top: -70px;
	left: -40px;
	background: rgba(255, 92, 48, 0.35);
}

.es-industry-showcase__orb--2 {
	width: 220px;
	height: 220px;
	right: -30px;
	bottom: -80px;
	background: rgba(0, 170, 240, 0.28);
	animation-delay: -5s;
}

.es-industry-showcase__scanlines {
	position: absolute;
	inset: 0;
	opacity: 0.08;
	background: repeating-linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.08) 0,
		rgba(255, 255, 255, 0.08) 1px,
		transparent 1px,
		transparent 4px
	);
}

@keyframes es-industry-showcase-float {
	0%,
	100% {
		transform: translate3d(0, 0, 0) scale(1);
	}
	50% {
		transform: translate3d(0, -14px, 0) scale(1.05);
	}
}

.es-industry-showcase__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.15fr);
	gap: clamp(1.5rem, 3vw, 2.5rem);
	align-items: center;
}

.es-industry-showcase__badge {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	margin: 0 0 0.85rem;
	padding: 0.42rem 0.85rem 0.42rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgba(255, 92, 48, 0.35);
	background: rgba(255, 92, 48, 0.12);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #ffb199;
}

.es-industry-showcase__badge-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.6rem;
	height: 1.6rem;
	border-radius: 50%;
	background: linear-gradient(135deg, #ff5c30 0%, #ff8a3d 100%);
	color: #1a0d08;
	box-shadow: 0 6px 18px rgba(255, 92, 48, 0.45);
}

.es-industry-showcase__badge-icon svg {
	width: 0.7rem;
	height: 0.7rem;
	fill: currentColor;
	stroke: none;
	margin-left: 2px;
}

.es-industry-showcase__title {
	margin: 0 0 0.75rem;
	font-size: clamp(1.55rem, 3vw, 2.25rem);
	line-height: 1.12;
	font-weight: 800;
	color: #fff;
	letter-spacing: -0.02em;
}

.es-industry-showcase__lead {
	margin: 0 0 1.1rem;
	max-width: 42ch;
	font-size: 0.98rem;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.76);
}

.es-industry-showcase__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0 0 1rem;
	padding: 0;
	list-style: none;
}

.es-industry-showcase__chips li {
	padding: 0.38rem 0.78rem;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.05);
	font-size: 0.76rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.86);
}

.es-industry-showcase__caption {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0;
	font-size: 0.82rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.58);
}

.es-industry-showcase__pulse {
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background: #ff5c30;
	box-shadow: 0 0 0 0 rgba(255, 92, 48, 0.65);
	animation: es-industry-showcase-pulse 2s ease-out infinite;
	flex-shrink: 0;
}

@keyframes es-industry-showcase-pulse {
	0% {
		box-shadow: 0 0 0 0 rgba(255, 92, 48, 0.65);
	}
	70% {
		box-shadow: 0 0 0 10px rgba(255, 92, 48, 0);
	}
	100% {
		box-shadow: 0 0 0 0 rgba(255, 92, 48, 0);
	}
}

.es-industry-showcase__frame {
	position: relative;
	padding: 0.6rem;
	border-radius: 22px;
	background: linear-gradient(145deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.03) 100%);
	border: 1px solid rgba(255, 255, 255, 0.12);
	box-shadow: 0 24px 55px rgba(0, 0, 0, 0.45);
	transform: perspective(1200px) rotateY(-3deg);
	transition: transform 0.45s ease, box-shadow 0.45s ease;
}

.es-industry-showcase__frame:hover {
	transform: perspective(1200px) rotateY(0deg) translateY(-3px);
	box-shadow:
		0 32px 65px rgba(0, 0, 0, 0.5),
		0 0 40px rgba(255, 92, 48, 0.14);
}

.es-industry-showcase__frame-glow {
	position: absolute;
	inset: -18%;
	background: radial-gradient(circle, rgba(255, 92, 48, 0.18) 0%, transparent 68%);
	pointer-events: none;
	z-index: 0;
}

.es-industry-showcase__frame-ring {
	position: absolute;
	inset: -2px;
	border-radius: 24px;
	padding: 2px;
	background: linear-gradient(135deg, rgba(255, 92, 48, 0.85), rgba(255, 180, 80, 0.35), rgba(0, 170, 240, 0.45));
	-webkit-mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	pointer-events: none;
	z-index: 2;
}

.es-industry-showcase__player {
	position: relative;
	z-index: 1;
	overflow: hidden;
	border-radius: 16px;
	background: #000;
	aspect-ratio: 16 / 9;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.es-industry-showcase__player video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	background: #000;
}

.es-industry-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
	gap: 1.5rem;
	align-items: start;
	margin-bottom: 2.5rem;
}

.es-industry-body p {
	margin: 0 0 1.2rem;
	max-width: 62ch;
	font-size: 1.03rem;
	line-height: 1.8;
	color: rgba(255, 255, 255, 0.86);
}

.es-industry-body p:last-child {
	margin-bottom: 0;
}

.es-industry-quote {
	margin: 1.75rem 0 0;
	padding: 1.15rem 1.25rem;
	border: 1px solid rgba(94, 196, 224, 0.22);
	border-radius: 14px;
	background: rgba(94, 196, 224, 0.06);
	font-size: 0.98rem;
	font-style: normal;
	font-weight: 600;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.92);
}

.es-industry-aside {
	position: sticky;
	top: 110px;
	padding: 1.35rem;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 16px;
	background: #16181b;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.28);
}

.es-industry-aside__title {
	margin: 0 0 1rem;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #5ec4e0;
}

.es-industry-benefits {
	list-style: none;
	margin: 0;
	padding: 0;
}

.es-industry-benefit {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.85rem;
	align-items: start;
	padding: 0.85rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.es-industry-benefit:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.es-industry-benefit__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 10px;
	background: rgba(94, 196, 224, 0.12);
	border: 1px solid rgba(94, 196, 224, 0.28);
	font-size: 0.72rem;
	font-weight: 800;
	color: #5ec4e0;
}

.es-industry-benefit__text {
	font-size: 0.94rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.9);
}

.es-industry-cta-panel {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem 1.5rem;
	padding: 1.5rem 1.65rem;
	border: 1px solid rgba(94, 196, 224, 0.25);
	border-radius: 16px;
	background:
		linear-gradient(135deg, rgba(94, 196, 224, 0.12) 0%, rgba(22, 24, 27, 0.95) 45%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.es-industry-cta-panel__text {
	margin: 0;
	max-width: 34rem;
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.5;
	color: #fff;
}

.es-industry-cta-panel__copy {
	flex: 1 1 20rem;
	min-width: 0;
}

.es-industry-cta-panel__links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem 1rem;
	margin-top: 0.85rem;
}

.es-industry-cta-link {
	font-size: 0.82rem;
	font-weight: 700;
	color: #5ec4e0;
	text-decoration: none;
	transition: color 0.2s;
}

.es-industry-cta-link:hover {
	color: #fff;
}

.es-solution-detail .es-industry-body {
	margin-bottom: 0.25rem;
}

.es-industry-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.9rem 1.45rem;
	border-radius: 999px;
	background: #5ec4e0;
	color: #0d0e0f;
	font-size: 0.92rem;
	font-weight: 800;
	text-decoration: none;
	white-space: nowrap;
	box-shadow: 0 10px 24px rgba(94, 196, 224, 0.25);
	transition: background 0.2s, transform 0.2s, box-shadow 0.2s;
}

.es-industry-cta:hover {
	background: #fff;
	transform: translateY(-1px);
	box-shadow: 0 14px 28px rgba(255, 255, 255, 0.12);
}

/* Footer overlap fix — theme footer uses negative margin for homepage hero overlap */
body:has(.es-industry-page-section) .elementor-element-5c93dcd {
	margin-top: 0 !important;
	padding-top: clamp(3rem, 6vw, 5rem) !important;
}

body:has(.es-industry-page-section) .elementor-element-d6a291f {
	margin-top: 0 !important;
}

@media (max-width: 960px) {
	.es-industry-hero {
		grid-template-columns: 1fr;
	}

	.es-industry-hero__media {
		min-height: 260px;
	}

	.es-industry-hero__content {
		border-left: 0;
		border-top: 1px solid rgba(255, 255, 255, 0.06);
		margin-left: 0;
	}

	.es-industry-title {
		max-width: none;
	}

	.es-industry-layout {
		grid-template-columns: 1fr;
	}

	.es-industry-aside {
		position: static;
	}
}

@media (max-width: 767px) {
	.es-industry-page-section {
		padding-top: clamp(3.75rem, 12vw, 5.5rem) !important;
	}

	.es-industry-detail {
		padding-top: clamp(1.5rem, 4vw, 2.25rem);
	}

	.es-industry-back {
		margin-top: 1.25rem;
		margin-bottom: 1.5rem;
	}

	.es-industry-cta-panel {
		flex-direction: column;
		align-items: stretch;
		text-align: center;
		gap: 1.1rem;
		padding: 1.25rem 1.15rem;
	}

	.es-industry-cta-panel__text {
		font-size: 0.98rem;
	}

	.es-industry-cta {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
		white-space: normal;
		text-align: center;
		line-height: 1.35;
		padding: 0.85rem 1rem;
		border-radius: 14px;
	}
}

@media (max-width: 640px) {
	.es-industry-page-section {
		padding-top: clamp(4rem, 14vw, 6rem) !important;
	}

	.es-industry-detail {
		padding-top: 1.75rem;
	}

	.es-industry-back {
		margin-top: 1.5rem;
	}

	.es-industry-shell {
		padding: 0 5% 3.5rem;
	}

	.es-industry-trust {
		grid-template-columns: 1fr;
	}

	.es-industry-showcase__inner {
		grid-template-columns: 1fr;
	}

	.es-industry-showcase__frame {
		transform: none;
	}

	.es-industry-showcase__frame:hover {
		transform: translateY(-2px);
	}

	.es-industry-cta-panel {
		flex-direction: column;
		align-items: stretch;
		text-align: center;
	}

	.es-industry-cta {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
		white-space: normal;
		text-align: center;
		line-height: 1.35;
		padding: 0.85rem 0.95rem;
		font-size: 0.86rem;
		border-radius: 14px;
	}
}

/* ── Responsive ──────────────────────────────────────── */
@media (max-width: 1024px) {
	.es-pa-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.es-ind-grid,
	.es-ind-grid--premium {
		gap: 1.15rem;
	}

	a.es-ind-card--premium,
	.es-ind-card--premium {
		width: calc((100% - 1.15rem) / 2);
		max-width: 420px;
	}

	.elementor-element-e81ff23 {
		padding: 4rem 0 4.5rem !important;
	}

	.elementor-element-e81ff23 .aux-modern-heading-secondary {
		max-width: none !important;
	}

	.elementor-element-5fb5dee .aux-widget-testimonial,
	.elementor-element-4dc0352 .aux-widget-testimonial,
	.elementor-element-4bc8842 .aux-widget-testimonial {
		margin-top: 3rem !important;
		padding: 4rem 1.5rem 1.75rem !important;
	}
}

@media (max-width: 640px) {
	.es-pa-grid {
		grid-template-columns: 1fr;
	}

	.es-ind-grid {
		gap: 1rem;
	}

	a.es-ind-card--premium,
	.es-ind-card--premium {
		width: 100%;
		max-width: 420px;
	}

	.es-pa-card {
		min-height: 180px;
	}

	.es-product-applications,
	.es-industrias {
		padding: 3rem 5%;
	}
}

@media (max-width: 767px) {
	.elementor-element-c1e9fdb .aux-modern-heading-secondary {
		font-size: 1.85rem !important;
	}

	.elementor-element-e81ff23::after {
		display: none;
	}

	.elementor-element-e81ff23 .elementor-element-715c14b {
		margin-bottom: 2rem !important;
	}

	.elementor-element-5fb5dee,
	.elementor-element-4dc0352,
	.elementor-element-4bc8842 {
		margin-bottom: 1.25rem !important;
	}

	.elementor-element-5fb5dee .aux-widget-testimonial,
	.elementor-element-4dc0352 .aux-widget-testimonial,
	.elementor-element-4bc8842 .aux-widget-testimonial {
		margin-top: 2.75rem !important;
		padding: 3.75rem 1.25rem 1.5rem !important;
	}

	.elementor-element-5fb5dee .aux-testimonial-content,
	.elementor-element-4dc0352 .aux-testimonial-content,
	.elementor-element-4bc8842 .aux-testimonial-content,
	.elementor-element-5fb5dee .aux-testimonial-content p,
	.elementor-element-4dc0352 .aux-testimonial-content p,
	.elementor-element-4bc8842 .aux-testimonial-content p {
		font-size: 1rem !important;
	}
}

/* ── How It Works page ───────────────────────────────── */
.page-id-753,
.page-id-1990 {
	background: var(--es-white);
}

.es-hiw-hero-bg {
	position: relative !important;
	margin-top: 0 !important;
	min-height: clamp(300px, 40vh, 440px) !important;
	padding: clamp(4.5rem, 9vw, 5.5rem) 5% clamp(2.25rem, 4vw, 3rem) !important;
	overflow: hidden !important;
	display: flex !important;
	align-items: center !important;
}

.es-hiw-hero-bg > .elementor-container {
	width: 100% !important;
	max-width: 920px !important;
	margin: 0 auto !important;
	min-height: inherit !important;
}

.es-hiw-hero-bg .es-hiw-hero-column > .elementor-widget-wrap.elementor-element-populated,
.es-hiw-hero-bg .elementor-element-ff82573 > .elementor-widget-wrap.elementor-element-populated {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center !important;
	min-height: 0 !important;
	padding: 0 1.5rem !important;
}

.es-hiw-hero-bg:not(.elementor-motion-effects-element-type-background),
.es-hiw-hero-bg > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-position: center center !important;
	background-size: cover !important;
	animation: es-about-hero-kenburns 24s ease-in-out infinite alternate;
}

.es-hiw-hero-bg > .elementor-background-overlay {
	background:
		linear-gradient(180deg, rgba(6, 20, 32, 0.72) 0%, rgba(10, 40, 64, 0.82) 48%, rgba(8, 28, 42, 0.94) 100%) !important;
	opacity: 1 !important;
}

.es-hiw-page-head-hidden,
.es-hiw-page-head-hidden .elementor-element-a754fa6,
.es-hiw-page-head-hidden .elementor-element-a754fa6 > .elementor-element-populated {
	display: none !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	background: transparent !important;
}

.es-hiw-hero-bg .elementor-element-620d283 > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

.es-hiw-hero-bg .elementor-element-620d283 .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	padding: 0 1.5rem !important;
}

.es-hiw-hero-bg .elementor-element-620d283 .aux-modern-heading-primary,
.elementor-753 .es-hiw-hero-bg .elementor-element-620d283 .aux-modern-heading-primary,
.elementor-1990 .es-hiw-hero-bg .elementor-element-620d283 .aux-modern-heading-primary {
	color: var(--es-accent-cyan) !important;
	-webkit-text-fill-color: var(--es-accent-cyan) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
	margin: 0 0 0.75rem !important;
}

.es-hiw-hero-bg .elementor-element-620d283 .aux-modern-heading-secondary,
.es-hiw-hero-bg .elementor-element-620d283 .aux-head-before,
.elementor-753 .es-hiw-hero-bg .elementor-element-620d283 .aux-modern-heading-secondary,
.elementor-753 .es-hiw-hero-bg .elementor-element-620d283 .aux-head-before,
.elementor-1990 .es-hiw-hero-bg .elementor-element-620d283 .aux-modern-heading-secondary,
.elementor-1990 .es-hiw-hero-bg .elementor-element-620d283 .aux-head-before {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	background: none !important;
	font-size: clamp(2.4rem, 5.5vw, 3.75rem) !important;
	font-weight: 800 !important;
	line-height: 1.08 !important;
	letter-spacing: -0.03em !important;
	text-transform: none !important;
	max-width: none !important;
	margin: 0 !important;
}

.es-hiw-hero-bg .elementor-element-620d283 .aux-modern-heading-description,
.es-hiw-hero-bg .elementor-element-620d283 .aux-modern-heading-description p,
.elementor-753 .es-hiw-hero-bg .elementor-element-620d283 .aux-modern-heading-description,
.elementor-1990 .es-hiw-hero-bg .elementor-element-620d283 .aux-modern-heading-description,
.elementor-753 .es-hiw-hero-bg .elementor-element-620d283 .aux-modern-heading-description p,
.elementor-1990 .es-hiw-hero-bg .elementor-element-620d283 .aux-modern-heading-description p {
	color: rgba(255, 255, 255, 0.9) !important;
	font-size: clamp(1rem, 1.6vw, 1.12rem) !important;
	line-height: 1.75 !important;
	max-width: 54ch !important;
	margin: 0.85rem auto 0 !important;
}

.page-id-753 .es-hiw-process-intro,
.page-id-1990 .es-hiw-process-intro {
	position: relative !important;
	padding: 5rem 5% 0 !important;
	margin-top: 0 !important;
	background:
		linear-gradient(180deg, #e8f4fa 0%, #f4f9fc 55%, #f8fbfd 100%) !important;
}

.page-id-753 .es-hiw-process-intro::before,
.page-id-1990 .es-hiw-process-intro::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(94, 196, 224, 0.45), transparent);
}

.page-id-753 .es-hiw-process-body,
.page-id-1990 .es-hiw-process-body {
	padding: 1.75rem 5% 5.5rem !important;
	margin-top: 0 !important;
	background:
		linear-gradient(180deg, #f8fbfd 0%, #ffffff 100%) !important;
}

.es-hiw-process-intro .elementor-element-aee9e9f > .elementor-widget-container,
.es-hiw-process-intro .elementor-element-dc67874 > .elementor-widget-container {
	margin: 0 !important;
}

.es-hiw-process-intro .es-hiw-process-intro-heading .aux-widget-inner,
.es-hiw-process-intro .elementor-element-aee9e9f .aux-widget-inner,
.es-hiw-process-intro .elementor-element-dc67874 .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
}

.es-hiw-process-intro .es-hiw-process-intro-heading .aux-modern-heading-primary,
.es-hiw-process-intro .elementor-element-aee9e9f .aux-modern-heading-primary,
.es-hiw-process-intro .elementor-element-dc67874 .aux-modern-heading-primary,
.elementor-753 .es-hiw-process-intro .elementor-element-aee9e9f .aux-modern-heading-primary,
.elementor-1990 .es-hiw-process-intro .elementor-element-dc67874 .aux-modern-heading-primary {
	color: var(--es-accent-blue) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
	margin: 0 0 0.85rem !important;
}

.es-hiw-process-intro .es-hiw-process-intro-heading .aux-modern-heading-secondary,
.es-hiw-process-intro .elementor-element-aee9e9f .aux-modern-heading-secondary,
.es-hiw-process-intro .elementor-element-dc67874 .aux-modern-heading-secondary,
.es-hiw-process-intro .aux-head-before,
.elementor-753 .es-hiw-process-intro .elementor-element-aee9e9f .aux-modern-heading-secondary,
.elementor-1990 .es-hiw-process-intro .elementor-element-dc67874 .aux-modern-heading-secondary {
	color: #152d4a !important;
	-webkit-text-fill-color: #152d4a !important;
	font-size: clamp(1.85rem, 3.4vw, 2.75rem) !important;
	font-weight: 800 !important;
	line-height: 1.14 !important;
	letter-spacing: -0.02em !important;
	text-transform: none !important;
	max-width: 26ch !important;
	margin: 0 auto !important;
}

.es-hiw-process-intro .elementor-element-aee9e9f .aux-widget-inner::after,
.es-hiw-process-intro .elementor-element-dc67874 .aux-widget-inner::after {
	content: "";
	display: block;
	width: clamp(48px, 8vw, 72px);
	height: 3px;
	margin: 1.35rem auto 0;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--es-accent-cyan), var(--es-accent-blue));
}

.page-id-753 .es-hiw-process-body > .elementor-container,
.page-id-1990 .es-hiw-process-body > .elementor-container,
.elementor-753 .elementor-element.elementor-element-7545990 > .elementor-container,
.elementor-1990 .elementor-element.elementor-element-78f7766 > .elementor-container,
.es-hiw-process-body > .elementor-container {
	max-width: 1140px !important;
	margin: 0 auto !important;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
	grid-template-areas:
		"process-text process-image"
		"process-banner process-banner" !important;
	gap: clamp(1.75rem, 3vw, 2.5rem) !important;
	align-items: start !important;
	padding: clamp(1.75rem, 3.5vw, 2.75rem) !important;
	background: #ffffff !important;
	border: 1px solid rgba(21, 101, 168, 0.1) !important;
	border-radius: 24px !important;
	box-shadow:
		0 24px 64px rgba(14, 61, 98, 0.1),
		0 0 0 1px rgba(94, 196, 224, 0.12) !important;
}

.es-hiw-process-body > .elementor-container > .elementor-column,
.es-hiw-process-body > .elementor-container > .elementor-col-50,
.es-hiw-process-body > .elementor-container > .elementor-col-100 {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	flex: unset !important;
}

.es-hiw-process-body > .elementor-container > .es-hiw-process-text-col,
.es-hiw-process-body > .elementor-container > .elementor-element-16ee659,
.es-hiw-process-body > .elementor-container > .elementor-element-40380bc {
	grid-area: process-text !important;
}

.es-hiw-process-body > .elementor-container > .es-hiw-process-image-col,
.es-hiw-process-body > .elementor-container > .elementor-element-7a7cc83,
.es-hiw-process-body > .elementor-container > .elementor-element-230b886 {
	grid-area: process-image !important;
	align-self: center !important;
}

.es-hiw-process-body .es-hiw-process-text-col > .elementor-widget-wrap.elementor-element-populated,
.es-hiw-process-body .es-hiw-process-image-col > .elementor-widget-wrap.elementor-element-populated {
	padding: 0 !important;
	margin: 0 !important;
}

.es-hiw-process-body .elementor-element-7397622 > .elementor-widget-container,
.es-hiw-process-body .elementor-element-52586ed > .elementor-widget-container {
	margin: 0 !important;
}

.es-hiw-process-body .es-hiw-process-text .aux-widget-inner,
.es-hiw-process-body .elementor-element-7397622 .aux-widget-inner,
.es-hiw-process-body .elementor-element-52586ed .aux-widget-inner {
	text-align: left !important;
}

.elementor-753 .es-hiw-process-body .elementor-element-7397622 .aux-widget-inner > *,
.elementor-1990 .es-hiw-process-body .elementor-element-52586ed .aux-widget-inner > * {
	text-align: left !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.es-hiw-process-body .es-hiw-process-text .aux-widget-inner > *,
.es-hiw-process-body .elementor-element-7397622 .aux-widget-inner > *,
.es-hiw-process-body .elementor-element-52586ed .aux-widget-inner > *,
.elementor-753 .es-hiw-process-body .elementor-element-7397622 .aux-widget-inner > *,
.elementor-1990 .es-hiw-process-body .elementor-element-52586ed .aux-widget-inner > * {
	text-align: left !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.es-hiw-process-body .aux-modern-heading-description,
.es-hiw-process-body .aux-modern-heading-description p,
.es-hiw-process-body .aux-modern-heading-description li,
.elementor-753 .es-hiw-process-body .elementor-element-7397622 .aux-modern-heading-description,
.elementor-1990 .es-hiw-process-body .elementor-element-52586ed .aux-modern-heading-description {
	color: #4a5568 !important;
	font-size: 1.02rem !important;
	line-height: 1.82 !important;
	text-align: left !important;
}

.es-hiw-process-body .aux-modern-heading-description p:first-child {
	color: #374151 !important;
	font-size: 1.05rem !important;
}

.es-hiw-process-body .aux-modern-heading-description ul {
	list-style: none !important;
	padding-left: 0 !important;
	margin: 1.15rem 0 1.25rem !important;
}

.es-hiw-process-body .aux-modern-heading-description li {
	position: relative !important;
	padding-left: 1.35rem !important;
	margin-bottom: 0.65rem !important;
}

.es-hiw-process-body .aux-modern-heading-description li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.62em;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--es-accent-cyan);
	box-shadow: 0 0 0 3px rgba(94, 196, 224, 0.22);
}

.es-hiw-process-body .aux-modern-heading-description p:nth-last-child(2) {
	margin-top: 0.5rem !important;
	font-weight: 600 !important;
	color: #152d4a !important;
}

.es-hiw-process-body .aux-modern-heading-description p:last-child {
	margin-top: 1.25rem !important;
	padding: 1rem 1.15rem !important;
	background:
		linear-gradient(135deg, rgba(94, 196, 224, 0.14) 0%, rgba(21, 101, 168, 0.08) 100%) !important;
	border-left: 4px solid var(--es-accent-cyan) !important;
	border-radius: 0 14px 14px 0 !important;
}

.es-hiw-process-body .aux-modern-heading-description p:last-child,
.es-hiw-process-body .aux-modern-heading-description p:last-child strong {
	color: #152d4a !important;
	font-weight: 700 !important;
	line-height: 1.55 !important;
}

.es-hiw-process-body .es-hiw-process-image-col,
.es-hiw-process-body .elementor-element-7a7cc83,
.es-hiw-process-body .elementor-element-230b886 {
	display: block !important;
	overflow: visible !important;
}

.es-hiw-process-body .es-hiw-process-image .elementor-widget-container,
.es-hiw-process-body .elementor-element-72cf18f .elementor-widget-container,
.es-hiw-process-body .elementor-element-897801f .elementor-widget-container {
	margin: 0 !important;
	overflow: visible !important;
}

.es-hiw-process-body .es-hiw-process-image .aux-media-hint-frame,
.es-hiw-process-body .es-hiw-process-image .aux-media-image,
.es-hiw-process-body .elementor-element-72cf18f .aux-media-hint-frame,
.es-hiw-process-body .elementor-element-72cf18f .aux-media-image,
.es-hiw-process-body .elementor-element-897801f .aux-media-hint-frame,
.es-hiw-process-body .elementor-element-897801f .aux-media-image {
	overflow: visible !important;
	background: #e9ecef !important;
	border-radius: 18px !important;
	padding: clamp(0.75rem, 1.5vw, 1.25rem) !important;
	box-shadow:
		inset 0 0 0 1px rgba(21, 101, 168, 0.08),
		0 16px 40px rgba(14, 61, 98, 0.12) !important;
}

.es-hiw-process-body .es-hiw-process-image img,
.es-hiw-process-body .elementor-element-72cf18f img,
.es-hiw-process-body .elementor-element-897801f img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	max-width: 100% !important;
	object-fit: contain !important;
	object-position: center center !important;
	border: 0 !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	aspect-ratio: auto !important;
}

.es-hiw-process-body > .elementor-container > .es-hiw-process-banner-col,
.es-hiw-process-body > .elementor-container > .elementor-element-eshibnrc {
	grid-area: process-banner !important;
	margin-top: 0.25rem !important;
}

.es-hiw-process-body .es-hiw-process-banner-col > .elementor-widget-wrap.elementor-element-populated {
	padding: 0 !important;
	margin: 0 !important;
}

.es-hiw-process-body .elementor-element-eshibnri > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}

/* ChlorTech brochure card (PDF page 3) */
.es-hiw-chlortech-card {
	--es-chlortech-bg: #2f3134;
	--es-chlortech-bg-soft: #3a3d41;
	--es-chlortech-cyan: #49b8d3;
	--es-chlortech-text: #f4f7f8;
	--es-chlortech-muted: rgba(244, 247, 248, 0.78);
	background: var(--es-chlortech-bg) !important;
	border-radius: 18px !important;
	overflow: hidden !important;
	padding: clamp(1.25rem, 2.5vw, 1.75rem) clamp(1.25rem, 3vw, 2rem) clamp(1.35rem, 2.8vw, 1.85rem) !important;
	box-shadow:
		0 24px 56px rgba(8, 28, 42, 0.28),
		inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

.es-hiw-chlortech-card__header {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 1rem !important;
	margin-bottom: 1.35rem !important;
}

.es-hiw-chlortech-card__logo {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.55rem !important;
}

.es-hiw-chlortech-card__logo-mark {
	width: 1.35rem !important;
	height: 1.35rem !important;
	border: 2px solid var(--es-chlortech-cyan) !important;
	border-radius: 50% 50% 50% 0 !important;
	transform: rotate(-45deg) !important;
	opacity: 0.95 !important;
}

.es-hiw-chlortech-card__logo-text {
	color: #fff !important;
	font-size: clamp(1.35rem, 2.2vw, 1.65rem) !important;
	font-weight: 800 !important;
	letter-spacing: 0.04em !important;
	line-height: 1 !important;
}

.es-hiw-chlortech-card__deco {
	flex: 0 0 auto !important;
	width: clamp(72px, 12vw, 110px) !important;
	color: var(--es-chlortech-cyan) !important;
	opacity: 0.85 !important;
}

.es-hiw-chlortech-card__deco svg {
	display: block !important;
	width: 100% !important;
	height: auto !important;
}

.es-hiw-chlortech-card__hero {
	display: grid !important;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr) !important;
	gap: clamp(1rem, 2.5vw, 1.75rem) !important;
	align-items: center !important;
	margin-bottom: 1.5rem !important;
}

.es-hiw-chlortech-card__photo {
	border-radius: 12px !important;
	overflow: hidden !important;
	background: #1a1c1e !important;
	min-height: 180px !important;
}

.es-hiw-chlortech-card__photo img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 180px !important;
	object-fit: cover !important;
	object-position: center 42% !important;
}

.es-hiw-chlortech-card__copy {
	color: var(--es-chlortech-text) !important;
}

.es-hiw-chlortech-card__title {
	margin: 0 0 0.85rem !important;
	color: #fff !important;
	font-size: clamp(1.15rem, 2vw, 1.45rem) !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
}

.es-hiw-chlortech-card__title-accent {
	color: var(--es-chlortech-cyan) !important;
	font-weight: 800 !important;
}

.es-hiw-chlortech-card__copy p {
	margin: 0 0 0.65rem !important;
	color: var(--es-chlortech-muted) !important;
	font-size: clamp(0.92rem, 1.35vw, 1rem) !important;
	line-height: 1.55 !important;
}

.es-hiw-chlortech-card__copy p:last-child {
	margin-bottom: 0 !important;
}

.es-hiw-chlortech-card__flow {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.65rem 0.85rem !important;
	padding: 1rem 0 1.15rem !important;
	border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.es-hiw-chlortech-card__step {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 0.45rem !important;
	min-width: 72px !important;
}

.es-hiw-chlortech-card__step-icon {
	display: grid !important;
	place-items: center !important;
	width: 52px !important;
	height: 52px !important;
	border: 1.5px solid var(--es-chlortech-cyan) !important;
	border-radius: 50% !important;
	color: var(--es-chlortech-cyan) !important;
	background: rgba(73, 184, 211, 0.06) !important;
}

.es-hiw-chlortech-card__step-icon svg {
	width: 24px !important;
	height: 24px !important;
}

.es-hiw-chlortech-card__step-label {
	color: #fff !important;
	font-size: 0.68rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.06em !important;
	text-align: center !important;
	line-height: 1.25 !important;
	max-width: 92px !important;
}

.es-hiw-chlortech-card__symbol {
	color: var(--es-chlortech-cyan) !important;
	font-size: 1.35rem !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	padding: 0 0.1rem !important;
}

.es-hiw-chlortech-card__quote {
	margin: 1rem 0 0 !important;
	padding: 0 !important;
	color: var(--es-chlortech-cyan) !important;
	font-size: clamp(0.82rem, 1.25vw, 0.95rem) !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.04em !important;
	text-align: center !important;
	text-transform: uppercase !important;
}

.es-hiw-dosing {
	padding: 4rem 5% !important;
	background:
		linear-gradient(180deg, var(--es-bg-alt) 0%, var(--es-white) 100%) !important;
}

.es-hiw-dosing .aux-modern-heading-secondary,
.es-hiw-dosing .aux-head-before {
	color: var(--es-brand) !important;
	font-size: clamp(1.65rem, 2.8vw, 2.2rem) !important;
	font-weight: 800 !important;
	text-align: center !important;
}

.es-hiw-dosing .aux-modern-heading-description,
.es-hiw-dosing .aux-modern-heading-description p {
	color: var(--es-muted) !important;
	font-size: 1.02rem !important;
	line-height: 1.75 !important;
	max-width: 62ch !important;
	margin: 0.75rem auto 1.5rem !important;
	text-align: center !important;
}

.es-hiw-dosing .aux-widget-responsive-table {
	background: #fff !important;
	border: 1px solid var(--es-border) !important;
	border-radius: 20px !important;
	padding: 0.5rem !important;
	box-shadow: var(--es-shadow) !important;
	overflow: hidden !important;
}

.es-hiw-manuals {
	position: relative;
	overflow: hidden;
	padding: 5rem 5% !important;
	background:
		linear-gradient(180deg, #1e3a5f 0%, #2e7d96 42%, #3a8fa8 100%) !important;
}

.es-hiw-manuals::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 18% 0%, rgba(94, 196, 224, 0.22) 0%, transparent 42%),
		radial-gradient(circle at 82% 100%, rgba(255, 255, 255, 0.06) 0%, transparent 38%);
	pointer-events: none;
}

.es-hiw-manuals > .elementor-container {
	position: relative;
	z-index: 1;
	max-width: 1100px !important;
	margin: 0 auto !important;
}

.es-hiw-manuals .elementor-element-9392cee .aux-widget-inner,
.es-hiw-manuals .elementor-element-3150fbf .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	margin-bottom: 2.5rem !important;
}

.es-hiw-manuals .elementor-element-9392cee .aux-modern-heading-primary,
.es-hiw-manuals .elementor-element-3150fbf .aux-modern-heading-primary {
	color: rgba(255, 255, 255, 0.75) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
	line-height: 1.4 !important;
	margin: 0 0 0.85rem !important;
}

.es-hiw-manuals .elementor-element-9392cee .aux-modern-heading-secondary,
.es-hiw-manuals .elementor-element-3150fbf .aux-modern-heading-secondary {
	color: #fff !important;
	font-size: clamp(1.85rem, 3.2vw, 2.65rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	text-transform: none !important;
	max-width: none !important;
	margin: 0 !important;
}

.es-hiw-manuals-grid > .elementor-container,
.es-hiw-manuals .elementor-element-6d414e5 > .elementor-container,
.es-hiw-manuals .elementor-element-7ac970f > .elementor-container {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 1.25rem !important;
	max-width: 1100px !important;
	margin: 0 auto !important;
}

.es-hiw-manuals-grid > .elementor-container > .elementor-column,
.es-hiw-manuals .elementor-element-6d414e5 > .elementor-container > .elementor-column,
.es-hiw-manuals .elementor-element-7ac970f > .elementor-container > .elementor-column {
	flex: 1 1 0 !important;
	width: 0 !important;
	min-width: 0 !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.es-hiw-manuals .elementor-element-9f4522c > .elementor-element-populated,
.es-hiw-manuals .elementor-element-835fcba > .elementor-element-populated,
.es-hiw-manuals .elementor-element-9fbf5da > .elementor-element-populated,
.es-hiw-manuals .elementor-element-eaacab5 > .elementor-element-populated,
.elementor-753 .es-hiw-manuals .elementor-element-9f4522c:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.elementor-753 .es-hiw-manuals .elementor-element-835fcba:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.elementor-1990 .es-hiw-manuals .elementor-element-9fbf5da:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.elementor-1990 .es-hiw-manuals .elementor-element-eaacab5:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap {
	border: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

.es-hiw-manuals .elementor-widget-aux_text .aux-widget-advanced-text {
	background: rgba(255, 255, 255, 0.08) !important;
	border: 1px solid rgba(255, 255, 255, 0.16) !important;
	border-radius: 18px !important;
	padding: 2rem 1.75rem !important;
	min-height: 220px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: space-between !important;
	align-items: center !important;
	text-align: center !important;
	transition: transform 0.3s var(--es-ease), background 0.3s var(--es-ease), border-color 0.3s var(--es-ease) !important;
}

.es-hiw-manuals .elementor-widget-aux_text .aux-text-widget-header {
	margin-bottom: 0 !important;
	padding: 0 !important;
}

.es-hiw-manuals .elementor-widget-aux_text .aux-ico-box {
	width: 92px !important;
	height: 92px !important;
	min-width: 92px !important;
	min-height: 92px !important;
	margin: 0 auto 1.25rem !important;
	padding: 0 !important;
	border-radius: 18px !important;
	overflow: hidden !important;
	background: rgba(255, 255, 255, 0.14) !important;
	border: 1px solid rgba(255, 255, 255, 0.22) !important;
	box-shadow: 0 10px 24px rgba(8, 28, 42, 0.18) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.es-hiw-manuals .elementor-widget-aux_text .aux-ico-box img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	border-radius: inherit !important;
}

.es-hiw-manuals .elementor-widget-aux_text .aux-widget-advanced-text:hover {
	transform: translateY(-4px) !important;
	background: rgba(255, 255, 255, 0.14) !important;
	border-color: rgba(94, 196, 224, 0.45) !important;
}

.es-hiw-manuals .elementor-widget-aux_text .col-title,
.es-hiw-manuals .elementor-widget-aux_text .widget-title,
.es-hiw-manuals .elementor-widget-aux_text .col-title a {
	color: #fff !important;
	font-size: 1.2rem !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	text-transform: none !important;
}

.es-hiw-manuals .elementor-widget-aux_text .aux-button,
.es-hiw-manuals .elementor-widget-aux_text .aux-text-widget-footer a {
	display: inline-flex !important;
	align-items: center !important;
	margin-top: 1.25rem !important;
	padding: 0.7rem 1.35rem !important;
	background: var(--es-accent-cyan) !important;
	color: var(--es-brand) !important;
	border: none !important;
	border-radius: 999px !important;
	font-family: var(--es-font) !important;
	font-size: 0.75rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
}

.es-hiw-benefits {
	position: relative;
	overflow: hidden;
	padding: 5.5rem 5% !important;
	background:
		linear-gradient(180deg, #e8f4fa 0%, #f4f9fc 48%, #ffffff 100%) !important;
}

.es-hiw-benefits::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 12% 18%, rgba(94, 196, 224, 0.22) 0%, transparent 38%),
		radial-gradient(circle at 88% 82%, rgba(21, 101, 168, 0.1) 0%, transparent 42%);
	pointer-events: none;
}

.es-hiw-benefits > .elementor-container {
	position: relative;
	z-index: 1;
}

.es-hiw-benefits .elementor-element-026e1ff .aux-widget-inner,
.es-hiw-benefits .elementor-element-7bceee1 .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	margin-bottom: 2.75rem !important;
}

.es-hiw-benefits .aux-modern-heading-primary,
.es-hiw-benefits .elementor-element-026e1ff .aux-modern-heading-primary {
	color: var(--es-accent-blue) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
	margin: 0 0 0.85rem !important;
}

.es-hiw-benefits .aux-modern-heading-secondary,
.es-hiw-benefits .aux-head-before,
.es-hiw-benefits .elementor-element-026e1ff .aux-modern-heading-secondary {
	color: #152d4a !important;
	font-size: clamp(1.95rem, 3.4vw, 2.75rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	text-align: center !important;
	max-width: 22ch !important;
	margin: 0 auto !important;
}

.es-hiw-benefits .elementor-element-026e1ff .aux-widget-inner::after,
.es-hiw-benefits .elementor-element-7bceee1 .aux-widget-inner::after {
	content: "";
	display: block;
	width: clamp(56px, 8vw, 80px);
	height: 4px;
	margin: 1.35rem auto 0;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--es-accent-cyan), var(--es-accent-blue));
	box-shadow: 0 0 18px rgba(94, 196, 224, 0.45);
}

.es-hiw-benefits-row > .elementor-container {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 1.15rem !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
}

.es-hiw-benefits-row.es-hiw-benefits-row-3 > .elementor-container {
	max-width: 920px !important;
	margin-top: 1.15rem !important;
}

.es-hiw-benefits-row > .elementor-container > .elementor-column {
	flex: 1 1 0 !important;
	width: 0 !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.es-hiw-benefits .elementor-column > .elementor-element-populated,
.es-hiw-benefits .elementor-column:hover > .elementor-element-populated,
.elementor-753 .es-hiw-benefits .elementor-column:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.elementor-1990 .es-hiw-benefits .elementor-column:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap {
	background: transparent !important;
	background-image: none !important;
	border: none !important;
	box-shadow: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text {
	position: relative !important;
	overflow: hidden !important;
	background:
		linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
	border: 1px solid rgba(21, 101, 168, 0.12) !important;
	border-radius: 20px !important;
	padding: 1.85rem 1.25rem 1.65rem !important;
	min-height: 228px !important;
	height: 100% !important;
	box-shadow:
		0 14px 36px rgba(14, 61, 98, 0.08),
		0 0 0 1px rgba(255, 255, 255, 0.85) inset !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	transition:
		transform 0.35s var(--es-ease),
		box-shadow 0.35s var(--es-ease),
		border-color 0.35s var(--es-ease),
		background 0.35s var(--es-ease) !important;
}

.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, var(--es-accent-cyan), var(--es-accent-blue));
	opacity: 0.85;
	transition: height 0.35s var(--es-ease), opacity 0.35s var(--es-ease);
}

.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text::after {
	content: "";
	position: absolute;
	inset: auto -30% -50% auto;
	width: 140px;
	height: 140px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(94, 196, 224, 0.16) 0%, transparent 68%);
	pointer-events: none;
	transition: transform 0.35s var(--es-ease), opacity 0.35s var(--es-ease);
}

.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover {
	transform: translateY(-8px) !important;
	background:
		linear-gradient(160deg, #ffffff 0%, #edf8fc 55%, #e6f4fa 100%) !important;
	border-color: rgba(94, 196, 224, 0.55) !important;
	box-shadow:
		0 22px 50px rgba(14, 61, 98, 0.14),
		0 0 0 1px rgba(94, 196, 224, 0.22),
		0 0 32px rgba(94, 196, 224, 0.18) !important;
}

.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover::before {
	height: 6px;
	opacity: 1;
}

.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover::after {
	transform: scale(1.15);
	opacity: 1;
}

.es-hiw-benefits .elementor-widget-aux_text .aux-text-inner,
.es-hiw-benefits .elementor-widget-aux_text .aux-text-widget-header {
	position: relative;
	z-index: 1;
}

.es-hiw-benefits .elementor-widget-aux_text .aux-text-widget-header {
	margin: 0 0 1rem !important;
	padding: 0 !important;
}

.es-hiw-benefits .aux-ico-box {
	width: 76px !important;
	height: 76px !important;
	min-width: 76px !important;
	min-height: 76px !important;
	margin: 0 auto !important;
	padding: 0 !important;
	border-radius: 20px !important;
	background: linear-gradient(145deg, #5ec4e0 0%, #3a8fa8 100%) !important;
	border: none !important;
	box-shadow:
		0 12px 28px rgba(21, 101, 168, 0.28),
		0 0 0 1px rgba(255, 255, 255, 0.35) inset !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition:
		transform 0.35s var(--es-ease),
		box-shadow 0.35s var(--es-ease),
		background 0.35s var(--es-ease) !important;
}

.es-hiw-benefits .aux-ico-box svg {
	display: block !important;
	width: 34px !important;
	height: 34px !important;
	overflow: visible !important;
}

.es-hiw-benefits .aux-ico-box svg path,
.es-hiw-benefits .aux-ico-box svg circle,
.es-hiw-benefits .aux-ico-box svg rect,
.es-hiw-benefits .aux-ico-box svg line,
.es-hiw-benefits .aux-ico-box svg polyline {
	stroke: #ffffff !important;
	stroke-width: 1.9 !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
	fill: none !important;
	vector-effect: non-scaling-stroke;
}

.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover .aux-ico-box {
	transform: scale(1.08) rotate(-2deg) !important;
	background: linear-gradient(145deg, #3a8fa8 0%, #152d4a 100%) !important;
	box-shadow:
		0 16px 34px rgba(10, 37, 64, 0.32),
		0 0 0 6px rgba(94, 196, 224, 0.18) !important;
}

.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover .aux-ico-box svg path,
.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover .aux-ico-box svg circle,
.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover .aux-ico-box svg rect,
.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover .aux-ico-box svg line,
.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover .aux-ico-box svg polyline {
	stroke: #ffffff !important;
}

.es-hiw-benefits .col-title,
.es-hiw-benefits .col-title a,
.elementor-753 .es-hiw-benefits .elementor-widget-aux_text:hover .col-title,
.elementor-753 .es-hiw-benefits .elementor-widget-aux_text:hover .col-title a,
.elementor-1990 .es-hiw-benefits .elementor-widget-aux_text:hover .col-title,
.elementor-1990 .es-hiw-benefits .elementor-widget-aux_text:hover .col-title a {
	color: #152d4a !important;
	font-size: clamp(0.82rem, 1.1vw, 0.96rem) !important;
	font-weight: 800 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
	margin-bottom: 0.45rem !important;
}

.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover .col-title,
.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover .col-title a {
	color: var(--es-accent-blue) !important;
}

.es-hiw-benefits .widget-content,
.es-hiw-benefits .widget-content p,
.elementor-753 .es-hiw-benefits .elementor-widget-aux_text:hover .widget-content,
.elementor-753 .es-hiw-benefits .elementor-widget-aux_text:hover .widget-content p,
.elementor-1990 .es-hiw-benefits .elementor-widget-aux_text:hover .widget-content,
.elementor-1990 .es-hiw-benefits .elementor-widget-aux_text:hover .widget-content p {
	color: #4a5568 !important;
	font-size: 0.94rem !important;
	line-height: 1.6 !important;
}

.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover .widget-content,
.es-hiw-benefits .elementor-widget-aux_text .aux-widget-advanced-text:hover .widget-content p {
	color: #374151 !important;
}

.es-hiw-faq {
	position: relative;
	overflow: hidden;
	padding: 5.5rem 5% 6rem !important;
	background:
		linear-gradient(180deg, #f8fbfd 0%, #ffffff 55%, #f4f9fc 100%) !important;
}

.es-hiw-faq::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 15% 0%, rgba(94, 196, 224, 0.14) 0%, transparent 40%),
		radial-gradient(circle at 85% 100%, rgba(21, 101, 168, 0.08) 0%, transparent 38%);
	pointer-events: none;
}

.es-hiw-faq > .elementor-container {
	position: relative;
	z-index: 1;
}

.es-hiw-faq .elementor-element-9bf685b .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	margin-bottom: 2.5rem !important;
}

.es-hiw-faq .aux-modern-heading-primary,
.es-hiw-faq .elementor-element-9bf685b .aux-modern-heading-primary {
	color: var(--es-accent-blue) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
	margin: 0 0 0.85rem !important;
}

.es-hiw-faq .aux-modern-heading-secondary,
.es-hiw-faq .aux-head-before,
.es-hiw-faq .elementor-element-9bf685b .aux-modern-heading-secondary {
	color: #152d4a !important;
	font-size: clamp(1.95rem, 3.4vw, 2.75rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	text-align: center !important;
	max-width: 24ch !important;
	margin: 0 auto !important;
}

.es-hiw-faq .elementor-element-9bf685b .aux-widget-inner::after {
	content: "";
	display: block;
	width: clamp(56px, 8vw, 80px);
	height: 4px;
	margin: 1.35rem auto 0;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--es-accent-cyan), var(--es-accent-blue));
	box-shadow: 0 0 18px rgba(94, 196, 224, 0.35);
}

.es-hiw-faq-grid > .elementor-container {
	max-width: 820px !important;
	margin: 0 auto !important;
}

.es-hiw-faq .aux-widget-accordion .widget-inner {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.75rem !important;
}

.es-hiw-faq .aux-toggle-item {
	border: 1px solid rgba(21, 101, 168, 0.12) !important;
	border-radius: 16px !important;
	overflow: hidden !important;
	background: #fff !important;
	box-shadow: 0 10px 28px rgba(14, 61, 98, 0.06) !important;
	transition: box-shadow 0.3s var(--es-ease), border-color 0.3s var(--es-ease) !important;
}

.es-hiw-faq .aux-toggle-item.active,
.es-hiw-faq .aux-toggle-item:hover {
	border-color: rgba(94, 196, 224, 0.35) !important;
	box-shadow: 0 14px 36px rgba(14, 61, 98, 0.1) !important;
}

.es-hiw-faq .aux-toggle-header,
.es-hiw-faq .elementor-element-6661857 .aux-toggle-header,
.elementor-753 .es-hiw-faq .elementor-element-6661857 .aux-toggle-header,
.elementor-1990 .es-hiw-faq .elementor-element-6661857 .aux-toggle-header {
	position: relative !important;
	padding: 1.15rem 3rem 1.15rem 1.35rem !important;
	margin: 0 !important;
	border: none !important;
	background: #fff !important;
	color: #152d4a !important;
	font-family: var(--es-font) !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
	text-align: left !important;
	cursor: pointer !important;
	transition: background 0.3s var(--es-ease), color 0.3s var(--es-ease) !important;
}

.es-hiw-faq .aux-toggle-header::after {
	opacity: 0.55 !important;
	filter: none !important;
}

.es-hiw-faq .aux-toggle-header:hover,
.es-hiw-faq .elementor-element-6661857 .aux-toggle-header:hover {
	background: #f4f9fc !important;
	color: var(--es-accent-blue) !important;
}

.es-hiw-faq .aux-toggle-item.active .aux-toggle-header,
.es-hiw-faq .elementor-element-6661857 .active .aux-toggle-header,
.elementor-753 .es-hiw-faq .elementor-element-6661857 .active .aux-toggle-header,
.elementor-1990 .es-hiw-faq .elementor-element-6661857 .active .aux-toggle-header {
	background: linear-gradient(90deg, var(--es-accent-blue) 0%, #2e7d96 100%) !important;
	color: #fff !important;
}

.es-hiw-faq .aux-toggle-item.active .aux-toggle-header::after {
	opacity: 1 !important;
	filter: brightness(0) invert(1) !important;
}

.es-hiw-faq .aux-toggle-content,
.es-hiw-faq .elementor-element-6661857 .aux-toggle-content,
.elementor-753 .es-hiw-faq .elementor-element-6661857 .aux-toggle-content,
.elementor-1990 .es-hiw-faq .elementor-element-6661857 .aux-toggle-content {
	padding: 1.1rem 1.35rem 1.35rem !important;
	background: #f8fbfd !important;
	color: #4a5568 !important;
	border-top: 1px solid rgba(21, 101, 168, 0.08) !important;
}

.es-hiw-faq .aux-toggle-content p,
.es-hiw-faq .elementor-element-6661857 .aux-toggle-content p {
	margin: 0 !important;
	color: #4a5568 !important;
	font-size: 0.98rem !important;
	line-height: 1.75 !important;
}

@media (max-width: 1024px) {
	.page-id-753 .es-hiw-process-intro,
.page-id-1990 .es-hiw-process-intro {
		padding-top: 3.5rem !important;
	}

	.page-id-753 .es-hiw-process-body > .elementor-container,
	.page-id-1990 .es-hiw-process-body > .elementor-container,
	.elementor-753 .elementor-element.elementor-element-7545990 > .elementor-container,
	.elementor-1990 .elementor-element.elementor-element-78f7766 > .elementor-container,
	.es-hiw-process-body > .elementor-container {
		grid-template-columns: 1fr !important;
		grid-template-areas:
			"process-text"
			"process-image"
			"process-banner" !important;
		padding: 1.5rem !important;
	}

	.es-hiw-process-body > .elementor-container > .es-hiw-process-image-col,
	.es-hiw-process-body > .elementor-container > .elementor-element-7a7cc83,
	.es-hiw-process-body > .elementor-container > .elementor-element-230b886 {
		align-self: stretch !important;
	}

	.es-hiw-process-body > .elementor-container > .es-hiw-process-banner-col,
	.es-hiw-process-body > .elementor-container > .elementor-element-eshibnrc {
		margin-top: 0.5rem !important;
	}

	.es-hiw-chlortech-card__hero {
		grid-template-columns: 1fr !important;
	}

	.es-hiw-chlortech-card__flow {
		gap: 0.75rem !important;
	}

	.page-id-753 .es-hiw-process-body > .elementor-container > .elementor-column,
	.page-id-1990 .es-hiw-process-body > .elementor-container > .elementor-column,
	.es-hiw-process-body > .elementor-container > .elementor-column {
		width: 100% !important;
		max-width: 100% !important;
	}

	.es-hiw-manuals-grid > .elementor-container,
	.es-hiw-manuals .elementor-element-6d414e5 > .elementor-container,
	.es-hiw-manuals .elementor-element-7ac970f > .elementor-container,
	.es-hiw-benefits-row > .elementor-container {
		flex-wrap: wrap !important;
	}

	.es-hiw-manuals-grid > .elementor-container > .elementor-column,
	.es-hiw-manuals .elementor-element-6d414e5 > .elementor-container > .elementor-column,
	.es-hiw-manuals .elementor-element-7ac970f > .elementor-container > .elementor-column,
	.es-hiw-benefits-row > .elementor-container > .elementor-column {
		flex: 1 1 calc(50% - 0.5rem) !important;
		width: calc(50% - 0.5rem) !important;
	}
}

@media (max-width: 767px) {
	.es-hiw-hero-bg {
		min-height: 300px !important;
		padding: 4.5rem 4% 2.5rem !important;
	}

	.page-id-753 .es-hiw-process-body,
	.page-id-1990 .es-hiw-process-body {
		padding-left: 4% !important;
		padding-right: 4% !important;
	}

	.page-id-753 .es-hiw-process-body > .elementor-container,
	.page-id-1990 .es-hiw-process-body > .elementor-container,
	.elementor-753 .elementor-element.elementor-element-7545990 > .elementor-container,
	.elementor-1990 .elementor-element.elementor-element-78f7766 > .elementor-container,
	.es-hiw-process-body > .elementor-container {
		padding: 1.25rem !important;
		gap: 1.25rem !important;
	}

	.es-hiw-process-body .es-hiw-process-image .aux-media-hint-frame,
	.es-hiw-process-body .es-hiw-process-image .aux-media-image,
	.es-hiw-process-body .elementor-element-72cf18f .aux-media-hint-frame,
	.es-hiw-process-body .elementor-element-72cf18f .aux-media-image,
	.es-hiw-process-body .elementor-element-897801f .aux-media-hint-frame,
	.es-hiw-process-body .elementor-element-897801f .aux-media-image {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 auto !important;
		padding: 1rem !important;
	}

	.es-hiw-process-body .es-hiw-process-image img,
	.es-hiw-process-body .elementor-element-72cf18f img,
	.es-hiw-process-body .elementor-element-897801f img {
		width: 100% !important;
		min-height: 200px !important;
		max-height: none !important;
		object-fit: contain !important;
	}

	.es-hiw-manuals-grid > .elementor-container > .elementor-column,
	.es-hiw-manuals .elementor-element-6d414e5 > .elementor-container > .elementor-column,
	.es-hiw-manuals .elementor-element-7ac970f > .elementor-container > .elementor-column,
	.es-hiw-benefits-row > .elementor-container > .elementor-column {
		flex: 1 1 100% !important;
		width: 100% !important;
	}
}

/* ── Contact page ─────────────────────────────────────── */
.page-id-195,
.page-id-1917 {
	background: #fff;
}

.page-id-195 .elementor-section-wrap,
.page-id-1917 .elementor-section-wrap {
	overflow: visible !important;
}

/* Hero background */
.es-contact-hero-bg {
	position: relative !important;
	min-height: 420px !important;
	padding: 0 !important;
	margin: 0 !important;
	overflow: hidden !important;
}

.es-contact-hero-bg:not(.elementor-motion-effects-element-type-background),
.es-contact-hero-bg > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-position: center center !important;
	background-size: cover !important;
	animation: es-about-hero-kenburns 24s ease-in-out infinite alternate;
}

.es-contact-hero-bg > .elementor-background-overlay {
	background:
		linear-gradient(180deg, rgba(6, 20, 32, 0.55) 0%, rgba(10, 40, 64, 0.72) 100%) !important;
	opacity: 1 !important;
}

/* Info panel — floating card over hero */
.es-contact-info-panel {
	position: relative !important;
	z-index: 4 !important;
	padding: 0 5% !important;
	margin-top: -8.5rem !important;
	margin-bottom: 0 !important;
}

.es-contact-info-panel > .elementor-container {
	max-width: 1180px !important;
	margin: 0 auto !important;
}

.es-contact-info-panel .elementor-element-155d4ed > .elementor-widget-wrap.elementor-element-populated,
.elementor-195 .es-contact-info-panel .elementor-element-155d4ed:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap,
.elementor-1917 .es-contact-info-panel .elementor-element-155d4ed:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap {
	border-radius: 26px !important;
	overflow: hidden !important;
	padding: 0 !important;
	box-shadow:
		0 32px 70px rgba(8, 28, 42, 0.35),
		0 0 0 1px rgba(255, 255, 255, 0.1) inset !important;
	background-color: #2e7d96 !important;
	background-image: linear-gradient(
		135deg,
		#1e3a5f 0%,
		#2e7d96 30%,
		var(--es-accent-blue) 58%,
		var(--es-accent-cyan) 100%
	) !important;
}

/* Hero heading inside panel */
.es-contact-info-panel .es-contact-hero-heading .aux-widget-inner,
.es-contact-info-panel .elementor-element-8c608df .aux-widget-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	padding: 3rem 2.5rem 1.5rem !important;
}

.es-contact-info-panel .elementor-element-8c608df > .elementor-widget-container,
.elementor-195 .es-contact-info-panel .elementor-element-8c608df > .elementor-widget-container,
.elementor-1917 .es-contact-info-panel .elementor-element-8c608df > .elementor-widget-container {
	margin: 0 !important;
}

.es-contact-info-panel .es-contact-hero-heading .aux-modern-heading-primary,
.es-contact-info-panel .elementor-element-8c608df .aux-modern-heading-primary,
.elementor-195 .es-contact-info-panel .elementor-element-8c608df .aux-modern-heading-primary,
.elementor-1917 .es-contact-info-panel .elementor-element-8c608df .aux-modern-heading-primary {
	color: rgba(255, 255, 255, 0.88) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	line-height: 1.4 !important;
	margin-bottom: 0.75rem !important;
}

.es-contact-info-panel .es-contact-hero-heading .aux-modern-heading-secondary,
.es-contact-info-panel .es-contact-hero-heading .aux-head-before,
.es-contact-info-panel .elementor-element-8c608df .aux-modern-heading-secondary,
.es-contact-info-panel .elementor-element-8c608df .aux-head-before,
.elementor-195 .es-contact-info-panel .elementor-element-8c608df .aux-modern-heading-secondary,
.elementor-1917 .es-contact-info-panel .elementor-element-8c608df .aux-modern-heading-secondary {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	background: none !important;
	font-size: clamp(2rem, 4vw, 3rem) !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	letter-spacing: -0.03em !important;
	text-transform: none !important;
	max-width: 22ch !important;
	margin: 0 auto !important;
}

.es-contact-info-panel .es-contact-hero-heading .aux-widget-inner::after,
.es-contact-info-panel .elementor-element-8c608df .aux-widget-inner::after {
	content: "";
	display: block;
	width: 64px;
	height: 4px;
	margin: 1.25rem auto 0;
	border-radius: 999px;
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.35), rgba(255, 255, 255, 0.95));
}

/* Info cards row */
.es-contact-info-row {
	padding: 0 1.5rem 2rem !important;
}

.es-contact-info-row > .elementor-container {
	gap: 1rem;
}

.es-contact-info-row > .elementor-container > .elementor-column {
	flex: 1 1 0 !important;
}

.es-contact-info-panel .es-contact-info-card .aux-widget-advanced-text,
.es-contact-info-panel .elementor-element-e100672 .aux-widget-advanced-text,
.es-contact-info-panel .elementor-element-c889d72 .aux-widget-advanced-text,
.es-contact-info-panel .elementor-element-cd2f62c .aux-widget-advanced-text {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	min-height: 180px !important;
	padding: 1.75rem 1.25rem 1.5rem !important;
	border-radius: 18px !important;
	background: rgba(255, 255, 255, 0.12) !important;
	border: 1px solid rgba(255, 255, 255, 0.22) !important;
	backdrop-filter: blur(8px);
	box-shadow: 0 12px 32px rgba(8, 28, 42, 0.18) !important;
	transition:
		transform 0.35s var(--es-ease),
		box-shadow 0.35s var(--es-ease),
		background 0.35s var(--es-ease),
		border-color 0.35s var(--es-ease) !important;
}

.es-contact-info-panel .es-contact-info-card .aux-widget-advanced-text:hover,
.es-contact-info-panel .elementor-element-e100672 .aux-widget-advanced-text:hover,
.es-contact-info-panel .elementor-element-c889d72 .aux-widget-advanced-text:hover,
.es-contact-info-panel .elementor-element-cd2f62c .aux-widget-advanced-text:hover {
	transform: translateY(-6px) !important;
	background: rgba(255, 255, 255, 0.2) !important;
	border-color: rgba(255, 255, 255, 0.45) !important;
	box-shadow: 0 20px 44px rgba(8, 28, 42, 0.28) !important;
}

.es-contact-info-panel .es-contact-info-card .aux-ico-box,
.es-contact-info-panel .elementor-element-e100672 .aux-ico-box,
.es-contact-info-panel .elementor-element-c889d72 .aux-ico-box,
.es-contact-info-panel .elementor-element-cd2f62c .aux-ico-box {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 56px !important;
	height: 56px !important;
	margin: 0 auto 0.85rem !important;
	padding: 0 !important;
	border-radius: 16px !important;
	background: #fff !important;
	box-shadow: 0 8px 20px rgba(8, 28, 42, 0.15) !important;
	color: #3a8fa8 !important;
}

.es-contact-info-panel .aux-text-widget-header,
.es-contact-info-panel .elementor-element-e100672 .aux-text-widget-header,
.es-contact-info-panel .elementor-element-c889d72 .aux-text-widget-header,
.es-contact-info-panel .elementor-element-cd2f62c .aux-text-widget-header {
	padding: 0 0 0.25rem !important;
}

.es-contact-info-panel .aux-text-color-dark,
.es-contact-info-panel .aux-text-color-dark .col-title,
.es-contact-info-panel .aux-text-color-dark .widget-content,
.elementor-195 .es-contact-info-panel .aux-text-color-dark .widget-content,
.elementor-1917 .es-contact-info-panel .aux-text-color-dark .widget-content {
	color: rgba(255, 255, 255, 0.96) !important;
}

.es-contact-info-panel .es-contact-info-card .aux-ico-box svg,
.es-contact-info-panel .elementor-element-e100672 .aux-ico-box svg,
.es-contact-info-panel .elementor-element-c889d72 .aux-ico-box svg,
.es-contact-info-panel .elementor-element-cd2f62c .aux-ico-box svg {
	display: block !important;
	width: 28px !important;
	height: 28px !important;
}

.es-contact-info-panel .es-contact-info-card .aux-ico-box svg path,
.es-contact-info-panel .elementor-element-e100672 .aux-ico-box svg path,
.es-contact-info-panel .elementor-element-c889d72 .aux-ico-box svg path,
.es-contact-info-panel .elementor-element-cd2f62c .aux-ico-box svg path {
	fill: #3a8fa8 !important;
}

.es-contact-info-panel .es-contact-info-card .col-title,
.es-contact-info-panel .es-contact-info-card .widget-title,
.es-contact-info-panel .elementor-element-e100672 .col-title,
.es-contact-info-panel .elementor-element-c889d72 .col-title,
.es-contact-info-panel .elementor-element-cd2f62c .col-title,
.elementor-195 .es-contact-info-panel .elementor-element-e100672 .col-title,
.elementor-195 .es-contact-info-panel .elementor-element-c889d72 .col-title,
.elementor-195 .es-contact-info-panel .elementor-element-cd2f62c .col-title,
.elementor-1917 .es-contact-info-panel .elementor-element-e100672 .col-title,
.elementor-1917 .es-contact-info-panel .elementor-element-c889d72 .col-title,
.elementor-1917 .es-contact-info-panel .elementor-element-cd2f62c .col-title {
	color: rgba(255, 255, 255, 0.82) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase !important;
	line-height: 1.3 !important;
	margin: 0 0 0.45rem !important;
}

.es-contact-info-panel .es-contact-info-card .col-content,
.es-contact-info-panel .es-contact-info-card .widget-content,
.es-contact-info-panel .elementor-element-e100672 .widget-content,
.es-contact-info-panel .elementor-element-c889d72 .widget-content,
.es-contact-info-panel .elementor-element-cd2f62c .widget-content,
.es-contact-info-panel .elementor-element-e100672 .col-content,
.es-contact-info-panel .elementor-element-c889d72 .col-content,
.es-contact-info-panel .elementor-element-cd2f62c .col-content,
.elementor-195 .es-contact-info-panel .elementor-element-e100672 .widget-content,
.elementor-195 .es-contact-info-panel .elementor-element-c889d72 .widget-content,
.elementor-195 .es-contact-info-panel .elementor-element-cd2f62c .widget-content,
.elementor-1917 .es-contact-info-panel .elementor-element-e100672 .widget-content,
.elementor-1917 .es-contact-info-panel .elementor-element-c889d72 .widget-content,
.elementor-1917 .es-contact-info-panel .elementor-element-cd2f62c .widget-content,
.es-contact-info-panel .es-contact-info-card .col-content p,
.es-contact-info-panel .elementor-element-e100672 .col-content p,
.es-contact-info-panel .elementor-element-c889d72 .col-content p,
.es-contact-info-panel .elementor-element-cd2f62c .col-content p {
	color: #fff !important;
	font-size: 0.98rem !important;
	font-weight: 600 !important;
	line-height: 1.55 !important;
	margin: 0 !important;
	text-transform: none !important;
}

/* Clickable email / phone cards */
.es-contact-info-panel .elementor-element-e100672 .aux-widget-advanced-text {
	cursor: pointer !important;
}

.es-contact-info-panel .elementor-element-c889d72 .aux-widget-advanced-text {
	cursor: pointer !important;
}

/* Form + map section */
.es-contact-form-section {
	position: relative !important;
	padding: 2.5rem 5% 5rem !important;
	background: #f4f8fb !important;
	scroll-margin-top: 96px;
}

.es-contact-form-section::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: min(42vw, 520px);
	height: 100%;
	background:
		url("/wp-content/uploads/2026/06/chlorination-equipment.png") right center / contain no-repeat;
	opacity: 0.06;
	pointer-events: none;
}

.es-contact-form-section > .elementor-container {
	position: relative;
	z-index: 1;
	max-width: 1180px !important;
	margin: 0 auto !important;
	gap: 2rem;
	align-items: stretch !important;
}

.es-contact-form-section .elementor-element-d560940 > .elementor-widget-wrap.elementor-element-populated {
	background: #fff !important;
	border-radius: 22px !important;
	padding: 2.5rem 2.25rem 2rem !important;
	box-shadow:
		0 24px 56px rgba(8, 28, 42, 0.1),
		0 0 0 1px rgba(21, 101, 168, 0.06) !important;
}

.es-contact-form-section .es-contact-form-heading .aux-widget-inner,
.es-contact-form-section .elementor-element-5f9a9c6 .aux-widget-inner {
	padding-bottom: 1.5rem !important;
	border-bottom: 1px solid rgba(21, 101, 168, 0.1);
	margin-bottom: 1.75rem !important;
}

.es-contact-form-section .es-contact-form-heading .aux-modern-heading-primary,
.es-contact-form-section .elementor-element-5f9a9c6 .aux-modern-heading-primary {
	color: var(--es-accent-blue) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
	margin-bottom: 0.5rem !important;
}

.es-contact-form-section .es-contact-form-heading .aux-modern-heading-secondary,
.es-contact-form-section .es-contact-form-heading .aux-head-before,
.es-contact-form-section .elementor-element-5f9a9c6 .aux-modern-heading-secondary,
.es-contact-form-section .elementor-element-5f9a9c6 .aux-head-before {
	color: #152d4a !important;
	font-size: clamp(1.65rem, 3vw, 2.25rem) !important;
	font-weight: 800 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.02em !important;
}

/* Contact form styling */
.es-contact-form-section .elementor-element-75f3da3,
.es-contact-form-section .elementor-element-75f3da3 > .elementor-widget-container,
.es-contact-form-section .elementor-element-75f3da3 .aux-widget-contact-form,
.es-contact-form-section .elementor-element-75f3da3 .aux-col-wrapper {
	width: 100% !important;
	max-width: none !important;
}

.es-contact-form-section .elementor-element-75f3da3 .aux-modern-form {
	margin: 0 !important;
	width: 100% !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
}

.es-contact-form-section .elementor-element-75f3da3 .wpcf7-form {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
}

.es-contact-form-section .elementor-element-75f3da3 .aux-row {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: stretch !important;
	margin: 0 !important;
	gap: 1rem !important;
}

.es-contact-form-section .elementor-element-75f3da3 .aux-row.aux-de-col3 > .aux-input-group.aux-col {
	flex: 1 1 calc(33.333% - 0.67rem) !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	float: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.es-contact-form-section .elementor-element-75f3da3 .aux-row.aux-de-col1 {
	flex-direction: column !important;
}

.es-contact-form-section .elementor-element-75f3da3 .aux-row.aux-de-col1 > .aux-input-group.aux-col {
	flex: 1 1 100% !important;
	width: 100% !important;
}

.es-contact-form-section .elementor-element-75f3da3 .aux-input-group {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	margin: 0 !important;
}

/* Phlox hides CF7 field wrappers inside .aux-input-group > p; submit stays visible */
.es-contact-form-section .elementor-element-75f3da3 .aux-input-group p {
	display: block !important;
	margin: 0 !important;
}

.es-contact-form-section .elementor-element-75f3da3 .aux-input-group .wpcf7-form-control-wrap {
	order: 2 !important;
	width: 100% !important;
}

.es-contact-form-section .elementor-element-75f3da3 .aux-input-group label {
	order: 1 !important;
	position: static !important;
	display: block !important;
	margin: 0 0 0.4rem !important;
	transform: none !important;
	color: #5a7184 !important;
	font-size: 0.72rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	line-height: 1.3 !important;
	white-space: normal !important;
}

.es-contact-form-section .elementor-element-75f3da3 .aux-modern-form-border {
	display: none !important;
}

.es-contact-form-section .elementor-element-75f3da3 .aux-modern-form input[type="text"],
.es-contact-form-section .elementor-element-75f3da3 .aux-modern-form input[type="email"],
.es-contact-form-section .elementor-element-75f3da3 .aux-modern-form input[type="tel"],
.es-contact-form-section .elementor-element-75f3da3 .aux-modern-form textarea,
.es-contact-form-section .elementor-element-75f3da3 .wpcf7-form-control:not([type="submit"]) {
	display: block !important;
	width: 100% !important;
	min-height: 52px !important;
	height: auto !important;
	border-radius: 12px !important;
	border: 1.5px solid #d8e6ef !important;
	background: #f8fbfd !important;
	padding: 0.85rem 1rem !important;
	font-size: 0.98rem !important;
	font-weight: 500 !important;
	color: #152d4a !important;
	box-shadow: none !important;
}

.es-contact-form-section .elementor-element-75f3da3 textarea.wpcf7-form-control {
	min-height: 150px !important;
	padding: 0.85rem 1rem !important;
	resize: vertical !important;
}

.es-contact-form-section .elementor-element-75f3da3 .wpcf7-form-control:not([type="submit"]):focus {
	border-color: var(--es-accent-cyan) !important;
	background: #fff !important;
	box-shadow: 0 0 0 4px rgba(94, 196, 224, 0.25) !important;
	outline: none !important;
}

.es-contact-form-section .elementor-element-75f3da3 .aux-form-cookies-consent {
	display: none !important;
}

.es-contact-form-section .elementor-element-75f3da3 .aux-modern-form > p {
	display: block !important;
	margin: 0.75rem 0 0 !important;
	padding: 0 !important;
	width: 100% !important;
	text-align: center !important;
}

.es-contact-form-section .elementor-element-75f3da3 .wpcf7-response-output {
	display: block !important;
	width: auto !important;
	max-width: 100% !important;
	margin: 0.75rem auto 0 !important;
	padding: 0.85rem 1rem !important;
	border-radius: 12px !important;
	border: 1.5px solid #46b450 !important;
	background: #f3faf4 !important;
	color: #1e6b28 !important;
	font-size: 0.95rem !important;
	line-height: 1.5 !important;
	text-align: center !important;
	box-sizing: border-box !important;
	align-self: center !important;
}

.es-contact-form-section .elementor-element-75f3da3 form.failed .wpcf7-response-output,
.es-contact-form-section .elementor-element-75f3da3 form.invalid .wpcf7-response-output,
.es-contact-form-section .elementor-element-75f3da3 form.aborted .wpcf7-response-output {
	border-color: #dc3232 !important;
	background: #fdf3f3 !important;
	color: #8a1f1f !important;
}

.es-contact-form-section .elementor-element-75f3da3 form.init .wpcf7-response-output,
.es-contact-form-section .elementor-element-75f3da3 form.resetting .wpcf7-response-output,
.es-contact-form-section .elementor-element-75f3da3 form.submitting .wpcf7-response-output {
	display: none !important;
}

.es-contact-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.es-contact-form-section .elementor-element-75f3da3 .wpcf7-submit,
.es-contact-form-section .elementor-element-75f3da3 input[type="submit"],
.elementor-195 .es-contact-form-section .elementor-element-75f3da3 input[type="submit"],
.elementor-1917 .es-contact-form-section .elementor-element-75f3da3 input[type="submit"] {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 190px !important;
	margin-top: 0.5rem !important;
	padding: 1rem 2rem !important;
	border: none !important;
	border-radius: 12px !important;
	background: linear-gradient(135deg, var(--es-accent-blue) 0%, var(--es-accent-cyan) 100%) !important;
	color: #fff !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	text-transform: none !important;
	box-shadow: 0 12px 28px rgba(21, 101, 168, 0.3) !important;
}

.es-contact-form-section .elementor-element-75f3da3 .wpcf7-submit:hover,
.es-contact-form-section .elementor-element-75f3da3 input[type="submit"]:hover,
.elementor-195 .es-contact-form-section .elementor-element-75f3da3 input[type="submit"]:hover,
.elementor-1917 .es-contact-form-section .elementor-element-75f3da3 input[type="submit"]:hover {
	transform: translateY(-2px) !important;
	background: linear-gradient(135deg, #2e7d96 0%, #5ec4e0 100%) !important;
	color: #fff !important;
}

.es-contact-form-section .elementor-element-5f9a9c6 .aux-modern-heading-primary,
.elementor-195 .es-contact-form-section .elementor-element-5f9a9c6 .aux-modern-heading-primary,
.elementor-1917 .es-contact-form-section .elementor-element-5f9a9c6 .aux-modern-heading-primary {
	line-height: 1.4 !important;
	text-transform: uppercase !important;
}

.es-contact-form-section .elementor-element-5f9a9c6 .aux-modern-heading-secondary,
.es-contact-form-section .elementor-element-5f9a9c6 .aux-head-before,
.elementor-195 .es-contact-form-section .elementor-element-5f9a9c6 .aux-modern-heading-secondary,
.elementor-1917 .es-contact-form-section .elementor-element-5f9a9c6 .aux-modern-heading-secondary {
	text-transform: none !important;
	line-height: 1.15 !important;
}

.elementor-195 .es-contact-form-section,
.elementor-1917 .es-contact-form-section {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

/* Map column */
.es-contact-form-section .elementor-element-3f5f876 > .elementor-widget-wrap.elementor-element-populated {
	background: #fff !important;
	border-radius: 22px !important;
	padding: 1.25rem !important;
	box-shadow:
		0 24px 56px rgba(8, 28, 42, 0.1),
		0 0 0 1px rgba(21, 101, 168, 0.06) !important;
	height: 100% !important;
	display: flex !important;
	flex-direction: column !important;
}

.es-contact-form-section .es-contact-map .elementor-widget-container,
.es-contact-form-section .elementor-element-77b7d10 .elementor-widget-container {
	flex: 1 1 auto !important;
	border-radius: 14px !important;
	overflow: hidden !important;
	min-height: 480px !important;
	padding: 0 !important;
}

.es-contact-form-section .es-contact-map-embed,
.es-contact-form-section .elementor-element-77b7d10 .es-contact-map-embed {
	width: 100% !important;
	height: 480px !important;
	min-height: 480px !important;
	border-radius: 14px !important;
	overflow: hidden !important;
	background: #e8eef3 !important;
}

.es-contact-form-section .es-contact-map-embed iframe,
.es-contact-form-section .elementor-element-77b7d10 iframe {
	display: block !important;
	width: 100% !important;
	height: 480px !important;
	min-height: 480px !important;
	border: 0 !important;
	border-radius: 14px !important;
}

@media (max-width: 1024px) {
	.es-contact-info-panel {
		margin-top: -6rem !important;
		padding-left: 4% !important;
		padding-right: 4% !important;
	}

	.es-contact-info-row > .elementor-container {
		flex-wrap: wrap !important;
	}

	.es-contact-info-row > .elementor-container > .elementor-column {
		flex: 1 1 calc(50% - 0.5rem) !important;
		width: calc(50% - 0.5rem) !important;
	}

	.es-contact-form-section .elementor-element-75f3da3 .aux-row.aux-de-col3 > .aux-input-group.aux-col {
		flex: 1 1 100% !important;
		width: 100% !important;
	}

	.es-contact-form-section .elementor-element-d560940,
	.es-contact-form-section .elementor-element-3f5f876 {
		width: 100% !important;
	}
}

@media (max-width: 767px) {
	.es-contact-hero-bg {
		min-height: 280px !important;
	}

	.es-contact-info-panel {
		margin-top: -4rem !important;
	}

	.es-contact-info-panel .elementor-element-155d4ed > .elementor-widget-wrap.elementor-element-populated {
		border-radius: 20px !important;
	}

	.es-contact-info-panel .es-contact-hero-heading .aux-widget-inner,
	.es-contact-info-panel .elementor-element-8c608df .aux-widget-inner {
		padding: 2rem 1.5rem 1rem !important;
	}

	.es-contact-info-row {
		padding: 0 1rem 1.5rem !important;
	}

	.es-contact-info-row > .elementor-container > .elementor-column {
		flex: 1 1 100% !important;
		width: 100% !important;
	}

	.es-contact-form-section {
		padding: 2.5rem 4% 3.5rem !important;
	}

	.es-contact-form-section .elementor-element-d560940 > .elementor-widget-wrap.elementor-element-populated {
		padding: 1.75rem 1.25rem 1.5rem !important;
	}

	.es-contact-form-section .es-contact-map-embed,
	.es-contact-form-section .elementor-element-77b7d10 .es-contact-map-embed,
	.es-contact-form-section .es-contact-map-embed iframe,
	.es-contact-form-section .elementor-element-77b7d10 iframe,
	.es-contact-form-section .es-contact-map .elementor-widget-container,
	.es-contact-form-section .elementor-element-77b7d10 .elementor-widget-container {
		min-height: 320px !important;
		height: 320px !important;
	}
}

/* Strategic redesign */
.es-hero-cta-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem;
	justify-content: center;
	margin-top: 1.5rem;
}

.es-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.85rem 1.35rem;
	border-radius: 999px;
	font-weight: 700;
	text-decoration: none !important;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.es-btn-primary {
	background: var(--es-accent-cyan, #00aaf0);
	color: #152d4a !important;
	box-shadow: 0 10px 24px rgba(0, 170, 240, 0.35);
}

.es-btn-outline {
	border: 1px solid rgba(255, 255, 255, 0.75);
	color: #fff !important;
	background: rgba(255, 255, 255, 0.08);
}

.es-btn:hover {
	transform: translateY(-2px);
}

.es-strategic-inner {
	max-width: 1180px;
	margin: 0 auto;
	padding: 4.5rem 5%;
}

.es-strategic-diagram-section {
	padding: 0 !important;
	margin: 0 !important;
	background: linear-gradient(180deg, #f8fbfd 0%, #fff 100%) !important;
}

.es-strategic-diagram-section > .elementor-container {
	max-width: none !important;
	width: 100% !important;
	padding: 0 !important;
}

.es-strategic-diagram-section .elementor-column,
.es-strategic-diagram-section .elementor-widget-wrap,
.es-strategic-diagram-section .elementor-widget-container {
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
	max-width: none !important;
}

.es-strategic-diagram {
	width: 100%;
}

.es-strategic-diagram__inner {
	max-width: 1180px;
	margin: 0 auto;
	padding: clamp(3rem, 6vw, 4.5rem) 5%;
}

.es-strategic-diagram__header {
	max-width: 760px;
	margin: 0 auto 2.25rem;
	text-align: center;
}

.es-strategic-diagram__eyebrow {
	margin: 0 0 0.75rem;
	color: var(--es-accent-cyan, #5ec4e0);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.es-strategic-diagram__title {
	margin: 0 0 0.85rem;
	font-size: clamp(1.85rem, 3.2vw, 2.55rem);
	line-height: 1.12;
	font-weight: 800;
	color: #152d4a;
}

.es-strategic-diagram__title span {
	color: var(--es-accent-cyan, #5ec4e0);
}

.es-strategic-diagram__lead {
	margin: 0 auto;
	max-width: 640px;
	font-size: 1.02rem;
	line-height: 1.65;
	color: #425466;
}

.es-strategic-diagram__pipeline {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.75rem 0.9rem;
	margin: 0 auto 2.5rem;
	padding: clamp(1.1rem, 2.5vw, 1.45rem) clamp(1rem, 3vw, 1.75rem);
	max-width: 920px;
	border-radius: 18px;
	background: linear-gradient(135deg, #152d4a 0%, #1e3a5f 100%);
	border: 1px solid rgba(94, 196, 224, 0.24);
	box-shadow: 0 18px 48px rgba(8, 20, 32, 0.12);
}

.es-strategic-diagram__inputs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
}

.es-strategic-diagram__node {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.55rem 1rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.12);
	color: #fff;
	font-size: 0.88rem;
	font-weight: 700;
	white-space: nowrap;
}

.es-strategic-diagram__node--brand {
	background: var(--es-accent-cyan, #5ec4e0);
	border-color: rgba(94, 196, 224, 0.65);
	color: #152d4a;
	box-shadow: 0 0 24px rgba(94, 196, 224, 0.28);
}

.es-strategic-diagram__node--apps {
	background: #fff;
	border-color: rgba(255, 255, 255, 0.85);
	color: #152d4a;
}

.es-strategic-diagram__op,
.es-strategic-diagram__arrow {
	color: rgba(94, 196, 224, 0.95);
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1;
}

.es-strategic-diagram__apps {
	text-align: center;
}

.es-strategic-diagram__apps-label {
	margin: 0 0 1rem;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #5a7080;
}

.es-strategic-diagram__chips {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.65rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.es-strategic-diagram__chip {
	display: inline-flex;
	align-items: center;
	padding: 0.55rem 0.95rem;
	border-radius: 999px;
	background: rgba(94, 196, 224, 0.1);
	border: 1px solid rgba(94, 196, 224, 0.24);
	color: #0f3550;
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.2;
	transition:
		background 0.2s var(--es-ease),
		border-color 0.2s var(--es-ease),
		transform 0.2s var(--es-ease);
}

.es-strategic-diagram__chips li:hover .es-strategic-diagram__chip {
	background: rgba(94, 196, 224, 0.16);
	border-color: rgba(94, 196, 224, 0.42);
	transform: translateY(-1px);
}

@media (max-width: 720px) {
	.es-strategic-diagram__pipeline {
		flex-direction: column;
	}

	.es-strategic-diagram__arrow {
		transform: rotate(90deg);
	}
}

.es-strategic-eyebrow,
.es-strategic-diagram .es-strategic-eyebrow {
	color: var(--es-accent-cyan, #00aaf0);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	margin-bottom: 0.75rem;
}

.es-strategic-title {
	font-size: clamp(1.8rem, 3vw, 2.6rem);
	line-height: 1.15;
	margin: 0 0 1rem;
	color: #152d4a;
}

.es-strategic-lead {
	max-width: 760px;
	color: #425466;
	font-size: 1.05rem;
	line-height: 1.65;
	margin-bottom: 2rem;
}

.es-strategic-flow {
	display: none !important;
}

.es-strategic-infographic {
	display: none !important;
}

.es-strategic-flow-step {
	padding: 0.85rem 1.2rem;
	border-radius: 12px;
	background: #152d4a;
	color: #fff;
	font-weight: 700;
}

.es-strategic-flow-arrow {
	font-size: 1.4rem;
	color: var(--es-accent-cyan, #00aaf0);
	font-weight: 700;
}

.es-strategic-app-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.65rem;
}

.es-strategic-app-chip {
	padding: 0.55rem 0.9rem;
	border-radius: 999px;
	background: rgba(0, 170, 240, 0.1);
	border: 1px solid rgba(0, 170, 240, 0.25);
	color: #0f3550;
	font-size: 0.92rem;
	font-weight: 600;
}

.es-strategic-benefits-section {
	padding: 0 !important;
	margin: 0 !important;
	background: #152d4a !important;
}

.es-strategic-benefits-section > .elementor-container {
	max-width: none !important;
	padding: 0 !important;
}

.es-strategic-benefits {
	position: relative;
	overflow: hidden;
	color: #fff;
}

.es-strategic-benefits__glow {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		radial-gradient(circle at 82% 12%, rgba(94, 196, 224, 0.14) 0%, transparent 40%),
		radial-gradient(circle at 10% 88%, rgba(21, 101, 168, 0.18) 0%, transparent 42%);
}

.es-strategic-benefits__inner {
	position: relative;
	z-index: 1;
	max-width: 1180px;
	margin: 0 auto;
	padding: clamp(3rem, 6vw, 4.5rem) 5%;
}

.es-strategic-benefits__header {
	max-width: 720px;
	margin: 0 auto clamp(1.75rem, 3vw, 2.5rem);
	text-align: center;
}

.es-strategic-benefits__eyebrow {
	margin: 0 0 0.75rem;
	color: var(--es-accent-cyan, #5ec4e0);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.es-strategic-benefits__title {
	margin: 0 0 0.85rem;
	font-size: clamp(1.85rem, 3.2vw, 2.55rem);
	line-height: 1.12;
	font-weight: 800;
	color: #fff;
}

.es-strategic-benefits__lead {
	margin: 0 auto;
	max-width: 640px;
	font-size: 1.02rem;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.78);
}

.es-strategic-benefits__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.es-strategic-benefit-card {
	display: flex;
	align-items: flex-start;
	gap: 0.9rem;
	padding: 1rem 1.1rem;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(94, 196, 224, 0.16);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
	transition:
		border-color 0.25s var(--es-ease),
		background 0.25s var(--es-ease),
		transform 0.25s var(--es-ease);
}

.es-strategic-benefit-card:hover {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(94, 196, 224, 0.38);
	transform: translateY(-2px);
}

.es-strategic-benefit-card__icon {
	flex-shrink: 0;
	width: 2.35rem;
	height: 2.35rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	background: rgba(94, 196, 224, 0.12);
	border: 1px solid rgba(94, 196, 224, 0.35);
	color: var(--es-accent-cyan, #5ec4e0);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.04em;
}

.es-strategic-benefit-card__text {
	display: block;
	padding-top: 0.35rem;
	font-size: 0.98rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.92);
}

/* Legacy list fallback */
.es-strategic-benefits-section .es-strategic-title {
	color: #fff;
}

.es-strategic-benefit-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem 1.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.es-strategic-benefit-list li {
	position: relative;
	padding-left: 1.4rem;
	line-height: 1.55;
}

.es-strategic-benefit-list li::before {
	content: "✓";
	position: absolute;
	left: 0;
	color: var(--es-accent-cyan, #00aaf0);
	font-weight: 700;
}

.es-hub-page,
.es-tech-strategic,
.es-about-strategic,
.es-product-finder,
.es-contact-intake {
	padding: 4rem 0;
}

.es-hub-industries .es-hub-inner {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 5% 1.5rem;
	text-align: center;
}

.es-hub-industries .es-hub-lead {
	margin: 0 auto;
	max-width: 720px;
	color: #425466;
	line-height: 1.6;
}

.es-hub-industries .es-industrias {
	padding-top: 0;
}

.es-hub-industries-section,
.elementor-element-esindhub {
	padding: 0 !important;
	margin-top: 0 !important;
}

.es-hub-industries-section > .elementor-container,
.es-hub-industries-section .elementor-column,
.es-hub-industries-section .elementor-widget-wrap,
.es-hub-industries-section .elementor-widget-html,
.es-hub-industries-section .elementor-widget-container {
	padding: 0 !important;
	background: transparent !important;
}

.page-id-3282,
.page-id-3283 {
	background: var(--es-white);
}

.es-hub-page.es-hub-industries {
	padding: 0;
}

.es-hub-applications-section,
.elementor-element-esapphub {
	padding: 0 !important;
	margin-top: 0 !important;
}

.es-hub-applications-section > .elementor-container,
.es-hub-applications-section .elementor-column,
.es-hub-applications-section .elementor-widget-wrap,
.es-hub-applications-section .elementor-widget-html,
.es-hub-applications-section .elementor-widget-container {
	padding: 0 !important;
	background: transparent !important;
}

.page-id-3400,
.page-id-3401 {
	background: var(--es-white);
}

.es-hub-applications {
	padding: 0 0 4rem;
	background: #fff;
}

.es-applications-hero {
	position: relative;
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	min-height: clamp(380px, 50vh, 520px);
	padding: clamp(6rem, 11vw, 7.5rem) 5% clamp(3.5rem, 6vw, 4.5rem);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background-image: url("/wp-content/uploads/2020/10/water-texture-background-transparent-liquid-1-scaled.jpeg");
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	animation: es-about-hero-kenburns 24s ease-in-out infinite alternate;
}

.es-applications-hero__overlay {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(180deg, rgba(6, 20, 32, 0.72) 0%, rgba(10, 40, 64, 0.82) 48%, rgba(8, 28, 42, 0.94) 100%);
	pointer-events: none;
}

.es-applications-hero__inner {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 920px;
	margin: 0 auto;
	text-align: center;
}

.es-applications-hero__eyebrow {
	margin: 0 0 0.75rem;
	color: var(--es-accent-cyan, #5ec4e0);
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.es-applications-hero__title {
	margin: 0;
	color: #fff;
	font-size: clamp(2.4rem, 5.5vw, 3.75rem);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -0.03em;
}

.es-applications-hero__lead {
	margin: 1.25rem auto 0;
	max-width: 54ch;
	color: rgba(255, 255, 255, 0.9);
	font-size: clamp(1rem, 1.6vw, 1.12rem);
	line-height: 1.75;
}

.es-applications-shell {
	max-width: 980px;
	margin: 0 auto;
	padding: 2.5rem 5% 0;
}

.es-hub-solutions-section,
.elementor-element-esseohub {
	padding: 0 !important;
	margin-top: 0 !important;
}

.es-hub-solutions-section > .elementor-container,
.es-hub-solutions-section .elementor-column,
.es-hub-solutions-section .elementor-widget-wrap,
.es-hub-solutions-section .elementor-widget-html,
.es-hub-solutions-section .elementor-widget-container {
	padding: 0 !important;
	background: transparent !important;
}

.page-id-3544,
.page-id-3545 {
	background: var(--es-white);
}

.es-hub-solutions {
	padding: 0 0 4rem;
	background: #fff;
}

.es-solution-grid .es-app-card__text {
	-webkit-line-clamp: 3;
}

.es-app-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem;
}

.es-app-card {
	display: flex;
	align-items: center;
	gap: 0.9rem;
	padding: 1rem 1.1rem;
	border-radius: 14px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 6px 18px rgba(8, 20, 32, 0.04);
	text-decoration: none !important;
	transition:
		transform 0.22s var(--es-ease),
		border-color 0.22s var(--es-ease),
		box-shadow 0.22s var(--es-ease);
}

.es-app-card:hover {
	transform: translateY(-2px);
	border-color: rgba(21, 101, 168, 0.22);
	box-shadow: 0 10px 24px rgba(21, 101, 168, 0.1);
}

.es-app-card__icon {
	flex-shrink: 0;
	width: 2.85rem;
	height: 2.85rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
}

.es-app-card__icon svg {
	width: 1.45rem;
	height: 1.45rem;
	display: block;
}

.es-app-card__icon--photo {
	padding: 0;
	overflow: hidden;
	background: #e8eef4;
}

.es-app-card__icon--photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.es-app-card--generation .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(21, 101, 168, 0.1);
	color: #3a8fa8;
}

.es-app-card--hypochlorite .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(0, 140, 180, 0.12);
	color: #008cb4;
}

.es-app-card--pools .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(30, 120, 180, 0.12);
	color: #1e78b4;
}

.es-app-card--mining .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(90, 70, 50, 0.12);
	color: #6a5438;
}

.es-app-card--oilgas .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(120, 90, 40, 0.12);
	color: #785a28;
}

.es-app-card--generators .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(50, 90, 130, 0.12);
	color: #325a82;
}

.es-app-card--onsite .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(16, 130, 110, 0.12);
	color: #10826e;
}

.es-app-card--electro .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(100, 70, 170, 0.12);
	color: #6446aa;
}

.es-app-card--water .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(21, 101, 168, 0.1);
	color: #3a8fa8;
}

.es-app-card--health .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(16, 130, 110, 0.12);
	color: #10826e;
}

.es-app-card--hospitality .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(180, 120, 40, 0.12);
	color: #9a6418;
}

.es-app-card--food .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(190, 95, 40, 0.12);
	color: #b85a1f;
}

.es-app-card--agri .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(70, 130, 55, 0.12);
	color: #4a8237;
}

.es-app-card--industrial .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(70, 80, 95, 0.12);
	color: #46505f;
}

.es-app-card--public .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(90, 110, 180, 0.12);
	color: #5a6eb4;
}

.es-app-card--emergency .es-app-card__icon:not(.es-app-card__icon--photo) {
	background: rgba(180, 55, 55, 0.1);
	color: #b33;
}

.es-app-card__body {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
}

.es-app-card__title {
	display: block;
	font-size: 1rem;
	font-weight: 700;
	color: #152d4a;
	line-height: 1.25;
}

.es-app-card__text {
	display: block;
	font-size: 0.88rem;
	line-height: 1.45;
	color: #5a6a78;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.es-app-card__arrow {
	flex-shrink: 0;
	margin-left: auto;
	color: #3a8fa8;
	font-size: 1.1rem;
	font-weight: 700;
	opacity: 0.55;
	transition: transform 0.22s var(--es-ease), opacity 0.22s var(--es-ease);
}

.es-app-card:hover .es-app-card__arrow {
	opacity: 1;
	transform: translateX(3px);
}

@media (max-width: 760px) {
	.es-app-grid {
		grid-template-columns: 1fr;
	}
}

.es-hub-title,
.es-tech-strategic h2,
.es-about-strategic h2,
.es-product-finder h2 {
	font-size: clamp(1.8rem, 3vw, 2.4rem);
	margin-bottom: 1rem;
}

.es-hub-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.es-hub-card {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 110px;
	padding: 1rem;
	border-radius: 16px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 12px 30px rgba(8, 20, 32, 0.08);
	text-decoration: none !important;
	color: #152d4a !important;
	font-weight: 700;
	text-align: center;
}

.es-hub-card:hover {
	transform: translateY(-4px);
	border-color: rgba(0, 170, 240, 0.35);
}

.es-success-card {
	padding: 1.25rem 0;
	border-bottom: 1px solid rgba(8, 20, 32, 0.08);
}

.es-about-stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin: 1.5rem 0 2rem;
}

.es-about-stats div {
	padding: 1.2rem;
	border-radius: 16px;
	background: rgba(0, 170, 240, 0.08);
	text-align: center;
}

.es-about-stats strong {
	display: block;
	font-size: 2rem;
	color: #152d4a;
}

.es-about-logos {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.es-about-logos span {
	padding: 0.45rem 0.8rem;
	border-radius: 999px;
	background: #152d4a;
	color: #fff;
	font-size: 0.82rem;
	font-weight: 700;
}

.es-product-finder-section {
	background: #f4f8fb;
	padding: 0 !important;
	margin-top: 0 !important;
}

.es-product-finder-section > .elementor-container,
.es-product-finder-section .elementor-column,
.es-product-finder-section .elementor-widget-wrap,
.es-product-finder-section .elementor-widget-html,
.es-product-finder-section .elementor-widget-container {
	padding: 0 !important;
	background: transparent !important;
}

.es-products-finder-page {
	padding: 4.5rem 0 5rem;
	background:
		linear-gradient(180deg, #f4f8fb 0%, #eef4f8 100%);
}

.es-products-finder-shell {
	max-width: 980px;
	margin: 0 auto;
	padding: 0 5%;
}

.es-products-finder-header {
	text-align: center;
	margin-bottom: 2rem;
}

.es-products-finder-eyebrow {
	margin: 0 0 0.65rem;
	color: var(--es-accent-blue, #3a8fa8);
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.es-products-finder-title {
	margin: 0;
	color: var(--es-brand, #152d4a);
	font-size: clamp(1.85rem, 3.2vw, 2.5rem);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: -0.02em;
}

.es-products-finder-lead {
	margin: 0.85rem auto 0;
	max-width: 58ch;
	color: #425466;
	font-size: 1.02rem;
	line-height: 1.65;
}

.es-product-finder-section .es-product-finder {
	padding: 0;
}

.es-product-finder-section .es-product-finder .es-strategic-inner {
	padding: 2rem 2.25rem 2.25rem;
	border-radius: 22px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow:
		0 18px 44px rgba(8, 28, 42, 0.08),
		0 0 0 1px rgba(255, 255, 255, 0.65) inset;
}

.es-product-finder-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem 1.25rem;
	align-items: end;
}

.es-product-finder-grid .es-btn {
	justify-self: start;
	align-self: end;
	min-width: 180px;
}

.es-product-finder-grid label {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	font-weight: 600;
}

.es-product-finder-grid select,
.es-product-finder-grid input,
.es-contact-intake-grid select,
.es-contact-intake-grid input {
	padding: 0.75rem 0.9rem;
	border-radius: 10px;
	border: 1px solid rgba(8, 20, 32, 0.15);
}

.es-product-finder-result {
	margin-top: 1rem;
	padding: 1rem 1.2rem;
	border-radius: 14px;
	background: #152d4a;
	color: #fff;
	font-weight: 600;
}

.es-product-finder-result p {
	margin: 0.45rem 0 0;
	font-weight: 500;
	line-height: 1.55;
}

.es-finder-result__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	margin-top: 0.85rem !important;
}

.es-product-finder-result .es-btn {
	font-weight: 700;
	cursor: pointer;
	border: none;
}

.es-product-finder-result .es-btn-outline {
	border: 1px solid rgba(255, 255, 255, 0.75);
	color: #fff !important;
	background: rgba(255, 255, 255, 0.08);
}

.es-finder-preview {
	margin-top: 1.25rem;
}

.es-finder-preview__card {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
	border-radius: 20px;
	overflow: hidden;
	background: #fff;
	border: 1px solid rgba(21, 101, 168, 0.12);
	box-shadow:
		0 20px 50px rgba(8, 28, 42, 0.12),
		0 0 0 1px rgba(255, 255, 255, 0.65) inset;
}

.es-finder-preview__media {
	min-height: 240px;
	background-color: #edf3f9;
	border-right: 1px solid rgba(21, 101, 168, 0.08);
	display: flex;
	align-items: center;
	justify-content: center;
}

.es-finder-preview__media img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 240px;
	max-height: 280px;
	object-fit: contain;
	object-position: center center;
	padding: 1rem;
	box-sizing: border-box;
	background: #edf3f9;
}

.es-finder-preview__body {
	padding: 1.35rem 1.4rem 1.4rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.es-finder-preview__eyebrow {
	margin: 0 0 0.45rem;
	color: var(--es-accent-blue, #3a8fa8);
	font-size: 0.76rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.es-finder-preview__title {
	margin: 0 0 0.75rem;
	color: #152d4a;
	font-size: clamp(1.35rem, 2.4vw, 1.75rem);
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: -0.02em;
}

.es-finder-preview__specs {
	margin: 0 0 1.1rem;
	padding: 0;
	list-style: none;
}

.es-finder-preview__specs li {
	display: flex;
	align-items: flex-start;
	gap: 0.55rem;
	margin: 0 0 0.42rem;
	padding-left: 0;
	color: #425466;
	font-size: 0.88rem;
	font-weight: 500;
	line-height: 1.5;
	list-style: none !important;
}

.es-finder-preview__specs li::marker {
	content: none !important;
}

.es-finder-preview__specs li::before {
	content: "";
	flex: 0 0 5px;
	width: 5px;
	height: 5px;
	margin-top: 0.58em;
	border-radius: 50%;
	background: var(--es-accent-cyan, #5ec4e0);
}

.es-finder-preview__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
}

.es-finder-preview__actions .es-btn-outline {
	border: 1px solid rgba(21, 101, 168, 0.28);
	color: var(--es-accent-blue, #3a8fa8) !important;
	background: #fff;
}

.es-products-catalog .elementor-column.es-product-highlight {
	animation: es-product-highlight 2.4s ease;
}

@keyframes es-product-highlight {
	0% {
		box-shadow: 0 0 0 0 rgba(94, 196, 224, 0.65);
		transform: translateY(0);
	}
	20% {
		box-shadow: 0 0 0 6px rgba(94, 196, 224, 0.35);
		transform: translateY(-4px);
	}
	100% {
		box-shadow: 0 16px 40px rgba(8, 28, 42, 0.2);
		transform: translateY(0);
	}
}

@media (max-width: 767px) {
	.es-finder-preview__card {
		grid-template-columns: 1fr;
	}

	.es-finder-preview__media {
		min-height: 200px;
		border-right: none;
		border-bottom: 1px solid rgba(21, 101, 168, 0.08);
	}
}

.es-contact-intake {
	margin-bottom: 1.5rem;
	padding: 1.25rem;
	border-radius: 16px;
	background: rgba(0, 170, 240, 0.08);
}

.es-contact-intake-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

@media (max-width: 900px) {
	.es-strategic-benefits__grid,
	.es-strategic-benefit-list,
	.es-hub-grid,
	.es-about-stats,
	.es-product-finder-grid,
	.es-contact-intake-grid {
		grid-template-columns: 1fr;
	}
}

.es-brand-banner-section {
	padding: 0 !important;
	margin: 0 !important;
}

.es-brand-banner-section > .elementor-container {
	max-width: none !important;
	padding: 0 !important;
}

.es-brand-banner {
	position: relative;
	overflow: hidden;
	background:
		linear-gradient(125deg, #152d4a 0%, #1e3a5f 52%, #1e3a5f 100%);
	color: #fff;
}

.es-brand-banner__glow {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		radial-gradient(circle at 18% 50%, rgba(94, 196, 224, 0.16) 0%, transparent 42%),
		radial-gradient(circle at 88% 18%, rgba(21, 101, 168, 0.22) 0%, transparent 38%);
}

.es-brand-banner__inner {
	position: relative;
	z-index: 1;
	max-width: 1180px;
	margin: 0 auto;
	padding: clamp(2.75rem, 5vw, 3.75rem) 5%;
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(260px, 0.85fr);
	gap: clamp(1.75rem, 4vw, 3rem);
	align-items: center;
}

.es-brand-banner__eyebrow {
	margin: 0 0 0.85rem;
	color: var(--es-accent-cyan, #5ec4e0);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.es-brand-banner__quote {
	margin: 0;
	font-size: clamp(1.35rem, 2.35vw, 1.95rem);
	line-height: 1.45;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.96);
	max-width: 42rem;
}

.es-brand-banner__quote::before {
	content: "\201C";
	display: block;
	margin-bottom: 0.35rem;
	font-size: 2.5rem;
	line-height: 1;
	color: rgba(94, 196, 224, 0.55);
	font-weight: 800;
}

.es-brand-banner__accent {
	color: var(--es-accent-cyan, #5ec4e0);
	font-weight: 700;
}

.es-brand-banner__pillars {
	display: grid;
	gap: 0.75rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.es-brand-banner__pillar {
	padding: 0.95rem 1.1rem;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(94, 196, 224, 0.22);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
	transition: border-color 0.25s var(--es-ease), background 0.25s var(--es-ease);
}

.es-brand-banner__pillar:hover {
	background: rgba(255, 255, 255, 0.09);
	border-color: rgba(94, 196, 224, 0.42);
}

.es-brand-banner__pillar-label {
	display: block;
	margin-bottom: 0.2rem;
	font-size: 0.92rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #fff;
}

.es-brand-banner__pillar-label::before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-right: 0.55rem;
	border-radius: 50%;
	background: var(--es-accent-cyan, #5ec4e0);
	box-shadow: 0 0 10px rgba(94, 196, 224, 0.65);
	vertical-align: middle;
}

.es-brand-banner__pillar-desc {
	display: block;
	padding-left: 1.15rem;
	font-size: 0.88rem;
	line-height: 1.45;
	color: rgba(255, 255, 255, 0.72);
}

.es-brand-banner__text,
.es-brand-statement {
	font-size: 1.15rem;
	line-height: 1.6;
	font-weight: 600;
	max-width: 920px;
}

@media (max-width: 900px) {
	.es-brand-banner__inner {
		grid-template-columns: 1fr;
	}

	.es-brand-banner__pillars {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.65rem;
	}

	.es-brand-banner__pillar {
		padding: 0.85rem 0.75rem;
	}

	.es-brand-banner__pillar-desc {
		display: none;
	}

	.es-brand-banner__pillar-label {
		font-size: 0.78rem;
		text-align: center;
	}

	.es-brand-banner__pillar-label::before {
		display: block;
		margin: 0 auto 0.45rem;
	}
}

@media (max-width: 560px) {
	.es-brand-banner__pillars {
		grid-template-columns: 1fr;
	}

	.es-brand-banner__pillar-desc {
		display: block;
	}

	.es-brand-banner__pillar-label {
		text-align: left;
		font-size: 0.88rem;
	}

	.es-brand-banner__pillar-label::before {
		display: inline-block;
		margin: 0 0.55rem 0 0;
	}
}

.es-brand-statement {
	color: #00aaf0;
	margin-bottom: 0.75rem;
}

.es-industry-sections {
	display: grid;
	gap: 1rem;
	margin: 1.5rem 0;
}

.es-industry-block {
	padding: 1.25rem 1.35rem;
	border-radius: 14px;
	background: #f4f8fb;
	border: 1px solid rgba(8, 20, 32, 0.08);
}

.es-industry-block__title {
	margin: 0 0 0.5rem;
	font-size: 1.05rem;
	color: #152d4a;
}

.es-industry-block p {
	margin: 0;
	max-width: none;
	font-size: 0.98rem;
	line-height: 1.75;
	color: #425466;
}

.es-industry-economic-list {
	margin: 1rem 0 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 0.75rem;
}

.es-industry-economic-list li {
	position: relative;
	padding: 0.85rem 1rem 0.85rem 2.75rem;
	border-radius: 10px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	font-size: 0.95rem;
	line-height: 1.65;
	color: #2f3f4f;
}

.es-industry-economic-list li::before {
	content: "✓";
	position: absolute;
	left: 1rem;
	top: 0.85rem;
	font-weight: 700;
	color: #3a8fa8;
}

.es-industry-block--economic {
	background: linear-gradient(180deg, #eef7fb 0%, #f4f8fb 100%);
	border-color: rgba(10, 126, 164, 0.18);
}

.es-world-map {
	margin: 1.5rem 0;
	padding: 1.25rem;
	border-radius: 16px;
	background: #f4f8fb;
}

.es-world-map__visual {
	position: relative;
	max-width: none;
	border-radius: 16px;
	overflow: hidden;
	background: #e8eef4;
	border: 1px solid rgba(8, 20, 32, 0.08);
}

.es-world-map__visual--choropleth {
	background: #121418;
	border: none;
	border-radius: 12px;
}

.es-world-map--choropleth .es-world-map__visual--choropleth .es-world-map__svg path {
	fill: #3a4048;
	stroke: none;
	transition: fill 0.2s ease, opacity 0.2s ease;
}

.es-world-map--choropleth .es-world-map__land--active,
.es-world-map--choropleth .es-world-map__land--active path {
	fill: #00aaf0;
}

.es-world-map--choropleth .es-world-map__land.is-dimmed,
.es-world-map--choropleth .es-world-map__land.is-dimmed path {
	fill: #2a2e34;
	opacity: 0.35;
}

.es-world-map--choropleth .es-world-map__land.is-highlight,
.es-world-map--choropleth .es-world-map__land.is-highlight path {
	fill: #33c4ff;
}

.es-world-map--choropleth .es-world-map__pin-fallback .es-world-map__pin-dot {
	fill: #00aaf0;
	stroke: none;
}

.es-world-map--choropleth .es-world-map__pin-fallback.is-dimmed .es-world-map__pin-dot {
	fill: #2a2e34;
	opacity: 0.35;
}

.es-world-map--choropleth .es-world-map__visual--choropleth .es-world-map__badge {
	background: rgba(0, 170, 240, 0.92);
	color: #152d4a;
}

.es-world-map__visual svg,
.es-world-map__svg {
	width: 100%;
	height: auto;
	display: block;
}

.es-world-map__badge {
	position: absolute;
	right: 1rem;
	bottom: 1rem;
	background: #3a8fa8;
	color: #fff;
	font-weight: 800;
	font-size: 1.5rem;
	padding: 0.5rem 0.85rem;
	border-radius: 999px;
}

.es-world-map__regions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	list-style: none;
	padding: 0;
	margin: 1rem 0 0;
}

.es-world-map__regions li {
	padding: 0.35rem 0.75rem;
	border-radius: 999px;
	background: #152d4a;
	color: #fff;
	font-size: 0.82rem;
	font-weight: 600;
}

.es-about-lead {
	font-size: 1.05rem;
	line-height: 1.6;
	margin-bottom: 1rem;
}

.es-product-finder-mode {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1.25rem;
	margin-bottom: 1.35rem;
	padding: 0.85rem 1rem;
	border-radius: 14px;
	background: rgba(0, 170, 240, 0.07);
	border: 1px solid rgba(21, 101, 168, 0.1);
}

.es-product-finder-mode label {
	font-weight: 600;
}

.es-contact-recommendation {
	margin-top: 1rem;
	padding: 1rem 1.2rem;
	border-radius: 14px;
	background: #152d4a;
	color: #fff;
}

.es-success-card--full {
	padding: 1.25rem;
	border-radius: 16px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	margin-bottom: 1rem;
}

.es-success-details {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem 1.25rem;
	margin: 0;
}

.es-success-details dt {
	font-weight: 700;
	color: #3a8fa8;
	margin-bottom: 0.2rem;
}

.es-success-details dd {
	margin: 0 0 0.75rem;
}

.es-inline-calculator {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	width: 100%;
}

.es-calc-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	min-width: 0;
}

.es-calc-field label {
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1.35;
	color: #425466;
}

.es-calc-field input {
	width: 100%;
	box-sizing: border-box;
	padding: 0.65rem 0.75rem;
	border: 1px solid rgba(8, 20, 32, 0.12);
	border-radius: 10px;
	font-size: 0.92rem;
	font-family: inherit;
	color: #152d4a;
	background: #f8fbfd;
	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease;
}

.es-calc-field input:focus {
	outline: none;
	border-color: rgba(0, 170, 240, 0.45);
	box-shadow: 0 0 0 3px rgba(0, 170, 240, 0.12);
	background: #fff;
}

.es-calc-actions {
	margin-top: 0.15rem;
}

.es-calc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 0.75rem 1rem;
	border: 0;
	border-radius: 999px;
	background: linear-gradient(135deg, #00aaf0 0%, #3a8fa8 100%);
	color: #fff;
	font-size: 0.88rem;
	font-weight: 800;
	font-family: inherit;
	cursor: pointer;
	box-shadow: 0 8px 20px rgba(0, 170, 240, 0.22);
	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease;
}

.es-calc-btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 12px 24px rgba(0, 170, 240, 0.28);
}

.es-calc-result {
	padding: 0.85rem 1rem;
	border-radius: 12px;
	background: rgba(0, 170, 240, 0.08);
	border: 1px solid rgba(0, 170, 240, 0.2);
	color: #152d4a;
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.55;
}

@media (max-width: 700px) {
	.es-success-details {
		grid-template-columns: 1fr;
	}
}

.es-legacy-muted {
	display: none !important;
}

.es-products-catalog .es-products-row,
.es-products-catalog .es-products-row.es-legacy-muted {
	display: flex !important;
}

.es-hero-collage-pro {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	padding: clamp(1.25rem, 3vw, 2.75rem) clamp(1rem, 2.5vw, 2.25rem) clamp(1.25rem, 3vw, 2.75rem) clamp(38%, 42vw, 48%);
	pointer-events: none;
}

.es-hero-collage-pro__frame {
	position: relative;
	width: min(100%, 640px);
}

.es-hero-collage-pro__grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	grid-template-rows: repeat(3, minmax(88px, 1fr));
	gap: 8px;
	min-height: clamp(280px, 34vw, 420px);
	height: clamp(280px, 34vw, 420px);
	padding: 14px;
	border-radius: 22px;
	background:
		linear-gradient(155deg, rgba(8, 20, 32, 0.82), rgba(8, 20, 32, 0.52)),
		radial-gradient(circle at 80% 20%, rgba(94, 196, 224, 0.12), transparent 55%);
	border: 1px solid rgba(94, 196, 224, 0.38);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.1),
		0 24px 60px rgba(0, 0, 0, 0.45);
	overflow: hidden;
}

.es-hero-collage-pro__grid .es-hero-collage__cell {
	position: relative;
	border-radius: 12px;
	overflow: hidden;
	min-height: 0;
	min-width: 0;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
}

.es-hero-collage-pro__grid .es-hero-collage__cell::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(8, 20, 32, 0.02) 35%, rgba(8, 20, 32, 0.62) 100%);
	pointer-events: none;
}

.es-hero-collage-pro__grid .es-hero-collage__photo {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	transform: scale(1);
	transition: transform 0.6s var(--es-ease);
}

.es-hero-collage-pro__grid .es-hero-collage__cell--feature .es-hero-collage__photo {
	animation: es-hero-collage-kenburns 22s ease-in-out infinite alternate;
}

.es-hero-collage-pro__grid .es-hero-collage__cell:hover .es-hero-collage__photo {
	transform: scale(1.06);
}

.es-hero-collage__cell--slot-1 {
	grid-column: 1 / 3;
	grid-row: 1 / 3;
}

.es-hero-collage__cell--slot-2 { grid-column: 3; grid-row: 1; }
.es-hero-collage__cell--slot-3 { grid-column: 4; grid-row: 1; }
.es-hero-collage__cell--slot-4 { grid-column: 3; grid-row: 2; }
.es-hero-collage__cell--slot-5 { grid-column: 4; grid-row: 2; }
.es-hero-collage__cell--slot-6 { grid-column: 1; grid-row: 3; }
.es-hero-collage__cell--slot-7 { grid-column: 2; grid-row: 3; }
.es-hero-collage__cell--slot-8 { grid-column: 3 / 5; grid-row: 3; }

.es-hero-collage__label {
	position: absolute;
	left: 8px;
	bottom: 8px;
	z-index: 1;
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #fff;
	background: rgba(8, 20, 32, 0.72);
	border: 1px solid rgba(94, 196, 224, 0.35);
	backdrop-filter: blur(4px);
}

.es-hero-collage-pro__plaque {
	position: absolute;
	right: 0;
	bottom: -18px;
	z-index: 3;
	max-width: min(100%, 320px);
	padding: 0.8rem 1rem;
	border-radius: 14px;
	background: linear-gradient(135deg, rgba(8, 20, 32, 0.96), rgba(15, 53, 80, 0.92));
	border: 1px solid rgba(94, 196, 224, 0.5);
	box-shadow: 0 14px 36px rgba(0, 0, 0, 0.4);
	display: grid;
	gap: 0.15rem;
}

.es-hero-collage-pro__mark {
	font-size: 1.05rem;
	font-weight: 800;
	color: #5ec4e0;
	letter-spacing: 0.02em;
}

.es-hero-collage-pro__tagline {
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1.35;
	color: #fff;
}

.es-hero-collage-pro__formula {
	font-size: 0.72rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.72);
}

@keyframes es-hero-collage-kenburns {
	from { transform: scale(1); }
	to { transform: scale(1.08); }
}

.elementor-element-da5db3e.es-hero-collage-pro-ready > .elementor-container {
	min-height: clamp(520px, 72vh, 760px);
}

.elementor-element-da5db3e.es-hero-collage-pro-ready::before {
	display: block !important;
	background-image:
		linear-gradient(
			105deg,
			rgba(6, 16, 24, 0.72) 0%,
			rgba(6, 16, 24, 0.42) 34%,
			rgba(6, 16, 24, 0.1) 56%,
			transparent 76%
		),
		var(--es-hero-feature-bg, none) !important;
	background-position: 24% center;
	background-size: cover;
	background-repeat: no-repeat;
	filter: brightness(0.96) contrast(1.08) saturate(1.12);
	animation: es-hero-bg-kenburns 28s ease-in-out infinite alternate;
	opacity: 1 !important;
}

.elementor-element-da5db3e.es-hero-collage-pro-ready:not(.elementor-motion-effects-element-type-background),
.elementor-element-da5db3e.es-hero-collage-pro-ready > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: transparent !important;
	background-image:
		linear-gradient(
			105deg,
			rgba(6, 16, 24, 0.72) 0%,
			rgba(6, 16, 24, 0.42) 34%,
			rgba(6, 16, 24, 0.1) 56%,
			transparent 76%
		),
		var(--es-hero-feature-bg, none) !important;
	background-position: 24% center !important;
	background-size: cover !important;
	background-repeat: no-repeat !important;
}

.elementor-element-da5db3e.es-hero-collage-pro-ready > .elementor-background-overlay {
	background: linear-gradient(
		105deg,
		rgba(6, 16, 24, 0.55) 0%,
		rgba(6, 16, 24, 0.32) 28%,
		rgba(6, 16, 24, 0.1) 46%,
		transparent 72%
	) !important;
}

.elementor-element-da5db3e.es-hero-collage-pro-ready::after {
	opacity: 0.18;
}

.elementor-element-da5db3e.es-hero-collage-pro-ready .elementor-element-9c9ec11 {
	position: relative;
	z-index: 4;
}

.elementor-element-da5db3e.es-hero-collage-pro-ready .elementor-element-9c9ec11 > .elementor-element-populated::before {
	background: linear-gradient(
		135deg,
		rgba(8, 16, 24, 0.38) 0%,
		rgba(8, 16, 24, 0.14) 52%,
		transparent 100%
	);
}

.elementor-element-da5db3e.es-hero-collage-ready:not(.es-hero-collage-pro-ready)::before {
	opacity: 0.78;
	background: linear-gradient(135deg, rgba(8, 20, 32, 0.82), rgba(8, 20, 32, 0.55)) !important;
}

/* Medium viewports: keep side-by-side but reserve space for text */
@media (max-width: 1280px) and (min-width: 1025px) {
	.elementor-element-da5db3e.es-hero-collage-pro-ready > .elementor-container {
		min-height: clamp(560px, 78vh, 820px);
	}

	.elementor-element-da5db3e.es-hero-collage-pro-ready .elementor-element-9c9ec11 {
		max-width: 46%;
		flex: 0 1 46%;
	}

	.elementor-element-da5db3e.es-hero-collage-pro-ready .elementor-element-9c9ec11 > .elementor-element-populated::before {
		inset: -1.25rem -2.5rem -1.25rem -1.25rem;
		background: linear-gradient(
			135deg,
			rgba(8, 16, 24, 0.84) 0%,
			rgba(8, 16, 24, 0.68) 58%,
			rgba(8, 16, 24, 0.28) 100%
		);
	}

	.elementor-element-da5db3e.es-hero-collage-pro-ready .elementor-element-c1e9fdb .aux-modern-heading-description {
		max-width: 100% !important;
	}

	.es-hero-collage-pro {
		padding-left: 48%;
		padding-right: 1rem;
	}

	.es-hero-collage-pro__frame {
		width: min(100%, 500px);
	}

	.es-hero-collage-pro__grid {
		min-height: 250px;
		height: 250px;
	}
}

@media (max-width: 1100px) {
	.es-hero-collage-pro {
		padding-left: 52%;
	}

	.es-hero-collage-pro__frame {
		width: min(100%, 440px);
	}

	.es-hero-collage-pro__grid {
		min-height: 230px;
		height: 230px;
	}

	.elementor-element-da5db3e.es-hero-collage-pro-ready .elementor-element-9c9ec11 {
		max-width: 44%;
		flex: 0 1 44%;
	}

	.elementor-element-da5db3e.es-hero-collage-pro-ready .elementor-element-c1e9fdb .aux-modern-heading-secondary {
		font-size: clamp(1.55rem, 2.8vw, 2.35rem) !important;
		line-height: 1.18 !important;
	}

	.elementor-element-da5db3e.es-hero-collage-pro-ready .elementor-element-c1e9fdb .aux-modern-heading-description {
		font-size: 0.94rem !important;
		line-height: 1.6 !important;
	}
}

@media (max-width: 1024px) {
	.elementor-element-da5db3e.es-hero-collage-pro-ready {
		display: flex;
		flex-direction: column;
	}

	.elementor-element-da5db3e.es-hero-collage-pro-ready > .elementor-container {
		order: 1;
		min-height: auto !important;
		padding-top: 5.5rem;
		padding-bottom: 1.5rem;
		width: 100%;
		position: relative;
		z-index: 3;
	}

	.elementor-element-da5db3e.es-hero-collage-pro-ready .elementor-element-9c9ec11 {
		max-width: 100% !important;
		flex: 1 1 100% !important;
	}

	.es-hero-collage-pro {
		position: relative;
		inset: auto;
		order: 2;
		z-index: 2;
		flex: 0 0 auto;
		width: 100%;
		align-items: center;
		justify-content: center;
		padding: 0 1rem 2rem;
	}

	.es-hero-collage-pro__frame {
		width: 100%;
		max-width: 420px;
	}

	.es-hero-collage-pro__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		grid-template-rows: repeat(3, 72px);
		min-height: 232px;
		height: auto;
		padding: 10px;
		border-radius: 18px;
	}

	.es-hero-collage__cell--slot-1 {
		grid-column: 1 / 3;
		grid-row: 1 / 3;
	}

	.es-hero-collage__cell--slot-2 { grid-column: 3; grid-row: 1; }
	.es-hero-collage__cell--slot-3 { grid-column: 3; grid-row: 2; }
	.es-hero-collage__cell--slot-4 { grid-column: 1; grid-row: 3; }
	.es-hero-collage__cell--slot-5 { grid-column: 2; grid-row: 3; }
	.es-hero-collage__cell--slot-6 { grid-column: 3; grid-row: 3; }
	.es-hero-collage__cell--slot-7,
	.es-hero-collage__cell--slot-8 { display: none; }

	.es-hero-collage-pro__plaque {
		position: relative;
		right: auto;
		bottom: auto;
		margin-top: 0.75rem;
		max-width: 100%;
		padding: 0.65rem 0.85rem;
	}

	.es-hero-collage-pro__tagline {
		font-size: 0.72rem;
	}

	.elementor-element-da5db3e.es-hero-collage-pro-ready > .elementor-background-overlay {
		background: linear-gradient(
			180deg,
			rgba(6, 16, 24, 0.9) 0%,
			rgba(6, 16, 24, 0.72) 45%,
			rgba(6, 16, 24, 0.35) 100%
		) !important;
	}

	.elementor-element-da5db3e.es-hero-collage-pro-ready .es-hero-cta-row {
		flex-direction: column;
		align-items: stretch;
		gap: 0.65rem;
		margin-top: 1.25rem;
	}

	.elementor-element-da5db3e.es-hero-collage-pro-ready .es-hero-cta-row .es-btn {
		width: 100%;
		justify-content: center;
	}

	.elementor-element-da5db3e.es-hero-collage-pro-ready .elementor-element-c1e9fdb .aux-modern-heading-description {
		max-width: none !important;
		font-size: 0.92rem !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.es-hero-collage__cell--feature .es-hero-collage__photo {
		animation: none !important;
	}
}

/* Legacy simple collage fallback */
.es-hero-collage {
	position: absolute;
	inset: 0;
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-template-rows: repeat(3, 1fr);
	gap: 4px;
	z-index: 0;
	opacity: 0.62;
}

.es-hero-collage__cell {
	background-size: cover;
	background-position: center;
	min-height: 0;
	transition: transform 0.4s var(--es-ease), filter 0.4s var(--es-ease);
}

.es-hero-collage__cell--feature {
	grid-column: span 2;
	grid-row: span 2;
}

.es-hero-collage__cell:nth-child(6n+1):not(.es-hero-collage__cell--feature) {
	grid-row: span 2;
}

.es-tech-page {
	padding: 2rem 0 3rem;
}

.es-tech-page > .es-strategic-inner > .es-strategic-eyebrow,
.es-tech-page > .es-strategic-inner > .es-tech-page__title,
.es-tech-page > .es-strategic-inner > .es-tech-page__lead {
	text-align: center;
}

.es-tech-page__title {
	font-size: clamp(2rem, 4vw, 2.8rem);
	line-height: 1.12;
	margin: 0 auto 0.75rem;
	max-width: 900px;
	color: var(--es-accent-blue, #3a8fa8);
	font-weight: 800;
}

.es-tech-page__lead {
	font-size: 1.1rem;
	line-height: 1.6;
	max-width: 820px;
	margin: 0 auto 1.5rem;
	color: #425466;
}

.es-tech-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin-bottom: 2rem;
}

.es-tech-grid section,
.es-tech-card {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	padding: 1.1rem;
	border-radius: 14px;
	background: #f4f8fb;
	border: 1px solid rgba(8, 20, 32, 0.08);
}

.es-tech-card__icon {
	flex-shrink: 0;
	width: 3rem;
	height: 3rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	background: rgba(94, 196, 224, 0.12);
	border: 1px solid rgba(94, 196, 224, 0.28);
	color: #3a8fa8;
}

.es-tech-card__icon svg {
	width: 1.55rem;
	height: 1.55rem;
	display: block;
}

.es-tech-card__body {
	min-width: 0;
}

.es-tech-grid h2,
.es-tech-card__body h2 {
	margin: 0 0 0.5rem;
	font-size: 1.05rem;
	color: #3a8fa8;
}

.es-tech-card__body p {
	margin: 0;
	color: #425466;
	line-height: 1.6;
	font-size: 0.96rem;
}

.es-tech-compare {
	margin: 2.5rem 0 1.5rem;
}

.es-tech-compare__intro {
	margin-bottom: 1.25rem;
	text-align: center;
}

.es-tech-compare__title {
	margin: 0 auto 0.45rem;
	max-width: 900px;
	font-size: clamp(1.35rem, 2.2vw, 1.65rem);
	line-height: 1.12;
	font-weight: 800;
	color: var(--es-accent-blue, #3a8fa8);
}

.es-tech-compare__lead {
	margin: 0 auto;
	max-width: 640px;
	color: #425466;
	line-height: 1.55;
	font-size: 1rem;
}

.es-tech-compare__grid {
	display: grid;
	gap: 1rem;
}

.es-tech-compare-card {
	border-radius: 16px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 8px 24px rgba(8, 20, 32, 0.04);
	overflow: hidden;
}

.es-tech-compare-card__head {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	padding: 1rem 1.15rem;
	background: linear-gradient(180deg, #f4f8fb 0%, #eef4f8 100%);
	border-bottom: 1px solid rgba(8, 20, 32, 0.06);
}

.es-tech-compare-card__icon {
	flex-shrink: 0;
	width: 2.75rem;
	height: 2.75rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	background: rgba(21, 101, 168, 0.08);
	border: 1px solid rgba(21, 101, 168, 0.16);
	color: #3a8fa8;
}

.es-tech-compare-card__icon svg {
	width: 1.45rem;
	height: 1.45rem;
	display: block;
}

.es-tech-compare-card__head h3 {
	margin: 0;
	font-size: 1.08rem;
	color: #152d4a;
}

.es-tech-compare-card__cols {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.es-tech-compare-card__col {
	padding: 1rem 1.15rem;
}

.es-tech-compare-card__col--alt {
	background: rgba(180, 55, 55, 0.04);
	border-right: 1px solid rgba(8, 20, 32, 0.06);
}

.es-tech-compare-card__col--pro {
	background: rgba(21, 101, 168, 0.05);
}

.es-tech-compare-card__tag {
	display: inline-block;
	margin-bottom: 0.55rem;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.es-tech-compare-card__col--alt .es-tech-compare-card__tag {
	color: #9b3b3b;
}

.es-tech-compare-card__col--pro .es-tech-compare-card__tag {
	color: #3a8fa8;
}

.es-tech-compare-card__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.es-tech-compare-card__list li {
	position: relative;
	padding-left: 1.15rem;
	color: #425466;
	line-height: 1.55;
	font-size: 0.95rem;
}

.es-tech-compare-card__list li + li {
	margin-top: 0.35rem;
}

.es-tech-compare-card__list--alt li::before {
	content: "×";
	position: absolute;
	left: 0;
	top: 0.02rem;
	color: #c44;
	font-weight: 700;
}

.es-tech-compare-card__win {
	position: relative;
	margin: 0;
	padding-left: 1.15rem;
	color: #1a3344;
	line-height: 1.55;
	font-size: 0.98rem;
	font-weight: 600;
}

.es-tech-compare-card__win::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 0.02rem;
	color: #1a8a5a;
	font-weight: 700;
}

.es-tech-cta {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 0.75rem;
	margin-top: 1.5rem;
	width: 100%;
	text-align: center;
}

.es-tech-page .es-btn-outline {
	border: 1px solid rgba(21, 101, 168, 0.35);
	color: var(--es-accent-blue, #3a8fa8) !important;
	background: #fff;
	box-shadow: none;
}

.es-tech-page .es-btn-outline:hover {
	background: rgba(21, 101, 168, 0.06);
}

.es-tech-dosing {
	margin: 2.5rem 0 1.5rem;
}

.es-tech-dosing__intro {
	margin-bottom: 1.25rem;
	text-align: center;
}

.es-tech-dosing__title {
	margin: 0 auto 0.45rem;
	max-width: 900px;
	font-size: clamp(1.35rem, 2.2vw, 1.65rem);
	line-height: 1.12;
	font-weight: 800;
	color: var(--es-accent-blue, #3a8fa8);
}

.es-tech-dosing__lead {
	margin: 0 auto;
	max-width: 760px;
	color: #425466;
	line-height: 1.6;
	font-size: 1rem;
}

.es-tech-dosing__table-wrap {
	overflow-x: auto;
	border-radius: 16px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 8px 24px rgba(8, 20, 32, 0.04);
}

.es-tech-dosing__table {
	width: 100%;
	min-width: 760px;
	border-collapse: collapse;
	font-size: 0.92rem;
}

.es-tech-dosing__table th,
.es-tech-dosing__table td {
	padding: 0.65rem 0.55rem;
	border: 1px solid rgba(8, 20, 32, 0.08);
	text-align: center;
	vertical-align: middle;
}

.es-tech-dosing__table thead tr:first-child th {
	background: #152d4a;
	color: #fff;
	font-size: 0.78rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.es-tech-dosing__table thead tr:nth-child(2) th,
.es-tech-dosing__table thead tr:nth-child(3) th {
	background: #eef4f8;
	color: #3a8fa8;
	font-size: 0.8rem;
	font-weight: 700;
}

.es-tech-dosing__table tbody td {
	color: #334455;
}

.es-tech-dosing__table tbody tr:nth-child(even) td {
	background: #f8fafc;
}

.es-world-map--interactive .es-world-map__layout {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 1.25rem;
	align-items: start;
}

.es-world-map__countries {
	display: block;
	padding: 0;
	margin: 0;
	max-height: 360px;
	overflow: auto;
}

.es-world-map__countries > .es-world-map__region {
	margin-bottom: 0.85rem;
}

.es-world-map__region-label {
	display: block;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #3a8fa8;
	margin: 0 0 0.45rem;
	padding: 0;
}

.es-world-map__region-label::before,
.es-world-map__region-label::after,
.es-world-map__country::before,
.es-world-map__country::after,
.es-world-map__countries::marker {
	content: none !important;
	display: none !important;
}

.es-world-map__region-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.45rem;
}

.es-world-map__country {
	display: block;
	padding: 0.45rem 0.65rem;
	border-radius: 8px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	font-size: 0.82rem;
	line-height: 1.35;
	color: #152d4a;
	cursor: default;
	list-style: none !important;
}

.es-world-map__country.is-highlight,
.es-world-map__country:hover {
	border-color: rgba(0, 170, 240, 0.35);
	background: rgba(0, 170, 240, 0.08);
}

.es-world-map__country[hidden] {
	display: none !important;
}

.es-world-map__countries li[data-country],
.es-world-map__region ul {
	display: none !important;
}

.es-world-map__pin.is-highlight .es-world-map__pin-dot,
.es-world-map__pin-fallback.is-highlight .es-world-map__pin-dot {
	fill: #33c4ff;
	stroke: none;
}

.es-world-map__pin.is-highlight .es-world-map__pin-halo {
	fill: rgba(0, 170, 240, 0.22);
}

.es-world-map__search {
	width: 100%;
	margin-bottom: 0.75rem;
	padding: 0.55rem 0.75rem;
	border-radius: 10px;
	border: 1px solid rgba(8, 20, 32, 0.12);
	font-size: 0.9rem;
}

.es-world-map__panel {
	min-width: 0;
}

.es-resources-note {
	font-size: 0.9rem;
	color: var(--es-muted);
	margin: 0.75rem 0 0;
	max-width: 720px;
}

.es-seo-landing {
	padding: 2rem 0 3rem;
}

.es-seo-landing__title {
	font-size: clamp(1.85rem, 3.5vw, 2.6rem);
	margin: 0 0 0.75rem;
	color: #152d4a;
}

.es-seo-landing__lead {
	font-size: 1.08rem;
	line-height: 1.65;
	max-width: 820px;
	margin-bottom: 1.5rem;
}

.es-seo-landing__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.es-seo-landing__grid section {
	padding: 1rem;
	border-radius: 14px;
	background: #f4f8fb;
	border: 1px solid rgba(8, 20, 32, 0.08);
}

.es-seo-landing__grid h2 {
	margin: 0 0 0.5rem;
	font-size: 1rem;
	color: #3a8fa8;
}

.es-seo-landing__list {
	margin: 0;
	padding-left: 1.1rem;
}

.es-seo-landing__list li {
	margin-bottom: 0.35rem;
}

.es-world-map__pin .es-world-map__pin-dot,
.es-world-map__pin .es-world-map__pin-halo {
	transition: transform 0.2s ease, fill 0.2s ease, stroke 0.2s ease;
}

.es-world-map__pin:hover .es-world-map__pin-dot,
.es-world-map__pin:focus .es-world-map__pin-dot {
	fill: #00aaf0;
}

.es-world-map__pin:hover .es-world-map__pin-halo,
.es-world-map__pin:focus .es-world-map__pin-halo {
	fill: rgba(0, 170, 240, 0.24);
}

.es-strategic-infographic {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	margin-bottom: 1.25rem;
	padding: 1rem;
	border-radius: 16px;
	background: linear-gradient(135deg, #152d4a, #0d3550);
	color: #fff;
}

.es-info-step {
	padding: 0.55rem 0.9rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.12);
	font-weight: 700;
	font-size: 0.9rem;
}

.es-info-step--brand {
	background: #00aaf0;
	color: #152d4a;
}

.es-info-step--apps {
	background: #fff;
	color: #152d4a;
}

.es-success-card--photo {
	display: grid;
	grid-template-columns: 220px 1fr;
	gap: 1rem;
	align-items: stretch;
}

.es-success-card__media img {
	width: 100%;
	height: 100%;
	min-height: 180px;
	object-fit: cover;
	border-radius: 12px;
}

.es-hub-card__tag {
	display: block;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	opacity: 0.7;
	margin-bottom: 0.25rem;
}

.es-resources-section {
	margin-top: 1.5rem;
}

.es-resources-section h2 {
	font-size: 1.15rem;
	margin-bottom: 0.75rem;
}

.es-hub-resources-section,
.elementor-element-eshub01.es-hub-resources-section {
	padding: 0 !important;
	margin-top: 0 !important;
}

.es-hub-resources-section > .elementor-container,
.es-hub-resources-section .elementor-column,
.es-hub-resources-section .elementor-widget-wrap,
.es-hub-resources-section .elementor-widget-html,
.es-hub-resources-section .elementor-widget-container {
	padding: 0 !important;
	background: transparent !important;
}

.page-id-3402,
.page-id-3403 {
	background: var(--es-white);
}

.es-hub-resources {
	padding: 0 0 4rem;
	background: #fff;
}

.es-resources-hero {
	min-height: clamp(340px, 44vh, 460px);
}

.es-resources-shell {
	max-width: 980px;
	margin: 0 auto;
	padding: 2.5rem 5% 0;
}

.es-resources-block {
	margin-bottom: 2.75rem;
}

.es-resources-block__head {
	margin-bottom: 1.25rem;
}

.es-resources-block__head h2 {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 2.2vw, 1.55rem);
	color: #152d4a;
}

.es-resources-block__head p {
	margin: 0;
	max-width: 62ch;
	color: #5a6a78;
	font-size: 0.95rem;
	line-height: 1.6;
}

.es-resources-link-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem;
}

.es-resource-link-card {
	display: flex;
	align-items: center;
	gap: 0.9rem;
	padding: 1rem 1.1rem;
	border-radius: 16px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 8px 22px rgba(8, 20, 32, 0.05);
	text-decoration: none !important;
	transition:
		transform 0.22s var(--es-ease),
		border-color 0.22s var(--es-ease),
		box-shadow 0.22s var(--es-ease);
}

.es-resource-link-card:hover {
	transform: translateY(-2px);
	border-color: rgba(21, 101, 168, 0.22);
	box-shadow: 0 12px 28px rgba(21, 101, 168, 0.1);
}

.es-resource-link-card__icon {
	flex-shrink: 0;
	width: 2.85rem;
	height: 2.85rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	background: rgba(21, 101, 168, 0.1);
	color: #3a8fa8;
}

.es-resource-link-card__icon svg {
	width: 1.45rem;
	height: 1.45rem;
	display: block;
}

.es-resource-link-card--pdf .es-resource-link-card__icon {
	background: rgba(180, 55, 55, 0.1);
	color: #b43737;
}

.es-resource-link-card__body {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
}

.es-resource-link-card__tag {
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #3a8fa8;
}

.es-resource-link-card__title {
	font-size: 1rem;
	font-weight: 700;
	color: #152d4a;
	line-height: 1.25;
}

.es-resource-link-card__text {
	font-size: 0.84rem;
	line-height: 1.45;
	color: #5a6a78;
}

.es-resource-link-card__arrow {
	flex-shrink: 0;
	margin-left: auto;
	color: #3a8fa8;
	font-size: 1.1rem;
	font-weight: 700;
	opacity: 0.55;
	transition: transform 0.22s var(--es-ease), opacity 0.22s var(--es-ease);
}

.es-resource-link-card:hover .es-resource-link-card__arrow {
	opacity: 1;
	transform: translateX(3px);
}

.es-resources-pdf-list {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	padding: 0.35rem;
	border-radius: 18px;
	background: #f4f8fb;
	border: 1px solid rgba(8, 20, 32, 0.06);
}

.es-resources-pdf-row {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	padding: 0.85rem 1rem;
	border-radius: 12px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.06);
	text-decoration: none !important;
	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease,
		transform 0.2s ease;
}

.es-resources-pdf-row:hover {
	border-color: rgba(21, 101, 168, 0.2);
	box-shadow: 0 8px 18px rgba(8, 20, 32, 0.06);
	transform: translateY(-1px);
}

.es-resources-pdf-row__icon {
	flex-shrink: 0;
	width: 2.4rem;
	height: 2.4rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	background: rgba(180, 55, 55, 0.1);
	color: #b43737;
}

.es-resources-pdf-row__icon svg {
	width: 1.2rem;
	height: 1.2rem;
}

.es-resources-pdf-row__body {
	min-width: 0;
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
}

.es-resources-pdf-row__title {
	font-size: 0.92rem;
	font-weight: 700;
	color: #152d4a;
	line-height: 1.3;
}

.es-resources-pdf-row__meta {
	font-size: 0.78rem;
	color: #6a7886;
}

.es-resources-pdf-row__action {
	flex-shrink: 0;
	font-size: 0.78rem;
	font-weight: 700;
	color: #3a8fa8;
	padding: 0.35rem 0.65rem;
	border-radius: 999px;
	background: rgba(21, 101, 168, 0.08);
}

.es-resources-model-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
}

.es-resources-model-chip {
	display: inline-flex;
	align-items: center;
	padding: 0.55rem 0.95rem;
	border-radius: 999px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.1);
	color: #152d4a !important;
	font-size: 0.88rem;
	font-weight: 700;
	text-decoration: none !important;
	transition:
		border-color 0.2s ease,
		background 0.2s ease,
		color 0.2s ease;
}

.es-resources-model-chip:hover {
	border-color: rgba(0, 170, 240, 0.35);
	background: rgba(0, 170, 240, 0.08);
	color: #3a8fa8 !important;
}

.es-resources-block--tools {
	padding: 1.75rem;
	border-radius: 22px;
	background:
		linear-gradient(180deg, #f4f8fb 0%, #eef4f8 100%);
	border: 1px solid rgba(8, 20, 32, 0.06);
}

.es-resources-tools-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.es-resources-tool-card {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: 1.35rem 1.4rem 1.5rem;
	border-radius: 18px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 10px 26px rgba(8, 20, 32, 0.05);
}

.es-resources-tool-card__head {
	flex: 0 0 auto;
}

.es-resources-tool-card__form {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid rgba(8, 20, 32, 0.08);
}

.es-resources-tool-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	margin-bottom: 0.75rem;
	border-radius: 11px;
	background: rgba(21, 101, 168, 0.1);
	color: #3a8fa8;
}

.es-resources-tool-card__icon--savings {
	background: rgba(16, 130, 110, 0.12);
	color: #10826e;
}

.es-resources-tool-card__icon svg {
	width: 1.25rem;
	height: 1.25rem;
}

.es-resources-tool-card__title {
	margin: 0 0 0.35rem;
	font-size: 1.02rem;
	color: #152d4a;
}

.es-resources-tool-card__text {
	margin: 0;
	font-size: 0.88rem;
	line-height: 1.5;
	color: #5a6a78;
}

.es-resources-tool-card .es-inline-calculator {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

.es-resources-tool-card .es-calc-result,
.es-resources-tool-card .es-product-finder-result {
	margin-top: 0;
}

.es-resources-cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1.25rem;
	padding: 1.75rem 1.85rem;
	border-radius: 20px;
	background: linear-gradient(135deg, #152d4a 0%, #0d3550 100%);
	color: #fff;
}

.es-resources-cta__copy h2 {
	margin: 0 0 0.45rem;
	font-size: clamp(1.15rem, 2vw, 1.45rem);
	color: #fff;
}

.es-resources-cta__copy p {
	margin: 0;
	max-width: 52ch;
	color: rgba(255, 255, 255, 0.82);
	font-size: 0.92rem;
	line-height: 1.6;
}

.es-resources-cta .es-resources-note {
	margin-top: 0.65rem;
	color: rgba(255, 255, 255, 0.55);
	font-size: 0.82rem;
}

.es-resources-cta .es-btn-primary {
	flex-shrink: 0;
}

.es-resources-block--videos {
	scroll-margin-top: 6rem;
}

.es-resources-block--dosing {
	scroll-margin-top: 6rem;
}

.es-resources-block--dosing .es-tech-dosing {
	margin: 0;
}

.es-resources-block--dosing .es-tech-dosing__intro {
	margin-bottom: 1.25rem;
	text-align: left;
}

.es-resources-block--dosing .es-tech-dosing__title {
	margin: 0 0 0.35rem;
	max-width: none;
	font-size: clamp(1.25rem, 2.2vw, 1.55rem);
	line-height: 1.2;
	font-weight: 800;
	color: #152d4a;
}

.es-resources-block--dosing .es-tech-dosing__lead {
	margin: 0;
	max-width: 62ch;
	color: #5a6a78;
	font-size: 0.95rem;
	line-height: 1.6;
	text-align: left;
}

.es-video-gallery {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr));
	gap: 1.35rem;
}

.es-video-card {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	padding: 1rem;
	border-radius: 18px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 10px 28px rgba(8, 20, 32, 0.06);
}

.es-video-card__player,
.es-video-player {
	position: relative;
	overflow: hidden;
	border-radius: 14px;
	background: #152d4a;
	aspect-ratio: 16 / 9;
}

.es-video-card__player video,
.es-video-player video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	background: #000;
}

.es-video-card__title {
	margin: 0;
	font-size: 1rem;
	font-weight: 700;
	color: #152d4a;
	line-height: 1.3;
}

.es-video-card__text {
	margin: 0;
	font-size: 0.88rem;
	line-height: 1.55;
	color: rgba(8, 20, 32, 0.68);
}

.es-marketing-video-section {
	padding: 0 !important;
	margin: 0 !important;
	overflow: hidden;
}

.es-marketing-video-section > .elementor-container,
.es-marketing-video-section .elementor-column,
.es-marketing-video-section .elementor-widget-wrap,
.es-marketing-video-section .elementor-widget-container {
	max-width: none !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
}

.es-marketing-video {
	position: relative;
	padding: clamp(3rem, 6vw, 5rem) clamp(1.25rem, 4vw, 2.5rem);
	background:
		radial-gradient(circle at 15% 20%, rgba(0, 170, 240, 0.18) 0%, transparent 42%),
		radial-gradient(circle at 85% 75%, rgba(21, 101, 168, 0.22) 0%, transparent 38%),
		linear-gradient(135deg, #152d4a 0%, #1e3a5f 48%, #152d4a 100%);
	color: #fff;
	overflow: hidden;
}

.es-marketing-video__bg {
	position: absolute;
	inset: 0;
	pointer-events: none;
	overflow: hidden;
}

.es-marketing-video__orb {
	position: absolute;
	border-radius: 50%;
	filter: blur(60px);
	opacity: 0.55;
	animation: es-marketing-video-float 12s ease-in-out infinite;
}

.es-marketing-video__orb--1 {
	width: 320px;
	height: 320px;
	top: -80px;
	left: -60px;
	background: rgba(0, 170, 240, 0.35);
}

.es-marketing-video__orb--2 {
	width: 280px;
	height: 280px;
	right: 8%;
	bottom: -100px;
	background: rgba(21, 101, 168, 0.4);
	animation-delay: -4s;
}

.es-marketing-video__orb--3 {
	width: 180px;
	height: 180px;
	top: 35%;
	left: 42%;
	background: rgba(0, 220, 180, 0.15);
	animation-delay: -7s;
}

@keyframes es-marketing-video-float {
	0%,
	100% {
		transform: translate3d(0, 0, 0) scale(1);
	}
	50% {
		transform: translate3d(0, -18px, 0) scale(1.06);
	}
}

.es-marketing-video__inner {
	position: relative;
	z-index: 1;
	max-width: 1180px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.18fr);
	gap: clamp(1.75rem, 4vw, 3.5rem);
	align-items: center;
}

.es-marketing-video__badge {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	margin: 0 0 1rem;
	padding: 0.45rem 0.9rem 0.45rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgba(0, 170, 240, 0.35);
	background: rgba(0, 170, 240, 0.12);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #7dd3fc;
}

.es-marketing-video__badge-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.65rem;
	height: 1.65rem;
	border-radius: 50%;
	background: linear-gradient(135deg, #00aaf0 0%, #3a8fa8 100%);
	color: #152d4a;
	box-shadow: 0 6px 18px rgba(0, 170, 240, 0.45);
}

.es-marketing-video__badge-icon svg {
	width: 0.72rem;
	height: 0.72rem;
	fill: currentColor;
	stroke: none;
	margin-left: 2px;
}

.es-marketing-video__title {
	margin: 0 0 0.85rem;
	font-size: clamp(1.85rem, 4vw, 2.75rem);
	line-height: 1.08;
	font-weight: 800;
	color: #fff;
	letter-spacing: -0.02em;
}

.es-marketing-video__accent {
	display: inline-block;
	background: linear-gradient(90deg, #00aaf0 0%, #5eead4 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.es-marketing-video__lead {
	margin: 0 0 1.35rem;
	max-width: 44ch;
	font-size: clamp(0.98rem, 1.6vw, 1.08rem);
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.78);
}

.es-marketing-video__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	margin: 0 0 1.75rem;
	padding: 0;
	list-style: none;
}

.es-marketing-video__chips li {
	padding: 0.42rem 0.85rem;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: rgba(255, 255, 255, 0.06);
	font-size: 0.78rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.88);
	backdrop-filter: blur(8px);
}

.es-marketing-video__actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.85rem;
}

.es-marketing-video__cta {
	padding: 0.95rem 1.65rem !important;
	font-size: 0.95rem;
	box-shadow:
		0 12px 32px rgba(0, 170, 240, 0.42),
		0 0 0 1px rgba(255, 255, 255, 0.12) inset !important;
}

.es-marketing-video__cta:hover {
	transform: translateY(-3px);
	box-shadow:
		0 18px 40px rgba(0, 170, 240, 0.55),
		0 0 0 1px rgba(255, 255, 255, 0.18) inset !important;
}

.es-marketing-video__now-playing {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	margin: 0;
	font-size: 0.84rem;
	color: rgba(255, 255, 255, 0.62);
}

.es-marketing-video__now-playing strong {
	color: rgba(255, 255, 255, 0.88);
	font-weight: 700;
}

.es-marketing-video__pulse {
	width: 0.55rem;
	height: 0.55rem;
	border-radius: 50%;
	background: #00aaf0;
	box-shadow: 0 0 0 0 rgba(0, 170, 240, 0.7);
	animation: es-marketing-video-pulse 2s ease-out infinite;
	flex-shrink: 0;
}

@keyframes es-marketing-video-pulse {
	0% {
		box-shadow: 0 0 0 0 rgba(0, 170, 240, 0.65);
	}
	70% {
		box-shadow: 0 0 0 10px rgba(0, 170, 240, 0);
	}
	100% {
		box-shadow: 0 0 0 0 rgba(0, 170, 240, 0);
	}
}

.es-marketing-video__media {
	position: relative;
}

.es-marketing-video__frame {
	position: relative;
	padding: 0.65rem;
	border-radius: 24px;
	background: linear-gradient(145deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0.04) 100%);
	border: 1px solid rgba(255, 255, 255, 0.14);
	box-shadow:
		0 28px 60px rgba(0, 0, 0, 0.45),
		0 0 0 1px rgba(0, 170, 240, 0.12);
	backdrop-filter: blur(12px);
	transform: perspective(1200px) rotateY(-4deg);
	transition: transform 0.45s ease, box-shadow 0.45s ease;
}

.es-marketing-video__frame:hover {
	transform: perspective(1200px) rotateY(0deg) translateY(-4px);
	box-shadow:
		0 36px 70px rgba(0, 0, 0, 0.5),
		0 0 48px rgba(0, 170, 240, 0.18);
}

.es-marketing-video__frame-glow {
	position: absolute;
	inset: -20%;
	background: radial-gradient(circle, rgba(0, 170, 240, 0.22) 0%, transparent 68%);
	pointer-events: none;
	z-index: 0;
}

.es-marketing-video__frame-ring {
	position: absolute;
	inset: -2px;
	border-radius: 26px;
	padding: 2px;
	background: linear-gradient(135deg, rgba(0, 170, 240, 0.85), rgba(94, 234, 212, 0.35), rgba(21, 101, 168, 0.6));
	-webkit-mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	pointer-events: none;
	z-index: 2;
}

.es-marketing-video__player {
	position: relative;
	z-index: 1;
	overflow: hidden;
	border-radius: 18px;
	background: #000;
	aspect-ratio: 16 / 9;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.es-marketing-video__player video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	background: #000;
}

@media (max-width: 760px) {
	.es-resources-link-grid,
	.es-resources-tools-grid {
		grid-template-columns: 1fr;
	}

	.es-resources-shell {
		padding-top: 2rem;
	}

	.es-resources-cta {
		flex-direction: column;
		align-items: flex-start;
	}

	.es-resources-pdf-row__action {
		display: none;
	}

	.es-marketing-video__inner {
		grid-template-columns: 1fr;
	}

	.es-marketing-video__frame {
		transform: none;
	}

	.es-marketing-video__frame:hover {
		transform: translateY(-2px);
	}
}

.es-product-anchor:target {
	outline: 3px solid #00aaf0;
	outline-offset: 4px;
}

@media (max-width: 900px) {
	.es-tech-grid,
	.es-world-map--interactive .es-world-map__layout,
	.es-success-card--photo,
	.es-seo-landing__grid,
	.es-scenario-grid {
		grid-template-columns: 1fr;
	}

	.es-tech-compare-card__cols {
		grid-template-columns: 1fr;
	}

	.es-tech-compare-card__col--alt {
		border-right: 0;
		border-bottom: 1px solid rgba(8, 20, 32, 0.06);
	}

	.es-world-map__region-grid {
		grid-template-columns: 1fr;
	}
}

.es-scenario-disclaimer {
	font-size: 0.88rem;
	color: #425466;
	padding: 0.85rem 1rem;
	border-radius: 14px;
	background: rgba(21, 101, 168, 0.06);
	border: 1px solid rgba(21, 101, 168, 0.12);
	margin: 0 0 1.75rem;
	line-height: 1.55;
}

.es-hub-scenarios-section,
.elementor-element-eshub01 {
	padding: 0 !important;
	margin-top: 0 !important;
}

.es-hub-scenarios-section > .elementor-container,
.es-hub-scenarios-section .elementor-column,
.es-hub-scenarios-section .elementor-widget-wrap,
.es-hub-scenarios-section .elementor-widget-html,
.es-hub-scenarios-section .elementor-widget-container {
	padding: 0 !important;
	background: transparent !important;
}

.page-id-3404,
.page-id-3405 {
	background: var(--es-white);
}

.es-hub-scenarios {
	padding: 0 0 4rem;
	background: #fff;
}

.es-scenarios-shell {
	max-width: 980px;
	margin: 0 auto;
	padding: 2.5rem 5% 0;
}

.es-scenario-grid-cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
}

.es-scenario-card {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	border-radius: 18px;
	overflow: hidden;
	background: #fff;
	border: 1px solid rgba(21, 101, 168, 0.1);
	box-shadow: 0 14px 36px rgba(8, 28, 42, 0.08);
	text-decoration: none !important;
	transition:
		transform 0.32s var(--es-ease),
		box-shadow 0.32s var(--es-ease),
		border-color 0.32s var(--es-ease);
}

.es-scenario-card:hover {
	transform: translateY(-5px);
	border-color: rgba(94, 196, 224, 0.45);
	box-shadow:
		0 22px 48px rgba(8, 28, 42, 0.14),
		0 0 0 1px rgba(94, 196, 224, 0.18);
}

.es-scenario-card__media {
	display: block;
	height: 190px;
	background-color: #edf3f9;
	overflow: hidden;
}

.es-scenario-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.es-scenario-card__body {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	padding: 1.1rem 1.15rem 1.15rem;
	min-height: 0;
	flex: 1 1 auto;
}

.es-scenario-card__tag {
	color: var(--es-accent-blue, #3a8fa8);
	font-size: 0.72rem;
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.es-scenario-card__title {
	color: #152d4a;
	font-size: 1.15rem;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.es-scenario-card__text {
	color: #5a6a78;
	font-size: 0.88rem;
	line-height: 1.55;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.es-scenario-card__arrow {
	margin-top: auto;
	padding-top: 0.45rem;
	color: #3a8fa8;
	font-size: 1.1rem;
	font-weight: 700;
	opacity: 0.55;
	transition: transform 0.22s var(--es-ease), opacity 0.22s var(--es-ease);
}

.es-scenario-card:hover .es-scenario-card__arrow {
	opacity: 1;
	transform: translateX(3px);
}

@media (max-width: 760px) {
	.es-scenario-grid-cards {
		grid-template-columns: 1fr;
	}

	.es-scenarios-shell {
		padding-top: 2rem;
	}
}

.es-hub-card--scenario {
	display: grid;
	gap: 0.35rem;
	min-height: 180px;
	overflow: hidden;
}

.es-hub-card__media {
	display: block;
	height: 100px;
	background-size: cover;
	background-position: center;
	border-radius: 10px;
	margin-bottom: 0.25rem;
}

.es-hub-card__title {
	font-weight: 700;
}

.es-scenario-detail {
	padding: 0;
}

.es-scenario-disclaimer--detail {
	margin: 0 0 1.5rem;
	padding: 0.85rem 1.05rem;
	border-radius: 12px;
	background: rgba(94, 196, 224, 0.08);
	border: 1px solid rgba(94, 196, 224, 0.22);
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.88rem;
	line-height: 1.55;
	max-width: none;
}

.es-scenario-detail .es-scenario-sections {
	margin-top: 0;
}

.es-scenario-detail .es-crosslinks {
	margin-top: 2rem;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.es-scenario-detail .es-crosslinks__label {
	color: rgba(255, 255, 255, 0.5);
}

.es-scenario-detail .es-crosslinks a {
	color: #5ec4e0;
	background: rgba(94, 196, 224, 0.1);
}

.es-scenario-detail .es-crosslinks a:hover {
	background: #5ec4e0;
	color: #0d0e0f;
}

.es-scenario-hero img {
	width: 100%;
	max-height: 280px;
	object-fit: cover;
	border-radius: 16px;
	margin-bottom: 1rem;
}

.es-scenario-detail__title {
	font-size: clamp(1.85rem, 3.5vw, 2.5rem);
	margin: 0 0 0.5rem;
}

.es-scenario-detail__lead {
	font-size: 1.05rem;
	max-width: 780px;
	margin-bottom: 1.25rem;
}

.es-scenario-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin-bottom: 1.25rem;
}

.es-scenario-grid section {
	padding: 1rem;
	border-radius: 14px;
	background: #f4f8fb;
	border: 1px solid rgba(8, 20, 32, 0.08);
}

.es-scenario-grid h2 {
	margin: 0 0 0.45rem;
	font-size: 1rem;
	color: #3a8fa8;
}

.es-scenario-outcomes {
	margin: 0 0 1.5rem;
	padding-left: 1.2rem;
}

.es-scenario-outcomes li {
	margin-bottom: 0.35rem;
}

.es-crosslinks {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 0.75rem;
	margin-top: 2rem;
	padding-top: 1.25rem;
	border-top: 1px solid var(--es-border);
}

.es-crosslinks__label {
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--es-muted);
	margin-right: 0.25rem;
}

.es-crosslinks a {
	font-size: 0.88rem;
	font-weight: 600;
	color: #3a8fa8;
	text-decoration: none;
	padding: 0.35rem 0.65rem;
	border-radius: 999px;
	background: rgba(21, 101, 168, 0.08);
}

.es-crosslinks a:hover {
	background: #3a8fa8;
	color: #fff;
}

.es-industry-hero__photo,
.es-ind-photo,
.es-hub-card__media {
	content-visibility: auto;
}

.es-hub-about-section,
.elementor-element-esabout01 {
	padding: 0 !important;
	margin-top: 0 !important;
}

.es-hub-about-section > .elementor-container,
.es-hub-about-section .elementor-column,
.es-hub-about-section .elementor-widget-wrap,
.es-hub-about-section .elementor-widget-html,
.es-hub-about-section .elementor-widget-container {
	padding: 0 !important;
	background: transparent !important;
}

.es-hub-about {
	padding: 0 0 4rem;
	background: #fff;
}

.es-about-hero {
	min-height: clamp(380px, 48vh, 520px);
	background-position: center center !important;
	background-size: cover !important;
	background-repeat: no-repeat !important;
}

.es-about-feature {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	gap: 1.35rem;
	align-items: stretch;
}

.es-about-feature--reverse {
	direction: rtl;
}

.es-about-feature--reverse > * {
	direction: ltr;
}

.es-about-feature__media {
	position: relative;
	min-height: 280px;
	border-radius: 22px;
	overflow: hidden;
	box-shadow: 0 18px 42px rgba(8, 20, 32, 0.12);
}

.es-about-feature__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.es-about-feature__content {
	padding: 1.65rem 1.75rem;
	border-radius: 22px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 10px 28px rgba(8, 20, 32, 0.05);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.es-about-feature__content h2 {
	margin: 0 0 0.85rem;
	font-size: clamp(1.2rem, 2vw, 1.45rem);
	color: #152d4a;
}

.es-about-feature__content p {
	margin: 0;
	color: #425466;
	font-size: 0.98rem;
	line-height: 1.7;
}

.es-about-feature__content p + p {
	margin-top: 0.95rem;
}

.es-about-banner {
	margin-bottom: 1.15rem;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 16px 38px rgba(8, 20, 32, 0.1);
	max-height: 260px;
}

.es-about-banner img {
	width: 100%;
	height: 100%;
	min-height: 200px;
	max-height: 260px;
	object-fit: cover;
	display: block;
}

.es-about-banner--values {
	max-height: 220px;
}

.es-about-banner--values img {
	max-height: 220px;
}

.es-about-promise-wrap {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
	gap: 1.15rem;
	align-items: stretch;
}

.es-about-promise-wrap__media {
	border-radius: 20px;
	overflow: hidden;
	min-height: 100%;
	box-shadow: 0 16px 38px rgba(8, 20, 32, 0.12);
}

.es-about-promise-wrap__media img {
	width: 100%;
	height: 100%;
	min-height: 280px;
	object-fit: cover;
	display: block;
}

.es-about-shell {
	max-width: 980px;
	margin: 0 auto;
	padding: 2.5rem 5% 0;
}

.es-about-block {
	margin-bottom: 2.75rem;
}

.es-about-block__head {
	margin-bottom: 1.25rem;
}

.es-about-block__head h2 {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 2.2vw, 1.55rem);
	color: #152d4a;
}

.es-about-block__head p {
	margin: 0;
	max-width: 62ch;
	color: #5a6a78;
	font-size: 0.95rem;
	line-height: 1.6;
}

.es-about-story-card {
	padding: 1.75rem 1.85rem;
	border-radius: 20px;
	background: linear-gradient(135deg, #f4f8fb 0%, #eef4f8 100%);
	border: 1px solid rgba(8, 20, 32, 0.06);
	box-shadow: 0 10px 28px rgba(8, 20, 32, 0.04);
}

.es-about-story-card h2 {
	margin: 0 0 0.75rem;
	font-size: clamp(1.2rem, 2vw, 1.45rem);
	color: #152d4a;
}

.es-about-story-card p {
	margin: 0;
	color: #425466;
	font-size: 1.02rem;
	line-height: 1.7;
}

.es-about-story-card p + p {
	margin-top: 1rem;
}

.es-about-stats-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin-bottom: 2.75rem;
}

.es-about-stat-card {
	padding: 1.35rem 1.2rem;
	border-radius: 18px;
	background: linear-gradient(180deg, #fff 0%, #f7fbfd 100%);
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 10px 26px rgba(8, 20, 32, 0.05);
	text-align: center;
	transition: transform 0.22s var(--es-ease), box-shadow 0.22s var(--es-ease);
}

.es-about-stat-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 32px rgba(21, 101, 168, 0.1);
}

.es-about-stat-card strong {
	display: block;
	margin-bottom: 0.35rem;
	font-size: clamp(1.85rem, 3vw, 2.35rem);
	line-height: 1;
	color: #152d4a;
}

.es-about-stat-card span {
	display: block;
	font-size: 0.88rem;
	font-weight: 600;
	color: #5a6a78;
}

.es-about-pillars {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.es-about-pillar {
	padding: 1.35rem 1.25rem 1.45rem;
	border-radius: 18px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 8px 22px rgba(8, 20, 32, 0.04);
}

.es-about-pillar__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.55rem;
	height: 2.55rem;
	margin-bottom: 0.85rem;
	border-radius: 11px;
	background: rgba(21, 101, 168, 0.1);
	color: #3a8fa8;
}

.es-about-pillar__icon svg {
	width: 1.25rem;
	height: 1.25rem;
}

.es-about-pillar__title {
	margin: 0 0 0.45rem;
	font-size: 1.02rem;
	color: #152d4a;
}

.es-about-pillar__text {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.55;
	color: #5a6a78;
}

.es-about-statements {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.es-about-statement {
	padding: 1.35rem 1.25rem 1.45rem;
	border-radius: 18px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 8px 22px rgba(8, 20, 32, 0.04);
	border-top: 3px solid rgba(0, 170, 240, 0.55);
}

.es-about-statement__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.55rem;
	height: 2.55rem;
	margin-bottom: 0.85rem;
	border-radius: 11px;
	background: rgba(21, 101, 168, 0.1);
	color: #3a8fa8;
}

.es-about-statement__icon svg {
	width: 1.25rem;
	height: 1.25rem;
}

.es-about-statement__title {
	margin: 0 0 0.65rem;
	font-size: 1.02rem;
	color: #152d4a;
}

.es-about-statement__text {
	margin: 0;
	font-size: 0.88rem;
	line-height: 1.65;
	color: #5a6a78;
}

.es-about-statement__text + .es-about-statement__text {
	margin-top: 0.75rem;
}

.es-about-story-card--value,
.es-about-story-card--positioning,
.es-about-story-card--institutional {
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 8px 22px rgba(8, 20, 32, 0.04);
}

.es-about-promise-card {
	padding: 1.75rem 1.85rem;
	border-radius: 20px;
	background: linear-gradient(135deg, #152d4a 0%, #0d3550 100%);
	color: #fff;
}

.es-about-promise-card h2 {
	margin: 0 0 1rem;
	font-size: clamp(1.2rem, 2vw, 1.45rem);
	color: #fff;
}

.es-about-promise-list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 0.65rem;
}

.es-about-promise-list li {
	display: flex;
	align-items: flex-start;
	gap: 0.55rem;
	padding-left: 0;
	font-size: 0.92rem;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.9);
	list-style: none !important;
}

.es-about-promise-list li::marker {
	content: none !important;
}

.es-about-promise-list li::before {
	content: "";
	flex: 0 0 0.45rem;
	width: 0.45rem;
	height: 0.45rem;
	margin-top: 0.58em;
	border-radius: 50%;
	background: #00aaf0;
	position: static;
	left: auto;
	top: auto;
}

.es-about-values {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.es-about-value {
	padding: 1.25rem 1.15rem 1.35rem;
	border-radius: 16px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 8px 22px rgba(8, 20, 32, 0.04);
}

.es-about-value__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.35rem;
	height: 2.35rem;
	margin-bottom: 0.75rem;
	border-radius: 10px;
	background: rgba(0, 170, 240, 0.1);
	color: #3a8fa8;
}

.es-about-value__icon svg {
	width: 1.15rem;
	height: 1.15rem;
}

.es-about-value__title {
	margin: 0 0 0.4rem;
	font-size: 0.98rem;
	color: #152d4a;
}

.es-about-value__text {
	margin: 0;
	font-size: 0.84rem;
	line-height: 1.55;
	color: #5a6a78;
}

.es-about-block--map .es-about-map-panel {
	padding: 1.35rem;
	border-radius: 22px;
	background: #f4f8fb;
	border: 1px solid rgba(8, 20, 32, 0.06);
}

.es-about-block--map .es-world-map {
	margin: 0;
}

.es-about-block--map .es-world-map__lead {
	margin-top: 0;
}

.es-about-partners {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
}

.es-about-partner-chip {
	display: inline-flex;
	align-items: center;
	padding: 0.55rem 0.95rem;
	border-radius: 999px;
	background: #152d4a;
	color: #fff;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.02em;
}

.es-about-cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1.25rem;
	padding: 1.75rem 1.85rem;
	border-radius: 20px;
	background: linear-gradient(135deg, #152d4a 0%, #0d3550 100%);
	color: #fff;
	position: relative;
	overflow: hidden;
}

.es-about-cta--visual {
	background-size: cover;
	background-position: center;
}

.es-about-cta__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(8, 20, 32, 0.88) 0%, rgba(13, 53, 80, 0.82) 100%);
	pointer-events: none;
}

.es-about-cta--visual .es-about-cta__copy,
.es-about-cta--visual .es-btn-primary {
	position: relative;
	z-index: 1;
}

.es-about-cta__copy h2 {
	margin: 0 0 0.45rem;
	font-size: clamp(1.15rem, 2vw, 1.45rem);
	color: #fff;
}

.es-about-cta__copy p {
	margin: 0;
	max-width: 52ch;
	color: rgba(255, 255, 255, 0.82);
	font-size: 0.92rem;
	line-height: 1.6;
}

.es-about-cta .es-btn-primary {
	flex-shrink: 0;
}

@media (max-width: 860px) {
	.es-about-stats-grid,
	.es-about-pillars,
	.es-about-statements,
	.es-about-values,
	.es-about-feature,
	.es-about-promise-wrap {
		grid-template-columns: 1fr;
	}

	.es-about-feature--reverse {
		direction: ltr;
	}

	.es-about-feature__media {
		min-height: 220px;
	}

	.es-about-promise-wrap__media img {
		min-height: 220px;
	}

	.es-about-shell {
		padding-top: 2rem;
	}

	.es-about-cta {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* ── Contact hub ─────────────────────────────────────── */
.es-hub-contact-section,
.elementor-element-escontact01.es-hub-contact-section {
	padding: 0 !important;
	margin-top: 0 !important;
}

.es-hub-contact-section > .elementor-container,
.es-hub-contact-section .elementor-column,
.es-hub-contact-section .elementor-widget-wrap,
.es-hub-contact-section .elementor-widget-html,
.es-hub-contact-section .elementor-widget-container {
	padding: 0 !important;
	background: transparent !important;
}

.es-hub-contact {
	padding: 0 0 1.5rem;
	background: #fff;
}

.es-contact-hero {
	min-height: clamp(340px, 44vh, 460px);
}

.es-contact-hero__trust {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.55rem;
	margin-top: 1.35rem;
}

.es-contact-trust-chip {
	display: inline-flex;
	align-items: center;
	padding: 0.45rem 0.85rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.18);
	color: rgba(255, 255, 255, 0.92);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.02em;
}

.es-contact-shell {
	max-width: 980px;
	margin: 0 auto;
	padding: 2.5rem 5% 0;
}

.es-contact-block {
	margin-bottom: 2.5rem;
}

.es-contact-block__head {
	margin-bottom: 1.15rem;
}

.es-contact-block__head h2 {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 2.2vw, 1.55rem);
	color: #152d4a;
}

.es-contact-block__head p {
	margin: 0;
	max-width: 62ch;
	color: #5a6a78;
	font-size: 0.95rem;
	line-height: 1.6;
}

.es-contact-channel-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem;
}

.es-contact-channel {
	display: flex;
	align-items: center;
	gap: 0.9rem;
	padding: 1rem 1.1rem;
	border-radius: 16px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 8px 22px rgba(8, 20, 32, 0.05);
	text-decoration: none !important;
	transition:
		transform 0.22s var(--es-ease),
		border-color 0.22s var(--es-ease),
		box-shadow 0.22s var(--es-ease);
}

a.es-contact-channel:hover {
	transform: translateY(-2px);
	border-color: rgba(21, 101, 168, 0.22);
	box-shadow: 0 12px 28px rgba(21, 101, 168, 0.1);
}

.es-contact-channel__icon {
	flex-shrink: 0;
	width: 2.85rem;
	height: 2.85rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	background: rgba(21, 101, 168, 0.1);
	color: #3a8fa8;
}

.es-contact-channel__icon svg {
	width: 1.35rem;
	height: 1.35rem;
	display: block;
}

.es-contact-channel__body {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 0.12rem;
}

.es-contact-channel__tag {
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #3a8fa8;
}

.es-contact-channel__title {
	font-size: 0.98rem;
	font-weight: 700;
	color: #152d4a;
	line-height: 1.25;
}

.es-contact-channel__value {
	font-size: 0.84rem;
	line-height: 1.45;
	color: #5a6a78;
}

.es-contact-channel__arrow {
	flex-shrink: 0;
	margin-left: auto;
	color: #3a8fa8;
	font-size: 1.1rem;
	font-weight: 700;
}

.es-contact-intake-panel {
	padding: 1.5rem 1.45rem 1.35rem;
	border-radius: 20px;
	background: #fff;
	border: 1px solid rgba(8, 20, 32, 0.08);
	box-shadow: 0 10px 28px rgba(8, 20, 32, 0.05);
}

.es-hub-contact .es-contact-intake {
	margin: 0;
	padding: 0;
	background: transparent;
}

.es-hub-contact .es-contact-intake h3 {
	margin: 0 0 1rem;
	font-size: 1.05rem;
	color: #152d4a;
}

.es-hub-contact .es-contact-intake-grid label {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	font-size: 0.82rem;
	font-weight: 700;
	color: #425466;
}

.es-hub-contact .es-contact-intake-grid select,
.es-hub-contact .es-contact-intake-grid input {
	width: 100%;
	padding: 0.55rem 0.7rem;
	border-radius: 10px;
	border: 1px solid rgba(8, 20, 32, 0.12);
	background: #fff;
	font-size: 0.9rem;
}

.es-hub-contact .es-contact-intake-note {
	margin: 0.85rem 0 0;
	font-size: 0.84rem;
	line-height: 1.5;
	color: #5a6a78;
}

.es-hub-contact .es-contact-recommendation {
	margin-top: 0.85rem;
}

.es-contact-form-jump {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.35rem 1.5rem;
	border-radius: 18px;
	background: linear-gradient(135deg, #152d4a 0%, #0d3550 100%);
	color: #fff;
	margin-bottom: 2rem;
}

.es-contact-form-jump__copy h2 {
	margin: 0 0 0.35rem;
	font-size: clamp(1.05rem, 2vw, 1.35rem);
	color: #fff;
}

.es-contact-form-jump__copy p {
	margin: 0;
	max-width: 52ch;
	color: rgba(255, 255, 255, 0.82);
	font-size: 0.9rem;
	line-height: 1.55;
}

.es-contact-form-jump__btn {
	flex-shrink: 0;
	border-color: rgba(255, 255, 255, 0.35) !important;
	color: #fff !important;
}

.es-contact-form-jump__btn:hover {
	background: rgba(255, 255, 255, 0.1) !important;
}

@media (max-width: 860px) {
	.es-contact-channel-grid {
		grid-template-columns: 1fr;
	}

	.es-contact-form-jump {
		flex-direction: column;
		align-items: flex-start;
	}
}

.es-industry-brand,
.es-contact-brand,
.es-tech-page__brand {
	max-width: 70ch;
	margin: 0 0 1.5rem;
	color: var(--es-muted, #4a6072);
	font-size: 1.05rem;
	line-height: 1.6;
}

.es-contact-intake--unified .es-contact-intake__title {
	margin: 0 0 0.5rem;
	font-size: clamp(1.35rem, 2vw, 1.75rem);
}

.es-contact-intake--unified .es-contact-intake__lead {
	margin: 0 0 1.25rem;
	color: var(--es-muted, #4a6072);
}

.es-contact-intake__full {
	grid-column: 1 / -1;
}

.es-contact-intake__full textarea {
	width: 100%;
	min-height: 120px;
}

.es-tech-benefits {
	margin: 2.5rem 0;
	padding: 1.75rem;
	border-radius: 16px;
	background: linear-gradient(135deg, rgba(21, 101, 168, 0.08), rgba(21, 101, 168, 0.02));
}

.es-tech-benefits__list {
	margin: 0;
	padding-left: 1.2rem;
}

.es-tech-benefits__list li + li {
	margin-top: 0.5rem;
}

.es-tech-cta__prompt {
	margin: 0 0 1rem;
	font-size: 1.15rem;
	font-weight: 600;
}

.es-footer-identity {
	max-width: 760px;
	margin: 0 auto 2rem;
	text-align: center;
}

.es-footer-identity__text {
	margin: 0 auto 1.35rem;
	max-width: 62ch;
	line-height: 1.65;
	color: rgba(18, 28, 38, 0.82);
	font-size: 1rem;
}

.es-footer-quicklinks {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.65rem;
}

.es-footer-quicklinks a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 0.45rem 1rem;
	border-radius: 999px;
	border: 1px solid rgba(21, 101, 168, 0.18);
	background: rgba(255, 255, 255, 0.72);
	color: #1e3a5f !important;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-decoration: none !important;
	text-transform: uppercase;
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
	transition:
		color 0.22s var(--es-ease, ease),
		background 0.22s var(--es-ease, ease),
		border-color 0.22s var(--es-ease, ease),
		transform 0.22s var(--es-ease, ease),
		box-shadow 0.22s var(--es-ease, ease);
}

.es-footer-quicklinks a:hover,
.es-footer-quicklinks a:focus-visible {
	color: #152d4a !important;
	background: var(--es-accent-cyan, #5ec4e0);
	border-color: rgba(94, 196, 224, 0.75);
	text-decoration: none !important;
	transform: translateY(-1px);
	box-shadow: 0 8px 20px rgba(94, 196, 224, 0.28);
}

.es-footer-quicklinks a:focus-visible {
	outline: 2px solid rgba(21, 101, 168, 0.35);
	outline-offset: 2px;
}
