/**
 * Homepage presentation module.
 *
 * Gutenberg and Core remain authoritative for every word, link, record and
 * media assignment. This final route-scoped layer owns only Homepage rhythm,
 * composition and motion.
 */

body.ppps-module-home {
	--pp-home-line: rgba(7, 8, 9, .16);
	--pp-home-line-inverse: rgba(255, 255, 255, .18);
	--pp-home-space: clamp(5rem, 8vw, 9rem);
	--pp-home-stage-ease: cubic-bezier(.22, 1, .36, 1);
}

body.ppps-module-home .page-studio-content {
	overflow: clip;
}

/* -------------------------------------------------------------------------- */
/* Registered opening: one dark scene becomes a measured technical drawing.   */
/* -------------------------------------------------------------------------- */

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set] {
	--pp-home-hero-rail: clamp(14rem, 20vw, 21rem);
	background: var(--ppps-ink);
	color: var(--ppps-white);
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__frame {
	isolation: isolate;
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__registered-media {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	transform-origin: 50% 50%;
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__frame::before,
body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__frame::after {
	position: absolute;
	content: "";
	pointer-events: none;
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__frame::before {
	z-index: 24;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(7, 8, 9, .86), rgba(7, 8, 9, .36) 54%, transparent 78%),
		linear-gradient(180deg, transparent 58%, rgba(7, 8, 9, .72));
	opacity: clamp(.18, calc(.82 - (var(--pp-h01-detail, 0) * .54)), .82);
	transition: opacity 520ms ease;
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__frame::after {
	z-index: 0;
	top: clamp(4.5rem, 9vh, 8rem);
	right: clamp(1.25rem, 4vw, 5rem);
	bottom: clamp(2rem, 7vh, 6rem);
	width: min(42vw, 46rem);
	border: 1px solid rgba(7, 8, 9, .14);
	background:
		linear-gradient(rgba(7, 8, 9, .055) 1px, transparent 1px),
		linear-gradient(90deg, rgba(7, 8, 9, .055) 1px, transparent 1px),
		var(--ppps-paper);
	background-size: 42px 42px;
	opacity: 0;
	transform: scaleX(.08);
	transform-origin: 100% 50%;
	transition:
		opacity 520ms ease,
		transform 920ms var(--pp-home-stage-ease);
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__content {
	transform-origin: 0 100%;
	transition:
		opacity 440ms ease,
		transform 900ms var(--pp-home-stage-ease);
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__content::before {
	opacity: clamp(
		.1,
		calc(.82 - (var(--pp-h01-detail, 0) * .7)),
		.82
	) !important;
	transition: opacity 620ms ease;
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__content .pp-block__header {
	max-width: min(76rem, calc(100vw - (2 * var(--ppps-gutter))));
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__content .pp-block__title {
	max-width: 10.5ch;
	font-size: clamp(4.75rem, 8.15vw, 10rem);
	line-height: .86;
	letter-spacing: -.065em;
	text-wrap: balance;
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__content .pp-block__copy {
	max-width: 48rem;
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__truth {
	color: var(--ppps-white);
	opacity: .72;
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	[data-pp-registered-layer] {
	transition:
		clip-path 920ms var(--pp-home-stage-ease),
		filter 780ms ease,
		opacity 620ms ease,
		transform 1100ms var(--pp-home-stage-ease);
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	[data-pp-registered-layer="source"] {
	opacity: clamp(.035, calc(1 - (var(--pp-h01-source-recede, 0) * 1.08)), 1);
	filter:
		brightness(calc(.34 + (var(--pp-h01-detail, 0) * .66)))
		saturate(calc(.4 + (var(--pp-h01-detail, 0) * .6)))
		contrast(calc(.9 + (var(--pp-h01-detail, 0) * .1)));
	transform: scale(calc(1.045 - (var(--pp-h01-source-recede, 0) * .065)));
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	[data-pp-registered-layer="dark"] {
	opacity: calc(var(--pp-h01-dark, .64) * 1.08);
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	[data-pp-registered-layer="illumination"] {
	clip-path: none;
	opacity: min(.24, calc(var(--pp-h01-illumination, 0) * .3));
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	[data-pp-registered-layer="detail"] {
	opacity: min(.18, calc(var(--pp-h01-detail, 0) * .18));
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	[data-pp-registered-layer="datum"] {
	opacity: min(1, calc(var(--pp-h01-annotation, 0) * .96));
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	[data-pp-registered-layer="technical"] {
	opacity: min(1, calc(var(--pp-h01-line, 0) * 1.16));
	filter: drop-shadow(0 0 12px rgba(189, 207, 211, .18));
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__phases {
	position: absolute;
	right: 0;
	bottom: clamp(3rem, 7vh, 6rem);
	display: grid;
	width: var(--pp-home-hero-rail);
	max-width: 36vw;
	margin: 0;
	padding-top: 1rem;
	border-top: 1px solid rgba(255, 255, 255, .44);
	gap: 0;
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__phases > li {
	grid-area: 1 / 1;
	margin: 0;
	opacity: 0;
	visibility: hidden;
	transform: translate3d(0, .75rem, 0);
	transition:
		opacity 260ms ease,
		transform 520ms var(--pp-home-stage-ease),
		visibility 0s linear 520ms;
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__phases > li.is-active {
	opacity: 1;
	visibility: visible;
	transform: none;
	transition-delay: 0s;
}

body.ppps-module-home
	[data-pp-scene="hero"][data-pp-registered-asset-set]
	.pp-v19-hero__scroll-prompt {
	right: auto;
	bottom: clamp(3rem, 7vh, 6rem);
	left: 0;
	width: auto;
	margin: 0;
}

@media (min-width: 901px) and (min-height: 640px) and (prefers-reduced-motion: no-preference) {
	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene
		.pp-v19-hero__sticky {
		height: 210svh !important;
		min-height: 88rem !important;
	}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene
		.pp-v19-hero__frame {
		position: sticky !important;
		top: 0 !important;
		height: 100svh !important;
		min-height: 0 !important;
		overflow: clip;
		background: var(--ppps-ink);
	}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene
		.pp-v19-hero__registered-media {
		position: absolute !important;
		z-index: 2;
		inset: 0 !important;
		top: 0 !important;
		width: 100% !important;
		max-width: none !important;
		height: 100% !important;
		min-height: 100% !important;
		margin: 0 !important;
		aspect-ratio: auto !important;
		background: var(--ppps-ink);
		transform: none;
		transition:
			border-color 620ms ease,
			box-shadow 760ms ease,
			transform 1100ms var(--pp-home-stage-ease);
	}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene
		.pp-v19-hero__content {
		position: absolute !important;
		z-index: 30;
		inset: 0 !important;
		top: 0 !important;
		display: grid;
		width: calc(100% - (2 * var(--ppps-gutter)));
		max-width: var(--ppps-wide);
		height: 100% !important;
		margin: 0 auto !important;
		align-content: end;
		padding:
			calc(var(--ppps-header-height) + var(--ppps-admin-offset) + clamp(3rem, 7vh, 6rem))
			0
			clamp(3rem, 7vh, 6rem);
			background: transparent;
		}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene
		.pp-v19-hero__phases {
		position: absolute !important;
		top: auto !important;
		right: 0 !important;
		bottom: clamp(3rem, 7vh, 6rem) !important;
		left: auto !important;
	}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene
		.pp-v19-hero__scroll-prompt {
		position: absolute !important;
		top: auto !important;
		right: auto !important;
		bottom: 1.25rem !important;
		left: 0 !important;
	}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene:is(
			[data-pp-scene-phase="04"],
			[data-pp-scene-phase="05"]
		)
		.pp-v19-hero__registered-media {
		border: 1px solid rgba(255, 255, 255, .18);
		box-shadow: 0 2.5rem 7.5rem rgba(0, 0, 0, .38);
		transform: translate3d(9%, -1%, 0) scale(.74) !important;
	}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene:is(
			[data-pp-scene-phase="04"],
			[data-pp-scene-phase="05"]
		)
		.pp-v19-hero__content:not(:focus-within) {
		opacity: .82 !important;
		transform: translate3d(0, -11vh, 0) scale(.78) !important;
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-scene="hero"][data-pp-registered-asset-set]:is(
			[data-pp-scene-phase="06"],
			[data-pp-scene-phase="07"]
		)
		.pp-v19-hero__frame::before {
		opacity: .08;
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-scene="hero"][data-pp-registered-asset-set]:is(
			[data-pp-scene-phase="06"],
			[data-pp-scene-phase="07"]
		)
		.pp-v19-hero__frame::after {
		opacity: 1;
		transform: scaleX(1);
	}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene[data-pp-scene-phase="06"]
		.pp-v19-hero__registered-media {
		border: 1px solid rgba(255, 255, 255, .22);
		box-shadow: 0 2.5rem 7.5rem rgba(0, 0, 0, .42);
		transform: translate3d(14%, -2%, 0) scale(.64) !important;
	}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene[data-pp-scene-phase="07"]
		.pp-v19-hero__registered-media {
		border: 1px solid rgba(7, 8, 9, .16);
		box-shadow: 0 2rem 6rem rgba(0, 0, 0, .3);
		transform: translate3d(19%, -1%, 0) scale(.54) !important;
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-scene="hero"][data-pp-registered-asset-set]:is(
			[data-pp-scene-phase="06"],
			[data-pp-scene-phase="07"]
		)
		.pp-v19-hero__content:not(:focus-within) {
		opacity: .22 !important;
		pointer-events: none;
		transform: translate3d(0, -18vh, 0) scale(.6) !important;
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-scene="hero"][data-pp-registered-asset-set][data-pp-scene-phase="07"]
		.pp-v19-hero__content:not(:focus-within) {
		opacity: 0 !important;
		visibility: hidden !important;
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-scene="hero"][data-pp-registered-asset-set]:is(
			[data-pp-scene-phase="06"],
			[data-pp-scene-phase="07"]
		)
		.pp-v19-hero__content:not(:focus-within) :where(.pp-block__actions, a, button) {
		visibility: hidden;
		pointer-events: none;
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-scene="hero"][data-pp-registered-asset-set][data-pp-scene-phase="07"]
		[data-pp-registered-layer="source"] {
		opacity: .08;
		filter: grayscale(1) brightness(.7) contrast(1.12);
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-scene="hero"][data-pp-registered-asset-set][data-pp-scene-phase="07"]
		[data-pp-registered-layer="dark"],
	body.ppps-module-home.ppps-capability-full
		[data-pp-scene="hero"][data-pp-registered-asset-set][data-pp-scene-phase="07"]
		[data-pp-registered-layer="illumination"],
	body.ppps-module-home.ppps-capability-full
		[data-pp-scene="hero"][data-pp-registered-asset-set][data-pp-scene-phase="07"]
		[data-pp-registered-layer="detail"] {
		opacity: .06;
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-scene="hero"][data-pp-registered-asset-set][data-pp-scene-phase="07"]
		[data-pp-registered-layer="datum"] {
		opacity: .72;
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-scene="hero"][data-pp-registered-asset-set][data-pp-scene-phase="07"]
		[data-pp-registered-layer="technical"] {
		opacity: 1;
		filter: drop-shadow(0 0 18px rgba(189, 207, 211, .26));
	}
}

/*
 * Preserve the governed 1672 × 941 Hero asset at high pixel density. The ink
 * frame remains full-viewport, while the registered visual becomes a centred
 * 960 × 540 maximum engineering stage instead of being cosmetically upscaled.
 */
@media (min-width: 901px) and (min-height: 640px) and (min-resolution: 1.5dppx) and (prefers-reduced-motion: no-preference) {
	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene
		.pp-v19-hero__registered-media {
		inset: auto !important;
		top: 50% !important;
		left: 50% !important;
		width: min(
			960px,
			calc(100vw - var(--ppps-gutter) - var(--ppps-gutter))
		) !important;
		max-width: 960px !important;
		height: auto !important;
		min-height: 0 !important;
		margin: 0 !important;
		aspect-ratio: 1672 / 941 !important;
		transform: translate3d(-50%, -50%, 0) !important;
	}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene:is(
			[data-pp-scene-phase="04"],
			[data-pp-scene-phase="05"]
		)
		.pp-v19-hero__registered-media {
		transform:
			translate3d(calc(-50% + 9vw), calc(-50% - 1vh), 0)
			scale(.74) !important;
	}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene[data-pp-scene-phase="06"]
		.pp-v19-hero__registered-media {
		transform:
			translate3d(calc(-50% + 14vw), calc(-50% - 2vh), 0)
			scale(.64) !important;
	}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].is-motion-mounted.is-signature-scene[data-pp-scene-phase="07"]
		.pp-v19-hero__registered-media {
		transform:
			translate3d(calc(-50% + 19vw), calc(-50% - 1vh), 0)
			scale(.54) !important;
	}
}

/* -------------------------------------------------------------------------- */
/* Existing H02 media becomes three spatial, normal-flow editorial chapters.  */
/* -------------------------------------------------------------------------- */

body.ppps-module-home [data-pp-editorial-prelude].pp-v19-prelude {
	display: block;
	padding:
		clamp(2rem, 4vw, 4rem)
		var(--ppps-gutter)
		var(--pp-home-space);
	background: var(--ppps-paper);
}

body.ppps-module-home
	[data-pp-editorial-prelude]
	.pp-v19-prelude__chapter {
	display: grid;
	min-height: clamp(42rem, 78svh, 58rem);
	padding-block: clamp(4rem, 8vw, 8rem);
	grid-template-columns: repeat(12, minmax(0, 1fr));
	align-items: center;
	gap: clamp(1.5rem, 3vw, 3rem);
	border-top: 1px solid var(--pp-home-line);
}

body.ppps-module-home
	[data-pp-editorial-prelude]
	.pp-v19-prelude__chapter:last-child {
	border-bottom: 1px solid var(--pp-home-line);
}

body.ppps-module-home
	[data-pp-editorial-prelude]
	.pp-v19-prelude__media {
	position: relative;
	width: 100%;
	height: auto;
	min-height: 0;
	margin: 0;
	grid-column: 1 / span 7;
	aspect-ratio: 16 / 10;
	overflow: clip;
	background: var(--ppps-graphite);
	clip-path: inset(0);
	transform: translate3d(0, 0, 0) scale(1);
	transform-origin: 50% 50%;
	transition:
		clip-path 1000ms var(--pp-home-stage-ease),
		opacity 520ms ease,
		transform 1200ms var(--pp-home-stage-ease);
}

body.ppps-module-home
	[data-pp-editorial-prelude]
	.pp-v19-prelude__chapter:nth-child(even)
	.pp-v19-prelude__media {
	grid-column: 6 / span 7;
}

body.ppps-module-home
	[data-pp-editorial-prelude]
	.pp-v19-prelude__media
	:where(
		[data-pp-prelude-video],
		[data-pp-prelude-poster-fallback],
		img,
		video,
		picture
	) {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1.015);
	transition: transform 1400ms var(--pp-home-stage-ease);
}

body.ppps-module-home
	[data-pp-editorial-prelude]
	.pp-v19-prelude__content {
	grid-column: 9 / span 4;
	align-self: center;
	opacity: 1;
	transform: none;
	transition:
		opacity 520ms ease,
		transform 900ms var(--pp-home-stage-ease);
}

body.ppps-module-home
	[data-pp-editorial-prelude]
	.pp-v19-prelude__chapter:nth-child(even)
	.pp-v19-prelude__content {
	grid-column: 1 / span 4;
	grid-row: 1;
}

body.ppps-module-home
	[data-pp-editorial-prelude]
	.pp-v19-prelude__content .pp-block__title {
	max-width: 10ch;
	font-size: clamp(3rem, 4.8vw, 6rem);
	line-height: .9;
	letter-spacing: -.06em;
}

body.ppps-module-home
	[data-pp-editorial-prelude]
	.pp-v19-prelude__content .pp-block__copy {
	max-width: 31rem;
	margin-top: clamp(1.25rem, 2vw, 2rem);
	font-size: clamp(1rem, .35vw + .94rem, 1.2rem);
}

@media (min-width: 901px) and (prefers-reduced-motion: no-preference) {
	body.ppps-module-home.ppps-capability-full
		[data-pp-editorial-prelude].is-home-chapters-ready
		[data-pp-home-chapter-state="future"]
		.pp-v19-prelude__media {
		clip-path: inset(8% 0 8% 18%);
		opacity: .46;
		transform: translate3d(5vw, 0, 0) scale(.92);
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-editorial-prelude].is-home-chapters-ready
		.pp-v19-prelude__chapter:nth-child(even)[data-pp-home-chapter-state="future"]
		.pp-v19-prelude__media {
		clip-path: inset(8% 18% 8% 0);
		transform: translate3d(-5vw, 0, 0) scale(.92);
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-editorial-prelude].is-home-chapters-ready
		[data-pp-home-chapter-state="past"]
		.pp-v19-prelude__media {
		clip-path: inset(4%);
		opacity: .58;
		transform: translate3d(-3vw, 0, 0) scale(.95);
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-editorial-prelude].is-home-chapters-ready
		.pp-v19-prelude__chapter:nth-child(even)[data-pp-home-chapter-state="past"]
		.pp-v19-prelude__media {
		transform: translate3d(3vw, 0, 0) scale(.95);
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-editorial-prelude].is-home-chapters-ready
		[data-pp-home-chapter-state="future"]
		.pp-v19-prelude__content {
		opacity: .15;
		transform: translate3d(3.5rem, 0, 0);
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-editorial-prelude].is-home-chapters-ready
		.pp-v19-prelude__chapter:nth-child(even)[data-pp-home-chapter-state="future"]
		.pp-v19-prelude__content {
		transform: translate3d(-3.5rem, 0, 0);
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-editorial-prelude].is-home-chapters-ready
		[data-pp-home-chapter-state="past"]
		.pp-v19-prelude__content {
		opacity: .52;
		transform: translate3d(-2rem, 0, 0);
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-editorial-prelude].is-home-chapters-ready
		.pp-v19-prelude__chapter:nth-child(even)[data-pp-home-chapter-state="past"]
		.pp-v19-prelude__content {
		transform: translate3d(2rem, 0, 0);
	}

	body.ppps-module-home.ppps-capability-full
		[data-pp-editorial-prelude].is-home-chapters-ready
		[data-pp-home-chapter-state="current"]
		.pp-v19-prelude__media
		:where(img, video) {
		transform: scale(1);
	}
}

/* -------------------------------------------------------------------------- */
/* Proof bridge: final values remain in HTML; spacing has one clear owner.     */
/* -------------------------------------------------------------------------- */

body.ppps-module-home
	.page-studio-content >
	.pp-block--section:has(.pp-block--metric-strip) {
	padding:
		clamp(2rem, 4vw, 4rem)
		var(--ppps-gutter) !important;
}

body.ppps-module-home
	.pp-block--section:has(.pp-block--metric-strip)
	.pp-section__inner {
	max-width: var(--ppps-wide);
}

body.ppps-module-home .pp-block--metric-strip {
	padding: 0 !important;
}

body.ppps-module-home .pp-block--metric-strip .pp-metrics {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border-block: 1px solid var(--pp-home-line);
}

body.ppps-module-home .pp-block--metric-strip .pp-metric {
	display: grid;
	min-width: 0;
	min-height: 12.5rem;
	align-content: space-between;
	padding: clamp(1.25rem, 1.6vw, 1.5rem);
	border: 0;
	border-right: 1px solid var(--pp-home-line);
	container-type: inline-size;
}

body.ppps-module-home .pp-block--metric-strip .pp-metric:last-child {
	border-right: 0;
}

body.ppps-module-home .pp-block--metric-strip .pp-metric__value {
	max-width: 100%;
	min-width: 0;
	font-size: clamp(2.75rem, 3.5vw, 4.4rem);
	font-size: clamp(2rem, 21cqi, 5.25rem);
	font-variant-numeric: tabular-nums;
	line-height: .86;
	letter-spacing: -.065em;
	white-space: nowrap;
}

body.ppps-module-home .pp-block--metric-strip .pp-metric__label {
	margin-top: 2.5rem;
	font-weight: 700;
}

body.ppps-module-home .pp-block--metric-strip .pp-metric__context {
	margin-top: .5rem;
	opacity: .56;
}

/* -------------------------------------------------------------------------- */
/* Five-stage production sequence: one image and one statement at a time.      */
/* -------------------------------------------------------------------------- */

body.ppps-module-home
	.pp-block--section:has(.pp-block--process-chain) {
	--pp-composition-space-top: clamp(5rem, 8vw, 8rem);
	--pp-composition-space-bottom: clamp(5rem, 8vw, 8rem);
}

body.ppps-module-home
	.pp-block--section:has(.pp-block--process-chain)
	.pp-process-story__header {
	margin-bottom: clamp(3.5rem, 7vw, 7rem);
}

body.ppps-module-home
	.pp-block--section:has(.pp-block--process-chain)
	.pp-process-story__header .pp-block__title {
	max-width: 11ch;
	font-size: clamp(4.25rem, 7.3vw, 8.8rem);
}

@media (min-width: 901px) and (min-height: 640px) and (prefers-reduced-motion: no-preference) {
	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		.pp-block--process-chain[data-pp-process-story].is-motion-mounted
		.pp-process-story__runway {
		--pp-indexed-runway-height: 620svh;
		height: var(--pp-indexed-runway-height) !important;
	}

	body.ppps-module-home.ppps-capability-full:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		.pp-block--process-chain[data-pp-process-story].is-motion-mounted
		.pp-process-story__layout {
		grid-template-columns: minmax(0, 1.08fr) minmax(23rem, .92fr);
		gap: clamp(3rem, 7vw, 8rem);
	}

	body.ppps-module-home.ppps-capability-full
		.pp-block--process-chain[data-pp-process-story].is-motion-mounted
		.pp-process__media-stack {
		border: 1px solid var(--pp-home-line-inverse);
		background:
			linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px),
			linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px),
			#111516;
		background-size: 3rem 3rem;
	}

	body.ppps-module-home.ppps-capability-full
		.pp-block--process-chain[data-pp-process-story].is-motion-mounted
		.pp-process__media {
		z-index: 1;
		clip-path: inset(100% 0 0);
		opacity: 0 !important;
		visibility: hidden !important;
		transform: scale(1.035);
		transition:
			clip-path 0s linear,
			opacity 120ms linear,
			transform 0s linear,
			visibility 0s linear !important;
	}

	body.ppps-module-home.ppps-capability-full
		.pp-block--process-chain[data-pp-process-story].is-motion-mounted
		.pp-process__media.is-active {
		z-index: 2;
		clip-path: inset(0);
		opacity: 1 !important;
		visibility: visible !important;
		transform: none;
		transition:
			clip-path 760ms var(--pp-home-stage-ease),
			opacity 180ms ease,
			transform 980ms var(--pp-home-stage-ease),
			visibility 0s linear !important;
	}

	body.ppps-module-home.ppps-capability-full
		.pp-block--process-chain[data-pp-process-story].is-motion-mounted
		.pp-process__stage {
		z-index: 1;
		opacity: 0 !important;
		visibility: hidden !important;
		transform: translate3d(2.5rem, 0, 0) !important;
		transition:
			opacity 100ms linear,
			transform 0s linear,
			visibility 0s linear !important;
	}

	body.ppps-module-home.ppps-capability-full
		.pp-block--process-chain[data-pp-process-story].is-motion-mounted
		.pp-process__stage.is-active {
		z-index: 2;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		transition:
			opacity 260ms ease,
			transform 720ms var(--pp-home-stage-ease),
			visibility 0s linear !important;
	}

	body.ppps-module-home.ppps-capability-full
		.pp-block--process-chain[data-pp-process-story].is-motion-mounted
		.pp-process__stage::before {
		top: 50%;
		left: -1.75rem;
		width: .35rem;
		height: 4.5rem;
		border: 0;
		border-radius: 99px;
		background: var(--ppps-aluminium);
		opacity: .72;
		transform: translateY(-50%);
	}

	body.ppps-module-home.ppps-capability-full
		.pp-block--process-chain[data-pp-process-story].is-motion-mounted
		.pp-process__counter {
		padding-top: 1.25rem;
		border-top: 1px solid var(--pp-home-line-inverse);
	}

	body.ppps-module-home.ppps-capability-full
		.pp-block--process-chain[data-pp-process-story][data-pp-process-state="final-hold"]
		.pp-process__media.is-active {
		box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08);
	}
}

/* -------------------------------------------------------------------------- */
/* Capability routes: a spatial 2 x 2 mosaic, never a wall of boxed cards.     */
/* -------------------------------------------------------------------------- */

body.ppps-module-home
	.pp-block--section:has(.pp-block--technical-card-grid) {
	padding-block: var(--pp-home-space) !important;
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-block__header {
	margin-bottom: clamp(3rem, 6vw, 6rem);
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-block__title {
	max-width: 10ch;
	font-size: clamp(4rem, 7.2vw, 8.6rem);
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-card-grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: clamp(.9rem, 1.5vw, 1.5rem);
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card {
	position: relative;
	display: grid;
	min-width: 0;
	min-height: clamp(30rem, 42vw, 39rem);
	padding: 0;
	grid-column: span 6;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows:
		clamp(18rem, 26vw, 27rem)
		auto
		auto
		minmax(1.5rem, 1fr)
		auto;
	align-content: stretch;
	border: 1px solid var(--pp-home-line);
	border-radius: 0;
	overflow: clip;
	background: rgba(255, 255, 255, .62);
	box-shadow: none;
	transform: none;
	transition:
		background-color 360ms ease,
		color 360ms ease,
		transform 720ms var(--pp-home-stage-ease);
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card:nth-child(1),
body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card:nth-child(4) {
	grid-column: span 7;
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card:nth-child(2),
body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card:nth-child(3) {
	grid-column: span 5;
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card__media-stack {
	position: relative;
	min-height: 0;
	overflow: clip;
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card__media {
	width: 100%;
	height: 100%;
	margin: 0;
	overflow: clip;
	background: var(--ppps-paper);
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card__media :where(img, picture) {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1.015);
	transition: transform 1000ms var(--pp-home-stage-ease);
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card > :where(.pp-block__eyebrow, h3, p, .pp-text-link) {
	min-width: 0;
	margin-right: clamp(1.5rem, 2.8vw, 3rem);
	margin-left: clamp(1.5rem, 2.8vw, 3rem);
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card > .pp-block__eyebrow {
	margin-top: clamp(1.5rem, 2.5vw, 2.5rem);
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card > h3 {
	max-width: none;
	margin-top: .75rem;
	font-size: clamp(2rem, 2.9vw, 3.7rem);
	line-height: .94;
	overflow-wrap: anywhere;
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card > p:not(.pp-block__eyebrow) {
	margin-top: 1.25rem;
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card > .pp-text-link {
	align-self: end;
	margin-top: 2rem;
	margin-bottom: clamp(1.5rem, 2.5vw, 2.5rem);
}

body.ppps-module-home
	.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
	.pp-technical-card__number {
	z-index: 4;
	top: 1.25rem;
	right: 1.25rem;
	padding: .45rem .6rem;
	background: rgba(7, 8, 9, .78);
	color: var(--ppps-white);
}

@media (hover: hover) {
	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		.pp-technical-card:hover,
	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		.pp-technical-card:focus-within {
		background: var(--ppps-ink);
		color: var(--ppps-white);
		box-shadow: none;
		transform: translateY(-.7rem);
	}

	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		.pp-technical-card:hover
		.pp-technical-card__media :where(img, picture),
	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		.pp-technical-card:focus-within
		.pp-technical-card__media :where(img, picture) {
		transform: scale(1.055);
	}
}

/* -------------------------------------------------------------------------- */
/* Factory network: compact evidence grid with a clear interactive response.  */
/* -------------------------------------------------------------------------- */

body.ppps-module-home
	.pp-block--section:has(.pp-block--plant-network) {
	padding-block: var(--pp-home-space) !important;
}

body.ppps-module-home .pp-block--plant-network .pp-block__header {
	margin-bottom: clamp(3rem, 6vw, 6rem);
}

body.ppps-module-home .pp-block--plant-network .pp-block__title {
	max-width: 8ch;
	font-size: clamp(4rem, 7vw, 8.25rem);
}

body.ppps-module-home .pp-block--plant-network .pp-plant-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	border-top: 1px solid var(--pp-home-line);
}

body.ppps-module-home .pp-block--plant-network .pp-plant-card {
	min-height: clamp(14rem, 19vw, 20rem);
	padding: clamp(1.5rem, 2.5vw, 2.75rem);
	border: 0;
	border-right: 1px solid var(--pp-home-line);
	border-bottom: 1px solid var(--pp-home-line);
	background: transparent;
	color: var(--ppps-ink);
	transform: none;
	transition:
		background-color 360ms ease,
		color 360ms ease,
		padding 600ms var(--pp-home-stage-ease);
}

body.ppps-module-home
	.pp-block--plant-network .pp-plant-card:nth-child(3n) {
	border-right: 0;
}

body.ppps-module-home .pp-block--plant-network .pp-plant-card h3 {
	margin-top: .8rem;
	font-size: clamp(1.5rem, 2vw, 2.5rem);
}

body.ppps-module-home .pp-block--plant-network .pp-plant-card address,
body.ppps-module-home .pp-block--plant-network .pp-plant-card > p:not(.pp-block__eyebrow) {
	max-width: 37rem;
	margin-top: 1.15rem;
	font-size: clamp(.92rem, .25vw + .86rem, 1.05rem);
	line-height: 1.52;
}

@media (hover: hover) {
	body.ppps-module-home .pp-block--plant-network .pp-plant-card:hover,
	body.ppps-module-home .pp-block--plant-network .pp-plant-card:focus-within {
		padding-left: clamp(2rem, 3.4vw, 3.75rem);
		background: var(--ppps-ink);
		color: var(--ppps-white);
		transform: none;
	}
}

/* -------------------------------------------------------------------------- */
/* Quality evidence: decisive split followed by three calm alternating lenses. */
/* -------------------------------------------------------------------------- */

body.ppps-module-home
	.pp-block--section:has(.pp-block--equipment-gallery) {
	padding-block: var(--pp-home-space) !important;
}

body.ppps-module-home
	.pp-block--section:has(.pp-block--equipment-gallery)
	.pp-section__inner >
	.pp-block + .pp-block {
	margin-top: clamp(5rem, 9vw, 10rem);
}

body.ppps-module-home
	.pp-block--section:has(.pp-block--equipment-gallery)
	.pp-block--editorial-split {
	padding: 0 !important;
}

body.ppps-module-home
	.pp-block--section:has(.pp-block--equipment-gallery)
	.pp-split__inner {
	min-height: clamp(36rem, 66svh, 52rem);
	grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
	gap: 0;
	border: 1px solid var(--pp-home-line);
}

body.ppps-module-home
	.pp-block--section:has(.pp-block--equipment-gallery)
	.pp-split__content {
	padding: clamp(2rem, 5vw, 5.5rem);
}

body.ppps-module-home
	.pp-block--section:has(.pp-block--equipment-gallery)
	.pp-split__content .pp-block__title {
	max-width: 9ch;
	font-size: clamp(3.4rem, 5.6vw, 7rem);
}

body.ppps-module-home
	.pp-block--section:has(.pp-block--equipment-gallery)
	.pp-split__media {
	height: 100%;
	min-height: 100%;
	margin: 0;
	overflow: clip;
}

body.ppps-module-home
	.pp-block--section:has(.pp-block--equipment-gallery)
	.pp-split__media :where(img, picture) {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.ppps-module-home
	.pp-block--equipment-gallery .pp-block__header {
	margin-bottom: clamp(3rem, 6vw, 6rem);
}

body.ppps-module-home
	.pp-block--equipment-gallery .pp-block__title {
	max-width: 11ch;
	font-size: clamp(4rem, 7vw, 8.25rem);
}

body.ppps-module-home
	.pp-equipment-presentation--evidence-lens .pp-equipment-grid {
	gap: 0;
	border-top: 1px solid var(--pp-home-line);
}

body.ppps-module-home
	.pp-equipment-presentation--evidence-lens .pp-equipment {
	min-height: clamp(32rem, 52vw, 45rem);
	padding-block: clamp(3rem, 6vw, 6rem);
	border-bottom: 1px solid var(--pp-home-line);
	column-gap: clamp(2rem, 6vw, 7rem);
}

body.ppps-module-home
	.pp-equipment-presentation--evidence-lens .pp-equipment figure {
	min-height: clamp(27rem, 43vw, 40rem);
}

body.ppps-module-home
	.pp-equipment-presentation--evidence-lens .pp-equipment h3 {
	margin-top: clamp(2rem, 5vw, 5rem);
	font-size: clamp(2.6rem, 4.2vw, 5.25rem);
	line-height: .92;
}

body.ppps-module-home
	.pp-equipment-presentation--evidence-lens .pp-equipment dl {
	border-top: 1px solid var(--pp-home-line);
}

/* -------------------------------------------------------------------------- */
/* Dynamic component and award records retain every Core interaction.          */
/* -------------------------------------------------------------------------- */

body.ppps-module-home
	.pp-block--section:has(.pp-block--component-portfolio),
body.ppps-module-home
	.pp-block--section:has(.pp-block--awards-rail) {
	padding-block: var(--pp-home-space) !important;
}

body.ppps-module-home .pp-block--component-portfolio .pp-block__title,
body.ppps-module-home .pp-block--awards-rail .pp-block__title {
	max-width: 11ch;
	font-size: clamp(4rem, 7vw, 8.25rem);
}

body.ppps-module-home .pp-block--component-portfolio {
	color: var(--ppps-white);
}

body.ppps-module-home .pp-block--component-portfolio .pp-filters {
	margin-block: clamp(3rem, 5vw, 5rem) 2rem;
	padding: 1rem;
	border: 1px solid var(--pp-home-line-inverse);
	background: rgba(255, 255, 255, .025);
}

body.ppps-module-home .pp-block--component-portfolio .pp-component-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	background: var(--pp-home-line-inverse);
}

body.ppps-module-home .pp-block--component-portfolio .pp-record-card {
	min-height: 34rem;
	padding: 0;
	border: 0;
	background: var(--ppps-graphite);
	color: var(--ppps-white);
	overflow: clip;
	transform: none;
}

body.ppps-module-home
	.pp-block--component-portfolio .pp-record-card figure {
	width: 100%;
	height: auto;
	margin: 0;
	aspect-ratio: 4 / 3;
	overflow: clip;
	background: var(--ppps-paper);
}

body.ppps-module-home
	.pp-block--component-portfolio .pp-record-card figure :where(img, picture) {
	width: 100%;
	height: 100%;
	object-fit: contain;
	transform: scale(1);
	transition: transform 900ms var(--pp-home-stage-ease);
}

body.ppps-module-home
	.pp-block--component-portfolio .pp-record-card__body {
	padding: clamp(1.5rem, 2.5vw, 2.5rem);
	transition: transform 620ms var(--pp-home-stage-ease);
}

@media (hover: hover) {
	body.ppps-module-home
		.pp-block--component-portfolio .pp-record-card:hover figure :where(img, picture),
	body.ppps-module-home
		.pp-block--component-portfolio .pp-record-card:focus-within figure :where(img, picture) {
		transform: scale(1.04);
	}

	body.ppps-module-home
		.pp-block--component-portfolio .pp-record-card:hover .pp-record-card__body,
	body.ppps-module-home
		.pp-block--component-portfolio .pp-record-card:focus-within .pp-record-card__body {
		transform: translate3d(.75rem, 0, 0);
	}
}

body.ppps-module-home .pp-block--awards-rail .pp-block__header {
	margin-bottom: clamp(3rem, 6vw, 6rem);
}

body.ppps-module-home .pp-block--awards-rail .pp-awards-rail {
	gap: clamp(1rem, 1.5vw, 1.5rem);
	padding-bottom: 1.25rem;
	border: 0;
	scroll-padding-inline: var(--ppps-gutter);
	scroll-snap-type: x proximity;
}

body.ppps-module-home .pp-block--awards-rail .pp-award {
	min-height: clamp(34rem, 48vw, 44rem);
	border: 1px solid var(--pp-home-line);
	border-radius: 0;
	background: var(--ppps-white);
	scroll-snap-align: start;
}

body.ppps-module-home .pp-block--awards-rail .pp-award figure {
	min-height: 15rem;
	background: var(--ppps-paper);
}

body.ppps-module-home .pp-block--awards-rail .pp-award__body {
	padding: clamp(1.5rem, 2vw, 2.25rem);
}

body.ppps-module-home
	.pp-block--awards-rail .pp-expandable-records__controls {
	margin-top: 1.5rem;
}

/* -------------------------------------------------------------------------- */
/* Closing panel.                                                              */
/* -------------------------------------------------------------------------- */

body.ppps-module-home .pp-block--enquiry-cta {
	position: relative;
	min-height: min(58rem, 86svh);
	padding:
		clamp(6rem, 10vw, 11rem)
		var(--ppps-gutter) !important;
	overflow: clip;
	isolation: isolate;
}

body.ppps-module-home .pp-block--enquiry-cta::before {
	position: absolute;
	z-index: 0;
	top: 0;
	right: var(--ppps-gutter);
	width: min(36vw, 34rem);
	height: 1px;
	background: var(--ppps-aluminium);
	content: "";
	transform-origin: 100% 50%;
}

body.ppps-module-home .pp-block--enquiry-cta .pp-enquiry-cta__inner {
	position: relative;
	z-index: 1;
	min-height: 100%;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
}

body.ppps-module-home .pp-block--enquiry-cta .pp-block__title {
	max-width: 9ch;
	font-size: clamp(4.5rem, 8.3vw, 10rem);
	line-height: .86;
}

body.ppps-module-home .pp-block--enquiry-cta .pp-block__copy {
	max-width: 49rem;
}

/* -------------------------------------------------------------------------- */
/* Compact, Lite, reduced and failed states remain complete normal documents.  */
/* -------------------------------------------------------------------------- */

@media (max-width: 1180px) {
	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		.pp-technical-card:nth-child(n) {
		grid-column: span 6;
	}

	body.ppps-module-home .pp-block--component-portfolio .pp-component-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	body.ppps-module-home
		.pp-equipment-presentation--evidence-lens .pp-equipment {
		grid-template-columns: minmax(0, 1fr) minmax(18rem, .8fr);
	}
}

@media (max-width: 900px) {
	body.ppps-module-home
		[data-pp-scene="hero"][data-pp-registered-asset-set] {
		min-height: 100svh !important;
		padding: 0 !important;
		overflow: visible;
	}

	body.ppps-module-home.ppps-capability-lite:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].pp-hero--registered:not(
			.has-media-failure,
			.has-motion-failure,
			.is-motion-settled
		)
		.pp-v19-hero__sticky,
	body.ppps-module-home.ppps-capability-lite:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].pp-hero--registered:not(
			.has-media-failure,
			.has-motion-failure,
			.is-motion-settled
		)
		.pp-v19-hero__frame {
		position: relative !important;
		top: auto !important;
		height: auto !important;
		min-height: max(42rem, 100svh) !important;
		overflow: clip;
	}

	body.ppps-module-home
		[data-pp-scene="hero"][data-pp-registered-asset-set]:not(
			.has-media-failure,
			.has-motion-failure,
			.is-motion-settled
		)
		.pp-v19-hero__registered-media {
		position: absolute !important;
		z-index: 1;
		inset: 0 !important;
		width: 100% !important;
		max-width: none !important;
		height: 100% !important;
		min-height: 100% !important;
		margin: 0 !important;
		aspect-ratio: auto !important;
	}

	body.ppps-module-home:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-capability-static,
		.ppps-capability-reduced,
		.ppps-capability-off,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set]:not(
			.has-media-failure,
			.has-motion-failure,
			.is-motion-settled
		)
		[data-pp-registered-layer] {
		display: none !important;
	}

	body.ppps-module-home:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-capability-static,
		.ppps-capability-reduced,
		.ppps-capability-off,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set]:not(
			.has-media-failure,
			.has-motion-failure,
			.is-motion-settled
		)
		[data-pp-registered-layer="mobile"] {
		display: block !important;
		opacity: 1 !important;
		filter: brightness(.58) saturate(.72) !important;
		transform: none !important;
	}

	body.ppps-module-home
		[data-pp-scene="hero"][data-pp-registered-asset-set]
		[data-pp-registered-layer="mobile"] :where(img, picture) {
		object-fit: cover;
	}

	body.ppps-module-home.ppps-capability-lite:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set]:not(
			.has-media-failure,
			.has-motion-failure,
			.is-motion-settled
		)
		.pp-v19-hero__content {
		position: relative !important;
		z-index: 30;
		inset: auto !important;
		top: auto !important;
		display: grid;
		width: calc(100% - (2 * var(--ppps-gutter)));
		height: auto !important;
		min-height: max(42rem, 100svh) !important;
		margin: 0 auto !important;
		align-content: end;
		padding:
			calc(var(--ppps-header-height) + var(--ppps-admin-offset) + 3rem)
			0
			clamp(2.25rem, 6vh, 4rem) !important;
		background: transparent !important;
		color: var(--ppps-white) !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
	}

	body.ppps-module-home:is(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-capability-static,
		.ppps-capability-reduced,
		.ppps-capability-off,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].pp-hero--registered
		.pp-v19-hero__sticky,
	body.ppps-module-home:is(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-capability-static,
		.ppps-capability-reduced,
		.ppps-capability-off,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].pp-hero--registered
		.pp-v19-hero__frame {
		position: relative !important;
		top: auto !important;
		display: flex;
		height: auto !important;
		min-height: 0 !important;
		flex-direction: column;
		overflow: clip;
	}

	body.ppps-module-home:is(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-capability-static,
		.ppps-capability-reduced,
		.ppps-capability-off,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].pp-hero--registered
		.pp-v19-hero__frame::before,
	body.ppps-module-home:is(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-capability-static,
		.ppps-capability-reduced,
		.ppps-capability-off,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].pp-hero--registered
		.pp-v19-hero__frame::after {
		display: none;
	}

	body.ppps-module-home:is(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-capability-static,
		.ppps-capability-reduced,
		.ppps-capability-off,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].pp-hero--registered
		.pp-v19-hero__content {
		position: relative !important;
		z-index: 2;
		inset: auto !important;
		order: 1;
		display: grid;
		width: calc(100% - (2 * var(--ppps-gutter)));
		height: auto !important;
		min-height: 0 !important;
		margin: 0 auto !important;
		padding:
			calc(var(--ppps-header-height) + var(--ppps-admin-offset) + 3rem)
			0
			2.25rem !important;
		background: var(--ppps-ink) !important;
		color: var(--ppps-white) !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
	}

	body.ppps-module-home:is(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-capability-static,
		.ppps-capability-reduced,
		.ppps-capability-off,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].pp-hero--registered
		.pp-v19-hero__registered-media {
		position: relative !important;
		inset: auto !important;
		order: 2;
		width: calc(100% - (2 * var(--ppps-gutter))) !important;
		max-width: none !important;
		height: clamp(16rem, 68vw, 23rem) !important;
		min-height: 0 !important;
		margin: 0 auto clamp(2rem, 8vw, 4rem) !important;
		aspect-ratio: auto !important;
		transform: none !important;
	}

	body.ppps-module-home.ppps-capability-lite:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].pp-hero--registered:is(
			.has-media-failure,
			.has-motion-failure,
			.is-motion-settled
		)
		.pp-v19-hero__sticky,
	body.ppps-module-home.ppps-capability-lite:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].pp-hero--registered:is(
			.has-media-failure,
			.has-motion-failure,
			.is-motion-settled
		)
		.pp-v19-hero__frame {
		position: relative !important;
		top: auto !important;
		height: auto !important;
		min-height: max(42rem, 100svh) !important;
	}

	body.ppps-module-home.ppps-capability-lite:not(
		.ppps-runtime-disabled,
		.ppps-readiness-failed,
		.ppps-motion-off,
		.ppps-motion-reduced
	)
		[data-pp-scene="hero"][data-pp-registered-asset-set].pp-hero--registered:is(
			.has-media-failure,
			.has-motion-failure,
			.is-motion-settled
		)
		.pp-v19-hero__content {
		position: relative !important;
		inset: auto !important;
		top: auto !important;
		height: auto !important;
		min-height: max(42rem, 100svh) !important;
	}

	body.ppps-module-home
		[data-pp-scene="hero"][data-pp-registered-asset-set]
		.pp-v19-hero__content .pp-block__title {
		max-width: 11ch;
		font-size: clamp(3.25rem, 10.5vw, 5.8rem);
		line-height: .9;
	}

	body.ppps-module-home
		[data-pp-scene="hero"][data-pp-registered-asset-set]
		:is(.pp-v19-hero__phases, .pp-v19-hero__scroll-prompt) {
		display: none !important;
	}

	body.ppps-module-home
		[data-pp-editorial-prelude]
		.pp-v19-prelude__chapter,
	body.ppps-module-home
		[data-pp-editorial-prelude]
		.pp-v19-prelude__chapter:nth-child(even) {
		display: grid;
		min-height: 0;
		padding-block: clamp(3.5rem, 9vw, 6rem);
		grid-template-columns: minmax(0, 1fr);
		gap: 2rem;
	}

	body.ppps-module-home
		[data-pp-editorial-prelude]
		.pp-v19-prelude__chapter
		.pp-v19-prelude__media,
	body.ppps-module-home
		[data-pp-editorial-prelude]
		.pp-v19-prelude__chapter:nth-child(even)
		.pp-v19-prelude__media,
	body.ppps-module-home
		[data-pp-editorial-prelude]
		.pp-v19-prelude__chapter
		.pp-v19-prelude__content,
	body.ppps-module-home
		[data-pp-editorial-prelude]
		.pp-v19-prelude__chapter:nth-child(even)
		.pp-v19-prelude__content {
		grid-column: 1;
		grid-row: auto;
		opacity: 1 !important;
		transform: none !important;
	}

	body.ppps-module-home
		.pp-block--section:has(.pp-block--metric-strip) {
		padding-inline: var(--ppps-gutter) !important;
	}

	body.ppps-module-home .pp-block--metric-strip .pp-metrics {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.ppps-module-home .pp-block--metric-strip .pp-metric:nth-child(2n) {
		border-right: 0;
	}

	body.ppps-module-home .pp-block--metric-strip .pp-metric:nth-child(n + 3) {
		border-top: 1px solid var(--pp-home-line);
	}

	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		.pp-card-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		.pp-technical-card:nth-child(n) {
		grid-column: auto;
	}

	body.ppps-module-home .pp-block--plant-network .pp-plant-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.ppps-module-home
		.pp-block--plant-network .pp-plant-card:nth-child(n) {
		border-right: 1px solid var(--pp-home-line);
	}

	body.ppps-module-home
		.pp-block--plant-network .pp-plant-card:nth-child(2n) {
		border-right: 0;
	}

	body.ppps-module-home
		.pp-block--section:has(.pp-block--equipment-gallery)
		.pp-split__inner {
		display: grid;
		min-height: 0;
		grid-template-columns: minmax(0, 1fr);
	}

	body.ppps-module-home
		.pp-block--section:has(.pp-block--equipment-gallery)
		.pp-split__media {
		min-height: 26rem;
	}

	body.ppps-module-home
		.pp-equipment-presentation--evidence-lens .pp-equipment,
	body.ppps-module-home
		.pp-equipment-presentation--evidence-lens .pp-equipment:nth-child(even) {
		display: grid;
		min-height: 0;
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: none;
	}

	body.ppps-module-home
		.pp-equipment-presentation--evidence-lens .pp-equipment figure,
	body.ppps-module-home
		.pp-equipment-presentation--evidence-lens .pp-equipment:nth-child(even) figure,
	body.ppps-module-home
		.pp-equipment-presentation--evidence-lens .pp-equipment :is(h3, dl, p),
	body.ppps-module-home
		.pp-equipment-presentation--evidence-lens .pp-equipment:nth-child(even) :is(h3, dl, p) {
		grid-column: 1;
		grid-row: auto;
	}

	body.ppps-module-home .pp-block--component-portfolio .pp-component-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.ppps-module-home .pp-block--enquiry-cta {
		min-height: 0;
	}

	body.ppps-module-home .pp-block--enquiry-cta .pp-enquiry-cta__inner {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 620px) {
	body.ppps-module-home {
		--pp-home-space: clamp(4rem, 16vw, 6rem);
	}

	body.ppps-module-home
		[data-pp-scene="hero"][data-pp-registered-asset-set]
		.pp-v19-hero__frame {
		min-height: 43rem !important;
	}

	body.ppps-module-home
		[data-pp-scene="hero"][data-pp-registered-asset-set]
		.pp-v19-hero__content .pp-block__title {
		font-size: clamp(2.75rem, 13vw, 4.25rem);
		overflow-wrap: anywhere;
	}

	body.ppps-module-home
		[data-pp-scene="hero"][data-pp-registered-asset-set]
		.pp-v19-hero__content .pp-block__copy {
		font-size: .95rem;
	}

	body.ppps-module-home
		[data-pp-scene="hero"][data-pp-registered-asset-set]
		.pp-v19-hero__content .pp-block__actions {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
	}

	body.ppps-module-home
		[data-pp-editorial-prelude]
		.pp-v19-prelude__content .pp-block__title {
		font-size: clamp(2.65rem, 12vw, 4rem);
	}

	body.ppps-module-home .pp-block--metric-strip .pp-metric {
		min-height: 9rem;
		padding: 1.25rem;
		align-content: center;
	}

	body.ppps-module-home .pp-block--metric-strip .pp-metric__value {
		font-size: clamp(2.65rem, 12vw, 3.6rem);
	}

	body.ppps-module-home .pp-block--metric-strip .pp-metrics {
		grid-template-columns: minmax(0, 1fr);
	}

	body.ppps-module-home .pp-block--metric-strip .pp-metric:nth-child(n) {
		border-right: 0;
	}

	body.ppps-module-home .pp-block--metric-strip .pp-metric:nth-child(n + 2) {
		border-top: 1px solid var(--pp-home-line);
	}

	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		.pp-block__title {
		font-size: clamp(2.5rem, 12vw, 4rem);
		overflow-wrap: anywhere;
	}

	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		.pp-card-grid {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		grid-template-columns: minmax(0, 1fr);
	}

	body.ppps-module-home .pp-block--plant-network .pp-plant-grid,
	body.ppps-module-home .pp-block--component-portfolio .pp-component-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		.pp-technical-card {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		min-height: 32rem;
		grid-template-columns: minmax(0, 1fr);
	}

	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		:is(.pp-technical-card__media-stack, .pp-technical-card__media) {
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	body.ppps-module-home
		.pp-block--plant-network .pp-plant-card:nth-child(n) {
		min-height: 0;
		border-right: 0;
	}

	body.ppps-module-home
		.pp-block--section:has(.pp-block--equipment-gallery)
		.pp-split__media {
		min-height: 20rem;
	}

	body.ppps-module-home
		.pp-equipment-presentation--evidence-lens .pp-equipment figure {
		min-height: 20rem;
	}

	body.ppps-module-home .pp-block--component-portfolio .pp-record-card {
		min-height: 0;
	}

	body.ppps-module-home .pp-block--component-portfolio .pp-block__title {
		max-width: none;
		font-size: clamp(2.85rem, 12vw, 3.4rem);
		text-wrap: balance;
	}

	body.ppps-module-home .pp-block--enquiry-cta .pp-block__title {
		font-size: clamp(3.5rem, 16vw, 5.5rem);
	}
}

@media (prefers-reduced-motion: reduce) {
	body.ppps-module-home
		[data-pp-editorial-prelude]
		.pp-v19-prelude__chapter,
	body.ppps-module-home
		[data-pp-editorial-prelude]
		.pp-v19-prelude__chapter :where(.pp-v19-prelude__media, .pp-v19-prelude__content),
	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		.pp-technical-card,
	body.ppps-module-home
		.pp-block--technical-card-grid[data-pp-card-presentation="capability_previews"]
		.pp-technical-card__media :where(img, picture),
	body.ppps-module-home .pp-block--plant-network .pp-plant-card,
	body.ppps-module-home
		.pp-block--component-portfolio .pp-record-card :where(figure img, .pp-record-card__body) {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}

body.ppps-module-home:is(
	.ppps-runtime-disabled,
	.ppps-readiness-failed,
	.ppps-capability-static,
	.ppps-capability-reduced,
	.ppps-capability-off,
	.ppps-motion-off,
	.ppps-motion-reduced
)
	[data-pp-editorial-prelude]
	.pp-v19-prelude__chapter :where(.pp-v19-prelude__media, .pp-v19-prelude__content) {
	clip-path: none !important;
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
}
