/**
 * Shared full-viewport page hero — poster + video (Financing, Warranty, etc.)
 */
.dph-page {
	--dph-max: 172.8rem;
	--dph-pad: clamp(2rem, 5.8vw, 15rem);
	--dph-text: #323c48;
	--dph-bg: #f9f7f5;
	background: var(--dph-bg);
}

.dph-page.secondary {
	background: var(--dph-bg);
	padding-top: 0 !important;
	/* overflow-x:hidden on body breaks position:sticky — clip does not */
	overflow-x: clip;
}

.dph-page .header {
	position: fixed !important;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 1100;
	animation: none !important;
}

.dph-hero {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	min-height: 100vh;
	min-height: 100dvh;
	padding: clamp(10rem, 12vh, 14rem) 0 clamp(4rem, 6vh, 5.5rem);
	overflow: hidden;
	background: #1a1a1a;
	box-sizing: border-box;
}

.dph-hero__media {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	min-height: 100%;
	min-height: 100vh;
	min-height: 100dvh;
}

.dph-hero__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.62) 0%, rgba(0, 0, 0, 0.35) 45%, rgba(0, 0, 0, 0.15) 100%);
	pointer-events: none;
	z-index: 1;
}

.dph-hero__poster {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 2;
	transition: opacity 0.65s ease;
}

.dph-hero__poster.is-hidden {
	opacity: 0;
	pointer-events: none;
}

.dph-hero__video,
.dph-hero__iframe-wrap {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	min-height: 100%;
	min-height: 100vh;
	min-height: 100dvh;
}

.dph-hero__video {
	object-fit: cover;
	z-index: 0;
}

.dph-hero__iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100vw;
	height: 56.25vw;
	min-height: 100%;
	min-height: 100vh;
	min-height: 100dvh;
	min-width: 177.77vh;
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

.dph-hero__inner {
	position: relative;
	z-index: 3;
	width: 100%;
	max-width: var(--dph-max);
	margin: 0 auto;
	padding: 0 var(--dph-pad);
	box-sizing: border-box;
}

.dph-hero__copy {
	max-width: min(99rem, 100%);
	color: #fff;
	text-shadow: 0 0.4rem 1rem rgba(0, 0, 0, 0.45);
}

.dph-hero__eyebrow {
	margin: 0 0 1rem;
	font-family: var(--delco-font-title);
	font-size: clamp(1.6rem, 1.6vw, 2.39rem);
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.24rem;
	text-transform: uppercase;
	color: #fff;
}

.dph-hero__title {
	margin: 0;
	font-family: var(--delco-font-display);
	font-size: clamp(4.4rem, 4.8vw, 6.24rem);
	font-weight: 500;
	line-height: 1.05;
	color: #fff;
	text-transform: none;
}

.dph-hero__lede {
	margin: 3rem 0 0;
	max-width: 67.1rem;
	font-family: var(--delco-font-body);
	font-size: clamp(1.6rem, 1.25vw, 2.02rem);
	line-height: 1.45;
	color: #fff;
}

.dph-hero__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: min(39rem, 100%);
	min-height: 5.5rem;
	margin-top: 3rem;
	padding: 1.5rem 2.4rem;
	border: 1px solid #fff;
	border-radius: 1rem;
	background: transparent;
	color: #fff;
	font-family: var(--delco-font-title);
	font-size: clamp(1.2rem, 1vw, 1.58rem);
	font-weight: 700;
	letter-spacing: 0.16rem;
	text-transform: uppercase;
	text-decoration: none;
	transition: background 0.2s ease, color 0.2s ease;
}

.dph-hero__btn:hover {
	background: #fff;
	color: var(--dph-text);
}

.dph-page h1.dph-hero__title {
	color: #fff;
}

@media (max-width: 720px) {
	.dph-hero__copy {
		max-width: 100%;
	}

	.dph-hero__btn {
		width: 100%;
	}
}
