@charset "utf-8";

/* HERO */
.hero {
	display: grid;
	min-height: 70vh;
	position: relative;
	z-index: 1;
	}
.hero .cover-gradientlr-solid {
	opacity: 0.7;
	}
@media (min-width: 60em) {
	.hero .cover-gradientlr-solid {
		--cover-position-start: 25%;
		--cover-position-end: 65%;
		--cover-opacity-start: 0.85;
		--cover-opacity-end: 0.4;
		opacity: 1;
		}
}
.hero-holder,
.hero-media {
	grid-area: 1 / 1;
	position: relative;
	}
.hero-media {
	z-index: 2;
	}
.hero-picture,
.hero-picture > *,
.hero-video,
.hero-video > video {
	height: 100%;
	object-fit: cover;
	object-position: center;
	position: absolute;
	width: 100%;
	}
.hero-holder {
	align-items: center;
	display: flex;
	padding-inline: var(--margin-pad);
	z-index: 6;
	}
.hero-content {
	display: grid;
	gap: var(--margin-block);
	margin-block: clamp(7.5rem, 5rem + 6.25vw, 15rem) clamp(3.75rem, 2rem + 3.4375vw, 7.5rem);
	margin-inline: auto;
	max-width: 80rem;
	text-align: left;
	width: 100%;
	z-index: 4;
	}
.hero-headers {
	font-size: clamp(1rem, 0.5rem + 1.25vw, 2.5rem);
	}
.hero-header {
	color: var(--color-bright);
	font-size: var(--font-size-sm);
	font-family: var(--font-style);
	font-weight: var(--font-weight-bold);
	margin-bottom: var(--margin-small);
	}
.hero-header > i {
	color: var(--color-important);
	}
.hero-header-sub {
	font: var(--typography-h1);
	}
.hero-intro {
	font-size: var(--font-size-sm);
	line-height: var(--line-height-normal);
	margin: var(--gap) 0;
	max-width: 37.5rem;
	}
.hero-buttons.buttons-group {
	justify-content: flex-start;
	margin: var(--gap) 0 0;
	}
@media (min-width: 30em) {
	.hero {
		min-height: unset;
		}
}
@media (min-width: 50em) {
	.hero-content {
		align-items: center;
		grid-template-columns: 1fr min-content;
		}
	.hero-header-sub {
		max-width: 75%;
		}
}

.hero-location {
	display: flex;
	justify-content: center;
}
.hero-location-card {
	backdrop-filter: blur(14px) saturate(120%);
	-webkit-backdrop-filter: blur(14px) saturate(120%);
	background: rgba(var(--background-rgb), 0.8);
	border-radius: var(--radius);
	box-shadow: var(--box-shadow-floating);
	padding: 26px 24px 30px;
	position: relative;
	width: 245px;
	}
@media (max-width: 30em) {
	.hero-location-card {
		width: 100%;
		}
}
		.hero-location-header {
			align-items: center;
			display: flex;
			gap: 14px;
			margin-bottom: 30px;
			}
		.hero-location-icon {
			align-items: center;
			border: 2px solid var(--color-accent);
			border-radius: 50%;
			display: flex;
			flex-shrink: 0;
			height: 40px;
			justify-content: center;
			width: 40px;
			}
		.hero-location-icon::after {
			content: "";
			width: 9px;
			height: 9px;
			background: var(--color-accent);
			border-radius: 50%;
			}
		.hero-location-text {
			display: flex;
			flex-direction: column;
			gap: 3px;
			}
		.hero-location-title {
			font-size: 13px;
			font-weight: 600;
			letter-spacing: 0.12em;
			color: var(--color-text);
			text-transform: uppercase;
			}
		.hero-location-sub {
			font-family: var(--font-style);
			font-size: 12px;
			font-weight: 500;
			letter-spacing: 0.08em;
			color: var(--color-accent);
			}
		.hero-location-list {
			display: flex;
			flex-direction: column;
			gap: 18px;
			}
		.hero-location-row {
			display: flex;
			align-items: center;
			gap: 16px;
			}
		.hero-location-tick {
			flex-shrink: 0;
			width: 4px;
			height: 26px;
			border-radius: 2px;
			background: var(--color-medium);
			}
			.hero-location-row:nth-child(2) .hero-location-tick,
			.hero-location-row:nth-child(4) .hero-location-tick {
				background: var(--color-accent);
				}
		.hero-location-label {
			flex-shrink: 0;
			width: 30px;
			font-size: 11px;
			font-weight: 600;
			letter-spacing: 0.1em;
			color: var(--color-medium);
		}
		.hero-location-value {
			font-family: var(--font-style);
			font-size: 15px;
			font-weight: 500;
			color: var(--color-text);
			}