/* ==========================================================================
   come-in-balance · Zentrum für Innere Balance
   Clean rebuild of the original Zeta Producer "Sport" layout.
   All colors, sizes and positions match the original bundle.css.
   Layout is fixed-width 960px, like the original site.
   ========================================================================== */

/* ---- Grundgerüst ---- */

html {
  /* Verhindert, dass Handy-Browser einzelne Textblöcke aufblasen
     ("font boosting"): das zerriss die &nbsp;-Spalten von "Mein Spektrum".
     So zeigt das Handy exakt das (herausgezoomte) PC-Layout. */
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-family: Verdana, Geneva, sans-serif;
  font-size: 14px;
  color: #454545;
  padding: 0;
  margin: 0;
  background-color: #FBFFCC;
}

a       { color: #666; text-decoration: underline; }
a:hover { color: #666; text-decoration: none; }

#container {
  border: 1px solid #c7c7c7;
  border-top: 0;
  width: 960px;
  margin: 0 auto;
  padding: 0 10px 10px 10px;
  background-color: #FBFFCC;
  overflow: hidden;
}

/* ---- Kopfbereich (Banner mit Foto, Welle, Logo und Seitentitel) ---- */

#banner {
  margin: 0 0 50px 0;
  padding: 0;
  background-color: #FBFFCC;
  background-image: url(assets/20170829_150739.jpg);
  background-repeat: no-repeat;
  height: 230px;
  text-align: left;
  overflow: hidden;
  position: relative;
  z-index: 1;
  float: left;
  width: 100%;
  box-sizing: border-box;
}

#banner .banner_wave {
  background-image: url(assets/header_welle.png);
  background-repeat: no-repeat;
  background-position: left bottom;
  width: 960px;
  height: 250px;
  position: absolute;
  z-index: 5;
  overflow: hidden;
}

#banner #logo {
  position: absolute;
  top: 0;
  margin-left: 850px;
  z-index: 9;
}

#banner #webtext {
  position: absolute;
  top: 36px;
  margin-left: 150px;
  overflow: hidden;
  z-index: 9;
}

#banner #webname   { font-size: 36px; color: #FFF; font-weight: bold; }
#banner #webslogan { font-size: 27px; color: #FFF; font-weight: bold; }

/* ---- Dreispaltiges Mittelteil ----
   Der orange Streifen links und der cremefarbene rechts entstehen wie im
   Original durch dicke Rahmen auf #outer; die Spalten liegen mit negativen
   Rändern darauf. */

#outer {
  float: left;
  /* 560px + 2x200px Rahmen = 960px Containerbreite. Die feste Breite ist
     nötig, damit lange &nbsp;-Ketten im Inhalt die Spalte nicht aufweiten
     und die rechte Spalte (Suchfeld) aus dem Container schieben. */
  width: 560px;
  border-left: 200px solid rgba(238, 150, 17, 0.75);
  border-right: 200px solid #FBFFCC;
  background-color: #FBFFCC;
}

#inner { margin: 0; width: 100%; }

#inner #left {
  width: 200px;
  float: left;
  position: relative;
  margin-left: -200px;
  margin-right: 1px;
}

#inner #left .content_left { padding: 0 15px; }

#inner #right {
  width: 200px;
  float: right;
  position: relative;
  margin-right: -200px;
  margin-left: 1px;
  margin-top: -110px;
  z-index: 99;
}

#inner #right .content_right {
  padding: 0 15px;
  background-color: #FBFFCC;
  min-height: 110px;
}

/* Abgerundete obere Kanten der beiden Seitenspalten */
.rounded_left,
.rounded_right {
  margin: 0 auto;
  width: 200px;
  height: 20px;
  margin-top: -20px;
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  overflow: hidden;
}
.rounded_left  { background-color: rgba(238, 150, 17, 0.75); }
.rounded_right { background-color: #FBFFCC; }

/* ---- Hauptmenü (linke Spalte) ---- */

.menu1area { margin-bottom: 25px; }

a.menu1,
a.menu1active {
  display: block;
  margin: 0;
  padding: 3px 0 5px 15px;
  font-size: 13px;
  text-decoration: none;
  border-bottom: 3px solid #eee;
}
a.menu1        { color: #666; font-weight: normal; }
a.menu1:hover  { color: #B045BA; }
a.menu1active  { color: #0D0C0D; font-weight: bold; }

.menu2area {
  margin: 0;
  padding: 0 0 0 15px;
  border-bottom: 3px solid #eee;
}

a.menu2,
a.menu2active {
  display: block;
  padding: 3px 0 5px 10px;
  font-size: 15px;
  text-decoration: none;
}
a.menu2        { color: #666; font-weight: normal; }
a.menu2:hover  { color: #B045BA; }
a.menu2active  { color: #0D0C0D; font-weight: bold; }

/* ---- Suchfeld (rechte Spalte) ---- */

#search_form { margin-bottom: 20px; }
#search_form form     { margin: 0; padding: 0; }
#search_form fieldset { margin: 0; padding: 0; border: 0; }

#search_form input.field {
  font-size: 11px;
  border: 1px solid #676767;
  width: 100px;
  padding: 2px 0 2px 5px;
  color: #666;
  margin-right: 3px;
}

#search_form input.submit {
  background-color: #0082D7;
  border: 1px solid #0082D7;
  width: 45px;
  font-size: 11px;
  color: #FFF;
}

/* ---- Inhaltsbereich ---- */

#content {
  position: relative;
  padding: 0 25px 25px 25px;
  font-size: 12px;
  color: #666;
}

#content p { padding: 0 0 15px 0; margin: 0; }

#content h1,
#content h2,
#content h3,
#content h4 {
  font-weight: bold;
  font-size: 18px;
  color: #666;
  margin: 15px 0;
  line-height: 23px;
}

.article { margin: 0; padding: 0; font-size: 12px; color: #666; overflow: hidden; }

#content .article img {
  padding: 3px;
  border: 1px #E6E6E6 solid;
  background-color: #FAFAFA;
  box-sizing: border-box;
  max-width: 100%;
  height: auto;
}

#content .article a.imagelink { display: inline-block; max-width: 100%; }

/* ---- Bildergalerie (Diashow auf "Bilder und Fotos") ---- */

.slider {
  position: relative;
  width: 50%;
  overflow: hidden;
}

.slider ul {
  margin: 0;
  padding: 0;
  list-style: none;
  position: relative;
}

.slider li {
  display: none;
  animation: slidezoom 5s ease forwards;
}
.slider li.active { display: block; }

.slider li img {
  display: block;
  width: 100%;
  height: auto;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  border-radius: 0;
}

@keyframes slidezoom {
  from { transform: scale(1); }
  to   { transform: scale(1.08); }
}

.slider .prev,
.slider .next {
  width: 29px;
  height: 29px;
  display: block;
  background: url(assets/zp13_slides_bg_direction_nav.png) no-repeat 0 0;
  position: absolute;
  top: 50%;
  margin-top: -15px;
  z-index: 10;
  cursor: pointer;
  text-indent: -9999px;
  overflow: hidden;
  opacity: 0;
  transition: all .3s ease;
  border: none;
}
.slider .prev { left: 10px; }
.slider .next { right: 10px; background-position: 100% 0; }
.slider:hover .prev,
.slider:hover .next { opacity: .8; }
.slider .prev:hover,
.slider .next:hover { opacity: 1; }

/* ---- Suchergebnisse ---- */

.searchresults p.restitle { opacity: .75; margin-bottom: 1em; }
.searchresults .rescount  { opacity: .75; }

/* ---- Fußbereich ---- */

br.clear { clear: both; }

#footer {
  border-top: 1px solid transparent;
  clear: left;
  padding: 5px 0;
  text-align: center;
  font-size: 11px;
  color: #666;
}

#footer a       { color: #666; text-decoration: underline; }
#footer a:hover { color: #666; text-decoration: none; }
