.cp-about {
	--cp-about-accent: var(--cp-navy);
	--cp-about-heading-color: #14141F;
	--cp-about-stat-border: var(--cp-border);

	display: flex;
	align-items: flex-start;
	gap: 56px;
	padding: 72px 5%;
	flex-wrap: wrap;
}

.cp-about__media {
	flex: 1 1 380px;
	min-width: 300px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.cp-about__media img,
.cp-about__placeholder {
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	border-radius: 8px;
	display: block;
}

.cp-about__placeholder {
	background: linear-gradient(135deg, #EDEFF5, #DDE2ED);
}

.cp-about__content {
	flex: 1 1 460px;
	min-width: 320px;
}

.cp-about__heading {
	margin: 0 0 20px;
	font-size: 32px;
	line-height: 1.25;
	font-weight: 700;
	color: var(--cp-about-heading-color);
}

.cp-about__body {
	color: var(--cp-text-body, #4B5563);
	font-size: 15px;
	line-height: 1.75;
}

.cp-about__body p {
	margin: 0 0 16px;
}

.cp-about__stats {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1px;
	background: var(--cp-about-stat-border);
	border: 1px solid var(--cp-about-stat-border);
	margin-top: 32px;
}

.cp-about__stat {
	background: #fff;
	padding: 20px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.cp-about__stat-icon {
	color: var(--cp-about-accent);
	font-size: 22px;
	line-height: 1;
}

.cp-about__stat-icon svg {
	width: 1em;
	height: 1em;
	fill: currentColor;
}

.cp-about__stat-value {
	font-size: 24px;
	font-weight: 700;
	color: var(--cp-about-heading-color);
}

.cp-about__stat-label {
	font-size: 13px;
	color: var(--cp-text-body, #4B5563);
}

@media (max-width: 767px) {
	.cp-about {
		gap: 32px;
		padding: 48px 5%;
	}
	.cp-about__stats {
		grid-template-columns: 1fr;
	}
}
