.mobile-nav{
margin:auto;
max-width:100%;
}
.mobile-nav a{
text-decoration:none;
}
.menu-btn div {
  position: absolute;
  right: 0;
  top: 0;
  padding-right: 8px;
  margin-top: -0.50em;
  line-height: 1.2;
  font-size: 18px;
  font-weight: 200;
  vertical-align: middle;
  z-index: 99;
}
button.menu-btn{
position:relative;
margin-right:15px;
padding:9px 10px;
margin-top:8px;
margin-bottom:8px;
border:1px solid #ccc;
border-radius: 4px;
cursor:pointer;
overflow:visible;
}

.menu-btn span {
  display: block;
  width: 19px;
  height: 3px;
  margin: 4px 0;
  background: rgb(0,0,0);
  z-index: 99;
  text-align:right;
}
 
.responsive-menu{
  display: none;
  margin-top:30px;
}
 
.expand {
  display: block !important;
}
 
#mainnavbar .open-menu-link{
float:right;
  display: none;
  position: absolute;
  right: 0;
  top:0;
  cursor: pointer;
  float:right;
  text-align:center;
  width:30px;
  height:30px;
}
 
#mainnavbar li .sub-menu{
  display: none;
}
#mainnavbar ul,#mainnavbar li {
  list-style:none;
  position:relative;
  margin:0;
  padding:0;
  line-height:30px;
}
#mainnavbar ul.nav > li.menu-item-has-children{
  border-bottom:1px dotted #ddd;
  }
#mainnavbar ul.sub-menu{
  background:#fff;
}
#mainnavbar ul.sub-menu li{
font-size:0.8em;
}
#mainnavbar ul.sub-menu li li{
  font-size:1em;
  border-bottom:none;
  padding-left:15px;
  }
#mainnavbar li{
/*padding-left:15px !important;*/
line-height:30px;
vertical-align:center;
}
.visible {
  display: block !important;
}
#mainnavbar .plus{
background-image:url(/fileadmin/files/icons/plus.png);
background-position:right;
background-repeat:no-repeat;
background-size:30px;
}
#mainnavbar .minus{
background-image:url(/fileadmin/files/icons/minus.png);
background-position:right;
background-repeat:no-repeat;
background-size:30px;
}
.close{
  opacity:1.0;
  }
#mainnavbar li.menu-item-has-children{
/*border-bottom:1px solid #eee;*/
background-color:fafafa;
}

@media (min-width: 768px){
button.menu-btn{
display:none;
}
#mainnavbar{
display:block;
}
#mainnavbar ul.nav > li.menu-item-has-children{
  border-bottom:none;
  }
#mainnavbar ul.nav > li > ul{
padding-top:20px;
  padding-bottom:20px;
  border:1px solid #eee;
}
#mainnavbar .navbar-nav > li{
padding-right:30px;
float:left;
}
#mainnavbar .nav > li{
position:relative;
display:inline;
}
#mainnavbar .nav  a{
display:block;
padding:3px 20px;
}
#mainnavbar li > ul{
display:block;
position:absolute;
top:100%;
left:0;
z-index:1000;
float:left;
text-align:left;
}
#mainnavbar li > ul > li > ul{
position:relative;
}
#mainnavbar li > ul > li{
float:left;
display:block;
padding-right:28px;
}
}




#mega-nav-s {
  position: relative;
  width:100%;
  max-width: 100%;
  float:left;
  margin-top:0px;
  z-index: 5;
}
#mega-nav-s ul.level1{
  text-align:center;
  }
#mega-nav-s > ul.level1 > li{
  float:none !important;
  display:inline-block !important;
  }
#mega-nav-s > ul > li > div > ul > li > a{
  text-decoration:underline;
  }
#mega-nav-s ul li a{
  padding:5px 10px 0 10px;
  }
#mega-nav-s div.wrap ul li a{
  /*padding-top:5px;*/
  padding:7px 5px;
  }
#mega-nav-s ul {
  float: left;
  width: 100%;
  /*padding-top:10px;*/
  margin-bottom: 0px;
  background:url(img-meganav-bck.jpg) repeat-x 0 0;
  list-style:none;
  margin-left:0;
  padding-left:0;
  z-index: 5;
}
#mega-nav-s ul ul {
  background:transparent;
}
#mega-nav-s li {
  float: left;
  width: auto;
  margin-left:5px;
  padding:7px 0;
}
#mega-nav-s li:first-child {
  width: auto;
  margin-left:0;
}

#mega-nav-s li li {
  border-top: none;
}
#mega-nav-s a {
  display: block;
  margin: 5px 0 10px;
  padding:5px 0 0 0;
  text-decoration: none;
  text-align: center;
  /*color: #fff;
  background-color: #878a9b;*/
}
#mega-nav-s li:first-child a {
  margin-left: 0;
}
#mega-nav-s li li:first-child a {
  margin: 0 10px .4em;
}

#mega-nav-s li a {
font-size:18px;
font-weight:normal;
/*letter-spacing:-1px;*/
height:25px;
}

#mega-nav-s > ul > li:hover {
  border-top-color: #ccc;
  /*background-color: #f2f2f2;*/
  animation-name: example;
  animation-duration: 0.2s;
}

@keyframes example {
    0%   {opacity:0.1;}
    10%  {opacity:0.2}
    20%  {opacity:0.3}
    30%  {opacity:0.4}
    40% {opacity:0.5;}
    50% {opacity:0.6;}
    60% {opacity:0.7;}
    70% {opacity:0.8;}
    80% {opacity:0.9;}
    90% {opacity:0.95;}
    100% {opacity:1.0;}
}


#mega-nav-s li:hover a {
  color: #7e8194;
  background-color: transparent;
}

#mega-nav-s li:hover div li a {
  min-height: 0;
  margin: 0 10px .4em;
  padding: 0 4px;
  text-align: left;
  font-weight: bold;
  color: #7e8194;
  background-image: none;
  background-color:transparent;
  font-size:13px;
  line-height:1.2;
  letter-spacing:0;
  height:auto;
  width:210px;
  font-family:tahoma;
}

#mega-nav-s li:hover div.wrap li a {
  background-image: none;
}

#mega-nav-s li:hover div li li a {
  float:left;
  margin: 0 5px;
  padding: 0 10px;
  font-weight: normal;
  /*font-style:italic;*/
  font-size:0.8em;
  line-height:1.2;
  width:185px;
  height:auto;
  /*text-decoration:underline;*/
}
#mega-nav-s li div {
  position: absolute;
  top: 100%;
  left: -9999em;
  width: 100%;
  background-color: #f2f2f2;
  overflow: hidden;
  /*border: solid #f2f2f2;*/
  border-width: 1.5em 0;
  min-height:100px;
  /*max-height:350px;*/
}
#mega-nav-s li:hover div {
  left: 0;
  z-index:250;
}

#mega-nav-s li.informationen:hover div {
  left:405px;
  width:235px;
}

#mega-nav-s li.service:hover div {
  left:470px;
  width:470px;
}

#mega-nav-s li ul {
  position: static;
  /*width: 24%;*/
  width:185px;
  margin-bottom: 0;
}
#mega-nav-s .col {
  margin-bottom: -999em;
  padding-bottom: 999em;
  background-image:url(/fileadmin/bsdist/theme/img/bgcol.png);
  background-position:top left;
  background-repeat:no-repeat;
}
#mega-nav-s li li {
  width: 100%;
  margin: 0;
}
#mega-nav-s li li ul {
  width: 100%;
  padding-bottom: 1.4em;
  /*margin-top:-2px;*/
}
/* MEGA-NAV für Startseite ENDE */


a.accordion-toggle, h4.panel-title {
  font-weight:bold;
  color:#333;
  }
a.accordion-toggle{
  width:100% !important;
  }
a.accordion-toggle{
  background-image:url(/fileadmin/files/icons/minus.png) !important;
  background-position:left 0px center;
  background-repeat:no-repeat;
  background-size:30px;
  padding-left:30px;
  }
a.accordion-toggle.collapsed{
  background-image:url(/fileadmin/files/icons/plus.png) !important;
  background-position:left 0px center;
  background-repeat:no-repeat;
  background-size:30px;
  padding-left:30px;
  }
div .panel-group{
  padding:10px 0;
  margin-top:20px;
  }

.panel-default > .panel-heading {
  background:transparent;
  }
.panel-collapse > .list-group, .panel-group .panel-heading + .panel-collapse > .panel-body {
  border-top:1px dotted #eaeaea;
  }

.panel-group .panel {
  margin-bottom:25px;
  }

h4.panel-title{
  font-size:1.5em;
  color:#777;
  }
ul.ce-uploads li{
  line-height:1em;
  hyphens: auto;
  }
.ce-uploads img {
  float:right;
  }
span.ce-uploads-fileName{
  float:left;
  padding-left:30px;
  padding-right:20px;
  text-align:left !important;
  background-image:url(/fileadmin/files/icons/download.png);
  background-size:14px;
  background-position:left;
  background-repeat:no-repeat;
  }
span.ce-uploads-filesize {
  width:100%;
  float:left !important;
  text-align:left !important;
  padding-left:30px;
  line-height:2em;
  }
html {
  overflow-y:scroll;
}
body{
  padding:20px 0 0 0;
  font-size:16px;
  }
header .logo img.logo{
  width:100%;
  max-width:240px !important;
  float:none;
  }
.caret {
  margin-left:7px;
  }
footer {
  font-size:0.9em;
  padding-bottom:50px;
  background:#555;
  margin-top:30px;
}
footer .container .row{
  border-top:none;
  margin-top:20px;
  }
footer ul{
  list-style:none;
  padding-left:0;
  }
footer img{
  max-width:200px;
  height:auto;
  }
.maincontent{
  margin-top:10px;
  }
div.maincontent form#tx_indexedsearch, dl.tx-indexedsearch-info{
  display:none;
  }
#mainnavbar{
  font-size:16px;
  font-weight:normal;
  background:none;
  margin-top:20px;
  margin-bottom:10px;
  margin-left:5px;
  }
.navbar{
  min-height:20px;
  margin-top:0px;
  margin-bottom:0;
  border:none;
  background:transparent !important;
  }
.navbar-nav > li > a{
  padding:5px 10px !important;
  }
.breadcrumb {
  background:none;
  border:none;
  font-size:0.75em;
  margin:10px 0 20px 0;
  margin-left:-15px;
  padding:0;
  min-height:1em;
}
.frame-well{
  box-shadow:none;
  background:transparent !important;
  margin-top:30px;
  padding-top:0;
  padding-bottom:0;
  font-size:0.9em;
  font-weight:normal;
  height:210px;
  width:100%;
  }
.frame-well div.ce-bodytext{
  height:90px;
  }
.frame-well h2{
  font-size:20px;
  }
.frame-well h1, .frame-well h2, .frame-well h3, .frame-well h4, .frame-well h5 {
  margin-left:-10px;
  margin-right:-10px;
  margin-top:0;
  margin-bottom:20px;
  border-radius:1px !important;
  text-transform:uppercase;
  padding-top:15px;
  padding-bottom:15px;
}
.frame-well .btn {
  margin-top:0px;
  padding:0 !important;
  position:absolute;
  right:16px;
  bottom:21px;
  float:right;
  border-radius:0px !important;
  padding:2px 10px !important;
  background:transparent !important;
  font-weight:normal;
  }
.metanav {
  float:right;
  padding:1px 15px;
  font-size:0.75em;
  font-weight:normal;
}
.metanav a {
  text-decoration:none;
  }
.metanav a,.metanav > .active > a,.metanav > .active > a:focus, .metanav > .active > a:hover{
  color:#333;
  }
nav.metanav li{
  list-style:none;
  display:inline;
  /*padding-left:15px;*/
  padding-right:16px;
  margin-left:10px;
  margin-right:0px;
  }
nav.footernav {
  max-width:100%;
  float:none;
  padding:1px 15px 5px 15px;
  font-size:1em;
  font-weight:normal;
  color:#fff;
  text-align:center;margin-bottom:20px;
}
.footernav a{
  color:#fff;
  text-decoration:none;
  }
ul.ce-menu {
  list-style:none !important;
  margin:0;
  padding:0;
  }
input .searchform-submit, header .btn{
  height:20px;
  min-width:16px;
  float:right;
  padding:0 15px;
  background-color:#555 !important;
  border:1px solid #555;
  background:url(/fileadmin/files/icons/lupe.png) no-repeat;
  background-size:16px;
  background-position:center;
  border-radius: 0 3px 3px 0;
}
header .form-control{
  width:auto !important;
  box-shadow:none;
  border-radius: 3px 0 0 3px;
  }
header .search,header .form-control{
  float:right;
  font-size:0.8em;
  height:20px;
  padding:0 12px;
}
header .form-group{
  margin-bottom:0px;
  }
.searched-for,.tx-indexedsearch-redMarkup {
  font-weight:bold;
  color:rgba(0, 117, 187, 1.0) !important;
  font-style:italic;
}
.tx-indexedsearch-description {
  padding-bottom:20px;
  border-bottom:1px dotted #ccc;
  }
#slider{
  height:40vh;
  }
#slider div.frame{
  padding-left:15px;
  }
#slider div.ce-bodytext{
  margin-top:7px;
  display:block;
  }
#slider div.ce-bodytext p{
  background-color: #555;;
  color:#fff;
  margin-top:15px;
  display:inline;
  padding: 5px;
  font-size:1.4em;
  }
#slider .container{
  align-self:flex-end;
  margin-top:30px;
  margin-bottom:20px;
  opacity: 1.0;
  }
#slider h1 {
  display:inline;
  color:#fff;
  background-color:#555;
  margin-bottom:20px !important;
  padding: 5px;
  font-size:1.3em;
  font-weight:bold;
  line-height:1.6em;
  }
#slider .btn{
  margin-top:20px !important;
  }
header .search{
 float:right;
  font-size:0.75em;
}
h2.icon_strom{
  background-image:url(/fileadmin/files/icons/stecker.png) !important;
  background-repeat:no-repeat !important;
  background-position:5px 0px !important;
  background-size:60px !important;
  padding-left:50px;
  text-align:center;
  }
h2.icon_wasser{
  background-image:url(/fileadmin/files/icons/wasserhahn.png) !important;
  background-repeat:no-repeat !important;
  background-position:5px 0px !important;
  background-size:60px !important;
  padding-left:50px;
  text-align:center;
  }
h2.icon_messen{
  background-image:url(/fileadmin/files/icons/messen.png) !important;
  background-repeat:no-repeat !important;
  background-position:5px 0px !important;
  background-size:60px !important;
  padding-left:50px;
  text-align:center;
  }
h2.icon_waerme{
  background-image:url(/fileadmin/files/icons/waerme.png) !important;
  background-repeat:no-repeat !important;
  background-position:5px 0px !important;
  background-size:60px !important;
  padding-left:50px;
  text-align:center;
  }
h2.icon_gas{
  background-image:url(/fileadmin/files/icons/gas.png) !important;
  background-repeat:no-repeat !important;
  background-position:5px 0px !important;
  background-size:60px !important;
  padding-left:50px;
  text-align:center;
  }


@media (max-width: 969px) {
.frame-well .btn {
  position:absolute;
  right:16px;
  bottom:1px;
  }
}

@media (min-width: 768px) {
#slider{
  margin-top:0;
  margin-bottom:0px;
  padding:0 29px;
  height:40vh;
  display:flex;
  align-items:end;
  font-size:1.3em;
  }
/*  nav.navbar{
    display:none !important;
    }
  div.mega-nav-s{
    display:block !important;
  }*/
div.logo{
  float:left;
  max-width:100% !important;
}
ul.sub-menu li{
  width:250px;
}
.nav a{
display: block;
padding: 3px 20px;
padding-top: 10px;
line-height: 1.5em;
}
}


@media (max-width: 767px) {
#header{
  margin-bottom:20px;
  }
#slider{
  margin-top:20px;
  margin-bottom:20px;
  min-height:300px;
  background:transparent;
  display:flex;
  }
#slider div.container{
  width:100%;
  }
div.logo{
  max-width:100% !important;
  float:none !important;
  text-align:center !important;
  display:block;
}
header .logo img.logo {
  float:none !important;
  max-width:240px !important;
  padding-bottom:20px;
  text-align:center;
  display:inline;
}
#mainnavbar .navbar-nav {
  padding-right:15px !important;
  }
#mainnavbar .navbar-nav > li > a{
  padding:5px 15px !important;
  }
div.search {
  width:100%;
  float:none !important;
  text-align:center;
  }
nav.metanav {
  text-align:center;
  float:none !important;
  padding-top:20px;
  padding-bottom:20px;
  }
  .frame-well{
  height:260px;
  }
.frame-well div.ce-bodytext{
  height:150px;
  }
/*div #mega-nav-s{
  display:none !important;
  }*/
input .searchform-submit, header .btn{
  /*float:none !important;*/
  width:15% !important;
  }
.search {
  width:100% !important;
  display:block;
  }
header .search {
  float:none;
  margin:auto important;
  padding:0 !important;
  }
header .form-control{
  float:none;
  width:85% !important;
  }
#mainnavbar ul li ul,#mainnavbar ul.sub-menu > li{
  margin:0 0 0 8px !important;
  padding-left:7px !important;
  }
#mainnavbar ul.sub-menu li li{
  line-height:1.2em !important;
  padding:0.7em 5px !important;
}
}


@media (max-width: 400px) {
div.logo{
  max-width:100% !important;
}
header .logo img.logo {
  max-width:100% !important;
  padding-bottom:20px;
}
.metanav{
  float:none;
  width:100% !important;
  display:block;
  text-align:center;
  }
.frame-well .btn {
  position:absolute;
  right:16px;
  bottom:1px;
  }
input .searchform-submit, header .btn{
  /*float:none !important;*/
  width:15% !important;
  }
.search {
  width:100% !important;
  display:block;
  }
header .search {
  float:none;
  margin:auto important;
  padding:0 !important;
  }
header .form-control{
  float:none;
  width:85% !important;
  }
}

