/* Reusable section heading — scoped to .gd-section-heading */

.gd-section-heading {
	max-width: 920px;
	margin: 0 auto 42px;
	text-align: center;
	padding-inline: 16px;
}

.gd-section-heading__title {
	margin: 0;
	color: #1F2A3A;
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: -0.02em;
	font-size: clamp(30px, 4vw, 48px);
}

.gd-section-heading__divider {
	position: relative;
	display: block;
	width: 260px;
	height: 30px;
	margin: 26px auto 30px;
	background:
		radial-gradient(circle at center, #E73F1E 0 8px, transparent 8.5px),
		radial-gradient(circle at center, rgba(var(--gd-primary-rgb), 0.20) 0 18px, transparent 18.5px);
}

.gd-section-heading__divider span {
	display: none;
}

.gd-section-heading__divider::marker {
	display: none;
}

.gd-section-heading__divider::before,
.gd-section-heading__divider::after {
	content: "";
	position: absolute;
	top: 50%;
	width: 98px;
	height: 3px;
	border-radius: 999px;
	opacity: 1;
}

.gd-section-heading__divider::before {
	right: 50%;
	margin-right: 24px;
	transform: translateY(-50%);
	background: linear-gradient(
		90deg,
		rgba(var(--gd-primary-rgb), 0),
		rgba(var(--gd-primary-rgb), 0.98)
	);
}

.gd-section-heading__divider::after {
	left: 50%;
	margin-left: 24px;
	transform: translateY(-50%) rotate(180deg);
	background: linear-gradient(
		90deg,
		rgba(var(--gd-primary-rgb), 0),
		rgba(var(--gd-primary-rgb), 0.98)
	);
}

.gd-section-heading__description {
	max-width: 780px;
	margin: 0 auto;
	color: #131B27;
	font-size: clamp(17px, 1.55vw, 22px);
	line-height: 1.9;
	font-weight: 500;
}

.gd-section-heading__description p {
	margin: 0;
	color: inherit;
}

.gd-section-heading__description p + p {
	margin-top: 10px;
}

@media (max-width: 767px) {
	.gd-section-heading {
		margin-bottom: 30px;
		padding-inline: 12px;
	}

	.gd-section-heading__title {
		font-size: clamp(26px, 7vw, 34px);
		line-height: 1.35;
	}

	.gd-section-heading__divider {
		width: 190px;
		height: 24px;
		margin: 20px auto 24px;
		background:
			radial-gradient(circle at center, #E73F1E 0 6px, transparent 6.5px),
			radial-gradient(circle at center, rgba(var(--gd-primary-rgb), 0.20) 0 15px, transparent 15.5px);
	}

	.gd-section-heading__divider::before,
	.gd-section-heading__divider::after {
		width: 70px;
		height: 3px;
	}

	.gd-section-heading__divider::before {
		margin-right: 20px;
	}

	.gd-section-heading__divider::after {
		margin-left: 20px;
	}

	.gd-section-heading__description {
		font-size: 16px;
		line-height: 1.8;
	}
}
