.success-stories {
	padding: 4rem 0;
}

.success-stories__heading {
	margin-bottom: 1.5rem;
	font-size: var(--wp--preset--font-size--heading-4);
	line-height: 32px;
}

.success-stories .success-stories__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

.success-stories__item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1rem;
}

/* Overrides core's `.wp-block-separator:not(.is-style-wide):not(.is-style-dots)`
   width restriction (specificity 0,0,3,0), and the `.is-layout-constrained > :where(...)`
   auto-margin/max-width centring below — both need !important since the layout-constrained
   rule itself sets margins with !important. */
.success-stories__item .success-stories__divider {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 0.5rem !important;
	border: none;
	border-top: 1px solid var(--wp--preset--color--neutral-200);
}

/* Core's `.is-layout-constrained > :where(...)` centres every direct child of a
   constrained group (each success-stories__item) with `!important` auto margins and
   a capped max-width — override so the column content stays left-aligned and full-width. */
.success-stories .success-stories__item > * {
	max-width: none;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.success-stories__logo {
	margin: 0;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 700;
	font-size: 20px;
	line-height: 28px;
	color: var(--wp--preset--color--neutral-900);
}

.success-stories__text {
	margin: 0;
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--body-copy);
	line-height: 28px;
	color: var(--wp--preset--color--neutral-900);
}

@media (max-width: 768px) {
	.success-stories .success-stories__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}
}

.stat-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	width: 100%;
}

.stat-row__number {
	margin: 0;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 600;
	font-size: 62px;
	line-height: 64px;
	letter-spacing: -1px;
	color: var(--wp--preset--color--neutral-900);
}

.stat-row__caption {
	margin: 0;
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--md);
	line-height: 1.3;
	color: var(--wp--preset--color--neutral-900);
}

.stat-row__icon {
	flex-shrink: 0;
	max-width: 48px;
	height: auto;
}

@media (max-width: 768px) {
	.stat-row__number {
		font-size: 48px;
		line-height: 52px;
	}
}
