@charset "UTF-8";
/* vars */
/*font-sizes */
/*layout*/
html {
  height: 100%;
  width: 100%; }

body {
  font-family: 'Roboto', sans-serif; }

.gek-bg {
  z-index: 1;
  width: 100%;
  height: 100%;
  position: fixed;
  background-size: cover;
  background-position: 50% 50%;
  top: 0;
  left: 0;
  background-repeat: no-repeat; }

.gek-overlay {
  position: relative;
  z-index: 5; }

.gek-overlay-top {
  position: relative;
  z-index: 5;
  margin: 2rem 0; }

.navbar {
  background: black; }

.navbar-nav li a {
  width: 100%;
  color: #333;
  border-bottom: 1px solid rgba(0, 0, 0, 0.8);
  padding: 15px !important; }

navbar-nav li.nav-item a.active {
  color: #FFF;
  background: #999; }

.nav-link:hover,
.nav-link.dropdown-toggle:hover,
.nav-link.active,
.nav-item.active .dropdown-toggle,
.nav-item.dropdown.show,
.nav-item.dropdown.show a.nav-link {
  color: #FFF !important;
  background: #333 !important;
  border-bottom: 1px solid;
  border-color: #333; }

.navbar-nav {
  border-top: 1px solid #999; }

.footer {
  color: #FFF; }

.footer [class^='col-'] {
  display: block;
  border: 1px solid rgba(144, 144, 144, 0.9);
  background: rgba(144, 144, 144, 0.9); }

.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer h5,
.footer h6 {
  font-size: 1.5rem;
  margin: 0 0 1rem 0;
  padding: 0; }

/*footernav*/
/*footernav*/
ul.submenu {
  list-style-type: none;
  margin: 0px;
  padding: 0; }

.footer ul.submenu li {
  margin: 0;
  padding: 0px;
  border-right: 1px solid rgba(255, 255, 255, 0.8);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 33.3333334%;
  float: left; }

.footer ul.submenu li:last-child {
  margin: 0;
  padding: 0px;
  border-right: 0px solid rgba(255, 255, 255, 0.8);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 33.3333334%;
  float: left; }

.footer ul.submenu a {
  width: 100%;
  height: 100%;
  padding: 20px;
  text-decoration: none;
  display: block;
  color: #fff; }

.footer ul.submenu a:hover,
.footer ul.submenu a.active {
  color: #333; }

.footer div.submenu {
  text-align: center;
  width: auto; }

.footer .submenu a {
  text-decoration: none;
  display: block;
  color: #666;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out; }

.footer .submenu a:hover,
.footer .submenu a.active {
  color: #333 !important;
  background: #FFF;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out; }

.zeiten {
  line-height: 2.2rem; }

.block80 {
  display: inline-block;
  width: 80px; }

.bg-hell {
  background: rgba(239, 239, 239, 0.9);
  color: #676767; }

.bg-weiss {
  background: white;
  color: #676767; }

.gek-anim {
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out; }

/*refereces overview------------------------------------------*/
.gek-content-referenzen {
  margin: 0 0 0 0; }

.gek-referenz {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-right: 1px solid rgba(255, 255, 255, 0.2);
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  -webkit-background-clip: padding-box;
  /* for Safari */
  background-clip: padding-box;
  padding: 0 !important;
  overflow: hidden;
  height: 320px; }

.gek-ref-img {
  overflow: hidden;
  /*
	width:110%;
	height:110%;
	*/ }

.gek-ref-img img {
  width: 105%;
  height: 105%; }

.gek-ref-title {
  position: absolute;
  z-index: 10;
  display: block;
  bottom: 0;
  height: 30%;
  background: none;
  color: #FFF;
  width: 100%;
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -ms-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out; }

.gek-ref-title p {
  line-height: 1.6rem; }

.gek-referenz:hover .gek-ref-title {
  background: rgba(66, 66, 66, 0.8);
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  height: 40%; }

.gek-ref-title p {
  padding: 5% 0 0 5%;
  font-size: 1.6rem;
  font-weight: 300;
  text-shadow: 2px 2px 3px #000; }

.gek-ref-title .moreinfos {
  opacity: 0;
  font-size: 0.9rem;
  position: relative;
  left: -20px;
  padding-top: 0;
  font-weight: 600;
  text-transform: uppercase; }

.gek-referenz:hover .gek-ref-title .moreinfos {
  opacity: 1;
  left: 0px;
  padding-top: 0px;
  -moz-transition-delay: 0.2s;
  -o-transition-delay: 0.2s;
  -ms-transition-delay: 0.2s;
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s; }

a.fulllink {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  z-index: 99; }

a.fulllink_rel {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
  z-index: 99; }

/*ref overview categoy objects------------------------------------------*/
.ref-headline {
  background: rgba(66, 66, 66, 0.8);
  color: #FFF;
  /*box-sizing:border-box;*/
  border-right: 1px solid rgba(255, 255, 255, 0.8);
  border-bottom: 1px solid rgba(255, 255, 255, 0.8); }

.ref-headline-link {
  color: #FFF;
  /*box-sizing:border-box;*/
  border-right: 1px solid rgba(255, 255, 255, 0.8);
  border-bottom: 1px solid rgba(255, 255, 255, 0.8); }

.ref-headline-link a {
  color: #FFF;
  font-weight: 200;
  text-decoration: none;
  line-height: 2rem;
  background: rgba(66, 66, 66, 0.8);
  display: block;
  width: 100%;
  height: 100%;
  padding: 2rem;
  font-size: 1.6rem; }

.ref-headline-link a:hover,
.ref-headline-link a:active {
  background: #FFF;
  color: #333; }

.ref-headline-link p {
  margin: 0;
  padding: 0; }

.ref-headline h1,
.ref-headline p {
  font-size: 1.6rem;
  line-height: 2rem;
  font-weight: 200;
  padding: 2rem;
  margin: 0; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1.6rem;
  line-height: 2rem;
  font-weight: 200;
  padding: 2rem 0rem; }

.ref-category-overview-item {
  position: relative;
  width: 50% !important;
  height: 30vh;
  display: block;
  z-index: 1;
  float: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-right: 1px solid rgba(255, 255, 255, 0.5);
  margin-bottom: 1px;
  overflow: hidden; }

.ref-category-overview-item-img {
  position: relative;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden; }

.ref-category-overview-item-title {
  position: absolute;
  bottom: 0;
  z-index: 6;
  width: 100%;
  height: 33.333333333334%;
  display: block;
  background-color: none;
  color: #FFF;
  padding: 2rem;
  font-size: 1.6rem;
  text-shadow: 2px 2px 3px #000; }

.ref-category-overview-item:hover .ref-category-overview-item-title {
  background-color: rgba(66, 66, 66, 0.8); }

.ref-category-overview-item-title h1 {
  font-size: 1.6rem;
  font-weight: 300; }

/*Büro ------------------------------------------*/
.headline {
  font-size: 1.6rem;
  font-weight: 300; }

.buerojahre {
  font-size: 0.9rem;
  font-weight: 700;
  opacity: 0.7; }

/*list styles */
ul.ulcheck {
  list-style-type: none;
  margin: 0;
  padding-left: 22px;
  text-align: left; }

ul.ulcheck li {
  margin-bottom: 10px;
  text-indent: 12px; }

ul.ulcheck li:before {
  font-family: 'icons';
  content: '\e80C';
  margin: 0 12px 0 -32px;
  font-size: 0.9rem !important; }

/*
ul.ulcheck span {
    padding:5px 0;
    display:block;
    font-weight:300;
}
*/
/*global helper */
.nopadd {
  padding: 0px !important; }

.nomargin {
  margin: 0 !important; }

.fullwidth {
  width: 100% !important; }

.margin-vertical {
  margin: 2rem 0; }

.padding-all-2 {
  padding: 2rem; }

.padding-all-1 {
  padding: 1rem; }

.border-right-1-dunkel {
  border-right: 1px solid #999; }

.border-right-1-weiss {
  border: 1px solid #FFF; }

.img-100w {
  width: 100%;
  height: auto; }

/*centered vertical ------------------------------------------*/
@media (min-height: 1008px) and (orientation: landscape) {
  .outercenter-desktop {
    height: 100vh;
    position: relative; }
  .gek-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); } }

/* desktop ------------------------------------------*/
@media (min-width: 992px) {
  .gek-overlay {
    /*position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        */ }
  #navigation {
    margin-bottom: 1px;
    height: 300px;
    /*background:rgba(144, 144, 144, 0.9);*/ }
  .navbar,
  .navbar-collapse {
    height: 300px;
    margin: 0;
    padding: 0;
    display: block !important;
    background: white; }
  /*nested*/
  .navbar-collapse .navbar-nav {
    margin: 0;
    padding: 0;
    list-style: none;
    width: 33.33333334%;
    display: block;
    border-top: 0px solid #999;
    /*position:absolute;
    bottom:200;
    */
    border-right: 1px solid;
    border-color: #333;
    /*border-left:1px solid rgba(255,255,255, 0.8);*/ }
  .navbar-collapse .navbar-nav li {
    float: none;
    display: block;
    width: 100%;
    height: 25%;
    display: block; }
  .navbar-collapse .navbar-nav li a {
    width: 100%;
    height: 100%;
    color: #333;
    border-bottom: 1px solid;
    border-color: #333;
    line-height: 2.5rem;
    text-transform: uppercase; }
  .navbar-collapse .navbar-nav li a.last {
    border-bottom: 0px solid rgba(255, 255, 255, 0.8); }
  .navbar-collapse .navbar-nav li.nav-item a.active {
    color: #FFF !important; }
  .nav-link:hover,
  .nav-link.dropdown-toggle:hover,
  .nav-link.active,
  .nav-item.active .dropdown-toggle,
  .nav-item.dropdown.show,
  .nav-item.dropdown.show a.nav-link {
    color: #FFF;
    background: #333 !important #333 !important;
    border-bottom: 1px solid rgba(144, 144, 144, 0.8) !important; }
  .adressdaten {
    float: right !important;
    display: block;
    width: 33.333333334%;
    text-align: right;
    padding: 20px;
    color: #333; }
  .aknrw {
    width: 80%; }
  .hinweislinks {
    margin-top: 45px; }
  .hinweislinks a {
    color: #333;
    font-size: 0.9rem; }
  .hinweislinks a:hover, .hinweislinks a:acitve, .hinweislinks a:visited {
    color: #333; }
  .logolink {
    position: fixed;
    left: 0;
    top: 0;
    padding: 15px;
    background: #FFF;
    -webkit-box-shadow: 0px 0px 3px #000;
    -moz-box-shadow: 0px 0px 3px #000;
    box-shadow: 0px 0px 3px #000; }
  .logoimg {
    height: 270px; }
  .logo {
    width: 33.3333334%;
    display: block;
    border-right: 1px solid;
    border-color: #333;
    text-align: center; }
  .logo .logolink {
    position: relative !important;
    -webkit-box-shadow: 0px 0px 0px #fff;
    -moz-box-shadow: 0px 0px 0px #fff;
    box-shadow: 0px 0px 0px #fff;
    background: none; }
  .gek-referenz:hover {
    /*@include box-shadow(0px, 0px, 5px, #000);*/ }
  .gek-referenz:hover .gek-ref-title {
    background: rgba(66, 66, 66, 0.8);
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    height: 40%; }
  .gek-ref-title p {
    padding: 5% 0 0 5%;
    font-size: 1.6rem;
    font-weight: 300;
    text-shadow: 2px 2px 3px #000; }
  .gek-ref-title .moreinfos {
    opacity: 0;
    font-size: 0.9rem;
    position: relative;
    left: -20px;
    padding-top: 0;
    font-weight: 600;
    text-transform: uppercase; }
  .gek-referenz:hover .gek-ref-title .moreinfos {
    opacity: 1;
    left: 0px;
    padding-top: 0px;
    -moz-transition-delay: 0.2s;
    -o-transition-delay: 0.2s;
    -ms-transition-delay: 0.2s;
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s; }
  .gek-ref-name:after {
    content: "";
    width: 0px;
    display: block;
    border-bottom: 1px solid #fff;
    margin: 1rem -20px;
    -webkit-transition: all 0.4s ease-out;
    -moz-transition: all 0.4s ease-out;
    -ms-transition: all 0.4s ease-out;
    -o-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out; }
  .gek-referenz:hover .gek-ref-title .gek-ref-name:after {
    content: "";
    display: block;
    border-bottom: 1px solid #fff;
    margin: 1rem 0px;
    width: 50%;
    -moz-transition-delay: 0.1s;
    -o-transition-delay: 0.1s;
    -ms-transition-delay: 0.1s;
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s; } }

/*tablet------------------------------------------*/
@media (max-width: 1023px) {
  .navbar {
    margin: 0;
    padding: 0px;
    background: #FFF; }
  #navigation {
    background: rgba(255, 255, 255, 0.9);
    margin-bottom: 1px; }
  .navbar-brand {
    padding: 15px; }
  .navbar-nav {
    border-top: 1px solid rgba(255, 255, 255, 0.8); }
  .ref-category-overview-item {
    height: 50vh;
    border-right: 0px solid rgba(255, 255, 255, 0.5);
    margin-bottom: 1px;
    overflow: hidden; }
  .ref-category-overview-item-title {
    position: absolute;
    bottom: 0;
    z-index: 6;
    width: 100%;
    height: auto;
    display: block;
    background-color: none;
    color: #FFF;
    padding: 1.5rem;
    font-size: 1.6rem;
    text-shadow: 2px 2px 3px #000; }
  .ref-category-overview-item-title {
    background: rgba(66, 66, 66, 0.8); }
  .gek-content-referenzen .gek-referenz:nth-child(2n) {
    border-right: 0px !important; } }

/*smartphone ------------------------------------------*/
@media (max-width: 767px) {
  #navigation {
    width: 100%;
    background: #FFF; }
  .gek-overlay-top {
    position: relative;
    z-index: 5;
    margin: 0; }
  .logoimg-mobile {
    width: 50%; }
  #navigation .container {
    margin: 0 !important;
    width: 100% !important; }
  .footer ul.submenu li {
    margin: 0;
    padding: 0px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.8);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    float: left; }
  .navbar-brand {
    padding: 15px; }
  .navbar-nav {
    border-top: 1px solid rgba(255, 255, 255, 0.8); }
  .gek-referenz {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-right: 0px solid rgba(255, 255, 255, 0.2);
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    background-clip: padding-box;
    padding: 0 !important;
    overflow: hidden;
    height: 50vh; }
  .gek-ref-title {
    position: absolute;
    z-index: 10;
    display: block;
    bottom: 0;
    height: 25%;
    background: none;
    color: #FFF;
    width: 100%;
    -webkit-transition: all 0.4s ease-out;
    -moz-transition: all 0.4s ease-out;
    -ms-transition: all 0.4s ease-out;
    -o-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
    background-color: rgba(66, 66, 66, 0.8); }
  .gek-ref-title p {
    line-height: 1.5rem;
    font-size: 1.4rem; }
  .ref-category-overview-item {
    position: relative;
    width: 100% !important;
    height: 50vh;
    display: block;
    z-index: 1;
    float: left;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-right: 0px solid rgba(255, 255, 255, 0.5);
    margin-bottom: 1px;
    overflow: hidden; }
  .ref-category-overview-item-title {
    height: 25%;
    display: block;
    background-color: rgba(66, 66, 66, 0.8);
    color: #FFF;
    padding: 1rem;
    font-size: 1.4rem;
    text-shadow: 2px 2px 3px #000; }
  /*kategorieübersicht*/
  .ref-headline {
    border-right: 0px solid rgba(255, 255, 255, 0.8); }
  .ref-headline-link {
    border-right: 0px solid rgba(255, 255, 255, 0.8); }
  .ref-headline h1,
  .ref-headline p {
    font-size: 1.4rem;
    font-weight: 200;
    padding: 1rem;
    margin: 0;
    line-height: 2rem; }
  .ref-headline-link a {
    padding: 1rem;
    font-size: 1.4rem; }
  .footer ul.submenu li {
    border-right: 0px solid rgba(255, 255, 255, 0.8); }
  .footer ul.submenu li:last-child {
    margin: 0;
    padding: 0px;
    border-right: 0px solid rgba(255, 255, 255, 0.8);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    float: left; }
  .footer ul.submenu a {
    width: 100%;
    height: 100%;
    padding: 20px;
    text-decoration: none;
    display: block;
    color: #fff; } }

/*toggleicon navbar ------------------------------------------*/
.navbar-toggler:focus,
.navbar-toggler:active {
  outline: 0; }

.navbar-toggler {
  display: inline-block;
  position: relative;
  border: 1px solid #333;
  border-radius: 0;
  top: 12px;
  position: absolute;
  right: 15px; }

.navbar-toggler span {
  display: block;
  background-color: #333;
  height: 2px;
  width: 20px;
  margin-top: 4px;
  margin-bottom: 4px;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  position: relative;
  left: 0;
  opacity: 1; }

.navbar-toggler span:nth-child(1),
.navbar-toggler span:nth-child(3) {
  -webkit-transition: .35s ease-in-out;
  -moz-transition: .35s ease-in-out;
  -o-transition: .35s ease-in-out;
  transition: .35s ease-in-out; }

.navbar-toggler:not(.collapsed) span:nth-child(1) {
  position: absolute;
  left: 12px;
  top: 9px;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  opacity: 0.9; }

.navbar-toggler:not(.collapsed) span:nth-child(2) {
  height: 12px;
  visibility: hidden;
  background-color: transparent; }

.navbar-toggler:not(.collapsed) span:nth-child(3) {
  position: absolute;
  top: 9px;
  left: 12px;
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
  opacity: 0.9; }

/*buttons --------------------------------------*/
/*buttons*/
.gek-button::after {
  margin-left: 0px;
  opacity: 1; }

.gek-button {
  position: relative;
  padding: 0.7em 1em;
  border: 1px solid;
  border-color: #333;
  color: #333;
  font-weight: 600;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  line-height: 1.2em !important;
  background-color: #fff;
  border-radius: 0 !important; }

.gek-button:hover,
.gek-button:focus {
  border: 1px solid #fff;
  background: #333;
  color: #fff; }

.gek-button::after {
  position: absolute;
  margin-left: -1em;
  opacity: 0;
  line-height: 1em;
  content: "\E80C";
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s; }

.gek-button:hover::after, .gek-cta-button:hover::after {
  margin-left: 5px;
  opacity: 1; }

.gek-cta-button {
  display: inline-block;
  width: 100%;
  text-align: center;
  font-weight: 400;
  font-size: 1.1rem;
  line-height: 1.1rem;
  font-weight: 700; }

.gek-cta-button::after,
.gek-button::after {
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  -webkit-font-smoothing: antialiased;
  line-height: 1.2;
  text-transform: none;
  speak: none;
  font-family: 'icons';
  padding: 0 0 0 10px; }

a.contentlink {
  color: #000; }
