/**
 * Accessibility fixes — site-wide root causes (no UI / logic change):
 * 1) Text contrast over Elementor overlays/video (Silktide ignores overlay)
 * 2) Alpha hex / rgba text colors (PHP solidify)
 * 3) Image-in-link / duplicate alt (alt alone names the link)
 * 4) Missing H1, nameless links, duplicate IDs (PHP/JS)
 * Page-specific rules below reinforce known heroes.
 */

/* Properly expose skip link (Elementor / Customizer CSS hides .screen-reader-text) */
html body a.skip-link.screen-reader-text,
html body .skip-link.screen-reader-text {
	position: absolute !important;
	top: -100px !important;
	left: 0 !important;
	width: auto !important;
	height: auto !important;
	padding: 12px 16px !important;
	margin: 0 !important;
	overflow: visible !important;
	clip: auto !important;
	clip-path: none !important;
	white-space: nowrap !important;
	border: 0 !important;
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	z-index: 100000 !important;
	background: #0b1f4b !important;
	color: #fff !important;
	text-decoration: none !important;
	font-size: 14px !important;
	line-height: 1.4 !important;
}

html body a.skip-link.screen-reader-text:focus,
html body .skip-link.screen-reader-text:focus {
	top: 0 !important;
	left: 0 !important;
}

/* Visually hidden but readable by AT (not killed by display:none rules) */
.sa-sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
	border: 0 !important;
	display: block !important;
}

/*
 * Unique / icon link text for Silktide.
 * Off-screen WITHOUT clip/clip-path — Silktide drops clipped sr-only + often aria-label.
 * Visually identical UI (text sits off-viewport).
 */
.sa-link-context {
	position: absolute !important;
	left: -9999px !important;
	top: auto !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: auto !important;
	clip-path: none !important;
	white-space: nowrap !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	display: block !important;
	font-size: 14px !important;
	line-height: normal !important;
	color: #000 !important;
	opacity: 1 !important;
	pointer-events: none !important;
}

/* Form control contrast — Sectors dropdown (needs ≥ 3:1 vs surroundings) */
.jet-select__control,
select.jet-select__control,
#blogwidget .jet-select__control,
[id^="blogwidget"] .jet-select__control,
.elementor-3050 .jet-select__control,
.elementor-3050 select.jet-select__control {
	border-color: #5c5c5c !important;
	border-width: 1px !important;
	border-style: solid !important;
	color: #1a1a1a !important;
	box-shadow: none !important;
}

/*
 * Silktide compares the control fill with the background directly behind it and
 * ignores the 1px border; the wrapper is the select's exact box, so a fill in the
 * border colour stays hidden behind the white control.
 */
.jet-select {
	background-color: #5c5c5c;
	border-radius: 5px;
}

.jet-select__control:focus,
select.jet-select__control:focus,
.elementor-3050 .jet-select__control:focus {
	outline: 2px solid #0b1f4b !important;
	outline-offset: 2px !important;
	border-color: #0b1f4b !important;
}

/*
 * Singularity One Search (fc12862): form-control contrast, zero visual change.
 * Live navy frame stays on the widget-container; input stays borderless.
 * Stretch only the input's box (absolute inside the wrapper) into the existing
 * padding so its edges meet #002764 (and the submit on the right). Flex layout,
 * icon SVG, and submit stay put — no extra stroke, no clip-path.
 */
.elementor-3050 .elementor-element-fc12862 .e-search-input-wrapper {
	position: relative !important;
	min-height: 43px;
}

.elementor-3050 .elementor-element-fc12862 .e-search-input {
	position: absolute !important;
	/* Reach through padding into the 4px #002764 frame (navy pixels inside input box) */
	top: -18px !important;
	bottom: -18px !important;
	left: -20px !important;
	/* 8px submit margin — right edge meets navy submit */
	right: -8px !important;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	-webkit-appearance: none !important;
	appearance: none !important;
	border: none !important;
	border-radius: 0 !important;
	background-color: transparent !important;
	box-shadow: none !important;
	z-index: 1;
	/* Live text inset ~57px; +20px because box shifted left into pad+frame */
	padding-inline-start: calc(20px + var(--e-search-icon-label-absolute-width, 39px) + var(--e-search-input-gap, 18px)) !important;
	padding-inline-end: calc(var(--e-search-icon-clear-absolute-width, 14px) + var(--e-search-input-gap, 18px) + 8px) !important;
	padding-block: 0 !important;
}

.elementor-3050 .elementor-element-fc12862 .e-search-label {
	z-index: 2;
}

.elementor-3050 .elementor-element-fc12862 .e-search-submit {
	position: relative;
	z-index: 2;
}

.elementor-3050 .elementor-element-fc12862 .e-search-input-wrapper > svg {
	z-index: 3;
}

/*
 * Team page hero (f763cd6): solid navy UNDER the existing photo/overlay only.
 * Do not strip background-image or retint tabs — that changed the live UI.
 */
.elementor-15 .elementor-element-f763cd6.e-con {
	background-color: #001c5c !important;
}

.elementor-15 .elementor-element-9060e34 .elementor-icon-list-text,
.elementor-15 .elementor-element-9060e34 .elementor-icon-list-item > a,
.elementor-15 .elementor-element-9060e34 .elementor-icon-list-icon i,
.elementor-15 .elementor-element-60a1c15 .elementor-heading-title,
.elementor-15 .elementor-element-403ca7c,
.elementor-15 .elementor-element-403ca7c p {
	color: #ffffff !important;
}

.elementor-15 .elementor-element-9060e34 .elementor-icon-list-icon svg {
	fill: #ffffff !important;
}

/* Semantic chip list — keep same chip look */
ul.sipm__chips {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

ul.sipm__chips > li {
	margin: 0;
	padding: 0;
	list-style: none;
	display: inline-flex;
}

/*
 * "The Singularity Edge" + supporting line: white text over video + dark overlay.
 * Silktide ignores video/::before overlay and measures the light parent (#E4EAF5),
 * so it false-fails. Solid primary under the video keeps the same look and a real
 * dark background for contrast checks.
 */
.elementor-1380 .elementor-element-90cbcb6.e-con {
	background-color: #001c5c !important;
}

.elementor-1380 .elementor-element-12ee098 .elementor-heading-title,
.elementor-1380 .elementor-element-64dc875,
.elementor-1380 .elementor-element-64dc875 p {
	color: #ffffff !important;
}

/*
 * Summit 2026 hero (72160d0): white text (Home/Summit/Days/Speakers/Attendees/body)
 * over background video. Video stays; solid primary under it + stronger overlay so
 * contrast checks see a dark base (same navy look).
 */
.elementor-8276 .elementor-element-72160d0.e-con {
	background-color: #001c5c !important;
	--overlay-opacity: 0.92 !important;
}

.elementor-8276 .elementor-element-72160d0.e-con::before,
.elementor-8276 .elementor-element-72160d0 > .elementor-background-video-container::before,
.elementor-8276 .elementor-element-72160d0 > .e-con-inner > .elementor-background-video-container::before {
	background-color: #001c5c !important;
	opacity: 0.92 !important;
}

.elementor-8276 .elementor-element-239730d .elementor-icon-list-text,
.elementor-8276 .elementor-element-239730d .elementor-icon-list-item > a,
.elementor-8276 .elementor-element-239730d .elementor-icon-list-icon i,
.elementor-8276 .elementor-element-79f3965 .elementor-counter-number-wrapper,
.elementor-8276 .elementor-element-79f3965 .elementor-counter-number,
.elementor-8276 .elementor-element-79f3965 .elementor-counter-title,
.elementor-8276 .elementor-element-ba306d9 .elementor-counter-number-wrapper,
.elementor-8276 .elementor-element-ba306d9 .elementor-counter-number,
.elementor-8276 .elementor-element-ba306d9 .elementor-counter-title,
.elementor-8276 .elementor-element-e7fa158 .elementor-counter-number-wrapper,
.elementor-8276 .elementor-element-e7fa158 .elementor-counter-number,
.elementor-8276 .elementor-element-e7fa158 .elementor-counter-title,
.elementor-8276 .elementor-element-e2aa84d,
.elementor-8276 .elementor-element-e2aa84d p,
.elementor-8276 .elementor-element-e2aa84d b,
.elementor-8276 .elementor-element-e2aa84d strong {
	color: #ffffff !important;
}

.elementor-8276 .elementor-element-239730d .elementor-icon-list-icon svg path {
	fill: #ffffff !important;
}

/*
 * Summit 2026 stats/speakers band (703e418): white text over bg-sperkers photo.
 * Silktide ignores the 0.96 #10368D overlay — solid overlay color, same look.
 */
.elementor-8276 .elementor-element-703e418.e-con,
.elementor-8276 .elementor-element-703e418.e-con:not(.elementor-motion-effects-element-type-background),
.elementor-8276 .elementor-element-703e418 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: #10368d !important;
	background-image: none !important;
}

.elementor-8276 .elementor-element-703e418.e-con::before {
	background-color: #10368d !important;
	opacity: 1 !important;
}

.elementor-8276 .elementor-element-b30dde2 .elementor-heading-title {
	color: #ffffff !important;
}

/*
 * Summit 2025 hero (6487585): same pattern as 2026 — video stays, solid navy + overlay.
 */
.elementor-7843 .elementor-element-6487585.e-con {
	background-color: #001c5c !important;
	--overlay-opacity: 0.92 !important;
}

.elementor-7843 .elementor-element-6487585.e-con::before,
.elementor-7843 .elementor-element-6487585 > .elementor-background-video-container::before,
.elementor-7843 .elementor-element-6487585 > .e-con-inner > .elementor-background-video-container::before {
	background-color: #001c5c !important;
	opacity: 0.92 !important;
}

.elementor-7843 .elementor-element-bf3ac8e .elementor-icon-list-text,
.elementor-7843 .elementor-element-bf3ac8e .elementor-icon-list-item > a,
.elementor-7843 .elementor-element-bf3ac8e .elementor-icon-list-icon i,
.elementor-7843 .elementor-element-779e005 .elementor-counter-number-wrapper,
.elementor-7843 .elementor-element-779e005 .elementor-counter-number,
.elementor-7843 .elementor-element-779e005 .elementor-counter-title,
.elementor-7843 .elementor-element-97cb55a .elementor-counter-number-wrapper,
.elementor-7843 .elementor-element-97cb55a .elementor-counter-number,
.elementor-7843 .elementor-element-97cb55a .elementor-counter-title,
.elementor-7843 .elementor-element-80221ac .elementor-counter-number-wrapper,
.elementor-7843 .elementor-element-80221ac .elementor-counter-number,
.elementor-7843 .elementor-element-80221ac .elementor-counter-title,
.elementor-7843 .elementor-element-589c351,
.elementor-7843 .elementor-element-589c351 p,
.elementor-7843 .elementor-element-589c351 b,
.elementor-7843 .elementor-element-589c351 strong {
	color: #ffffff !important;
}

.elementor-7843 .elementor-element-bf3ac8e .elementor-icon-list-icon svg path {
	fill: #ffffff !important;
}

/* Summit 2025 Speakers band (32824e5) */
.elementor-7843 .elementor-element-32824e5.e-con,
.elementor-7843 .elementor-element-32824e5.e-con:not(.elementor-motion-effects-element-type-background),
.elementor-7843 .elementor-element-32824e5 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: #10368d !important;
	background-image: none !important;
}

.elementor-7843 .elementor-element-32824e5.e-con::before {
	background-color: #10368d !important;
	opacity: 1 !important;
}

.elementor-7843 .elementor-element-b15ebb6 .elementor-heading-title {
	color: #ffffff !important;
}

/*
 * Summit 2024 hero (e4ae8ca): video stays; solid navy + stronger overlay.
 */
.elementor-7960 .elementor-element-e4ae8ca.e-con {
	background-color: #001c5c !important;
	--overlay-opacity: 0.92 !important;
}

.elementor-7960 .elementor-element-e4ae8ca.e-con::before,
.elementor-7960 .elementor-element-e4ae8ca > .elementor-background-video-container::before,
.elementor-7960 .elementor-element-e4ae8ca > .e-con-inner > .elementor-background-video-container::before {
	background-color: #001c5c !important;
	opacity: 0.92 !important;
}

.elementor-7960 .elementor-element-79d3e29 .elementor-icon-list-text,
.elementor-7960 .elementor-element-79d3e29 .elementor-icon-list-item > a,
.elementor-7960 .elementor-element-79d3e29 .elementor-icon-list-icon i,
.elementor-7960 .elementor-element-903eb36 .elementor-counter-number-wrapper,
.elementor-7960 .elementor-element-903eb36 .elementor-counter-number,
.elementor-7960 .elementor-element-903eb36 .elementor-counter-title,
.elementor-7960 .elementor-element-fe0350f .elementor-counter-number-wrapper,
.elementor-7960 .elementor-element-fe0350f .elementor-counter-number,
.elementor-7960 .elementor-element-fe0350f .elementor-counter-title,
.elementor-7960 .elementor-element-ee91e48 .elementor-counter-number-wrapper,
.elementor-7960 .elementor-element-ee91e48 .elementor-counter-number,
.elementor-7960 .elementor-element-ee91e48 .elementor-counter-title,
.elementor-7960 .elementor-element-44a4906,
.elementor-7960 .elementor-element-44a4906 p,
.elementor-7960 .elementor-element-44a4906 b,
.elementor-7960 .elementor-element-44a4906 strong {
	color: #ffffff !important;
}

.elementor-7960 .elementor-element-79d3e29 .elementor-icon-list-icon svg path {
	fill: #ffffff !important;
}

/* Summit 2024 Speakers band (ccb76e7) */
.elementor-7960 .elementor-element-ccb76e7.e-con,
.elementor-7960 .elementor-element-ccb76e7.e-con:not(.elementor-motion-effects-element-type-background),
.elementor-7960 .elementor-element-ccb76e7 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: #10368d !important;
	background-image: none !important;
}

.elementor-7960 .elementor-element-ccb76e7.e-con::before {
	background-color: #10368d !important;
	opacity: 1 !important;
}

.elementor-7960 .elementor-element-e4aab0f .elementor-heading-title {
	color: #ffffff !important;
}

/*
 * Disclosures (page 377): Category III white text on photo + frosted glass.
 * Navy under image + solid glass base (frost via ignored gradient) — UI unchanged.
 */
.elementor-377 .elementor-element-890cea5.e-con,
.elementor-377 .elementor-element-2ca1a85.e-con {
	background-color: #001c5c !important;
}

.elementor-377 .elementor-element-b5d9d5e.e-con {
	background-color: #001c5c !important;
	background-image: linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1)) !important;
}

.elementor-377 .elementor-element-24e246e .elementor-heading-title,
.elementor-377 .elementor-element-b5d9d5e .elementor-icon-box-title,
.elementor-377 .elementor-element-b5d9d5e .elementor-icon-box-title span,
.elementor-377 .elementor-element-b5d9d5e .elementor-icon-box-description {
	color: #ffffff !important;
}

/*
 * Opportunity single (template 5605): Why Join Us / related video bands.
 * White text over background video — solid navy under video only (UI unchanged).
 */
.elementor-5605 .elementor-element-19c5da4.e-con,
.elementor-5605 .elementor-element-dcb207e.e-con {
	background-color: #001c5c !important;
}

.elementor-1468 .elementor-element-b0f9701.e-con::before,
.elementor-1468 .elementor-element-b0f9701 > .elementor-background-video-container::before,
.elementor-1468 .elementor-element-b0f9701 > .e-con-inner > .elementor-background-video-container::before {
	background-color: #001035 !important;
	opacity: 0.92 !important;
}

.elementor-1468 .elementor-element-bf3ea35 .elementor-heading-title,
.elementor-1468 .elementor-element-8e05fb5 .elementor-heading-title,
.elementor-1468 .elementor-element-8770777 .elementor-heading-title,
.elementor-1468 .elementor-element-4ba6577 .elementor-heading-title,
.elementor-1468 .elementor-element-85f26aa .elementor-icon-list-text,
.elementor-1468 .elementor-element-ab3cb87 .elementor-icon-list-text,
.elementor-1468 .elementor-element-d36ea93 .elementor-icon-list-text,
.elementor-1468 .elementor-element-47ba19e .elementor-icon-list-text,
.elementor-1468 .elementor-element-3126911 .elementor-icon-list-text,
.elementor-1468 .elementor-element-9370488 .elementor-icon-box-title,
.elementor-1468 .elementor-element-a754ece .elementor-icon-box-title,
.elementor-1468 .elementor-element-a754ece .elementor-icon-box-description,
.elementor-1468 .elementor-element-eefbab0 .elementor-icon-box-title,
.elementor-1468 .elementor-element-eefbab0 .elementor-icon-box-description {
	color: #ffffff !important;
}

/*
 * Growth Private Equity hero (0dd9ab2): overlay stays 0.5 (live look).
 * Solid navy UNDER video only — Silktide ignores video/overlay otherwise.
 */
.elementor-647 .elementor-element-0dd9ab2.e-con {
	background-color: #001c5c !important;
}

/*
 * Strategic Autonomy (page 561): contrast fixes without changing overlay / look.
 * Hero video stays at Elementor overlay 0.5 — only solid navy under video + solid text colors.
 */
.elementor-561 .elementor-element-f144c75.e-con {
	background-color: #001c5c !important;
}

.elementor-561 .elementor-element-2d94d5b .elementor-icon-list-text,
.elementor-561 .elementor-element-2d94d5b .elementor-icon-list-item > a,
.elementor-561 .elementor-element-2d94d5b .elementor-icon-list-icon i,
.elementor-561 .elementor-element-87ac81a .elementor-icon-list-text,
.elementor-561 .elementor-element-87ac81a .elementor-icon-list-item > a,
.elementor-561 .elementor-element-87ac81a .elementor-icon-list-icon i,
.elementor-561 .elementor-element-ad55d75 .elementor-heading-title,
.elementor-561 .elementor-element-26b5378,
.elementor-561 .elementor-element-26b5378 p {
	color: #ffffff !important;
}

.elementor-561 .elementor-element-2d94d5b .elementor-icon-list-icon svg,
.elementor-561 .elementor-element-87ac81a .elementor-icon-list-icon svg {
	fill: #ffffff !important;
}

/* Team band: already navy; keep solid white titles/copy */
.elementor-561 .elementor-element-7e084f0.e-con {
	background-color: #10368d !important;
}

.elementor-561 .elementor-element-7a6eea0 .elementor-heading-title,
.elementor-561 .elementor-element-6fe6fb1,
.elementor-561 .elementor-element-6fe6fb1 p {
	color: #ffffff !important;
}

/* Fund tab — solid colors (no alpha); active tab keeps existing navy look */
.elementor-561 .elementor-element-826404c {
	--n-tabs-title-color: #021e5c !important;
	--n-tabs-title-color-active: #ffffff !important;
	--n-tabs-title-color-hover: #ffffff !important;
}

.elementor-561 .elementor-element-826404c .e-n-tab-title[aria-selected="true"] {
	background-color: #001648 !important;
	color: #ffffff !important;
}

.elementor-561 .elementor-element-826404c .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text {
	color: #ffffff !important;
}

.elementor-561 .elementor-element-826404c .e-n-tab-title[aria-selected="false"]:not(:hover),
.elementor-561 .elementor-element-826404c .e-n-tab-title[aria-selected="false"]:not(:hover) .e-n-tab-title-text {
	color: #021e5c !important;
}

/* AUM label + sector blurbs: replace failing alpha hex with solid near-equivalent */
.elementor-561 .elementor-element-56f8771 .elementor-heading-title {
	color: #4a5568 !important;
}

.elementor-561 .elementor-element-025c9ed .elementor-heading-title,
.elementor-561 .elementor-element-41be4d5 .elementor-heading-title,
.elementor-561 .elementor-element-cb6345f .elementor-heading-title,
.elementor-561 .elementor-element-724a8cf .elementor-heading-title,
.elementor-561 .elementor-element-61ca019 .elementor-heading-title,
.elementor-561 .elementor-element-86b8eb0 .elementor-heading-title,
.elementor-561 .elementor-element-b3b15d6 .elementor-heading-title,
.elementor-561 .elementor-element-ee97e9d .elementor-heading-title,
.elementor-561 .elementor-element-71bdcdf .elementor-heading-title {
	color: #333333 !important;
}

/*
 * PIPE (page 705): contrast without changing overlay (stay 0.5 like live).
 * Solid navy under video only + solid white on hero breadcrumbs/title/tagline.
 */
.elementor-705 .elementor-element-a1d9302.e-con {
	background-color: #001c5c !important;
}

.elementor-705 .elementor-element-e06bf9b .elementor-icon-list-text,
.elementor-705 .elementor-element-e06bf9b .elementor-icon-list-item > a,
.elementor-705 .elementor-element-e06bf9b .elementor-icon-list-icon i,
.elementor-705 .elementor-element-3bf38fe .elementor-icon-list-text,
.elementor-705 .elementor-element-3bf38fe .elementor-icon-list-item > a,
.elementor-705 .elementor-element-3bf38fe .elementor-icon-list-icon i,
.elementor-705 .elementor-element-63041a9 .elementor-heading-title,
.elementor-705 .elementor-element-72f914b,
.elementor-705 .elementor-element-72f914b p {
	color: #ffffff !important;
}

.elementor-705 .elementor-element-e06bf9b .elementor-icon-list-icon svg,
.elementor-705 .elementor-element-3bf38fe .elementor-icon-list-icon svg {
	fill: #ffffff !important;
}

/*
 * PIPE fund tab (69ab398): Silktide ignores gradient and sees transparent → white page
 * behind white active title ("Singularity Equity Fund - I"). Solid navy underlay only.
 */
.elementor-705 .elementor-element-69ab398 {
	--n-tabs-title-color: #021e5c !important;
	--n-tabs-title-color-active: #ffffff !important;
	--n-tabs-title-color-hover: #ffffff !important;
}

.elementor-705 .elementor-element-69ab398 .e-n-tab-title[aria-selected="true"] {
	background-color: #001648 !important;
	background-image: linear-gradient(45deg, #001648 0%, #021e5d 100%) !important;
	color: #ffffff !important;
}

.elementor-705 .elementor-element-69ab398 .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text {
	color: #ffffff !important;
}

.elementor-705 .elementor-element-69ab398 .e-n-tab-title[aria-selected="false"]:not(:hover),
.elementor-705 .elementor-element-69ab398 .e-n-tab-title[aria-selected="false"]:not(:hover) .e-n-tab-title-text {
	color: #021e5c !important;
}

/*
 * GPE fund tabs (66b2650): Silktide ignores gradient bg and sees white page —
 * solid navy on active tab + solid title colors (no alpha).
 */
.elementor-647 .elementor-element-66b2650 {
	--n-tabs-title-color: #021e5c !important;
	--n-tabs-title-color-active: #ffffff !important;
	--n-tabs-title-color-hover: #ffffff !important;
}

.elementor-647 .elementor-element-66b2650 .e-n-tab-title[aria-selected="true"] {
	background-color: #001648 !important;
	background-image: linear-gradient(45deg, #001648 0%, #021e5d 100%) !important;
	color: #ffffff !important;
}

.elementor-647 .elementor-element-66b2650 .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text {
	color: #ffffff !important;
}

.elementor-647 .elementor-element-66b2650 .e-n-tab-title[aria-selected="false"]:not(:hover),
.elementor-647 .elementor-element-66b2650 .e-n-tab-title[aria-selected="false"]:not(:hover) .e-n-tab-title-text {
	color: #021e5c !important;
}

/*
 * GPE sector blurbs: #000000CC (alpha) fails some checkers — solid near-black.
 */
.elementor-647 .elementor-element-ba285bb .elementor-heading-title,
.elementor-647 .elementor-element-a5391ea .elementor-heading-title,
.elementor-647 .elementor-element-8fab087 .elementor-heading-title,
.elementor-647 .elementor-element-740cb55 .elementor-heading-title,
.elementor-647 .elementor-element-60c71bb .elementor-heading-title,
.elementor-647 .elementor-element-7ab191e .elementor-heading-title {
	color: #333333 !important;
}

/*
 * GPE AUM labels (99fb14c / 0fb42aa): #00000080 on #F3F6FB is ~3.9:1 —
 * solid muted slate passes AA without changing the muted look.
 */
.elementor-647 .elementor-element-99fb14c .elementor-heading-title,
.elementor-647 .elementor-element-0fb42aa .elementor-heading-title {
	color: #4a5568 !important;
}

/*
 * GPE capability cards: white headings over photos. Silktide measures the light
 * parent behind the image — solid navy base (image still covers it visually).
 * Soft bottom inset keeps white titles readable on light photo areas.
 */
.elementor-647 .elementor-element-c397cd7.e-con,
.elementor-647 .elementor-element-cdcfdaa.e-con,
.elementor-647 .elementor-element-869dd62.e-con {
	background-color: #001648 !important;
	box-shadow: inset 0 -140px 90px -30px rgba(0, 22, 72, 0.88);
}

.elementor-647 .elementor-element-8a8b7f4 .elementor-heading-title,
.elementor-647 .elementor-element-837adc1 .elementor-heading-title,
.elementor-647 .elementor-element-fdccac4 .elementor-heading-title {
	color: #ffffff !important;
}

/* WCAG 1.4.11: Gravity Forms field underline needs >= 3:1 against white (#16161633 is ~1.4:1). */
body form .ginput_container input,
body form .ginput_container textarea,
body form .ginput_container select {
	border-bottom-color: #858585 !important;
}
