/* Simple slider: one full-width image with editable HTML layered above it. */
.ahp-hero-slide.is-maquette .ahp-hero-slide-inner {
	position: relative;
	display: block;
	width: 100% !important;
	max-width: none !important;
	/* Keep the desktop banner compact while preserving the entire selected image. */
	height: clamp(280px, 18vw, 340px);
	min-height: 0;
	margin: 0 !important;
	padding: 0 !important;
}

.ahp-hero-slide.is-maquette .ahp-hero-slide-visual {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100% !important;
	min-height: 0 !important;
	z-index: 0;
	overflow: hidden;
}

.ahp-hero-slide.is-maquette .ahp-hero-slide-visual::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(239,246,255,.98) 0%, rgba(239,246,255,.92) 34%, rgba(239,246,255,.34) 56%, rgba(239,246,255,.04) 78%);
}

.ahp-hero-slide.is-maquette .ahp-hero-slide-visual > img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	/* Keep the empty side of a panoramic image on the copy side, never as a
	 * visible strip on the right of the slider. */
	object-position: right center;
	background: #eff6ff;
}

.ahp-hero-slide.is-maquette .ahp-hero-slide-visual > picture {
	display: block;
	width: 100%;
	height: 100%;
}

.ahp-hero-slide.is-maquette .ahp-hero-slide-visual > picture > img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: right center;
	background: #eff6ff;
}

.ahp-hero-slide.is-maquette .ahp-hero-slide-content {
	display: block;
	position: relative;
	z-index: 2;
	width: min(720px, calc(100% - 64px));
	margin-left: max(32px, calc((100% - 1280px) / 2));
	padding-top: clamp(74px, 7vw, 112px);
}

.ahp-hero-slide.is-maquette .ahp-maquette-copy {
	display: block;
	margin: 0;
	text-align: left;
}

.ahp-hero-slide.is-maquette .ahp-maquette-action {
	position: relative;
	z-index: 2;
	width: min(720px, calc(100% - 64px));
	margin: 24px 0 0 max(32px, calc((100% - 1280px) / 2));
	text-align: left;
}

/* Simple slider mode: selected image only — no HTML overlay. */
.ahp-hero-slide.is-maquette.is-simple-slider .ahp-hero-slide-inner {
	height: clamp(260px, 17vw, 320px);
	min-height: 0;
	padding: 0 !important;
}

.ahp-hero-slide.is-maquette.is-simple-slider .ahp-hero-slide-visual {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100% !important;
	min-height: 0 !important;
	margin: 0;
}

.ahp-hero-slide.is-maquette.is-simple-slider .ahp-hero-slide-visual::after {
	display: none;
}

.ahp-hero-slide.is-maquette.is-simple-slider .ahp-hero-slide-visual > img {
	object-fit: cover;
	object-position: center;
}

.ahp-hero-slide.is-maquette.is-simple-slider .ahp-hero-slide-visual > picture > img {
	object-fit: cover;
	object-position: center;
}

@media (max-width: 767px) {
	.ahp-hero-slide.is-maquette.is-simple-slider .ahp-hero-slide-inner {
		display: block !important;
		height: 190px;
		min-height: 190px;
		padding: 0 !important;
	}

	.ahp-hero-slide.is-maquette.is-simple-slider .ahp-hero-slide-visual {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100% !important;
		min-height: 0 !important;
		margin: 0;
	}

	.ahp-hero-slide.is-maquette .ahp-hero-slide-inner {
		display: flex !important;
		flex-direction: column;
		aspect-ratio: auto;
		height: auto;
		min-height: 0;
		padding: 24px 0 20px !important;
	}

	/* On phone, keep the wide banner as a compact illustration below the text. */
	.ahp-hero-slide.is-maquette .ahp-hero-slide-visual {
		position: relative;
		inset: auto;
		order: 2;
		width: calc(100% - 40px);
		height: 160px !important;
		min-height: 160px !important;
		margin: 14px auto 0;
		background: #eff6ff;
	}

	.ahp-hero-slide.is-maquette .ahp-hero-slide-visual::after {
		display: none;
	}

	.ahp-hero-slide.is-maquette .ahp-hero-slide-visual > img {
		object-position: center;
	}

	.ahp-hero-slide.is-maquette .ahp-hero-slide-content {
		order: 1;
		width: calc(100% - 40px);
		margin: 0 auto;
		padding-top: 0;
	}

	.ahp-hero-slide.is-maquette .ahp-hero-slide-content h1,
	.ahp-hero-slide.is-maquette .ahp-hero-slide-content h2 {
		font-size: 36px !important;
		line-height: 1.08 !important;
		margin-bottom: 12px !important;
	}

	.ahp-hero-slide.is-maquette .ahp-hero-slide-content p {
		font-size: 15px !important;
		line-height: 1.5 !important;
		margin-bottom: 14px !important;
	}

	.ahp-hero-slide.is-maquette .ahp-hero-slide-content .ahp-actions {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 9px;
	}

	.ahp-hero-slide.is-maquette .ahp-hero-slide-content .ahp-actions .ahp-button {
		min-height: 46px !important;
		padding: 10px 7px !important;
		font-size: 13px;
	}

	.ahp-hero-slide.is-maquette .ahp-hero-slide-content .ahp-checks {
		margin-top: 12px;
		gap: 8px 14px;
	}

	.ahp-hero-slide.is-maquette .ahp-maquette-copy {
		text-align: center;
	}

	.ahp-hero-slide.is-maquette .ahp-maquette-action {
		order: 3;
		width: calc(100% - 56px);
		margin: 18px auto 0;
		text-align: center;
	}
}
