*{margin: 0; padding: 0;}

body, html{
  margin: 0;  
  background: linear-gradient(to bottom, #000000, #000000, #000000, #000000, #F48803);
  background-repeat: no-repeat;
  background-attachment: fixed;
}

#globalWrapper{
  background: #f8cd6f;
  border: 1px solid #e0a450;
  border-radius: 4px;
  /*min-height: 96vh;*/
}

#cookieDialog{
  background: #f8cd6f;
  border: 3px solid #000000;
  left: 0px;
  position: fixed;
  max-width: 358px;
  top: 16px;
  z-index: 2;
}
#cookieDialog .dialogHeader{
  background: #000000;
  color: #ffffff;
  font-weight: bold;
  line-height: 20px;
  height: 24px;
  margin-top: 0px;
  text-align: center;
}
#cookieDialog .dialogText{
  padding: 10px;
}
#cookieDialog p{text-align: center;}
#cookieDialog form{
  display: inline-block;
  width: 100%;
  margin: 0 auto;
}

header{
  background: linear-gradient(to left, midnightblue, #000000);
  border: 5px solid #555555;
  border-radius: 4px;
  height: 130px;
}

header #sunHeader #innerSunHeaderDescription{
  color: #ffffff;
  font-family: Tahoma, Arial, Verdana, Tahoma, Geneva, Helvetica, sans-serif;
  font-size: 1.8em;
  position: relative;
  top: -85px;
  text-align: center;
}

header #sunHeader #innerSunHeaderDescription span{display: inline-block; text-align: center;}

header #sunHeader #innerSunHeaderDescription span a{
  color: #dce0df;
  text-decoration: none;
}

header #sunHeader #aSonne {
  height: 118px;
  width: 117px;
  margin: 1px;
  position: relative;

  -webkit-animation-name: sunMover;
  -webkit-animation-timing-function: cubic-bezier(0.50, 0.1, 0.50, 1);
  -webkit-animation-duration: 2400s;
  -webkit-animation-iteration-count: infinite;

  animation-name: sunMover;
  animation-timing-function: cubic-bezier(0.50, 0.1, 0.50, 1);
  animation-duration: 2400s;
  animation-iteration-count: infinite;
}

@-webkit-keyframes sunMover {
  0%   { left: 0px; }
  50%  { left: calc(100% - 117px); }
  100% { left: 0px; }
}

@keyframes sunMover {
  0%   { left: 0px; }
  50%  { left: calc(100% - 117px); }
  100% { left: 0px; }
}

nav ul {
  list-style: none;
  margin: 0;
  padding: 0 8px;
}

nav ul li ul {
  padding: 0;
  display: block;
}

nav ul li a {
  display: block;
  padding: 1px 10px 4px 10px;
  margin: 0;
  color: #2b4c61;
  text-decoration: none;
}

nav ul li ul li a {
  padding-left: 26px;
  width: 100%;
  box-sizing: border-box;
  background: inherit;
}

nav ul li a:hover,
nav ul li a:focus,
nav ul li ul li a:hover,
nav ul li ul li a:focus {
  background: #2b4c61;
  color: #ffffff;
}

nav ul li.menu-current > a,
nav ul li ul li.menu-current > a {
  background: #2b4c61;
  color: #ffffff;
}

nav #mobileNavigation ul li a{padding: 4px 6px 6px 20px;}
nav #mobileNavigation ul li ul li a{margin: 0px; padding: 4px 6px 6px 40px;}

.overlay{
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: rgb(231,181,111);
  overflow-x: hidden;
  transition: 0.5s;
}

.overlay-content {
  position: relative;
  top: 10%;
  width: 100%;
  margin-top: 30px;
}

.overlay a{transition: 0s;}

.overlay .closebtn {
  color: #505050;
  position: absolute;
  top: 20px;
  right: 35px;
  font-size: 60px;
  text-decoration: none;
}

.showMobileNavigation{
  cursor:pointer;
  display: block;
  font-size:24px;
}

.showAsBox{
  background: #e7b56f;
  border: 1px solid #dbbb56;
  border-radius: 4px;
}

h1, h2, h3, h4, h5{
  font-family: Arial, Calibri, Verdana, "Helvetica Neue", Helvetica, Tahoma, sans-serif;
  font-weight: bold;
  color: #505050;
}
h1{font-size: 1.7em;}
h2{font-size: 1.3em;}
h3{font-size: 1.1em;}
h4{font-size: 1.0em;}
h5{font-size: 0.95em;}

#terminKalender{
  background: #2b4c61;
  margin-bottom: 20px;
}

#terminKalender table{
  background: #e7b56f;
  border-collapse: collapse;
  border-top: 5px solid #2b4c61;
  border-right: 5px solid #2b4c61;
  border-left: 5px solid #2b4c61;
  color: #000000;
  width: 100%;
}

#terminKalender table tr{
  border-bottom: 1px solid #2b4c61;
}

#terminKalender table tr:last-child{border: none;}

#terminKalender table tr td,
#terminKalender table tr th{
  padding: 3px 5px 3px 5px;
  vertical-align: top;
}

#terminKalender table:last-child{border-bottom: 5px solid #2b4c61;}

#terminKalender .eventLine{
  background: #e7b56f;
  border: 5px solid #2b4c61;
  padding: 5px;
}

footer{
  background: #e7b56f;
  border: 1px solid #dbbb56;
  border-radius: 4px;
  color: #505050;
  font-size: 14px;
}

hr.hr-default{
  background: linear-gradient(to right, #000000, red, blue, #000000);
  border: none;
  height: 1px;
}

.border-error-message{
  border: 1px solid #dbbb56 !important;
  border-radius: 4px !important;
}