/**
 * Elementor <-> Accel layout bridge
 * Restores Accel grid/height sizing when Elementor .e-con flex wrappers win specificity.
 * Elementor 4: children sit directly under .e-con (no .e-con-inner).
 */

/* ---------- Kill Elementor flex on Accel layout shells ---------- */
.elementor .elementor-element.product-grid.e-con,
.elementor .elementor-element.hero-grid.e-con,
.elementor .elementor-element.benchmark-layout.e-con,
.elementor .elementor-element.section-heading.e-con,
.elementor .elementor-element.area-grid.e-con,
.elementor .elementor-element.proof-layout.e-con,
.elementor .elementor-element.proof-cards.e-con,
.elementor .elementor-element.faq-layout.e-con,
.elementor .elementor-element.customer-testimonials-grid.e-con,
.elementor .elementor-element.card-actions.e-con,
.elementor .elementor-element.hero-actions.e-con,
.elementor .elementor-element.section-cta.e-con {
	--padding-top: 0px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--gap: 0px;
	flex-direction: unset !important;
	flex-wrap: unset !important;
	align-items: unset !important;
	justify-content: unset !important;
	padding: 0 !important;
	max-width: 100% !important;
	width: 100% !important;
	min-height: 0 !important;
	height: auto !important;
}

/* ---------- Product grid: 4 columns ---------- */
.elementor .elementor-element.product-grid.e-con {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 1rem !important;
	align-items: stretch !important;
}

.elementor .elementor-element.product-grid.e-con > .elementor-element {
	--width: 100%;
	--flex-grow: 0;
	--flex-shrink: 1;
	width: auto !important;
	max-width: 100% !important;
	min-width: 0 !important;
	flex: none !important;
	align-self: stretch !important;
}

.elementor .elementor-element.product-card.e-con {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	min-height: 0 !important;
	padding: 0 !important;
	gap: 0 !important;
	overflow: hidden !important;
	border: 1px solid #dbe3e8 !important;
	border-top: 2px solid transparent !important;
	border-radius: 9px !important;
	background: #fff !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: transform .22s cubic-bezier(.23, 1, .32, 1), box-shadow .22s ease, border-color .22s ease;
}

.elementor .elementor-element.product-card .product-card-link {
	position: absolute;
	z-index: 1;
	inset: 0;
	border-radius: inherit;
}

.elementor .elementor-element.product-card .card-actions.e-con,
.elementor .elementor-element.product-card .coa-badge-wrap,
.elementor .elementor-element.product-card .coa-badge {
	position: relative;
	z-index: 2 !important;
}

.elementor .elementor-element.product-card-link-wrap {
	position: absolute !important;
	z-index: 1 !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	pointer-events: none;
}

.elementor .elementor-element.product-card-link-wrap .product-card-link,
.elementor .elementor-element.product-card-link-wrap a {
	pointer-events: auto;
}

.elementor .elementor-element.product-card.e-con:hover {
	transform: translateY(-5px);
	border-color: #b8d9ec !important;
	border-top-color: var(--accent-blue) !important;
	box-shadow: 0 20px 30px rgba(8, 28, 40, .09) !important;
}

.elementor .elementor-element.product-card .elementor-widget,
.elementor .elementor-element.product-card .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	width: 100% !important;
}

/* Square vial image — absolute fill inside 1:1 box */
.elementor .elementor-element.product-image.e-con {
	position: relative !important;
	display: block !important;
	aspect-ratio: 1 / 1 !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	overflow: hidden !important;
	padding: 0 !important;
	gap: 0 !important;
	flex: 0 0 auto !important;
	background: #ececed !important;
	border: 0 !important;
	border-bottom: 1px solid #e5e9ef !important;
	border-radius: 0 !important;
}

.elementor .elementor-element.product-image.e-con > .elementor-widget-image {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.elementor .elementor-element.product-image.e-con > .elementor-widget-image .elementor-widget-container,
.elementor .elementor-element.product-image.e-con > .elementor-widget-image .elementor-image {
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
}

.elementor .elementor-element.product-image.e-con img {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	object-fit: cover !important;
	object-position: center !important;
	display: block !important;
	transition: transform .28s cubic-bezier(.23, 1, .32, 1);
}

.elementor .elementor-element.product-card:hover .product-image img {
	transform: scale(1.035);
}

.elementor .elementor-element.product-image .coa-badge-wrap {
	position: absolute !important;
	top: .7rem !important;
	right: .7rem !important;
	left: auto !important;
	bottom: auto !important;
	z-index: 3 !important;
	width: auto !important;
	height: auto !important;
	max-width: none !important;
}

.elementor .elementor-element.product-image .coa-badge {
	position: static !important;
	margin: 0 !important;
	padding: .34rem .42rem !important;
	border: 1px solid rgba(129, 201, 244, .56) !important;
	border-radius: 3px !important;
	color: #2c6f9b !important;
	background: rgba(255, 255, 255, .88) !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: .26rem !important;
	font: 500 .58rem / 1 "DM Mono", monospace !important;
	letter-spacing: .06em !important;
	cursor: default !important;
}

.elementor .elementor-element.product-image .coa-badge span {
	width: 5px !important;
	height: 5px !important;
	border-radius: 50% !important;
	background: var(--accent-blue) !important;
	display: inline-block !important;
}

.elementor .elementor-element.product-content.e-con {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	padding: .95rem .9rem .9rem !important;
	gap: 0 !important;
	flex: 1 1 auto !important;
	min-height: 0 !important;
	height: auto !important;
	background: #fff !important;
	border: 0 !important;
}

.elementor .elementor-element.product-content .elementor-heading-title {
	min-height: 1.45rem !important;
	margin: 0 !important;
	color: #10212a !important;
	font: 700 .88rem / 1.3 "Space Grotesk", sans-serif !important;
	letter-spacing: -.035em !important;
	text-align: left !important;
}

.elementor .elementor-element.product-content .elementor-widget-text-editor p {
	min-height: 2.45rem !important;
	margin: .18rem 0 .67rem !important;
	color: #708089 !important;
	font-size: .63rem !important;
	line-height: 1.45 !important;
	font-family: "Manrope", sans-serif !important;
	font-weight: 400 !important;
}

.elementor .elementor-element.product-content .product-tags {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: .3rem !important;
	margin: 0 !important;
}

.elementor .elementor-element.product-content .product-tags span {
	padding: .25rem .38rem !important;
	border: 1px solid #e2ebeb !important;
	border-radius: 0 !important;
	background: #f7fafb !important;
	color: #526c73 !important;
	font: 400 .5rem / 1 "DM Mono", monospace !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

.elementor .elementor-element.product-content .product-record {
	margin-top: .62rem !important;
	padding-top: .58rem !important;
	border-top: 1px solid #e8eef0 !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	gap: .35rem !important;
	color: #6b7d83 !important;
	font: 500 .47rem / 1 "DM Mono", monospace !important;
	letter-spacing: .045em !important;
}

.elementor .elementor-element.product-content .product-record span {
	display: inline-flex !important;
	align-items: center !important;
	gap: .24rem !important;
	white-space: nowrap !important;
}

.elementor .elementor-element.product-content .product-record i {
	display: inline-block !important;
	width: 5px !important;
	height: 5px !important;
	border-radius: 50% !important;
	background: var(--accent-blue) !important;
	box-shadow: 0 0 0 3px rgba(129, 201, 244, .16) !important;
	font-style: normal !important;
	flex: 0 0 auto !important;
}

.elementor .elementor-element.product-content .product-record b {
	color: #277db5 !important;
	font-weight: 700 !important;
}

.elementor .elementor-element.product-content .product-price {
	margin: .65rem 0 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	line-height: 1 !important;
}

.elementor .elementor-element.product-content .product-price small {
	color: #7a868c !important;
	font: 500 .52rem / 1.1 "DM Mono", monospace !important;
}

.elementor .elementor-element.product-content .product-price strong {
	margin-top: .16rem !important;
	color: #172831 !important;
	font: 700 1rem / 1 "Space Grotesk", sans-serif !important;
	letter-spacing: -.05em !important;
}

.elementor .elementor-element.card-actions.e-con {
	display: grid !important;
	grid-template-columns: .9fr 1.35fr !important;
	gap: .38rem !important;
	margin-top: auto !important;
	padding-top: .15rem !important;
	width: 100% !important;
	position: relative !important;
	z-index: 2 !important;
	background: transparent !important;
	border: 0 !important;
}

.elementor .elementor-element.card-actions .elementor-widget-button,
.elementor .elementor-element.card-actions .elementor-button-wrapper,
.elementor .elementor-element.card-actions .elementor-widget-container {
	width: 100% !important;
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	display: block !important;
}

.elementor .elementor-element.card-actions .elementor-button {
	width: 100% !important;
	min-height: 31px !important;
	height: 31px !important;
	padding: 0 .5rem !important;
	border-radius: 4px !important;
	font-size: .61rem !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	box-shadow: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: .25rem !important;
	text-decoration: none !important;
	transition: transform .15s ease, background .18s ease;
}

.elementor .elementor-element.card-actions .elementor-button:before,
.elementor .elementor-element.card-actions .elementor-button:after {
	display: none !important;
	content: none !important;
}

.elementor .elementor-element.card-actions > .elementor-widget:first-child .elementor-button,
.elementor .elementor-element.card-actions .product-view-btn .elementor-button {
	border: 1px solid #e1e6e7 !important;
	background: #fff !important;
	color: #2a3d47 !important;
}

.elementor .elementor-element.card-actions > .elementor-widget:last-child .elementor-button,
.elementor .elementor-element.card-actions .product-cart-btn .elementor-button {
	background: var(--commerce) !important;
	color: #fff !important;
	border: 0 !important;
}

.elementor .elementor-element.card-actions .product-cart-btn .elementor-button-text::after {
	content: " +";
	font-weight: 800;
}

.elementor .elementor-element.card-actions .elementor-button:hover {
	transform: translateY(-1px);
}

.elementor .elementor-element.card-actions .product-cart-btn .elementor-button:hover {
	background: var(--commerce-hover) !important;
}

/* ---------- Hero ---------- */
.elementor .elementor-element.hero-section.e-con {
	display: flex !important;
	flex-direction: column !important;
	min-height: 630px !important;
	height: auto !important;
	padding: 0 !important;
	overflow: hidden !important;
	color: #fff !important;
	background-color: #020b1c !important;
	background-image:
		linear-gradient(90deg, rgba(2, 11, 28, .97) 0%, rgba(2, 14, 36, .91) 36%, rgba(2, 14, 35, .42) 62%, rgba(2, 11, 27, .15) 100%),
		linear-gradient(0deg, rgba(3, 12, 28, .68), rgba(3, 12, 28, .04) 58%),
		url("/wp-content/uploads/accel/accel-molecular-hero-navy-cyan_52e4bee1.png") !important;
	background-position: center 48% !important;
	background-size: cover !important;
	background-repeat: no-repeat !important;
}

.elementor .elementor-element.hero-grid.e-con {
	display: grid !important;
	grid-template-columns: minmax(0, 1.08fr) minmax(280px, .82fr) !important;
	align-items: center !important;
	gap: clamp(3rem, 8vw, 10rem) !important;
	min-height: 630px !important;
	padding-block: 4.65rem !important;
	padding-inline: 0 !important;
}

.elementor .elementor-element.hero-copy.e-con {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	max-width: 700px !important;
	gap: 0 !important;
	padding: 0 !important;
	height: auto !important;
}

.elementor .elementor-element.hero-section .elementor-heading-title,
.elementor .elementor-element.hero-copy .elementor-heading-title {
	color: #fff !important;
	font: 700 clamp(3.45rem, 5.5vw, 5.85rem) / .94 "Space Grotesk", sans-serif !important;
	letter-spacing: -.078em !important;
	margin: 1.15rem 0 1.4rem !important;
}

.elementor .elementor-element.hero-actions.e-con {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: .82rem !important;
	margin-top: 2rem !important;
	width: auto !important;
}

/*
 * Accel .primary-button / .ghost-button classes land on the Elementor WIDGET
 * wrapper. Strip chrome from the wrapper so only <a.elementor-button> paints.
 */
.elementor .elementor-widget-button.primary-button,
.elementor .elementor-widget-button.ghost-button,
.elementor .elementor-widget-button.coa-section-link,
.elementor .elementor-widget-button.text-button,
.elementor .elementor-widget-button.benchmark-library-link,
.elementor .elementor-element.hero-actions .elementor-widget-button {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
	min-height: 0 !important;
	height: auto !important;
	width: auto !important;
	max-width: none !important;
	flex: 0 0 auto !important;
	display: inline-flex !important;
	align-items: stretch !important;
	align-self: center !important;
}

.elementor .elementor-widget-button.primary-button .elementor-widget-container,
.elementor .elementor-widget-button.ghost-button .elementor-widget-container,
.elementor .elementor-element.hero-actions .elementor-widget-button .elementor-widget-container,
.elementor .elementor-element.hero-actions .elementor-button-wrapper {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	width: auto !important;
	display: inline-flex !important;
}

.elementor .elementor-element.hero-actions .elementor-button,
.elementor .elementor-widget-button.primary-button .elementor-button,
.elementor .elementor-widget-button.ghost-button .elementor-button {
	min-height: 50px !important;
	height: 50px !important;
	padding: 0 1.28rem !important;
	border-radius: 5px !important;
	font-size: .82rem !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: .68rem !important;
	width: auto !important;
	max-width: none !important;
	box-sizing: border-box !important;
	text-decoration: none !important;
}

.elementor .elementor-element.hero-actions .elementor-button-content-wrapper,
.elementor .elementor-widget-button.primary-button .elementor-button-content-wrapper,
.elementor .elementor-widget-button.ghost-button .elementor-button-content-wrapper {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	gap: .35rem !important;
}

.elementor .elementor-widget-button.primary-button .elementor-button {
	background: var(--commerce) !important;
	color: #fff !important;
	border: 0 !important;
	box-shadow: 0 8px 22px rgba(10, 55, 112, .24) !important;
}

.elementor .elementor-widget-button.ghost-button .elementor-button {
	background: rgba(13, 37, 55, .4) !important;
	color: #fff !important;
	border: 1px solid rgba(227, 244, 248, .3) !important;
	box-shadow: none !important;
}

.elementor .elementor-widget-button.ghost-button .elementor-button:hover {
	border-color: var(--cyan) !important;
	background: rgba(129, 201, 244, .16) !important;
	color: #fff !important;
}

.elementor .elementor-element.hero-actions .elementor-button:before,
.elementor .elementor-element.hero-actions .elementor-button:after,
.elementor .elementor-widget-button.ghost-button .elementor-button:before,
.elementor .elementor-widget-button.ghost-button .elementor-button:after,
.elementor .elementor-widget-button.primary-button .elementor-button:before,
.elementor .elementor-widget-button.primary-button .elementor-button:after,
.elementor .elementor-widget-button.coa-section-link .elementor-button:before,
.elementor .elementor-widget-button.coa-section-link .elementor-button:after {
	display: none !important;
	content: none !important;
	background: none !important;
}

/* ---------- Section CTA (Explore inventory + Browse COA) ---------- */
.elementor .elementor-element.section-cta.e-con {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
	align-items: center !important;
	gap: .75rem !important;
	padding-top: 2.6rem !important;
	padding-inline: 0 !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
}

.elementor .elementor-element.section-cta .elementor-widget-button,
.elementor .elementor-widget-button.primary-button--dark,
.elementor .elementor-widget-button.coa-section-link {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
	min-height: 0 !important;
	height: auto !important;
	width: auto !important;
	max-width: none !important;
	flex: 0 0 auto !important;
	display: inline-flex !important;
	align-self: center !important;
}

.elementor .elementor-element.section-cta .elementor-widget-container,
.elementor .elementor-element.section-cta .elementor-button-wrapper,
.elementor .elementor-widget-button.coa-section-link .elementor-widget-container,
.elementor .elementor-widget-button.primary-button--dark .elementor-widget-container {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	width: auto !important;
	display: inline-flex !important;
}

.elementor .elementor-element.section-cta .elementor-button,
.elementor .elementor-widget-button.primary-button--dark .elementor-button {
	width: auto !important;
	max-width: none !important;
	min-height: 50px !important;
	height: 50px !important;
	padding: 0 1.28rem !important;
	border-radius: 5px !important;
	font-size: .82rem !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: .45rem !important;
	text-decoration: none !important;
	box-sizing: border-box !important;
	box-shadow: none !important;
}

.elementor .elementor-element.section-cta .primary-button .elementor-button,
.elementor .elementor-element.section-cta .primary-button--dark .elementor-button,
.elementor .elementor-widget-button.primary-button--dark .elementor-button {
	background: var(--commerce) !important;
	color: #fff !important;
	border: 0 !important;
}

.elementor .elementor-element.section-cta .coa-section-link .elementor-button,
.elementor .elementor-widget-button.coa-section-link .elementor-button {
	min-height: 38px !important;
	height: 38px !important;
	padding: .55rem .7rem !important;
	border-radius: 3px !important;
	border: 1px solid #a9c9d9 !important;
	background: #f6fbfd !important;
	color: #165f84 !important;
	font-size: .64rem !important;
	font-weight: 800 !important;
	box-shadow: none !important;
}

.elementor .elementor-element.section-cta .coa-section-link .elementor-button:hover,
.elementor .elementor-widget-button.coa-section-link .elementor-button:hover {
	color: #0a3857 !important;
	border-color: #5ba4c8 !important;
	background: #e9f6fb !important;
}

.elementor .elementor-element.section-cta .elementor-button-content-wrapper {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	gap: .35rem !important;
}

/* Card action buttons: equal height, aligned baseline */
.elementor .elementor-element.card-actions.e-con {
	align-items: stretch !important;
}

.elementor .elementor-element.card-actions > .elementor-widget-button {
	display: flex !important;
	align-items: stretch !important;
	height: 31px !important;
}

.elementor .elementor-element.card-actions .elementor-button {
	align-self: stretch !important;
	height: 31px !important;
	min-height: 31px !important;
	max-height: 31px !important;
}

/* ---------- Section headings (ink, not kit primary blue) ---------- */
.elementor .elementor-element.section-heading.e-con {
	display: grid !important;
	grid-template-columns: 1fr minmax(260px, 360px) !important;
	align-items: end !important;
	gap: 2rem !important;
	margin-bottom: 2.5rem !important;
}

.elementor .elementor-element.catalog-section .elementor-heading-title,
.elementor .elementor-element.research-section .elementor-heading-title,
.elementor .elementor-element.faq-section .elementor-heading-title,
.elementor .elementor-element.proof-copy .elementor-heading-title,
.elementor .elementor-element.section-heading .elementor-heading-title {
	color: var(--ink) !important;
	font: 700 clamp(2rem, 3.6vw, 3.2rem) / 1.04 "Space Grotesk", sans-serif !important;
	letter-spacing: -.065em !important;
}

.elementor .elementor-element.product-card .elementor-heading-title {
	color: #10212a !important;
	font: 700 .88rem / 1.3 "Space Grotesk", sans-serif !important;
	letter-spacing: -.035em !important;
	min-height: 1.45rem !important;
	margin: 0 !important;
}

/* ---------- Content width ---------- */
.elementor .elementor-element.content-width.e-con {
	width: min(100% - 48px, 1240px) !important;
	max-width: min(100% - 48px, 1240px) !important;
	margin-inline: auto !important;
	padding-inline: 0 !important;
}

.elementor .elementor-element.hero-section .elementor-element.content-width.e-con {
	width: min(100% - 96px, 1600px) !important;
	max-width: min(100% - 96px, 1600px) !important;
}

.elementor .elementor-element.catalog-section.e-con,
.elementor .elementor-element.research-section.e-con,
.elementor .elementor-element.faq-section.e-con,
.elementor .elementor-element.proof-section.e-con {
	padding-block: 6.5rem !important;
	padding-inline: 0 !important;
	height: auto !important;
	min-height: 0 !important;
}

.elementor .elementor-element.faq-section.e-con {
	background: #f5f8f8 !important;
	border-top: 1px solid #e7eeee !important;
	border-bottom: 0 !important;
}

/* ---------- Research areas ---------- */
.elementor .elementor-element.area-grid.e-con {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 1px !important;
	border: 1px solid #dce5e6 !important;
	background: #dce5e6 !important;
}

.elementor .elementor-element.area-card.e-con {
	background: #fff !important;
	padding: 1.55rem !important;
	height: auto !important;
	min-height: 260px !important;
	gap: 0 !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
}

/* ---------- Benchmark ---------- */
.elementor .elementor-element.benchmark-section.e-con {
	position: relative !important;
	padding-block: 6.6rem !important;
	padding-inline: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	overflow: hidden !important;
	background: #071523 !important;
	color: #fff !important;
}

.elementor .elementor-element.benchmark-layout.e-con {
	position: relative !important;
	z-index: 1 !important;
	display: grid !important;
	grid-template-columns: .8fr 1.2fr !important;
	align-items: center !important;
	gap: clamp(2.5rem, 7vw, 8rem) !important;
}

.elementor .elementor-element.benchmark-intro.e-con,
.elementor .elementor-element.benchmark-panel.e-con {
	display: flex !important;
	flex-direction: column !important;
	min-width: 0 !important;
	width: 100% !important;
	height: auto !important;
	padding: 0 !important;
	gap: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.elementor .elementor-element.benchmark-panel.e-con {
	border: 1px solid rgba(188, 226, 235, .16) !important;
	background: rgba(13, 38, 57, .76) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 30px 60px rgba(0, 0, 0, .22) !important;
}

.elementor .elementor-element.benchmark-section .elementor-heading-title {
	margin: .9rem 0 1.15rem !important;
	color: #fff !important;
	font: 700 clamp(2.3rem, 4.1vw, 4rem) / .98 "Space Grotesk", sans-serif !important;
	letter-spacing: -.07em !important;
}

.elementor .elementor-element.benchmark-intro .elementor-widget-text-editor,
.elementor .elementor-element.benchmark-intro .elementor-widget-heading {
	width: 100% !important;
}

.elementor .elementor-element.benchmark-intro .benchmark-library-link {
	margin-top: 1.4rem !important;
}

.benchmark-content[hidden],
[role="tabpanel"][hidden] {
	display: none !important;
}

.benchmark-tabs {
	display: grid !important;
	grid-template-columns: repeat(5, 1fr) !important;
	width: 100% !important;
}

.benchmark-content:not([hidden]) {
	display: grid !important;
	grid-template-columns: 140px 1fr !important;
	padding: 2rem !important;
}

/* ---------- Proof / FAQ / testimonials ---------- */
.elementor .elementor-element.proof-section.e-con {
	background: #fff !important;
}

.elementor .elementor-element.proof-layout.e-con {
	display: grid !important;
	grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr) !important;
	gap: clamp(2rem, 6vw, 7rem) !important;
	align-items: start !important;
}

.elementor .elementor-element.proof-layout.e-con > .elementor-element {
	--width: 100%;
	width: auto !important;
	max-width: 100% !important;
	min-width: 0 !important;
	flex: none !important;
	height: auto !important;
	padding: 0 !important;
	gap: 0 !important;
}

.elementor .elementor-element.proof-copy.e-con {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;
	padding: 0 !important;
	height: auto !important;
}

.elementor .elementor-element.proof-copy .elementor-widget,
.elementor .elementor-element.proof-cards .elementor-widget {
	margin: 0 !important;
	width: 100% !important;
}

.elementor .elementor-element.proof-copy .elementor-widget-html,
.elementor .elementor-element.proof-copy .elementor-widget-button {
	width: auto !important;
}

.elementor .elementor-element.proof-copy .elementor-heading-title {
	margin: .8rem 0 1rem !important;
	color: var(--ink) !important;
	font: 700 clamp(2.2rem, 3.7vw, 3.5rem) / 1 "Space Grotesk", sans-serif !important;
	letter-spacing: -.07em !important;
}

.elementor .elementor-element.proof-cards.e-con,
.elementor .elementor-element.proof-cards.e-con > .e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: .75rem !important;
	align-items: stretch !important;
	width: 100% !important;
}

.elementor .elementor-element.proof-cards.e-con > .e-con-inner {
	grid-column: 1 / -1;
	padding: 0 !important;
}

.elementor .elementor-element.proof-cards.e-con > .elementor-element,
.elementor .elementor-element.proof-cards.e-con > .e-con-inner > .elementor-element {
	--width: 100%;
	--padding-top: 1.25rem;
	--padding-right: 1.25rem;
	--padding-bottom: 1.25rem;
	--padding-left: 1.25rem;
	width: auto !important;
	max-width: 100% !important;
	min-width: 0 !important;
	flex: none !important;
	align-self: stretch !important;
	display: flex !important;
	flex-direction: column !important;
	min-height: 230px !important;
	height: auto !important;
	padding: 1.25rem !important;
	gap: 0 !important;
	border: 1px solid #dde6e7 !important;
	background: #fbfcfc !important;
}

.elementor .elementor-element.proof-cards .elementor-heading-title {
	margin: 1.2rem 0 .65rem !important;
	color: #10212a !important;
	font: 700 .98rem / 1.18 "Space Grotesk", sans-serif !important;
	letter-spacing: -.04em !important;
}

.elementor .elementor-element.proof-copy a.coa-section-link,
.elementor .elementor-element.proof-copy .elementor-widget-button.coa-section-link .elementor-button {
	width: fit-content !important;
	min-height: 38px !important;
	height: auto !important;
	margin-top: 1.25rem !important;
	padding: .55rem .7rem !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: .45rem !important;
	border: 1px solid #a9c9d9 !important;
	border-radius: 3px !important;
	color: #165f84 !important;
	background: #f6fbfd !important;
	font-size: .64rem !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	box-shadow: none !important;
}

.elementor .elementor-element.faq-layout.e-con {
	display: grid !important;
	grid-template-columns: minmax(250px, .75fr) minmax(0, 1.25fr) !important;
	gap: clamp(2rem, 7vw, 8rem) !important;
	align-items: start !important;
}

.elementor .elementor-element.faq-layout.e-con > .elementor-element {
	--width: 100%;
	width: auto !important;
	max-width: 100% !important;
	min-width: 0 !important;
	flex: none !important;
	align-self: start !important;
	height: auto !important;
	padding: 0 !important;
}

.elementor .elementor-element.faq-intro.e-con {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.elementor .elementor-element.faq-intro .elementor-widget,
.elementor .elementor-element.faq-intro .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	background: transparent !important;
}

.elementor .elementor-element.faq-intro .section-label {
	margin: 0 !important;
	color: #52606a !important;
	font: 500 .64rem / 1.25 "DM Mono", monospace !important;
	letter-spacing: .13em !important;
}

.elementor .elementor-element.faq-intro .section-label span {
	color: var(--signal-blue) !important;
	margin-right: .45rem !important;
}

.elementor .elementor-element.faq-intro .elementor-heading-title,
.elementor .elementor-element.faq-intro h2 {
	max-width: 8.2em !important;
	margin: .75rem 0 0 !important;
	color: var(--ink) !important;
	font: 700 clamp(2rem, 3.6vw, 3.2rem) / 1.04 "Space Grotesk", sans-serif !important;
	letter-spacing: -.065em !important;
}

.elementor .elementor-element.faq-intro .elementor-widget-text-editor p:not(.section-label) {
	max-width: 360px !important;
	margin: 1rem 0 1.25rem !important;
	color: #64727b !important;
	font-family: Manrope, sans-serif !important;
	font-size: .74rem !important;
	font-weight: 400 !important;
	line-height: 1.75 !important;
}

.elementor .elementor-element.faq-intro-actions.e-con {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: .7rem !important;
	margin-top: 1.35rem !important;
	padding: 0 !important;
	width: auto !important;
	max-width: 100% !important;
	background: transparent !important;
}

.elementor .elementor-element.faq-intro-actions .elementor-widget-button,
.elementor .elementor-element.faq-intro-actions .elementor-widget-container,
.elementor .elementor-element.faq-intro-actions .elementor-button-wrapper {
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
	max-width: none !important;
	flex: 0 0 auto !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	display: inline-flex !important;
}

.elementor .elementor-widget-button.text-button .elementor-button,
.elementor .elementor-element.faq-intro-actions .text-button .elementor-button {
	min-height: 0 !important;
	height: auto !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	box-shadow: none !important;
	color: #15586a !important;
	font-size: .68rem !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	fill: #15586a !important;
	width: auto !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: .4rem !important;
}

.elementor .elementor-widget-button.text-button .elementor-button:hover,
.elementor .elementor-element.faq-intro-actions .text-button .elementor-button:hover {
	color: #0d587a !important;
	background: none !important;
}

.elementor .elementor-widget-button.coa-section-link .elementor-button,
.elementor .elementor-element.faq-intro-actions .coa-section-link .elementor-button {
	width: fit-content !important;
	min-height: 38px !important;
	height: auto !important;
	padding: .55rem .7rem !important;
	border: 1px solid #a9c9d9 !important;
	border-radius: 3px !important;
	background: #f6fbfd !important;
	box-shadow: none !important;
	color: #165f84 !important;
	font-size: .64rem !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	width: auto !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: .45rem !important;
}

.elementor .elementor-widget-button.coa-section-link .elementor-button:hover,
.elementor .elementor-element.faq-intro-actions .coa-section-link .elementor-button:hover {
	color: #0a3857 !important;
	border-color: #5ba4c8 !important;
	background: #e9f6fb !important;
}

.elementor .elementor-widget-button.text-button .elementor-button:before,
.elementor .elementor-widget-button.text-button .elementor-button:after,
.elementor .elementor-widget-button.coa-section-link .elementor-button:before,
.elementor .elementor-widget-button.coa-section-link .elementor-button:after {
	display: none !important;
	content: none !important;
}

.elementor .elementor-element.faq-accordion.e-con,
.elementor .elementor-element.faq-accordion .elementor-widget,
.elementor .elementor-element.faq-accordion .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	background: transparent !important;
	box-shadow: none !important;
}

.elementor .elementor-element.faq-accordion.e-con {
	display: block !important;
	border-top: 1px solid #d7e1e3 !important;
}

.elementor .faq-accordion .faq-content[hidden],
.elementor .faq-accordion [data-faq-content][hidden] {
	display: none !important;
}

.elementor .elementor-element.customer-testimonials-section.e-con {
	position: relative !important;
	overflow: hidden !important;
	padding-block: 5.8rem !important;
	padding-inline: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	color: #fff !important;
	background: var(--navy) !important;
}

.elementor .elementor-element.customer-testimonials-section .elementor-element.content-width.e-con {
	position: relative !important;
	z-index: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	padding: 0 !important;
}

.elementor .elementor-element.customer-testimonials-heading.e-con {
	background: transparent !important;
}

.elementor .elementor-element.customer-testimonials-heading .elementor-widget,
.elementor .elementor-element.customer-testimonials-heading .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

.elementor .elementor-element.customer-testimonials-section .elementor-heading-title,
.elementor .elementor-element.customer-testimonials-heading .elementor-heading-title,
.elementor .elementor-element.customer-testimonials-section .section-heading .elementor-heading-title {
	margin: .75rem 0 0 !important;
	color: #fff !important;
	font: 700 clamp(2rem, 3.6vw, 3.2rem) / 1.04 "Space Grotesk", sans-serif !important;
	letter-spacing: -.065em !important;
}

.elementor .elementor-element.customer-testimonials-heading .section-label {
	margin: 0 !important;
	color: rgba(229, 242, 246, .67) !important;
	font: 500 .64rem / 1.25 "DM Mono", monospace !important;
	letter-spacing: .13em !important;
}

.elementor .elementor-element.customer-testimonials-heading .section-label span {
	color: var(--accent-blue) !important;
	margin-right: .45rem !important;
}

.elementor .elementor-element.customer-testimonials-heading .heading-copy {
	margin: 0 !important;
	color: rgba(224, 239, 248, .72) !important;
	font-family: Manrope, sans-serif !important;
	font-size: .8rem !important;
	font-weight: 400 !important;
	line-height: 1.75 !important;
}

.elementor .elementor-element.customer-testimonials-grid.e-con {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: .85rem !important;
	align-items: stretch !important;
}

.elementor .elementor-element.customer-testimonials-grid.e-con > .elementor-element {
	--width: 100%;
	--flex-grow: 0;
	--flex-shrink: 1;
	width: auto !important;
	max-width: 100% !important;
	min-width: 0 !important;
	flex: none !important;
	align-self: stretch !important;
	height: auto !important;
}

.elementor .elementor-element.customer-testimonial-card.e-con {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	min-height: 250px !important;
	height: 100% !important;
	padding: 1.55rem 1.4rem 1.35rem !important;
	gap: 0 !important;
	overflow: visible !important;
	border: 1px solid rgba(168, 214, 241, .22) !important;
	border-radius: 10px !important;
	background: linear-gradient(145deg, rgba(15, 43, 78, .94), rgba(6, 23, 48, .97)) !important;
	box-shadow: 0 20px 48px rgba(0, 8, 20, .16), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}

.elementor .elementor-element.customer-testimonial-card .elementor-widget,
.elementor .elementor-element.customer-testimonial-card .elementor-widget-container {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.elementor .elementor-element.customer-testimonial-card svg {
	display: block !important;
	margin-bottom: 1.2rem !important;
	color: #8dd7ef !important;
}

.elementor .elementor-element.customer-testimonial-card blockquote {
	flex: 1 1 auto !important;
	height: 100% !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: column !important;
}

.elementor .elementor-element.customer-testimonial-card blockquote::before {
	display: block !important;
	width: 24px !important;
	height: 24px !important;
	margin-bottom: 1.2rem !important;
	flex: 0 0 auto !important;
	content: "" !important;
	background-color: #8dd7ef !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21c3 0 7-1 7-8V5c0-1.25-.756-2.017-2-2H4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2 1 0 1 0 1 1v1c0 1-1 2-2 2s-1 .008-1 1.031V21z'/%3E%3Cpath d='M15 21c3 0 7-1 7-8V5c0-1.25-.757-2.017-2-2h-4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2h.75c0 2.25.25 4-2.75 4v3z'/%3E%3C/svg%3E") center / contain no-repeat !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21c3 0 7-1 7-8V5c0-1.25-.756-2.017-2-2H4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2 1 0 1 0 1 1v1c0 1-1 2-2 2s-1 .008-1 1.031V21z'/%3E%3Cpath d='M15 21c3 0 7-1 7-8V5c0-1.25-.757-2.017-2-2h-4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2h.75c0 2.25.25 4-2.75 4v3z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.elementor .elementor-element.customer-testimonial-card:has(.customer-testimonial-quote) blockquote::before,
.elementor .elementor-element.customer-testimonial-card:has(svg) blockquote::before {
	display: none !important;
}

.elementor .elementor-element.customer-testimonial-card blockquote p,
.elementor .elementor-element.customer-testimonial-card .elementor-widget-container p {
	margin: 0 !important;
	color: rgba(239, 248, 252, .88) !important;
	font: 560 .86rem / 1.72 "Space Grotesk", sans-serif !important;
}

.elementor .elementor-element.customer-testimonial-card footer {
	margin-top: auto !important;
	padding-top: 1.35rem !important;
	color: #9adff6 !important;
	font: 750 .68rem / 1.2 "DM Mono", monospace !important;
	letter-spacing: .045em !important;
}

.elementor .elementor-element.customer-testimonials-section .customer-testimonials-disclosure {
	max-width: 920px !important;
	margin: 1.2rem auto 0 !important;
	display: flex !important;
	align-items: flex-start !important;
	justify-content: center !important;
	gap: .5rem !important;
	color: rgba(211, 234, 247, .62) !important;
	font-family: Manrope, sans-serif !important;
	font-size: var(--read-label-compact) !important;
	line-height: 1.6 !important;
	text-align: center !important;
}

.elementor .elementor-element.customer-testimonials-section .customer-testimonials-disclosure::before {
	flex: 0 0 auto !important;
	width: 16px !important;
	height: 16px !important;
	margin-top: .08rem !important;
	content: "" !important;
	background-color: #8dd7ef !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E") center / contain no-repeat !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.elementor .elementor-element.customer-testimonials-section .elementor-widget-html:has(.customer-testimonials-disclosure),
.elementor .elementor-element.customer-testimonials-section .elementor-widget-html:has(.customer-testimonials-disclosure) .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
	.elementor .elementor-element.product-grid.e-con {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 1050px) {
	.elementor .elementor-element.proof-cards.e-con,
	.elementor .elementor-element.proof-cards.e-con > .e-con-inner {
		grid-template-columns: 1fr !important;
	}

	.elementor .elementor-element.proof-cards.e-con > .elementor-element,
	.elementor .elementor-element.proof-cards.e-con > .e-con-inner > .elementor-element {
		min-height: 0 !important;
	}
}

@media (max-width: 900px) {
	.elementor .elementor-element.hero-grid.e-con,
	.elementor .elementor-element.section-heading.e-con,
	.elementor .elementor-element.benchmark-layout.e-con,
	.elementor .elementor-element.proof-layout.e-con,
	.elementor .elementor-element.faq-layout.e-con {
		grid-template-columns: 1fr !important;
	}

	.elementor .elementor-element.hero-section.e-con,
	.elementor .elementor-element.hero-grid.e-con {
		min-height: 0 !important;
	}

	.elementor .elementor-element.area-grid.e-con {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 720px) {
	.elementor .elementor-element.product-grid.e-con {
		grid-template-columns: 1fr !important;
	}

	.elementor .elementor-element.product-card.e-con {
		display: grid !important;
		grid-template-columns: minmax(104px, 34%) minmax(0, 1fr) !important;
		align-items: stretch !important;
	}

	.elementor .elementor-element.product-image.e-con {
		aspect-ratio: auto !important;
		min-height: 100% !important;
		height: 100% !important;
		border-bottom: 0 !important;
		border-right: 1px solid #e5e9ef;
	}

	.elementor .elementor-element.area-grid.e-con,
	.elementor .elementor-element.customer-testimonials-grid.e-con {
		grid-template-columns: 1fr !important;
	}

	.elementor .elementor-element.customer-testimonial-card.e-con {
		min-height: 0 !important;
	}

	.benchmark-content:not([hidden]) {
		grid-template-columns: 1fr !important;
		padding: 1.35rem !important;
	}
}
