div#headbar
{
  top: 0;
  height: 80px;
  width: 100%;
  border-bottom: #589281 1px solid;
  background: #ffffff;
  position: fixed;
  z-index: 200;
}

div#header
{
  max-width: 1250px;
  margin: 0 auto;
}


.meter
{
  box-sizing: content-box;
  height: 20px; /* Can be anything */
  position: relative;
  background: #999;
  border-radius: 5px;
  box-shadow: inset 0 -1px 1px rgba(255, 255, 255, 0.3);
}

.meter > span
{
  display: block;
  height: 100%;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  background-color: rgb(43, 194, 83);
  background-image: linear-gradient(
    center bottom,
    rgb(43, 194, 83) 37%,
    rgb(84, 240, 84) 69%
  );
  box-shadow: inset 0 2px 9px rgba(255, 255, 255, 0.3),
    inset 0 -2px 6px rgba(0, 0, 0, 0.4);
  position: relative;
  overflow: hidden;
}

.meter > span:after,
.animate > span > span
{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-image: linear-gradient(
    -45deg,
    rgba(255, 255, 255, 0.2) 25%,
    transparent 25%,
    transparent 50%,
    rgba(255, 255, 255, 0.2) 50%,
    rgba(255, 255, 255, 0.2) 75%,
    transparent 75%,
    transparent
  );
  z-index: 1;
  background-size: 50px 50px;
  animation: move 2s linear infinite;
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  overflow: hidden;
}

.animate > span:after
{
  display: none;
}

@keyframes move {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 50px 50px;
  }
}

div#footbar
{
  padding: 0 20px 20px 20px;
  width: 100%;
  min-height: 200px;
}

div#footbar *
{
  line-height: 1.8em;
}

.menuicon
{
  width: 30px;
  height: 30px;
  background-size: 30px 30px;
  display: none;
  float: right;
  margin: 25px 25px 0 0;
}

#menulogin i
{
  color: #000000;
  font-size: 32px;
}

#menulogin:hover i
{
  color: #589281;
}


#menuwarenkorb
{
  background-image: url(/images/warenkorb.webp);
}

ul#menu
{
  display: none;
  position: absolute;;
  top: 0;
  padding: 0;
  margin: 0 0 0 375px;;
}

ul#menu li
{
  display: inline-block;
}

ul#menu li a,
div#hbmenu ul li a
{
  display: inline-block;
  height: 24px;
  padding: 28px;
  color: #000000;
}

ul#menu li a:hover,
div#hbmenu ul li a:hover
{
  color: #589281;
}

div#hbmenu ul
{
  margin: 0;
  overflow-x: hidden;
  padding: 0;
}

div#hbmenu ul li
{
  padding: 0;
  list-style: none;
  height: 81px;
  overflow: hidden;
  border-bottom: #589281 1px solid;
  border-left: #589281 1px solid;
  border-right: #589281 1px solid;
  background-color: #ffffff;
  width: 0vw;
  margin-left: 100vw;
}

div#hbmenu ul li.visible
{
  margin-left: 30vw;
  width: 70vw;
}

div#hbmenu ul li a
{
  display: block;
  width: 70vw;
  height: 80px;
  padding: 30px;
}




/* #################### BUTTON #################### */

.menu-btn
{
  position: absolute;
  top: 0px;
  left: calc(100vw - 90px);
  width: 80px;
  height: 80px;
  display: block;
  padding: 34px 0 0 12px;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: all .5s ease-in-out;
}

.menu-btn__burger
{
  width: 50px;
  height: 6px;
  background: #000;
  border-radius: 5px;
  transition: all .5s ease-in-out;
}

.menu-btn__burger::before,
.menu-btn__burger::after
{
  content: '';
  position: absolute;
  width: 50px;
  height: 6px;
  background: #000;
  border-radius: 5px;
  transition: all .5s ease-in-out;
}

.menu-btn__burger::before
{
  transform: translateY(-16px);
}

.menu-btn__burger::after
{
  transform: translateY(16px);
}

/* ANIMATION */
html.menuopen .menu-btn .menu-btn__burger
{
  transform: translateX(-50px);
  background: transparent;
}

html.menuopen .menu-btn .menu-btn__burger::before
{
  transform: rotate(45deg) translate(35px, -35px);
}

html.menuopen .menu-btn .menu-btn__burger::after
{
  transform: rotate(-45deg) translate(35px, 35px);
}

div#hbmenu
{
  position: fixed;
  height: calc(100vh - 80px);
  top: 80px;
  left: 0;
  width: 100vw;
  display: none;
  background-color: rgba(0,0, 0, 0.8);
  overflow-y: auto;
  opacity: 0;
  -webkit-transition:opacity 1000ms ease-out;
  -moz-transition:opacity 1000ms ease-out;
  -o-transition:opacity 1000ms ease-out;
  transition:opacity 1000ms ease-out;
}

html.menuopen div#hbmenu
{
  display: block;
  opacity: 1;
  -webkit-transition:opacity 200ms ease-out;
  -moz-transition:opacity 200ms ease-out;
  -o-transition:opacity 200ms ease-out;
  transition:opacity 200ms ease-out;
}




@media only screen and (min-width: 1024px)
{
  .menuicon
  {
    display: inline-block;
  }

  .menu-btn
  {
    display: none;
  }

  ul#menu
  {
    display: block;
  }

  div#hbmenu
  {
    display: none;
  }

}



