
header.header{

}

header.header .header-main {
  padding: 40px 0;
  position: relative;
}
.header-main::after {
  content: "";
  background-color: #bfdcbc;
  width: 100%;
  height: 7px;
  position: absolute;
  bottom: -7px;
  left: 0;
  z-index: 1;
}


header .header-main .inner > .logo {
	float: left;
    width: 275px;
    z-index: 1001;
}
header .header-main .logo a,
header .header-main .logo a:hover,
header .header-main .logo a:focus {
    display: block;
	line-height: 0;
	text-decoration: none;	
}


header .header-main .inner > .hauptmenue {
  float: right;
  margin-top: 68px;
}
header .header-main .inner > .hauptmenue .menu-desktop > ul > li {
  display: inline-block;
  margin-left: 25px;
  position: relative;
}

header .header-main .inner > .hauptmenue .menu-desktop > ul > li a {
  display: block;
  text-decoration: none;
  font-style: italic;
  font-size: 16px;
  position: relative;
}
header .header-main .inner > .hauptmenue .menu-desktop > ul > li.current a {
	color: #000;
}
header .header-main .inner > .hauptmenue .menu-desktop > ul > li.current a::after {
  content: "";
  background-color: #bfdcbc;
  width: 100%;
  height: 2px;
  left: 0;
  bottom: -8px;
  display: block;
  position: absolute;
}
header .header-main .inner > .hauptmenue .menu-desktop > ul > li.current:hover a::after {
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
}




header .header-main .inner > .hauptmenue .menu-desktop > ul > li a::after {
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
  content: "";
  background-color: #bfdcbc;
  width: 0px;
  height: 2px;
  left: 50%;
  bottom: -8px;
  display: block;
  position: absolute;
  -webkit-transform: translateX(px);
  -moz-transform: translateX(0px);
  -ms-transform: translateX(0px);
  -o-transform: translateX(0px);
  transform: translateX(0px);
}
header .header-main .inner > .hauptmenue .menu-desktop > ul > li:hover a::after {
  width: 100%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
}












.menu-desktop {
  display: block;
}
#bp-nav-trigger {
  display: none;
}

@media (max-width: 1279px) {
	header .header-main .inner > .logo {
		width: 200px;
	}
	header .header-main .inner > .hauptmenue {
		margin-top: 45px;
	}
	header .header-main .inner > .hauptmenue .menu-desktop > ul > li {
		margin-left: 15px;
	}
}
@media (max-width: 1023px) {
	.menu-desktop {
	  display: none;
	}
	#bp-nav-trigger {
	  display: block;
	}
	header.header .header-main {
		padding: 10px 0;
	}
	header.header .header-main .bp-width {
		width: 100%;
		padding-left: 15px;
		padding-right: 15px;
		box-sizing: border-box;
	}
	header .header-main .inner > .logo {
		width: 153px;
	}
}
@media (max-width: 768px) {

}
@media (max-width: 640px) {

}



/** mobiles Menü **/
#bp-nav-trigger {
  position: fixed;
  z-index: 10002;
  top: 10px;
  right: 15px;
  height: 50px;
  width: 50px;
  overflow: hidden;
  color: transparent;
  white-space: nowrap;
  text-indent: 100%;
  background-color: rgba(255,255,255,0.4);
}
#bp-nav-trigger span,
#bp-nav-trigger span::before,
#bp-nav-trigger span::after {
  position: absolute;
  height: 3px;
  width: 25px;
  background: #bfdcbc;
}
#bp-nav-trigger span {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: background .3s;
}
#bp-nav-trigger span::before,
#bp-nav-trigger span::after {
  content: '';
  top: 0;
  left: 0;
  transition: background .3s, transform .3s;
}
#bp-nav-trigger span::before {
  transform: translateY(-8px);
}

#bp-nav-trigger span::after {
  transform: translateY(8px);
}
#bp-nav-trigger:hover span, 
#bp-nav-trigger:hover span::before,
#bp-nav-trigger:hover span::after {
  background: #ddd;
}
.nav-open #bp-nav-trigger span {
  background: transparent;
}
.nav-open #bp-nav-trigger span::before,
.nav-open #bp-nav-trigger span::after {
  background: #1F2B3D;
}
.nav-open #bp-nav-trigger span::before {
  transform: rotate(-45deg);
}
.nav-open #bp-nav-trigger span::after {
  transform: rotate(45deg);
}


.bp-mobile-nav-overlay {
  position: fixed;
  z-index: 10001;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  visibility: hidden;
  transition: opacity .5s, visibility .5s;
}
.nav-open .bp-mobile-nav-overlay {
  opacity: .8;
  visibility: visible;
}
body.nav-open {
  overflow: hidden;
}



#bp-mobile-navigation.nav-container {
	position: fixed;
	z-index: 10002;
	top: 0;
	right: 0;
	height: 100%;
	width: 90%;
	max-width: 300px;
	background: #F3F3F3;
	transform: translateZ(0);
	transform: translateX(100%);
	transition: transform .5s cubic-bezier(.07,.23,.34,1);
	box-sizing: border-box;
	padding-bottom: 50px;
}
#bp-mobile-navigation.nav-container .bp-nav-inner {
	overflow: auto;
	height: 100%;
	width: 100%;
}
.nav-open #bp-mobile-navigation.nav-container {
  transform: translateX(0);
}

#bp-mobile-navigation #bp-close-the-nav {
	display: none;
	position: absolute;
	left: 10px;
	bottom: 10px;
	width: 30px;
	height: 30px;
}
.nav-open #bp-mobile-navigation #bp-close-the-nav {
	display: block;
}

#bp-mobile-navigation #bp-close-the-nav span::before,
#bp-mobile-navigation #bp-close-the-nav span::after {
  content: '';
}
#bp-mobile-navigation #bp-close-the-nav:hover span::before,
#bp-mobile-navigation #bp-close-the-nav:hover span::after {
  background: #000;
}
#bp-mobile-navigation #bp-close-the-nav span {
  background: transparent;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.nav-open #bp-mobile-navigation #bp-close-the-nav span::before,
.nav-open #bp-mobile-navigation #bp-close-the-nav span::after {
  position: absolute;
  height: 3px;
  width: 30px;
  background: #3E3E3E;
  top: 14px;
}
.nav-open #bp-mobile-navigation #bp-close-the-nav:hover span::before,
.nav-open #bp-mobile-navigation #bp-close-the-nav:hover span::after {
  background: #000;
}
.nav-open #bp-mobile-navigation #bp-close-the-nav span::before {
  transform: rotate(-45deg);
}
.nav-open #bp-mobile-navigation #bp-close-the-nav span::after {
  transform: rotate(45deg);
}



#bp-mobile-navigation.nav-container .bp-nav-inner .logo a, 
#bp-mobile-navigation.nav-container .bp-nav-inner .logo a:hover, 
#bp-mobile-navigation.nav-container .bp-nav-inner .logo a:focus {
    display: block;
	line-height: 0;
	text-decoration: none;
	padding: 10px 15px;
}

#bp-mobile-navigation .cookie-einstellungen ul > li span {
  padding: 15px;
  display: block;
  border-bottom: 1px solid #ccc;
}
#bp-mobile-navigation .cookie-einstellungen ul > li span:hover {
  background-color: #ddd;
  cursor: pointer;
}





.bp-slider-main .ein-slide {
    height: 700px;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    background-position: center center;
}
.bp-slider-main .ein-slide .inner {    
    position: absolute;
    left: 3%;
    bottom: 100px;
    color: #fff;    
}
@media (max-width: 1279px) {
	.bp-slider-main .ein-slide {
		height: 600px;
	}
}
@media (max-width: 1023px) {
	.bp-slider-main .ein-slide {
		height: 500px;
	}
}
@media (max-width: 768px) {
	.bp-slider-main .ein-slide {
		height: 400px;
	}
}
@media (max-width: 640px) {
	.bp-slider-main .ein-slide {
		height: 300px;
	}
}
@media (max-width: 480px) {
	.bp-slider-main .ein-slide {
		height: 250px;
	}
}






footer.footer {

}
footer.footer a,
footer.footer a:hover,
footer.footer a:focus{	

}


footer.footer .footer-inner {
  position: relative;
}
footer.footer .footer-inner #footer-hohe-pforte {
  position: absolute;
  bottom: -100px;
  right: 0;
  width: 120px;
  fill: #d2e7d0;
}

footer.footer .footer-main {
  position: relative;
}
footer.footer .footer-main .footer-main-wrapper > .ein-item {
	float: left;
}
footer.footer .footer-main .footer-main-wrapper > .ein-item#adresse {
  width: 200px;
}

footer.footer .footer-main .footer-main-wrapper > .ein-item#ansprechpartner {
  margin-left: 75px;
}
footer.footer .footer-main .footer-main-wrapper > .ein-item#bankverbindung {
  margin-left: 75px;
}


footer.footer h5 {
	font-weight: 600;
	font-size: 1.1em;
	line-height: 1.4;
	font-style: italic;
	margin-bottom: 20px;
}



footer.footer .footer-bottom {
  margin-top: 75px;
  position: relative;
}
footer.footer .footer-bottom nav {
  float: left;
}
footer.footer .footer-bottom nav.rechtliches {
  width: 200px;
}
footer.footer .footer-bottom nav ul > li {
  float: left;
  margin-left: 25px;
  line-height: 35px;
}
footer.footer .footer-bottom nav ul > li:first-child {
  margin-left: 0;
}
footer.footer .footer-bottom nav ul > li.item-grafik.instagram {
  margin-left: 75px;
}

footer.footer .footer-bottom nav ul > li a {
  text-decoration: none;
  display: block;
}
footer.footer .footer-bottom nav ul > li.item-text a {
  font-style: italic;
  font-weight: 600;
}

footer.footer .footer-bottom nav ul > li.item-grafik a {
  font-size: 35px;
}





@media (max-width: 1279px) {

}
@media (max-width: 1023px) {
	footer.footer {
		text-align: center;
	}
	footer.footer .bp-width {
		width: 100%;
		padding-left: 15px;
		padding-right: 15px;
		box-sizing: border-box;
	}
	footer.footer .footer-inner #footer-hohe-pforte {
		bottom: -50px;
		right: inherit;
		left: calc(50% - 100px);
		width: 200px;
	}
	footer.footer .footer-main .footer-main-wrapper > .ein-item {
		float: none;
	}
	footer.footer .footer-main .footer-main-wrapper > .ein-item#adresse {
		width: auto;
	}

	footer.footer .footer-main .footer-main-wrapper > .ein-item#ansprechpartner {
		margin-left: 0;
		margin-top: 35px;
	}
	footer.footer .footer-main .footer-main-wrapper > .ein-item#bankverbindung {
		margin-left: 0;
		margin-top: 35px;
	}

	footer.footer .footer-bottom {
		margin-top: 50px;
	}
	footer.footer .footer-bottom nav {
		float: none;
	}
	footer.footer .footer-bottom nav.rechtliches {
		width: auto;
		margin-bottom: 35px;
	}	
	footer.footer .footer-bottom nav ul > li:first-child {
	  margin-left: 15px;
	}
	footer.footer .footer-bottom nav ul > li {
	  float: none;
	  margin-left: 15px;
	  margin-right: 15px;
	  line-height: 35px;
	  display: inline-block;
	}
	
	footer.footer .footer-bottom nav ul > li.item-grafik.instagram {
		margin-left: 15px;
	}
}
@media (max-width: 768px) {

}
@media (max-width: 640px) {

}






/** 357 Web **/
#cpnb a#cpnb-decline-btn {
    display: none !important;
}
@media (max-width: 1023px) {
	.cpnb-m-cookies-floatButton.cpnb-m-cookies-floatButtonPosition_bottom_left {
	  display: none;
	}
}


