/* Lenis smooth-scroll standards (shared by IronFin headless templates) */
html.lenis,
html.lenis body {
	height: auto;
}

.lenis.lenis-smooth {
	scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
	overscroll-behavior: contain;
}

.lenis.lenis-stopped {
	overflow: hidden;
}

.lenis.lenis-scrolling iframe {
	pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
	html.lenis {
		scroll-behavior: auto !important;
	}
}

/* ---------------------------------------------------------------------------
   Heading line-reveal (masked lines that cascade in with the section)
   --------------------------------------------------------------------------- */
.reveal-line {
	display: block;
	overflow: hidden;
	padding-bottom: 0.12em;
	margin-bottom: -0.12em;
}

.reveal-line-in {
	display: block;
	transform: translateY(115%);
	transition: transform 0.95s cubic-bezier(0.16, 1, 0.3, 1) var(--line-delay, 0.26s);
	will-change: transform;
}

.is-visible .reveal-line-in,
.is-revealed .reveal-line-in,
.is-in .reveal-line-in {
	transform: translateY(0);
}

/* A split heading is driven by its line masks, not by a block fade/wipe */
.is-split {
	opacity: 1 !important;
	transform: none !important;
	clip-path: none !important;
}

@media (prefers-reduced-motion: reduce) {
	.reveal-line-in {
		transform: none !important;
		transition: none !important;
	}
}

@media (max-width: 991px) {
	.reveal-line {
		overflow: visible !important;
		padding-bottom: 0 !important;
		margin-bottom: 0 !important;
	}
	.reveal-line-in {
		transform: none !important;
		opacity: 1 !important;
		transition: none !important;
	}
}
