/*
 * Starlight Services Growth is fully scoped under .starlight-services-growth.
 * It does not depend on the active WordPress theme for light or dark styling.
 */
html,
body {
	overflow-x: hidden;
}

@supports (overflow-x: clip) {
	html,
	body {
		overflow-x: clip;
	}
}

body.starlight-has-services-growth {
	background:
		radial-gradient(circle at 72% 18%, rgba(139, 92, 246, .22), transparent 34%),
		radial-gradient(circle at 12% 76%, rgba(168, 85, 247, .16), transparent 38%),
		linear-gradient(180deg, #060018 0%, #10002b 48%, #1a063d 100%);
}

body.starlight-has-services-growth.starlight-services-growth-light-page {
	background:
		radial-gradient(circle at 72% 18%, rgba(139, 92, 246, .22), transparent 34%),
		radial-gradient(circle at 12% 76%, rgba(168, 85, 247, .16), transparent 38%),
		linear-gradient(180deg, #060018 0%, #10002b 48%, #1a063d 100%);
}

body.starlight-has-services-growth .starlight-services-growth {
	isolation: isolate;
}

body.starlight-has-services-growth .vc_row:has(.starlight-services-growth),
body.starlight-has-services-growth .wpb_wrapper:has(.starlight-services-growth) {
	background-color: transparent;
}

.starlight-services-growth {
	--sl-bg-1: #060018;
	--sl-bg-2: #10002b;
	--sl-bg-3: #1a063d;
	--sl-text: #ffffff;
	--sl-text-muted: rgba(255, 255, 255, .72);
	--sl-text-soft: rgba(255, 255, 255, .56);
	--sl-primary: #8b5cf6;
	--sl-primary-strong: #a855f7;
	--sl-primary-dark: #6d28d9;
	--sl-success: #22c55e;
	--sl-surface: rgba(255, 255, 255, .07);
	--sl-surface-strong: rgba(255, 255, 255, .11);
	--sl-border: rgba(255, 255, 255, .14);
	--sl-border-strong: rgba(255, 255, 255, .24);
	--sl-shadow: rgba(0, 0, 0, .35);
	--sl-glow-primary: rgba(139, 92, 246, .32);
	--sl-glow-secondary: rgba(168, 85, 247, .22);
	--sl-network-line: rgba(255, 255, 255, .05);
	--sl-network-dot: rgba(255, 255, 255, .32);
	--sl-icon-bg: rgba(139, 92, 246, .14);
	--sl-focus: rgba(255, 255, 255, .72);
	color-scheme: dark;
	box-sizing: border-box;
	position: relative;
	display: block;
	width: 100vw;
	max-width: 100vw;
	padding: 48px 0 55px;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	overflow: hidden;
	color: var(--sl-text);
	background:
		radial-gradient(circle at 72% 18%, var(--sl-glow-primary), transparent 34%),
		radial-gradient(circle at 12% 76%, var(--sl-glow-secondary), transparent 38%),
		linear-gradient(180deg, var(--sl-bg-1) 0%, var(--sl-bg-2) 48%, var(--sl-bg-3) 100%);
}

.starlight-services-growth--light {
	--sl-bg-1: #060018;
	--sl-bg-2: #10002b;
	--sl-bg-3: #1a063d;
	--sl-text: #ffffff;
	--sl-text-muted: rgba(255, 255, 255, .72);
	--sl-text-soft: rgba(255, 255, 255, .56);
	--sl-primary: #8b5cf6;
	--sl-primary-strong: #a855f7;
	--sl-primary-dark: #6d28d9;
	--sl-success: #22c55e;
	--sl-surface: rgba(255, 255, 255, .07);
	--sl-surface-strong: rgba(255, 255, 255, .11);
	--sl-border: rgba(255, 255, 255, .14);
	--sl-border-strong: rgba(255, 255, 255, .24);
	--sl-shadow: rgba(0, 0, 0, .35);
	--sl-glow-primary: rgba(139, 92, 246, .32);
	--sl-glow-secondary: rgba(168, 85, 247, .22);
	--sl-network-line: rgba(255, 255, 255, .05);
	--sl-network-dot: rgba(255, 255, 255, .32);
	--sl-icon-bg: rgba(139, 92, 246, .14);
	--sl-focus: rgba(255, 255, 255, .72);
}

.starlight-services-growth *,
.starlight-services-growth *::before,
.starlight-services-growth *::after {
	box-sizing: border-box;
}

.starlight-services-growth::before,
.starlight-services-growth::after {
	position: absolute;
	inset: 0;
	z-index: 0;
	content: "";
	pointer-events: none;
}

.starlight-services-growth::before {
	background:
		linear-gradient(var(--sl-network-line) 1px, transparent 1px),
		linear-gradient(90deg, var(--sl-network-line) 1px, transparent 1px);
	background-size: 72px 72px;
	mask-image: radial-gradient(circle at 50% 34%, #000 0%, transparent 72%);
}

.starlight-services-growth::after {
	opacity: .42;
	background:
		radial-gradient(circle, var(--sl-network-dot) 0 1px, transparent 1.5px) 0 0 / 34px 34px,
		linear-gradient(115deg, transparent 0 28%, rgba(168, 85, 247, .14) 28.2%, transparent 28.6% 63%, rgba(124, 58, 237, .12) 63.2%, transparent 63.6%);
}

.starlight-services-growth__container {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	width: var(--sl-container-width, min(100% - 48px, 1320px));
	max-width: var(--sl-container-max, 1320px);
	margin-inline: auto;
}

.starlight-services-growth__header {
	max-width: 780px;
	margin: 0 auto 42px;
	text-align: center;
}

.starlight-services-growth__eyebrow {
	display: inline-flex;
	gap: 10px;
	align-items: center;
	max-width: 100%;
	padding: 10px 14px;
	margin: 0 0 18px;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	color: var(--sl-text);
	letter-spacing: 0;
	overflow-wrap: anywhere;
	background: var(--sl-surface);
	border: 1px solid var(--sl-border);
	border-radius: 999px;
	box-shadow: 0 18px 44px var(--sl-shadow);
	backdrop-filter: blur(16px);
}

.starlight-services-growth__eyebrow .starlight-services-growth__icon {
	width: 15px;
	height: 15px;
	color: var(--sl-primary-strong);
	filter: drop-shadow(0 0 10px var(--sl-glow-secondary));
	flex: 0 0 auto;
}

.starlight-services-growth__heading {
	max-width: 820px;
	margin: 0 auto;
	color: var(--sl-text);
	overflow-wrap: break-word;
	text-wrap: balance;
}

.starlight-services-growth__subheading {
	max-width: 680px;
	margin: 20px auto 0;
	font-size: clamp(16px, 1.35vw, 19px);
	line-height: 1.7;
	color: var(--sl-text-muted);
	overflow-wrap: break-word;
}

.starlight-services-growth__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	align-items: stretch;
}

.starlight-services-growth__card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 100%;
	padding: 24px;
	overflow: hidden;
	color: var(--sl-text);
	background: var(--sl-surface);
	border: 1px solid var(--sl-border);
	border-radius: 24px;
	box-shadow: 0 20px 60px var(--sl-shadow);
	backdrop-filter: blur(18px);
	transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.starlight-services-growth__card::before {
	position: absolute;
	inset: -35% -35% auto auto;
	width: 150px;
	height: 150px;
	content: "";
	background: radial-gradient(circle, var(--sl-glow-primary), transparent 70%);
	opacity: .9;
	pointer-events: none;
}

.starlight-services-growth__card:hover {
	transform: translateY(-6px);
	background: var(--sl-surface-strong);
	border-color: var(--sl-border-strong);
	box-shadow: 0 28px 76px var(--sl-shadow), 0 0 54px var(--sl-glow-secondary);
}

.starlight-services-growth__icon-wrap {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	margin: 0 0 22px;
	color: var(--sl-primary);
	background: var(--sl-icon-bg);
	border: 1px solid var(--sl-border);
	border-radius: 18px;
	box-shadow: 0 16px 34px var(--sl-shadow);
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.starlight-services-growth__card:hover .starlight-services-growth__icon-wrap {
	transform: translateY(-2px);
	border-color: var(--sl-border-strong);
	box-shadow: 0 18px 42px var(--sl-shadow), 0 0 24px var(--sl-glow-secondary);
}

.starlight-services-growth__icon-wrap .starlight-services-growth__icon {
	width: 28px;
	height: 28px;
}

.starlight-services-growth__card-body {
	position: relative;
	z-index: 1;
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-width: 0;
}

.starlight-services-growth__card h3 {
	margin: 0;
	color: var(--sl-text);
	overflow-wrap: break-word;
}

.starlight-services-growth__card p {
	margin: 14px 0 0;
	font-size: 15px;
	line-height: 1.65;
	color: var(--sl-text-muted);
	overflow-wrap: break-word;
}

.starlight-services-growth__items {
	display: grid;
	gap: 10px;
	padding: 0;
	margin: 22px 0 0;
	list-style: none;
}

.starlight-services-growth__items li {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	min-width: 0;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--sl-text);
	overflow-wrap: break-word;
}

.starlight-services-growth__check-icon {
	width: 20px;
	height: 20px;
	padding: 3px;
	color: var(--sl-primary);
	background: var(--sl-icon-bg);
	border: 1px solid var(--sl-border);
	border-radius: 999px;
	flex: 0 0 auto;
}

.starlight-services-growth__link {
	position: relative;
	z-index: 1;
	display: inline-flex;
	gap: 9px;
	align-items: center;
	justify-content: center;
	width: fit-content;
	max-width: 100%;
	min-height: 44px;
	padding: 12px 16px;
	margin-top: 26px;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.1;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
	color: #ffffff;
	background: linear-gradient(135deg, var(--sl-primary), var(--sl-primary-strong));
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 999px;
	box-shadow: 0 18px 40px rgba(124, 58, 237, .28), inset 0 1px 0 rgba(255, 255, 255, .26);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.starlight-services-growth__link:hover,
.starlight-services-growth__link:focus {
	color: #ffffff;
	text-decoration: none;
}

.starlight-services-growth__link:hover {
	transform: translateY(-2px);
	box-shadow: 0 24px 56px rgba(124, 58, 237, .36), inset 0 1px 0 rgba(255, 255, 255, .32);
}

.starlight-services-growth__link:focus-visible {
	outline: 3px solid var(--sl-focus);
	outline-offset: 4px;
}

.starlight-services-growth__arrow-icon {
	width: 18px;
	height: 18px;
	flex: 0 0 auto;
}

@media (max-width: 1024px) {
	.starlight-services-growth {
		padding: 38px 0 45px;
	}

	.starlight-services-growth__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px;
	}
}

@media (max-width: 767px) {
	.starlight-services-growth {
		padding: 28px 0 35px;
	}

	.starlight-services-growth__container {
		width: var(--sl-container-width, min(100% - 24px, 1320px));
		max-width: var(--sl-container-max, 1320px);
	}

	.starlight-services-growth__header {
		margin-bottom: 30px;
		text-align: left;
	}

	.starlight-services-growth__heading,
	.starlight-services-growth__subheading {
		margin-left: 0;
		margin-right: 0;
	}

	.starlight-services-growth__grid {
		grid-template-columns: 1fr;
	}

	.starlight-services-growth__card {
		padding: 22px;
	}
}

@media (max-width: 360px) {
	.starlight-services-growth__container {
		width: var(--sl-container-width, min(100% - 24px, 1320px));
	}
}

@media (max-width: 420px) {
	.starlight-services-growth__link {
		width: 100%;
		white-space: normal;
	}

	.starlight-services-growth__eyebrow {
		align-items: flex-start;
		border-radius: 18px;
	}
}

/* Heading typography intentionally inherited from the active theme. Starlight controls color/effects only. */
/* Theme isolation: keep Starlight text colors stable against site light/dark switchers. */
.starlight-services-growth h1,
.starlight-services-growth h2,
.starlight-services-growth h3,
.starlight-services-growth h4,
.starlight-services-growth__eyebrow,
.starlight-services-growth__heading,
.starlight-services-growth__card,
.starlight-services-growth__card h3,
.starlight-services-growth__items li {
	color: var(--sl-text) !important;
}

.starlight-services-growth p,
.starlight-services-growth__subheading,
.starlight-services-growth__card p {
	color: var(--sl-text-muted) !important;
}

.starlight-services-growth .starlight-services-growth__link,
.starlight-services-growth .starlight-services-growth__link:hover,
.starlight-services-growth .starlight-services-growth__link:focus,
.starlight-services-growth .starlight-services-growth__link:focus-visible,
.starlight-services-growth .starlight-services-growth__link:active,
.starlight-services-growth .starlight-services-growth__link:visited {
	color: #ffffff !important;
}

.starlight-services-growth .starlight-services-growth__link span,
.starlight-services-growth .starlight-services-growth__link svg {
	color: inherit !important;
}
