/*
 * Hero: full-width photo background, enforced navy overlay, eyebrow,
 * two-tone H1 (white + yellow accent), text, CTA pair.
 */

.asli-hero {
	position: relative;
	isolation: isolate;
	border-radius: 0 0 var(--asli-radius-card) var(--asli-radius-card);
	overflow: hidden;
}

.asli-hero__bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: -2;
}

.asli-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgb(4 12 44 / var(--asli-hero-overlay, 0.55));
	z-index: -1;
}

.asli-hero__inner {
	padding-block: clamp(5rem, 4rem + 8vw, 11rem);
	max-width: 46rem;
}

/* Floating-header overlay: hero content clears the header. */
.asli-header-overlay .asli-hero__inner {
	padding-block-start: clamp(12rem, 9rem + 9vw, 21rem);
	padding-block-end: clamp(6rem, 5rem + 4vw, 9.5rem);
}

.asli-hero__title {
	color: var(--asli-text-on-dark);
	font-size: var(--asli-text-hero);
	font-weight: var(--asli-weight-heading-bold);
	margin: 0 0 var(--asli-space-md);
}

.asli-hero__title .asli-heading__accent {
	color: var(--asli-yellow);
}

.asli-hero__text {
	color: var(--asli-text-muted-on-dark);
	font-size: var(--asli-text-lg);
	max-width: 38rem;
	margin: 0 0 var(--asli-space-xl);
}

.asli-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--asli-space-md);
}

/* Focus rings must stay visible on the dark photo. */
.asli-hero :focus-visible {
	outline-color: var(--asli-text-on-dark);
}
