:root {

	--color-black: black;
	/* Abstände */
	--menu-desktop-padding-top: 0;
	--menu-desktop-padding-bottom: 5.0rem;
	--menu-desktop-level-1-padding: 0.5rem 1.5rem 0.5rem 0;
	--menu-desktop-level-0-padding: 0.5rem 1.5rempx;

	--level-0-info-padding: 0px 3.0rem 0px 2.0rem;
	--level-1-padding: 0 5rem 0 5rem;
	--level-2-padding: 0 3rem 0 3rem;

	--item-gap: 1.0rem;

	--menu-mobile-container-title-padding-y: 20px;

	--menu-mobile-item-padding: 2.0rem 0 2.0rem var(--container-padding-x);
	--menu-mobile-font-size: 1.6rem;

	--menu-mobile-padding: 0 0;

	--level-0-width: 40%;
	--level-1-width: 40%;

	/* Animationen */
	--menu-desktop-unfold-speed: 200ms;
	--menu-desktop-unfold-type: linear;
	
	--menu-mobile-item-flight-speed: 200ms;
	--menu-mobile-item-flight-type: 200ms;
	
	--menu-mobile-item-fade-speed: 500ms;
	--menu-mobile-item-fade-type: ease-in;

	--menu-mobile-item-unfold-speed: 300ms;
	--menu-mobile-item-unfold-type: ease;
	/* Farben */
	--menu-desktop-color-background: #fff;
	--menu-mobile-color-burger-button: #000;
	--menu-mobile-color-background: #fff;
	--menu-desktop-color-item-hover-background: #fff;
	--menu-mobile-color-arrow: #000;

	--container-title-padding: 20px var(--container-padding-x) 10px var(--container-padding-x);

	--container-1-color: #fff;
	/* Icons  */
	--menu-arrow-url: url("/wp-content/themes/bricks-core/css/images/chevron-right.svg");
	--menu-navigation-icon-url: url("/wp-content/themes/bricks-core/css/images/menu_nav_icon.svg");
}
@media (max-width: 1400px) {
	:root {
	--level-0-width: 30%;
	--level-1-width: 40%;
	}
}
#mew_mega_menu {
	--container-width: 1400px;
}
@media (max-width: 1200px) {
	#mew_mega_menu, header .brxe-button.display-only-desktop {
		font-size: 1.5rem !important;
	}
	header .brxe-button.display-only-desktop {
		padding: 5px 10px;
	}
	#mew_mega_menu ul.level_0 > li.has-0-children:not(:last-child) {
		margin-right: 0.3rem;
	}
}
@media (max-width: 880px) {
	#mew_mega_menu, header .brxe-button.display-only-desktop {
		font-size: 1.4rem !important;
	}
}
#mew_mega_menu li > a:not(.brxe-button) {
	font-family: 'Poppins', 'Poppins Fallback', 'Arial', sans-serif;
	font-weight: 400;
}
#mew_mega_menu_mobile {
	display: none;
	font-size: var(--menu-mobile-font-size);
}
@media (max-width: 769px) {
	#mew_mega_menu {
		display: none;
	}
	#mew_mega_menu_mobile {
		display: block;
	}
}
#mew_mega_menu a {
	text-decoration: none !important;
	color: var(--color-black);
}
/*Top Bar Hover*/
#mew_mega_menu .first_level {
	position: fixed;
	/*width: min(100vw, var(--container-width));*/
	width: fit-content;
	top: calc(var(--header-height-full) - 0px);
	margin-left: -50px;
	/*left: calc((100vw - min(100vw, var(--container-width)))/2);*/

	display: flex;
	flex-direction: row;
	visibility: hidden;
	padding: 0 20px 0px 20px;

	opacity: 0;
	transition: opacity var(--menu-desktop-unfold-speed) var(--menu-desktop-unfold-type);
	/*transition-delay: var(--menu-desktop-unfold-speed);*/

}
#mew_mega_menu li.level_0:before {
	content: "";
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	background-color: black;
	opacity: 0;
	pointer-events: none;
	transition: opacity var(--menu-desktop-unfold-speed) var(--menu-desktop-unfold-type);
}
#mew_mega_menu .level_0.ausgeklappt:before {
	opacity: 0.25;
}
#mew_mega_menu .level_0.ausgeklappt .first_level {
	visibility: visible;
	opacity: 1;
}
#mew_mega_menu ul.level_1 > li, #mew_mega_menu .item_title  {
	visibility: hidden;

	opacity: 0;
	transition: opacity var(--menu-desktop-unfold-speed) var(--menu-desktop-unfold-type);
	transition-delay: var(--menu-desktop-unfold-speed);
}
#mew_mega_menu ul.level_1 > li {
	padding-left: 10px;
}
#mew_mega_menu li.level_0.ausgeklappt ul.level_1 > li, #mew_mega_menu li.level_0.ausgeklappt .item_title {
	visibility: visible;
	opacity: 1;
}
#mew_mega_menu ul.level_1 > li:has(li.level_2), #mew_mega_menu ul.level_1 li.level_2 {
	display: inline-flex;
	align-items: center;
}
#mew_mega_menu ul.level_1 > li > button {
	margin-right: 10%;
}

/*Menu Items*/
#mew_mega_menu nav.main-navigation {
	width: 100%;
}
#mew_mega_menu li {
	white-space: nowrap;
}
:is(#mew_mega_menu ul.level_2, #mew_mega_menu_mobile) li {
	white-space: normal;
}
#mew_mega_menu li.just_mobile {
	display: none !important;
}
#mew_mega_menu nav.main-navigation ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
#mew_mega_menu nav.main-navigation ul.level_0 {
	display: flex; 	
  justify-content: end;
  column-gap: 1.0rem;
}
#mew_mega_menu li.level_0:has(.level_1) > button, .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle::after {
	content: "";
  display: block;
  height: 24px;
  width: 24px;
  rotate: 90deg;
  background: var(--menu-arrow-url);
  background-repeat: no-repeat;
  background-size: 30%;
  background-position: 57% 70%;
}
#mew_mega_menu li.level_0:has(.level_1):hover > button, #mew_mega_menu li.level_0.ausgeklappt > button  {
	filter: brightness(0) saturate(100%) invert(7%) sepia(85%) saturate(4041%) hue-rotate(338deg) brightness(88%) contrast(107%);
}
#mew_mega_menu li.level_0 > a {
	display: inline-flex;
	height: 100%;
	align-items: center;
	column-gap: 0;
}
/*
#mew_mega_menu li:is(.level_0, .level_2) > a:not(.brxe-button):before {
	display: block;
	content: attr(placeholder);
	font-weight: 700;
	height: 0;
	overflow: hidden;
	visibility: hidden;
}
*/
#mew_mega_menu ul.level_0 > li.ausgeklappt > a,
#mew_mega_menu ul.level_0 > li > a:not(.brxe-button):hover,
#mew_mega_menu li.level_1 > a.active,
#mew_mega_menu li.level_1 > a:hover,
#mew_mega_menu li.level_2 > a:hover,
#mew_mega_menu li.level_2 > a.active,
#mew_mega_menu li.level_0 > a.active:not(.brxe-button),
#mew_mega_menu_mobile a.active {
	/*font-weight: 700;*/
	text-decoration: underline !important;
	color: var(--color-burgunder);
}
#mew_mega_menu_mobile a:not(.brxe-button) hover {
	text-decoration: underline !important;
}
#mew_mega_menu li.level_1 > a, #mew_mega_menu li.level_2 > a {
	position: relative;
	width: 100%;
	height: 100%;
	display: block;

	border-radius: var(--box-border-radius);
	padding: var(--menu-desktop-level-1-padding);
}
#mew_mega_menu ul.level_1 > li.ausgeklappt:not(:only-child) > a {
	background-color: var(--menu-desktop-color-item-hover-background);
}
#mew_mega_menu ul.level_1 > li.ausgeklappt:only-child > a {
	padding-top: 0;
	padding-left: 0;
}
#mew_mega_menu li.level_1:not(:only-child):has(li) > button {
	content: "";
	width: 20px;
	height: 20px;
	padding: 3px;
	background: var(--menu-arrow-url) no-repeat 50% 50%;
}
#mew_mega_menu li.level_1:not(:only-child):has(li):hover > button {
	filter: brightness(0) saturate(100%) invert(7%) sepia(85%) saturate(4041%) hue-rotate(338deg) brightness(88%) contrast(107%);
}
#mew_mega_menu ul.level_0 > li:not(.brxe-button) {
	padding: var(--menu-desktop-level-0-padding);
	display: inline-flex;
	align-items: center;
}
#mew_mega_menu ul.level_0 > li.has-0-children:not(:last-child) {
	margin-right: 0.8rem;
}
/*Menu Item Content*/
#mew_mega_menu .menu_background {
	display: none;
	/*
	position: fixed;
	z-index: 0;
	
	width: 100vw;
	top: var(--header-height-full);
	left: 0;
	height: 0;
	
	display: flex;
	flex-direction: row;
	background-color: var(--menu-desktop-color-background);

	transition: height var(--menu-desktop-unfold-speed) var(--menu-desktop-unfold-type);
	box-shadow: 0 10px 30px -25px black;
	*/
}
#mew_mega_menu .menu_background > .container_0 {
	opacity: 0;
	--pad: calc(100vw - var(--container-width));
	width: calc((var(--pad)/2) + (var(--container-width)*var(--level-0-width)));
	background-color: #eaecf0;
	
}
#mew_mega_menu .menu_background > .container_1 {
	opacity: 0;
	--pad: calc(100vw - var(--container-width));
	width: calc((var(--pad)/2) + (var(--container-width)*var(--level-1-width)));
	background-color: var(--container-1-color);
	
}
@media only screen and (max-width: 1200px) {
	#mew_mega_menu .menu_background > .container_1 {
		width: var(--level-1-width);
	}
}
@media only screen and (max-width: 1024px) {
	#mew_mega_menu a > span {
		display: none;
	}
}
#mew_mega_menu .first_level > .level_0_info {
	flex-basis: var(--level-0-width);
	flex-shrink: 0;
	padding: var(--level-0-info-padding);
	margin-top: var(--menu-desktop-padding-top);
}
#mew_mega_menu .first_level > .level_0_info > div {
	width: 100%;
	overflow: hidden;
}

p.item_description {
	hyphens: auto;
	white-space: break-spaces;
}
#mew_mega_menu .first_level > .sublevel {
	flex-basis: calc(100% - var(--level-0-width));
	flex-shrink: 0;
	flex-grow: 0;
	position: relative;
	margin-top: var(--menu-desktop-padding-top);
	background-color: white;
	border-radius: var(--box-border-radius);
	padding: 30px 0px 30px 0;
	border: 1px solid var(--color-grey20);
}

#mew_mega_menu .level_1 > .sublevel {
	position: absolute;
	left: var(--level-1-width);
	width: calc(100% - var(--level-1-width));
	top: 0;
}
#mew_mega_menu:has(li.level_0.ausgeklappt.has-2-sublevels) .menu_background > .container_1 {
	opacity: 1;
}
#mew_mega_menu nav.main-navigation ul.level_1 {
	/*display: flex;
	flex-direction: column;
	row-gap: var(--item-gap);
	*/
	padding: var(--level-1-padding);
	width: var(--level-1-width);
	list-style-image: url('/wp-content/themes/bricks-core/css/images/menu-checkmark.svg');
  list-style-type: square;
}
#mew_mega_menu .item_title {
	padding-left: 3rem;
}
#mew_mega_menu nav.main-navigation ul.level_2 {
	padding: var(--level-2-padding);
	/*border-left: 1.5px solid var(--color-black);*/
}
#mew_mega_menu nav.main-navigation ul.level_1:has(li.level_2) {
	/*box-shadow: 1px 0px 0px 0px var(--color-black);*/
}
#mew_mega_menu nav.main-navigation div.level_0_info {
	/*box-shadow: 1px 0px 0px 0px var(--color-black);*/
}
/*
#mew_mega_menu nav.main-navigation ul.level_1:has(li:nth-child(4)):not(:has(li.level_2)) {
	display: block;
	width: 60% !important;
	columns: 2;
	line-height: 200%;
}
#mew_mega_menu nav.main-navigation ul.level_1:has(li:nth-child(12)):not(:has(li.level_2)) {
	display: block;
  width: 100% !important;
  columns: 3;
	line-height: 200%;
}
@media (max-width: 1400px) {
	#mew_mega_menu nav.main-navigation ul.level_1:has(li:nth-child(12)):not(:has(li.level_2)) {
		columns: 2;
	}
}
*/
#mew_mega_menu li.level_1 .sublevel {
	visibility: hidden;
	opacity: 0;
	transition: opacity var(--menu-desktop-unfold-speed) var(--menu-desktop-unfold-type);
}
#mew_mega_menu .level_0.ausgeklappt .level_1.ausgeklappt .sublevel {
	visibility: visible;
	opacity: 1;
}

#mew_mega_menu li.one_row ul.level_2 {
	grid-template-columns: 1fr;
}
#mew_mega_menu ul.level_2 {
	display: flex;
	flex-direction: column;
	row-gap: var(--item-gap);
}
/*MEGA MOBILE MENU*/
#mew_mega_menu_mobile .menu_background {
	display: none;
}
/*--Header-Elemente*/
#mew_mega_menu_mobile .menu_header {
	display: flex;
	column-gap: 10px;
	justify-content: end;
}
/*----Burger menu button*/
#mew_mega_menu_mobile .menu-toggle {
		position: relative;
		height: 40px;
		width: 40px;
		background-color: transparent;
		display: block;
}
#mew_mega_menu_mobile a.menu-toggle {
	padding: 11px;
}
#mew_mega_menu_mobile .menu-toggle img {
	width: 100%;
	height: 100%;
	display: block;
}
#mew_mega_menu_mobile .menu-toggle span {
	display: block;
	height: 2px;
	width: 20px;
	padding: 0;
	border-radius: 0;
	background-color: var(--menu-mobile-color-burger-button);
	position: absolute;
	left: 10px;
	transition: all ease .3s;
}
#mew_mega_menu_mobile .menu-toggle span:nth-child(1) {
		top: 12px;
}
#mew_mega_menu_mobile .menu-toggle span:nth-child(2) {
		top: 18px;
}
#mew_mega_menu_mobile .menu-toggle span:nth-child(3) {
		top: 24px;
}
#mew_mega_menu_mobile .menu-toggle[aria-expanded="true"] span:nth-child(1) {
	top: 19px;
	rotate: 45deg;
}
#mew_mega_menu_mobile .menu-toggle[aria-expanded="true"] span:nth-child(2) {
	background-color: transparent;
	opacity: 0;
}
#mew_mega_menu_mobile .menu-toggle[aria-expanded="true"] span:nth-child(3) {
	top: 19px;
	rotate: -45deg;
}
/*--Menu Container*/
#mew_mega_menu_mobile .menu_container > div.content_wrapper {
	position: relative;
	margin-top: calc(-100vh + var(--header-height-full));
	transition: margin var(--menu-mobile-item-unfold-speed) var(--menu-mobile-item-unfold-type);

	background-color: var(--menu-mobile-color-background);
	padding: var(--menu-mobile-padding);
}
#mew_mega_menu_mobile .menu_container.selected > div.content_wrapper {
	margin-top: 0;
}
#mew_mega_menu_mobile .menu_container.selected > div.content_wrapper:has(div.sublevel.selected) {
	margin-left: -100vw;
}
#mew_mega_menu_mobile .menu_container.selected > div.content_wrapper:has(div.sublevel.selected div.sublevel.selected) {
	margin-left: -200vw;
}
#mew_mega_menu_mobile .menu_container {
	position: fixed;
	z-index: 100;
	top: var(--header-height-full);
	left: 0;
	width: 100vw;

	height: calc(100vh - var(--header-height-full));
	max-height: calc(100vh - var(--header-height-full));
	overflow: hidden;
	visibility: hidden;
	transition: visibility 0.5s linear;
}
#mew_mega_menu_mobile.ausgeklappt .menu_container.selected {
	visibility: visible;
}
#mew_mega_menu_mobile .menu_container .container_content {
	height: calc(100vh - var(--header-height-full));
	max-height: calc(100vh - var(--header-height-full));
	overflow: hidden;
}
#mew_mega_menu_mobile .menu_container .content_wrapper {
	height: calc(100vh - var(--header-height-full));
	max-height: calc(100vh - var(--header-height-full));
	overflow: hidden;
}
/*
#mew_mega_menu_mobile .content_wrapper > .container_title {
	display: none;
}
*/
#mew_mega_menu_mobile .menu_container .container_title {
	padding: var(--container-title-padding);
	color: var(--color-black);
}
/*--Menu Items*/
#mew_mega_menu_mobile nav.main-navigation ul {
	list-style: none;
	margin: 0;
	width: 100vw;
	padding: 0;
	display: flex;
	flex-direction: column;
	background: var(--menu-mobile-color-background);
}
#mew_mega_menu_mobile nav.main-navigation .level_0_info {
	padding: 2.0rem var(--container-padding-x);
}
#mew_mega_menu_mobile nav.main-navigation .li a {
	padding: 0 var(--container-padding-x);
}
#mew_mega_menu_mobile ul li:not(.brxe-button) a:not(.brxe-button) {
	display: block;
	padding: var(--menu-mobile-item-padding);
	width: 100%;
}
#mew_mega_menu_mobile .item_title {
	padding: var(--menu-mobile-item-padding);
	padding-bottom: 0;
}
#mew_mega_menu_mobile nav.main-navigation ul li.highlighted a {
	text-transform: uppercase;
	box-shadow: inset 0 -2px 0px #0080c9;
	padding-bottom: var(--menu-mobile-item-padding-y);
	width: 90%;
}
#mew_mega_menu_mobile .sublevel {
	position: absolute;
	top: 0;
	width: 100vw;
	margin-left: 100vw;
	background-color: var(--menu-mobile-color-background);
	visibility: hidden;
	opacity: 0;
	transition: visibility var(--menu-mobile-item-fade-speed), opacity var(--menu-mobile-item-fade-speed) var(--menu-mobile-item-fade-type), margin var(--menu-mobile-item-flight-speed) var(--menu-mobile-item-flight-type);
	left: 0;
	overflow: hidden;
	height: 100%;
}
#mew_mega_menu_mobile .sublevel.selected {
	visibility: visible;
	opacity: 1;
	height: 100%;
	overflow-x: hidden;
	overflow-y: scroll;
}
#mew_mega_menu_mobile .sublevel.selected:has(.sublevel.selected) {
	overflow: visible !important;
}
#mew_mega_menu_mobile li:not(.brxe-button) {
	padding-right: 26px;
	border-top: 1px solid var(--color-grey20);
	display: inline-flex;
	align-items: center;
	font-weight: 600;
}
#mew_mega_menu_mobile li.brxe-button {
	margin: 10px var(--container-padding-x) 0 var(--container-padding-x);
}
#mew_mega_menu_mobile li.level_0:not(:has(> a.brxe-button)):first-child {
	border-top: none;
}
#mew_mega_menu_mobile li:has(> a.brxe-button) {
	padding: 16px var(--container-padding-x) 0 var(--container-padding-x);
	width: fit-content;
}
#mew_mega_menu_mobile li:has(ul) > button {
	content: "";
	display: block;
	height: 20px;
	width: 20px;
	padding: 3px;
	background: var(--menu-arrow-url) no-repeat 65% 50%;
}
#mew_mega_menu_mobile .navi_back button {
	background-color: transparent;
	color: black;
	line-height: 35px;
	padding-right: 20px;
}
#mew_mega_menu_mobile .navi_back img {
	display: inline;
	width: 15px;
	height: 15px;
	margin: -4px 10px 0 -2px;
}
body.menu_opened {
  overflow-y: hidden;
}