/**
 * Smart Leading Net — Growth Page Hero Banner
 * Scoped styles only. Uses theme tokens — no global overrides.
 */

.growth-page-hero {
	position: relative;
	width: 100%;
	padding: 20px 0 50px;
	background-color: var(--light-blue-2);
	overflow-x: clip;
}

.growth-page-hero__container {
	position: relative;
	z-index: 1;
}

.growth-page-hero__stage {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 32px;
	min-width: 0;
	width: 100%;
}

@media (min-width: 992px) {
	.growth-page-hero__stage {
		display: grid;
		grid-template-columns: 48fr 52fr;
		align-items: center;
	}
}

.growth-page-hero__content {
	width: 100%;
	max-width: 100%;
	align-self: center;
}

.growth-page-hero__badges {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	margin-bottom: 30px;
}

.growth-page-hero__badge-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	font-size: 14px;
	font-weight: var(--font-weight-semibold);
	line-height: 1;
	letter-spacing: 0.03em;
	white-space: nowrap;
}

.growth-page-hero__badge-pill--primary {
	height: 48px;
	padding: 0 22px;
	border-radius: 50px;
	background-color: var(--primary-color);
	color: var(--white);
	text-transform: uppercase;
}

.growth-page-hero__badge-pill--secondary {
	gap: 8px;
	height: 48px;
	padding: 0 18px 0 14px;
	border-radius: 50px;
	background-color: var(--white);
	border: 1px solid var(--light-blue-3);
	color: var(--heading-color);
	font-weight: var(--font-weight-medium);
	letter-spacing: 0;
}

.growth-page-hero__badge-check {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: var(--primary-color);
	color: var(--white);
}

.growth-page-hero__badge-check svg {
	display: block;
}

.growth-page-hero__heading {
	margin: 0 0 36px;
	max-width: 650px;
	font-family: var(--font-family-base);
	font-size: var(--h1-size);
	font-weight: var(--h1-weight);
	line-height: 1.1;
	letter-spacing: -0.04em;
	color: var(--heading-color);
}

.growth-page-hero__heading-line {
	display: block;
}

.growth-page-hero__heading-line--accent {
	white-space: nowrap;
}

.growth-page-hero__accent-wrap {
	display: inline-block;
	position: relative;
	vertical-align: baseline;
	padding-bottom: 10px;
}

.growth-page-hero__heading-accent {
	color: var(--secondary-color);
}

.growth-page-hero__accent-underline {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 4px;
	border-radius: 999px;
	background-color: var(--secondary-color);
	pointer-events: none;
}

.growth-page-hero__description {
	margin: 0 0 40px;
	max-width: 100%;
	font-size: var(--paragraph-size);
	font-weight: var(--paragraph-weight);
	line-height: 1.6;
	color: var(--text-color);
}

.growth-page-hero__description strong {
	font-weight: var(--font-weight-bold);
	color: var(--heading-color);
}

.growth-page-hero__description > :first-child {
	margin-top: 0;
}

.growth-page-hero__description > :last-child {
	margin-bottom: 0;
}

.growth-page-hero__description a {
	color: var(--primary-color);
	text-decoration: underline;
}

.growth-page-hero__description ul,
.growth-page-hero__description ol {
	margin: 0 0 1em;
	padding-left: 1.25em;
}

.growth-page-hero__cta.sls-btn {
	width: fit-content;
	max-width: 100%;
}

.growth-page-hero__cta.sls-btn .sls-btn__icon {
	flex-shrink: 0;
}

/* --------------------------------------------------------------------------
   Right Visual — Growth Metrics card
   -------------------------------------------------------------------------- */

.growth-page-hero__visual {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-width: 0;
	padding: 24px 0;
}

.growth-page-hero__deco-image {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 0;
	width: min(100%, 420px);
	height: auto;
	opacity: 0.08;
	transform: translate(-50%, -50%);
	pointer-events: none;
}

.growth-page-hero__metrics {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 560px;
	padding: 28px;
	background-color: var(--card-bg);
	border: 1px solid var(--light-blue-3);
	border-radius: var(--card-radius);
	box-shadow: var(--card-shadow-hover);
}

.growth-page-hero__metrics-title {
	margin: 0 0 24px;
	font-size: var(--heading-sm-size);
	font-weight: var(--heading-sm-weight);
	line-height: 1.2;
	color: var(--heading-color);
}

.growth-page-hero__metrics-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin-bottom: 24px;
}

.growth-page-hero__metric {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 18px 16px;
	background: var(--light-blue-2);
	border: 1px solid var(--light-blue-3);
	border-radius: var(--button-radius);
}

.growth-page-hero__metric-label {
	font-size: var(--paragraph-size);
	font-weight: var(--font-weight-medium);
	line-height: 1.25;
	color: var(--text-color);
}

.growth-page-hero__metric-value {
	font-size: var(--h3-size);
	font-weight: var(--font-weight-bold);
	line-height: 1.1;
	color: var(--heading-color);
}

.growth-page-hero__metric-value--primary {
	color: var(--primary-color);
}

.growth-page-hero__metric-value--accent {
	color: var(--secondary-color);
}

.growth-page-hero__metric-badge {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	padding: 4px 10px;
	border-radius: 50px;
	font-size: 14px;
	font-weight: var(--font-weight-semibold);
	line-height: 1.2;
	margin-top: 4px;
	margin-left: 0;
	margin-right: 0;
}

.growth-page-hero__metric-badge--primary {
	background: var(--light-blue-1);
	color: var(--primary-color);
}

.growth-page-hero__metric-badge--accent {
	background: var(--light-orange-2);
	color: var(--secondary-color);
}

.growth-page-hero__metrics-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.growth-page-hero__metrics-btn {
	flex: 1 1 0;
	min-width: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: var(--button-padding-y) var(--button-padding-x);
	border-radius: var(--button-radius);
	font-size: var(--button-font-size);
	font-weight: var(--button-font-weight);
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
}

/* Metrics card CTAs are plain solid buttons — no arrow/circle UI */
.growth-page-hero__metrics-actions .growth-page-hero__metrics-btn.sls-btn,
.growth-page-hero__metrics-actions .sls-btn.growth-page-hero__metrics-btn {
	position: static;
	overflow: visible;
	justify-content: center;
	gap: 0;
	width: auto;
	height: auto;
	min-height: 0;
	padding: var(--button-padding-y) var(--button-padding-x);
}

.growth-page-hero__metrics-actions .growth-page-hero__metrics-btn > span[aria-hidden="true"],
.growth-page-hero__metrics-actions .growth-page-hero__metrics-btn .sls-btn__icon,
.growth-page-hero__metrics-actions .growth-page-hero__metrics-btn .sls-btn__arrow,
.growth-page-hero__metrics-actions .growth-page-hero__metrics-btn .sls-btn__arrow-copy {
	display: none !important;
}

/* Decorative accents */

.growth-page-hero__deco {
	position: absolute;
	z-index: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--white);
	border: 1px solid var(--light-blue-3);
	color: var(--primary-color);
	box-shadow: var(--card-shadow-hover);
}

.growth-page-hero__deco svg {
	display: block;
}

.growth-page-hero__deco--chart {
	top: 8%;
	right: 4%;
}

.growth-page-hero__deco--trend {
	bottom: 12%;
	left: 2%;
}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */

@media (max-width: 1199.98px) {
	.growth-page-hero__heading {
		max-width: 100%;
	}

	.growth-page-hero__metrics {
		max-width: 520px;
	}
}

@media (max-width: 991.98px) {
	.growth-page-hero {
		padding: 10px 0 40px;
	}

	.growth-page-hero__stage {
		gap: 36px;
	}

	.growth-page-hero__content {
		text-align: center;
		margin: 0 auto;
	}

	.growth-page-hero__badges {
		justify-content: center;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 32px;
	}

	.growth-page-hero__description {
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 32px;
	}

	.growth-page-hero__heading-line--accent {
		white-space: normal;
	}

	.growth-page-hero__cta {
		margin: 0 auto;
	}

	.growth-page-hero__visual {
		max-width: 560px;
		margin: 0 auto;
	}

	.growth-page-hero__deco--chart {
		right: 0;
	}

	.growth-page-hero__deco--trend {
		left: 0;
	}
}

@media (max-width: 767.98px) {
	.growth-page-hero {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.growth-page-hero__stage {
		display: flex !important;
		flex-direction: column !important;
		gap: 24px;
		padding: 0;
	}

	.growth-page-hero__content,
	.growth-page-hero__visual {
		width: 100% !important;
		max-width: 100% !important;
		flex: none !important;
	}

	.growth-page-hero__content {
		text-align: left;
		margin: 0;
		order: 1;
	}

	.growth-page-hero__visual {
		order: 2;
		max-width: 100%;
		padding: 0;
	}

	.growth-page-hero__badges {
		justify-content: flex-start;
		gap: 12px;
		margin-bottom: 32px;
	}

	.growth-page-hero__badge-pill {
		font-size: 13px;
	}

	.growth-page-hero__badge-pill--primary {
		height: 40px;
		padding: 0 16px;
	}

	.growth-page-hero__badge-pill--secondary {
		height: 40px;
		padding: 0 14px 0 12px;
		gap: 6px;
	}

	.growth-page-hero__badge-check {
		width: 18px;
		height: 18px;
	}

	.growth-page-hero__heading {
		max-width: 100%;
		font-size: 34px;
		line-height: 1.08;
		letter-spacing: -0.02em;
		margin-bottom: 24px;
	}

	.growth-page-hero__description {
		font-size: var(--paragraph-size-mobile);
		margin-bottom: 32px;
	}

	.growth-page-hero__metrics {
		max-width: 100%;
		width: 100%;
		padding: 16px;
	}

	.growth-page-hero__metrics-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.growth-page-hero__metric {
		padding: 14px 12px;
	}

	.growth-page-hero__metric-value {
		font-size: var(--heading-md-size);
	}

	.growth-page-hero__metrics-actions {
		flex-direction: column;
		gap: 10px;
		width: 100%;
	}

	.growth-page-hero__cta.sls-btn {
		width: 100%;
		max-width: 100%;
	}

	.growth-page-hero__metrics-btn {
		width: 100%;
		flex: none;
	}

	.growth-page-hero__deco {
		width: 36px;
		height: 36px;
	}

	.growth-page-hero__deco svg {
		width: 16px;
		height: 16px;
	}
}
