/**
 * Company page presentation module.
 *
 * The Core timeline markup and its thirteen Gutenberg-authored milestones stay
 * authoritative. This module replaces only the Company chronology's visible
 * serpentine route with compact, state-driven illumination.
 */

.ppps-route-company {
	--pp-company-chronology-runway: 392svh;
	--pp-company-indicator-future: color-mix(in srgb, currentColor 24%, transparent);
	--pp-company-indicator-past: var(--ppps-signal);
	--pp-company-indicator-active: var(--ppps-oxide);
}

.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine {
	--pp-timeline-surface: var(--ppps-paper);
	overflow: clip;
}

.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine .pp-timeline__serpent {
	display: none !important;
}

.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine .pp-timeline__item {
	isolation: isolate;
}

.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine .pp-timeline__item::before {
	position: absolute;
	z-index: 2;
	top: clamp(1.05rem, 1.6vh, 1.35rem);
	left: 2.55rem;
	width: clamp(2.6rem, 3.6vw, 3.8rem);
	height: 3px;
	border-radius: 999px;
	background: var(--pp-company-indicator-future);
	content: "";
	opacity: .52;
	transform: scaleX(.42);
	transform-origin: left center;
	transition:
		width 420ms cubic-bezier(.22, 1, .36, 1),
		background-color 320ms ease,
		box-shadow 420ms ease,
		opacity 280ms ease,
		transform 420ms cubic-bezier(.22, 1, .36, 1);
}

.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline__item[data-pp-timeline-state="past"]::before {
	background: var(--pp-company-indicator-past);
	opacity: .72;
	transform: scaleX(.7);
}

.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline__item[data-pp-timeline-state="active"]::before {
	width: clamp(3.6rem, 5vw, 5.4rem);
	background: var(--pp-company-indicator-active);
	box-shadow: 0 0 18px color-mix(in srgb, var(--pp-company-indicator-active) 58%, transparent);
	opacity: 1;
	transform: scaleX(1);
}

.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline__item[data-pp-timeline-state="future"] {
	opacity: .4;
}

.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline__item[data-pp-timeline-state="past"] {
	opacity: .74;
}

.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline__item[data-pp-timeline-state="active"] {
	opacity: 1;
}

@media (min-width: 1181px) and (min-height: 820px) and (prefers-reduced-motion: no-preference) {
	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__runway {
		height: var(--pp-company-chronology-runway) !important;
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__runway > .pp-block__inner {
		grid-template-columns: minmax(12rem, .23fr) minmax(0, .77fr);
		gap: clamp(1.5rem, 3vw, 3.75rem);
		padding-block: clamp(1.1rem, 2vh, 2rem);
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__runway > .pp-block__inner > .pp-block__header
		.pp-block__title {
		font-size: clamp(3rem, 4.6vw, 4.35rem);
		line-height: .96;
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline {
		gap: clamp(.4rem, .8vw, .8rem);
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__item {
		min-height: 0;
		padding: clamp(2.85rem, 4.6vh, 3.75rem) clamp(.75rem, 1.15vw, 1.25rem) clamp(.7rem, 1.2vh, 1.1rem);
		border: 0;
		background: color-mix(in srgb, currentColor 2.5%, var(--pp-timeline-surface));
		box-shadow: inset 0 0 0 1px color-mix(in srgb, currentColor 8%, transparent);
		overflow: hidden;
		transition:
			opacity 320ms ease,
			background-color 320ms ease,
			box-shadow 420ms ease;
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__item[data-pp-timeline-state="past"] {
		box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--pp-company-indicator-past) 16%, transparent);
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__item[data-pp-timeline-state="active"] {
		background: color-mix(in srgb, var(--pp-company-indicator-active) 5%, var(--pp-timeline-surface));
		box-shadow:
			inset 0 0 0 1px color-mix(in srgb, var(--pp-company-indicator-active) 30%, transparent),
			0 16px 42px color-mix(in srgb, var(--pp-company-indicator-active) 8%, transparent);
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__item
		:where(h3, time, p) {
		transition: color 280ms ease, opacity 280ms ease;
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__item
		h3 {
		margin-bottom: .35rem;
		font-size: clamp(.88rem, .94vw, 1.08rem);
		letter-spacing: -.025em;
		line-height: 1.12;
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__item
		:where(time, p) {
		font-size: clamp(.67rem, .7vw, .78rem);
		line-height: 1.35;
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__item
		.pp-timeline__index {
		top: clamp(.9rem, 1.35vh, 1.15rem);
		right: clamp(.7rem, 1vw, 1rem);
		left: auto;
		color: currentColor;
		opacity: .38;
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__item
		.pp-timeline__node {
		top: clamp(.98rem, 1.5vh, 1.23rem) !important;
		right: auto !important;
		left: clamp(.9rem, 1.2vw, 1.2rem) !important;
		width: 9px;
		height: 9px;
		border-color: var(--pp-company-indicator-future);
		background: var(--pp-timeline-surface);
		transform: none;
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__item[data-pp-timeline-state="past"]
		.pp-timeline__node {
		border-color: var(--pp-company-indicator-past);
		background: var(--pp-company-indicator-past);
		box-shadow: none;
	}

	body.ppps-route-company.ppps-capability-full:not(
			.ppps-presentation-page,
			.ppps-runtime-disabled,
			.ppps-readiness-failed,
			.ppps-motion-off,
			.ppps-motion-reduced
		)
		[data-pp-scene="timeline"].pp-timeline--serpentine.is-motion-mounted
		.pp-timeline__item[data-pp-timeline-state="active"]
		.pp-timeline__node {
		border-color: var(--pp-company-indicator-active);
		background: var(--pp-company-indicator-active);
		box-shadow: 0 0 0 7px color-mix(in srgb, var(--pp-company-indicator-active) 20%, transparent);
		transform: scale(1.16);
	}
}

@media (max-width: 1180px), (max-height: 819px), (prefers-reduced-motion: reduce) {
	body.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine .pp-timeline__runway {
		height: auto !important;
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__runway > .pp-block__inner {
		position: relative !important;
		top: auto !important;
		display: block !important;
		height: auto !important;
		overflow: visible !important;
	}

	body.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine .pp-timeline__stage {
		height: auto !important;
	}

	body.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine .pp-timeline {
		display: grid;
		max-width: 48rem;
		grid-template-columns: minmax(0, 1fr) !important;
		grid-template-rows: none !important;
		grid-auto-rows: auto !important;
		gap: 0;
		margin-left: auto;
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item:nth-child(n) {
		grid-column: auto !important;
		grid-row: auto !important;
		min-height: 0;
		padding: clamp(3.4rem, 8vw, 4.5rem) clamp(1rem, 3vw, 1.5rem) clamp(2rem, 5vw, 3rem);
		border: 0;
		border-top: 1px solid color-mix(in srgb, currentColor 14%, transparent);
		background: transparent;
		box-shadow: none;
		overflow: visible;
		transform: none;
		transition: opacity 280ms ease;
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item:nth-child(n)
		.pp-timeline__node {
		top: clamp(1.18rem, 3vw, 1.5rem) !important;
		right: auto !important;
		left: clamp(1rem, 3vw, 1.5rem) !important;
		transform: none;
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item
		.pp-timeline__index {
		top: clamp(1.02rem, 2.6vw, 1.35rem);
		right: clamp(1rem, 3vw, 1.5rem);
		left: auto;
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item::before {
		top: clamp(1.34rem, 3.3vw, 1.66rem);
		left: clamp(2.65rem, 6vw, 3.2rem);
	}

	/*
	 * Normal-flow timelines do not use the desktop route-distance state as a
	 * visual selection. The shared controller may continue publishing its
	 * bookkeeping attributes, but every compact/reduced milestone is presented
	 * with the same complete, neutral treatment.
	 */
	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item:is(
			[data-pp-timeline-state="future"],
			[data-pp-timeline-state="past"],
			[data-pp-timeline-state="active"]
		) {
		opacity: 1 !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: none !important;
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item:is(
			[data-pp-timeline-state="future"],
			[data-pp-timeline-state="past"],
			[data-pp-timeline-state="active"]
		)::before {
		width: clamp(2.6rem, 3.6vw, 3.8rem) !important;
		background: color-mix(in srgb, currentColor 36%, transparent) !important;
		box-shadow: none !important;
		opacity: .7 !important;
		transform: none !important;
		transition: none !important;
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item:is(
			[data-pp-timeline-state="future"],
			[data-pp-timeline-state="past"],
			[data-pp-timeline-state="active"]
		)
		.pp-timeline__node {
		border-color: currentColor !important;
		background: var(--pp-timeline-surface) !important;
		box-shadow: none !important;
		transform: none !important;
		transition: none !important;
	}
}

@media (max-width: 600px) {
	body.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine .pp-block__header {
		margin-bottom: clamp(2.25rem, 10vw, 3.5rem);
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item:nth-child(n) {
		padding-inline: .25rem;
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item:nth-child(n)
		.pp-timeline__node {
		left: .25rem !important;
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item
		.pp-timeline__index {
		right: .25rem;
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item::before {
		left: 1.9rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.ppps-route-company [data-pp-scene="timeline"].pp-timeline--serpentine .pp-timeline__item {
		opacity: 1 !important;
		transition: none !important;
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item::before {
		width: clamp(2.6rem, 3.6vw, 3.8rem);
		background: color-mix(in srgb, currentColor 36%, transparent);
		box-shadow: none;
		opacity: .7;
		transform: none;
		transition: none;
	}

	body.ppps-route-company
		[data-pp-scene="timeline"].pp-timeline--serpentine
		.pp-timeline__item:nth-child(n)
		.pp-timeline__node {
		border-color: currentColor;
		background: var(--pp-timeline-surface);
		box-shadow: none;
		transform: none;
		transition: none;
	}
}

body.ppps-route-company:is(.ppps-runtime-disabled, .ppps-readiness-failed, .ppps-motion-off, .ppps-motion-reduced)
	[data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline__runway {
	height: auto !important;
}

body.ppps-route-company:is(.ppps-runtime-disabled, .ppps-readiness-failed, .ppps-motion-off, .ppps-motion-reduced)
	[data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline__runway > .pp-block__inner {
	position: relative !important;
	top: auto !important;
	display: block !important;
	height: auto !important;
	overflow: visible !important;
}

body.ppps-route-company:is(.ppps-runtime-disabled, .ppps-readiness-failed, .ppps-motion-off, .ppps-motion-reduced)
	[data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline {
	grid-template-columns: minmax(0, 1fr) !important;
	grid-template-rows: none !important;
	grid-auto-rows: auto !important;
	gap: 0;
	max-width: 48rem;
	margin-left: auto;
}

body.ppps-route-company:is(.ppps-runtime-disabled, .ppps-readiness-failed, .ppps-motion-off, .ppps-motion-reduced)
	[data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline__item:nth-child(n) {
	grid-column: auto !important;
	grid-row: auto !important;
	min-height: 0 !important;
	padding: clamp(3.4rem, 8vw, 4.5rem) clamp(1rem, 3vw, 1.5rem) clamp(2rem, 5vw, 3rem) !important;
	border: 0 !important;
	border-top: 1px solid color-mix(in srgb, currentColor 14%, transparent) !important;
	background: transparent !important;
	overflow: visible !important;
	opacity: 1 !important;
	box-shadow: none !important;
	transform: none !important;
	transition: none !important;
}

body.ppps-route-company:is(.ppps-runtime-disabled, .ppps-readiness-failed, .ppps-motion-off, .ppps-motion-reduced)
	[data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline__item:nth-child(n)
	.pp-timeline__node {
	top: clamp(1.18rem, 3vw, 1.5rem) !important;
	right: auto !important;
	left: clamp(1rem, 3vw, 1.5rem) !important;
	border-color: currentColor !important;
	background: var(--pp-timeline-surface) !important;
	box-shadow: none !important;
	transform: none !important;
	transition: none !important;
}

body.ppps-route-company:is(.ppps-runtime-disabled, .ppps-readiness-failed, .ppps-motion-off, .ppps-motion-reduced)
	[data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline__item
	.pp-timeline__index {
	top: clamp(1.02rem, 2.6vw, 1.35rem) !important;
	right: clamp(1rem, 3vw, 1.5rem) !important;
	left: auto !important;
}

body.ppps-route-company:is(.ppps-runtime-disabled, .ppps-readiness-failed, .ppps-motion-off, .ppps-motion-reduced)
	[data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline__item::before,
body.ppps-route-company:is(.ppps-runtime-disabled, .ppps-readiness-failed, .ppps-motion-off, .ppps-motion-reduced)
	[data-pp-scene="timeline"].pp-timeline--serpentine
	.pp-timeline__item:is(
		[data-pp-timeline-state="future"],
		[data-pp-timeline-state="past"],
		[data-pp-timeline-state="active"]
	)::before {
	top: clamp(1.34rem, 3.3vw, 1.66rem) !important;
	left: clamp(2.65rem, 6vw, 3.2rem) !important;
	width: clamp(2.6rem, 3.6vw, 3.8rem) !important;
	background: color-mix(in srgb, currentColor 36%, transparent) !important;
	box-shadow: none !important;
	opacity: .7 !important;
	transform: none !important;
	transition: none !important;
}
