/**
 * MON PORTÉ Product Material (PDP-V1).
 * Strictly .mpm-* scoped. Editorial split, 2px radii, no shadows.
 * Tiers: base = desktop, max-width:850 tablet, max-width:549 mobile.
 */

.mpm-material {
	background-color: var(--mpm-bg, #fff);
	color: var(--mpm-text, #1f1e1b);
	padding-top: var(--mpm-pad-y, 72px);
	padding-bottom: var(--mpm-pad-y, 72px);
}

.mpm-inner {
	margin-inline: auto;
	max-width: 1320px;
	padding-inline: 24px;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 56px;
	align-items: center;
}

.mpm-layout-left .mpm-media {
	order: -1;
}

.mpm-split-6040 .mpm-inner {
	grid-template-columns: minmax(0, 6fr) minmax(0, 4fr);
}

.mpm-split-6535 .mpm-inner {
	grid-template-columns: minmax(0, 65fr) minmax(0, 35fr);
}

.mpm-split-7030 .mpm-inner {
	grid-template-columns: minmax(0, 7fr) minmax(0, 3fr);
}

.mpm-layout-split .mpm-copy {
	max-width: var(--mpm-maxtext, 520px);
}

.mpm-copy {
	max-width: var(--mpm-maxtext, 520px);
	min-width: 0;
}

.mpm-align-center .mpm-copy {
	margin-inline: auto;
	text-align: center;
}

.mpm-align-right .mpm-copy {
	margin-left: auto;
	text-align: right;
}

.mpm-eyebrow {
	margin: 0 0 14px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--mpm-muted, #646049);
}

.mpm-title {
	margin: 0 0 16px;
	font-size: 28px;
	font-weight: 600;
	letter-spacing: -0.01em;
	line-height: 1.2;
	text-wrap: balance;
}

.mpm-text {
	font-size: 15px;
	line-height: 1.65;
	color: var(--mpm-muted, #646049);
}

.mpm-text p {
	margin: 0 0 0.75em;
}

.mpm-text p:last-child {
	margin-bottom: 0;
}

.mpm-media {
	margin: 0;
	overflow: hidden;
	border-radius: 2px;
	aspect-ratio: var(--mpm-ratio, 4 / 3);
	background-color: color-mix(in srgb, var(--mpm-muted, #646049) 8%, transparent);
}

.mpm-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mpm-no-media .mpm-inner {
	grid-template-columns: minmax(0, 720px);
	justify-content: center;
}

.mpm-no-media .mpm-media {
	display: none;
}

.mpm-placeholder {
	padding: 24px;
	border: 1px dashed color-mix(in srgb, currentColor 35%, transparent);
	border-radius: 8px;
	font-size: 13.5px;
	text-align: center;
	opacity: 0.75;
}

@media (max-width: 849px) {
	.mpm-material {
		padding-top: var(--mpm-pad-y-md, 60px);
		padding-bottom: var(--mpm-pad-y-md, 60px);
	}

	.mpm-inner,
	.mpm-split-6040 .mpm-inner,
	.mpm-split-6535 .mpm-inner,
	.mpm-split-7030 .mpm-inner {
		grid-template-columns: minmax(0, 1fr);
		gap: 28px;
	}

	/* Mobile: image first by default. */
	.mpm-media {
		order: -1;
	}
}

@media (max-width: 549px) {
	.mpm-material {
		padding-top: var(--mpm-pad-y-sm, 48px);
		padding-bottom: var(--mpm-pad-y-sm, 48px);
	}

	.mpm-inner {
		padding-inline: 20px;
		gap: 24px;
	}

	.mpm-title {
		font-size: 24px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mpm-material,
	.mpm-material * {
		transition: none;
	}
}
