@import url("fonts.css");
@import url("foundation.css");
/* ----------------------------------------------------------

html5, general

---------------------------------------------------------- */
header, nav, footer, article, section, hgroup, figure, figcaption, legend {
  display: block; }

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  outline: 0; }

html, body {
  margin: 0;
  padding: 0;
  font-size: 16px;
  font-family: "Calibre Regular";
  /*16 px*/
  line-height: 125%;
  /* 19px*/
  width: 100%;
  height: 100%;
  /*text-rendering: optimizeLegibility;
  text-rendering: geometricPrecision;
   font-smooth: always;*/
  font-smoothing: grayscale;
  -webkit-font-smoothing: grayscale;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: 0; }

.group:after {
  /* self-clear floats */
  content: " ";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  font-size: 0; }

/* ----------------------------------------------------------

overwrite foundation

---------------------------------------------------------- */
.row {
  max-width: 100%; }

/*.column.clearfix, .columns.clearfix {
  float: none;
}*/
.clearfix::before, .clearfix::after {
  content: ' ';
  display: table;
  clear: both; }

.row .row {
  margin-left: 0rem;
  margin-right: 0rem; }

/* ----------------------------------------------------------

styles

---------------------------------------------------------- */
/* ----------------------------------------------------------

home

---------------------------------------------------------- */
video {
  width: 100%;
  border: 0;
  margin: 0;
  padding: 0; }

#videowrapper {
  z-index: 10;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden; }
  #videowrapper .ios.portrait {
    display: none; }
  #videowrapper video {
    object-fit: cover;
    width: 100%;
    height: 100%; }

#contentwrapper {
  z-index: 100;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 28px;
  min-height: 100%; }
  #contentwrapper .stamp {
    min-height: 100vh;
    padding-bottom: 100px; }

#home .wrapper, #home #aktuell {
  padding-top: 28px; }
#home #contentwrapper {
  margin-top: 0px;
  padding-top: 0px; }

#aktuell .stamp {
  height: 100vh; }
#aktuell div > div {
  margin-bottom: calc(4.16667% + 20px); }

.facebook {
  width: 25px;
  float: left; }

a {
  color: black;
  text-decoration: none; }

.zwischentitel {
  font-size: 1.8125rem;
  line-height: 110%;
  display: none; }

/* ----------------------------------------------------------

uebersicht projekte

---------------------------------------------------------- */
div.all {
  margin-bottom: calc(4.16667% + 20px); }

.grid {
  width: 100%;
  display: block;
  float: left; }

/* ----------------------------------------------------------

flexslider

---------------------------------------------------------- */
.flexslider-container {
  width: 100%;
  height: 100%; }
  .flexslider-container .flex-direction-nav {
    display: none; }

.flexslider {
  border: 0;
  overflow: hidden; }
  .flexslider .slides {
    width: 100%;
    height: 100%; }
  .flexslider li {
    width: 100%;
    height: 100%; }
    .flexslider li img {
      object-fit: cover;
      display: block;
      width: 100%;
      height: 100%;
      -moz-transition: all 4s;
      -webkit-transition: all 4s;
      transition: all 4s; }
    .flexslider li img.zoom {
      -moz-transform: scale(1.1);
      -webkit-transform: scale(1.1);
      transform: scale(1.1); }
  .flexslider .slides img {
    object-fit: cover;
    display: block;
    width: 100%; }

#home .flexslider {
  width: 100%;
  height: 100vh; }
#home .flexslider .slides img {
  object-fit: cover;
  display: block;
  width: 100%;
  height: 100%; }

#flexFull .flexslider {
  overflow: auto;
  position: absolute;
  background-color: transparent;
  top: 0px;
  padding-top: 60px; }
  #flexFull .flexslider .slides > li img {
    border: 1px solid white; }
#flexFull .flex-control-nav {
  top: 2rem;
  bottom: auto;
  text-align: right; }
  #flexFull .flex-control-nav li {
    width: auto; }
    #flexFull .flex-control-nav li a {
      color: #008eff;
      text-decoration: none;
      font-family: "Calibre Regular";
      font-size: 1.3125rem; }
#flexFull .flex-control-paging li a.flex-active, #flexFull .flex-control-paging li a {
  font-family: "Calibre Regular";
  font-size: 1.3125rem; }
#flexFull .flex-control-paging li a.flex-active, #flexFull .flex-control-paging li a {
  background-color: transparent !important;
  box-shadow: none !important; }
#flexFull .flex-control-paging li a {
  text-indent: 0px !important; }
#flexFull .slides.slidesFull li span {
  display: none; }
#flexFull .flex-direction-nav a {
  top: 50%;
  color: transparent;
  font-size: 0;
  display: none; }
#flexFull .flex-direction-nav a:before {
  /*font-family: "FontAwesome" !important;
  font-size: 35px !important;
  display: inline-block;
  content: '\f105' !important;
  color:white;
  text-shadow: none;*/
  content: ' ' !important;
  background-image: url(../navimages/pfeilPrev.svg);
  background-repeat: no-repeat;
  height: 35px;
  width: 30px; }
#flexFull .flex-direction-nav a.flex-prev:before {
  /*content: '\f104' !important;*/
  background-image: url(../navimages/pfeilNext.svg);
  background-repeat: no-repeat; }
#flexFull .flex-control-paging li a.flex-active {
  /* background-image: url(../pics/underline.png);
   background-repeat: repeat-x;
   background-position-x: 0%;
   background-position-y: 100%;*/
  text-decoration: underline; }
#flexFull .flex-control-paging li a {
  width: auto;
  height: auto; }
#flexFull .naviboard {
  padding-top: 2rem;
  padding-bottom: 0.5rem; }
  #flexFull .naviboard div {
    font-family: "Calibre Regular";
    font-size: 1.3125rem; }
#flexFull .triangle {
  position: absolute;
  left: 4.16667%;
  width: 20px;
  height: 20px;
  top: 90px;
  /*border-style: solid;
  border-width: 0 50px 50px 0;*/
  border-color: transparent #ffffff transparent transparent;
  z-index: 500;
  cursor: pointer;
  text-align: left; }
#flexFull .triangle.zoom:before {
  font-family: "FontAwesome";
  font-size: 16px;
  content: "\f002";
  top: -6px;
  left: 24px;
  position: relative; }

/* ----------------------------------------------------------

menu

---------------------------------------------------------- */
.menu-toggle {
  z-index: 200;
  width: 45px;
  display: none;
  margin-bottom: 20px;
  margin-top: 15px; }

.menu-generiert {
  margin-top: 4px;
  position: relative;
  font-family: "Calibre Regular";
  /*font-weight: bold;*/
  font-size: 1.8125rem;
  line-height: 110%; }
  .menu-generiert ul {
    position: relative;
    left: 0px;
    color: #008eff;
    font-weight: normal; }
    .menu-generiert ul a {
      color: #008eff;
      text-decoration: none; }
    .menu-generiert ul li {
      list-style-type: none; }
      .menu-generiert ul li ul {
        margin-left: 34px; }
        .menu-generiert ul li ul ul {
          margin-left: 34px; }

.menu {
  margin-top: 4px;
  position: relative;
  font-family: "Calibre Regular";
  /*font-weight: bold;*/
  font-size: 1.8125rem;
  line-height: 110%; }
  .menu.scrollUp > .wrapper > ul {
    -ms-transform: translate(-600px, 0px);
    -webkit-transform: translate(-600px, 0px);
    transform: translate(-600px, 0px);
    opacity: 0.5; }
  .menu .white {
    color: white;
    text-decoration: none; }
    .menu .white a {
      color: white; }
  .menu .inner {
    display: block;
    font-size: 1.3125rem;
    line-height: 110%;
    font-weight: normal;
    color: black;
    text-decoration: none; }
  .menu .wrapper {
    position: fixed;
    /* min-height:100vh;*/
    z-index: 500;
    padding-bottom: 100px;
    /*padding-left:0.625rem;*/ }
    .menu .wrapper > ul {
      margin-bottom: 20px;
      margin-top: 15px;
      -ms-transform: translate(0px, 0px);
      -webkit-transform: translate(0px, 0px);
      transform: translate(0px, 0px);
      -webkit-transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
    .menu .wrapper .triangle.close {
      display: none; }
  .menu ul {
    position: relative;
    left: 0px;
    color: #008eff;
    font-weight: normal; }
    .menu ul a {
      color: #008eff;
      text-decoration: none; }
    .menu ul a:hover {
      background-image: url(../navimages/text-decoration.png);
      background-repeat: repeat-x;
      background-position: bottom; }
    .menu ul li {
      list-style-type: none; }
      .menu ul li ul {
        display: none;
        margin-left: 34px; }
        .menu ul li ul ul {
          display: none;
          margin-left: 34px; }
    .menu ul li.active > a {
      text-decoration: none;
      background-image: url(../navimages/text-decoration.png);
      background-repeat: repeat-x;
      background-position: bottom;
      display: inline-block; }
    .menu ul li.active > ul {
      display: block; }
    .menu ul li#menuid9 {
      display: none; }
    .menu ul li#menuid1 > a ul, .menu ul li#menuid1.active > ul {
      display: none; }
    .menu ul li.active.projekte > a {
      text-decoration: none;
      background-image: none; }

.menu-tab {
  margin-left: 108px;
  font-size: 1.3125rem;
  line-height: 114%; }

.eth {
  margin-top: 100px;
  white-space: nowrap; }

.noGutterLeft {
  padding-left: 0; }

.container {
  display: inline; }
  .container a {
    color: black;
    text-decoration: none; }
  .container a:hover {
    color: #008eff; }

.all a {
  display: block;
  position: relative;
  top: 0;
  left: 0; }
  .all a img {
    display: block;
    position: relative;
    z-index: 10; }

a {
  /*&:hover, &.hover{
    .filter{
      opacity:0.7;
    }
  }*/ }
  a .filter {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 20;
    background-color: #008eff;
    mix-blend-mode: multiply;
    opacity: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out; }

div .legende {
  font-size: 1.8125rem;
  line-height: 110%;
  position: absolute;
  top: 0;
  left: 0;
  padding-left: 0.625rem;
  z-index: 200;
  color: #008eff;
  background-color: white;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  opacity: 0; }
  div .legende span {
    background-image: url(../navimages/text-decoration.png);
    background-repeat: repeat-x;
    background-position: bottom; }
div a:hover .legende {
  opacity: 1; }
div img {
  display: block;
  position: relative;
  z-index: 10; }

.news p {
  font-size: 1.8125rem;
  line-height: 110%;
  color: #008eff;
  font-family: "Calibre Regular"; }

.news h2, .news h1 {
  font-size: 2.8125rem;
  line-height: 100%;
  color: #008eff;
  font-family: "Calibre Regular";
  font-weight: normal;
  background-image: url(../navimages/text-decoration.png);
  background-repeat: repeat-x;
  background-position: bottom;
  margin: 0px;
  padding: 0px;
  display: inline-block; }

.news h2 + p:before, .news h1 + p:before {
  display: block;
  width: 100%;
  margin-top: 0.5rem;
  content: " "; }

/* ----------------------------------------------------------

general

---------------------------------------------------------- */
.margin-top-34 {
  margin-top: 34px; }

.margin-top-50 {
  margin-top: 50px; }

.margin-top-68 {
  margin-top: 68px; }

.margin-top-100 {
  margin-top: 100px; }

.margin-top-136 {
  margin-top: 136px; }

.margin-top-150 {
  margin-top: 150px; }

.margin-top-grid {
  margin-top: calc(4.16667% + 20px); }

.margin-bottom-100 {
  margin-bottom: 100px; }

.loader {
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 110;
  top: 0;
  left: 0;
  margin: 0;
  height: 100vh; }
  .loader .loadingIcon {
    background-image: url(../navimages/defaultPreloader.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100px;
    height: 100px;
    margin-left: auto;
    margin-right: auto;
    margin-top: calc(20% - 50px); }

footer {
  margin-top: 200px;
  /*padding-bottom:calc(4.16667% + 20px);*/
  font-size: 1.3125rem;
  line-height: 110%;
  /*background-image:url(../navimages/footerborder.gif);
  background-position: 0% 100%;
  background-repeat:repeat-x;*/
  border-bottom: 3px solid #008eff;
  position: relative;
  z-index: 550; }
  footer a {
    color: black;
    text-decoration: none; }
  footer p {
    margin-bottom: 1.3125rem;
    font-size: 1.3125rem;
    line-height: 110%; }
  footer .column:first-of-type, footer .columns:first-of-type {
    /*padding-left:0;*/ }

#home footer .column:first-of-type, #home footer .columns:first-of-type, #home #credits .column:first-of-type, #home #credits .columns:first-of-type {
  padding-left: 0; }

#credits {
  padding-top: 1.3125rem;
  /*background-color: $blau;
  color:white;*/
  margin-top: 1rem; }
  #credits p {
    margin-bottom: 1.3125rem;
    font-size: 1.3125rem;
    line-height: 110%; }

.startbild {
  padding-top: 26px;
  margin-left: 29.16667%;
  width: 66.66%; }

.lauftext {
  font-size: 1.5625rem;
  line-height: 110%;
  margin-top: 133px; }
  .lauftext p {
    margin-bottom: 1.5625rem; }

.steckbrief {
  margin-top: 60px;
  font-size: 1.3125rem;
  line-height: 110%; }
  .steckbrief p {
    margin-bottom: 1.3125rem; }

table td:first-of-type, table th:first-of-type {
  width: 16.66%; }
table td, table th {
  font-size: 1.5625rem;
  line-height: 110%;
  font-family: "Calibre Regular";
  vertical-align: top;
  font-weight: normal;
  text-align: left; }
table tbody {
  padding-top: 50px; }
  table tbody td:after {
    content: "-";
    display: block;
    height: 1rem;
    color: transparent; }
  table tbody td p {
    display: block;
    margin-left: 1.5rem;
    margin-bottom: 0 !important; }
  table tbody td p:before {
    content: "- ";
    margin-left: -1.5rem;
    display: block;
    float: left; }
table tbody:before {
  content: "-";
  display: block;
  height: 50px;
  width: 1.5rem;
  color: transparent; }

@media screen and (max-width: 77.5em) {
  /* 1240*/
  .startbild {
    padding-top: 26px;
    margin-left: 37.5%;
    width: 58.33%; }

  #inner .menu {
    font-size: 1.3125rem;
    line-height: 114%; }
  #inner .menu ul li.active > a {
    background-image: url(../navimages/text-decoration-thin.png);
    background-repeat: repeat-x;
    background-position: bottom; }

  #home .menu {
    font-size: 1.8125rem;
    line-height: 110%; } }
@media screen and (max-width: 63.9375em) {
  /* 1024 */
  .row .row {
    margin-left: 0rem;
    margin-right: 0rem; }

  .margin-top-136, .margin-top-150, .margin-top-50, .margin-top-100, .margin-top-34 {
    margin-top: 68px; } }
@media screen and (max-width: 48em) {
  /* ipad only*/
  .menu-tab {
    margin-left: 68px; }

  .menu-toggle {
    display: block; }

  .menu > .wrapper > ul {
    display: none; }

  .menu-toggle {
    width: 40px; }

  #flexFull .flexslider {
    position: relative; }

  #flexFull .naviboard {
    position: absolute;
    /*bottom: 0rem;*/
    left: 4.166%; }

  #flexFull .triangle {
    top: 2rem; }

  .menu > .wrapper.SmallOpen, #home .menu > .wrapper.SmallOpen {
    position: fixed;
    overflow: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    /* Enables momentum scrolling on iOS devices, may be removed by setting to 'auto' in your own CSS. */
    /*width: 45.83%;*/
    padding-right: calc(4.16667% + 0.625rem);
    height: 100%;
    top: 0;
    left: 0;
    z-index: 200;
    padding-top: 32px;
    padding-left: calc(4.16667% + 0.625rem);
    background-color: white; }
    .menu > .wrapper.SmallOpen .triangle.close, #home .menu > .wrapper.SmallOpen .triangle.close {
      display: block;
      width: 25px;
      height: 25px; }
    .menu > .wrapper.SmallOpen .white, #home .menu > .wrapper.SmallOpen .white {
      color: black; }
      .menu > .wrapper.SmallOpen .white a, #home .menu > .wrapper.SmallOpen .white a {
        color: black; }
    .menu > .wrapper.SmallOpen ul li ul ul, #home .menu > .wrapper.SmallOpen ul li ul ul {
      /*opacity:0.5;*/
      margin-left: 0px; }
    .menu > .wrapper.SmallOpen > ul, #home .menu > .wrapper.SmallOpen > ul {
      display: block; }

  #home .menu > .wrapper.SmallOpen {
    padding-left: calc(4.16667% ); }

  .container > div:first-child {
    margin-top: 65px !important; }

  .container.grid > div:first-child {
    margin-top: 0px !important; }

  /*.container.grid{
    top:65px !important;
    position:relative;
  }*/
  .startbild {
    padding-top: 0px; } }
@media screen and (max-width: 39.9375em) {
  /* iphone */
  .container {
    display: block;
    width: 100%; }
    .container .columns.all {
      margin-bottom: 17px;
      margin-top: 17px !important; }

  .container::before, .container::after {
    content: ' ';
    display: table; }

  .container::after {
    clear: both; }

  .stamp {
    display: none; }

  #flexFull .flex-control-nav {
    padding-right: 0.625rem; }

  .lauftext {
    font-size: 1.3125rem;
    line-height: 110%;
    margin-top: calc(4.16667% + 20px); }

  .steckbrief {
    font-size: 1.1rem;
    line-height: 110%; }

  .menu > .wrapper.SmallOpen, #home .menu > .wrapper.SmallOpen {
    padding-left: 0.625rem; }

  .menu > .wrapper {
    min-height: auto;
    /* background-color: white;
     padding-right: 20px;
     padding-bottom: 20px;*/ }

  .menu-tab {
    margin-left: 68px; }

  .scrollUp .menu > .wrapper {
    min-height: auto;
    /* background-color: transparent;
     padding-right: 20px;
     padding-bottom: 20px;*/ }

  .container > div:first-child {
    margin-top: 162px !important; }

  .container.grid > div:first-child {
    margin-top: 0px !important; }

  .container.grid {
    top: 162px !important;
    position: relative; }

  .startbild {
    margin-left: 0%;
    width: 100%; }

  table th {
    display: none; }
  table td {
    font-size: 1.3125rem;
    line-height: 110%; }

  table td:first-of-type, table th:first-of-type {
    width: 68px; }

  .zwischentitel {
    display: block;
    margin-bottom: 0 !important;
    margin-top: 4.16667%; } }
