/*DESKTOP VERSION CSS*/

a,button,.swiper-button-prev,.swiper-button-next,.swiper-pagination-bullet{
	cursor: pointer !important;
	pointer-events: auto !important;
	border: 1px solid transparent;
}

a:focus-visible,button:focus-visible,.swiper-button-prev:focus-visible,.swiper-button-next:focus-visible,.swiper-pagination-bullet:focus-visible{
	outline: 3px solid var(--FokusColor) !important;
	position: relative;
	border: 1px solid var(--FokusColor) !important;
	outline-offset: 3px !important;
	outline-width: 3px !important;
}

/*.green_item *{
    color: #33B6AE !important;
}*/



.disclosure-nav>li:last-child a{
    position: relative;
    padding-left: 30px !important;
}

.disclosure-nav>li:last-child a:before{
    content: "";
    width: 20px;
    height: 20px;
    position: absolute;
    left: 0px;
    background: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0 11.9576C0 5.35394 5.35394 0 11.9576 0C18.5612 0 23.9139 5.35394 23.9152 11.9576C23.9152 18.5612 18.5612 23.9152 11.9576 23.9152C5.35394 23.9152 0 18.5612 0 11.9576ZM6.38182 19.6279C6.08364 19.8218 5.82182 20.0376 5.59273 20.2739C7.35879 21.6279 9.56485 22.4352 11.9576 22.4339C14.3491 22.4339 16.5564 21.6279 18.3212 20.2739C18.0921 20.0376 17.8291 19.8218 17.5297 19.6279C16.2727 18.8121 14.3855 18.3806 12.0727 18.3806C12.0661 18.3806 12.0594 18.3809 12.0527 18.3812C12.0461 18.3815 12.0394 18.3818 12.0327 18.3818H12.0206L11.9964 18.383L11.9527 18.3842L11.9091 18.383L11.8788 18.3818H11.8727C11.8697 18.3818 11.8666 18.3818 11.8636 18.3817C11.8601 18.3815 11.8566 18.3814 11.853 18.3812H11.853H11.8529C11.846 18.3809 11.8389 18.3806 11.8315 18.3806C9.52121 18.3806 7.63636 18.8121 6.38182 19.6279ZM19.4279 19.2958C17.9479 17.7333 15.4436 16.9018 12.0715 16.9018C12.04 16.9018 12.0073 16.903 11.9758 16.9042L11.9515 16.9055L11.9273 16.9042L11.9271 16.9042C11.8957 16.903 11.8642 16.9018 11.8315 16.9018C8.45939 16.9018 5.96121 17.7321 4.48485 19.2945C2.62788 17.4024 1.48 14.8121 1.48 11.9576C1.48 6.18061 6.18061 1.48 11.9576 1.48C17.7345 1.48 22.4352 6.18061 22.4352 11.9576C22.4352 14.8121 21.2861 17.4036 19.4279 19.2958ZM11.9576 4.09212C9.09212 4.09212 7.09212 6.20485 7.09212 9.2303C7.09212 12.4133 9.27515 15.0024 11.9576 15.0024C14.6412 15.0024 16.8242 12.4133 16.8242 9.2303C16.8242 6.20485 14.823 4.09212 11.9576 4.09212ZM14.2667 12.3564C13.6327 13.1091 12.8121 13.5236 11.9576 13.5236C11.103 13.5236 10.2836 13.1091 9.6497 12.3576C8.95394 11.5321 8.57091 10.423 8.57091 9.23151C8.57091 8.13212 8.90061 7.20364 9.52485 6.54545C10.1273 5.90909 10.9685 5.57333 11.9576 5.57333C12.9467 5.57333 13.7891 5.90909 14.3915 6.54545C15.0158 7.20364 15.3455 8.13333 15.3455 9.23151C15.3455 10.4206 14.9624 11.5309 14.2667 12.3564Z' fill='%23424242'/%3E%3C/svg%3E");
    background-size: contain;
    background-position:center;
    background-repeat: no-repeat;
    opacity: 1;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(255, 255, 255, 0) !important;
}

header a:focus, header button:focus {
    transition: none !important;
    outline-width: 0 !important;
}

.logo a{
    border: 1px solid transparent;
	display: table;
	width: 100%;
	max-width: 100px;
}

.mainNavigation_desktop{
	padding-top: 0px;
	padding-bottom: 0px;
	display: flex;
	flex-wrap: wrap;
	padding-top: 20px;
}


.mainNavigation_desktop .logo + nav{
	width: 90%;
}

.mainNavigation_desktop .topNAvigation{
	width: 100%;
	text-align: right;
}

.mainNavigation_desktop .topNAvigation nav{
	display: flex;
	justify-content: flex-end;
	padding-right: 20px;
}

.mainNavigation_desktop #topNavi{
	justify-content: flex-end;
	padding-right: 1em !important;
	padding-top: 10px;
	padding-bottom: 10px;
}

.mainNavigation_mobile{
	padding-top: 16px;
	padding-bottom: 16px;
}

.mainNavigation_desktop .ct-container{
	/*padding: 15px min(3vw, 20px) !important;*/
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}

.mainNavigation_desktop .logo img{
    width: 100%;
    max-width: 230px;
	position: relative;
	top: -2px;
}

.mainNavigation_desktop .logo{
    width: 10% !important;
	position: relative;
	max-width: 85px !important;
	/*top: 20px;*/
}

.mainNavigation_desktop .logo + nav > ul{
	justify-content: flex-end;
}

.logo a:focus-visible{
	outline: 3px solid var(--FokusColor);
	position: relative;
	border: 1px solid var(--FokusColor);
	outline-offset: 3px !important;
	outline-width: 3px !important;
}

.mainNavigation_desktop {
	z-index: 999 !important;
	background: var(--kf-white);
	display: none;
}

.mainNavigation_desktop a{
	font-weight: 500 !important;
}

.mainNavigation_desktop .disclosure-nav > li.active > a{
	font-weight: 700 !important;
	/*text-decoration: underline !important;*/
	color: var(--kf-grey-900) !important;
}

.mainNavigation_desktop > div{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.disclosure-nav {
	display: flex;
	list-style-type: none;
	padding: 0;
	margin: 0;
	font-family: var(--kauflandFontFamily) !important;
	font-weight: 500 !important;
}

.disclosure-nav ul {
	background-color: #ffffff;
	border: 1px solid var(--kf-grey-900);
	display: block;
	list-style-type: none;
	margin: 0;
	min-width: 300px;
	right: 0px;
	padding: 0;
	position: absolute;
	top: calc(100% + 24px);
	padding: 20px !important;
	border-radius: 0px !important;
	border-top: 1px solid var(--kf-grey-900) !important;
}

/*.disclosure-nav ul:before {
	content: "";
    height: 25px;
    position: absolute;
    top: -25px;
    left: 30%;
    width: 40px;
    clip-path: polygon(0 0, 0% 100%, 100% 100%);
    background: #ffffff;
    opacity: 1;
}*/

.disclosure-nav li {
	margin: 0;
}

.disclosure-nav>li {
	display: flex;
	position: relative;
	margin-right: 30px !important;
	align-items: center;
}

.disclosure-nav>li:last-child {
	margin-right: 0px !important;
}

/*.disclosure-nav > li.has-children{
	margin-right: 40px !important;
}*/

.disclosure-nav > li > a:hover,.disclosure-nav > li > a:focus-visible{
	/*text-decoration: underline;*/
	color: var(--kf-grey-900) !important;
}

.disclosure-nav > li.active, .disclosure-nav > li.active.has-children,.disclosure-nav ul > li.active a,.mobile-menu.menu-container li.active > a, .mobile-menu.menu-container ul  li  ul li.active  a{
	/*text-decoration: underline;*/
	font-weight: 700 !important;
}

.disclosure-nav > li > a + button{
	padding-left: 0.5em !important;
	padding-right: 0.5em !important;
	cursor: pointer;
	position: relative;
}

.disclosure-nav > li > a + button svg{
	pointer-events: none !important;
}

.disclosure-nav ul a {
	border: 0;
	color: var(--kf-grey-900);
	display: block;
	margin: 0;
	padding: 0.5em 1em;
	font-weight: normal;
}


.disclosure-nav ul a:hover,
.disclosure-nav ul a:focus-visible {
	background-color: transparent;
	margin-bottom: 0;
	text-decoration: none;
	/*text-decoration: underline;*/
	font-weight: 700 !important;
}

.disclosure-nav ul a:focus {
	outline: 5px solid var(--FokusColor);
	position: relative;
}


.disclosure-nav button,
.disclosure-nav .main-link {
	align-items: center;
	background-color: transparent;
	border: 1px solid transparent;
	/*border-right-color: #ccc;*/
	color: var(--kf-red);
	font-weight: bold !important;
	display: flex;
	padding: 0.5em;
	padding-right: 0px !important;
	padding-left: 0px !important;
}

/*.disclosure-nav > li{
	border-right: 1px solid #074d520f !important;
}*/

.disclosure-nav > li:last-child{
	border: none !important;
}

/*.disclosure-nav > li:last-child{
	margin-right: -35px !important;
}*/


.disclosure-nav .main-link {
	border-right-color: transparent;
}

/*.disclosure-nav button::after {
	content: "";
	border-bottom: 1px solid var(--ek-mainblue);;
	border-right: 1px solid var(--ek-mainblue);
	height: 0.5em;
	margin-left: 0.75em;
	width: 0.5em;
	transform: rotate(45deg);
	position: relative;
	top: -2px;
}*/

.disclosure-nav .main-link+button::after {
	margin-left: 0;
}

.disclosure-nav button:focus-visible,
.disclosure-nav .main-link:focus-visible,#topNavi.disclosure-nav a:focus-visible{
	border-color: var(--FokusColor);
	outline: 3px solid var(--FokusColor);
	position: relative;
	outline: 3px solid var(--FokusColor);
	position: relative;
	border: 1px solid var(--FokusColor);
	outline-offset: 3px !important;
	outline-width: 3px !important;
}

.disclosure-nav button:hover,
.disclosure-nav button[aria-expanded="true"] {
	background-color: var(--theme-palette-color-1);
	color: #fff;
}

.disclosure-nav button:hover::after,
.disclosure-nav button[aria-expanded="true"]::after {
	border-color: #fff;
}

.aktivieren_item a, .login_item a{
	font-weight: 700 !important;
	color: var(--kf-grey-900) !important;
}

#main-container .aktivieren_item:hover a, #main-container .login_item:hover a{
	color: var(--kf-red) !important;
}

/*END DESKTOP VERSION CSS*/


/*MOBILE VERSION CSS*/

.mainNavigation_mobile{
    display: flex !important;
}

.mainNavigation_mobile nav > ul{
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 0px 30px;
}

.mainNavigation_mobile nav > ul > li{
	display: flex;
	flex-direction: column !important;
	align-items: flex-start;
	justify-content: flex-start !important;
	position: relative;
	width: 100%;
	border-bottom: 1px solid var(--kf-grey-900);
	padding: 10px 0px;
}

.mainNavigation_mobile nav > ul > li > a{
	width: auto !important;
	padding-bottom: 0px !important;
	padding-top: 0px !important;
}

#main-container .mainNavigation_mobile nav > ul > li > a.active{
	color: var(--kf-red) !important;
}

.mainNavigation_mobile > div{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.mainNavigation_mobile .logo img{
    width: 100%;
    max-width: 200px;
}

#burger-menu-mobile{
    width: 50px;
    height: 50px;
    background: none !important;
	color: var(--kf-grey-900);
	display: flex;
    align-items: center;
    justify-content: center;
	z-index: 99999999999 !important;
}

#burger-menu-mobile svg{
	height: 30px !important;
	width: 30px !important;
}

#offcanvas-mobile {
  position: fixed;
  top: 0;
  opacity: 0;
  width: 80%;
  height: 100%;
  background-color: var(--kf-white);
  transition: none !important;
  right: 0px;
  left: auto !important;
  padding-top: 50px;
  overflow: auto !important;
  display: flex !important;
  z-index: -1;
}

#offcanvas-mobile .ct-panel-actions{
	padding-top: 0px !important;
	margin-bottom: 50px !important;
}

#offcanvas-mobile.active {
  opacity: 1 !important;
  z-index: 999999999999 !important;
}


#offcanvas-mobile button{
    padding: 0px !important;
}

#offcanvas-mobile .mobile-menu button{
    display: flex !important;
    position: relative;
    align-items: center;
    background-color: transparent;
    border: 1px solid transparent;
    border-color: transparent;
    display: flex;
    padding: 1em;
	position: absolute;
	right: 0px;
	top: 0px;
}

#offcanvas-mobile:before{
	content: "";
	background: var(--ek-mainblue);
	position: absolute;
	opacity: 0.9;
	left: 0px;
	width: 20%;
	top: 0px;
	height: 100%;
	position: fixed;
}

/*[aria-expanded="true"][aria-controls="id_service-faq_menu"] {
	right: 0px !important;
}*/

/*#offcanvas-mobile .mobile-menu button:after{
    content: "";
	border-bottom: 2px solid var(--ek-mainblue);
	border-right: 2px solid var(--ek-mainblue);
	height: 0.5em;
	width: 0.5em;
	position: absolute;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
}*/

#offcanvas-mobile ul li,#offcanvas-mobile ul li a{
	color: var(--kf-grey-900) !important;
}

#offcanvas-mobile #close-menu-mobile{
	color: var(--kf-grey-900) !important;
	background: none !important;
	border-radius: 50% !important;
}

#offcanvas-mobile #close-menu-mobile svg{
	width: 50px !important;
	height: 50px !important;
}

#offcanvas-mobile .has-submenu > a{
	font-size: 1.25rem !important;
	padding: 0px !important;
}

#offcanvas-mobile .has-submenu ul a{
	font-size: 1.063rem !important;
	cursor: pointer !important;
	pointer-events: auto !important;
	border: 1px solid transparent;
}

#offcanvas-mobile .has-submenu ul li{
	margin-bottom: 5px !important;
	width: fit-content;
}


#offcanvas-mobile .has-submenu ul li:last-child{
	margin-bottom: 0px !important;
}
    
	
.submenu {
  display: none;
}

.submenu.active {
  display: block;
}

#offcanvas-mobile .submenu{
	padding-bottom: 10px;
    margin-left: 20px;
    margin-top: 20px;
    font-size: 1rem;
}

/* Estilos para el foco */
#burger-menu-mobile:focus-visible,
#close-menu-mobile:focus-visible,
.ct-menu-link:focus-visible,
.submenu-toggle:focus-visible,#offcanvas-mobile .has-submenu ul a:focus-visible {
	outline: 3px solid var(--FokusColor) !important;
	position: relative;
	border: 1px solid var(--FokusColor) !important;
	outline-offset: 3px !important;
	outline-width: 3px !important;
}

/*END MOBILE VERSION CSS*/

@media (max-width: 689px){
	.mainNavigation_mobile .logo img{
		max-width: 150px !important;
	}
	#offcanvas-mobile .ct-panel-actions{
		margin-bottom: 20px !important;
	}
	#offcanvas-mobile{
		padding-top: 30px !important;
	}
}

@media (min-width: 1200px){
    .mainNavigation_desktop {
        display: flex !important;
    }
}

@media (min-width: 1200px){
    .mainNavigation_mobile{
        display: none !important;
    }
}

