/* Fonts */
@font-face {
    font-family: 'RobotoCondensed';
    src: url('../fonts/RobotoCondensed-Bold.eot');
    src: url('../fonts/RobotoCondensed-Bold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/RobotoCondensed-Bold.woff2') format('woff2'),
        url('../fonts/RobotoCondensed-Bold.woff') format('woff'),
        url('../fonts/RobotoCondensed-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

#mainDiv {
  overflow: visible;
}

/* Row 1 */
.row1 {
  height: 100%;
  min-height: 100%;
  display: flex;
  align-items: center;
  z-index: 2;
  position: relative;
  justify-content: space-between;
  margin: 0px auto;
}
.row1 .contentLine {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-content: center;
  align-items: flex-start;
}
.row1 .leftBlock {
  display: flex;
  align-items: center;
}
.row1 .leftBlock .head {
  font-size: var(--unit_x14);
  text-transform: uppercase;
  max-width: var(--unit_x300);
  letter-spacing: var(--unit_x4);
  margin-bottom: var(--unit_x5);
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: ease-out;
  transition-delay: 0s;
  font-family: 'RobotoMono';
  font-weight: normal;
  transform: translateX(-30%);
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: flex-start;
}
.row1 .leftBlock .head > svg {
  margin-left: var(--unit_x9);
}
.row1 .leftBlock .subhead {
  font-size: var(--unit_x58);
  font-family: 'Roboto';
  font-weight: bold;
  text-transform: uppercase;
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: ease-out;
  transition-delay: 0s;
  transform: translateX(15%);
  color: var(--col_pl10);
  line-height: calc(var(--unit_x58)*1.125);
}
.row1 .leftBlock .body p {
  max-width: var(--unit_x368);
  margin-bottom: var(--unit_x15);
}
.row1 .leftBlock .buttons button {
  margin-bottom: var(--unit_x15);
  min-width: var(--unit_x230);
}
@media only screen and (max-width: 1350px) {
  .row1 .leftBlock .head {
    transform: translateX(-10%);
  }
}
@media only screen and (max-width: 768px) {
  .headerElement_bg {
    opacity: 1 !important;
  }
  .headline {
    text-align: center;
  }
  .row1 {
    align-items: flex-start;
    margin-top: var(--unit_x30);
  }
  .row1 .leftBlock {
    text-align: center;
    margin: 0px auto;
  }
  .row1 .leftBlock *:not(svg *) {
    text-align: center;
    transform: none !important;
  }
  .row1 .leftBlock > div {
    width: 100%;
  }
  .row1 .leftBlock .head {
    justify-content: center;
  }
  .row1 .leftBlock .head,
  .row1 .leftBlock .body p {
    max-width: 100%;
  }
  .row1 .leftBlock .buttons {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    align-content: center;
  }
  .row1 .button {
    margin: 0px auto;
  }
  .row1_bg {
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -o-filter: blur(15px);
    -ms-filter: blur(15px);
    filter: blur(15px);
  }
}

/* Row 2 */
.row2 {
  height: 100%;
  min-height: 100%;
  display: flex;
  align-items: flex-start;
  z-index: 2;
  position: relative;
  justify-content: space-between;
  margin: 0px auto;
}
.row2 .contentLine {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-content: center;
  align-items: flex-start;
}
.row2 .leftBlock .verticalText svg {
  stroke-dasharray: 5187;
  stroke-dashoffset: 5187;
}
.row2 .leftBlock .verticalText svg.animate {
  stroke-dashoffset: 5187;
  animation: 3s verticalTextFillSvg linear forwards;
}
@keyframes verticalTextFillSvg{
    0%{
        stroke-dashoffset: 5187;
    }
    100%{
        stroke-dashoffset: 4500;
    }
}
.row2 .leftBlock .card {
  width: 100%;
  max-width: var(--unit_x490);
  padding: var(--unit_x18);
  font-size: var(--unit_x14);
  line-height: calc(var(--unit_x14)*1.125);
  margin-bottom: var(--unit_x35);
}
.row2 .leftBlock .card:last-child {
  margin-bottom: 0px;
}
.row2 .leftBlock .card .headline {
  font-weight: bold;
}
.row2 .leftBlock .card .lnk {
  margin-top: var(--unit_x18);
  text-decoration: underline;
}
.row2 .leftBlock .card .lnk > a {
  display: flex;
  align-items: center;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
}
.row2 .leftBlock .svgBox {
  margin-left: var(--unit_x8);
  background-color: var(--col_pr60);
  width: var(--unit_x18);
  height: var(--unit_x18);
  border-radius: var(--unit_x12);
  display: flex;
  align-items: center;
  justify-content: center;
}
.row2 .leftBlock .svgBox svg {
  width: var(--unit_x14);
  height: var(--unit_x14);
  color: var(--col_pl0);
}
.row2 .rightBlock {
  text-align: right;
  position: sticky;
  top: 50%;
}
.row2 .rightBlock > div {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.row2 .rightBlock .head {
  font-size: var(--unit_x14);
  text-transform: uppercase;
  letter-spacing: var(--unit_x4);
  margin-bottom: var(--unit_x5);
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: ease-out;
  transition-delay: 0s;
  font-family: 'RobotoMono';
  font-weight: normal;
  transform: translateX(30%);
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: flex-start;
}
.row2 .rightBlock .head > svg {
  margin-left: var(--unit_x9);
}
.row2 .rightBlock .subhead {
  font-size: var(--unit_x28);
  line-height: calc(var(--unit_x28) * 1.125);
  color: var(--col_pl10);
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: ease-out;
  transition-delay: 0s;
  font-family: 'Roboto';
  font-weight: bold;
}
.row2 .rightBlock .buttons button {
  margin-bottom: 0px;
  min-width: var(--unit_x230);
}

@media only screen and (max-width: 768px) {
  .headline {
    text-align: center;
  }
  .row2 {
    align-items: flex-start;
    margin-top: var(--unit_x30);
  }
  .row2 .leftBlock {
    text-align: center;
    margin: 0px auto;
  }
  .row2 .leftBlock * {
    text-align: center;
    transform: none !important;
  }
  .row2 .leftBlock > div {
    width: 100%;
  }
  .row2 .leftBlock .head,
  .row2 .leftBlock .body p {
    max-width: 100%;
  }
  .row2 .leftBlock .buttons {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    align-content: center;
  }
  .row2 .leftBlock .card {
    max-width: 100%;
  }
  .row2 .leftBlock .card .lnk > a {
    justify-content: center
  }
  .row2 .button {
    margin: 0px auto;
  }
}

.row2 .rightBlock {
  display: flex;
  flex-direction: column;
  align-items: flex-end
}
.row2 .rightBlock .body {
  max-width: var(--unit_x380);
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .row2 .rightBlock {
    display: none;
  }
}

.spaceDown {
  margin-bottom: var(--unit_x14);
}
.spaceDown5 {
  margin-bottom: var(--unit_x5);
}


.nav_scrollElm {
  display: block;
  z-index: 3;
}
@media (max-height:720px) and (min-width:998px) {
  .nav_scrollElm {
    display: none;
  }
}



.row1_bg {
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  transition: all 0.25s;
}
.row1_bg.blurred {
  -webkit-filter: blur(15px);
  -moz-filter: blur(15px);
  -o-filter: blur(15px);
  -ms-filter: blur(15px);
  filter: blur(15px);
}
.row1_bg .image {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-repeat: no-repeat;

  /*background-size: 100% auto;
  background-position: 50% 100%;*/

  background-position: 63% center;
  background-size: auto 100%;
}
@media (max-height:250px) {
  .row1_bg {
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -o-filter: blur(15px);
    -ms-filter: blur(15px);
    filter: blur(15px);
  }
}





.verticalText {
  margin-bottom: var(--unit_x215);
}
@media (max-height:720px) {
  .verticalText {
    display: none;
  }
}



/* Animations */
.chargingPoint_1 {
  opacity: 0.1;
  -webkit-animation: 3s charginPointsAniFrames1 linear infinite;
  -moz-animation: 3s charginPointsAniFrames1 linear infinite;
  -o-animation: 3s charginPointsAniFrames1 linear infinite;
  -ms-animation: 3s charginPointsAniFrames1 linear infinite;
  animation: 3s charginPointsAniFrames1 linear infinite;
}
.chargingPoint_2 {
  opacity: 0.1;
  -webkit-animation: 3s charginPointsAniFrames2 linear infinite;
  -moz-animation: 3s charginPointsAniFrames2 linear infinite;
  -o-animation: 3s charginPointsAniFrames2 linear infinite;
  -ms-animation: 3s charginPointsAniFrames2 linear infinite;
  animation: 3s charginPointsAniFrames2 linear infinite;
}
.chargingPoint_3 {
  opacity: 0.1;
  -webkit-animation: 3s charginPointsAniFrames3 linear infinite;
  -moz-animation: 3s charginPointsAniFrames3 linear infinite;
  -o-animation: 3s charginPointsAniFrames3 linear infinite;
  -ms-animation: 3s charginPointsAniFrames3 linear infinite;
  animation: 3s charginPointsAniFrames3 linear infinite;
}

@keyframes charginPointsAniFrames1 {
  0% { opacity: 0.1; }
  33% { opacity: 1; }
  95% { opacity: 1; }
  100% { opacity: 0.1; }
}
@keyframes charginPointsAniFrames2 {
  0% { opacity: 0.1; }
  33% { opacity: 0.1; }
  66% { opacity: 1; }
  95% { opacity: 1; }
  100% { opacity: 0.1; }
}
@keyframes charginPointsAniFrames3 {
  0% { opacity: 0.1; }
  66% { opacity: 0.1; }
  95% { opacity: 1; }
  100% { opacity: 0.1; }
}
