/*-------------------------------------------------------------------------
  Hero — fully rectangular, photography-led, left-aligned to site container
-------------------------------------------------------------------------*/

.wpw-hero {
	position: relative;
	isolation: isolate;
	display: grid;
	min-height: clamp(480px, 55vw, 650px);
	overflow: hidden;
	background: var(--wpw-color-dark);
	color: var(--wpw-color-white);
	border-radius: 0;
}

.wpw-hero__media,
.wpw-hero__content {
	grid-area: 1 / 1;
}

.wpw-hero__media {
	position: relative;
	z-index: 0;
	min-height: inherit;
}

.wpw-hero__image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 30%;
}

.wpw-hero__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(
		90deg,
		rgba(65, 64, 66, 0.82) 0%,
		rgba(65, 64, 66, 0.55) 42%,
		rgba(65, 64, 66, 0.22) 72%,
		rgba(65, 64, 66, 0.08) 100%
	);
}

.wpw-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	min-height: inherit;
	padding-block: clamp(2.5rem, 6vw, 4.5rem);
	text-align: left;
}

/* Same horizontal rhythm as header / teams / news */
.wpw-hero__inner {
	width: min(100% - (var(--wpw-pad-inline) * 2), var(--wpw-wide-size));
	margin-inline: auto;
	padding-inline: 0;
	text-align: left;
}

.wpw-hero__eyebrow {
	margin: 0 0 0.85rem;
	font-size: clamp(0.7rem, 1.2vw, 0.8rem);
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: color-mix(in srgb, var(--wpw-color-white) 88%, transparent);
}

.wpw-hero__heading {
	margin: 0 0 1rem;
	max-width: 18ch;
	font-weight: 800;
	line-height: 0.95;
	letter-spacing: -0.02em;
	text-transform: uppercase;
}

.wpw-hero__title,
.wpw-hero__accent {
	display: block;
	font-size: clamp(2.75rem, 8vw, 5.5rem);
}

.wpw-hero__title {
	color: var(--wpw-color-white);
}

.wpw-hero__accent {
	color: var(--wpw-color-primary);
}

.wpw-hero__text {
	margin: 0 0 1.75rem;
	max-width: 28rem;
	font-size: clamp(1rem, 2vw, 1.2rem);
	font-weight: 400;
	line-height: 1.5;
	color: color-mix(in srgb, var(--wpw-color-white) 94%, transparent);
}

.wpw-hero__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 0.75rem;
}

@media (max-width: 575px) {
	.wpw-hero {
		min-height: clamp(520px, 92vw, 640px);
	}

	.wpw-hero__overlay {
		background: linear-gradient(
			180deg,
			rgba(65, 64, 66, 0.55) 0%,
			rgba(65, 64, 66, 0.72) 45%,
			rgba(65, 64, 66, 0.88) 100%
		);
	}

	.wpw-hero__content {
		align-items: flex-end;
		padding-bottom: 2.5rem;
	}

	.wpw-hero__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.wpw-hero__actions .wpw-btn {
		width: 100%;
	}
}

@media (min-width: 1024px) {
	.wpw-hero__image {
		object-position: center center;
	}
}
