/* css zu access *//* elements.popupinfo  */x{}
/* ausblenden wenn checkbox über graue fläche abgewählt wird */
  label#lbl_JubaPopupMessageBoxGreyOverall, aside#JubaPopupMessage,
	label#lbl_JubaPopupMessageIcon {display: none;}

/* einblenden der Info */
input[type="checkbox"]#rad_JubaPopupMessage:checked ~ aside#JubaPopupMessage {
	display:block; border: 1px solid #005541; background-color: #fff; 
	position: fixed; z-index: 300; 
	left: calc(50% - 140px); top: 2rem;
	width: 280px; padding: 1rem;
}
input[type="checkbox"]#rad_JubaPopupMessage:checked ~ label#lbl_JubaPopupMessageBoxGreyOverall {
	position:fixed; left: 0px; top: 0px;
	width: 100%; height: 100%;
    	display:block;
	background-color: rgba(200,200,200,0.7);
	z-index: 299
}
input[type="checkbox"]#rad_JubaPopupMessage:checked ~ aside label#lbl_JubaPopupMessageIcon { 
	display: block; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAYAAADE6YVjAAAEvElEQVRIiZ2WS4hbVRjHs6uPUhC61EWtpVIsCoqgFitFEUWpWBFB1IXoQsFNRRHBB11IFRdVXLifUmfSNplMHpPkZl6ZTN7vTN43j5tMZvKYdJKZzLRJys/FTHPndjKteODHuff78/2/e757uOeqVPuMjY0NlpaWKBQKVKtVms0mGxsb3Lx5k83NTdbX12m323Q6Hba2ttjPZ+jo9XpIkoQoijQaDVqtNmtrLZrNG9Trq9RqdWq1Bo3GKs3mDdbWWqyvr7O5uUm3271/sV6vRy6Xo1wus7bWotFoUqvVqVZr96RWrdNsNmm32/R6vf0L9ft9crkclcoSjdVVlldWWF5e2Z7/A5XlFVZ22jp0Rb1ej2w2i1SSqNXqLC1VWKr8D5YqVCrLNBoNbt26BSAXkySJdDrDykqVUqksk8pQCkSUsTtkRKQrmuFauUy9Xuf27dvbRba2tkgkEkilEsWiRKFY3Eato3j0RYqnz8mxXRS//I7igSMU3/uMQjC8R5ekEu12e7tIuVwmmUxSLEqIYg4xl0f0+CkePLZtcuAI+R9+3Y7vkJswU3zoqKz/9pdS35krleXtjRCLxUhnMmSyIplsdkDu/E8Dk+LBY2SN1m0tkaTw9KsDrXDqrCLvDulsFlEUabVaqKLRKMlUmsQukqk0iUSS/PNvymYnTpOMRMl+/bNc/NCTpKwzJFNpUumMwieZSpNIpsjnC6iCwSCJRJLFxfgeEpZpCo+cGJiK736qaGPm2wvEE0kFu/Nji3EyWRGVw7HAYjxBJBobSuLin/KT7yL3zGtEwxFisUUFe/KTKVRTU1OEI1GCofC+ZN76SFnk4WNExrSEwhHCkaiCu3PDkSgqQRDw+QNDCQRD+PwBglfHKT7wuLyKJ17C5w/gDwTxB4IEgqHBPMxDZbfP43S5cbm9Crw+P16fH5fbS/qVc3vaFfn+F9weH26PD6/Ph8vtxe3xKX08XgLBICqny8WcfZ4Fp0uB0+XB6fIQuvC7bL5rNYVDx/GOaXC63Dhdnp0ct8LDseAiEAih8ng8WAWBeccC9nnHAMeCE6fZSv7wyYFx/P3PyZw8I++uk2dwzM7hWHBin3fs8ZizzxMKhVHl83ksFgu2qWlm5+aZmbUzM2tnzj5P/I0P5e372HPYLQKOy2MUDh2X2/bJV8zZ5bzdTM/MUqlUUHU6HRwLDvQGA1PTMwNcFy8p3oHr4qWB5jv/o6w9eBTnH38rcqemZ7AKNrxer3xqiqKI0WhiQm9EsE1jtQhkjr4wMIq9/gFWYUpB/NRZeTVvf6zQzBYBQbBRLpflT3232yUSiaDT6dBN6LFYbdiuqFl8+R1yh59CuKbFbLEqENTXyT76LN4vvlHETZMWTJNm4vHE3lOy1+sRCoW4rtFwXTuOyWzBZLZgvTyKcdI8FJPeIF9PmtEbTRiMJqKxGP1+f/gx3O12CYfDaLVaRsfUjOv0GIyTCvSGvfcTeiPa8QlMJjPxePz+PxT9fp9qtYrVamV0dJQr/4xy9ZoGjVaHbsKwY2xiXKdHo9Wh0eqY0BuYm7NTKpXu/SNx92g2mwSDQWw2GxqtFrX6KmNqNSMjI4yMXEaj1SIIAj6fj5Ik0el09jX/F5Hf+SiQLF0OAAAAAElFTkSuQmCC); 
width: 25px; height: 25px; 
	position:relative; bottom: 0px; left: 0px; margin-right:12px; margin-top: 12px;
}
#JubaPopupMessage, #JubaPopupMessage .listpopupmessages {color: black !important;}/* --- --- *//* mainHeader_und_footer_20  *//* ---------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------- */
/* -------------------- 23 - mainHeader_und_footer_2024CSS -------------------- */
/* ---------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------- */
#mainHeader {
	margin-bottom: var(--abstand_15);
}

#mainHeader + * {
	
}

.mainHeaderMenueWrapper {
	box-shadow: 0 3px 6px #00000029;
}

.mainHeaderMitteWrapper {
	margin-top: -14px;
	margin-bottom: 40px;
}

.mainHeaderMitteL, .mainHeaderMitteM, .mainHeaderMitteR {
	display: inline-block;
	vertical-align: bottom;
}

.mainHeaderMitteL {
	width: 170px;
	padding-right: 20px;
}

.mainHeaderMitteM {
	width: calc(100% - 170px - 340px);
	text-align: center;
}

.mainHeaderMitteR {
	width: 340px;
}

.mainHeaderLogo {
	display: block;
}





/* Suche */
.mainHeaderSucheWrapper {
	display: inline-block;
	vertical-align: top;
	width: 100%;
	max-width: 400px;
}

.mainHeaderSucheTb {
	width: 100%;
}

.mainHeaderSucheButton {
	padding: 0 !important;
	width: 45px;
	height: calc(100% - 4px);
	position: absolute;
	top: 2px;
	right: 2px;
	background-color: var(--weiss) !important;
	color: var(--schwarz) !important;
	font-size: 30px !important;
}



.customDropdownMainHeader .customDropdownDropdown {
	left: unset;
	right: 0;
	max-height: calc(100vh - 100px);
}



@media (max-width: 1024px) {
	.mainHeaderMitteWrapper {
		margin-bottom: 30px;
	}

	.pageframe_fritz .mainHeaderMitteWrapper {
		margin-top: 0;
	}
	
	.mainHeaderMitteL {
		width: 120px;
	}
	
	.mainHeaderMitteM {
		width: calc(100% - 120px - 287px);
	}
	
	.mainHeaderMitteR {
		width: 287px;
	}
}


@media (max-width: 600px) {
	
	#mainHeader {
		margin-bottom: calc(46px + 34px);
	}
	
	.mainHeaderOben {
		height: 38px;
	}
	
	.mainHeaderMitteWrapper {
		margin-top: 0;
		margin-bottom: 0;
	}
	
	.mainHeaderMitteM {
		width: calc(100% - var(--abstand_9) - var(--abstand_9));
		position: absolute;
		top: 130px;
		left: var(--abstand_9);
	}

	.pageframe_fritz .mainHeaderMitteM {
		top: 110px;
	}
	
	.mainHeaderMitteR {
		width: calc(100% - 120px);
	}
	
	.mainHeaderSucheWrapper {
		max-width: 100%;
	}
}


@media (max-width: 400px) {
	#main:not(.pageframe_fritz) .mainHeaderMitteL {
		width: 100px;
	}
	
	#main:not(.pageframe_fritz) .mainHeaderMitteR {
		width: calc(100% - 100px);
	}
	
	.mainHeaderMitteR .button_rot {
		padding-left: 14px;
		padding-right: 14px;
	}
	
	
	.customDropdownMainHeader .customDropdownDropdown {
		left: -80px;
		right: unset;
		text-align: left;
	}
	
	#main:not(.pageframe_fritz) #mainHeader {
		margin-bottom: calc(46px + 49px);
	}
}





/* -------------------------------- */
/* ---------- Main Menue ---------- */
/* -------------------------------- */
#mainMenueOpenChk, #mainMenue_mobile_chk, #mainMenue_kb_show_menu, #mainMenue_kb_hide_menu {display: none;}


/* ----- Desktop ----- */
@media (min-width: 1025px) {
	#mainMenueOpenLbl, #mainMenueOpenLblArea, #mainMenue > li > ul > li > div, #mainMenueCloseLbl {display: none;}
	
	
	/* ----- Ebene 1 ----- */
	#mainMenue, #mainMenue ul {
		list-style: none;
		margin: 0;
		padding-left: 0;
	}

	#mainMenue {
		display: flex;
		flex-wrap: wrap;
		justify-content: left;
		position: relative;
	}

	#mainMenue > li {
		padding: 8px 5px;
	}
	
	#mainMenue > li:first-of-type {
		padding-left: 0;
	}
	
	#mainMenue > li:last-of-type {
		padding-right: 0;
	}

	#mainMenue a {
		text-decoration: none;
		display: block;
		color: inherit;
	}

	#mainMenue a:hover {
		color: var(--dunkelblau);
	}

	#mainMenue > li > a {
		padding: 10px 12px;
		line-height: 100%;
		position: relative;
		top: -100%;
		pointer-events: none;
	}

	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"] {
		padding-right: 48px;
		background-color: var(--rot);
		color: var(--weiss);
	}

	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"]::before {
		content: 'menu';
		font-family: var(--icons);
		font-size: 24px;
		vertical-align: top;
	}
	
	#mainMenue > li > div {
		cursor: pointer;
		position: relative;
		height: 100%;
		top: 0;
	}




	/* ----- Ebene 2 ----- */
	#mainMenue > li > ul {display: none;}

	#mainMenue > li:hover > ul, #mainMenue > li.isnode.openleaf > ul {display: flex;}
	
	#mainMenue > li:first-of-type:hover > a[href="./baustoffkatalog"] ~ ul,
	#mainMenue > li:first-of-type.isnode.openleaf > a[href="./baustoffkatalog"] ~ ul {display: block;}
	
	#mainMenue > li.isnode:hover > ul {
		z-index: 2;
	}

	#mainMenue > li > ul {
		flex-wrap: wrap;
		justify-content: left;
		align-content: flex-start;
		gap: 30px;
		position: absolute;
		top: 100%;
		left: 0;
		z-index: 1;
		background-color: var(--weiss);
		padding: var(--abstand_18);
		width: 100%;
		max-height: calc(100vh - 230px);
		overflow-y: auto;
		scrollbar-width: thin;
		box-shadow: 0 5px 6px #00000029;
	}
	
	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"] ~ ul {
		height: calc(100vh - 230px);
		padding: 0;
	}

	#mainMenue > li > ul > li {
		width: calc(33.33% - 20px);
	}
	
	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"] ~ ul > li {
		width: 25%;
	}
	
	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"] ~ ul > li {
		padding: 0 30px 30px 30px;
	}
	
	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"] ~ ul > li:first-of-type {
		padding-top: 30px;
	}

	#mainMenue > li > ul a {
		transition: padding-left 0.15s ease-in-out;
	}

	#mainMenue > li > ul a:hover {
		padding-left: 5px;
	}


    #mainMenue > li > ul > li > a {
        position: relative;
    }

    #mainMenue > li:first-of-type > a[href="./baustoffkatalog"] ~ ul > li > a::after {
        content: 'keyboard_arrow_right';
        font-family: var(--icons);
        display: block;
        position: absolute;
        right: 0;
        top: 0;
    }


	/* Ebene 3 */
	#mainMenue > li > ul > li ul {
		display: none;
	}
	
	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"] ~ ul > li:hover > ul {
		display: flex;
	}
	
	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"] ~ ul > li > ul {
		flex-wrap: wrap;
		justify-content: left;
		align-content: flex-start;
		gap: 30px;
		position: absolute;
		top: 0;
		right: 0;
		width: 75%;
		padding: 30px 30px 30px 0;
		min-height: 100%;
	}
	
	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"] ~ ul > li > ul > li {
		width: calc(33.33% - 20px);
	}
	
	
	/* Ebene 4 */
	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"] ~ ul > li > ul > li > ul {
		display: block;
		font-size: 90%;
	}
	
	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"] ~ ul > li > ul > li > a,
	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"] ~ ul > li > ul > li > ul > li {
		margin-bottom: 15px;
	}
	
	#mainMenue > li:first-of-type > a[href="./baustoffkatalog"] ~ ul > li > ul > li > ul > li:nth-of-type(1n+5):not(:last-of-type) {
		display: none;
	}
}


/* ----- Mobil ----- */
@media (max-width: 1024px) {
	#mainMenueSeitenreiter, #mainMenue li.openleaf {
		position: fixed;
		width: 100%;
		max-width: 400px;
		height: 100%;
		z-index: 2;
		overflow-y: auto;
		scrollbar-width: thin;
		right: -400px;
		top: 0;
		background-color: var(--weiss);
	}
	
	
	#mainMenueSeitenreiter {
		transition: right 0.5s ease-in-out;
	}
	
	#mainMenueOpenChk:checked ~ #mainMenueSeitenreiter, #mainMenueOpenChk:checked ~ #mainMenueSeitenreiter li.openleaf {
		right: 0;
	}
	
	
	
	/* ----- Ebene 1 ----- */
	#mainMenue {
		font-size: 90%;
	}
	
	#mainMenue::before {
		content: 'Menü';
		display: block;
		color: var(--dunkelgrau);
		text-align: center;
		padding: 14px;
	}
	
	#mainMenue, #mainMenue ul {
		list-style: none;
		margin: 0;
		padding-left: 0;
	}
	
	
	#mainMenue li, #mainMenue::before {
		border-bottom: 1px solid var(--dunkelgrau);
	}
	
	
	#mainMenue a {
		display: block;
		padding: 14px;
		color: inherit;
		text-decoration: none;
		transition: none;
	}
	
	#mainMenue li.isnode > a {
		width: calc(100% - 55px);
		border-right: 1px solid var(--dunkelgrau);
	}
	
	
	#mainMenue li > div {
		display: none;
	}
	
	#mainMenue li.isnode > div {
		display: inline-block;
		width: 55px;
		height: 53px;
		cursor: pointer;
		position: absolute;
		right: 0;
	}
	
	#mainMenue li.isnode > div::after {
		content: '';
		display: block;
		width: 10px;
		height: 10px;
		border-top: 2px solid var(--dunkelgrau);
		border-right: 2px solid var(--dunkelgrau);
		transform: rotate(45deg) translate(-50%);
		margin-left: auto;
		margin-right: auto;
		margin-top: 45%;
	}
	
	
	/* ----- Ebene 2 ----- */
	#mainMenue ul {display: none;}
	
	#mainMenue ul > li:first-of-type {
		border-top: 1px solid var(--dunkelgrau);
	}
	
	#mainMenue li.openleaf > ul {
		display: block;
	}
	
	#mainMenue li.openleaf {
		border-bottom: none;
		border-top: none !important;
		
	}
	
	
	#mainMenue li.openleaf > a {
		text-align: center;
		color: var(--dunkelgrau);
		width: 100%;
		border-right: none;
	}
	
	
	#mainMenue li.openleaf > div {
		float: none;
		position: absolute;
		left: 0;
		top: 0;
		transform: rotate(180deg);
	}
	
	
	/* ----- Ebene 4 ----- */
	#mainMenue > li:first-of-type > ul > li > ul > li > ul > li > a[href="./material_baustoffe"] {
		display: none;
	}
	
	
	
	/* ----- Labels ----- */
	
	#mainMenueOpenLblArea {
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		height: 100%;
		width: 100%;
		cursor: unset;
		z-index: 1;
		opacity: 0;
		pointer-events: none;
		transition: opacity 0.5s ease-in-out;
		background-color: rgba(0, 0, 0, 0.2);
	}
	
	#mainMenueOpenChk:checked ~ #mainMenueOpenLblArea {
		opacity: 1;
		pointer-events: all;
	}
	
	
	#mainMenueOpenLbl::before {
		content: 'menu';
		font-family: var(--icons);
		font-size: 24px;
		vertical-align: top;
		margin-right: 5px;
	}
	
	
	#mainMenueCloseLbl {
		font-family: var(--icons);
		font-size: 30px;
		color: var(--dunkelgrau);
		position: absolute;
		top: 14px;
		right: 14px;
	}
}

@media (max-width: 460px) {
	#mainMenueOpenLbl::before {
		margin-right: 0;
	}
}




/* ------------------------------------------------ */
/* -------------------- Footer -------------------- */
/* ------------------------------------------------ */
footer a {
	color: var(--weiss);
	text-decoration: none;
	font-family: var(--regular);
}

footer a:hover {
	color: var(--weiss);
	text-decoration: underline;
}

#footerLogo {
	display: inline-block;
	vertical-align: top;
	height: 64px;
}


/* ----- Back to Top ----- */
#backtotop {
	display: inline-flex;
	opacity: 0;
	transform: scale(0);
	transition: 0.45s cubic-bezier(0.3, 0, 0.15, 1);
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	background-color: var(--dunkelblau);
	position: fixed;
	z-index: 1;
	bottom: var(--abstand_15);
	right: var(--abstand_15);
}

.pageframe_fritz #backtotop {
	background-color: var(--fritzdunkelgruen);
}

#backtotop svg {
	width: 50%;
}

#backtotop svg use {
	fill: var(--weiss);
}


/* ----- No JS ----- */
#noJSMessage {
	width: 40px;
	height: 40px;
	position: fixed;
	right: var(--abstand_15);
	bottom: var(--abstand_15);
	pointer-events: all;
	z-index: 1;
}/* --- --- */#passwortVergessenLogin .passwortVergessenLogin_hide {
	display: none;
}/* --- --- */