/**
 * Theme Part M84 - Header Startseite 2026
 *
 * @author MediaMEANS
**/

/* above the fold: no fade-in of the global section animation */
section.m84_header_startseite_2026 {
	opacity: 1 !important;
}

section.m84_header_startseite_2026 {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	color: rgba(255, 255, 255, .8);
	text-align: center;
	/* easing gradient: dark top, light bottom, without banding */
	background: linear-gradient(180deg, #06062E 0%, #08083E 10%, #0B0A4E 20%, #110E68 30%, #1A158F 40%, #2520BC 49%, #3232DE 57%, #4A52F2 64%, #6B79FB 71%, #93A0FF 78%, #BCC5FF 85%, #E0E5FF 92%, #F6F7FF 97%, #FFFFFF 100%);
}

/* === Abstand (Backend: Abstände) – padding-top enthält den fixen Header (84px / 72px) === */
section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_oben_und_unten"] {
	padding-top: 216px;
	padding-bottom: 320px;
}

section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_nur_oben"] {
	padding-top: 216px;
}

section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_nur_unten"] {
	padding-bottom: 320px;
}

section.m84_header_startseite_2026 .m84_grid {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	display: block;
	width: 100%;
	height: 100%;
}

section.m84_header_startseite_2026 .m84_header_startseite_2026_main {
	display: flex;
	flex-direction: column;
	align-items: center;
}

/* ---------- Pill ---------- */
section.m84_header_startseite_2026 .m84_pill {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 11px 16px 8px;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 999px;
	background: rgba(255, 255, 255, .07);
	color: #fff;
	font-family: Nexa-Heavy, sans-serif;
	font-weight: 400;
	font-size: .71875rem;
	line-height: 1.3;
	letter-spacing: .072rem;
	text-transform: uppercase;
}

section.m84_header_startseite_2026 .m84_pill::before {
	content: "";
	flex: none;
	width: 7px;
	height: 7px;
	margin-top: -3px;
	border-radius: 50%;
	background: #FE5B4A;
	box-shadow: 0 0 0 0 rgba(254, 91, 74, .6);
	-webkit-animation: m84_ping 2.4s infinite;
	animation: m84_ping 2.4s infinite;
}

@-webkit-keyframes m84_ping {
	0% { box-shadow: 0 0 0 0 rgba(254, 91, 74, .55); }
	70%, 100% { box-shadow: 0 0 0 9px rgba(254, 91, 74, 0); }
}

@keyframes m84_ping {
	0% { box-shadow: 0 0 0 0 rgba(254, 91, 74, .55); }
	70%, 100% { box-shadow: 0 0 0 9px rgba(254, 91, 74, 0); }
}

/* ---------- Titel ---------- */
section.m84_header_startseite_2026 .m84_titel_container {
	align-self: stretch;
}

section.m84_header_startseite_2026 .m84_titel {
	margin: 32px 0 0;
	color: #fff;
	font-family: Nexa-Heavy, sans-serif;
	font-weight: 400;
	font-size: 6rem;
	line-height: .98;
	letter-spacing: -.24rem;
}

/* every line slides up out of its own mask; padding-top + negative margin give the
   Nexa ascenders (i-dots, S) room inside the mask without changing the line spacing */
section.m84_header_startseite_2026 .m84_titel_zeile {
	display: block;
	overflow: hidden;
	margin-top: -14px;
	padding-top: 14px;
	padding-bottom: 8px;
}

section.m84_header_startseite_2026 .m84_titel_zeile > span {
	display: inline-block;
}

section.m84_header_startseite_2026 .m84_titel_link {
	color: inherit;
	text-decoration: none;
	cursor: pointer;
	-webkit-transition: opacity .25s;
	transition: opacity .25s;
}

section.m84_header_startseite_2026 .m84_titel_link:hover {
	color: inherit;
	opacity: .85;
}

section.m84_header_startseite_2026 .m84_titel_akzent {
	position: relative;
	color: #FE5B4A;
}

/* underline below the accent word (as visible in the prototype: one line, the mask cuts the rest) */
section.m84_header_startseite_2026 .m84_titel_akzent::after {
	content: "";
	position: absolute;
	left: 2px;
	right: 2px;
	bottom: 11px;
	height: 4px;
	border-radius: 2px;
	background: currentColor;
	transform-origin: left;
	transform: scaleX(1);
}

/* ---------- Text ---------- */
section.m84_header_startseite_2026 .m84_text {
	max-width: 600px;
	margin: 32px auto 0;
	color: rgba(255, 255, 255, .8);
	font-size: 1.25rem;
	line-height: 1.6;
}

/* ---------- Button ---------- */
section.m84_header_startseite_2026 .m84_link_container {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
	margin-top: 40px;
}

/* Nexa sitzt hoch in der Zeile: oben mehr Padding als unten */
section.m84_header_startseite_2026 .m84_button {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 24px 44px 20px;
	border: 1.5px solid rgba(255, 200, 188, .9);
	border-radius: 999px;
	background: linear-gradient(180deg, rgba(254, 91, 74, .46) 0%, rgba(170, 62, 128, .34) 100%);
	box-shadow: inset 0 0 26px rgba(255, 128, 108, .42), inset 0 1px 0 rgba(255, 255, 255, .35), 0 22px 50px -20px rgba(254, 91, 74, .75);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	color: #fff;
	font-family: Nexa-Heavy, sans-serif;
	font-weight: 400;
	font-size: 1.0625rem;
	line-height: 1.3;
	letter-spacing: -.01rem;
	text-decoration: none;
	cursor: pointer;
	-webkit-transition: box-shadow .35s, border-color .35s, transform .25s;
	transition: box-shadow .35s, border-color .35s, transform .25s;
}

section.m84_header_startseite_2026 .m84_button:hover {
	border-color: #fff;
	box-shadow: inset 0 0 34px rgba(255, 140, 120, .6), inset 0 1px 0 rgba(255, 255, 255, .5), 0 26px 60px -18px rgba(254, 91, 74, .9);
	color: #fff;
}

section.m84_header_startseite_2026 .m84_button:active {
	transform: scale(.98);
}

section.m84_header_startseite_2026 .m84_button_hinweis {
	color: rgba(255, 255, 255, .66);
	font-size: .8125rem;
}

/* ---------- Trustbar ---------- */
section.m84_header_startseite_2026 .m84_trustbar {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	row-gap: 16px;
	margin: 64px 0 0;
	padding: 0;
	list-style: none;
}

section.m84_header_startseite_2026 .m84_trustbar_item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 0 28px;
	color: #fff;
	text-align: left;
}

section.m84_header_startseite_2026 .m84_trustbar_item + .m84_trustbar_item {
	border-left: 1px solid rgba(255, 255, 255, .2);
}

section.m84_header_startseite_2026 .m84_trustbar_icon {
	display: block;
	flex: none;
	width: 28px;
	height: 28px;
	color: #fff;
	opacity: .92;
}

section.m84_header_startseite_2026 .m84_trustbar_icon svg,
section.m84_header_startseite_2026 .m84_trustbar_icon img {
	display: block;
	width: 100%;
	height: 100%;
}

section.m84_header_startseite_2026 .m84_trustbar_sterne {
	flex: none;
	color: #FFC94D;
	font-size: .9375rem;
	letter-spacing: .0625rem;
}

section.m84_header_startseite_2026 .m84_trustbar_text b {
	display: block;
	font-family: Nexa-Heavy, sans-serif;
	font-weight: 400;
	font-size: .875rem;
	line-height: 1.2;
}

section.m84_header_startseite_2026 .m84_trustbar_text small {
	display: block;
	margin-top: 2px;
	color: rgba(255, 255, 255, .62);
	font-size: .75rem;
}

/* ---------- Load-Sequenz (Startzustand nur mit JS) ---------- */
/* far enough below the mask: the bottom padding (descenders) and the Nexa ascenders above the
   line box must not show the letter tops before the animation */
section.m84_header_startseite_2026.m84_js .m84_titel_zeile > span {
	transform: translateY(130%);
}

section.m84_header_startseite_2026.m84_js .m84_pill_container,
section.m84_header_startseite_2026.m84_js .m84_text_container,
section.m84_header_startseite_2026.m84_js .m84_link_container,
section.m84_header_startseite_2026.m84_js .m84_trustbar {
	opacity: 0;
	transform: translateY(14px);
}

section.m84_header_startseite_2026.m84_js .m84_titel_akzent::after {
	transform: scaleX(0);
}

section.m84_header_startseite_2026.is-loaded .m84_titel_zeile > span {
	transform: none;
	-webkit-transition: transform 1s cubic-bezier(.2, .7, .1, 1);
	transition: transform 1s cubic-bezier(.2, .7, .1, 1);
}

section.m84_header_startseite_2026.is-loaded .m84_titel_zeile:nth-child(2) > span {
	transition-delay: .08s;
}

section.m84_header_startseite_2026.is-loaded .m84_titel_zeile:nth-child(3) > span {
	transition-delay: .16s;
}

section.m84_header_startseite_2026.is-loaded .m84_pill_container,
section.m84_header_startseite_2026.is-loaded .m84_text_container,
section.m84_header_startseite_2026.is-loaded .m84_link_container,
section.m84_header_startseite_2026.is-loaded .m84_trustbar {
	opacity: 1;
	transform: none;
	-webkit-transition: opacity .8s cubic-bezier(.2, .7, .1, 1), transform .9s cubic-bezier(.2, .7, .1, 1);
	transition: opacity .8s cubic-bezier(.2, .7, .1, 1), transform .9s cubic-bezier(.2, .7, .1, 1);
}

section.m84_header_startseite_2026.is-loaded .m84_text_container {
	transition-delay: .35s;
}

section.m84_header_startseite_2026.is-loaded .m84_link_container {
	transition-delay: .45s;
}

section.m84_header_startseite_2026.is-loaded .m84_trustbar {
	transition-delay: .6s;
}

section.m84_header_startseite_2026.is-loaded .m84_titel_akzent::after {
	transform: scaleX(1);
	-webkit-transition: transform .8s cubic-bezier(.2, .7, .1, 1) 1.05s;
	transition: transform .8s cubic-bezier(.2, .7, .1, 1) 1.05s;
}

/* ---------- Responsive ---------- */
@media screen and (max-width: 1399px) {
	section.m84_header_startseite_2026 .m84_titel_zeile {
		margin-top: -12px;
		padding-top: 12px;
	}
	
	section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_oben_und_unten"] {
		padding-top: 192px;
		padding-bottom: 264px;
	}

	section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_nur_oben"] {
		padding-top: 192px;
	}

	section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_nur_unten"] {
		padding-bottom: 264px;
	}

	section.m84_header_startseite_2026 .m84_titel {
		font-size: 5.25rem;
		letter-spacing: -.21rem;
	}

	section.m84_header_startseite_2026 .m84_titel_akzent::after {
		bottom: 10px;
		height: 4px;
	}

	section.m84_header_startseite_2026 .m84_text {
		font-size: 1.125rem;
	}

	section.m84_header_startseite_2026 .m84_trustbar_item {
		padding: 0 24px;
	}
}

@media screen and (max-width: 1199px) {
	section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_oben_und_unten"] {
		padding-top: 172px;
		padding-bottom: 250px;
	}

	section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_nur_oben"] {
		padding-top: 172px;
	}

	section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_nur_unten"] {
		padding-bottom: 250px;
	}

	section.m84_header_startseite_2026 .m84_titel {
		font-size: 4.5rem;
		letter-spacing: -.18rem;
	}

	section.m84_header_startseite_2026 .m84_titel_zeile {
		margin-top: -10px;
		padding-top: 10px;
		padding-bottom: 6px;
	}

	section.m84_header_startseite_2026 .m84_titel_akzent::after {
		left: 1px;
		right: 1px;
		bottom: 8px;
		height: 3px;
	}

	section.m84_header_startseite_2026 .m84_text {
		font-size: 1.0625rem;
	}

	section.m84_header_startseite_2026 .m84_trustbar {
		margin-top: 56px;
	}
}

@media screen and (max-width: 991px) {
	section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_oben_und_unten"] {
		padding-top: 160px;
		padding-bottom: 218px;
	}

	section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_nur_oben"] {
		padding-top: 160px;
	}

	section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_nur_unten"] {
		padding-bottom: 218px;
	}

	section.m84_header_startseite_2026 .m84_titel {
		font-size: 3.75rem;
		letter-spacing: -.15rem;
	}

	section.m84_header_startseite_2026 .m84_titel_zeile {
		margin-top: -9px;
		padding-top: 9px;
		padding-bottom: 5px;
	}

	section.m84_header_startseite_2026 .m84_titel_akzent::after {
		bottom: 7px;
		height: 3px;
	}

	section.m84_header_startseite_2026 .m84_trustbar_item {
		padding: 0 16px;
	}
}

@media screen and (max-width: 767px) {
	section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_oben_und_unten"] {
		padding-top: 136px;
		padding-bottom: 200px;
	}

	section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_nur_oben"] {
		padding-top: 136px;
	}

	section.m84_header_startseite_2026[data-innerer-abstand="innerer_abstand_nur_unten"] {
		padding-bottom: 200px;
	}

	section.m84_header_startseite_2026 .m84_titel {
		font-size: 2.875rem;
		letter-spacing: -.115rem;
	}

	section.m84_header_startseite_2026 .m84_titel_zeile {
		margin-top: -7px;
		padding-top: 7px;
		padding-bottom: 4px;
	}

	section.m84_header_startseite_2026 .m84_titel_akzent::after {
		bottom: 5px;
		height: 2px;
	}

	section.m84_header_startseite_2026 .m84_trustbar {
		margin-top: 44px;
	}
}

@media screen and (max-width: 575px) {
	section.m84_header_startseite_2026 .m84_pill {
		padding: 10px 12px 7px;
		font-size: .625rem;
		letter-spacing: .0375rem;
	}

	section.m84_header_startseite_2026 .m84_titel {
		font-size: 2.25rem;
		letter-spacing: -.09rem;
	}

	section.m84_header_startseite_2026 .m84_titel_zeile {
		margin-top: -5px;
		padding-top: 5px;
		padding-bottom: 3px;
	}

	section.m84_header_startseite_2026 .m84_titel_akzent::after {
		bottom: 4px;
		height: 2px;
	}

	section.m84_header_startseite_2026 .m84_button {
		padding: 20px 26px 16px;
		font-size: .9375rem;
	}

	section.m84_header_startseite_2026 .m84_trustbar_item {
		width: 50%;
		padding: 0 8px;
	}

	section.m84_header_startseite_2026 .m84_trustbar_item + .m84_trustbar_item {
		border-left: 0;
	}

	section.m84_header_startseite_2026 .m84_trustbar_text small {
		display: none;
	}
	
	section.m84_header_startseite_2026 .m84_trustbar_sterne {
		font-size: .75rem;
		letter-spacing: 0;
	}
}

@media screen and (max-width: 375px) {
	section.m84_header_startseite_2026 .m84_titel_zeile {
		margin-top: -5px;
		padding-top: 5px;
	}
	
	section.m84_header_startseite_2026 .m84_titel {
		font-size: 1.875rem;
		letter-spacing: -.075rem;
	}

	section.m84_header_startseite_2026 .m84_titel_akzent::after {
		left: 0;
		right: 0;
		bottom: 3px;
		height: 2px;
	}

	section.m84_header_startseite_2026 .m84_button {
		padding: 18px 20px 14px;
	}
}

@media screen and (max-width: 335px) {
	section.m84_header_startseite_2026 .m84_titel_zeile {
		margin-top: -4px;
		padding-top: 4px;
	}
	
	section.m84_header_startseite_2026 .m84_titel {
		font-size: 1.625rem;
		letter-spacing: -.065rem;
	}

	section.m84_header_startseite_2026 .m84_trustbar_item {
		width: 100%;
		justify-content: center;
	}
}

@media (prefers-reduced-motion: reduce) {
	section.m84_header_startseite_2026 *,
	section.m84_header_startseite_2026 *::before,
	section.m84_header_startseite_2026 *::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
	}
}
