@font-face {
  font-family: Opensans Lokal;
  src: url('../fonts/OpenSans-Light.ttf') format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Opensans Lokal;
  src: url('../fonts/OpenSans-SemiBold.ttf') format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Opensans Lokal;
  src: url('../fonts/OpenSans-ExtraBold.ttf') format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Opensans Lokal;
  src: url('../fonts/OpenSans-Regular.ttf') format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Opensans Lokal;
  src: url('../fonts/OpenSans-Medium.ttf') format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

:root {
  --rose: #e7c9bd;
  --rosy-brown: #774c3b;
  --misty-rose-2: #e7c9bd;
  --royal-blue-2: #5366c7;
  --shiny-berry: #755190;
  --berrylight: #ad3f50;
  --dodger-blue-4: #99c4d8;
  --dark-cyan: #578b79;
  --berryharry: #6f363e;
  --black: #000;
  --dodger-blue: #09f;
  --dodger-blue-2: #005cff;
  --dim-gray: #686158;
  --dodger-blue-3: #007bce;
  --cornflower-blue: #6f85ff;
  --slate-blue: #5557ce;
  --dark-slate-blue: #3d4e9e;
  --royal-blue: #4e64d1;
  --dark-sea-green: #89b267;
  --dark-khaki: #a3a667;
  --white: var(--black);
}

.w-layout-hflex {
  flex-direction: row;
  align-items: flex-start;
  display: flex;
}

.w-layout-layout {
  grid-row-gap: 20px;
  grid-column-gap: 20px;
  grid-auto-columns: 1fr;
  justify-content: center;
  padding: 20px;
}

.w-layout-cell {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

h1 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 2.2rem;
  font-weight: 300;
  line-height: 44px;
}

a {
  text-decoration: underline;
}

.body {
  color: #000;
  background-color: #fff;
  height: 100%;
  font-family: Opensans Lokal, sans-serif;
  font-size: 16px;
}

.kunden {
  padding-bottom: 100px;
}

.referenzen {
  background-color: #fff;
  min-height: 100vh;
  padding-top: 100px;
  padding-bottom: 75px;
}

.kontakt {
  background-color: var(--rose);
  min-height: 100vh;
  padding-top: 100px;
}

.txt-w {
  color: #fff;
  border-style: none;
  margin-bottom: 20px;
  font-size: 1rem;
  line-height: 2rem;
  text-decoration: none;
  list-style-type: none;
  display: block;
}

.img-ruth {
  cursor: crosshair;
  margin-right: -3vw;
}

.h2-s {
  margin-bottom: 35px;
  font-size: 2.3rem;
  font-weight: 300;
  line-height: 3rem;
}

.txt-s, .txt-s.txt-absatz {
  font-size: 1rem;
  line-height: 2rem;
}

.txt-s.abstandplus {
  margin-top: 25px;
  font-size: 1rem;
  line-height: 2rem;
}

.cont-txt {
  flex-direction: column;
  flex: none;
  align-content: space-around;
  align-self: auto;
  align-items: flex-start;
  display: block;
}

.cont-txt1 {
  font-size: 1rem;
  line-height: 2rem;
}

.txt-link {
  color: #000;
  text-decoration: none;
  list-style-type: none;
}

.txt-link:hover {
  text-decoration: underline;
}

.h2-b {
  color: #463f35;
  margin-top: 100px;
  margin-bottom: 30px;
  font-weight: 300;
}

.txt-imp {
  color: var(--rosy-brown);
  font-size: 1rem;
  line-height: 1.3rem;
}

.secimp {
  background-color: var(--misty-rose-2);
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  padding-bottom: 50px;
  display: flex;
}

.link-imp {
  color: var(--rosy-brown);
  font-size: 1rem;
  line-height: 1.3rem;
  text-decoration: none;
}

.link-imp.w--current {
  color: var(--rosy-brown);
  text-decoration: none;
}

.link-imp.w--current:hover {
  text-decoration: none;
}

.link-imp.h2 {
  font-size: 2.3rem;
}

.sec-404 {
  background-color: var(--royal-blue-2);
  width: 100%;
  height: 100%;
  position: absolute;
}

.img-404 {
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.link-404 {
  text-align: center;
  margin-top: 50px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.txt-404 {
  color: #fff;
  font-family: Opensans Lokal, sans-serif;
  text-decoration: underline;
  position: absolute;
  inset: 50% 0% 0%;
}

.div-block {
  clear: left;
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1.25fr .75fr;
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
  place-items: end start;
  display: grid;
}

.slider {
  background-color: #fff0;
  flex: 1;
  width: 100%;
  height: 150%;
  min-height: 100%;
  max-height: 100vh;
  margin-top: 50px;
}

.slide-nav {
  background-color: var(--shiny-berry);
  color: var(--shiny-berry);
  display: none;
}

.txt-zitat {
  color: var(--berrylight);
  width: 66%;
  font-size: 1.4rem;
  line-height: 1.7em;
}

.txt-link-s {
  color: #000;
  text-decoration: none;
}

.txt-link-s:hover {
  text-decoration: underline;
}

.txt-link-s:visited {
  color: #a5a5a5;
}

.txt-s-zitat {
  margin-top: 50px;
  font-size: .85rem;
  line-height: 1.5rem;
}

.icon {
  display: none;
}

.icon-2 {
  color: var(--berrylight);
  justify-content: flex-end;
  inset: 0% 0% 0% auto;
}

.left-arrow {
  width: 50%;
  display: none;
}

.right-arrow {
  flex-direction: column;
  align-items: flex-end;
  width: 50%;
}

.txt-hoch {
  font-size: 55%;
}

.person {
  background-color: var(--misty-rose-2);
  padding-top: 100px;
}

.div-block-2 {
  width: 85%;
}

.link-407 {
  color: var(--rosy-brown);
  text-decoration: none;
}

.link-407:hover {
  text-decoration: underline;
}

.navbar-2 {
  color: #000;
  background-color: #fff;
  padding-right: 40px;
  font-size: 17px;
  font-weight: 600;
  position: fixed;
  inset: 0% 0% auto;
}

.navlinki {
  font-size: 1.1rem;
  line-height: 1.1rem;
}

.navlinki.w--current {
  color: var(--berrylight);
  font-size: 1.1rem;
  line-height: 1.1rem;
}

.linkblock {
  align-items: flex-end;
  margin-bottom: 25px;
  padding-left: 75px;
}

.utility-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  display: flex;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  width: 260px;
  display: flex;
}

.utility-page-form {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.div-social-media-links {
  justify-content: flex-end;
  align-self: flex-end;
  align-items: flex-end;
  padding-right: 200px;
  display: flex;
}

.container {
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.button {
  text-align: center;
  text-underline-position: under;
  background-color: #9a4352;
  border-radius: 150px;
  width: 200px;
  height: 200px;
  margin-top: 65px;
  margin-bottom: 0;
  margin-left: -30px;
  padding: 90px 20px 15px;
  font-size: 1.2rem;
  line-height: 1.2rem;
  transition: background-color .333s;
  display: inline-block;
}

.button:hover {
  background-color: var(--rose);
}

.button.hse:hover {
  background-color: var(--dodger-blue-4);
}

.button.dross:hover {
  background-color: var(--dark-cyan);
}

.sec-proj-hell {
  background-color: #e7c9bd;
  min-height: 100vh;
  padding-top: 100px;
  padding-bottom: 100px;
}

.cell-left {
  text-align: left;
  padding-right: 150px;
}

.quickstack-p-right {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  min-height: 100vh;
  padding-bottom: 100px;
}

.cell-spacer {
  height: 6vh;
}

.sec-proj-weiss {
  background-color: #fff;
  min-height: 100vh;
  padding-top: 100px;
  padding-bottom: 50px;
}

.quickstack-p-left {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  padding-bottom: 100px;
}

.txt-s-1-5 {
  font-size: 1rem;
  line-height: 2rem;
}

.button-vor-misty {
  text-align: center;
  text-underline-position: under;
  background-color: #9a4352;
  border-radius: 150px;
  width: 200px;
  height: 200px;
  margin-top: 65px;
  margin-bottom: 0;
  margin-left: -30px;
  padding: 90px 20px 15px;
  font-size: 1.2rem;
  line-height: 1.2rem;
  transition: background-color .333s;
  display: inline-block;
}

.button-vor-misty:hover {
  color: var(--misty-rose-2);
  background-color: #fff;
}

.button-vor-misty.spendit:hover {
  background-color: #c06246;
}

.button-vor-misty.ringe:hover {
  background-color: #000;
}

.home {
  z-index: auto;
  background-color: var(--berryharry);
  width: 100vw;
  height: auto;
  min-height: 100vh;
  padding-top: 25vh;
  padding-bottom: 150px;
}

.leistungen {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  background-color: var(--misty-rose-2);
  text-align: left;
  flex-flow: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  grid-auto-flow: row;
  justify-content: center;
  place-items: center stretch;
  min-height: 100vh;
  padding-top: 100px;
  padding-bottom: 100px;
  display: block;
}

.div-leist {
  min-width: 10rem;
  max-width: 30ch;
}

.h3 {
  max-width: 18ch;
  margin-bottom: 35px;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 2rem;
}

.flex {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  flex-flow: wrap;
  justify-content: center;
  align-items: flex-start;
  padding-top: 15rem;
}

.sronly {
  z-index: 0;
  flex-flow: column;
  width: 1px;
  max-width: 1px;
  height: 1px;
  max-height: 1px;
  margin-top: -5px;
  margin-left: -5px;
  position: absolute;
  inset: 0% auto auto 0%;
  overflow: hidden;
}

.h2-w {
  color: #fff;
  margin-bottom: 35px;
  font-size: 2.3rem;
  font-weight: 300;
  line-height: 3rem;
}

.img-auswahl {
  cursor: crosshair;
  border-radius: 50%;
  min-width: auto;
  min-height: auto;
}

.img-auswahl.idiiers {
  width: 80%;
  margin-top: 20vh;
}

.img-auswahl.bauer {
  margin-top: 10vh;
}

html.w-mod-js [data-ix="hide-on-load"] {
  display: none;
}

html.w-mod-js [data-ix="show-on-scroll-1"], html.w-mod-js [data-ix="show-on-scroll-2"], html.w-mod-js [data-ix="show-on-scroll-3"], html.w-mod-js [data-ix="show-on-load-1"], html.w-mod-js [data-ix="show-on-load-2"], html.w-mod-js [data-ix="show-on-load-3"], html.w-mod-js [data-ix="show-on-load-4"], html.w-mod-js [data-ix="show-on-load-5"] {
  opacity: 0;
}

html.w-mod-js [data-ix="loader"] {
  opacity: 1;
  display: block;
}

@media screen and (max-width: 991px) {
  .kunden {
    padding-bottom: 75px;
  }

  .referenzen {
    min-height: 100vh;
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .kontakt {
    height: auto;
    padding-top: 50px;
  }

  .img-ruth {
    width: 500px;
    height: auto;
    margin: 5rem 0;
    overflow: visible;
  }

  .h2-b {
    margin-top: 75px;
  }

  .div-block {
    display: block;
  }

  .txt-s-zitat {
    margin-bottom: 100px;
  }

  .person {
    padding-bottom: 75px;
  }

  .div-block-2 {
    width: auto;
    padding-right: 0;
  }

  .navbar-2 {
    padding-right: 0;
  }

  .navlinki {
    color: #000;
    text-align: right;
  }

  .nav-menu, .menu-button.w--open {
    background-color: #fff;
  }

  .icon-3 {
    color: var(--berrylight);
  }

  .linkblock {
    margin-bottom: 30px;
    padding-left: 50px;
    padding-right: 0;
  }

  .div-social-media-links {
    flex-flow: row;
    justify-content: flex-end;
    align-items: flex-start;
    padding-right: 50px;
    display: flex;
  }

  .button {
    margin-top: 50px;
    margin-bottom: 0;
    margin-left: 0;
  }

  .sec-proj-hell {
    height: auto;
    padding-top: 50px;
  }

  .sec-proj-hell.erste {
    margin-top: 60px;
  }

  .cell-spacer {
    height: 0;
  }

  .sec-proj-weiss {
    height: auto;
    padding-top: 50px;
  }

  .button-vor-misty {
    margin-top: 50px;
    margin-bottom: 0;
    margin-left: 0;
  }

  .home {
    background-color: var(--berryharry);
    min-width: auto;
    max-width: none;
    min-height: 100vh;
    max-height: none;
    padding-top: 100px;
    padding-bottom: 100px;
  }

  .leistungen {
    flex-flow: wrap;
    justify-content: flex-start;
    min-height: auto;
    padding-bottom: 100px;
    display: block;
  }

  .div-leist {
    max-width: 80%;
    padding-bottom: 50px;
  }

  .flex {
    padding-top: 3rem;
    padding-left: 20px;
    padding-right: 20px;
    display: block;
  }

  .img-auswahl {
    max-width: 75%;
  }

  .img-auswahl.idiiers {
    width: 100%;
    margin-top: 0;
  }

  .img-auswahl.bauer {
    margin-top: 0;
    margin-left: 0;
  }
}

@media screen and (max-width: 767px) {
  .kunden {
    padding-bottom: 50px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .referenzen {
    min-height: auto;
    padding: 25px 20px 50px;
  }

  .kontakt {
    padding-top: 25px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .img-ruth {
    margin-top: 0;
    margin-bottom: 50px;
    margin-right: 0;
    padding-left: 50px;
    padding-right: 50px;
  }

  .h2-s {
    font-size: 1.8rem;
  }

  .cont-txt, .cont-txt1 {
    padding-left: 0;
    padding-right: 0;
  }

  .link-imp.w--current {
    padding-left: 5px;
  }

  .col1-imp {
    padding-bottom: 25px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .img-404 {
    padding-left: 50px;
    padding-right: 50px;
  }

  .column {
    padding-left: 20px;
    padding-right: 20px;
  }

  .div-block {
    grid-template-columns: 1fr;
  }

  .txt-zitat {
    width: 100%;
  }

  .txt-s-zitat {
    margin-bottom: 15px;
  }

  .icon-2 {
    font-size: 18px;
    font-weight: 700;
    display: block;
  }

  .person {
    padding: 25px 20px;
  }

  .navlinki {
    color: #000;
  }

  .slide-2 {
    padding-right: 30px;
  }

  .linkblock {
    padding-left: 0;
    padding-right: 25px;
  }

  .slide-3, .slide-4, .slide-5, .slide-6 {
    padding-right: 30px;
  }

  .div-social-media-links {
    justify-content: flex-start;
    align-self: auto;
    margin-bottom: 30px;
    padding-top: 50px;
    padding-right: 0;
  }

  .button {
    margin-bottom: 50px;
  }

  .sec-proj-hell {
    padding: 25px 20px;
  }

  .cell-left {
    padding-right: 0;
  }

  .quickstack-p-right {
    padding-bottom: 20px;
  }

  .sec-proj-weiss {
    padding: 25px 20px;
  }

  .quickstack-p-left {
    padding-bottom: 20px;
  }

  .button-vor-misty {
    margin-bottom: 50px;
  }

  .home {
    height: auto;
    min-height: 100vh;
    padding: 100px 20px 50px;
  }

  .leistungen {
    min-height: auto;
    padding: 25px 20px;
  }

  .div-leist {
    padding-bottom: 25px;
  }

  .h3 {
    font-size: 1.8rem;
  }

  .flex {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .h2-w {
    font-size: 1.8rem;
  }

  .img-auswahl.idiiers, .img-auswahl.bauer {
    margin-left: 0;
  }
}

@media screen and (max-width: 479px) {
  .kunden {
    padding-bottom: 50px;
  }

  .referenzen {
    min-height: auto;
    padding: 25px 20px 50px;
  }

  .kontakt {
    padding-left: 20px;
    padding-right: 20px;
  }

  .txt-w {
    font-size: 14px;
  }

  .img-ruth {
    margin: 0 auto 25px 0;
  }

  .h2-s {
    margin-bottom: 15px;
    font-size: 1.5rem;
    line-height: 2rem;
  }

  .txt-s {
    font-size: 14px;
  }

  .txt-s.txt-absatz, .txt-s.abstandplus {
    font-size: .85rem;
    line-height: 1.5rem;
  }

  .cont-txt {
    padding-left: 0;
    padding-right: 0;
  }

  .txt-link {
    font-size: 14px;
  }

  .txt-imp {
    font-size: 15px;
  }

  .imp {
    padding-left: 20px;
    padding-right: 20px;
  }

  .link-imp.w--current {
    padding-left: 0;
  }

  .col1-imp, .column {
    padding-left: 0;
    padding-right: 0;
  }

  .txt-zitat {
    font-size: 16px;
  }

  .txt-s-zitat {
    font-size: 12px;
  }

  .icon-2 {
    font-size: 18px;
    font-weight: 700;
  }

  .person {
    padding-bottom: 50px;
  }

  .button {
    width: 150px;
    height: 150px;
    margin-top: 25px;
    margin-bottom: 0;
    padding-top: 60px;
    font-size: 15px;
  }

  .button.but-zweizeilig {
    padding-top: 50px;
  }

  .sec-proj-hell {
    min-height: auto;
    padding: 0 20px;
  }

  .quickstack-p-right {
    padding: 0;
  }

  .sec-proj-weiss {
    min-height: auto;
    padding: 0;
  }

  .quickstack-p-left {
    padding-top: 0;
    padding-bottom: 0;
  }

  .txt-s-1-5 {
    font-size: 14px;
    line-height: 20px;
  }

  .button-vor-misty {
    width: 150px;
    height: 150px;
    margin-top: 25px;
    margin-bottom: 0;
    padding-top: 60px;
    font-size: 15px;
  }

  .button-vor-misty.ringe {
    margin-top: 25px;
    margin-bottom: 0;
  }

  .home {
    padding-bottom: 25px;
  }

  .leistungen {
    min-height: auto;
    padding: 25px 20px 50px;
  }

  .h3, .h2-w {
    margin-bottom: 15px;
    font-size: 1.5rem;
    line-height: 2rem;
  }

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

  .img-auswahl.idiiers, .img-auswahl.bauer {
    margin-left: 0;
  }
}

#ruth-wiebusch.w-node-_35c8c9ae-5fbd-c65d-091e-58811b23a5dd-f2f32c4b {
  justify-self: end;
}

#w-node-_4248c25c-6f2a-a94c-b9c2-2a18a64493f9-f2f32c4b {
  grid-area: 1 / 1 / 2 / 2;
}

#w-node-_516e034e-8488-adea-7e31-fbb3c2b39ac6-3f7645b4 {
  grid-template-rows: auto;
  grid-template-columns: .75fr 1.25fr 1fr .75fr;
}

#w-node-_52b7da8f-c1c8-42a2-6038-6a66e2a72b26-3f7645b4 {
  grid-template-rows: auto;
  grid-template-columns: .75fr 1fr 1.25fr .75fr;
}

#w-node-_728a375c-bc85-f034-62c8-62b4a854a67b-3f7645b4 {
  grid-template-rows: auto;
  grid-template-columns: .75fr 1.25fr 1.25fr .75fr;
}

#w-node-_728a375c-bc85-f034-62c8-62b4a854a689-3f7645b4 {
  grid-template-rows: auto;
  grid-template-columns: .75fr 1fr 1.25fr .75fr;
}

#w-node-ea82eba8-50a8-a2f1-3375-cc427b41fec1-3f7645b4 {
  grid-template-rows: auto;
  grid-template-columns: .75fr 1.25fr 1fr .75fr;
}

#w-node-_63053c09-ddb9-4084-edcb-0e302ba299c2-3f7645b4 {
  grid-template-rows: auto;
  grid-template-columns: .75fr 1fr 1.25fr .75fr;
}

#w-node-c0452446-3994-20d2-13b7-c56b068ae7e2-3f7645b4 {
  grid-template-rows: auto;
  grid-template-columns: .75fr 1.25fr 1fr .75fr;
}

#w-node-_5dede70f-acb5-fd44-24de-20947d650aa9-3f7645b4 {
  grid-template-rows: auto;
  grid-template-columns: .75fr 1.25fr 1.25fr .75fr;
}

@media screen and (max-width: 991px) {
  #ruth-wiebusch.w-node-_35c8c9ae-5fbd-c65d-091e-58811b23a5dd-f2f32c4b {
    place-self: start end;
  }

  #w-node-_516e034e-8488-adea-7e31-fbb3c2b39ac6-3f7645b4, #w-node-_52b7da8f-c1c8-42a2-6038-6a66e2a72b26-3f7645b4, #w-node-_728a375c-bc85-f034-62c8-62b4a854a67b-3f7645b4, #w-node-_728a375c-bc85-f034-62c8-62b4a854a689-3f7645b4, #w-node-ea82eba8-50a8-a2f1-3375-cc427b41fec1-3f7645b4, #w-node-_63053c09-ddb9-4084-edcb-0e302ba299c2-3f7645b4, #w-node-c0452446-3994-20d2-13b7-c56b068ae7e2-3f7645b4, #w-node-_5dede70f-acb5-fd44-24de-20947d650aa9-3f7645b4 {
    grid-template-rows: auto;
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 767px) {
  #w-node-_4248c25c-6f2a-a94c-b9c2-2a18a64493f9-f2f32c4b {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}

@media screen and (max-width: 479px) {
  #ruth-wiebusch.w-node-_35c8c9ae-5fbd-c65d-091e-58811b23a5dd-f2f32c4b {
    justify-self: start;
  }
}


@font-face {
  font-family: 'Opensans Lokal';
  src: url('../fonts/OpenSans-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Opensans Lokal';
  src: url('../fonts/OpenSans-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Opensans Lokal';
  src: url('../fonts/OpenSans-ExtraBold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Opensans Lokal';
  src: url('../fonts/OpenSans-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Opensans Lokal';
  src: url('../fonts/OpenSans-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}