/**
 * IEMA Partner Detail block styles.
 *
 * Two alternating media + text rows on a light-grey section. Desktop:
 * each row is a 50/50 flex split (About = image left, Benefits = image
 * right). Mobile: both rows stack with the text above the image. The
 * benefits list is a two-column checklist. Media sits in a navy rounded
 * frame. Scoped under `.iema-pd`.
 */

.iema-pd {
	width: 100%;
	box-sizing: border-box;
	background-color: #f5f5f5;
	font-family: Helvetica, "Helvetica Neue", Arial, sans-serif;
}

.iema-pd__inner {
	max-width: 1440px;
	margin: 0 auto;
	padding: 64px 80px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 64px;
}

.iema-pd__row {
	display: flex;
	align-items: center;
	gap: 100px;
}

.iema-pd__media,
.iema-pd__content {
	flex: 1 1 0;
	min-width: 0;
}

/* Media ------------------------------------------------------------- */
.iema-pd__media {
	background-color: #002147;
	border-radius: 16px;
	overflow: hidden;
	line-height: 0;
}

.iema-pd__img {
	display: block;
	width: 100%;
	height: auto;
}

.iema-pd__img--placeholder {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	background: #002147;
}

/* Content ----------------------------------------------------------- */
.iema-pd__heading {
	margin: 0 0 24px;
	color: #002147;
	font-weight: 700;
	font-size: 40px;
	line-height: 44px;
}

.iema-pd__text {
	color: #707070;
	font-weight: 400;
	font-size: 16px;
	line-height: 22.4px;
}

.iema-pd__text > :first-child {
	margin-top: 0;
}

.iema-pd__text > :last-child {
	margin-bottom: 0;
}

.iema-pd__text p {
	margin: 0 0 1em;
}

/* Benefits checklist ------------------------------------------------ */
.iema-pd__benefits {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 24px;
	row-gap: 24px;
}

.iema-pd__benefit {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	color: #707070;
	font-weight: 400;
	font-size: 16px;
	line-height: 22.4px;
}

.iema-pd__check {
	flex: none;
	margin-top: 1px;
}

/* CTA --------------------------------------------------------------- */
.iema-pd__cta {
	display: inline-block;
	margin-top: 32px;
	padding: 16px 32px;
	background-color: #002147;
	color: #ffffff;
	border-radius: 999px;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.15;
	text-decoration: none;
	transition: background-color 0.2s ease;
}

.iema-pd__cta:hover,
.iema-pd__cta:focus-visible {
	background-color: #013063;
	color: #ffffff;
}

/* Mobile: stack, text above image. --------------------------------- */
@media (max-width: 900px) {
	.iema-pd__inner {
		padding: 40px 24px;
		gap: 48px;
	}

	.iema-pd__row {
		gap: 32px;
	}

	.iema-pd__row--media-left {
		flex-direction: column-reverse;
	}

	.iema-pd__row--media-right {
		flex-direction: column;
	}

	.iema-pd__media,
	.iema-pd__content {
		width: 100%;
		flex: none;
	}

	.iema-pd__heading {
		font-size: 32px;
		line-height: 35.2px;
	}
}
