/* Steve Ellis homepage hero: artwork seen through the letters (replaces Slider Revolution).
   v1.5: letters are an exact Anton outline used as a stencil (mask-line.svg / mask-stack.svg),
   so no font loading, no blend modes, and no clipped edges.
   Source: "stevellis.com security audit" chat, made in Claude (cowork), Sept 2026. */
/* Let the hero use the full content column (the theme limits pages to 640px). */
article:has(.sh-hero), .entry-content:has(.sh-hero) { max-width: none !important; width: 100% !important; }
.sh-hero {
	container-type: inline-size;
	align-items: center;
	width: 100%;
	box-sizing: border-box;
	background: #fff;
	display: flex;
	justify-content: center;
	padding: clamp(24px, 6vw, 90px) 16px;
}
.sh-stage {
	position: relative;
	flex: none;
	width: 84%;
	aspect-ratio: 4.84431;
	opacity: 0;
	filter: blur(20px);
	transition: opacity 1.2s ease-out, filter 1.4s ease-out;
}
.sh-stage.is-stacked { width: 88%; aspect-ratio: 1.13766; }
.sh-stage.is-ready { opacity: 1; filter: blur(0); }
.sh-slides {
	position: absolute;
	inset: 0;
	overflow: hidden;
	-webkit-mask: url(mask-line.svg) center / 100% 100% no-repeat;
	mask: url(mask-line.svg) center / 100% 100% no-repeat;
}
.sh-stage.is-stacked .sh-slides {
	-webkit-mask-image: url(mask-stack.svg);
	mask-image: url(mask-stack.svg);
}
.sh-slide { position: absolute; inset: 0; opacity: 0; overflow: hidden; }
.sh-slide.is-base { opacity: 1; z-index: 1; }
.sh-slide.is-in { opacity: 1; z-index: 2; transition: opacity var(--fade, 4800ms) ease-in-out; }
.sh-slide.is-in.is-start { opacity: 0; }
.sh-slide img {
	position: absolute;
	display: block;
	max-width: none !important;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	margin: 0 !important;
	border: 0 !important;
	object-fit: cover;
	will-change: transform;
}
.sh-sr {
	position: absolute !important;
	width: 1px; height: 1px;
	margin: -1px; padding: 0; border: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}
@media (prefers-reduced-motion: reduce) {
	.sh-stage { transition: none; filter: none; }
	.sh-slide.is-in { transition: none; }
}
