@charset "UTF-8";
body, legend {
  color: #000
}

.table, .weiche, table {
  border-collapse: collapse
}

#maps_wrap, footer {
  position: absolute
}

#header, .mitarbeiter, .wrapper_small, footer, ul#subnavi_list {
  text-align: center
}

body, p {
  line-height: 1.5em
}

a, a:visited, del, ins {
  text-decoration: none
}

a, abbr, acronym, address, applet, b, big, body, caption, center, cite, code, dd, del, dfn, div, dl, dt, em, fieldset, font, form, h1, h2, h3, h4, h5, h6, html, i, iframe, img, ins, kbd, label, legend, li, object, ol, p, pre, q, s, samp, small, span, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, var {
  border: 0;
  font-size: 100%;
  margin: 0;
  padding: 0
}

a {
  outline: 0
}

table {
  border-spacing: 0
}

fieldset, img {
  border: 0;
}

.badges img{
  width: 45%
}

caption, th {
  text-align: left
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: 400
}

q:after, q:before {
  content: ''
}

abbr, acronym {
  border: 0;
  font-variant: normal
}

#navi_wrap, #subnavi_wrap.fixed {
  border-top: 1px solid rgba(80, 85, 89, 1)
}

sub, sup {
  vertical-align: baseline
}

button, input, optgroup, option, select, textarea {
  font-family: inherit;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit
}

button, input, select, textarea {
  font-size: 100%
}

body {
  margin: 0;
  background: #fff;
  font-family: Verdana, Geneva, sans-serif;
  font-size: .875em
}

.bold, .weiche_text {
  font-family: Verdana, Geneva, sans-serif;
  font-weight: 550;
}

.clearfix:after, .clearfix:before {
  content: " ";
  display: table
}

.clearfix:after {
  clear: both
}

.wrapper {
  height: auto;
  margin: 0 auto;
  width: 100%;
  max-width: 64em;
  padding: 0 1em 0 3em;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box
}

.container, .wrapper_small {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box
}

.container {
  width: 100%;
  box-sizing: border-box
}

#header {
  padding: 2.5em 0 1em
}

#header img {
  width: 20%
}

footer {
  height: 1.5em;
  width: 100%;
  padding-top: 1.5em;
  bottom: 0;
  z-index: 70;
  background: url(images/layout/footer_schatten.png) center top no-repeat
}

.weiche {
  display: table;
  width: 100%;
  height: 18em
}

.weiche_left, .weiche_right {
  display: table-cell;
  width: 50%;
  vertical-align: middle
}

.weiche_left {
  height: 100%;
  background: rgba(245, 158, 0, 1)
}

.opmi_start, .weiche_right {
  background: rgba(178, 200, 1, 1)
}

.weiche_right {
  height: 100%
}

.opmi_start {
  width: 100%;
  margin-top: 2px;
  padding: 1em 0
}

.opmi_start img {
  width: 40%
}

#quicklinks {
  position: fixed;
  left: 0;
  top: 50%;
  padding: .5em .375em 0;
  background: rgba(80, 85, 89, 1);
  z-index: 80;
}

.wrapper_small {
  margin: 0 auto;
  width: 100%;
  max-width: 32em;
  box-sizing: border-box
}

ul#navi_list li:first-child, ul#navi_list li:last-child {
  margin-right: 0;
  margin-left: 0
}

.half_column, .third_column, .twothird_column {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box
}

.left_float {
  float: left
}

.right_float {
  float: right
}

#team {
  margin-top: 2em
}

.mitarbeiter {
  width: 33%;
  float: left
}

.mitarbeiter img {
  width: 50%
}

.section_pad {
  padding: 3.75em 0 3em
}

.section_pad_sub {
  padding: 5.75em 0 3em
}

.half_column {
  width: 100%;
  float: left;
  box-sizing: border-box
}

.half_column:first-of-type {
  padding-right: 0
}

.half_column:last-of-type {
  padding-left: 0
}

.third_column, .twothird_column {
  width: 100%;
  float: left;
  box-sizing: border-box
}

.left_pad {
  padding-left: 1em
}

.right_pad {
  padding-right: 1em
}

.text {
  padding: .5em
}

.table {
  display: table;
  height: 100%
}

.table-row {
  display: table-row;
  width: 100%
}

.table-cell {
  display: table-cell;
  vertical-align: middle
}

.headline_home {
  height: 3em;
  padding-top: 3.75em
}

.headline {
  height: 3em;
  padding-top: 5.75em
}

#subnavi, #subnavi_wrap {
  height: 4em
}

#maps_wrap {
  top: 40%
}

#maps {
  height: 17.75em
}

#navi {
  height: auto;
  width: 100%;
  z-index: 100
}

#navi_wrap {
  height: auto;
  border-bottom: 1px solid rgba(80, 85, 89, 1)
}

#navi_wrap.fixed {
  display: none;
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 100;
  margin-top: 0;
  background: #fff
}

ul#navi_list, ul#subnavi_list {
  list-style-type: none;
  list-style-image: none;
  margin: 0 auto
}

#navi ul {
  display: none
}

ul#navi_list {
  padding-top: .65em;
  background: #fff;
  text-align: left
}

#navi a#pull, #navi a#pull.open {
  display: inline;
  position: relative;
  padding: .1em 1.5em 0 0;
  width: 100%
}

ul#navi_list li {
  float: none;
  margin-right: 2em;
  text-align: left
}

ul#navi_list li.active a {
  color: rgba(163, 45, 45, 1)
}

#navi a#pull {
  background: url(images/layout/footer_icon.svg) right top no-repeat
}

#navi a#pull.open {
  background: url(images/layout/footer_icon.svg) right -2.6em no-repeat
}

#subnavi {
  width: 100%;
  z-index: 99
}

#subnavi_wrap.fixed {
  display: none;
  width: 100%;
  position: fixed;
  top: 1.5em;
  z-index: 99
}

ul#subnavi_list {
  padding-top: .35em
}

ul, ul.whitelist {
  margin-left: 1em
}

ul#subnavi_list li {
  float: left;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box
}

ul#subnavi_list li:first-child, ul#subnavi_list li:last-child {
  text-align: left;
  padding-left: 0
}

.center, h1, h2 {
  text-align: center
}

ul#subnavi_list li a {
  color: #fff
}

ul#subnavi_list li a:hover, ul#subnavi_list li.active a {
  color: rgba(80, 85, 89, 1)
}

ul#navi_list li a.green {
  color: rgba(178, 200, 1, 1)
}

a.orange, a:visited.orange, ul#navi_list li a.orange {
  color: rgba(163, 45, 45, 1)
}

a:hover.orange, p, ul#navi_list li a:hover.green, ul#navi_list li a:hover.orange {
  color: rgba(80, 85, 89, 1)
}

.kids {
  background: rgba(245, 158, 0, 1)
}

.opmi {
  background: rgba(178, 200, 1, 1)
}

video {
  display: none
}

p {
  font-size: 1em
}

.small {
  font-size: .875em
}

.white {
  color: #fff
}

.absatz {
  line-height: .5em
}

.weiche_text {
  font-size: 1.375em;
  line-height: 1.25em;
  color: #fff
}

.subhead, h1, h2, ul {
  color: rgba(80, 85, 89, 1)
}

h1, h2 {
  font-size: 3em;
  line-height: 1em;
  text-transform: uppercase
}

.subhead {
  font-size: 1.5em
}

.center {
  padding: 2em 0
}

ul {
  list-style-image: url(images/layout/list_bullet.svg)
}

ul.whitelist {
  color: #fff;
  list-style-image: url(images/layout/list_bullet_white.svg)
}

.green {
  color: rgba(178, 200, 1, 1)
}

.orange {
  color: rgba(245, 158, 0, 1)
}

.red {
  color: rgba(163, 45, 45, 1)
}

a, a:visited {
  color: rgba(80, 85, 89, 1)
}

a:hover {
  color: rgba(163, 45, 45, 1)
}

a.red_link, a.red_link:visited {
  color: rgba(163, 45, 45, 1)
}

a.white_link, a.white_link:visited {
  color: #fff;
  text-decoration: none
}

a.white_link:hover {
  color: rgba(80, 85, 89, 1)
}

a.pdf {
  background: url(images/layout/pdf_icon.svg) left top no-repeat;
  padding: .25em 0 0 1.75em
}

@media screen and (min-height:48em) {
  body {
    font-size: 1em
  }
  #header {
    padding: 3.5em 0 2em
  }
  #header img {
    width: 45%
  }
  .weiche {
    height: 21.25em
  }
  .opmi_start img {
    width: 58%
  }
  .mitarbeiter {
    padding-top: 1em
  }
  video {
    display: block;
    margin: 0 auto;
    width: 36em;
    height: 17.5em
  }
}

@media screen and (min-width:48em) {
  .wrapper {
    max-width: 48em;
    padding: 0 2em
  }
  .half_column {
    width: 50%
  }
  .half_column:first-of-type {
    padding-right: 1em
  }
  .half_column:last-of-type {
    padding-left: 1em
  }
  .twothird_column {
    width: 66.66%
  }
  .third_column {
    width: 33.33%
  }
  .twothird_column img, third_column img {
    width: 100%
  }
  .mitarbeiter {
    width: 33%;
    padding-top: 1em
  }
  .mitarbeiter img {
    width: auto
  }
  #navi, #subnavi_wrap.fixed {
    width: 100%;
    z-index: 100
  }
  .headline_home {
    height: 3em;
    padding-top: 5.75em
  }
  .headline {
    height: 3em;
    padding-top: 7.75em
  }
  #navi, #navi_wrap {
    height: 4.25em
  }
  video {
    display: block;
    margin: 0 auto
  }
  #navi ul {
    display: block;
    text-align: center
  }
  ul#navi_list li {
    display: inline;
    text-align: center;
    margin-right: 1em
  }
  ul#navi_list li:first-child {
    margin-left: 0;
    margin-right: 1em
  }
  ul#navi_list li:last-child {
    margin-right: 0;
    margin-left: 1em
  }
  #navi a#pull {
    display: none
  }
  #subnavi, #subnavi_wrap {
    height: 2em
  }
  #subnavi_wrap.fixed {
    display: none;
    position: fixed;
    top: 4.25em;
    border-top: 1px solid rgba(80, 85, 89, 1)
  }
  ul#subnavi_list li {
    float: left;
    width: 50%
  }
  ul#subnavi_list li:first-child {
    text-align: right;
    padding-right: 2em
  }
  ul#subnavi_list li:last-child {
    text-align: left;
    padding-left: 2em
  }
}

@media screen and (min-width:64em) {
  .wrapper {
    max-width: 64em;
    padding: 0
  }
  .headline_home {
    height: 3em;
    padding-top: 3.75em
  }
  .headline {
    height: 3em;
    padding-top: 5.75em
  }
  #navi, #navi_wrap {
    height: 2.75em
  }
  video {
    width: 40em;
    height: 21.5em
  }
  .small_screen {
    display: none
  }
  #navi {
    width: 100%;
    z-index: 100
  }
  ul#navi_list li {
    display: inline;
    text-align: center;
    margin-right: 2em
  }
  ul#navi_list li:first-child {
    margin-left: 0;
    margin-right: 3.5em
  }
  ul#navi_list li:last-child {
    margin-right: 0;
    margin-left: 1.5em
  }
  #subnavi_wrap.fixed {
    top: 2.75em
  }
}
