:root {
  --saddle-brown: #764133;
  --goldenrod: #ffbf00;
}

.navbar {
  z-index: 999;
  background-color: #fff;
  width: 100%;
  position: fixed;
  box-shadow: 1px 1px 3px #0000001a;
}

.nav-container, .container {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.container.cta-container {
  z-index: 2;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.features {
  background-color: #e5dbd9;
  background-image: url('../images/ruler-black.png');
  background-position: 0 100%;
  background-repeat: repeat-x;
  border-bottom: 1px solid #cecece;
  width: 100%;
  display: flex;
}

.feature-grid {
  width: 33.333%;
}

.feature {
  align-items: center;
  padding: 20px 20px 20px 30px;
  display: block;
}

.feature.br {
  border-right: 1px solid #76413333;
}

.feature-icon {
  float: left;
  width: 60px;
  height: 60px;
}

.feature-text {
  float: left;
  color: #000;
  text-align: left;
  height: 60px;
  padding-left: 30px;
  font-family: Montserrat-0, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 60px;
}

.sec-uber {
  z-index: 10;
  background-image: url('../images/p4.png');
  background-position: 50%;
  background-repeat: repeat;
  padding-bottom: 100px;
  position: relative;
}

.uber-inner {
  background-color: #fff;
  display: flex;
}

.nav-item {
  padding: 20px 40px;
  font-family: Montserrat-0, sans-serif;
  font-weight: 600;
}

.nav-item.w--current {
  background-color: var(--saddle-brown);
  color: #fff;
}

.sec-h {
  margin-bottom: 40px;
}

.sec-h.text-center {
  text-align: center;
}

.h {
  color: #000;
  font-family: Montserrat-0, sans-serif;
  font-weight: 600;
}

.h.leist-h {
  color: #fff;
  font-size: 20px;
}

.h.img-gal-h {
  font-size: 18px;
  font-weight: 600;
}

.h.cta-h {
  color: #fff;
  font-size: 30px;
}

.h.text-white {
  color: #fff;
}

.top-nav-info {
  z-index: 10;
  background-color: #000;
  padding-top: 5px;
  padding-bottom: 5px;
  position: relative;
}

.top-c-info {
  flex: 1;
  order: 1;
  text-decoration: none;
}

.tc-icon {
  float: left;
  width: 26px;
  height: 26px;
}

.t-c-content {
  float: left;
  color: #fff;
  padding-left: 10px;
  font-family: Montserrat-0, sans-serif;
  font-weight: 500;
  line-height: 30px;
}

.brand {
  width: 280px;
  display: none;
}

.uber-img {
  width: 50%;
  display: flex;
}

.uber-text {
  width: 50%;
  padding: 60px 40px;
}

.p {
  font-family: Verdana, Geneva, sans-serif;
}

.p.para {
  margin-top: 20px;
  font-size: 16px;
  line-height: 26px;
}

.p.para.cta-para {
  color: #fff;
  margin-top: 10px;
}

.p.footer-content {
  color: #fff;
  font-size: 14px;
  font-weight: 400;
}

.image {
  object-fit: cover;
}

.uber-outer {
  z-index: 10;
  position: relative;
  top: -100px;
  box-shadow: 4px 4px 12px 8px #0000001a;
}

.sec-leistungen {
  background-image: url('../images/p4.png');
  background-position: 0 0;
  background-repeat: repeat;
  padding-top: 100px;
  padding-bottom: 100px;
  position: relative;
}

.leist-row {
  flex-wrap: wrap;
  justify-content: center;
  display: flex;
}

.leiest-card, .leist-img {
  position: relative;
}

.leist-card-content {
  z-index: 2;
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
}

.leist-card-inner {
  cursor: pointer;
  position: relative;
  overflow: hidden;
  box-shadow: 3px 3px 8px #76413359;
}

.leist-icon {
  width: 70px;
  height: 70px;
}

.leist-inner-content {
  background-image: linear-gradient(#0000, #0009);
  width: 100%;
  height: 100%;
  padding: 15px;
  position: absolute;
  transform: translate(0, 230px);
}

.liest-border {
  border: 2px solid #ffffff80;
  width: 100%;
  height: 100%;
  padding: 20px;
}

.sec-ref {
  background-image: url('../images/1.jpg');
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 100px;
  padding-bottom: 100px;
}

.pic-gal-row {
  margin-top: 60px;
}

.img-gal-card {
  background-color: #fff;
  box-shadow: 4px 4px 7px #00000017;
}

.img-gal-content {
  padding: 10px 20px 20px;
}

.gal-img-1 {
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex;
}

.right-arrow-2 {
  width: 40px;
  height: 40px;
}

.right-arrow-2.gal-r-arrow {
  background-color: #ffffff4d;
  inset: auto 0 0 auto;
}

.right-arrow-2.gal-r-arrow:hover {
  background-color: #76413380;
}

.left-arrow-2 {
  width: 40px;
  height: 40px;
}

.left-arrow-2.gal-l-arrow {
  background-color: #fff6;
  inset: auto 42px 0 auto;
}

.left-arrow-2.gal-l-arrow:hover {
  background-color: #76413380;
}

.slider-2 {
  height: 246px;
}

.icon-3, .icon-4 {
  font-size: 20px;
}

.slide-nav {
  text-align: left;
  left: 20px;
}

.img-gal-columns {
  padding-top: 10px;
  padding-bottom: 10px;
}

.cta-sec {
  height: 400px;
  position: relative;
  overflow: hidden;
}

.cta-sec.d-none {
  display: none;
}

.banner-btn-icon {
  float: left;
  background-color: #000;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  padding: 12px;
}

.banner-btn-text {
  float: left;
  color: #000;
  padding-left: 16px;
  padding-right: 22px;
  font-family: Montserrat-0, sans-serif;
  font-size: 27px;
  font-weight: 600;
  line-height: 50px;
}

.text-block-3 {
  font-size: 21px;
  font-weight: 500;
}

.cts-btn {
  background-color: #fff;
  border-radius: 34px;
  margin-top: 15px;
  margin-left: auto;
  margin-right: auto;
  padding: 2px;
  display: inline-block;
}

.cta-text {
  color: #fff;
  text-align: center;
}

.cta-btn {
  text-align: center;
}

.sec-kontakt {
  background-image: linear-gradient(#0000, #0000), url('../images/footer-bg.jpg');
  background-position: 0 0, 50% 0;
  background-size: auto, cover;
  padding-top: 100px;
  padding-bottom: 40px;
}

.contact-info-card {
  padding-top: 20px;
  padding-bottom: 20px;
}

.contact-info-card-icon {
  width: 64px;
  height: 64px;
  margin-left: auto;
  margin-right: auto;
}

.contact-info-card-text {
  color: #333;
  text-align: center;
  padding: 18px 20px;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
}

.footer-sub-h {
  color: #888;
  margin-bottom: 10px;
  font-family: Montserrat-0, sans-serif;
  font-weight: 600;
}

.footer-bottom {
  background-color: var(--saddle-brown);
  text-align: center;
  padding-top: 30px;
  padding-bottom: 30px;
}

.footer-b-link {
  color: #a1a1a1;
  cursor: pointer;
  padding-left: 20px;
  padding-right: 20px;
  font-family: Verdana, Geneva, sans-serif;
  text-decoration: none;
}

.footer-b-link.br {
  border-right: 1px solid #575757;
}

.top-nav-info-inner {
  display: flex;
}

.lei-grid {
  width: 33.333%;
  padding: 15px;
}

.nav-menu {
  text-align: center;
  width: 100%;
}

.cta-overlay {
  z-index: 1;
  background-color: #0000005c;
  position: absolute;
  inset: 0%;
}

.parallax-hero {
  z-index: 10;
  height: 100vh;
  position: relative;
}

.parallax-hero.parallax-container {
  overflow: hidden;
}

.hero-content {
  z-index: 10;
  text-align: center;
  background-color: #fff;
  width: 400px;
  padding-top: 20px;
  padding-bottom: 20px;
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%);
}

.contact-footer-row {
  margin-top: 100px;
}

.cta-paralex-img {
  background-image: url('../images/cta-bg.jpg');
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  width: 100%;
  height: 100vw;
}

.bg-sec-cta {
  background-image: url('../images/cta-bg.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
}

.parallax-element.bg-section-hero {
  background-image: url('../images/front-view-construction-roof-daylight.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
}

.lightbox {
  z-index: 10;
  position: absolute;
  inset: 0%;
}

.inner-hero {
  background-image: url('../images/front-view-construction-roof-daylight.jpg');
  background-position: 0 0;
  background-size: auto;
  justify-content: center;
  align-items: center;
  padding-top: 220px;
  padding-bottom: 100px;
  display: flex;
}

.inner-hero-content {
  z-index: 10;
  text-align: center;
  background-color: #fff;
  width: 400px;
  padding-top: 20px;
  padding-bottom: 20px;
}

.p-2 {
  font-size: 14px;
}

.p-2.para {
  font-size: 16px;
  line-height: 28px;
}

.p-2.para.label-imp {
  font-weight: 700;
}

.p-2.para.italic {
  font-style: italic;
}

.imp-logo {
  width: 250px;
}

.h-4 {
  color: #000;
  text-transform: none;
  font-size: 32px;
  font-weight: 700;
  display: block;
}

.h-4.h4-imp {
  margin-top: 40px;
  font-size: 22px;
  font-weight: 700;
  line-height: 36px;
}

.p-3 {
  font-size: 16px;
}

.p-3.para {
  color: #222;
  font-size: 16px;
  line-height: 24px;
}

.p-3.para.label-imp {
  font-weight: 700;
  line-height: 24px;
}

.col-row-imp {
  border-bottom: 1px solid #e4e4e4;
  padding-top: 5px;
  padding-bottom: 5px;
}

.impressum-content {
  padding-top: 60px;
  padding-bottom: 60px;
}

.sec-heading-2 {
  margin-bottom: 20px;
  padding-bottom: 10px;
}

.sec-heading-2.text-center {
  text-align: center;
}

.datenschutz-content {
  padding-top: 100px;
}

.h-5 {
  margin-top: 10px;
}

.h-5.sec-h3-inner {
  color: #000;
  font-size: 30px;
  font-weight: 700;
  line-height: 40px;
}

.sec-imp {
  background-image: url('../images/1.jpg');
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 40px;
  padding-bottom: 100px;
}

@media screen and (max-width: 991px) {
  .feature {
    padding-left: 20px;
  }

  .feature-icon {
    width: 35px;
    height: 35px;
  }

  .feature-text {
    height: 35px;
    padding-left: 10px;
    font-size: 16px;
    line-height: 35px;
  }

  .nav-item {
    background-color: #fff;
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .t-c-content {
    flex: 1;
  }

  .brand {
    width: 225px;
  }

  .leist-row {
    padding-left: 10px;
    padding-right: 10px;
  }

  .img-gal-card {
    margin-top: 10px;
    margin-bottom: 10px;
  }

  .img-gal-columns {
    padding-top: 0;
    padding-bottom: 0;
  }

  .cta-sec {
    height: 300px;
  }

  .icon-5 {
    font-size: 43px;
  }

  .text-block-5 {
    font-size: 12px;
  }

  .menu-button {
    background-color: #e9e9e9;
  }

  .menu-button.w--open {
    background-color: var(--saddle-brown);
  }

  .lei-grid {
    width: 50%;
  }

  .h-5.sec-h3-inner {
    font-size: 40px;
    line-height: 44px;
  }
}

@media screen and (max-width: 767px) {
  .container.cta-container {
    width: 90%;
  }

  .feature {
    text-align: center;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .feature-icon {
    float: none;
    margin-left: auto;
    margin-right: auto;
  }

  .feature-text {
    float: none;
    text-align: center;
    height: 26px;
    padding-left: 0;
    font-size: 14px;
    line-height: 26px;
  }

  .uber-inner {
    display: block;
  }

  .top-nav-info {
    display: none;
  }

  .brand {
    padding-left: 0;
  }

  .uber-img, .uber-text {
    width: 100%;
  }

  .uber-outer {
    top: -81px;
  }

  .banner-btn-icon {
    width: 40px;
    height: 40px;
    padding: 8px;
  }

  .banner-btn-text, .text-block-3 {
    font-size: 20px;
    line-height: 40px;
  }

  .cts-btn {
    margin-top: 0;
  }

  .contact-info-card {
    padding-top: 5px;
    padding-bottom: 5px;
  }

  .lei-grid {
    width: 100%;
  }

  .sec-heading-2 {
    padding-bottom: 0;
  }
}

@media screen and (max-width: 479px) {
  .feature {
    padding-left: 5px;
    padding-right: 5px;
  }

  .feature-text {
    font-size: 12px;
  }

  .h.cta-h {
    text-align: center;
  }

  .brand {
    text-align: left;
    width: 190px;
  }

  .uber-text {
    text-align: center;
    padding-left: 20px;
    padding-right: 20px;
  }

  .p.para.cta-para, .img-gal-content, .cta-sec, .cta-btn {
    text-align: center;
  }

  .icon-5 {
    font-size: 27px;
  }

  .text-center {
    text-align: center;
  }

  .hero-content, .inner-hero-content {
    width: 90%;
    padding: 10px 20px;
  }

  .h-5.sec-h3-inner {
    font-size: 30px;
    line-height: 32px;
  }
}


@font-face {
  font-family: 'Montserrat-0';
  src: url('../fonts/Montserrat-ExtraBold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat-0';
  src: url('../fonts/Montserrat-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat-0';
  src: url('../fonts/Montserrat-LightItalic.ttf') format('truetype');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat-0';
  src: url('../fonts/Montserrat-Regular-o.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Montserrat-O';
  src: url('../fonts/Montserrat-Regular-o.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}