/* template-parts/section/hero.php */
/* ----------------------------------------------------------
   HERO SECTION
---------------------------------------------------------- */
.hero-section {
	position: relative;
	height: calc(100vh - 74px);
}

.hero-section::before {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--gradient-overlay-hero);
	z-index: var(--z-content);
}

.hero-video {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero-content {
	position: relative;
	padding: var(--section-py) var(--section-px);
	z-index: 2;
	color: var(--color-white);
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	gap: 24px;
}

.hero-title {
	font-size: var(--fs-4xl);
	line-height: var(--lh-3xl);
	font-weight: 700;
	max-width: 907px;
}

.hero-description {
	font-size: var(--fs-md);
	font-weight: 400;
	max-width: 442px;
	line-height: var(--lh-md);
}

.hero-description p {
	margin-bottom: 16px;
}

.hero-description p:last-child {
	margin-bottom: 0;
}

/* TABLET */
@media (max-width: 1024px) {
	.hero-title {
		font-size: 48px;
		line-height: 60px;
		font-weight: 700;
		max-width: 784px;
	}
	.hero-description {
		font-size: var(--fs-sm);
		font-weight: 400;
		max-width: 442px;
		line-height: var(--lh-sm);
	}
}

/* MOBILE */
@media (max-width: 767.9px) {
	.hero-section {
		height: calc(100vh - 74px);
		overflow: hidden;
	}
	.hero-content {
		justify-content: flex-end;
		padding: var(--section-py) var(--section-px);
	}
	.hero-title {
		font-size: 32px;
		line-height: 36px;
		max-width: 380px;
	}
	.hero-description {
		max-width: 340px;
		font-size: var(--fs-sm);
		line-height: var(--lh-sm);
	}
}
