/* PLMR Core: Scroll Colour Headline */
.plmr-sch {
	--plmr-sch-base: rgba(15, 37, 71, 0.15);
	--plmr-sch-fill: #0F2547;
	--plmr-sch-accent: #1E9DD8;
	--plmr-sch-length: 150vh;
	--plmr-sch-top: 0px;
	--plmr-sch-justify: flex-start;
	position: relative;
	width: 100%;
}
.plmr-sch__pin {
	display: flex;
	align-items: center;
	justify-content: var(--plmr-sch-justify);
	width: 100%;
}
.plmr-sch__text {
	position: relative;
	z-index: 1;
	margin: 0;
	width: 100%;
	max-width: 1100px;
}
.plmr-sch__word {
	display: inline-block;
	white-space: nowrap;
}
.plmr-sch__u {
	--fill: var(--plmr-sch-fill);
	color: var(--plmr-sch-base);
	color: color-mix(in srgb, var(--fill) calc(var(--t, 0) * 100%), var(--plmr-sch-base));
}
.plmr-sch__u.is-accent {
	--fill: var(--plmr-sch-accent);
}

/* Floating images: positioned round the held area, animated by the script */
.plmr-sch__pin {
	position: relative;
}
.plmr-sch__floats {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}
.plmr-sch__float {
	position: absolute;
	left: var(--x);
	top: var(--y);
	width: 220px;
	height: auto;
	max-width: none;
	object-fit: cover;
	opacity: 0;
	visibility: hidden;
	transform: translate(-50%, -50%) rotate(var(--rot, 0deg)) scale(0.86);
	will-change: transform, opacity;
}
@media (max-width: 767px) {
	.plmr-sch__float {
		top: var(--ym, var(--y));
	}
	.plmr-sch--no-floats-mobile .plmr-sch__floats {
		display: none;
	}
}

/* Pinned: track is viewport-height + scroll distance; the inner box sticks while you scroll through it */
.plmr-sch--pin {
	height: calc(100vh - var(--plmr-sch-top) + var(--plmr-sch-length));
}
.plmr-sch--pin .plmr-sch__pin {
	position: sticky;
	top: var(--plmr-sch-top);
	height: calc(100vh - var(--plmr-sch-top));
	height: calc(100svh - var(--plmr-sch-top));
}

@media (max-width: 767px) {
	.plmr-sch--no-pin-mobile {
		height: auto;
	}
	.plmr-sch--no-pin-mobile .plmr-sch__pin {
		position: relative;
		height: auto;
	}
}

/* No JS yet / reduced motion: show the finished headline */
.plmr-sch.is-static {
	height: auto;
}
.plmr-sch.is-static .plmr-sch__pin {
	position: relative;
	height: auto;
}
.plmr-sch.is-static .plmr-sch__floats {
	display: none;
}
.plmr-sch.is-static .plmr-sch__u {
	color: var(--fill);
}
