
/*
******** ------------------------------ **** HERO ****
*/
.hero {
	--grid-columns-md: 5;

	grid-column: full-width;
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzYwIiBoZWlnaHQ9IjgwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjEiPgogPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI5LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDIuMS4wIEJ1aWxkIDExNikgIC0tPgoKIDxnPgogIDx0aXRsZT5MYXllciAxPC90aXRsZT4KICA8cGF0aCBpZD0ic3ZnXzEiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlPSIjZmZmIiBmaWxsPSIjZmNkNjlmIiBkPSJtMzY0LjAwMDAxLDE1MC4yM2MtMTQ5LjkwNzM0LDI5Ljk4IC0yNTMuMzc0MzQsMTUwLjUyIC0zNjQuMDAwMDEsMjU3LjdsMCwzOTIuMDdsMzY0LjAwMDAxLDBsMCwtNjQ5Ljc3eiIgY2xhc3M9InN0MCIvPgogIDxwYXRoIGlkPSJzdmdfMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBmaWxsPSIjOGFiNWI1IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZT0iI2ZmZiIgZD0ibTM2MywyMzYuOTJjLTE0OC43MDc4MywtNTAuNjUgLTI2NC44NzIxNSwtNzEuMzMgLTM2NS45OTk5OCwtNjAuNGwwLDYyMy40OGwzNjUuOTk5OTgsMGwwLC01NjMuMDh6IiBjbGFzcz0ic3QxIi8+CiA8L2c+Cjwvc3ZnPg==");
	background-size: cover;
	background-position-y: 3rem;
	background-repeat: no-repeat;
	box-shadow: 30px 0 60px rgba(0, 0, 0, 0.2);
	position: relative;

	@media screen and (min-width: 481px) {
		background-position-y: -2rem;
	}
	@media screen and (min-width: 769px) {
		background-image: url("img/./siebengebirge_illustration_md.svg");
		background-position-y: -7rem;
	}
	@media screen and (min-width: 1025px) {
		background-image: url("img/./siebengebirge_illustration_lg.svg");
		background-position-y: -40px;
		min-block-size: 50dvw;
		background-size: 100%;
		box-shadow: none;
	}
	@media screen and (min-width: 1280px) {
		background-position-y: -100px;
		min-block-size: 50dvw;
	}
	@media screen and (min-width: 1921px) {
		background-image: url("img/./siebengebirge_illustration_xl.svg");
		background-position-y: -200px;
		min-block-size: 45dvw;
	}
}
.hero__logo {
	grid-column: 1/6;
	position: relative;
	inset-block-start: clamp(1.5rem, 1rem + 2vw, 10rem);
	z-index: 99;
	filter: drop-shadow(2px 2px 0 white);
	max-block-size: 200px;
}
.hero__content {
	grid-column: 1;
	
	text-align: center;
	padding-block-start: clamp(5rem, 1rem + 26vw, 14rem);
	padding-block-end: 3rem;
	padding-inline: var(--gap);
	color: white;
	align-self: end;

	@media screen and (min-width: 769px) {
		grid-column: 1/6;
		padding-block-start: clamp(5rem, 1rem + 10vw, 10rem);
	}

	@media screen and (min-width: 1025px) {
		grid-column: 3/6;
		align-self: center;
		padding-block-start: clamp(3rem, 1rem + 9vw, 7rem);
	}

	@media screen and (min-width: 1921px) {
		grid-column: 2/6;
		padding-block-end: clamp(3rem, 1rem + 10vw, 30rem);
	}
}
.hero__title {
	--headline-length: 25ch;

	text-shadow: -2px -2px 0 var(--clr-accent-1);
	margin-inline: auto;
}

.hero__subtitle {
	max-inline-size: 35ch;
	margin-inline: auto;
}

.hero__cta {
	outline: 3px solid white;
}

.hero__hint {
	--stack-gap: 0.5rem;

	font-size: 0.75em;
}

.hero mark {
	background-color: var(--clr-accent-1);
	padding: 2px 5px;
	color: white;
}

.hero__down-arrow {
	display: none;
	position: absolute;
	inset-block-start: calc(100% - 50px);
	inset-inline-start: calc(50% - 14px);
	inline-size: 0;
	block-size: 60px;
	border: 1px solid white;
	border-radius: 2px;
	animation: jumpInfinite 2.5s infinite;

	@media screen and (min-width: 1025px) {
		display: block;
		inset-block-start: calc(100% - 110px);
	}
}

.hero__down-arrow:after {
	content: " ";
	position: absolute;
	inset-block-start: 42px;
	inset-inline-start: -8px;
	inline-size: 16px;
	block-size: 16px;
	border-block-end: 2px solid white;
	border-inline-end: 2px solid white;
	border-radius: 1px;
	transform: rotateZ(45deg);
}

@keyframes jumpInfinite {
	0% { margin-block-start: 0; }
	50% { margin-block-start: 15px; }
	100% { margin-block-start: 0; }
}