@font-face {
  font-family: 'Open Sans';
  font-weight: 300;
  font-style: normal;
  src: url("fonts/Open-Sans-300/Open-Sans-300.eot");
  src: url("fonts/Open-Sans-300/Open-Sans-300.eot?#iefix") format("embedded-opentype"), local("Open Sans Light"), local("Open-Sans-300"), url("fonts/Open-Sans-300/Open-Sans-300.ttf") format("truetype"), url("fonts/Open-Sans-300/Open-Sans-300.svg#OpenSans") format("svg"); }

@font-face {
  font-family: 'Open Sans';
  font-weight: 400;
  font-style: normal;
  src: url("fonts/Open-Sans-regular/Open-Sans-regular.eot");
  src: url("fonts/Open-Sans-regular/Open-Sans-regular.eot?#iefix") format("embedded-opentype"), local("Open Sans"), local("Open-Sans-regular"), url("fonts/Open-Sans-regular/Open-Sans-regular.ttf") format("truetype"), url("fonts/Open-Sans-regular/Open-Sans-regular.svg#OpenSans") format("svg"); }

@font-face {
  font-family: 'Open Sans';
  font-weight: 700;
  font-style: normal;
  src: url("fonts/Open-Sans-700/Open-Sans-700.eot");
  src: url("fonts/Open-Sans-700/Open-Sans-700.eot?#iefix") format("embedded-opentype"), local("Open Sans Bold"), local("Open-Sans-700"), url("fonts/Open-Sans-700/Open-Sans-700.ttf") format("truetype"), url("fonts/Open-Sans-700/Open-Sans-700.svg#OpenSans") format("svg"); }

html {
  height: 100%;
  min-height: 100%; }

body {
  height: 100%;
  min-height: 100%;
  max-height: 100%;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  color: #595959;
  font: 16px/26px "Open Sans", sans-serif !important;
  font-weight: 400; }

body.bg-body {
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-attachment: fixed; }

.gek-nav {
  background-color: #ccc; }

.nav-item a {
  color: #000;
  text-transform: uppercase;
  border-bottom: 1px dotted;
  border-color: rgba(255, 255, 255, 0.7);
  background-color: #CCC;
  padding: 10px 0 10px 15px; }

.nav-item a:hover, .nav-item .active {
  color: #000;
  text-transform: uppercase;
  border-bottom: 1px dotted #000;
  background-color: #FFF;
  padding: 10px 0 10px 15px; }

/*helper classes*/
.nopadd {
  padding: 0 !important; }

.padding-global {
  padding: 2.5rem; }

.h1fontsize {
  font-size: 3rem;
  line-height: 2.8rem; }

.dropdown-toggle::after {
  display: none; }

div.gek-dropdown {
  display: block; }

div.gek-dropdown a.dropdown-item {
  padding-left: 50px !important;
  display: block; }

.gek_content_img_top {
  height: 66.66667vh;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  display: block;
  width: 100%; }

.gek_bg_kontrast {
  background-color: #000;
  color: #FFF; }

/*desktop and lg **************************/
@media (min-width: 1200px) {
  .gek-nav {
    width: 280px;
    height: 100vh;
    position: fixed; }
  .outercenter-desktop {
    width: 70%;
    margin: 0 15% 0 15%; }
  .navbar-expand-xl {
    display: block !important;
    width: 100%; }
  .gek-logo {
    width: 100%;
    height: auto;
    border-bottom: 1px solid #FFF; }
  .gek-content {
    margin-left: 300px;
    width: auto;
    max-width: 100%; }
  .gek_content_img_top {
    height: 66.66667vh;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    display: block;
    width: 100%; }
  .gek_bg_kontrast {
    background-color: #000;
    color: #FFF; }
  .officedata {
    font-weight: 700;
    display: inline-block;
    width: 200px; }
  .nopadd-nav {
    padding: 0 !important; }
  .logoimg {
    padding: 5rem 30px; }
  .navbar-nav {
    padding: 0;
    display: block;
    margin: 0;
    width: 100%; }
  ul.navbar-nav li.nav-item {
    width: 100% !important;
    display: block; }
  .nav-item a {
    padding: 1rem 0 1rem 30px !important; }
  .nav-item a:hover, .nav-item .active {
    padding: 1rem 0 1rem 30px !important; } }

/*tablets **********/
/*tablet landscape ******************/
@media only screen and (min-device-width: 768px) and (max-device-width: 1367px) and (orientation: landscape) {
  .logoimg {
    max-width: 100%;
    padding: 3rem 10px 3rem 15px; } }

/*smartphone **************/
@media (max-width: 767px) {
  .nopadd-nav {
    width: 100% !important;
    display: block;
    max-width: 100% !important; }
  .logoimg {
    width: 100%;
    padding: 0 0 0 15px; }
  .gek-logo {
    width: 50%;
    display: inline-block;
    margin: 0;
    padding: 0; }
  .nopadd-nav {
    padding: 0; }
  .nav-item a, .nav-item a:hover, .nav-item .active {
    padding: 10px 0 10px 15px !important; }
  .gek_content_img_top {
    height: 50vh !important; }
  .h1fontsize {
    font-size: 2rem;
    line-height: 1.8rem; }
  .officedata {
    font-weight: 700;
    display: block; } }

.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; }

.navbar-toggler {
  position: relative; }

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

.navbar-toggler span {
  display: block;
  background-color: #000;
  height: 1px;
  width: 25px;
  margin-top: 8px;
  margin-bottom: 8px;
  -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: transform .35s ease-in-out;
  -moz-transition: transform .35s ease-in-out;
  -o-transition: transform .35s ease-in-out;
  -webkit-transition: -webkit-transform .35s ease-in-out;
  transition: -webkit-transform .35s ease-in-out;
  transition: transform .35s ease-in-out;
  transition: transform .35s ease-in-out, -webkit-transform .35s ease-in-out; }

.navbar-toggler:not(.collapsed) span:nth-child(1) {
  position: absolute;
  left: 12px;
  top: 10px;
  -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;
  left: 12px;
  top: 10px;
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
  opacity: 0.9; }

/*globals***************/
.margin-vertical {
  margin-top: 5rem;
  margin-bottom: 5rem; }

.margin-vertical-2halb {
  margin-top: 2.5rem;
  margin-bottom: 2.5rem; }

.margin-top-10 {
  margin-top: 10rem; }

.margin-bottom-10 {
  margin-bottom: 10rem; }

.margin-top-5 {
  margin-top: 5rem; }

.margin-top-2halb {
  margin-top: 2.5rem; }

.margin-bottom-5 {
  margin-bottom: 5rem; }

.margin-bottom-2halb {
  margin-bottom: 2.5rem; }

.margin-horizontal-1 {
  margin-left: 1rem;
  margin-right: 1rem; }

.padd-15 {
  padding: 15px; }

.padd-30 {
  padding: 30px; }

.padd-50 {
  padding: 50px; }

.padding-2halb {
  padding: 2.5rem; }

.padd-vert-15 {
  padding: 15px 0 15px 0; }

.padding-vertical {
  padding-top: 5rem;
  padding-bottom: 5rem; }

.padding-vertical-10 {
  padding-top: 10rem;
  padding-bottom: 10rem; }

.padding-vertical-red {
  padding-top: 10rem;
  padding-bottom: 10rem; }

.padding-vertical-2halb {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem; }

.padding-vertical-1 {
  padding-top: 1rem;
  padding-bottom: 1rem; }

.padding-top-2halb {
  padding-top: 2.5rem; }

.padding-top-10 {
  padding-top: 10rem; }

.padding-top-5 {
  padding-top: 5rem; }

.padding-top-15px {
  padding-top: 15px; }

.padding-bottom-5 {
  padding-bottom: 5rem; }

.no-margin-left {
  margin-left: -15px; }

.no-margin-right {
  margin-right: -15px; }

.no-margin-horizontal {
  margin-left: -15px;
  margin-right: -15px; }

.no-padding-horizontal {
  padding-left: 0;
  padding-right: 0; }

.pos-abs {
  position: absolute; }

.pos-rel {
  position: relative; }

.z-high-99 {
  z-index: 99; }

.fullwidth {
  width: 100%; }

h1,
.h1fontsize,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1.8rem;
  line-height: 2.3rem;
  text-transform: uppercase;
  color: #333;
  display: block;
  font-weight: 300; }

.subheadline {
  font-weight: bold;
  font-size: 1.2em !important;
  margin: 0.5rem 0 0 0; }

.bg-white-90 {
  background: rgba(255, 255, 255, 0.8);
  padding: 15px; }

.bg-white {
  background-color: #FFF; }

.padding-for-bgs {
  padding: 30px; }

.big-padding-bgs {
  padding: 3rem !important; }

.headline-divider,
.headline-divider-left {
  width: 30%;
  border-bottom: 1px solid #000;
  margin: 0 auto 2rem auto; }

.divider-white .headline-divider,
.divider-white .headline-divider-left {
  border-bottom: 1px solid #FFF !important; }

.headline-divider-left {
  margin: 0 0 2rem 0 !important; }

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

.gek-button {
  position: relative;
  padding: 0.7em 3em;
  border: 1px solid;
  border-color: #000;
  font-weight: 700;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
  line-height: 1.2em !important;
  color: #fff;
  background-color: #000;
  outline: none !important;
  margin: 1.5rem 0; }

.gek-button:hover,
.gek-button:focus {
  border: 1px solid #000;
  background: #ccc;
  color: #000;
  /*outline: thin solid #CC0000;
    outline: 5px auto, -webkit-focus-ring-color;
    outline-offset: -1px;*/
  cursor: pointer; }

.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; }

.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; }

.immotable {
  border: 1px solid #ccc; }

.immotable td {
  text-align: center;
  vertical-align: middle; }

.immotable td:nth-child(1) {
  text-align: left !important;
  background: #f2f2ef; }

.immotable td:nth-child(-n+3),
.immotable th:nth-child(-n+3) {
  border-right: 1px solid #ccc; }

.immotable td:nth-child(n+2) {
  font-size: 1.5rem; }

.immotable th {
  background: #f2f2ef; }
