/* HW Landingpages 1.45.0 – mobiles Menü im CD. Wirkt nur mit body.hw-navm (Modul Navigation, Schalter „Mobiles Menü“). */
@font-face { font-family: "HW Barlow Condensed"; src: url(fonts/barlow-condensed-latin-600-normal.woff2) format("woff2"); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: "HW Barlow Condensed"; src: url(fonts/barlow-condensed-latin-700-normal.woff2) format("woff2"); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: "HW Barlow"; src: url(fonts/barlow-latin-400-normal.woff2) format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }

body.hw-navm #mobile-navigation {
	--hw-m-anth: #263039;
	--hw-m-anth2: #2F3B46;
	--hw-m-cream: #FBF2ED;
	--hw-m-text: #EDE6E0;
	--hw-m-muted: #D3CBC4;
	--hw-m-brown: #B08E75;
	--hw-m-brown-light: #CDAE95;
	--hw-m-line: rgba(251, 242, 237, 0.12);
	--hw-m-display: "HW Barlow Condensed", "Barlow Condensed", "Arial Narrow", sans-serif;
	--hw-m-body: "HW Barlow", Barlow, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/* Panel */
body.hw-navm #mobile-navigation .main-nav-item {
	background: var(--hw-m-anth) !important;
	color: var(--hw-m-cream) !important;
	font-family: var(--hw-m-body) !important;
}
body.hw-navm #mobile-navigation .main-nav-item hr { display: none !important; }
body.hw-navm #mobile-site-navigation,
body.hw-navm #mobile-site-navigation .menu-all-pages-container,
body.hw-navm #mobile-site-navigation ul.mobile { background: transparent !important; box-shadow: none !important; }

/* Suchfeld statt Lupe */
body.hw-navm #mobile-nav-action-bar { display: block !important; width: auto !important; padding: 18px 20px 8px !important; margin: 0 !important; background: transparent !important; border: 0 !important; }
body.hw-navm #mobile-nav-action-bar .search-item { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; border: 0 !important; }
body.hw-navm #mobile-nav-action-bar .search-link {
	display: flex !important;
	align-items: center;
	gap: 12px;
	box-sizing: border-box;
	width: 100% !important;
	height: 50px !important;
	margin: 0 !important;
	padding: 0 16px !important;
	border: 0 !important;
	border-radius: 12px 0 12px 0 !important;
	background: var(--hw-m-cream) !important;
	color: var(--hw-m-anth) !important;
	font: 400 16px/1.2 var(--hw-m-body) !important;
	text-align: left !important;
	cursor: pointer;
}
body.hw-navm #mobile-nav-action-bar .search-link i { flex: none; font-size: 17px !important; color: var(--hw-m-anth) !important; }
body.hw-navm #mobile-nav-action-bar .search-link .hw-mob-sl { flex: 1 1 auto; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #5E6870; }
body.hw-navm #mobile-nav-action-bar .search-link:focus-visible { outline: 3px solid var(--hw-m-brown); outline-offset: 2px; }

/* Hauptebene */
body.hw-navm #mobile-site-navigation ul.mobile { list-style: none !important; margin: 0 !important; padding: 8px 0 0 !important; }
body.hw-navm #mobile-site-navigation ul.mobile > li {
	position: relative !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-bottom: 1px solid var(--hw-m-line) !important;
	background: transparent !important;
}
body.hw-navm #mobile-site-navigation ul.mobile > li::before { content: none !important; }
body.hw-navm #mobile-site-navigation ul.mobile > li > a {
	display: block !important;
	padding: 17px 66px 15px 22px !important;
	font: 600 21px/1.15 var(--hw-m-display) !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	color: var(--hw-m-cream) !important;
	background: transparent !important;
	text-decoration: none !important;
}
body.hw-navm #mobile-site-navigation ul.mobile > li > a::after { content: none !important; }
body.hw-navm #mobile-site-navigation ul.mobile > li.current-menu-item > a,
body.hw-navm #mobile-site-navigation ul.mobile > li.current-menu-ancestor > a,
body.hw-navm #mobile-site-navigation ul.mobile > li.current-menu-parent > a { color: var(--hw-m-brown-light) !important; }
body.hw-navm #mobile-site-navigation ul.mobile > li.current-menu-item::before {
	content: "" !important;
	position: absolute;
	left: 0;
	top: 14px;
	bottom: 14px;
	width: 3px;
	background: var(--hw-m-brown);
}
body.hw-navm #mobile-site-navigation ul.mobile > li > button.toggle {
	position: absolute !important;
	right: 14px !important;
	top: 9px !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 40px !important;
	height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(205, 174, 149, 0.55) !important;
	border-radius: 10px 0 10px 0 !important;
	background: transparent !important;
	color: var(--hw-m-brown-light) !important;
	font-size: 15px !important;
	line-height: 1 !important;
}
body.hw-navm #mobile-site-navigation ul.mobile > li > button.toggle i { color: inherit !important; font-size: inherit !important; }

/* Aufgeklappt: Unterpunkte von „Kategorien“ (Sichtbarkeit steuert Atomion) */
body.hw-navm #mobile-site-navigation ul.mobile > li > .sub-menu-wrap.menu-level-0 {
	position: static !important;
	width: auto !important;
	margin: 0 !important;
	padding: 4px 22px 18px !important;
	border: 0 !important;
	background: var(--hw-m-anth2) !important;
	box-shadow: none !important;
}
body.hw-navm #mobile-site-navigation .menu-level-0 > ul.sub-menu { list-style: none !important; margin: 0 !important; padding: 0 !important; background: transparent !important; }
body.hw-navm #mobile-site-navigation .menu-level-0 > ul.sub-menu > li {
	margin: 0 !important;
	padding: 16px 0 6px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--hw-m-line) !important;
	background: transparent !important;
}
body.hw-navm #mobile-site-navigation .menu-level-0 > ul.sub-menu > li::before { content: none !important; }
body.hw-navm #mobile-site-navigation .menu-level-0 > ul.sub-menu > li:last-child { border-bottom: 0 !important; }
/* Spaltentitel */
body.hw-navm #mobile-site-navigation .menu-level-0 > ul.sub-menu > li.menu-item-has-children > a {
	display: block !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	font: 700 13px/1.2 var(--hw-m-display) !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	color: var(--hw-m-brown-light) !important;
	background: transparent !important;
	text-decoration: none !important;
}
body.hw-navm #mobile-site-navigation .menu-level-0 > ul.sub-menu > li > a span { font: inherit !important; letter-spacing: inherit !important; color: inherit !important; border: 0 !important; padding: 0 !important; margin: 0 !important; }
body.hw-navm #mobile-site-navigation .menu-level-0 > ul.sub-menu > li > a span::after,
body.hw-navm #mobile-site-navigation .menu-level-0 > ul.sub-menu > li > a::after { content: none !important; }
body.hw-navm #mobile-site-navigation .menu-level-0 > ul.sub-menu > li > button.toggle { display: none !important; }
/* Links zweispaltig */
body.hw-navm #mobile-site-navigation .sub-menu-wrap.menu-level-1 {
	display: block !important;
	position: static !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
}
body.hw-navm #mobile-site-navigation .menu-level-1 > ul.sub-menu {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 0 14px;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}
body.hw-navm #mobile-site-navigation .menu-level-1 > ul.sub-menu > li { margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
body.hw-navm #mobile-site-navigation .menu-level-1 > ul.sub-menu > li::before { content: none !important; }
body.hw-navm #mobile-site-navigation .menu-level-1 > ul.sub-menu > li > a {
	display: flex !important;
	align-items: center;
	gap: 8px;
	min-height: 42px;
	padding: 0 !important;
	font: 400 16px/1.25 var(--hw-m-body) !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--hw-m-text) !important;
	background: transparent !important;
	text-decoration: none !important;
}
body.hw-navm #mobile-site-navigation .menu-level-1 > ul.sub-menu > li.current-menu-item > a { color: var(--hw-m-brown-light) !important; font-weight: 600 !important; }
body.hw-navm #mobile-site-navigation li.hw-mm li[class*="hw-mm-c-"] > a::before { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.35) !important; }
/* Fußzeilen-Links des Kategorien-Menüs */
body.hw-navm #mobile-site-navigation .menu-level-0 > ul.sub-menu > li.hw-mm-foot { padding: 6px 0 !important; border-bottom: 0 !important; }
body.hw-navm #mobile-site-navigation .menu-level-0 > ul.sub-menu > li.hw-mm-foot:first-of-type { margin-top: 8px !important; }
body.hw-navm #mobile-site-navigation li.hw-mm-foot > a {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 42px;
	font: 600 15px/1.25 var(--hw-m-display) !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	color: var(--hw-m-brown-light) !important;
	background: transparent !important;
	text-decoration: none !important;
}
body.hw-navm #mobile-site-navigation li.hw-mm-foot > a::after { content: "→" !important; flex: none; }

/* Unterer Block: Beratung und Vorteile */
body.hw-navm #mobile-site-navigation ul.mobile > li.hw-mob-extra { padding: 26px 22px 40px !important; border-bottom: 0 !important; }
body.hw-navm #mobile-site-navigation ul.mobile > li.hw-mob-extra > a.hw-mob-cta {
	display: flex !important;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	height: 52px;
	padding: 0 16px !important;
	border-radius: 12px 0 12px 0;
	background: var(--hw-m-cream) !important;
	color: var(--hw-m-anth) !important;
	font: 600 17px/1 var(--hw-m-display) !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	text-align: center;
	text-decoration: none !important;
}
body.hw-navm #mobile-site-navigation ul.mobile > li.hw-mob-extra > a.hw-mob-cta:focus-visible { outline: 3px solid var(--hw-m-brown); outline-offset: 3px; }
body.hw-navm #mobile-site-navigation ul.hw-mob-usp { display: grid; gap: 10px; list-style: none !important; margin: 20px 0 0 !important; padding: 0 !important; }
body.hw-navm #mobile-site-navigation ul.hw-mob-usp li {
	display: flex !important;
	align-items: center;
	gap: 10px;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	font: 400 15px/1.35 var(--hw-m-body) !important;
	color: var(--hw-m-muted) !important;
}
body.hw-navm #mobile-site-navigation ul.hw-mob-usp li::before {
	content: "" !important;
	flex: none;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	box-shadow: inset 0 0 0 1.5px var(--hw-m-brown-light);
	background: radial-gradient(circle, var(--hw-m-brown-light) 0 3px, transparent 3.5px);
}
