/**
 * Homepage hero slider — stacked slides + varied crossfade.
 * Loaded on the front page with cinematic scroll assets.
 */

.tqs-hero {
	position: relative;
	isolation: isolate;
	/* Opaque underlay prevents white flash while slides crossfade */
	background: #1A0533;
}

.tqs-hero .tqs-hero-slide {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	z-index: 0;
	pointer-events: none;
}

.tqs-hero .tqs-hero-slide.is-active {
	opacity: 1;
	visibility: visible;
	z-index: 1;
	pointer-events: auto;
}

.tqs-hero .tqs-hero-slide.is-leaving,
.tqs-hero .tqs-hero-slide.is-entering {
	visibility: visible;
	pointer-events: none;
}

.tqs-hero .tqs-hero-slide.is-entering {
	z-index: 2;
}

.tqs-hero .tqs-hero-slide.is-leaving {
	z-index: 1;
}

.tqs-hero .tqs-hero-slide-bg {
	position: absolute;
	inset: 0;
	overflow: hidden;
	background: linear-gradient(135deg, #1A0533 0%, #2D0A4E 55%, #4a1b7a 100%);
}

/* Desktop: keep team faces / heads in frame (group shots sit upper-center) */
.tqs-hero .tqs-hero-slide-bg img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 12%;
	will-change: transform, opacity;
}

/* Tablet: slightly lower focal point as aspect ratio narrows */
@media (max-width: 900px) {
	.tqs-hero .tqs-hero-slide-bg img {
		object-position: center 22%;
	}
}

/*
 * Mobile: avoid cover over-zoom on landscape group shots.
 * Width-fill + auto height shows the full team; purple slide-bg fills letterbox.
 * Portrait uploads still clamp via max-height + object-fit cover.
 */
@media (max-width: 640px) {
	.tqs-hero .tqs-hero-slide-bg img {
		position: absolute;
		left: 0;
		top: 8%;
		width: 100%;
		height: auto;
		max-height: 100%;
		object-fit: cover;
		object-position: center 12%;
	}
}

.tqs-hero .tqs-hero-overlay {
	z-index: 1;
}

.tqs-hero .tqs-hero-content {
	z-index: 2;
}

.tqs-hero-icon {
	display: inline-block;
	line-height: 1;
	margin-right: 6px;
	font-size: 1.1em;
}

/* No-JS / pre-init: first slide already has .is-active in markup */
.tqs-hero:not(.tqs-hero--ready) .tqs-hero-slide.is-active {
	opacity: 1;
	visibility: visible;
}

.tqs-page-hero--metabox .tqs-page-hero-cta {
	margin-top: 24px;
}

@media (prefers-reduced-motion: reduce) {
	.tqs-hero .tqs-hero-slide-bg img {
		will-change: auto;
	}
}
