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

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

@font-face {
  font-family: Ethnocentric Rg;
  src: url('../fonts/Ethnocentric-Rg.otf') format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --main: #001b74;
  --secondry: #ededed;
  --highlights: #7c0000;
  --white: white;
  --black: black;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

body {
  color: #333;
  flex-flow: column;
  justify-content: space-between;
  font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 20px;
  display: flex;
}

h1 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 38px;
  font-weight: bold;
  line-height: 44px;
}

h2 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 32px;
  font-weight: bold;
  line-height: 36px;
}

h3 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 24px;
  font-weight: bold;
  line-height: 30px;
}

.utility-page-wrap {
  background-image: url('../images/5e959eb33ff0bb50fe9c62cc_5e4e799880743331e550192d_schloss-gold.webp');
  background-position: 50%;
  background-size: cover;
  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;
  position: absolute;
  inset: auto auto 0%;
}

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

.submit-button {
  background-color: #ecbf38;
}

.logo-img {
  height: 15vh;
}

.logo {
  justify-content: center;
  align-items: center;
  padding-top: 10px;
  padding-bottom: 10px;
  text-decoration: none;
  display: flex;
}

.logo.ber-button {
  position: fixed;
  inset: auto 0% 15% auto;
}

.heading-logo {
  color: #000;
  text-align: center;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 35px;
  font-weight: 400;
  line-height: 30px;
  display: block;
}

.telefonnummer {
  margin-bottom: 5px;
  line-height: 1.3;
}

.ffnungszeiten {
  margin-bottom: 5px;
}

.hauptfarbe {
  background-color: var(--main);
  color: #fff;
}

.email {
  margin-bottom: 5px;
  line-height: 1.3;
}

.zweitfarbe {
  background-color: var(--secondry);
  color: #000;
}

.highlights {
  background-color: var(--highlights);
  color: #fff;
}

.adresse {
  margin-bottom: 5px;
  line-height: 1.3;
}

.google-maps {
  width: 100%;
  height: 100%;
}

.heading-1, .heading-2, .heading-3 {
  font-family: Ethnocentric Rg, Arial, sans-serif;
  font-weight: 400;
  line-height: 1.3;
}

.flie-text {
  font-family: Quicksand, sans-serif;
  font-weight: 400;
  line-height: 1.5;
}

.farbe-der-headings {
  color: var(--highlights);
  line-height: 1.3;
}

.navbar1 {
  border-bottom: 2px solid var(--main);
  background-color: #fff;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  display: flex;
  position: static;
}

.terminbutton {
  text-transform: uppercase;
  font-family: Exo, sans-serif;
}

.terminbutton:hover {
  background-color: #292929;
}

.terminbutton.highlights {
  font-family: Roboto, sans-serif;
}

.terminbutton.highlights:hover {
  background-color: #161616;
}

.divblock1 {
  text-align: center;
  width: auto;
  height: auto;
  margin-left: 10px;
  margin-right: 10px;
  padding-top: 0;
  padding-bottom: 20px;
}

.datenschutz, .impressum {
  color: #fff;
  text-decoration: none;
}

.bold-text-9 {
  font-family: Droid Sans, sans-serif;
}

._1 {
  text-align: center;
  flex-direction: column;
  align-items: center;
  display: flex;
}

.men-2 {
  width: 100%;
}

.nav-link2 {
  color: #fff;
  font-family: Ubuntu, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 400;
}

.nav-link2:hover {
  color: gray;
}

.nav-link2.w--current {
  color: #ebe3de;
}

.nav-link2.flie-text {
  transition: all .2s;
}

.nav-link2.flie-text:hover {
  color: #acacac;
  font-size: 16px;
  text-decoration: underline;
}

.nav-link2.flie-text.w--current {
  color: #fff;
  font-size: 16px;
  text-decoration: underline;
}

.nav-link2.flie-text.w--current:hover {
  font-size: 14px;
}

.inhalt-men-punkte2 {
  justify-content: center;
  align-items: center;
  display: flex;
}

.titel-start {
  height: 70vh;
  position: relative;
}

.video2 {
  color: #fff;
  background-image: linear-gradient(#00000036, #00000036);
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  height: 100%;
  padding-bottom: 0;
  display: flex;
}

.div-block-video-2 {
  color: #fff;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0;
  display: flex;
  position: absolute;
  inset: 0%;
}

.slogan-2 {
  text-align: center;
  text-transform: uppercase;
  font-family: Ethnocentric Rg, Arial, sans-serif;
  font-size: 30px;
  font-weight: 400;
  line-height: 70px;
}

.slogan-2.heading-1 {
  margin-top: 10px;
  line-height: 1.3;
}

.slogan-2.heading-1.is-small {
  margin-top: 10px;
  margin-left: 10px;
  margin-right: 10px;
  font-size: 26px;
  line-height: 1;
}

.section2 {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 100px;
  display: flex;
}

.section2.zweitfarbe {
  min-height: auto;
  padding-top: 100px;
  padding-bottom: 100px;
  position: relative;
  overflow: hidden;
}

.section2.padding-small {
  padding-top: 70px;
  padding-bottom: 70px;
}

.heading-start2 {
  text-align: center;
  text-transform: uppercase;
  width: 100%;
  margin-top: 0;
  margin-bottom: 10px;
  font-size: 40px;
  line-height: 80px;
}

.heading-start2.heading-2, .heading-start2.heading-2.farbe-der-headings {
  line-height: 1.3;
}

.mehr-erfahren1 {
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  cursor: pointer;
  border: 2px solid #fff;
  border-radius: 100px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
  line-height: 24px;
  transition: all .3s cubic-bezier(.25, .46, .45, .94);
  display: flex;
}

.mehr-erfahren1:hover {
  background-color: #2e2e2e;
}

.mehr-erfahren1.highlights.flie-text {
  line-height: 1.5;
}

.mehr-erfahren1.highlights.flie-text:hover {
  background-color: var(--main);
}

.serviceangebote2 {
  width: 60%;
  min-width: auto;
  margin-top: 50px;
}

.heading-mittig-klein1 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 20px;
  line-height: 30px;
}

.heading-mittig-klein1.heading-2 {
  line-height: 1.3;
}

.heading-mittig-klein1.heading-2.farbe-der-headings {
  margin-top: 20px;
}

.heading-mittig-klein1.heading-2.farbe-der-headings.mittig {
  text-align: center;
}

.heading-mittig-klein1.heading-2.farbe-der-headings.small {
  font-size: 16px;
}

.inhaltstartseite2 {
  object-fit: cover;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 100px;
  display: flex;
}

.inhaltstartseite2.small {
  padding: 70px 40px;
}

.footer2 {
  justify-content: space-around;
  padding-top: 40px;
  padding-bottom: 40px;
  display: flex;
}

.footer2.hauptfarbe.flie-text {
  flex-direction: column;
  justify-content: flex-start;
  padding-bottom: 0;
  padding-left: 100px;
  padding-right: 140px;
}

.iconfooter2 {
  justify-content: center;
  align-items: center;
  padding-left: 0;
  padding-right: 0;
  display: flex;
}

.footer-inhalt3 {
  display: inline-block;
  position: static;
}

.headingfooter2 {
  color: #fff;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 18px;
}

.titelvideo-3 {
  height: 500px;
  position: relative;
}

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

.text-linksb-ndig2.flie-text.large {
  font-size: 22px;
}

.inhalt-leistungen2 {
  flex-flow: column;
  justify-content: center;
  align-self: center;
  align-items: center;
  width: 100%;
  padding: 10px 20px 0;
  display: flex;
}

.inhalt-leistungen2.zweitfarbe {
  justify-content: flex-start;
  align-items: center;
  height: 100%;
}

.warumwir2-2 {
  color: #fff;
  text-align: right;
  text-transform: uppercase;
  font-size: 26px;
  line-height: 35px;
}

.warumwir2-2.linksb-ndig {
  text-align: center;
}

.warumwir2-2.linksb-ndig.heading-3 {
  font-size: 22px;
  line-height: 1.3;
}

.warumwir2-2.linksb-ndig.heading-3.farbe-der-headings {
  color: var(--main);
  margin-top: 0;
}

.warumwir2-2.linksb-ndig.heading-3.small {
  margin-top: 10px;
  font-size: 15px;
}

.hintergrund-fsklassen2 {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  transition: all .3s cubic-bezier(.25, .46, .45, .94);
  display: flex;
}

.hintergrund-fsklassen2.highlights {
  flex-flow: column;
  padding: 10px;
}

.leistungen-grid {
  grid-template-rows: auto;
  width: 80%;
  margin-top: 40px;
  margin-bottom: 20px;
}

.leistungen-grid._3er {
  grid-template-columns: 1fr 1fr 1fr;
  width: 100%;
  margin-top: 15px;
  margin-bottom: 15px;
}

.leistungen-grid._4er {
  grid-template-columns: 1fr 1fr 1fr 1fr;
  width: 100%;
  margin-top: 20px;
}

.image-4 {
  object-fit: cover;
  width: 100%;
  height: 40vh;
}

.image-4.contain {
  object-fit: contain;
  object-position: 50% 0%;
  height: 12vh;
}

.image-4.contain.center {
  object-position: 50% 50%;
}

.impdat-3 {
  padding: 100px 40px;
}

.success-2 {
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding-top: 100px;
  padding-bottom: 100px;
  display: flex;
}

.sucess-blcok {
  border: 2px solid #000;
  justify-content: center;
  align-items: center;
  padding: 100px;
  display: flex;
}

.sucess-blcok.highlights {
  color: #fff;
}

.heading-success {
  text-align: center;
  margin-top: 10px;
  margin-bottom: 20px;
  font-family: Quicksand, sans-serif;
  font-size: 25px;
}

.footer-div {
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 20px;
  display: flex;
}

.div-block-footer1 {
  justify-content: center;
  height: 99.9998%;
  padding-bottom: 0;
  display: flex;
}

.footer-1 {
  padding: 10px 140px;
}

.footer-1.hauptfarbe {
  justify-content: space-around;
  padding-bottom: 10px;
}

.heading-footer {
  color: #fff;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-family: Ethnocentric Rg, Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
}

.heading-footer.heading-3 {
  margin-top: 10px;
  margin-bottom: 10px;
}

.inhalt-footer {
  flex-direction: column;
  align-items: flex-start;
  height: 100%;
  margin-left: 30px;
  margin-right: 30px;
  display: flex;
}

.navigation-link {
  letter-spacing: 2px;
  text-transform: uppercase;
  align-items: center;
  width: 100%;
  margin-bottom: 20px;
  padding-right: 15px;
  font-size: 40px;
  line-height: 50px;
  display: flex;
  position: relative;
}

.navigation-link.heading-1 {
  color: #000;
  text-decoration: none;
  transition: all .2s;
}

.navigation-link.heading-1:hover {
  transform: scale(1.1);
}

.navigation-line {
  width: 3px;
  height: 30px;
  margin-top: 1px;
  position: absolute;
  transform: skew(-15deg);
}

.top-title-text {
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-top: 0;
  font-size: 26px;
  line-height: 34px;
}

.navigation-text {
  z-index: 1;
  margin-left: 20px;
  line-height: 40px;
  position: relative;
}

.navigation {
  z-index: 10;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-height: 0;
  padding: 20px 25px;
  display: flex;
  position: fixed;
  inset: 0% auto auto 0%;
}

.text-field {
  background-color: #fff;
  border: 1px solid #000;
  border-bottom-color: #e9e9f8;
  min-height: 40px;
}

.text-field.area {
  min-height: auto;
  padding-bottom: 55px;
}

.right-part-overlay {
  z-index: 1;
  width: 0%;
  height: 100%;
  position: absolute;
  inset: 0% 0% 0% auto;
}

.navigation-divider {
  width: 1px;
  height: 30px;
  margin-left: 18px;
  margin-right: 18px;
  transform: skew(-15deg);
}

.left-part {
  z-index: 3;
  float: left;
  background-color: #fff;
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex;
  position: relative;
}

.field-label-2 {
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-top: 10px;
  font-size: 11px;
}

.big-paragraph {
  margin-bottom: 0;
  font-size: 17px;
}

.line-first {
  background-color: #000;
  border-radius: 5px;
  width: 22px;
  height: 2px;
  position: absolute;
}

.line-first.top {
  margin-top: -12px;
}

.line-first.bottom {
  margin-top: 12px;
}

.navigation-first {
  align-items: center;
  width: 100%;
  display: flex;
}

.top-title.half {
  margin-bottom: 60px;
}

.form-block-2 {
  width: 100%;
}

.navigation-menu {
  z-index: 9;
  width: 0%;
  display: block;
  position: fixed;
  inset: 0%;
}

.quote-wrapper {
  z-index: 9;
  opacity: 1;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 450px;
  display: none;
  position: relative;
}

.button-wrapper {
  justify-content: center;
  align-items: center;
  display: flex;
}

.button-wrapper.submit {
  width: 100%;
  margin-top: 15px;
  padding: 16px 30px;
}

.div-block-42 {
  width: 100%;
}

.right-part {
  z-index: 3;
  float: right;
  background-color: #f1f1f7;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 0%;
  height: 100%;
  display: flex;
  position: relative;
}

.navigation-wrapper {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  min-width: 350px;
  display: block;
}

.full-part {
  background-color: #fff;
  width: 0%;
  height: 100%;
  display: none;
}

.left-part-overlay {
  z-index: 1;
  width: 0%;
  height: 100%;
  position: absolute;
  inset: 0% auto 0% 0%;
}

.form {
  width: 100%;
}

.hamburger-menu {
  cursor: pointer;
  background-color: #ffffff80;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  margin-left: auto;
  display: flex;
  position: relative;
  overflow: hidden;
}

.maps-gro {
  width: 100%;
  height: 100%;
  min-height: 500px;
}

.maos-footer {
  justify-content: center;
  width: 100%;
  min-width: 250px;
  height: 120px;
  display: flex;
}

.link {
  color: var(--white);
  text-decoration: none;
  display: block;
}

.impdat-2 {
  min-height: 80vh;
  padding: 100px 40px;
}

.impdat-2.flie-text {
  flex-direction: column;
  min-height: 100%;
  padding: 0;
  display: flex;
}

.impressum-link, .datenschutz-link {
  color: #fff;
  text-decoration: none;
}

.html-embed-2 {
  height: 100%;
}

.nav-men.hauptfarbe {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  display: flex;
}

.nav-men.highlights {
  z-index: 1000;
}

.navbar {
  width: 100%;
}

.navbar.hauptfarbe {
  padding-top: 10px;
  padding-bottom: 10px;
}

.navbar.hauptfarbe:hover {
  font-size: 16px;
  font-weight: 700;
}

.navbar.highlights {
  background-color: #7c0000;
}

.nav-link {
  color: #fff;
  font-size: 14px;
  font-weight: 400;
}

.nav-link:hover {
  color: gray;
}

.nav-link.w--current {
  color: #ebe3de;
}

.nav-link.flie-text {
  border-bottom: 1px solid #0000;
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: 15px;
}

.nav-link.flie-text:hover {
  border-bottom-color: var(--white);
  color: #fff;
}

.nav-link.flie-text.w--current {
  border-bottom-color: var(--white);
  color: var(--white);
}

.container-nav {
  justify-content: center;
  align-items: center;
  margin-top: 10px;
  margin-bottom: 10px;
  display: flex;
}

.image-100 {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.image-100.contain {
  object-fit: contain;
}

.image-100.contain._18vh {
  height: 19vh;
}

.image-100.contain.adj {
  height: 25vh;
}

.link-block {
  background-color: var(--highlights);
  border-radius: 50px;
  width: 2.5rem;
  height: 2.5rem;
  padding: 5px;
}

.icon {
  filter: invert();
}

.ablaufplan-big-button-3 {
  z-index: 2;
  color: #fff;
  background-color: #d4af37;
  border-radius: 30px;
  margin-bottom: 10px;
  margin-left: 0;
  margin-right: 0;
  padding: 10px 20px;
  text-decoration: none;
  transition: all .2s;
}

.ablaufplan-big-button-3:hover {
  transform: scale(1.03);
}

.ablaufplan-big-button-3.black.ablaufplan {
  margin-top: -2px;
  top: 10px;
}

.ablaufplan-big-button-3.black {
  z-index: 10000;
  color: #fff;
  background-color: #000;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  font-size: 16px;
  position: fixed;
  inset: 60px auto auto 0%;
}

.ablaufplan-big-button-3.black:hover {
  transform: none;
}

.small {
  font-size: 20px;
}

.div-100 {
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-left: 40px;
  padding-right: 40px;
  display: flex;
}

.div-100.hauptfarbe {
  padding-left: 40px;
  padding-right: 40px;
}

.wrapper {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.wrapper.inline {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: row;
}

.mehr-erfahren1-nav {
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  cursor: pointer;
  border: 2px solid #fff;
  border-radius: 100px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
  font-family: Ethnocentric Rg, Arial, sans-serif;
  line-height: 24px;
  transition: all .3s cubic-bezier(.25, .46, .45, .94);
  display: flex;
}

.mehr-erfahren1-nav:hover {
  background-color: #2e2e2e;
}

.mehr-erfahren1-nav.hauptfarbe.flie-text {
  line-height: 1.5;
}

.mehr-erfahren1-nav.hauptfarbe.flie-text:hover {
  color: #000;
  background-color: #fff;
  transform: scale(1.1);
}

.image-small-contain {
  object-fit: contain;
  height: 9vh;
}

.image-small-contain.padding {
  margin-right: 10px;
}

.image-small-contain.padding.sm-logo {
  height: 5vh;
}

.image-small-contain.padding-left {
  margin-left: 10px;
}

.image-small-contain.padding-left.sm-logo {
  height: 5vh;
}

.icons {
  z-index: 10;
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: center;
  align-items: center;
  margin-top: 10px;
  display: flex;
  position: relative;
}

.logs-heading {
  color: var(--main);
  justify-content: space-between;
  align-items: center;
  padding-bottom: 0;
  text-decoration: none;
  display: flex;
}

.footer-link {
  color: #fff;
  text-decoration: none;
}

.link-block-2 {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  color: #333;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  height: auto;
  text-decoration: none;
  display: flex;
}

.icon2 {
  object-fit: contain;
  height: 15vh;
}

.link-white {
  color: #fff;
  text-decoration: none;
}

.link-block-50vh {
  height: 50vh;
  transition: all .5s;
}

.link-block-50vh:hover {
  transform: scale(1.035);
}

.grid-100-3er {
  grid-template-columns: 1fr 1fr 1fr;
}

.text-wrapper {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
  display: flex;
}

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

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

.login {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 50%;
  height: 300px;
  margin-top: 20px;
  margin-bottom: 20px;
  display: flex;
}

.html-embed-7 {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-family: Quicksand, sans-serif;
  font-size: 18px;
  display: block;
}

.inhaltstartseite2-small {
  object-fit: cover;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 15px 100px;
  display: flex;
}

.inhaltstartseite2-small.hauptfarbe.padding {
  padding-top: 0;
  padding-bottom: 0;
}

.gtranslate {
  display: flex;
}

.wrapp {
  overflow-wrap: anywhere;
}

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

.utility-pag.highlights {
  padding-left: 100px;
  padding-right: 100px;
}

.utility-page {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  text-align: center;
  flex-flow: column;
  display: flex;
}

.image-error {
  filter: invert() brightness(200%);
  object-fit: contain;
  height: 10rem;
  margin-bottom: 20px;
}

.link-block-50vh-2 {
  width: 100px;
  height: 50vh;
  transition: all .5s;
}

.link-block-50vh-2:hover {
  transform: scale(1.035);
}

.section-mittig {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  padding: 70px 40px;
  display: flex;
}

._5er {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  width: 100%;
}

.image-wrap-45vh {
  height: 35vh;
}

.image-wrap-45vh._50vh {
  height: 50vh;
}

.link-red {
  color: var(--highlights);
  font-size: 16px;
  text-decoration: none;
}

.link-red.large {
  font-size: 22px;
}

.lightbox-link {
  width: 100%;
  height: 100%;
}

._3er_grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  width: 100%;
}

._3er_grid._2er {
  grid-template-columns: 1fr 1fr;
}

._3er_grid.inline {
  grid-template-rows: auto auto auto;
  grid-template-columns: 1fr;
}

.content-wrap-mittig {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  height: auto;
  display: flex;
}

.lightbox-link-2 {
  height: 100%;
  color: var(--highlights);
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  text-decoration: none;
  display: flex;
}

._2er_grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr .5vh 1fr;
  width: 100%;
  margin-top: 20px;
}

.divider {
  width: 100%;
  height: .5vh;
}

.divider.hauptfarbe {
  margin-bottom: 10px;
}

.divider-vertical {
  width: .5vh;
  height: 100%;
}

.code-embed {
  width: 1005px;
}

.image {
  object-fit: contain;
  height: 100%;
}

.div-block-44 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.error-message {
  color: #fff;
  background-color: #fc405c;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

.checkbox-field {
  text-align: left;
}

.form-text {
  font-size: 16px;
}

.contact-form-success-icon {
  filter: invert();
  object-fit: contain;
  margin-top: 0;
  margin-bottom: 10px;
}

.field-lable {
  font-size: 16px;
}

.text-field-2 {
  letter-spacing: 2px;
  cursor: pointer;
  border: 1px solid #1d1f2e80;
  border-radius: 0;
  height: 7.5vh;
  margin-bottom: 20px;
  padding: 18px 24px;
  transition: border .4s, color .4s;
  display: block;
}

.text-field-2:hover {
  border-color: #1d1f2e80;
}

.text-field-2:active, .text-field-2:focus {
  border-color: #1d1f2e;
}

.text-field-2::placeholder {
  color: #1d1f2e4d;
}

.text-field-2._0 {
  background-color: #fff;
  padding-top: 5px;
  padding-bottom: 5px;
}

.form1 {
  margin-bottom: 0;
}

.contact-form-wrap {
  z-index: 10;
  background-color: #fff;
  border: 1px solid #d2d2d580;
  align-items: stretch;
  padding: 60px;
  display: flex;
  position: relative;
}

.contact-form-wrap.flie-text {
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  padding-left: 100px;
  padding-right: 100px;
}

.contact-form-success-message {
  border: 1px solid #ececed;
}

.form-wrap {
  text-align: left;
  border-right: 1px #d2d2d54d;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  margin-right: 0;
  padding-right: 0;
}

.terminbutton-2 {
  text-transform: uppercase;
}

.terminbutton-2:hover {
  background-color: #292929;
}

.terminbutton-2.highlights {
  font-family: Roboto, sans-serif;
}

.terminbutton-2.highlights:hover {
  background-color: #161616;
}

.div-grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

@media screen and (max-width: 991px) {
  body {
    flex-flow: column;
    justify-content: space-between;
  }

  .telefonnummer, .email {
    margin-bottom: 5px;
  }

  .divblock1 {
    padding-bottom: 20px;
  }

  .men-icon2 {
    color: #fff;
  }

  .titel-start {
    height: 60vh;
  }

  .slogan-2.heading-1 {
    text-align: center;
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 25px;
  }

  .slogan-2.heading-1.is-small {
    font-size: 22px;
  }

  .section2, .section2.zweitfarbe {
    padding: 60px;
  }

  .heading-start2 {
    font-size: 60px;
    line-height: 60px;
  }

  .heading-start2.heading-2.farbe-der-headings {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 30px;
    line-height: 1.3;
  }

  .heading-start2.heading-2.farbe-der-headings.small {
    font-size: 20px;
  }

  .mehr-erfahren1.highlights.flie-text {
    margin-top: 10px;
  }

  .serviceangebote2 {
    width: 90%;
  }

  .inhaltstartseite2 {
    padding: 60px;
  }

  .footer2.hauptfarbe.flie-text {
    padding-left: 20px;
    padding-right: 20px;
  }

  .inhalt-leistungen2 {
    flex-direction: column;
    justify-content: center;
    align-self: center;
    align-items: center;
    height: 100%;
    padding-bottom: 20px;
    display: flex;
  }

  .warumwir2-2.linksb-ndig.heading-3 {
    margin-top: 10px;
    font-size: 20px;
  }

  .hintergrund-fsklassen2 {
    flex-direction: column;
    justify-content: center;
    height: 100%;
  }

  .hintergrund-fsklassen2.highlights {
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
  }

  .leistungen-grid {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
    width: 100%;
    margin-top: 20px;
    margin-bottom: 0;
  }

  .leistungen-grid._3er, .leistungen-grid._4er {
    grid-template-columns: 1fr 1fr;
  }

  .image-4 {
    width: 100%;
    height: 50vh;
  }

  .impdat-3, .success-2 {
    padding: 60px;
  }

  .sucess-blcok {
    width: auto;
    padding-left: 40px;
    padding-right: 40px;
  }

  .sucess-blcok.highlights {
    padding: 60px;
  }

  .heading-success {
    margin-bottom: 10px;
    font-size: 22px;
    line-height: 1.5;
  }

  .div-block-footer1 {
    width: 100%;
  }

  .footer-1.hauptfarbe {
    padding-left: 10px;
    padding-right: 10px;
  }

  .footer-1.highlights {
    padding-left: 5vw;
    padding-right: 5vw;
  }

  .heading-footer.heading-3 {
    font-size: 14px;
  }

  .inhalt-footer {
    margin-left: 20px;
    margin-right: 20px;
  }

  .nav-men.highlights {
    background-color: var(--secondry);
    padding-top: 10px;
    padding-bottom: 10px;
    position: absolute;
  }

  .men-icon1 {
    color: #fff;
  }

  .navbar.highlights {
    z-index: 1000;
  }

  .nav-link.flie-text {
    color: #333;
    text-align: center;
    border-bottom-style: none;
  }

  .nav-link.flie-text:hover, .nav-link.flie-text.w--current {
    color: var(--highlights);
  }

  .container-nav {
    min-width: 100%;
    margin: 0;
  }

  .men-buttton1.hauptfarbe {
    background-color: var(--highlights);
    text-align: center;
    width: 100%;
    padding: 15px;
  }

  .link-block {
    width: 2.2rem;
    height: 2.2rem;
  }

  .ablaufplan-big-button-3.black.ablaufplan {
    top: 70px;
  }

  .ablaufplan-big-button-3.black {
    top: 20px;
  }

  .small {
    font-size: 18px;
  }

  .div-100 {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .div-100.hauptfarbe {
    padding: 10px 3vw;
  }

  .wrapper {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .wrapper.inline {
    flex-flow: column;
  }

  .mehr-erfahren1-nav.hauptfarbe.flie-text {
    margin-top: 0;
    font-size: 13px;
  }

  .mehr-erfahren1-nav.hauptfarbe.flie-text:hover {
    transform: scale(1.02);
  }

  .image-small-contain {
    height: 4rem;
  }

  .icons {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    display: grid;
  }

  .logs-heading {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    flex-flow: column;
    padding-bottom: 0;
    padding-left: 40px;
    padding-right: 40px;
  }

  .grid-100 {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    margin-top: 10px;
    display: flex;
  }

  .link-block-2 {
    height: 5rem;
  }

  .link-block-50vh {
    height: 60vh;
  }

  .grid-100-3er {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
    flex-flow: wrap;
    display: flex;
  }

  .login.zweitfarbe {
    width: auto;
    height: auto;
    margin-top: 0;
    margin-bottom: 0;
    padding: 60px;
  }

  .inhaltstartseite2-small.hauptfarbe {
    padding: 30px 60px;
  }

  .gtranslate {
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    width: 120px;
    display: flex;
  }

  ._5er {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    flex-flow: wrap;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    justify-content: center;
    align-items: flex-start;
    display: grid;
  }

  .divider.hauptfarbe {
    margin-top: 10px;
  }

  .div-block-43 {
    order: 0;
    justify-content: flex-start;
    align-items: center;
    display: flex;
  }

  .error-message {
    width: auto;
  }

  .field-lable.flie-text {
    text-align: left;
  }

  .text-field-2 {
    text-align: left;
    height: 7vh;
    margin-bottom: 10px;
    padding: 12px 20px;
  }

  .contact-form {
    padding-bottom: 10px;
  }

  .contact-form-wrap {
    flex-direction: column;
    align-items: center;
  }

  .contact-form-wrap.flie-text {
    padding: 20px;
  }

  .form-wrap {
    text-align: center;
    border-bottom: 1px solid #d2d2d54d;
    border-right-style: none;
    width: auto;
    margin-right: 0;
    padding-right: 0;
  }
}

@media screen and (max-width: 767px) {
  .heading-2 {
    font-size: 25px;
    line-height: 30px;
  }

  .divblock1 {
    height: auto;
  }

  .impdat1-2.flie-text {
    text-align: center;
  }

  .titel-start {
    height: 28rem;
  }

  .video2, .div-block-video-2 {
    height: 100%;
  }

  .slogan-2.heading-1 {
    font-size: 22px;
  }

  .slogan-2.heading-1.is-small {
    font-size: 18px;
  }

  .section2, .section2.zweitfarbe {
    padding: 40px;
  }

  .heading-start2.heading-2 {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 40px;
    line-height: 45px;
  }

  .heading-start2.heading-2.farbe-der-headings {
    font-size: 25px;
  }

  .mehr-erfahren1.highlights.flie-text {
    padding-left: 12px;
    padding-right: 12px;
    font-size: 12px;
  }

  .heading-mittig-klein1.heading-2 {
    font-size: 20px;
  }

  .inhaltstartseite2 {
    padding: 40px;
  }

  .footer2.hauptfarbe.flie-text {
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .iconfooter2 {
    justify-content: flex-start;
  }

  .footer-inhalt3 {
    flex-direction: column;
    align-items: flex-start;
    padding-left: 0;
    display: flex;
  }

  .columns-14 {
    width: 100%;
  }

  .headingfooter2 {
    text-align: center;
  }

  .headingfooter2.heading-3 {
    text-align: left;
  }

  .text-linksb-ndig2.flie-text {
    text-align: center;
  }

  .inhalt-leistungen2 {
    flex-direction: column;
    align-items: center;
    display: flex;
  }

  .warumwir2-2, .warumwir2-2.linksb-ndig {
    text-align: center;
  }

  .warumwir2-2.linksb-ndig.heading-3 {
    font-size: 18px;
  }

  .hintergrund-fsklassen2 {
    margin-top: 5px;
    margin-bottom: 5px;
  }

  .hintergrund-fsklassen2.highlights {
    flex-direction: column;
    height: auto;
    margin-top: 0;
    margin-bottom: 0;
  }

  .leistungen-grid {
    flex-flow: column;
    margin-top: 10px;
    display: flex;
  }

  .image-4 {
    height: 25rem;
  }

  .image-4.contain {
    height: 14vh;
  }

  .impdat-3 {
    padding: 40px;
  }

  .success-2 {
    height: auto;
    padding: 40px;
  }

  .sucess-blcok {
    height: auto;
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .sucess-blcok.highlights {
    padding: 40px;
  }

  .heading-success {
    font-size: 20px;
  }

  .footer-div {
    flex-direction: column;
    justify-content: flex-start;
    width: 100%;
  }

  .div-block-footer1 {
    text-align: center;
    flex-flow: row;
    justify-content: center;
    align-items: center;
  }

  .heading-footer.heading-3 {
    font-size: 12px;
  }

  .maps-gro {
    height: 400px;
  }

  .maos-footer {
    height: 100px;
  }

  .men-buttton1.hauptfarbe {
    padding: 12px;
  }

  .small {
    font-size: 16px;
  }

  .div-100 {
    flex-flow: column;
  }

  .div-100.hauptfarbe {
    flex-flow: wrap;
    position: relative;
  }

  .wrapper {
    flex-flow: row;
    justify-content: flex-start;
    align-items: center;
    width: 45%;
  }

  .wrapper.vertical {
    grid-column-gap: 5px;
    grid-row-gap: 5px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
  }

  .mehr-erfahren1-nav.hauptfarbe.flie-text {
    padding-left: 12px;
    padding-right: 12px;
    font-size: 12px;
  }

  .image-small-contain {
    height: 3.5rem;
  }

  .icons {
    grid-column-gap: 5px;
    grid-row-gap: 5px;
    flex-flow: row;
    margin-top: 0;
    display: flex;
  }

  .logs-heading {
    flex-flow: column;
    width: 100%;
    padding-top: 10px;
    padding-left: 0;
    padding-right: 0;
  }

  .link-block-2 {
    height: 4rem;
    margin-top: 10px;
  }

  .link-block-50vh {
    height: 22rem;
  }

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

  .login.zweitfarbe {
    padding: 40px;
  }

  .inhaltstartseite2-small {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .inhaltstartseite2-small.hauptfarbe {
    padding: 20px 40px;
  }

  .gtranslate {
    width: auto;
  }

  .image-error {
    height: 5rem;
    margin-bottom: 10px;
  }

  ._5er, ._2er_grid {
    grid-template-columns: 1fr;
  }

  .divider-vertical.hauptfarbe {
    width: 100%;
    height: .5vh;
  }

  .error-message {
    font-size: 14px;
    line-height: 22px;
  }

  .text-field-2 {
    width: auto;
    height: 6vh;
    margin-bottom: 10px;
    margin-right: 0;
    padding: 10px 18px;
  }

  .text-field-2::placeholder {
    text-align: center;
  }

  .contact-form {
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    display: flex;
  }

  .contact-form-wrap {
    padding: 40px;
  }

  .terminbutton-2.highlights.heading-3 {
    padding-top: 12px;
    padding-bottom: 12px;
  }
}

@media screen and (max-width: 479px) {
  h1 {
    font-size: 26px;
    line-height: 150%;
  }

  h2 {
    font-size: 24px;
    line-height: 150%;
  }

  h3 {
    font-size: 20px;
    line-height: 150%;
  }

  .heading-2 {
    font-size: 22px;
    line-height: 26px;
  }

  .terminbutton.highlights {
    padding-left: 10px;
    padding-right: 10px;
    font-size: 12px;
  }

  .video2 {
    height: 100%;
  }

  .div-block-video-2 {
    height: 100.07%;
  }

  .slogan-2.heading-1 {
    font-size: 20px;
  }

  .slogan-2.heading-1.is-small {
    font-size: 16px;
  }

  .section2, .section2.zweitfarbe {
    padding-left: 20px;
    padding-right: 20px;
  }

  .heading-start2 {
    font-size: 30px;
    line-height: 30px;
  }

  .heading-start2.heading-2 {
    font-size: 22px;
    line-height: 30px;
  }

  .heading-start2.heading-2.farbe-der-headings {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    display: flex;
  }

  .mehr-erfahren1 {
    min-width: 150px;
  }

  .mehr-erfahren1.highlights.flie-text {
    min-width: auto;
    margin-top: 5px;
    padding-left: 10px;
    padding-right: 10px;
  }

  .serviceangebote2 {
    width: 100%;
    margin-top: 20px;
  }

  .heading-mittig-klein1.heading-2 {
    font-size: 18px;
  }

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

  .inhalt-leistungen2 {
    padding: 5px 15px 15px;
  }

  .warumwir2-2, .warumwir2-2.linksb-ndig {
    text-align: center;
  }

  .warumwir2-2.linksb-ndig.heading-3 {
    font-size: 16px;
  }

  .hintergrund-fsklassen2.highlights {
    flex-direction: column;
  }

  .leistungen-grid {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .image-4.contain {
    height: 10vh;
  }

  .impdat-3, .success-2 {
    padding-left: 20px;
    padding-right: 20px;
  }

  .sucess-blcok.highlights {
    padding: 20px;
  }

  .heading-success {
    font-size: 18px;
  }

  .div-block-footer1 {
    padding-left: 10px;
    padding-right: 10px;
  }

  .heading-footer.heading-3 {
    font-size: 11px;
  }

  .maps-gro {
    height: 300px;
  }

  .impdat-2 {
    padding: 40px 10px;
  }

  .impdat-2.flie-text {
    min-height: auto;
  }

  .nav-link.flie-text {
    font-size: 14px;
  }

  .men-buttton1.hauptfarbe {
    padding: 10px;
  }

  .image-100.contain._18vh {
    height: 10vh;
  }

  .image-100.contain._18vh._25 {
    height: 25vh;
  }

  .image-100.contain.adj {
    height: 20vh;
  }

  .ablaufplan-big-button-3 {
    white-space: normal;
    padding-left: 20px;
    padding-right: 20px;
  }

  .ablaufplan-big-button-3.black.ablaufplan {
    top: 60px;
  }

  .ablaufplan-big-button-3.black {
    top: 10px;
  }

  .small {
    font-size: 12px;
  }

  .mehr-erfahren1-nav {
    min-width: 150px;
  }

  .mehr-erfahren1-nav.hauptfarbe.flie-text {
    min-width: auto;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 10px;
    line-height: 1.3;
  }

  .image-small-contain {
    height: 3rem;
  }

  .icons {
    z-index: 100;
    flex-flow: column;
    position: fixed;
    inset: auto 1% 2% auto;
  }

  .link-block-2 {
    height: 3.5rem;
  }

  .link-block-50vh {
    height: auto;
  }

  .grid-100-3er {
    grid-column-gap: 25px;
    grid-row-gap: 25px;
    justify-content: center;
    align-items: flex-start;
  }

  .login.zweitfarbe {
    width: 100%;
    padding: 20px;
  }

  .html-embed-7 {
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    display: flex;
  }

  .inhaltstartseite2-small.hauptfarbe {
    padding-left: 20px;
    padding-right: 20px;
  }

  .utility-pag.highlights {
    padding-left: 60px;
    padding-right: 60px;
  }

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

  .form-text.flie-text, .field-lable.flie-text {
    font-size: 15px;
  }

  .text-field-2 {
    height: 5.5vh;
    padding: 8px 12px;
  }

  .contact-form-wrap {
    padding: 40px 30px;
  }

  .contact-form-wrap.flie-text {
    padding: 10px;
  }

  .terminbutton-2.highlights.heading-3 {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 15px;
  }
}

#w-node-_1415d555-c856-48a4-7995-57cb1a5e86a8-cdc99f21, #w-node-_820106d2-4ad7-2433-3350-e73924bfc34d-cdc99f21 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

@media screen and (max-width: 991px) {
  #w-node-_212954fe-5612-fde0-bd91-3b7bfe8c77d8-e1f22e20 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }

  #w-node-_0e2ea3f9-7b4c-7e56-d055-6065e5882ff9-e1f22e28 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}

@media screen and (max-width: 767px) {
  #w-node-b433e812-8f1c-cb8e-2f9e-7103a937cc57-e1f22e20 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}


@font-face {
  font-family: 'Quattrocento';
  src: url('../fonts/Quattrocento-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Quattrocento';
  src: url('../fonts/Quattrocento-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Ethnocentric Rg';
  src: url('../fonts/Ethnocentric-Rg.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}