.zhm32{position:relative;font-family:"Montserrat",Arial,sans-serif;z-index:9996}
.zhm32.is-ready{visibility:visible}
.zhm32-sticky-parent{position:sticky!important;top:0!important;z-index:9996!important;background:#fff}
.zhm32__menu{display:flex;align-items:center;gap:30px;margin:0;padding:0;list-style:none}
.zhm32__item{position:relative}
.zhm32__item>a,.zhm32__mega-trigger{
	display:inline-flex!important;align-items:center!important;gap:9px!important;
	border:0!important;outline:0!important;box-shadow:none!important;border-radius:0!important;
	background:transparent!important;color:#171717!important;padding:15px 0!important;
	font:inherit!important;font-weight:700!important;text-transform:uppercase!important;
	text-decoration:none!important;cursor:pointer!important
}
.zhm32__item>a:hover,.zhm32__mega-trigger:hover{color:#9e003d!important}
.zhm32__arrow{display:inline-block;width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s ease}
.zhm32__item.is-open .zhm32__mega-trigger .zhm32__arrow{transform:rotate(225deg) translate(-1px,-1px)}

.zhm32__submenu{display:none;position:absolute;top:100%;left:0;min-width:220px;margin:0;padding:12px 0;background:#fff;list-style:none;box-shadow:0 12px 28px rgba(0,0,0,.12);z-index:9998}
.zhm32__item--has-children:hover>.zhm32__submenu{display:block}
.zhm32__submenu a{display:block;padding:9px 16px;color:#222;text-decoration:none}
.zhm32__submenu a:hover{color:#9e003d;background:#f7f7f7}
.zhm32__submenu-toggle{display:none}

.zhm32__mega{position:fixed;left:0;right:0;top:var(--zhm32-top,0);z-index:9999;background:#fff;border-top:1px solid #ececec;box-shadow:0 18px 35px rgba(0,0,0,.12)}
.zhm32__mega-inner{max-width:1480px;margin:0 auto;padding:24px 28px 30px;max-height:calc(100vh - var(--zhm32-top,0px));overflow-y:auto}
.zhm32__mega-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.zhm32__mega-head h2{margin:0;font-size:30px;font-weight:700;color:#171717}
.zhm32__close{border:0!important;background:transparent!important;box-shadow:none!important;color:#777!important;font-size:31px!important;line-height:1!important;padding:0!important;cursor:pointer!important}

.zhm32__category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 54px}
.zhm32__category-group{min-width:0}
.zhm32__category-title{margin:0 0 8px!important;font-size:15px!important;font-weight:700!important;line-height:1.3!important}
.zhm32__category-title>a{
	display:flex!important;align-items:flex-start!important;gap:9px!important;
	border:0!important;outline:0!important;box-shadow:none!important;border-radius:0!important;
	background:transparent!important;padding:0!important;margin:0!important;
	color:#111!important;text-decoration:none!important;text-align:left!important
}
.zhm32__category-title>a:hover{color:#9e003d!important}
.zhm32__category-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px;margin-top:1px;color:#555}
.zhm32__category-icon svg{display:block;width:17px;height:17px;fill:currentColor}
.zhm32__category-group ul{margin:0;padding:0 0 0 29px;list-style:none}
.zhm32__category-group li{margin-bottom:6px;line-height:1.35}
.zhm32__category-group li a,.zhm32__more{font-size:13px;line-height:1.35;color:#111;text-decoration:none}
.zhm32__category-group li a:hover,.zhm32__more:hover{color:#9e003d;text-decoration:underline}
.zhm32__more{display:inline-block;margin:2px 0 0 29px;font-weight:700;text-decoration:underline}
.zhm32__mobile-accordion{display:none!important}

.zhm32__brands-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.zhm32__brand-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:160px;padding:18px;border:1px solid #e5e5e5;background:#fff;color:#171717;text-align:center;text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.zhm32__brand-card:hover{border-color:#9e003d;box-shadow:0 10px 24px rgba(0,0,0,.08);transform:translateY(-2px)}
.zhm32__brand-logo{display:flex;align-items:center;justify-content:center;width:100%;height:82px;margin-bottom:10px}
.zhm32__brand-logo img{max-width:170px;max-height:70px;object-fit:contain}
.zhm32__brand-card strong{font-size:14px}
.zhm32__brand-card small{margin-top:4px;color:#777}
.zhm32__mega-footer{display:flex;justify-content:flex-end;margin-top:24px;padding-top:18px;border-top:1px solid #ececec}
.zhm32__mega-footer a{display:inline-flex;align-items:center;justify-content:center;padding:0;background:transparent;color:#111;font-size:13px;font-weight:700;text-decoration:underline;text-transform:none}
.zhm32__mega-footer a:hover{color:#9e003d}
.zhm32__mobile-bar,.zhm32__drawer-head,.zhm32__mobile-overlay{display:none}

@media(max-width:1100px){
	.zhm32__category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.zhm32__brands-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:767px){
	body.zhm32-lock{overflow:hidden}
	.zhm32__mobile-bar{display:flex;align-items:center;justify-content:flex-end}
	.zhm32__mobile-toggle{display:inline-flex;align-items:center;gap:9px;border:0!important;background:transparent!important;box-shadow:none!important;color:#171717!important;padding:10px 0!important;font:inherit!important;font-weight:700!important;text-transform:uppercase!important;cursor:pointer!important}
	.zhm32__burger,.zhm32__burger:before,.zhm32__burger:after{display:block;width:20px;height:2px;background:#171717;content:"";position:relative}
	.zhm32__burger:before{position:absolute;top:-6px}
	.zhm32__burger:after{position:absolute;top:6px}
	.zhm32__mobile-overlay{position:fixed;inset:0;z-index:9998;background:rgba(0,0,0,.38)}
	.zhm32__drawer{position:fixed;top:0;right:0;bottom:0;width:min(92vw,420px);z-index:9999;background:#fff;transform:translateX(105%);transition:transform .22s ease;overflow-y:auto;box-shadow:-18px 0 35px rgba(0,0,0,.16)}
	.zhm32.is-mobile-open .zhm32__drawer{transform:translateX(0)}
	.zhm32__drawer-head{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid #ececec;position:sticky;top:0;background:#fff;z-index:2}
	.zhm32__drawer-close{border:0!important;background:transparent!important;box-shadow:none!important;font-size:34px!important;line-height:1!important;padding:0!important;cursor:pointer!important}
	.zhm32__menu{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:8px 18px 24px}
	.zhm32__item{border-bottom:1px solid #ececec}
	.zhm32__item>a,.zhm32__mega-trigger{width:100%;justify-content:space-between;padding:15px 0!important}
	.zhm32__submenu-toggle{position:absolute;right:0;top:8px;display:block;border:0!important;background:transparent!important;box-shadow:none!important;padding:8px!important}
	.zhm32__submenu{position:static;display:none;box-shadow:none;padding:0 0 10px 12px}
	.zhm32__item.submenu-open>.zhm32__submenu{display:block}
	.zhm32__mega{position:static;box-shadow:none;border-top:0}
	.zhm32__mega-inner{max-height:none;overflow:visible;padding:0 0 18px}
	.zhm32__mega-head,.zhm32__mega-footer{display:none}
	.zhm32__category-grid,.zhm32__brands-grid{display:block}
	.zhm32__category-group{border-top:1px solid #ececec;padding:0}
	.zhm32__category-title{display:none!important}
	.zhm32__mobile-accordion{
		display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;
		border:0!important;outline:0!important;box-shadow:none!important;border-radius:0!important;
		background:#f8f8f8!important;color:#171717!important;padding:12px 10px!important;
		font:inherit!important;font-weight:700!important;text-align:left!important;cursor:pointer!important
	}
	.zhm32__mobile-accordion-label{display:flex;align-items:center;gap:8px}
	.zhm32__category-group.is-expanded .zhm32__mobile-accordion .zhm32__arrow{transform:rotate(225deg) translate(-1px,-1px)}
	.zhm32__category-content{display:none;padding:10px 0 12px}
	.zhm32__category-group.is-expanded .zhm32__category-content{display:block}
	.zhm32__category-group ul{padding-left:18px}
	.zhm32__more{margin-left:18px}
	.zhm32__brand-card{flex-direction:row;justify-content:flex-start;min-height:84px;margin:0 0 10px;padding:12px;text-align:left}
	.zhm32__brand-logo{width:100px;height:56px;margin:0 14px 0 0;flex:0 0 100px}
	.zhm32__brand-logo img{max-width:95px;max-height:50px}
}


/* Version 3.3: klare Trennung zwischen Online- und Ladensortiment */
.zhm32__mega-footer--sortiment {
	justify-content: flex-end;
	gap: 24px;
}

.zhm32__footer-link {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	padding: 0 !important;
	background: transparent !important;
	color: #171717 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	text-transform: none !important;
}

.zhm32__footer-link:hover,
.zhm32__footer-link:focus {
	color: #9e003d !important;
	text-decoration: underline !important;
}

.zhm32__footer-arrow {
	font-size: 16px;
	line-height: 1;
	transition: transform .18s ease;
}

.zhm32__footer-link:hover .zhm32__footer-arrow,
.zhm32__footer-link:focus .zhm32__footer-arrow {
	transform: translateX(3px);
}

/* Klassisches Dropdown für die drei Dienstleistungen */
.zhm32__item--has-children > a {
	padding-right: 18px !important;
}

.zhm32__item--has-children > .zhm32__submenu-toggle {
	color: currentColor;
}

@media (min-width: 768px) {
	.zhm32__item--has-children::after {
		content: "";
		position: absolute;
		right: 0;
		top: 50%;
		width: 7px;
		height: 7px;
		border-right: 1.5px solid currentColor;
		border-bottom: 1.5px solid currentColor;
		transform: translateY(-70%) rotate(45deg);
		pointer-events: none;
	}

	.zhm32__submenu {
		border-top: 2px solid #9e003d;
	}

	.zhm32__submenu li a {
		white-space: nowrap;
	}
}

@media (max-width: 767px) {
	.zhm32__mega-footer--sortiment {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
		padding: 14px 0 4px;
		margin: 0;
		border-top: 1px solid #ececec;
	}

	.zhm32__mega--categories .zhm32__mega-footer {
		display: flex;
	}
}


/* Version 3.4: Mobile Vollbild-Navigation und Icon-only Trigger */
@media (max-width: 767px) {
	.zhm32__mobile-bar {
		justify-content: center;
	}

	.zhm32__mobile-toggle {
		width: 44px !important;
		height: 44px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		padding: 0 !important;
	}

	.zhm32__drawer {
		inset: 0 !important;
		width: 100vw !important;
		max-width: none !important;
		height: 100dvh !important;
		transform: translateY(-102%) !important;
		transition: transform .22s ease !important;
		box-shadow: none !important;
	}

	.zhm32.is-mobile-open .zhm32__drawer {
		transform: translateY(0) !important;
	}

	.zhm32__drawer-head {
		min-height: 64px;
		padding: 14px 20px !important;
	}

	.zhm32__drawer-head strong {
		font-size: 20px;
	}

	.zhm32__drawer-close {
		width: 44px;
		height: 44px;
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
	}

	.zhm32__menu {
		padding: 8px 22px 30px !important;
	}

	.zhm32__item > a,
	.zhm32__mega-trigger {
		font-size: 17px !important;
	}

	.zhm32__mobile-overlay {
		display: none !important;
	}
}


/* Version 3.5: kompaktere Navigation und getrennte Link-/Pfeil-Funktion */
.zhm32__menu {
	gap: 21px !important;
}

.zhm32__item > a,
.zhm32__mega-link {
	white-space: nowrap !important;
	font-size: 15px !important;
	line-height: 1.2 !important;
}

.zhm32__mega-control {
	display: inline-flex;
	align-items: center;
	gap: 7px;
}

.zhm32__mega-link {
	display: inline-flex;
	align-items: center;
	padding: 15px 0;
	color: #171717;
	font: inherit;
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none;
}

.zhm32__mega-link:hover,
.zhm32__mega-link:focus {
	color: #9e003d;
}

.zhm32__mega-control .zhm32__mega-trigger {
	width: 24px !important;
	min-width: 24px !important;
	height: 34px !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

@media (max-width: 1180px) and (min-width: 768px) {
	.zhm32__menu {
		gap: 15px !important;
	}

	.zhm32__item > a,
	.zhm32__mega-link {
		font-size: 14px !important;
	}
}

@media (max-width: 767px) {
	.zhm32__mega-control {
		display: grid;
		grid-template-columns: 1fr 46px;
		align-items: center;
		width: 100%;
	}

	.zhm32__mega-link {
		width: 100%;
		padding: 15px 0;
		font-size: 17px !important;
	}

	.zhm32__mega-control .zhm32__mega-trigger {
		width: 46px !important;
		height: 48px !important;
		justify-self: end;
	}
}
