/* GENERIERT aus der eingefrorenen ruhigen Markenstudie. Nicht manuell editieren. */

/* Zusätzliche Home-Bereiche für die ruhige Markenstudie. */
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.study-section { padding: 108px 0 118px; background: #fff; }
.study-section--surface { background: #f3f6f7; }
.study-head { display: grid; grid-template-columns: minmax(0,7fr) minmax(320px,5fr); align-items: end; gap: 60px; margin-bottom: 44px; }
.study-head h2 { margin: 0; font-size: 68px; font-weight: 680; line-height: .92; letter-spacing: -.055em; text-transform: uppercase; }
.study-head > p { max-width: 470px; margin: 0 0 4px; color: var(--muted); font-size: 14px; line-height: 1.65; }
.study-head__link { justify-self: end; color: var(--blue-dark); font-size: 11px; font-weight: 740; }

/* 03 Bestseller ----------------------------------------------------------- */
.study-bestsellers { background: #fff; }
.sb-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.sb-card { position: relative; display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #d6dfe3; background: #fff; transition: border-color .2s ease, transform .2s ease; }
.sb-card:hover { border-color: #9cabb4; transform: translateY(-3px); }
.sb-card__media { position: relative; height: 240px; overflow: hidden; background: radial-gradient(ellipse at 50% 64%, #fff 0%, #eef2f4 54%, #e1e7ea 100%); }
.sb-card__media img { width: 100%; height: 100%; object-fit: contain; padding: 6%; filter: drop-shadow(0 17px 12px rgba(17,31,41,.2)); transition: transform .3s ease; }
.sb-card:hover .sb-card__media img { transform: scale(1.025); }
.sb-card__badge { position: absolute; z-index: 2; top: 14px; left: 14px; padding: 6px 9px; background: #ff6e00; color: #fff; font-size: 8px; font-weight: 780; letter-spacing: .1em; text-transform: uppercase; }
.sb-card__body { display: flex; flex: 1; flex-direction: column; padding: 20px 20px 18px; border-top: 1px solid #dbe2e5; }
.sb-card__type { color: var(--blue-dark); font-size: 8px; font-weight: 770; letter-spacing: .1em; text-transform: uppercase; }
.sb-card h3 { margin: 10px 0 4px; font-size: 23px; letter-spacing: -.035em; }
.sb-card__variant { margin: 0; color: #667681; font-size: 10px; }
.sb-card__why { min-height: 58px; margin: 15px 0 0; color: #6c7b84; font-size: 10px; line-height: 1.48; }
.sb-card__specs { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 16px; }
.sb-card__specs div { padding: 9px 10px; background: #f5f7f8; }
.sb-card__specs span { display: block; color: #84919a; font-size: 7px; font-weight: 730; letter-spacing: .08em; text-transform: uppercase; }
.sb-card__specs strong { display: block; margin-top: 4px; font-size: 10px; }
.sb-card__foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 18px; }
.sb-card__price { font-size: 21px; font-weight: 760; letter-spacing: -.03em; }
.sb-card__price small { display: block; margin-top: 3px; color: #829099; font-size: 7px; font-weight: 550; letter-spacing: 0; }
.sb-card__actions { display: flex; gap: 6px; }
.sb-card__actions a { display: grid; place-items: center; min-height: 37px; padding: 0 11px; border: 1px solid #ced8dd; color: #243640; font-size: 8px; font-weight: 720; }
.sb-card__actions a:first-child { border-color: var(--blue); background: var(--blue); color: #fff; }
.sb-card__detail { margin-top: 13px; color: var(--blue-dark); font-size: 8px; font-weight: 690; line-height: 1.35; }

/* 04 Kaufwege ------------------------------------------------------------- */
.purchase-paths { background: #f3f6f7; }
.pp-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.pp-card { display: flex; flex-direction: column; min-height: 330px; padding: 27px; border: 1px solid #d6dfe3; background: #fff; }
.pp-card--primary { position: relative; overflow: hidden; border-color: #0c151d; background: #0b131a; color: #fff; }
.pp-card--primary::after { content: ""; position: absolute; top: -40%; right: -20%; width: 70%; aspect-ratio: 1; background: radial-gradient(circle,rgba(0,157,223,.22),transparent 68%); }
.pp-card > * { position: relative; z-index: 1; }
.pp-card__num { display: grid; place-items: center; width: 29px; height: 29px; border-radius: 50%; background: #e8f5fa; color: var(--blue-dark); font-size: 8px; font-weight: 780; }
.pp-card--primary .pp-card__num { background: rgba(255,255,255,.1); color: #74d7ff; }
.pp-card h3 { margin: 22px 0 10px; font-size: 23px; letter-spacing: -.035em; }
.pp-card p { margin: 0; color: #667681; font-size: 11px; line-height: 1.55; }
.pp-card--primary p { color: #aebcc5; }
.pp-card ul { display: grid; gap: 7px; margin: 18px 0; padding: 0; list-style: none; color: #566873; font-size: 9px; line-height: 1.4; }
.pp-card--primary ul { color: #cfdae0; }
.pp-card li::before { content: "✓"; margin-right: 7px; color: var(--blue-dark); font-weight: 800; }
.pp-card__cta { margin-top: auto; }
.pp-card__cta a,.pp-card__cta button { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 44px; border: 1px solid #cdd7dc; background: #fff; color: #182a34; font: 720 10px/1 var(--font); cursor: pointer; }
.pp-card--primary .pp-card__cta a { border-color: #fff; color: #12242f; }
.pp-code { display: flex; gap: 7px; margin-top: auto; }
.pp-code input { min-width: 0; flex: 1; height: 44px; padding: 0 12px; border: 1px solid #cdd7dc; font: 700 10px/1 var(--font); letter-spacing: .1em; text-transform: uppercase; }
.pp-code button { height: 44px; padding: 0 15px; border: 0; background: var(--blue); color: #fff; font: 720 9px/1 var(--font); cursor: pointer; }
.pp-utils { display: flex; align-items: center; gap: 7px; margin-top: 20px; }
.pp-utils > span { margin-right: 5px; color: #7e8c95; font-size: 8px; font-weight: 720; }
.pp-utils a { padding: 8px 10px; border: 1px solid #d7dfe3; color: #445660; font-size: 8px; font-weight: 680; }

/* Händler im neuen Flow --------------------------------------------------- */
.dealer-search { background: #fff !important; }

/* 06 Warum HAPERT --------------------------------------------------------- */
.trust-section { padding: 96px 0 104px; background: #f2f5f6; }
.trust-facts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-bottom: 40px; }
.trust-fact { padding: 22px; border: 1px solid #d6dfe3; background: #fff; }
.trust-fact strong { display: block; font-size: 29px; letter-spacing: -.045em; }
.trust-fact p { margin: 10px 0 0; color: #667680; font-size: 9px; line-height: 1.48; }
.trust-media { display: grid; grid-template-columns: minmax(280px,4fr) minmax(0,8fr); border: 1px solid #1c2932; background: #071018; color: #fff; }
.trust-media__copy { display: flex; flex-direction: column; justify-content: center; padding: 36px; border-right: 1px solid rgba(255,255,255,.13); }
.trust-media__copy span { color: #78d9ff; font-size: 8px; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.trust-media__copy h3 { margin: 15px 0 13px; font-size: 32px; line-height: 1; letter-spacing: -.04em; }
.trust-media__copy p { margin: 0; color: #aebcc5; font-size: 11px; line-height: 1.58; }
.trust-media__copy a { margin-top: 24px; color: #76d7ff; font-size: 9px; font-weight: 700; }
.trust-video { min-width: 0; padding: 20px; }
.trust-video__stage { position: relative; overflow: hidden; aspect-ratio: 16/9; background: #000; }
.trust-video__stage video { width: 100%; height: 100%; object-fit: cover; }
.trust-video__play { position: absolute; inset: 0; display: grid; place-items: center; border: 0; background: linear-gradient(0deg,rgba(0,0,0,.48),transparent 56%); cursor: pointer; }
.trust-video__play i { position: relative; width: 58px; height: 58px; border-radius: 50%; background: #fff; }
.trust-video__play i::after { content: ""; position: absolute; top: 50%; left: 54%; border-style: solid; border-width: 9px 0 9px 15px; border-color: transparent transparent transparent #071018; transform: translate(-50%,-50%); }
.trust-video__label { position: absolute; right: 15px; bottom: 13px; left: 15px; display: flex; justify-content: space-between; margin: 0; color: #fff; font-size: 9px; font-weight: 680; pointer-events: none; }
.trust-video__stage.is-playing .trust-video__play,.trust-video__stage.is-playing .trust-video__label { display: none; }
.trust-tests { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 6px; margin-top: 10px; }
.trust-test { min-width: 0; padding: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.15); background: #0d1820; color: #c5d1d7; cursor: pointer; text-align: left; }
.trust-test[aria-pressed="true"] { border-color: var(--blue); box-shadow: inset 0 -2px var(--blue); }
.trust-test img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.trust-test span { display: block; overflow: hidden; padding: 7px; font-size: 7px; font-weight: 680; text-overflow: ellipsis; white-space: nowrap; }

/* 08 Projekte ------------------------------------------------------------- */
.projects-section { background: #f2f5f6; }
.project-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.project-card { overflow: hidden; border: 1px solid #d5dee2; background: #fff; color: inherit; transition: transform .22s ease,border-color .22s ease; }
.project-card:hover { border-color: #9dacb4; transform: translateY(-3px); }
.project-card__media { height: 310px; overflow: hidden; }
.project-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.project-card:hover img { transform: scale(1.035); }
.project-card__body { padding: 17px 18px 20px; }
.project-card__chip { display: inline-flex; align-items: center; gap: 6px; color: #566973; font-size: 7px; font-weight: 760; letter-spacing: .08em; text-transform: uppercase; }
.project-card__chip i { width: 6px; height: 6px; border-radius: 50%; background: var(--blue); }
.project-card h3 { margin: 10px 0 6px; font-size: 19px; letter-spacing: -.025em; }
.project-card p { margin: 0; color: #74828b; font-size: 9px; line-height: 1.45; }

/* 09 Wissen --------------------------------------------------------------- */
.knowledge-section { background: #fff; }
.knowledge-layout { display: grid; grid-template-columns: minmax(0,8fr) minmax(330px,4fr); gap: 18px; }
.knowledge-articles { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.knowledge-card { display: flex; flex-direction: column; min-height: 205px; padding: 21px; border: 1px solid #d7dfe3; color: inherit; }
.knowledge-card__topic { color: var(--blue-dark); font-size: 8px; font-weight: 760; letter-spacing: .09em; text-transform: uppercase; }
.knowledge-card h3 { margin: 11px 0 8px; font-size: 18px; line-height: 1.15; letter-spacing: -.025em; }
.knowledge-card p { display: -webkit-box; margin: 0; overflow: hidden; color: #70808a; font-size: 10px; line-height: 1.5; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.knowledge-card__foot { display: flex; justify-content: space-between; margin-top: auto; padding-top: 15px; color: #839099; font-size: 8px; }
.knowledge-card__foot b { color: var(--blue-dark); }
.toolbox { padding: 22px; border: 1px solid #d6dfe3; background: #f4f7f8; }
.toolbox h3 { margin: 0; font-size: 21px; }
.toolbox > p { margin: 8px 0 17px; color: #71808a; font-size: 10px; line-height: 1.5; }
.toolbox__list { display: grid; gap: 7px; }
.tool-link { display: grid; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: 10px; min-height: 60px; padding: 8px 11px; border: 1px solid #d9e1e4; background: #fff; color: inherit; }
.tool-link__icon { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid #d9e1e4; color: var(--blue-dark); }
.tool-link__icon svg { width: 17px; height: 17px; }
.tool-link strong { display: block; font-size: 11px; }
.tool-link small { display: block; margin-top: 3px; color: #7b8992; font-size: 8px; line-height: 1.3; }
.tool-link em { color: var(--blue-dark); font-size: 15px; font-style: normal; }

@media (max-width: 1200px) {
	.study-head h2 { font-size: 58px; }
	.sb-card__body { padding-inline: 15px; }
	.sb-card__actions { flex-direction: column; }
	.pp-card { padding: 22px; }
	.trust-media { grid-template-columns: 340px minmax(0,1fr); }
}


@font-face {
			font-family: "Hapert Sans";
			src: url("/wp-content/themes/hapert/assets/fonts/inter-latin.woff2") format("woff2");
			font-style: normal;
			font-weight: 400 800;
			font-display: swap;
		}

		:root {
			--blue: #009ddf;
			--blue-dark: #0078b6;
			--blue-pale: #e8f6fc;
			--night: #061a2d;
			--night-2: #0d2740;
			--ink: #0b1116;
			--ink-2: #364550;
			--muted: #71808b;
			--line: #d7dde1;
			--line-dark: rgba(255,255,255,.22);
			--paper: #ffffff;
			--stage: #f1f3f4;
			--font: "Hapert Sans", Arial, Helvetica, sans-serif;
			--page: 1460px;
			--gutter: 44px;
		}

		* { box-sizing: border-box; }
		html { scroll-behavior: smooth; }
		body {
			min-width: 1180px;
			margin: 0;
			background: var(--paper);
			color: var(--ink);
			font-family: var(--font);
			-webkit-font-smoothing: antialiased;
		}
		img { display: block; max-width: 100%; }
		a { color: inherit; text-decoration: none; }
		button { font: inherit; }
		.study {
			position: fixed;
			z-index: 100;
			right: 18px;
			bottom: 18px;
			padding: 9px 12px;
			border: 1px solid rgba(255,255,255,.28);
			background: rgba(6,26,45,.88);
			color: #fff;
			font-size: 10px;
			font-weight: 750;
			letter-spacing: .12em;
			text-transform: uppercase;
			backdrop-filter: blur(10px);
		}
		.wrap { width: min(100%, var(--page)); margin-inline: auto; padding-inline: var(--gutter); }
		.kicker {
			display: flex;
			align-items: center;
			gap: 12px;
			margin: 0 0 18px;
			font-size: 11px;
			font-weight: 780;
			letter-spacing: .14em;
			text-transform: uppercase;
		}
		.kicker::before { content: ""; width: 42px; height: 3px; background: currentColor; }
		.btn {
			display: inline-flex;
			align-items: center;
			justify-content: space-between;
			gap: 34px;
			min-width: 190px;
			height: 54px;
			padding: 0 19px;
			border: 1px solid transparent;
			font-size: 13px;
			font-weight: 730;
		}
		.btn--blue { background: var(--blue); color: #fff; }
		.btn--white { background: #fff; color: var(--night); }
		.btn--line { border-color: rgba(255,255,255,.45); color: #fff; }
		.btn i { font-size: 17px; font-style: normal; font-weight: 400; }

		/* Header ------------------------------------------------------------ */
		.topline { height: 5px; background: var(--blue); }
		.header {
			position: relative;
			z-index: 10;
			height: 86px;
			border-bottom: 1px solid #e0e4e7;
			background: #fff;
		}
		.header__inner { display: flex; align-items: center; height: 100%; }
		.brand {
			display: flex;
			align-items: center;
			width: 215px;
		}
		.brand__logo { width: 168px; height: auto; }
		.nav { display: flex; align-items: stretch; align-self: stretch; margin-left: 34px; }
		.nav a {
			display: flex;
			align-items: center;
			padding: 0 18px;
			border-right: 1px solid transparent;
			border-left: 1px solid transparent;
			color: #3c4851;
			font-size: 13px;
			font-weight: 650;
		}
		.nav a:first-child { border-right-color: #e4e7e9; border-left-color: #e4e7e9; color: var(--blue-dark); }
		.header__right { display: flex; align-items: center; gap: 1px; margin-left: auto; }
		.header__right a {
			display: grid;
			place-items: center;
			height: 42px;
			padding-inline: 17px;
			border-left: 1px solid #e0e4e7;
			font-size: 11px;
			font-weight: 720;
		}
		.header__right .offer { margin-left: 12px; border: 0; background: var(--night); color: #fff; }

		/* Hero ------------------------------------------------------------- */
		.hero {
			position: relative;
			height: 690px;
			overflow: hidden;
			background: #fff;
			color: var(--ink);
		}
		.hero::before {
			content: "";
			position: absolute;
			inset: 0;
			border-bottom: 1px solid #dbe2e6;
			pointer-events: none;
		}
		.hero__grid { display: grid; grid-template-columns: 4.7fr 7.3fr; height: calc(100% - 86px); }
		.hero__copy {
			position: relative;
			z-index: 3;
			display: flex;
			flex-direction: column;
			justify-content: center;
			padding-right: 72px;
		}
		.hero .kicker { color: var(--blue-dark); }
		.hero h1 {
			margin: 0;
			color: var(--ink);
			font-size: 98px;
			font-weight: 740;
			line-height: .88;
			letter-spacing: -.03em;
			text-transform: uppercase;
		}
		.hero h1 span { 
			display: block; 
			color: var(--blue);
			margin-top: 4px;
			letter-spacing: -.075em;
		}
		.hero__lead {
			max-width: 510px;
			margin: 30px 0 32px;
			color: #52626e;
			font-size: 17px;
			line-height: 1.58;
		}
		.hero__actions { display: flex; align-items: center; gap: 25px; }
		.hero__actions--quiet { display: none; }
		.hero__textlink { color: var(--ink); font-size: 13px; font-weight: 730; }
		.hero__textlink:hover { color: var(--blue-dark); }
		.hero__stage {
			position: relative;
			align-self: stretch;
			margin-right: 0;
			border-left: 1px solid #d9e1e5;
			background: #eef3f5;
			color: var(--ink);
			isolation: isolate;
		}
		.hero__stage::before {
			content: "";
			position: absolute;
			z-index: 5;
			top: 0;
			bottom: 0;
			left: 0;
			width: 5px;
			background: var(--blue);
		}
		.hero__stage::after {
			content: "";
			position: absolute;
			z-index: 0;
			right: 15%;
			bottom: 14%;
			left: 15%;
			height: 7%;
			border-radius: 50%;
			background: rgba(7,19,28,.18);
			filter: blur(18px);
		}
		.hero__stage.has-photo::after { display: none; }
		.stage__top {
			position: absolute;
			z-index: 4;
			top: 0;
			right: 0;
			left: 0;
			display: flex;
			align-items: center;
			justify-content: space-between;
			height: 50px;
			padding: 0 34px;
			border-bottom: 1px solid #cbd2d6;
			background: #fff;
			font-size: 10px;
			font-weight: 770;
			letter-spacing: .13em;
			text-transform: uppercase;
		}
		.stage__switcher {
			position: absolute;
			z-index: 6;
			top: auto;
			right: 0;
			bottom: 0;
			left: 0;
			display: flex;
			align-items: stretch;
			justify-content: space-between;
			height: 64px;
			border-top: 1px solid #cbd2d6;
			border-bottom: 0;
			background: #fff;
		}
		.stage__tabs { display: flex; align-items: stretch; width: 100%; padding-left: 0; }
		.stage__tab {
			position: relative;
			flex: 1;
			height: 63px;
			padding: 0 15px;
			border-right: 1px solid #e0e4e7;
			border: 0;
			background: transparent;
			color: #6b7882;
			font-size: 11px;
			font-weight: 700;
			cursor: pointer;
		}
		.stage__tab b { margin-right: 6px; color: #a1abb2; font-size: 8px; letter-spacing: .08em; }
		.stage__tab::after {
			content: "";
			position: absolute;
			right: 10px;
			bottom: -1px;
			left: 10px;
			height: 3px;
			background: var(--blue);
			transform: scaleX(0);
			transition: transform .2s ease;
		}
		.stage__tab:hover { color: var(--ink); }
		.stage__tab[aria-pressed="true"] { color: var(--ink); }
		.stage__tab[aria-pressed="true"] b { color: var(--blue-dark); }
		.stage__tab[aria-pressed="true"]::after { transform: scaleX(1); }
		.stage__product {
			position: absolute;
			z-index: 2;
			right: 3%;
			top: 21%;
			width: 94%;
			height: 62%;
			object-fit: contain;
			filter: drop-shadow(0 33px 22px rgba(7,19,28,.35));
			opacity: 1;
			transform: translateY(0);
			transition: opacity .16s ease, transform .22s ease;
		}
		.hero__stage.has-photo .stage__product {
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			width: 100%;
			height: 100%;
			object-fit: cover;
			object-position: center;
			filter: none;
		}
		.hero__stage.has-photo .stage__shadow { display: none; }
		.hero__stage.has-render .stage__product {
			top: 10%;
			right: 8%;
			bottom: 10%;
			left: 8%;
			width: 84%;
			height: 80%;
			object-fit: contain;
			object-position: center;
			filter: drop-shadow(0 28px 19px rgba(7,19,28,.28));
		}
		.stage__product.is-changing { opacity: 0; transform: translateY(8px); }
		.stage__shadow {
			position: absolute;
			z-index: 1;
			right: 13%;
			bottom: 19%;
			left: 13%;
			height: 42px;
			border-radius: 50%;
			background: rgba(11,22,31,.25);
			filter: blur(23px);
		}
		.stage__bottom {
			position: absolute;
			z-index: 4;
			right: 0;
			bottom: 0;
			left: 0;
			display: grid;
			grid-template-columns: 1fr auto;
			align-items: end;
			gap: 20px;
			height: 96px;
			padding: 18px 34px 17px;
			border-top: 1px solid #cbd2d6;
			background: #fff;
		}
		.stage__name { font-size: 24px; font-weight: 740; letter-spacing: -.035em; }
		.stage__name small { display: block; margin-top: 4px; color: #687681; font-size: 11px; font-weight: 550; letter-spacing: 0; }
		.stage__specs { display: flex; gap: 22px; }
		.stage__specs div { text-align: right; }
		.stage__specs b { display: block; font-size: 14px; }
		.stage__specs small { color: #7a8790; font-size: 9px; text-transform: uppercase; }
		.hero__series-nav {
			position: absolute;
			z-index: 8;
			right: 0;
			bottom: 0;
			left: 0;
			height: 86px;
			border-top: 4px solid var(--blue);
			background: var(--night);
			color: #fff;
		}
		.hero__series-inner {
			display: grid;
			grid-template-columns: 175px minmax(0,1fr) 230px;
			height: 82px;
			padding-inline: var(--gutter);
		}
		.hero__series-label {
			display: flex;
			align-items: center;
			padding-left: 18px;
			border-right: 1px solid rgba(255,255,255,.17);
			color: #8ea0af;
			font-size: 9px;
			font-weight: 780;
			letter-spacing: .13em;
			text-transform: uppercase;
		}
		.hero__series-nav .stage__tabs {
			display: grid;
			grid-template-columns: repeat(4,1fr);
			width: 100%;
			padding: 0;
		}
		.hero__series-nav .stage__tab {
			position: relative;
			display: grid;
			grid-template-columns: auto 1fr;
			grid-template-rows: 1fr 1fr;
			align-items: end;
			column-gap: 10px;
			height: 82px;
			padding: 18px 16px 16px;
			border: 0;
			border-right: 1px solid rgba(255,255,255,.14);
			background: transparent;
			color: #fff;
			font-size: 13px;
			font-weight: 720;
			text-align: left;
			cursor: pointer;
		}
		.hero__series-nav .stage__tab b {
			grid-row: 1 / span 2;
			align-self: center;
			margin: 0;
			color: #6f8291;
			font-size: 9px;
			font-weight: 750;
			letter-spacing: .08em;
		}
		.hero__series-nav .stage__tab strong { align-self: end; font-size: 13px; }
		.hero__series-nav .stage__tab small { align-self: start; margin-top: 3px; color: #8496a5; font-size: 9px; font-weight: 500; }
		.hero__series-nav .stage__tab::after {
			content: "";
			position: absolute;
			right: 0;
			bottom: 0;
			left: 0;
			height: 4px;
			background: var(--blue);
			transform: scaleX(0);
			transform-origin: left;
			transition: transform .2s ease;
		}
		.hero__series-nav .stage__tab:hover { background: rgba(255,255,255,.055); }
		.hero__series-nav .stage__tab[aria-pressed="true"] { background: rgba(0,157,223,.1); }
		.hero__series-nav .stage__tab[aria-pressed="true"] b { color: #8edbfa; }
		.hero__series-nav .stage__tab[aria-pressed="true"] small { color: #b8c9d5; }
		.hero__series-nav .stage__tab[aria-pressed="true"]::after { transform: scaleX(1); }
		.hero__series-cta {
			display: flex;
			align-items: center;
			justify-content: space-between;
			padding: 0 21px;
			background: var(--blue);
			color: #fff;
			font-size: 12px;
			font-weight: 760;
		}
		.hero__series-cta:hover { background: var(--blue-dark); color: #fff; }
		.hero__series-cta b { font-size: 18px; font-weight: 400; }

		/* Ruhige Vergleichsrichtung: Stand zwei Iterationen zuvor. */
		.variant-quiet .hero {
			height: 730px;
		}
		.variant-quiet .hero::before { display: none; }
		.variant-quiet .hero__grid {
			display: grid;
			grid-template-columns: 1fr 1fr;
			height: calc(100% - 104px);
		}
		.variant-quiet .hero__copy {
			display: flex;
			flex-direction: column;
			justify-content: center;
			box-sizing: border-box;
			width: 100%;
			padding-right: 64px;
		}
		.stage__badge { display: none; }
		.variant-quiet .hero__stage {
			width: 100%;
			height: 100%;
			border-left: 1px solid #d9e1e5;
			position: relative;
		}
		.variant-quiet .hero__stage::before { display: none; }
		
		/* Hochwertiger Badge-CTA für die aktive Baureihe auf der Bühne */
		.variant-quiet .stage__badge {
			display: block;
			position: absolute;
			z-index: 10;
			bottom: 24px;
			left: 24px;
			opacity: 1;
			transform: translateY(0);
			transition: opacity .2s ease, transform .2s ease;
		}
		.variant-quiet .stage__badge.is-changing {
			opacity: 0;
			transform: translateY(8px);
		}
		.variant-quiet .stage__badge-link {
			display: inline-flex;
			align-items: center;
			gap: 10px;
			padding: 7px 11px;
			border: 1px solid rgba(255, 255, 255, 0.15);
			background: rgba(11, 17, 22, 0.65);
			backdrop-filter: blur(4px);
			-webkit-backdrop-filter: blur(4px);
			color: rgba(255, 255, 255, 0.9);
			font-size: 9px;
			font-weight: 650;
			letter-spacing: .15em;
			text-transform: uppercase;
			transition: all 0.2s ease;
		}
		.variant-quiet .stage__badge-link:hover {
			background: rgba(11, 17, 22, 0.85);
			border-color: rgba(255, 255, 255, 0.3);
			color: #fff;
		}
		.variant-quiet .stage__badge-link svg {
			transition: transform 0.25s ease;
		}
		.variant-quiet .stage__badge-link:hover svg {
			transform: translateX(4px);
		}
		.variant-quiet .hero__actions--sport { display: none; }
		.variant-quiet .hero__actions--quiet { display: flex; }
		.variant-quiet .hero__series-nav {
			position: absolute;
			right: 0;
			bottom: 0;
			left: 0;
			height: 104px;
			border-top: 1px solid #e2e7eb;
			border-bottom: 1px solid #e2e7eb;
			background: #fff;
			color: var(--ink);
		}
		.variant-quiet .hero__series-inner {
			display: block;
			height: 102px;
			padding-inline: var(--gutter);
		}
		.variant-quiet .hero__series-label,
		.variant-quiet .hero__series-cta { display: none; }
		.variant-quiet .hero__series-nav .stage__tabs {
			display: grid;
			grid-template-columns: repeat(4, 1fr);
			gap: 0;
			width: 100%;
			height: 102px;
			padding: 0;
			border: 0;
		}
		.variant-quiet .hero__series-nav .stage__tab {
			position: relative;
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			justify-content: center;
			height: 102px;
			padding: 16px 36px 20px 36px;
			border: 0;
			background: transparent;
			color: var(--ink);
			cursor: pointer;
			text-align: left;
			transition: background-color .2s ease, opacity .2s ease;
		}
		/* Trennlinie nur zwischen den Steuerelementen (nicht außen links oder rechts) */
		.variant-quiet .hero__series-nav .stage__tab:not(:last-child)::before {
			content: "";
			position: absolute;
			top: 24px;
			bottom: 24px;
			right: 0;
			width: 1px;
			background: #e2e7eb;
			pointer-events: none;
			z-index: 3;
		}
		.variant-quiet .hero__series-nav .stage__tab:first-child {
			padding-left: 28px;
			padding-right: 36px;
		}
		.variant-quiet .hero__series-nav .stage__tab:last-child {
			padding-left: 36px;
			padding-right: 28px;
		}
		.variant-quiet .hero__series-nav .stage__tab b,
		.variant-quiet .hero__series-nav .stage__tab strong,
		.variant-quiet .hero__series-nav .stage__tab small {
			grid-row: auto;
			align-self: auto;
		}
		.variant-quiet .hero__series-nav .stage__tab-header {
			display: flex;
			align-items: baseline;
			gap: 9px;
			line-height: 1;
		}
		.variant-quiet .hero__series-nav .stage__tab b {
			display: inline-flex;
			align-items: baseline;
			margin: 0;
			border: 0;
			border-radius: 0;
			background: transparent;
			color: #9aa7b2;
			font-size: 12px;
			font-weight: 750;
			letter-spacing: .08em;
			line-height: 1;
			transition: color .2s ease;
		}
		.variant-quiet .hero__series-nav .stage__tab b::after {
			content: "/";
			margin-left: 9px;
			color: #cbd5dc;
			font-weight: 400;
		}
		.variant-quiet .hero__series-nav .stage__tab strong {
			display: inline-block;
			margin: 0;
			color: #1a2228;
			font-size: 23px;
			font-weight: 730;
			letter-spacing: -.03em;
			line-height: 1;
			transition: color .2s ease;
		}
		.variant-quiet .hero__series-nav .stage__tab small {
			position: static;
			display: block;
			transform: none;
			margin: 7px 0 0;
			color: #7b8b97;
			font-size: 11px;
			font-weight: 550;
			letter-spacing: .03em;
			line-height: 1.25;
			text-transform: none;
			white-space: nowrap;
			transition: color .2s ease;
		}
		/* Statische Basis-Linie: ebenfalls vollflächig von Kante zu Kante */
		.variant-quiet .hero__series-nav .stage__tab::after {
			content: "";
			position: absolute;
			z-index: 1;
			right: 0;
			bottom: -1px;
			left: 0;
			height: 2px;
			background: #e5eaee;
			transform: none;
			transition: background-color .2s ease;
		}
		.variant-quiet .hero__series-nav .stage__tab:first-child::after {
			left: 0;
			right: 0;
		}
		.variant-quiet .hero__series-nav .stage__tab:last-child::after {
			left: 0;
			right: 0;
		}
		/* Aktiver Fortschrittsbalken: von ganz links nach rechts durchlaufend ohne Abstand */
		.variant-quiet .hero__series-nav .stage__tab-indicator {
			position: absolute;
			z-index: 2;
			right: 0;
			bottom: -1px;
			left: 0;
			height: 2px;
			background: var(--blue);
			transform: scaleX(0);
			transform-origin: left;
			transition: transform .2s ease;
			pointer-events: none;
		}
		.variant-quiet .hero__series-nav .stage__tab:first-child .stage__tab-indicator {
			left: 0;
			right: 0;
		}
		.variant-quiet .hero__series-nav .stage__tab:last-child .stage__tab-indicator {
			left: 0;
			right: 0;
		}
		.variant-quiet .hero__series-nav .stage__tab.is-running .stage__tab-indicator {
			animation: quietTabProgress var(--quiet-duration, 9500ms) linear forwards;
			animation-play-state: running;
		}
		.variant-quiet .hero__series-nav.is-paused .stage__tab.is-running .stage__tab-indicator {
			animation-play-state: paused;
		}
		@keyframes quietTabProgress {
			from { transform: scaleX(0); }
			to { transform: scaleX(1); }
		}
		.variant-quiet .hero__series-nav .stage__tab:hover {
			background: rgba(11, 17, 22, .02);
		}
		.variant-quiet .hero__series-nav .stage__tab:hover strong {
			color: #000;
		}
		.variant-quiet .hero__series-nav .stage__tab:hover small {
			color: #4a5c68;
		}
		.variant-quiet .hero__series-nav .stage__tab[aria-pressed="true"] {
			background: #f4f6f8;
			color: var(--ink);
		}
		.variant-quiet .hero__series-nav .stage__tab[aria-pressed="true"] b {
			border: 0;
			background: transparent;
			color: var(--blue);
		}
		.variant-quiet .hero__series-nav .stage__tab[aria-pressed="true"] b::after {
			color: #9ecae0;
		}
		.variant-quiet .hero__series-nav .stage__tab[aria-pressed="true"] strong {
			color: #050b0f;
		}
		.variant-quiet .hero__series-nav .stage__tab[aria-pressed="true"] small {
			color: #2b3b46;
			font-weight: 600;
		}
		.variant-quiet .hero__series-nav .stage__tab[aria-pressed="true"]:not(.is-running) .stage__tab-indicator {
			transform: scaleX(1);
		}

		/* 01 Purpose finder ------------------------------------------------- */
		.purpose { padding: 120px 0 132px; background: #fff; }
		.section-head {
			display: grid;
			grid-template-columns: 7fr 5fr;
			align-items: end;
			gap: 60px;
			margin-bottom: 56px;
		}
		.section-head h2 {
			margin: 0;
			font-size: 78px;
			font-weight: 690;
			line-height: .92;
			letter-spacing: -.06em;
			text-transform: uppercase;
		}
		.section-head p {
			max-width: 475px;
			margin: 0 0 7px;
			color: var(--muted);
			font-size: 15px;
			line-height: 1.65;
		}
		.purpose-grid {
			display: grid;
			grid-template-columns: repeat(4, 1fr);
			grid-template-rows: 260px 260px;
			gap: 1px;
			padding: 1px;
			background: var(--line);
		}
		.purpose-card {
			position: relative;
			display: flex;
			flex-direction: column;
			justify-content: flex-end;
			overflow: hidden;
			padding: 24px;
			background: #f4f5f6;
		}
		.purpose-card--image { grid-column: span 2; grid-row: span 2; padding: 0; }
		.purpose-card--blue { background: var(--blue); color: #fff; }
		.purpose-card--dark { background: var(--night); color: #fff; }
		.purpose-card__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(.8) contrast(1.07); }
		.purpose-card--image::after { content: ""; position: absolute; inset: 0; background: rgba(6,26,45,.38); }
		.purpose-card__index { position: absolute; top: 20px; left: 22px; font-size: 10px; font-weight: 760; letter-spacing: .1em; }
		.purpose-card__icon { position: absolute; top: 23px; right: 24px; color: var(--blue); font-size: 30px; font-weight: 350; }
		.purpose-card--blue .purpose-card__icon, .purpose-card--dark .purpose-card__icon { color: #fff; }
		.purpose-card h3 { position: relative; z-index: 2; margin: 0; font-size: 25px; letter-spacing: -.035em; }
		.purpose-card p { position: relative; z-index: 2; margin: 8px 0 0; color: #71808a; font-size: 12px; line-height: 1.45; }
		.purpose-card--image h3 { color: #fff; font-size: 34px; }
		.purpose-card--image p, .purpose-card--blue p, .purpose-card--dark p { color: rgba(255,255,255,.72); }
		.purpose-card__line { position: absolute; right: 0; bottom: 0; left: 0; height: 4px; background: var(--blue); transform-origin: left; }

		/* 02 Kompakt-Konfigurator ------------------------------------------- */
		.quick-config { padding: 120px 0 132px; background: #f6f8f9; }
		.quick-config .section-head { margin-bottom: 48px; }
		.qc {
			display: grid;
			grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
			min-height: 660px;
			border: 1px solid #d9e0e4;
			background: #fff;
		}
		.qc__controls {
			position: relative;
			display: flex;
			flex-direction: column;
			padding: 38px 42px 40px;
		}
		.qc__progress {
			display: grid;
			grid-template-columns: auto 1fr auto;
			align-items: center;
			gap: 13px;
			margin-bottom: 34px;
			color: #94a1aa;
			font-size: 9px;
			font-weight: 780;
			letter-spacing: .13em;
			text-transform: uppercase;
		}
		.qc__progress i { height: 1px; background: #dce2e6; }
		.qc__progress span { transition: color .2s ease; }
		.qc__progress span.is-active,
		.qc__progress span.is-done { color: var(--blue-dark); }
		.qc__step + .qc__step { margin-top: 30px; }
		.qc__stephead {
			display: flex;
			align-items: baseline;
			gap: 13px;
			margin-bottom: 14px;
		}
		.qc__stephead span {
			color: var(--blue-dark);
			font-size: 10px;
			font-weight: 780;
			letter-spacing: .12em;
		}
		.qc__stephead h3 {
			margin: 0;
			font-size: 19px;
			font-weight: 700;
			letter-spacing: -.025em;
		}
		.qc__series {
			display: grid;
			grid-template-columns: 1fr 1fr;
			border-top: 1px solid #dce2e6;
			border-left: 1px solid #dce2e6;
		}
		.qc__series button {
			position: relative;
			display: grid;
			grid-template-columns: auto minmax(0, 1fr) 92px;
			align-items: center;
			gap: 11px;
			min-height: 104px;
			padding: 13px 12px 13px 14px;
			border: 0;
			border-right: 1px solid #dce2e6;
			border-bottom: 1px solid #dce2e6;
			background: #fff;
			color: var(--ink);
			cursor: pointer;
			text-align: left;
			transition: background-color .18s ease;
		}
		.qc__series button::after {
			content: "";
			position: absolute;
			right: 0;
			bottom: -1px;
			left: 0;
			height: 2px;
			background: var(--blue);
			transform: scaleX(0);
			transform-origin: left;
			transition: transform .2s ease;
		}
		.qc__series button:hover { background: #f8fafb; }
		.qc__series button[aria-pressed="true"] { background: #f1f4f6; }
		.qc__series button[aria-pressed="true"]::after { transform: scaleX(1); }
		.qc__series b {
			color: #9aa8b1;
			font-size: 9px;
			letter-spacing: .1em;
		}
		.qc__series strong { display: block; font-size: 15px; letter-spacing: -.02em; }
		.qc__series small { display: block; margin-top: 3px; color: #7d8b95; font-size: 9px; }
		.qc__series-art {
			display: grid;
			place-items: center;
			width: 92px;
			height: 58px;
			color: #536771;
			opacity: .92;
			transform: translateY(0);
			transition: color .2s ease, opacity .2s ease, transform .2s ease;
		}
		.qc__series-art svg { width: 100%; height: 100%; overflow: visible; }
		.qc__series-art .qc-art__body {
			fill: #f0f4f6;
			stroke: currentColor;
		}
		.qc__series-art .qc-art__line {
			fill: none;
			stroke: currentColor;
		}
		.qc__series-art .qc-art__hub { fill: var(--blue); stroke: none; }
		.qc__series button[aria-pressed="true"] .qc__series-art {
			color: #263843;
			opacity: 1;
			transform: translateY(-2px);
		}
		.qc__series button[aria-pressed="true"] .qc__series-art .qc-art__body { fill: #fff; }
		.qc__axes {
			display: grid;
			grid-template-columns: repeat(3, 1fr);
			gap: 8px;
		}
		.qc__axis {
			display: flex;
			flex-direction: column;
			align-items: center;
			justify-content: center;
			min-height: 88px;
			padding: 9px 8px 8px;
			border: 1px solid #d8dfe3;
			background: #fff;
			color: var(--ink);
			cursor: pointer;
			transition: border-color .18s ease, background-color .18s ease, color .18s ease;
		}
		.qc__axis:hover { border-color: #9fb4c1; }
		.qc__axis[aria-pressed="true"] {
			border-color: var(--blue);
			background: var(--blue);
			color: #fff;
		}
		.qc__axis[hidden] { display: none; }
		.qc__axis-art {
			width: min(100%, 104px);
			height: 35px;
			margin-bottom: 4px;
			color: #63747e;
		}
		.qc__axis-art svg { width: 100%; height: 100%; overflow: visible; }
		.qc__axis-art .qc-art__frame { fill: none; stroke: currentColor; }
		.qc__axis-art .qc-art__wheel { fill: #fff; stroke: currentColor; }
		.qc__axis-art .qc-art__hub { fill: var(--blue); }
		.qc__axis strong { font-size: 11px; font-weight: 730; }
		.qc__axis small {
			margin-top: 2px;
			color: #8a979f;
			font-size: 8px;
			font-weight: 600;
			letter-spacing: .06em;
			text-transform: uppercase;
		}
		.qc__axis[aria-pressed="true"] .qc__axis-art { color: #fff; }
		.qc__axis[aria-pressed="true"] .qc__axis-art .qc-art__wheel { fill: var(--blue); }
		.qc__axis[aria-pressed="true"] .qc__axis-art .qc-art__hub { fill: #fff; }
		.qc__axis[aria-pressed="true"] small { color: rgba(255,255,255,.76); }
		.qc__summary {
			display: grid;
			grid-template-columns: 1fr auto;
			align-items: center;
			gap: 20px;
			margin-top: auto;
			padding-top: 24px;
			border-top: 1px solid #dce2e6;
		}
		.qc__summary[hidden] { display: none; }
		.qc__summary-copy span {
			display: block;
			color: #7a8993;
			font-size: 9px;
			font-weight: 760;
			letter-spacing: .12em;
			text-transform: uppercase;
		}
		.qc__summary-copy strong {
			display: block;
			margin-top: 7px;
			font-size: 14px;
			font-weight: 680;
		}
		.qc__cta {
			display: inline-flex;
			align-items: center;
			justify-content: space-between;
			gap: 28px;
			min-width: 188px;
			height: 50px;
			padding: 0 17px;
			background: var(--blue);
			color: #fff;
			font-size: 12px;
			font-weight: 730;
			transition: background-color .2s ease;
		}
		.qc__cta:hover { background: var(--blue-dark); }
		.qc__cta span { font-size: 17px; font-weight: 400; }
		.qc__note {
			margin: 13px 0 0;
			color: #87949d;
			font-size: 9px;
			line-height: 1.5;
		}
		.qc__stage {
			position: relative;
			min-width: 0;
			overflow: hidden;
			border-left: 1px solid #d9e0e4;
			background-color: #eef2f4;
			background-image:
				linear-gradient(rgba(26,55,72,.035) 1px, transparent 1px),
				linear-gradient(90deg, rgba(26,55,72,.035) 1px, transparent 1px);
			background-size: 32px 32px;
			isolation: isolate;
		}
		.qc__stage::before {
			content: "";
			position: absolute;
			z-index: -1;
			top: 8%;
			right: 7%;
			width: 330px;
			height: 330px;
			border: 1px solid rgba(0,120,182,.12);
			border-radius: 50%;
		}
		.qc__stage-index {
			position: absolute;
			z-index: -1;
			top: -28px;
			right: 22px;
			color: rgba(0,157,223,.18);
			font-size: 205px;
			font-weight: 800;
			line-height: 1;
			letter-spacing: -.12em;
			user-select: none;
		}
		.qc__image {
			position: absolute;
			z-index: 2;
			top: 3%;
			right: 3%;
			width: 94%;
			height: 72%;
			object-fit: contain;
			filter: drop-shadow(0 28px 20px rgba(12,25,34,.24));
			opacity: 1;
			transform: translateY(0);
			transition: opacity .18s ease, transform .22s ease;
		}
		.qc__image.is-changing { opacity: 0; transform: translateY(7px); }
		.qc__stage-meta {
			position: absolute;
			z-index: 3;
			right: 0;
			bottom: 0;
			left: 0;
			display: grid;
			grid-template-columns: minmax(180px, 1.35fr) 1fr 1fr;
			min-height: 126px;
			border-top: 1px solid #d6dde1;
			background: rgba(255,255,255,.96);
		}
		.qc__stage-meta > div {
			display: flex;
			flex-direction: column;
			justify-content: center;
			padding: 20px 24px;
			border-right: 1px solid #dce2e6;
		}
		.qc__stage-meta > div:last-child { border-right: 0; }
		.qc__stage-meta span {
			color: #7e8d97;
			font-size: 9px;
			font-weight: 730;
			letter-spacing: .1em;
			text-transform: uppercase;
		}
		.qc__stage-meta strong {
			margin-top: 7px;
			font-size: 19px;
			font-weight: 700;
			line-height: 1.15;
			letter-spacing: -.025em;
		}
		.qc__stage-meta small {
			margin-top: 5px;
			color: #667681;
			font-size: 10px;
		}

		/* 03 Händlersuche --------------------------------------------------- */
		.dealer-search { padding: 124px 0 132px; background: #fff; }
		.dealer-search .section-head { margin-bottom: 48px; }
		.dealer-locator {
			display: grid;
			grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
			min-height: 650px;
			border: 1px solid #d9e0e4;
			background: #fff;
		}
		.dealer-locator__panel {
			display: flex;
			flex-direction: column;
			min-width: 0;
			padding: 38px 42px 34px;
		}
		.dealer-locator__progress {
			display: grid;
			grid-template-columns: auto 1fr auto;
			align-items: center;
			gap: 13px;
			margin-bottom: 34px;
			color: #91a0aa;
			font-size: 9px;
			font-weight: 780;
			letter-spacing: .13em;
			text-transform: uppercase;
		}
		.dealer-locator__progress i { height: 1px; background: #dce2e6; }
		.dealer-locator__progress span:first-child,
		.dealer-locator__progress span.is-active { color: var(--blue-dark); }
		.dealer-locator__label {
			display: flex;
			align-items: baseline;
			gap: 13px;
			margin-bottom: 14px;
		}
		.dealer-locator__label span {
			color: var(--blue-dark);
			font-size: 10px;
			font-weight: 780;
			letter-spacing: .12em;
		}
		.dealer-locator__label h3 {
			margin: 0;
			font-size: 19px;
			font-weight: 700;
			letter-spacing: -.025em;
		}
		.dealer-locator__search {
			display: grid;
			grid-template-columns: minmax(0, 1fr) 58px;
			height: 58px;
			border: 1px solid #cfd8dd;
			background: #fff;
			transition: border-color .18s ease, box-shadow .18s ease;
		}
		.dealer-locator__search:focus-within {
			border-color: var(--blue);
			box-shadow: inset 0 0 0 1px var(--blue);
		}
		.dealer-locator__input {
			display: grid;
			grid-template-columns: 42px minmax(0, 1fr);
			align-items: center;
			min-width: 0;
		}
		.dealer-locator__input svg {
			justify-self: center;
			width: 17px;
			height: 17px;
			color: #61737e;
		}
		.dealer-locator__input input {
			width: 100%;
			height: 56px;
			padding: 0 12px 0 0;
			border: 0;
			outline: 0;
			background: transparent;
			color: var(--ink);
			font: 650 14px/1 var(--font);
		}
		.dealer-locator__input input::placeholder { color: #8c99a2; font-weight: 500; }
		.dealer-locator__submit {
			display: grid;
			place-items: center;
			border: 0;
			background: var(--blue);
			color: #fff;
			font-size: 19px;
			cursor: pointer;
			transition: background-color .18s ease;
		}
		.dealer-locator__submit:hover { background: var(--blue-dark); }
		.dealer-locator__submit:disabled { cursor: wait; opacity: .68; }
		.dealer-locator__geo {
			display: inline-flex;
			align-items: center;
			align-self: flex-start;
			gap: 8px;
			margin-top: 11px;
			padding: 0;
			border: 0;
			background: transparent;
			color: #687983;
			font-size: 10px;
			font-weight: 650;
			cursor: pointer;
		}
		.dealer-locator__geo:hover { color: var(--blue-dark); }
		.dealer-locator__geo svg { width: 13px; height: 13px; }
		.dealer-locator__status {
			display: flex;
			align-items: center;
			gap: 9px;
			min-height: 20px;
			margin: 28px 0 11px;
			color: #71808a;
			font-size: 10px;
			font-weight: 620;
		}
		.dealer-locator__status::before {
			content: "";
			flex: 0 0 auto;
			width: 6px;
			height: 6px;
			border-radius: 50%;
			background: var(--blue);
		}
		.dealer-results {
			margin: 0;
			padding: 0;
			border-top: 1px solid #dce2e6;
			list-style: none;
		}
		.dealer-result {
			position: relative;
			display: grid;
			grid-template-columns: minmax(0, 1fr) auto;
			align-items: stretch;
			border-bottom: 1px solid #dce2e6;
			background: #fff;
			transition: background-color .18s ease;
		}
		.dealer-result:hover,
		.dealer-result.is-active { background: #f3f6f7; }
		.dealer-result.is-active::before {
			content: "";
			position: absolute;
			top: -1px;
			bottom: -1px;
			left: 0;
			width: 3px;
			background: var(--blue);
		}
		.dealer-result__main {
			display: grid;
			grid-template-columns: 28px minmax(0, 1fr) auto;
			align-items: center;
			gap: 11px;
			min-width: 0;
			min-height: 91px;
			padding: 13px 8px 13px 14px;
			border: 0;
			background: transparent;
			color: var(--ink);
			cursor: pointer;
			text-align: left;
		}
		.dealer-result__num {
			align-self: start;
			padding-top: 4px;
			color: #9aa7af;
			font-size: 9px;
			font-weight: 780;
			letter-spacing: .08em;
		}
		.dealer-result__copy { min-width: 0; }
		.dealer-result__type {
			display: block;
			margin-bottom: 5px;
			color: var(--blue-dark);
			font-size: 8px;
			font-weight: 780;
			letter-spacing: .1em;
			text-transform: uppercase;
		}
		.dealer-result__copy strong {
			display: block;
			overflow: hidden;
			font-size: 13px;
			font-weight: 700;
			letter-spacing: -.015em;
			text-overflow: ellipsis;
			white-space: nowrap;
		}
		.dealer-result__copy small {
			display: block;
			overflow: hidden;
			margin-top: 5px;
			color: #72818b;
			font-size: 9px;
			text-overflow: ellipsis;
			white-space: nowrap;
		}
		.dealer-result__distance {
			color: #42525c;
			font-size: 10px;
			font-weight: 720;
			white-space: nowrap;
		}
		.dealer-result__route {
			display: grid;
			place-items: center;
			width: 46px;
			border-left: 1px solid #e0e5e8;
			color: var(--blue-dark);
			font-size: 16px;
		}
		.dealer-locator__footer {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 20px;
			margin-top: auto;
			padding-top: 24px;
			color: #7b8992;
			font-size: 9px;
		}
		.dealer-locator__footer a {
			color: var(--blue-dark);
			font-size: 11px;
			font-weight: 730;
		}
		.dealer-map-shell {
			position: relative;
			min-width: 0;
			min-height: 650px;
			overflow: hidden;
			border-left: 1px solid #d9e0e4;
			background-color: #eaf0f2;
			background-image:
				linear-gradient(rgba(26,55,72,.035) 1px, transparent 1px),
				linear-gradient(90deg, rgba(26,55,72,.035) 1px, transparent 1px);
			background-size: 32px 32px;
		}
		.dealer-map {
			position: absolute;
			inset: 0;
			z-index: 1;
			background: transparent;
			font-family: var(--font);
		}
		.dealer-map .leaflet-tile { max-width: none !important; }
		.dealer-map .leaflet-tile-pane { filter: grayscale(.2) saturate(.7) contrast(.98); }
		.dealer-map__count {
			position: absolute;
			z-index: 500;
			top: 22px;
			left: 22px;
			display: flex;
			align-items: center;
			gap: 9px;
			padding: 9px 11px;
			border: 1px solid rgba(35,57,70,.14);
			background: rgba(255,255,255,.94);
			color: #566771;
			font-size: 9px;
			font-weight: 720;
			letter-spacing: .08em;
			text-transform: uppercase;
			pointer-events: none;
		}
		.dealer-map__count b { color: var(--ink); }
		.dealer-map__count i {
			width: 6px;
			height: 6px;
			border-radius: 50%;
			background: var(--blue);
		}
		.dealer-hapert-icon {
			filter: drop-shadow(0 4px 6px rgba(6,26,45,.24));
			transition: filter .18s ease, transform .18s ease;
		}
		.dealer-hapert-icon:hover {
			filter: drop-shadow(0 6px 9px rgba(6,26,45,.3));
			transform: translateY(-1px);
		}
		.dealer-position {
			width: 15px;
			height: 15px;
			border: 4px solid #fff;
			border-radius: 50%;
			background: var(--night);
			box-shadow: 0 0 0 1px rgba(6,26,45,.22), 0 4px 12px rgba(6,26,45,.2);
		}
		.dealer-map .leaflet-control-zoom {
			overflow: hidden;
			border: 1px solid rgba(35,57,70,.15);
			border-radius: 0;
			box-shadow: none;
		}
		.dealer-map .leaflet-control-zoom a {
			width: 34px;
			height: 34px;
			border-bottom-color: #e0e5e8;
			color: #2d3e48;
			font: 400 18px/32px var(--font);
		}
		.dealer-map .leaflet-control-attribution {
			background: rgba(255,255,255,.84);
			color: #82909a;
			font-size: 8px;
		}
		.dealer-map .leaflet-popup-content-wrapper {
			border: 0;
			border-radius: 0;
			box-shadow: 0 14px 35px rgba(6,26,45,.18);
		}
		.dealer-map .leaflet-popup-content { margin: 14px 16px; line-height: 1.35; }
		.dealer-map .gm-style { font-family: var(--font); }
		.dealer-map .gm-style .gm-style-iw-c {
			padding: 0 !important;
			border-radius: 0;
			box-shadow: 0 14px 35px rgba(6,26,45,.18);
		}
		.dealer-map .gm-style .gm-style-iw-d { overflow: auto !important; }
		.dealer-map .gm-style .gm-style-iw-d > div { padding: 14px 16px; }
		.dealer-map .gm-style .gm-style-iw-tc { display: none; }
		.dealer-popup__type {
			display: block;
			margin-bottom: 5px;
			color: var(--blue-dark);
			font-size: 8px;
			font-weight: 780;
			letter-spacing: .1em;
			text-transform: uppercase;
		}
		.dealer-popup strong { display: block; max-width: 210px; font-size: 13px; }
		.dealer-popup small { display: block; margin-top: 5px; color: #71808a; font-size: 9px; }
		.dealer-popup__loading {
			display: block;
			margin-top: 10px;
			padding-top: 9px;
			border-top: 1px solid #e1e6e8;
			color: #7a8992;
			font-size: 9px;
		}
		.dealer-popup__contact {
			display: grid;
			gap: 7px;
			margin-top: 11px;
			padding-top: 10px;
			border-top: 1px solid #e1e6e8;
		}
		.dealer-popup__contact a {
			display: grid;
			grid-template-columns: 45px minmax(0, 1fr);
			gap: 8px;
			color: var(--ink);
			font-size: 10px;
			font-weight: 650;
		}
		.dealer-popup__contact span {
			color: #81909a;
			font-size: 8px;
			font-weight: 700;
			letter-spacing: .07em;
			text-transform: uppercase;
		}
		.dealer-popup__actions {
			display: flex;
			gap: 14px;
			margin-top: 12px;
			padding-top: 9px;
			border-top: 1px solid #e1e6e8;
		}
		.dealer-popup__actions a {
			color: var(--blue-dark);
			font-size: 9px;
			font-weight: 740;
		}

		/* 04 Go Black ------------------------------------------------------- */
		.black-edition {
			position: relative;
			overflow: hidden;
			padding: 78px 0 86px;
			background: #05090d;
			color: #fff;
			isolation: isolate;
		}
		.black-edition::before {
			content: "";
			position: absolute;
			z-index: -2;
			top: -42px;
			right: -8%;
			width: 61%;
			height: 350px;
			background:
				linear-gradient(90deg, #05090d 0%, rgba(5,9,13,.78) 28%, rgba(5,9,13,.1) 100%),
				url("/wp-content/themes/hapert/assets/img/go-black/go-black-hero.webp") center/cover no-repeat;
			opacity: .25;
			filter: saturate(.82) contrast(1.08);
		}
		.black-edition::after {
			content: "";
			position: absolute;
			z-index: -1;
			inset: 0;
			background:
				radial-gradient(circle at 87% 18%, rgba(0,157,223,.12), transparent 24%),
				linear-gradient(180deg, transparent 60%, rgba(0,0,0,.2));
			pointer-events: none;
		}
		.black-intro {
			display: grid;
			grid-template-columns: minmax(0, 7fr) minmax(320px, 5fr);
			align-items: end;
			gap: 40px;
			margin-bottom: 30px;
		}
		.black-intro .kicker { color: #85dcff; }
		.black-intro h2 {
			margin: 0;
			max-width: 780px;
			font-size: 68px;
			font-weight: 680;
			line-height: .92;
			letter-spacing: -.062em;
			text-transform: uppercase;
			text-wrap: balance;
		}
		.black-intro h2 span { display: block; color: #b9c4ca; }
		.black-intro__copy {
			max-width: 510px;
			margin: 0 0 3px;
			color: #b8c4cb;
			font-size: 14px;
			line-height: 1.62;
		}
		.black-intro__copy strong {
			display: block;
			margin-bottom: 13px;
			color: #fff;
			font-size: 11px;
			font-weight: 760;
			letter-spacing: .11em;
			text-transform: uppercase;
		}
		.black-stage {
			display: grid;
			grid-template-columns: minmax(0, 7fr) minmax(380px, 5fr);
			min-height: 430px;
			border: 1px solid rgba(255,255,255,.17);
			background: #080d11;
		}
		.black-stage__visual {
			position: relative;
			min-width: 0;
			min-height: 430px;
			overflow: hidden;
			margin: 0;
			border-right: 1px solid rgba(255,255,255,.17);
			background: #060a0d;
		}
		.black-stage__visual::after {
			content: "";
			position: absolute;
			inset: 0;
			background:
				linear-gradient(90deg, rgba(3,6,9,.12), transparent 58%),
				linear-gradient(0deg, rgba(3,6,9,.48), transparent 34%);
			pointer-events: none;
		}
		.black-stage__visual img {
			width: 100%;
			height: 100%;
			object-fit: cover;
			opacity: 1;
			transform: scale(1);
			transition: opacity .22s ease, transform .45s cubic-bezier(.2,.75,.25,1);
		}
		.black-stage__visual img.is-changing { opacity: .18; transform: scale(1.018); }
		.black-stage__counter {
			position: absolute;
			z-index: 2;
			top: 24px;
			left: 26px;
			padding: 8px 10px;
			border: 1px solid rgba(255,255,255,.2);
			background: rgba(3,7,10,.62);
			color: #fff;
			font-size: 9px;
			font-weight: 750;
			letter-spacing: .14em;
		}
		.black-stage__caption {
			position: absolute;
			z-index: 2;
			bottom: 24px;
			left: 27px;
			color: rgba(255,255,255,.68);
			font-size: 8px;
			font-weight: 700;
			letter-spacing: .13em;
			text-transform: uppercase;
		}
		.black-stage__copy {
			display: flex;
			flex-direction: column;
			min-width: 0;
			padding: 30px 31px 25px;
			background:
				linear-gradient(140deg, rgba(255,255,255,.72), transparent 52%),
				#e9eef1;
			color: var(--ink);
		}
		.black-stage__eyebrow {
			color: var(--blue-dark);
			font-size: 9px;
			font-weight: 780;
			letter-spacing: .15em;
			text-transform: uppercase;
		}
		.black-stage__copy h3 {
			margin: 11px 0 12px;
			font-size: 34px;
			font-weight: 650;
			line-height: .98;
			letter-spacing: -.045em;
		}
		.black-stage__copy > p {
			margin: 0;
			color: #51616b;
			font-size: 13px;
			line-height: 1.6;
		}
		.black-stage__facts {
			display: grid;
			grid-template-columns: 1fr 1fr;
			margin-top: 19px;
			border-top: 1px solid #c9d2d7;
			border-bottom: 1px solid #c9d2d7;
		}
		.black-stage__facts > div {
			padding: 13px 13px 14px 0;
			border-right: 1px solid #c9d2d7;
		}
		.black-stage__facts > div + div { padding-left: 18px; border-right: 0; }
		.black-stage__facts span {
			display: block;
			color: #75858f;
			font-size: 8px;
			font-weight: 730;
			letter-spacing: .11em;
			text-transform: uppercase;
		}
		.black-stage__facts strong {
			display: block;
			margin-top: 7px;
			font-size: 11px;
			font-weight: 680;
		}
		.black-stage__actions {
			display: flex;
			align-items: center;
			gap: 22px;
			margin-top: auto;
			padding-top: 19px;
		}
		.black-stage__actions .btn { min-width: 205px; height: 48px; }
		.black-stage__link {
			color: #263943;
			font-size: 11px;
			font-weight: 700;
		}
		.black-stage__note {
			margin-top: 11px;
			color: #6d7e88;
			font-size: 8px;
			line-height: 1.5;
		}
		.black-tabs {
			display: grid;
			grid-template-columns: repeat(4, 1fr);
			border-right: 1px solid rgba(255,255,255,.17);
			border-bottom: 1px solid rgba(255,255,255,.17);
			border-left: 1px solid rgba(255,255,255,.17);
		}
		.black-tab {
			position: relative;
			display: grid;
			grid-template-columns: 28px minmax(0, 1fr);
			align-items: center;
			gap: 13px;
			min-height: 70px;
			padding: 12px 16px;
			border: 0;
			border-right: 1px solid rgba(255,255,255,.17);
			background: #080d11;
			color: #8e9ca5;
			cursor: pointer;
			text-align: left;
			transition: background-color .2s ease, color .2s ease;
		}
		.black-tab:last-child { border-right: 0; }
		.black-tab::before {
			content: "";
			position: absolute;
			top: -1px;
			right: 0;
			left: 0;
			height: 3px;
			background: var(--blue);
			transform: scaleX(0);
			transform-origin: left;
			transition: transform .25s ease;
		}
		.black-tab:hover { background: #0b1217; color: #dce4e8; }
		.black-tab[aria-selected="true"] { background: #f2f5f6; color: var(--ink); }
		.black-tab[aria-selected="true"]::before { transform: scaleX(1); }
		.black-tab b {
			align-self: start;
			padding-top: 2px;
			color: #5d707b;
			font-size: 9px;
			letter-spacing: .08em;
		}
		.black-tab[aria-selected="true"] b { color: #69d4ff; }
		.black-tab strong { font-size: 12px; font-weight: 670; line-height: 1.25; }
		.black-tab:focus-visible {
			z-index: 2;
			outline: 2px solid var(--blue);
			outline-offset: -3px;
		}

		/* Dark Performance Cockpit ----------------------------------------- */
		.black-edition {
			padding: 90px 0 98px;
			background: #03070a;
		}
		.black-edition::before {
			top: -50px;
			width: 63%;
			height: 400px;
			opacity: .2;
			filter: saturate(.72) contrast(1.15);
		}
		.black-edition::after {
			background:
				radial-gradient(circle at 92% 16%, rgba(0,157,223,.13), transparent 25%),
				linear-gradient(90deg, transparent 0 72%, rgba(0,157,223,.025)),
				linear-gradient(180deg, transparent 52%, rgba(0,0,0,.3));
		}
		.black-intro {
			gap: 48px;
			margin-bottom: 38px;
		}
		.black-intro h2 {
			max-width: 820px;
			font-size: 73px;
			line-height: .91;
		}
		.black-intro h2 span { color: #aeb9c0; }
		.black-intro__copy { color: #9cabb4; }
		.black-stage {
			position: relative;
			grid-template-columns: minmax(0, 7.35fr) minmax(390px, 4.65fr);
			min-height: 500px;
			border-color: #26333a;
			background: #060b0f;
			box-shadow: 0 30px 70px rgba(0,0,0,.3);
		}
		.black-stage::before {
			content: "";
			position: absolute;
			z-index: 4;
			top: -1px;
			left: -1px;
			width: 116px;
			height: 3px;
			background: var(--blue);
		}
		.black-stage__visual {
			min-height: 500px;
			border-right-color: #26333a;
			background: #05090c;
		}
		.black-stage__visual img { filter: saturate(.84) contrast(1.08); }
		.black-stage__visual::after {
			background:
				linear-gradient(90deg, rgba(1,4,6,.16), transparent 58%),
				linear-gradient(0deg, rgba(1,4,6,.58), transparent 38%);
		}
		.black-stage__copy {
			position: relative;
			overflow: hidden;
			padding: 37px 35px 30px;
			border-left: 1px solid rgba(0,157,223,.22);
			background:
				linear-gradient(145deg, rgba(255,255,255,.035), transparent 42%),
				linear-gradient(180deg, #0c1319, #080e13);
			color: #fff;
		}
		.black-stage__copy::before {
			content: attr(data-index);
			position: absolute;
			top: -28px;
			right: 17px;
			color: rgba(255,255,255,.035);
			font-size: 155px;
			font-weight: 800;
			line-height: 1;
			letter-spacing: -.11em;
			pointer-events: none;
		}
		.black-stage__copy > * { position: relative; z-index: 1; }
		.black-stage__eyebrow { color: #69d4ff; }
		.black-stage__copy h3 {
			margin: 14px 0 15px;
			color: #fff;
			font-size: 39px;
		}
		.black-stage__copy > p { color: #a8b6be; line-height: 1.65; }
		.black-stage__facts {
			margin-top: 25px;
			border-color: rgba(255,255,255,.13);
			background: rgba(255,255,255,.018);
		}
		.black-stage__facts > div {
			padding: 15px 14px 16px 0;
			border-color: rgba(255,255,255,.13);
		}
		.black-stage__facts span { color: #70838f; }
		.black-stage__facts strong { color: #f1f5f7; }
		.black-stage__actions { padding-top: 25px; }
		.black-stage__link { color: #c9d4da; }
		.black-stage__note { margin-top: 14px; color: #71828c; }
		.black-tabs {
			border-color: #26333a;
			background: #05090c;
		}
		.black-tab {
			min-height: 78px;
			padding: 14px 18px;
			border-right-color: #26333a;
			background: #060b0f;
			color: #758690;
		}
		.black-tab:hover { background: #0a1218; color: #dbe4e8; }
		.black-tab[aria-selected="true"] {
			background:
				linear-gradient(180deg, rgba(0,157,223,.065), transparent),
				#10171d;
			color: #fff;
		}
		.black-tab[aria-selected="true"] b { color: #69d4ff; }

/* Responsive Layer — wird nach allen Komponentenstyles geladen. */
:root {
	--gutter: clamp(16px, 4vw, 44px);
	--section-y: clamp(64px, 8vw, 120px);
	--touch-min: 44px;
}
body { min-width: 0; overflow-x: clip; }
.study { display: none; }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
[id] { scroll-margin-top: 84px; }
:where(a[href], button, input, select, textarea, [tabindex]):focus-visible {
	outline: 3px solid var(--blue);
	outline-offset: 3px;
}
.section-head > *, .study-head > *, .black-intro > * { min-width: 0; }
.section-head h2, .study-head h2, .black-intro h2 {
	overflow-wrap: anywhere;
	-webkit-hyphens: auto;
	hyphens: auto;
}

@media (max-width: 1200px) {
	.header { height: 76px; }
	.brand { width: 185px; }
	.brand__logo { width: 154px; }
	.nav { margin-left: 14px; }
	.nav a { padding-inline: 11px; font-size: 12px; }
	.header__right a { padding-inline: 12px; }
	.hero h1 { font-size: clamp(68px, 8vw, 90px); }
	.section-head h2 { font-size: clamp(54px, 6.2vw, 72px); }
	.study-head h2 { font-size: clamp(52px, 6vw, 66px); }
}

@media (max-width: 1024px) {
	.header { position: sticky; top: 0; z-index: 900; height: 72px; padding-top: env(safe-area-inset-top); }
	.header__inner { gap: 12px; }
	.nav { display: none; }
	.header__right { margin-left: auto; }
	.header__right > a:not(.offer) { display: none; }
	.header__right .offer { min-height: var(--touch-min); margin-left: 0; }

	.hero, .variant-quiet .hero { height: auto; min-height: 0; }
	.hero__grid, .variant-quiet .hero__grid { grid-template-columns: 1fr; grid-template-rows: auto minmax(430px, 55vw); height: auto; }
	.hero__copy { min-height: 470px; padding: 72px 0 58px; }
	.hero__stage { border-top: 1px solid #d9e1e5; border-left: 0; }
	.hero__series-nav, .variant-quiet .hero__series-nav { position: relative; height: auto; }
	.hero__series-inner, .variant-quiet .hero__series-inner { grid-template-columns: 1fr; padding-inline: var(--gutter); }
	.hero__series-label, .variant-quiet .hero__series-label { display: none; }
	.stage__tabs { overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: none; scroll-snap-type: x mandatory; }
	.stage__tabs::-webkit-scrollbar { display: none; }
	.stage__tab { min-width: 220px; min-height: 90px; scroll-snap-align: start; }
	.hero__series-cta { display: none; }

	.section-head, .study-head, .black-intro { grid-template-columns: 1fr; gap: 24px; }
	.section-head > p, .study-head > p, .black-intro__copy { max-width: 62ch; }
	.purpose, .quick-config, .dealer-search, .study-section, .black-edition { padding-block: var(--section-y); }
	.purpose-grid { grid-template-columns: 1fr 1fr; grid-template-rows: repeat(3, 230px); }
	.purpose-card--image { grid-column: 1/-1; grid-row: span 1; }

	.qc, .dealer-locator { grid-template-columns: 1fr; min-height: 0; }
	.qc__stage, .dealer-map-shell { min-height: 460px; border-left: 0; border-bottom: 1px solid #d9e0e4; }
	.qc__stage { order: -1; }
	.qc__controls, .dealer-locator__panel { min-height: 580px; }

	.sb-grid { grid-template-columns: 1fr 1fr; }
	.pp-grid { grid-template-columns: 1fr; }
	.pp-card { min-height: 290px; }
	.pp-utils { flex-wrap: wrap; }
	.trust-facts { grid-template-columns: 1fr 1fr; }
	.trust-media { grid-template-columns: 1fr; }
	.trust-media__copy { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.13); }
	.black-stage { grid-template-columns: 1fr; }
	.black-stage__visual { border-right: 0; border-bottom: 1px solid #26333a; }
	.black-stage__copy { min-height: 430px; border-left: 0; }
	.project-grid { grid-template-columns: 1fr 1fr; }
	.project-card:last-child { grid-column: 1/-1; }
	.knowledge-layout { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
	html { scroll-behavior: smooth; }
	.topline { height: 3px; }
	.header { height: calc(64px + env(safe-area-inset-top)); }
	.brand { width: auto; }
	.brand__logo { width: 136px; }
	.header__right .offer { padding-inline: 13px; font-size: 10px; }
	.wrap { padding-inline: var(--gutter); }

	.hero__grid, .variant-quiet .hero__grid { grid-template-rows: auto 330px; }
	.hero__copy { min-height: 0; padding: 48px 0 42px; }
	.hero h1 { font-size: clamp(48px, 15vw, 68px); line-height: .9; }
	.hero__lead { margin: 22px 0 26px; font-size: 16px; }
	.hero__actions { flex-wrap: wrap; gap: 14px; }
	.hero__actions .btn { width: 100%; min-width: 0; }
	.hero__textlink, .stage__badge-link, .sb-card__detail,
	.dealer-locator__geo, .dealer-locator__footer a,
	.trust-media__copy > a, .study-head__link {
		display: inline-flex !important;
		align-items: center;
		min-height: var(--touch-min);
	}
	.stage__badge-link span, .stage__tab b, .stage__tab small,
	.qc__series button b, .qc__series button small,
	.qc__axis strong, .qc__axis small,
	.sb-card__actions a, .sb-card__detail,
	.pp-card__cta a, .pp-card__cta button, .pp-code input, .pp-code button, .pp-utils a,
	.dealer-locator__geo, .dealer-locator__footer a,
	.trust-test span, .black-stage__link, .black-tab strong,
	.project-card p, .knowledge-card p, .knowledge-card__foot,
	.tool-link strong, .tool-link small, .study-head__link {
		font-size: 12px;
	}
	.stage__tab { min-width: 185px; padding: 15px; }
	.stage__tab small { font-size: 9px; }
	.stage__badge { bottom: 16px; left: 18px; }

	.section-head, .study-head { margin-bottom: 32px; }
	.section-head h2, .study-head h2 { font-size: clamp(38px, 11vw, 54px); }
	.purchase-paths .study-head h2 { font-size: clamp(34px, 9.5vw, 42px); }
	.kicker { margin-bottom: 13px; font-size: 10px; }
	.purpose-grid { display: grid; grid-template-columns: 1fr; grid-template-rows: none; gap: 1px; }
	.purpose-card, .purpose-card--image { grid-column: auto; grid-row: auto; min-height: 190px; }
	.purpose-card--image { min-height: 290px; }

	.qc__stage { min-height: 430px; }
	.qc__image { top: 1%; height: 58%; }
	.qc__stage-index { top: 5px; right: 15px; font-size: 120px; }
	.qc__stage-meta { grid-template-columns: 1fr 1fr; min-height: 166px; }
	.qc__stage-meta > div { padding: 13px 15px; }
	.qc__stage-meta > div:first-child { grid-column: 1/-1; border-bottom: 1px solid #dce2e6; }
	.qc__stage-meta strong { font-size: 16px; }
	.qc__controls { min-height: 0; padding: 28px 20px 30px; }
	.qc__series { grid-template-columns: 1fr; }
	.qc__series button { min-height: 94px; }
	.qc__summary { grid-template-columns: 1fr; }
	.qc__cta { width: 100%; min-width: 0; }

	.sb-grid, .project-grid, .knowledge-articles { grid-template-columns: 1fr; }
	.sb-card__media { height: 260px; }
	.sb-card__why { min-height: 0; font-size: 12px; line-height: 1.55; }
	.sb-card__actions a { min-height: var(--touch-min); }
	.pp-card { min-height: 270px; padding: 23px; }
	.pp-card p { font-size: 12px; }
	.pp-code { flex-direction: column; }
	.pp-code input, .pp-code button { width: 100%; min-height: var(--touch-min); }
	.pp-utils { display: grid; grid-template-columns: 1fr 1fr; }
	.pp-utils > span { grid-column: 1/-1; }
	.pp-utils a { min-height: var(--touch-min); display: grid; place-items: center; text-align: center; }

	.dealer-map-shell { min-height: 320px; }
	.dealer-locator__panel { min-height: 0; padding: 26px 20px 28px; }
	.dealer-locator__search { height: 54px; }
	.dealer-result__main { min-height: 84px; }
	.dealer-result__route { width: 52px; }
	.dealer-locator__footer { margin-top: 30px; }
	.dealer-locator__status { font-size: 12px; }

	.trust-facts { grid-template-columns: 1fr 1fr; }
	.trust-fact { padding: 18px; }
	.trust-fact p, .trust-media__copy p { font-size: 12px; }
	.trust-media__copy { padding: 27px; }
	.trust-video { padding: 12px; }
	.trust-tests { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
	.trust-tests::-webkit-scrollbar { display: none; }
	.trust-test { flex: 0 0 130px; scroll-snap-align: start; min-height: var(--touch-min); }
	.trust-test span { font-size: 10px; }

	.black-edition { padding-block: 72px 78px; }
	.black-intro h2 { font-size: clamp(42px, 12vw, 60px); }
	.black-stage__visual { min-height: 330px; }
	.black-stage__copy { min-height: 410px; padding: 28px 24px 25px; }
	.black-stage__copy h3 { font-size: 32px; }
	.black-stage__actions { flex-direction: column; align-items: stretch; }
	.black-stage__actions .btn { width: 100%; }
	.black-stage__link { min-height: var(--touch-min); display: flex; align-items: center; }
	.black-tabs { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
	.black-tabs::-webkit-scrollbar { display: none; }
	.black-tab { flex: 0 0 190px; min-height: 74px; scroll-snap-align: start; }

	.project-card:last-child { grid-column: auto; }
	.project-card__media { height: 250px; }
	.knowledge-card { min-height: 185px; }
	.toolbox { padding: 18px; }
	.toolbox > p { font-size: 12px; }
	.tool-link { min-height: 66px; }
	.stage__tab small, .trust-test span, .trust-media__copy > a { font-size: 12px; }
	.purpose-card__index { font-size: 11px; }
	.sb-card__badge, .project-card__chip, .knowledge-card__topic { font-size: 10px; }
}

@media (max-width: 480px) {
	:root { --gutter: 16px; }
	.header__right .offer { font-size: 0; width: 46px; padding: 0; }
	.header__right .offer::after { content: "↗"; font-size: 18px; }
	.hero__grid, .variant-quiet .hero__grid { grid-template-rows: auto 275px; }
	.hero__copy { padding-top: 38px; }
	.hero h1 { font-size: 48px; }
	.hero__lead { font-size: 15px; }
	.stage__tab { flex-basis: 160px; min-width: 160px; }
	.purpose-card h3 { font-size: 23px; }
	.qc__axes { grid-template-columns: 1fr; }
	.qc__axis { min-height: 76px; }
	.qc__progress { gap: 8px; }
	.qc__stage-meta { font-size: 9px; }
	.trust-facts { grid-template-columns: 1fr; }
	.trust-media__copy h3 { font-size: 27px; }
	.black-stage__facts { grid-template-columns: 1fr; }
	.black-stage__facts > div, .black-stage__facts > div + div { padding: 12px 0; border-right: 0; }
	.black-stage__facts > div + div { border-top: 1px solid rgba(255,255,255,.13); }
	.pp-utils { grid-template-columns: 1fr; }
	.study-head__link { justify-self: start; }
}

@media (min-width: 600px) and (max-width: 768px) {
	.purpose-grid { grid-template-columns: 1fr 1fr; }
	.purpose-card--image { grid-column: 1/-1; }
	.sb-grid, .project-grid, .knowledge-articles { grid-template-columns: 1fr 1fr; }
	.project-card:last-child { grid-column: 1/-1; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto !important; }
	*, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
	.sb-card:hover, .project-card:hover { transform: none !important; }
}

@supports (padding: env(safe-area-inset-bottom)) {
	.header { padding-left: env(safe-area-inset-left); padding-right: env(safe-area-inset-right); }
}


/* Produktive iOS-Eingabegröße: verhindert Safari-Autozoom, ohne die Referenzkomposition zu verändern. */
@media (max-width: 768px) {
	.pp-code input, .dealer-locator__input input { font-size: 16px; }
}
