/* ============================================================
   DISTLER Relaunch 2026: Header (Glas-Effekt)
   Quelle: distler-relaunch-entwurf.html (Token-System, Header-Block)
   Zustände:
     Standard     dunkles Glas über dem Hero, helle Schrift
     .is-scrolled helles Milchglas (ab data-scroll-offset)
     .is-light    Seite startet ohne dunklen Hero (JS-Erkennung)
     .is-open     Mobil-Panel geöffnet
   ============================================================ */

.dh-header {
	/* Marken-Tokens (Entwurf) */
	--dh-navy: #2B435D;
	--dh-navy-700: #223750;
	--dh-navy-tint: #EAEEF3;
	--dh-gold: #B69256;
	--dh-gold-soft: #CDAE78;
	--dh-text: #25303B;
	--dh-text-body: #4A5560;
	--dh-line: rgba(43, 67, 93, 0.12);
	--dh-ease: cubic-bezier(0.16, 1, 0.3, 1);
	--dh-dur: 280ms;
	--dh-font: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

	/* Maße: Container an die aktuellen BB-Rows angelehnt (1490px + 5 % Rand) */
	--dh-h: 84px;
	--dh-container: 1490px;
	--dh-pad: 5%;
	--dh-inset: 14px;

	/* Zustandsfarben: Standard = dunkles Glas */
	--dh-bg: rgba(19, 33, 47, 0.18);
	--dh-border: rgba(255, 255, 255, 0.14);
	--dh-shadow: none;
	--dh-blur: blur(16px) saturate(140%);
	--dh-fg: rgba(255, 255, 255, 0.92);
	--dh-fg-strong: #ffffff;
	--dh-fg-hover: #ffffff;
	--dh-accent: var(--dh-gold-soft);
	--dh-pill-fg: #ffffff;
	--dh-pill-border: rgba(255, 255, 255, 0.55);
	--dh-pill-bg: rgba(19, 33, 47, 0.8);
	--dh-pill-bg-hover: rgba(19, 33, 47, 0.95);

	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	box-sizing: border-box;
	font-family: var(--dh-font);
	overflow-wrap: normal;
	word-wrap: normal;
	word-break: normal;
	hyphens: manual;
	background: var(--dh-bg);
	-webkit-backdrop-filter: var(--dh-blur);
	backdrop-filter: var(--dh-blur);
	border-bottom: 1px solid var(--dh-border);
	box-shadow: var(--dh-shadow);
	transition:
		background var(--dh-dur) var(--dh-ease),
		border-color var(--dh-dur) var(--dh-ease),
		box-shadow var(--dh-dur) var(--dh-ease);
}
.dh-header *,
.dh-header *::before,
.dh-header *::after {
	box-sizing: border-box;
}
/* Schutz vor globalen Theme-/Plugin-Regeln (Listenpunkte, SVG-Füllungen) */
.dh-header ul,
.dh-header li {
	list-style: none;
	margin: 0;
	padding: 0;
}
.dh-header li::before,
.dh-header li::after,
.dh-header li::marker {
	content: none;
	display: none;
}
.dh-header svg,
.dh-header svg path,
.dh-header svg circle,
.dh-header svg line {
	fill: none !important;
}

/* Helles Milchglas */
.dh-header.is-scrolled,
.dh-header.is-light,
.dh-header.is-open,
body.dh-header-light .dh-header {
	--dh-bg: rgba(246, 245, 242, 0.72);
	--dh-border: var(--dh-line);
	--dh-blur: blur(18px) saturate(160%);
	--dh-fg: var(--dh-navy);
	--dh-fg-strong: var(--dh-navy);
	--dh-fg-hover: var(--dh-gold);
	--dh-accent: var(--dh-gold);
	--dh-pill-fg: var(--dh-navy);
	--dh-pill-border: rgba(43, 67, 93, 0.4);
	--dh-pill-bg: rgba(255, 255, 255, 0.75);
	--dh-pill-bg-hover: #ffffff;
}
.dh-header.is-scrolled {
	--dh-shadow: 0 8px 30px -18px rgba(43, 67, 93, 0.28);
}
.dh-header.is-open {
	--dh-bg: rgba(246, 245, 242, 0.96);
}

/* Fallback ohne backdrop-filter (alte Browser) */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
	.dh-header { --dh-bg: rgba(19, 33, 47, 0.85); }
	.dh-header.is-scrolled,
	.dh-header.is-light,
	.dh-header.is-open,
	body.dh-header-light .dh-header { --dh-bg: rgba(246, 245, 242, 0.97); }
}

/* WordPress-Adminleiste */
body.admin-bar .dh-header { top: 32px; }
@media (max-width: 782px) {
	body.admin-bar .dh-header { top: 46px; }
}

/* ---------- Layout ---------- */
.dh-header__inner {
	padding-inline: var(--dh-pad);
}
.dh-container {
	max-width: var(--dh-container);
	margin-inline: auto;
	padding-inline: var(--dh-inset);
}
.dh-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	height: var(--dh-h);
}

/* ---------- Logo (+ KI-Hinweis-Pill aus inc/ki-hinweis.php) ---------- */
.dh-brand-group {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	flex: 0 0 auto;
}
/* Eigener Hintergrund → Kontrast unabhängig vom Foto dahinter (immer ≥ 4,5:1) */
.dh-header .dh-brand-group .distler-ki-pill {
	color: var(--dh-pill-fg);
	border-color: var(--dh-pill-border);
	background: var(--dh-pill-bg);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	transition: color var(--dh-dur), border-color var(--dh-dur), background var(--dh-dur);
}
.dh-header .dh-brand-group .distler-ki-pill:hover,
.dh-header .dh-brand-group .distler-ki-pill:focus-visible {
	color: var(--dh-pill-fg);
	border-color: var(--dh-pill-fg);
	background: var(--dh-pill-bg-hover);
}
/* Im Header nur als Icon (Platz neben Menü, Telefon und CTA); Volltext steht im Footer-Block */
.dh-header .dh-brand-group .distler-ki-pill { padding: 0.3rem; }
.dh-header .dh-brand-group .distler-ki-pill span { display: none; }
.dh-brand {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	line-height: 0;
	text-decoration: none;
}
.dh-brand__logo {
	display: block;
	height: 46px;
	width: auto;
	max-width: none;
}
.dh-brand__logo--dark { display: none; }
.dh-header.is-scrolled .dh-brand__logo--light,
.dh-header.is-light .dh-brand__logo--light,
.dh-header.is-open .dh-brand__logo--light,
body.dh-header-light .dh-header .dh-brand__logo--light { display: none; }
.dh-header.is-scrolled .dh-brand__logo--dark,
.dh-header.is-light .dh-brand__logo--dark,
.dh-header.is-open .dh-brand__logo--dark,
body.dh-header-light .dh-header .dh-brand__logo--dark { display: block; }

/* ---------- Hauptnavigation (Desktop) ---------- */
.dh-menu {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	justify-content: center;
}
.dh-menu__list,
.dh-mobile__list,
.dh-sub {
	list-style: none;
	margin: 0;
	padding: 0;
}
.dh-menu__list {
	display: flex;
	align-items: center;
	gap: 1.6rem;
}
.dh-menu__list > li {
	position: relative;
	display: flex;
	align-items: center;
	height: var(--dh-h);
	margin: 0;
}
.dh-menu__list > li > a {
	position: relative;
	display: inline-block;
	padding: 0.3rem 0;
	font-size: 0.95rem;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.3;
	color: var(--dh-fg);
	text-decoration: none;
	white-space: nowrap;
	transition: color var(--dh-dur);
}
.dh-menu__list > li > a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -2px;
	height: 2px;
	background: var(--dh-accent);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform var(--dh-dur) var(--dh-ease);
}
.dh-menu__list > li:hover > a,
.dh-menu__list > li.is-open > a,
.dh-menu__list > li > a:focus-visible {
	color: var(--dh-fg-hover);
}
.dh-menu__list > li:hover > a::after,
.dh-menu__list > li.is-open > a::after,
.dh-menu__list > li > a:focus-visible::after,
.dh-menu__list > li.current-menu-item > a::after,
.dh-menu__list > li.current-menu-ancestor > a::after {
	transform: scaleX(1);
}

/* Toggle-Button (Pfeil): Reset gegen Theme-Button-Styles */
.dh-sub-toggle,
.dh-burger {
	appearance: none;
	-webkit-appearance: none;
	background: none;
	border: 0;
	border-radius: 6px;
	margin: 0;
	padding: 0;
	min-height: 0;
	line-height: 0;
	font: inherit;
	color: inherit;
	box-shadow: none;
	cursor: pointer;
}
.dh-sub-toggle:focus-visible,
.dh-burger:focus-visible,
.dh-header a:focus-visible {
	outline: 2px solid var(--dh-accent);
	outline-offset: 3px;
}
.dh-menu .dh-sub-toggle {
	display: inline-grid;
	place-items: center;
	width: 20px;
	height: 20px;
	margin-left: 0.3rem;
	color: var(--dh-accent);
}
.dh-menu .dh-sub-toggle svg {
	width: 13px;
	height: 13px;
	transition: transform var(--dh-dur) var(--dh-ease);
}
.dh-menu__list > li:hover > .dh-sub-toggle svg,
.dh-menu__list > li.is-open > .dh-sub-toggle svg,
.dh-menu__list > li:focus-within > .dh-sub-toggle svg {
	transform: rotate(180deg);
}

/* Dropdown */
.dh-menu .dh-sub {
	position: absolute;
	top: calc(100% - 6px);
	left: -0.85rem;
	z-index: 5;
	min-width: 252px;
	padding: 0.5rem;
	background: #ffffff;
	border: 1px solid var(--dh-line);
	border-radius: 14px;
	box-shadow:
		0 20px 56px -20px rgba(43, 67, 93, 0.28),
		0 4px 16px -8px rgba(43, 67, 93, 0.12);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition:
		opacity var(--dh-dur) var(--dh-ease),
		transform var(--dh-dur) var(--dh-ease),
		visibility 0s linear var(--dh-dur);
}
/* Hover-Brücke zwischen Menüpunkt und Karte */
.dh-menu .dh-sub::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 100%;
	height: 14px;
}
.dh-menu__list > li:nth-last-child(-n+2) > .dh-sub {
	left: auto;
	right: -0.85rem;
}
.dh-menu__list > li:hover > .dh-sub,
.dh-menu__list > li.is-open > .dh-sub,
.dh-menu__list > li:focus-within > .dh-sub {
	opacity: 1;
	visibility: visible;
	transform: none;
	transition-delay: 0s;
}
.dh-menu .dh-sub li {
	display: block;
	margin: 0;
}
.dh-menu .dh-sub a {
	display: block;
	padding: 0.6rem 0.9rem;
	border-radius: 9px;
	font-size: 0.93rem;
	font-weight: 500;
	line-height: 1.35;
	color: var(--dh-text);
	text-decoration: none;
	white-space: nowrap;
	transition: background var(--dh-dur), color var(--dh-dur);
}
.dh-menu .dh-sub a:hover,
.dh-menu .dh-sub a:focus-visible,
.dh-menu .dh-sub .current-menu-item > a {
	background: var(--dh-navy-tint);
	color: var(--dh-navy);
}

/* ---------- Megamenü (Desktop) ---------- */
.dh-menu__list > li.menu-item-has-children { position: static; }
.dh-menu .dh-mega {
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	z-index: 5;
	padding: 10px var(--dh-pad) 0;
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition:
		opacity var(--dh-dur) var(--dh-ease),
		transform var(--dh-dur) var(--dh-ease),
		visibility 0s linear var(--dh-dur);
}
/* Hover-Brücke zwischen Leiste und Panel */
.dh-menu .dh-mega::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 100%;
	height: 12px;
}
.dh-menu__list > li:hover > .dh-mega,
.dh-menu__list > li.is-open > .dh-mega,
.dh-menu__list > li:focus-within > .dh-mega {
	opacity: 1;
	visibility: visible;
	transform: none;
	transition-delay: 0s;
}
.dh-mega__inner {
	max-width: var(--dh-container);
	margin-inline: auto;
	display: grid;
	grid-template-columns: minmax(240px, 300px) 1fr;
	gap: 1.5rem 2rem;
	padding: 1.5rem;
	background: #ffffff;
	border: 1px solid var(--dh-line);
	border-radius: 18px;
	box-shadow:
		0 30px 72px -28px rgba(43, 67, 93, 0.34),
		0 12px 40px -16px rgba(43, 67, 93, 0.2);
}
.dh-mega__intro {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	padding-right: 2rem;
	border-right: 1px solid var(--dh-line);
}
.dh-mega__eyebrow {
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--dh-gold);
}
.dh-mega__heading {
	font-family: "Playfair Display", Georgia, "Times New Roman", serif;
	font-size: 1.45rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--dh-text);
	text-wrap: balance;
}
.dh-mega__text {
	font-size: 0.92rem;
	line-height: 1.55;
	color: var(--dh-text-body);
}
.dh-mega__link {
	margin-top: auto;
	padding-top: 0.75rem;
	display: inline-flex;
	align-items: center;
	gap: 0.4em;
	font-size: 0.88rem;
	font-weight: 600;
	color: var(--dh-navy);
	text-decoration: none;
	transition: color var(--dh-dur), gap var(--dh-dur);
}
.dh-mega__link:hover,
.dh-mega__link:focus-visible {
	color: var(--dh-gold);
	gap: 0.7em;
}
.dh-mega__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
	gap: 0.75rem;
	align-content: start;
}
/* Spaltenzahl = Anzahl Unterpunkte (dh-mega--n*), damit nichts umbricht */
.dh-mega--n1 .dh-mega__grid,
.dh-mega--n2 .dh-mega__grid,
.dh-mega--n3 .dh-mega__grid { grid-template-columns: repeat(3, minmax(0, 300px)); }
.dh-mega--n4 .dh-mega__grid { grid-template-columns: repeat(4, minmax(0, 280px)); }
.dh-mega--n5 .dh-mega__grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.dh-mega--n6 .dh-mega__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.dh-mega__grid > li { margin: 0; }
.dh-mega__card {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	height: 100%;
	padding: 0.5rem;
	border-radius: 14px;
	color: var(--dh-text);
	text-decoration: none;
	transition: background var(--dh-dur) var(--dh-ease);
}
.dh-mega__card:hover,
.dh-mega__card:focus-visible,
.dh-mega__item.current-menu-item > .dh-mega__card {
	background: var(--dh-navy-tint);
}
.dh-mega__media {
	display: block;
	position: relative;
	aspect-ratio: 16 / 10;
	border-radius: 10px;
	overflow: hidden;
	background: var(--dh-navy-tint);
}
/* Ohne Bild: ruhige Marken-Kachel (Verlauf + Goldpfeil) */
.dh-mega__media--empty {
	background: linear-gradient(135deg, var(--dh-navy) 0%, var(--dh-navy-700) 100%);
}
.dh-mega__media--empty::after {
	content: "→";
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	font-size: 1.6rem;
	color: var(--dh-gold-soft);
}
.dh-mega__media img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center 30%;
	transition: transform 600ms var(--dh-ease);
}
.dh-mega__card:hover .dh-mega__media img { transform: scale(1.04); }
.dh-mega__body {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	padding: 0 0.25rem 0.25rem;
}
.dh-mega__title {
	font-size: 0.98rem;
	font-weight: 600;
	line-height: 1.3;
	color: var(--dh-text);
	transition: color var(--dh-dur);
}
.dh-mega__card:hover .dh-mega__title { color: var(--dh-navy); }
.dh-mega__desc {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 0.86rem;
	line-height: 1.45;
	color: var(--dh-text-muted);
}
/* Intro als Kopfzeile, Karten darunter: unter 1500px für alle Panels … */
@media (max-width: 1499px) {
	.dh-mega__inner { grid-template-columns: 1fr; gap: 1rem; }
	.dh-mega__intro {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: baseline;
		gap: 0.35rem 1.25rem;
		padding: 0 0 0.85rem;
		border-right: 0;
		border-bottom: 1px solid var(--dh-line);
	}
	.dh-mega__heading { font-size: 1.2rem; }
	.dh-mega__text { flex: 1 1 260px; }
	.dh-mega__link { margin-top: 0; padding-top: 0; }
}
/* … und für Panels mit 6+ Karten immer (Karten sonst zu schmal für lange Titel) */
.dh-mega--stack .dh-mega__inner { grid-template-columns: 1fr; gap: 1rem; }
.dh-mega--stack .dh-mega__intro {
	flex-direction: row;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.35rem 1.25rem;
	padding: 0 0 0.85rem;
	border-right: 0;
	border-bottom: 1px solid var(--dh-line);
	}
.dh-mega--stack .dh-mega__heading { font-size: 1.2rem; }
.dh-mega--stack .dh-mega__text { flex: 1 1 260px; }
.dh-mega--stack .dh-mega__link { margin-top: 0; padding-top: 0; }

/* ---------- Rechte Seite: Telefon, CTA, Burger ---------- */
.dh-right {
	display: flex;
	align-items: center;
	gap: 1rem;
	flex: 0 0 auto;
}
.dh-phone {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--dh-fg-strong);
	text-decoration: none;
	white-space: nowrap;
	transition: color var(--dh-dur);
}
.dh-phone svg {
	width: 18px;
	height: 18px;
	flex: 0 0 auto;
	color: var(--dh-accent);
}
.dh-phone:hover,
.dh-phone:focus-visible {
	color: var(--dh-accent);
}
.dh-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.85em 1.7em;
	border-radius: 999px;
	border: 1.5px solid transparent;
	background: var(--dh-navy);
	color: #ffffff;
	font-size: 0.95rem;
	font-weight: 600;
	letter-spacing: 0.01em;
	line-height: 1.2;
	white-space: nowrap;
	text-decoration: none;
	box-shadow: 0 4px 16px -8px rgba(43, 67, 93, 0.12);
	transition:
		background var(--dh-dur) var(--dh-ease),
		transform var(--dh-dur) var(--dh-ease),
		box-shadow var(--dh-dur) var(--dh-ease);
}
.dh-cta:hover,
.dh-cta:focus-visible {
	background: var(--dh-navy-700);
	color: #ffffff;
	transform: translateY(-2px);
	box-shadow: 0 12px 40px -16px rgba(43, 67, 93, 0.2);
}
.dh-burger {
	display: none;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 5px;
	width: 44px;
	height: 44px;
	margin-right: -10px;
}
.dh-burger__bar {
	display: block;
	width: 24px;
	height: 2px;
	border-radius: 2px;
	background: var(--dh-fg-strong);
	transition:
		transform var(--dh-dur) var(--dh-ease),
		opacity var(--dh-dur),
		background var(--dh-dur);
}
.dh-header.is-open .dh-burger__bar:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.dh-header.is-open .dh-burger__bar:nth-child(2) { opacity: 0; }
.dh-header.is-open .dh-burger__bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ---------- Mobil-Panel ---------- */
.dh-mobile {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	max-height: calc(100vh - var(--dh-h));
	max-height: calc(100dvh - var(--dh-h));
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	background: #ffffff;
	border-top: 1px solid var(--dh-line);
	box-shadow: 0 24px 48px -24px rgba(43, 67, 93, 0.35);
	padding: 0.25rem var(--dh-pad) 1.5rem;
}
.dh-mobile[hidden] { display: none !important; }
.dh-mobile.is-open {
	display: block;
	animation: dh-panel-in var(--dh-dur) var(--dh-ease);
}
@keyframes dh-panel-in {
	from { opacity: 0; transform: translateY(-8px); }
	to   { opacity: 1; transform: none; }
}
.dh-mobile__list > li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 0;
	border-bottom: 1px solid var(--dh-line);
}
.dh-mobile__list > li > a {
	flex: 1 1 auto;
	padding: 1rem 0;
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.3;
	color: var(--dh-navy);
	text-decoration: none;
}
.dh-mobile__list > li.current-menu-item > a,
.dh-mobile__list > li.current-menu-ancestor > a,
.dh-mobile__list > li > a:hover {
	color: var(--dh-gold);
}
.dh-mobile .dh-sub-toggle {
	display: inline-grid;
	place-items: center;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	margin-right: -12px;
	color: var(--dh-navy);
}
.dh-mobile .dh-sub-toggle svg {
	width: 18px;
	height: 18px;
	transition: transform var(--dh-dur) var(--dh-ease);
}
.dh-mobile li.is-open > .dh-sub-toggle svg { transform: rotate(180deg); }
.dh-mobile .dh-sub {
	flex: 0 0 100%;
	display: none;
	padding: 0 0 0.75rem;
}
.dh-mobile li.is-open > .dh-sub { display: block; }
.dh-mobile .dh-sub li { margin: 0; }
.dh-mobile .dh-sub a {
	display: block;
	padding: 0.55rem 0 0.55rem 1rem;
	border-left: 2px solid var(--dh-navy-tint);
	font-size: 1rem;
	line-height: 1.4;
	color: var(--dh-text-body);
	text-decoration: none;
	transition: color var(--dh-dur), border-color var(--dh-dur);
}
.dh-mobile .dh-sub a:hover,
.dh-mobile .dh-sub .current-menu-item > a {
	color: var(--dh-navy);
	border-left-color: var(--dh-gold);
}
.dh-mobile__footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.85rem 1.5rem;
	padding-top: 1.25rem;
}
.dh-mobile__footer .dh-phone { color: var(--dh-navy); }
.dh-mobile__footer .dh-phone svg { color: var(--dh-gold); }

/* ---------- Responsive ----------
   Messwerte (Großbuchstaben-Labels): Menü ≈ 860px, Logo+Pill ≈ 200px,
   CTA ≈ 195px, Telefon ≈ 115px; Container max. 1490px. */
/* Telefon erst ab 1600px im Header (im Mobil-Panel immer sichtbar) */
@media (max-width: 1599px) {
	.dh-nav .dh-phone { display: none; }
	.dh-menu__list > li > a { font-size: 0.9rem; }
}
/* CTA erst ab 1400px im Header (im Mobil-Panel immer sichtbar) */
@media (max-width: 1399px) and (min-width: 1201px) {
	.dh-nav .dh-cta { display: none; }
}
/* 1201 bis 1399px: kompaktere Abstände */
@media (max-width: 1399px) and (min-width: 1201px) {
	.dh-menu__list { gap: 1.25rem; }
	.dh-brand__logo { height: 42px; }
}
/* Bis 1200px (BB-Large-Breakpoint): Burger + Panel */
@media (max-width: 1200px) {
	.dh-header { --dh-h: 72px; }
	.dh-menu { display: none; }
	.dh-burger { display: flex; }
	.dh-brand__logo { height: 40px; }
	.dh-nav .dh-cta { padding: 0.75em 1.4em; font-size: 0.9rem; }
}
@media (max-width: 480px) {
	.dh-header { --dh-h: 64px; --dh-inset: 6px; }
	.dh-brand__logo { height: 34px; }
	.dh-nav .dh-cta { padding: 0.7em 1.1em; font-size: 0.82rem; }
	.dh-nav { gap: 0.75rem; }
	.dh-right { gap: 0.5rem; }
}
@media (max-width: 380px) {
	.dh-nav .dh-cta { display: none; }
}

/* ---------- 6er-Panel auf schmalen Desktops: Titel dürfen nicht überlaufen ---------- */
@media (max-width: 1300px) {
	.dh-mega--stack .dh-mega__inner { padding: 1rem; }
	.dh-mega--stack .dh-mega__grid { gap: 0.5rem; }
	.dh-mega--stack .dh-mega__card { padding: 0.25rem; }
	.dh-mega--stack .dh-mega__title { font-size: 0.84rem; letter-spacing: -0.005em; }
	.dh-mega--stack .dh-mega__desc { font-size: 0.8rem; }
}

/* ---------- Hero unter dem fixierten Header: Startseiten-Foto nach unten versetzen ----------
   BB-Row 2sl7wqfrozev (Post 686) steht auf 30% 30%; auf breiten Monitoren schneidet das die
   Köpfe unter dem Header ab. Ab 1201px vertikal auf 8% (≤1200px behält BB 60% 20% / center). */
@media (min-width: 1201px) {
	.fl-node-2sl7wqfrozev > .fl-row-content-wrap { background-position: 30% 8%; }
}

/* ---------- Bewegung reduzieren / Druck ---------- */
@media (prefers-reduced-motion: reduce) {
	.dh-header,
	.dh-header *,
	.dh-header *::before,
	.dh-header *::after {
		transition: none !important;
		animation: none !important;
	}
}
@media print {
	.dh-header {
		position: static;
		background: #ffffff;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}
	.dh-brand__logo--light { display: none; }
	.dh-brand__logo--dark { display: block; }
	.dh-right,
	.dh-mobile { display: none !important; }
}
