.highlighted {
  color:#077cc1 !important;
  font-weight:bold !important;
}

a.has-submenu:hover {
  color:#077cc1 !important;
  font-weight:bold !important;
}


.img-responsive {
	display: inline-block;
	max-width: 100%;
}

.dropdown-menu li a {
   font-size: 14px;
}

.js-submenu li.dir a {
	display: block !important;
	width:100% !important;
	text-align: left !important; 	
	padding:6px 0 0px 30px !important;
	box-sizing: border-box;
	height: 29px !important;
	background: #666 !important;
}

.js-submenu li.dir a:hover {
	background: #333 !important;
}


.js-submenu li.sub a {
	background: #888 !important;
}	

.js-submenu li.dir.active > a, .js-submenu li.sub.activesub > a {
    //background-image: url(../images/template/navleft_hover.png) !important;
    //background-repeat: repeat-y  !important;
	color: #FFC !important;
}

.mobile-menu {
	display:none;
	font-size: 30px;
}
.mobile-menu:hover {
	color: #000;
}
@media (max-width: 845px) {
        #top-area {
          height:100px;
	}
	.navbar {
	  display: block;
          font-size: 16px;
	}


	div.image_right {
		border: none !important;
	}

	div.image_right img {
		width:100% !important;
		height: auto !important;
	}

	#container {
		background-image:none;
	}
    #wrapper {
		width: 100%;
		max-width:624px;
	}
	#logo {
		position: static;
		width:100%;
		//text-align: left;
		padding: 15px 0 0 0;
	}
	#logo a {
		padding-left:10px;
	}
	#subnav_top {
		display: none;
		position: static;
		width:100%;
		text-align: center;
		margin: 10px 0;        
	}
	#navleft-area {
		position: absolute;
		display: none;
		top: -80px;
		left: auto;
        right: 0 !important;
		height: auto;
	}
    #slogan {
		display: none;
	}

	#topnav-area {
		display:none;
	}

.topnav-area {
    position: relative;
    top: 2px;
    width: 100%;
    height: 30px;
    margin-left: 0;
    background-image: url(../images/template/navtop_bg_streifen.png);
    background-repeat: repeat-x;
    z-index: 200;
}

	.dropdown {
		float:none;
	}

	#nav-image-area {
		display: block;
        position: relative !important;
		width: 100%;
		height: auto;
	}
	#nav-image-area .image_right {
		position: static;
		width:100%;
		height: auto;
        border-left: solid 1px #FFF;
        border-right: solid 1px #FFF;
	}
	#nav-image-area .image_right img {
		display: block;
		width:100%;
	}
	#content-area {
	    border-left: solid 1px #666;
		border-right: solid 1px #666;
	}
	#content-area .content {
		margin-left:0;
		width:100%;
		padding: 30px 10px 0 10px;
		box-sizing: border-box;    
		margin-top:0;
	}
	h1 {
		font-size: 20px;
	}	
	h2 {
		font-size: 18px;
	}	
	#footer-content {
		position:relative;
		margin:0px auto;
		width:100%;
		margin-top:0; /*Textabstand von oben*/
		font-size:11px;
		color:#666;
	}
	#footer-content ul {
		margin: 30px 0 0 0;
		padding:0;
		list-style-type:none;
		text-align:center;
	}
	#footer-content li {
		float:none;
		display: inline-block;
	}
	#footer-content  li a {
		display: inline-block;
		height: auto;
		font-size: 11px;
		text-decoration: none;
		padding: 2px 6px 2px 3px;
		background-repeat:no-repeat;
		background-position: right 4px;
		color: #666;
	}	
	#footer-content  li.last {
		width: auto;
	}
	#footer-content  li.active a,
	#footer-content  li a:hover {
		color:#077cc1;
	}
	#footer-content .first a { padding-left:4px; }
	#footer-content .last a { background-image:none; }
	#copyright {
		position: static;
		width: 100%;
		text-align: center;
		padding: 10px 0;
	}
	.flagge {position: static;}
	li.last a {width: auto;}
	li.last a span {margin-left: 5px !important;}
	.mobile-menu {
		display:block;
		position: absolute;
		right: 20px;
		top: -70px;
	}
}

@media (max-width: 630px) {


	body {
		background: none;
	}
	#content-area {
	    border-left: 0;
		border-right: 0;
	}
	.c4 > div {
		position: static !important;
		width:100% !important;
	}
	.form {
		height: auto !important;
	}
	.form-ta {
		position: relative;
		height: 70px;
	}
	.form input {
		position: static !important;
		display: block !important;
		width:100% !important;
	}
	.form-ta textarea {
		position: static !important;
		display: block !important;
		width:100% !important;
	}
	.tbl-responsive {
		width:100%;
		overflow-x:scroll;
	}
	table.small-image img {
		width: 100% !important;
		height: auto !important;
	}
	.form_submit {
		margin:20px auto;
		text-align: center;
		
	}
}

.nav .open>a, .nav .open>a:hover, .nav .open>a:focus {
	background: #FFF;
}

/* KIBO mobile form refresh */
@media (max-width: 630px) {
    input.button,
    input.button.contact-submit {
        width: auto !important;
        min-width: 180px;
        display: inline-block !important;
    }
}
/* KIBO contact form mobile layout */
@media (max-width: 630px) {
    .contact-form-box {
        padding:14px;
    }

    .form-field label,
    .form-field input {
        float:none;
        display:block;
        width:100%;
    }

    .form-field label {
        margin-bottom:4px;
        line-height:18px;
    }

    .required-note,
    .form-submit-new {
        margin-left:0;
    }

    .contact-submit {
        width:100%;
        text-align:center;
    }
}

.privacy-check label {
    font-weight: normal;
}

/* KIBO enquiry form mobile layout */
@media (max-width: 630px) {
    .enquiry-form-box form > table {
        display:block;
        overflow-x:auto;
    }

    .enquiry-form-box .col-xs-4,
    .enquiry-form-box .col-xs-8 {
        float:none;
        width:100%;
        padding-left:0;
        padding-right:0;
    }

    .enquiry-form-box .form input {
        float:none;
        display:block;
        width:100%;
        margin-top:4px;
    }

    .enquiry-form-box .form-submit-new {
        margin-left:0;
    }
}

/* KIBO mobile polish after cleanup */
@media (max-width: 845px) {
    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
    }

    #wrapper,
    #container,
    #top-area,
    #nav-image-area,
    #content-area,
    .navbar {
        box-sizing: border-box;
    }

    #wrapper {
        max-width: 100%;
        overflow: hidden;
    }

    #top-area {
        height: 112px;
    }

    #logo {
        width: auto;
        padding: 25px 0 14px 0;
    }

    #logo a {
        display: inline-block;
        padding-left: 12px;
    }

    #logo img {
        width: 154px;
        max-width: 72vw;
        height: auto;
    }

    .navbar {
        min-height: 0;
        margin: 0;
        border-left: 0;
        border-right: 0;
    }

    .navbar-header {
        min-height: 0;
    }

    .navbar-toggle {
        margin-top: 7px;
        margin-right: 15px;
        margin-bottom: 7px;
    }

    #nav-image-area .image_right {
        border-left: 0 !important;
        border-right: 0 !important;
        overflow: hidden;
    }

    #nav-image-area .image_right img,
    .home-header-slider,
    .home-header-slide {
        display: block;
        width: 100% !important;
        max-width: 100%;
        height: auto !important;
    }

    #content-area {
        border-left: 0;
        border-right: 0;
    }

    #content-area .content {
        padding-left: 12px;
        padding-right: 12px;
    }
}
/* KIBO mobile header/footer repair */
@media (max-width: 845px) {
    .home-header-slider {
        position: relative;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 624 / 213;
        overflow: hidden;
    }

    .home-header-slide {
        position: absolute;
        inset: 0;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover;
    }

    #footer-area {
        position: static;
        height: auto;
        min-height: 0;
        margin-top: 28px;
    }

    #footer-content {
        width: 100%;
        padding: 22px 14px 18px 14px;
        box-sizing: border-box;
        text-align: center;
    }

    #footer-content ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        row-gap: 4px;
        margin: 0;
        padding: 0;
    }

    #footer-content li {
        float: none;
        display: block;
    }

    #footer-content li a {
        display: block;
        font-size: 12px;
        line-height: 20px;
        margin: 0 6px 0 0;
        padding: 0 6px 0 0;
    }

    #footer-content li:nth-child(5),
    #footer-content li.last {
        width: 100%;
    }

    #footer-content li:nth-child(5) a,
    #footer-content li.last a {
        display: inline-block;
        margin-right: 0;
        border-right: 0;
    }

    #copyright {
        position: static;
        width: 100%;
        padding-top: 10px;
        text-align: center;
    }
}
/* Desktop header grid guard */
@media (min-width: 846px) {
    #wrapper {
        width: 826px !important;
        max-width: none !important;
        margin: 0 auto !important;
        overflow: visible !important;
    }

    #nav-image-area {
        width: 826px !important;
        height: 213px !important;
    }

    #nav-image-area .image_right {
        position: absolute !important;
        right: 1px !important;
        top: 0 !important;
        width: 624px !important;
        height: 213px !important;
        overflow: hidden !important;
    }

    #nav-image-area .image_right > img,
    #nav-image-area .home-header-slider,
    #nav-image-area .home-header-slide {
        width: 624px !important;
        height: 213px !important;
        max-width: none !important;
    }
}
