@charset "UTF-8";
/*

0 - 600px:      Phone
600 - 900px:    Tablet portrait
900 - 1200px:   Tablet landscape
1200 - 1800px:  normal styles
1200 +:         Big Desktop
2
*/
/*$breakpoint arguement choices:
- phone
- tab-port
- tab-land
- big-desktop
*/
.fancybox-is-open .fancybox-bg {
  opacity: 0.98;
}

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: inherit;
}

html {
  font-size: 62.5%;
}

body {
  box-sizing: border-box;
}

body {
  font-family: var(--default-font-family);
  color: var(--color-primary-dark);
  font-weight: 300;
  font-size: var(--default-font-size);
  position: relative;
  overflow-x: hidden;
  line-height: var(--default-line-height);
  height: 100%;
  min-height: 100vh;
}

::-moz-selection {
  color: var(--color-white);
  background: var(--color-black);
  text-shadow: none;
}

::selection {
  color: var(--color-white);
  background: var(--color-black);
  text-shadow: none;
}

p {
  padding-bottom: 0.5em;
  hyphens: auto;
  hyphenate-limit-chars: 10 auto 4;
}

a {
  color: var(--color-primary);
  text-decoration: none;
}
a:hover {
  color: var(--color-primary-dark);
  text-decoration: none;
}
a h3 {
  display: inline;
}
a i.fa-solid.fa-arrow-right {
  margin-right: 1rem;
}
a.white {
  color: var(--color-white);
}

ul.aufzaehlung {
  margin: 1rem 0 2rem 2rem;
}
ul.aufzaehlung li {
  padding-left: 2rem;
}

.flex {
  display: flex;
}

hr {
  margin: 1.8rem 0;
  border-top: 1px solid var(--color-secondary);
}

img {
  width: 100%;
  height: auto;
  vertical-align: middle;
  font-style: italic;
  background-repeat: no-repeat;
  background-size: cover;
  shape-margin: 1rem;
}

.back-to-top {
  background: var(--color-primary);
  color: var(--color-white);
  position: fixed;
  bottom: 15px;
  right: 15px;
  padding: 2rem;
  z-index: 100;
}
.back-to-top:hover {
  color: var(--color-black);
}

.underline {
  border-bottom: 1px solid var(--color-primary-dark);
  width: fit-content;
  margin-bottom: 1em;
}

.shadow {
  -webkit-box-shadow: 6px 7px 8px -6px rgba(0, 0, 0, 0.9);
  -moz-box-shadow: 6px 7px 8px -6px rgba(0, 0, 0, 0.9);
  box-shadow: 6px 7px 8px -6px rgba(0, 0, 0, 0.9);
}

.shadow-2 {
  -webkit-box-shadow: 6px 7px 8px -6px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 6px 7px 8px -6px rgba(0, 0, 0, 0.3);
  box-shadow: 6px 7px 8px -6px rgba(0, 0, 0, 0.3);
}

.shadow-inset {
  -webkit-box-shadow: inset 0px 0px 20px -6px rgba(0, 0, 0, 0.8);
  -moz-box-shadow: inset 0px 0px 20px -6px rgba(0, 0, 0, 0.8);
  box-shadow: inset 0px 0px 20px -6px rgba(0, 0, 0, 0.8);
}

.shadow-inset-3 {
  -webkit-box-shadow: inset 0px 0px 9px -6px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: inset 0px 0px 9px -6px rgba(0, 0, 0, 0.5);
  box-shadow: inset 0px 0px 9px -6px rgba(0, 0, 0, 0.5);
}

/* roboto-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/roboto-v30-latin-300.eot"); /* IE9 Compat Modes */
  src: url("../fonts/roboto-v30-latin-300.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-v30-latin-300.woff2") format("woff2"), url("../fonts/roboto-v30-latin-300.woff") format("woff"), url("../fonts/roboto-v30-latin-300.ttf") format("truetype"), url("../fonts/roboto-v30-latin-300.svg#Roboto") format("svg"); /* Legacy iOS */
}
/* roboto-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/roboto-v30-latin-regular.eot"); /* IE9 Compat Modes */
  src: url("../fonts/roboto-v30-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-v30-latin-regular.woff2") format("woff2"), url("../fonts/roboto-v30-latin-regular.woff") format("woff"), url("../fonts/roboto-v30-latin-regular.ttf") format("truetype"), url("../fonts/roboto-v30-latin-regular.svg#Roboto") format("svg"); /* Legacy iOS */
}
/* roboto-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/roboto-v30-latin-700.eot"); /* IE9 Compat Modes */
  src: url("../fonts/roboto-v30-latin-700.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-v30-latin-700.woff2") format("woff2"), url("../fonts/roboto-v30-latin-700.woff") format("woff"), url("../fonts/roboto-v30-latin-700.ttf") format("truetype"), url("../fonts/roboto-v30-latin-700.svg#Roboto") format("svg"); /* Legacy iOS */
}
/* roboto-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/roboto-v30-latin-900.eot"); /* IE9 Compat Modes */
  src: url("../fonts/roboto-v30-latin-900.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-v30-latin-900.woff2") format("woff2"), url("../fonts/roboto-v30-latin-900.woff") format("woff"), url("../fonts/roboto-v30-latin-900.ttf") format("truetype"), url("../fonts/roboto-v30-latin-900.svg#Roboto") format("svg"); /* Legacy iOS */
}
:root {
  --default-font-family: "Roboto", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
  --default-font-size: clamp(1.5rem, 1.9rem, 2.5rem);
  --default-line-height: 1.5em;
  --h1-font-size: clamp(1.8em, 2.4cqi, 3.5em);
  --h1-line-height: clamp(110%, 120%, 150%);
  --h1-font-weight: 400;
  --h2-font-size: clamp(1.8em, 2.8cqi, 4.0em);
  --h2-line-height: 110%;
  --h2-font-weight: 400;
  --h3-font-size: clamp(1.6em, 2.0cqi, 2em);
  --h3-line-height: clamp(110%, 120%, 150%);
  --h3-font-weight: 400;
  --h4-font-size: clamp(1.2em, 0.8cqi, 2.8em);
  --h4-line-height: clamp(110%, 120%, 150%);
  --h4-font-weight: 400;
}

h1 {
  font-family: var(--default-font-family);
  font-size: var(--h1-font-size);
  line-height: var(--h1-line-height);
  font-weight: var(--h1-font-weight);
}

h1.angebot {
  font-family: var(--default-font-family);
  font-size: var(--h4-font-size);
  line-height: var(--h4-line-height);
  font-weight: var(--h4-font-weight);
}

h2 {
  font-family: var(--default-font-family);
  font-size: var(--h2-font-size);
  line-height: var(--h2-line-height);
  font-weight: var(--h2-font-weight);
}
h2 span {
  color: var(--color-primary);
  font-weight: 700;
}

h3 {
  font-family: var(--default-font-family);
  font-size: var(--h3-font-size);
  line-height: var(--h3-line-height);
  font-weight: var(--h3-font-weight);
  margin-bottom: 1em;
}

h4 {
  font-family: var(--default-font-family);
  font-size: var(--h4-font-size);
  line-height: var(--h4-line-height);
  font-weight: var(--h4-font-weight);
}

h3 span,
h4 span {
  color: var(--color-primary);
}

.col-3 h4 {
  padding-bottom: 1em;
}

h4.padding-0 {
  padding: 0;
}

.small {
  font-size: 0.8em;
  line-height: normal;
}

/* buttons */
.btn {
  border: none;
  outline: none;
  cursor: pointer;
  font-family: var(--font-family-primary);
  margin: 0;
  text-decoration: none;
  padding: 0rem;
  display: inline-block;
  font-weight: 400;
  /* Add a light grey background on mouse-over */
  /* Add a dark background to the active button */
}
.btn:hover {
  color: var--(color-primary-light);
}
.btn.active {
  background-color: var(--color-primary);
  color: var(--color-white);
}
.btn--primary {
  padding: 2rem;
  color: var(--color-white);
  background-color: var(--color-primary);
}
.btn--primary:hover {
  color: var(--color-white);
  background-color: var(--color-primary-dark);
}
.btn--secondary {
  padding: 2rem;
  color: var(--color-primary);
  background-color: var(--color-black);
  display: inline-block;
}
.btn--secondary:hover {
  color: var(--color-white);
  background-color: var(--color-secondary-dark);
}
.btn--info {
  color: var(--color-primary);
  padding: 2rem;
  border: 3px solid var(--color-primary);
  width: 100%;
  text-align: center;
  font-weight: 400;
}
.btn--info:hover {
  color: var(--color-primary);
  padding: 2rem;
  border: 3px solid var(--color-primary-dark);
}
.btn--grey {
  padding: 2rem;
  color: var(--color-primary-dark);
  background-color: var(--color-grey-light);
}
.btn--grey:hover {
  color: var(--color-primary);
  background-color: var(--color-black);
}
.btn--filter {
  font-size: 1.4em;
  padding: 2rem 3rem;
  background-color: var(--color-grey-light);
  color: var(--color-black);
}
.btn--filter:hover {
  color: var(--color-black);
  background-color: var(--color-primary);
}
@media (min-width: 1024px) {
  .btn--filter {
    font-size: 1.2em;
    padding: 1.5rem 2rem;
    background-color: var(--color-grey-light);
    color: var(--color-primary-dark);
  }
}
@media (min-width: 768px) {
  .btn--filter {
    display: block;
    width: auto;
    font-size: 1em;
    padding: 1.5rem;
  }
}
.btn--link {
  padding: 2rem 0;
  color: var(--color-primary-dark);
  background-color: var(--color-white);
  font-size: var(--default-font-size);
}
.btn--link:hover {
  color: var(--color-primary);
}

.cta .btn--secondary {
  padding: 2rem;
  color: var(--color-primary);
  background-color: var(--color-black);
  display: flex;
  width: fit-content;
  margin: 3rem auto 0;
  align-items: center;
}
.cta .btn--secondary:hover {
  color: var(--color-white);
  background-color: var(--color-black-alpha);
}

.txt-center {
  text-align: center;
}
@media (min-width: 768px) {
  .txt-center {
    text-align: center;
  }
}

.v-align-center {
  align-items: center;
}

.bg-center {
  background-position: center;
}

:root {
  --color-primary-alpha: hsla(116, 31%, 43%, 0.85);
  --color-primary: hsl(78, 49%, 42%);
  --color-primary-dark: #004e20;
  --color-primary-dark2: #013817;
  --color-primary-dark-alpha: hsla(145, 100%, 15%, 0.5);
  --color-primary-light: hsla(78, 49%, 42%, 0.763);
  --color-secondary-light: #cdc941;
  --color-secondary:#efede6;
  --color-secondary-dark: hsl(48, 12%, 83%);
  --color-secondary-alpha: hsla(47, 22%, 92% 0.5);
  --color-overlay: hsl(49, 9%, 38%);
  --color-grey-light: #ccc;
  --color-grey-light-2: #F9f9f9;
  --color-grey-dark: #7F7B71;
  --color-white: #ffffff;
  --color-black: #000000;
  --color-white-alpha: rgba(255, 255, 255, 0.5);
  --color-black-alpha: rgba(0, 0, 0, 0.5);
  --color-grey-alpha: rgba(242, 244, 246, 0.5);
  --color-blue: #0d6efd;
  --color-indigo: #6610f2;
  --color-purple: #6f42c1;
  --color-pink: #d63384;
  --color-red: #dc3545;
  --color-orange: #fd7e14;
  --color-yellow: #ffc107;
  --color-green: #198754;
  --color-teal: #20c997;
  --color-cyan: #0dcaf0;
  --color-white: #fff;
  --color-gray: #6c757d;
  --color-gray-dark: #343a40;
  --color-gray-100: #f8f9fa;
  --color-gray-200: #e9ecef;
  --color-gray-300: #dee2e6;
  --color-gray-400: #ced4da;
  --color-gray-500: #adb5bd;
  --color-gray-600: #6c757d;
  --color-gray-700: #495057;
  --color-gray-800: #343a40;
  --color-gray-900: #212529;
  --color-success: #198754;
  --color-info: #0dcaf0;
  --color-warning: #ffc107;
  --color-danger: #dc3545;
  --color-light: #f8f9fa;
  --color-dark: #212529;
  --color-primary-rgb: 13,110,253;
  --color-secondary-rgb: 108,117,125;
  --color-success-rgb: 25,135,84;
  --color-info-rgb: 13,202,240;
  --color-warning-rgb: 255,193,7;
  --color-danger-rgb: 220,53,69;
  --color-light-rgb: 248,249,250;
  --color-dark-rgb: 33,37,41;
  --color-white-rgb: 255,255,255;
  --color-black-rgb: 0,0,0;
  --color-body-color-rgb: 33,37,41;
  --color-body-bg-rgb: 255,255,255;
  --gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --body-font-family: var(--font-sans-serif);
  --body-font-size: 2rem;
  --body-font-weight: 400;
  --body-line-height: 1.5;
  --body-color: #212529;
  --body-bg: #fff;
}

.bg-primary {
  background-color: var(--color-primary);
  color: var(--color-white);
}
.bg-primary h1, .bg-primary h2, .bg-primary h3, .bg-primary h4 {
  color: var(--color-white);
}
.bg-primary span {
  color: var(--color-secondary-light);
}

.bg-primary-dark {
  background-color: var(--color-primary-dark);
  color: var(--color-white);
}
.bg-primary-dark h1, .bg-primary-dark h2, .bg-primary-dark h3, .bg-primary-dark h4 {
  color: var(--color-white);
}
.bg-primary-dark span {
  color: var(--color-secondary-light);
}

.bg-secondary {
  background-color: var(--color-secondary);
}

.bg-secondary-light {
  background-color: var(--color-secondary-light);
}

.bg-primary-dark {
  background-color: var(--color-primary-dark);
}

.clr-1 {
  color: var(--color-primary);
}

.brd-primary {
  border: 2px solid var(--color-primary);
}

.brd-left {
  border-top: 1px solid var(--color-primary);
  padding-top: 1rem;
}
@media (min-width: 1024px) {
  .brd-left {
    border-top: 0px solid var(--color-primary);
    border-left: 1px solid var(--color-primary);
    padding-top: 0;
    padding-left: 1rem;
  }
}

@media (min-width: 1024px) {
  .brd-bottom {
    border-bottom: 1px solid var(--color-primary);
    padding: 2rem 0;
  }
}

.clr-white {
  color: var(--color-white);
}

.brd-white {
  border: 2px solid var(--color-primary-dark);
}

.brd-secondary-light {
  border: 2px solid var(--color-primary-dark);
}

.bg-white {
  background-color: var(--color-primary-dark);
}

.bg-img {
  background-image: url(/img/base/bg.webp);
  background-repeat: repeat;
}

.bg-img-2 {
  background-image: url(/img/base/bg2.webp);
  background-repeat: repeat;
}

:root {
  --padding: 2em;
  --padding-tb-xs: 2em 0em;
  --padding-tb-s: 3em 0em;
  --padding-tb-m: 4em 0em;
  --padding-tb-l: 6em 0;
  --padding-b-s: 0 0 3em 0em;
  --padding-b-m: 0 0 6em 0em;
  --padding-t-l: 6em 0 0 0;
  --padding-t-m: 4em 0 0 0;
  --padding-t-s: 2em 0 0 0;
  --padding-b-l: 0 0 6em 0;
  --padding-b-m: 0 0 4em 0;
  --padding-b-s: 0 0 2em 0;
  --margin-xs: .5em;
  --margin-s: 2em;
  --margin-m: 4em;
  --margin-l: 6em;
  --margin-xl: 12em;
  --size-2: 2em;
  --size-4: 4em;
}

section {
  margin-bottom: 6vh;
}
@media (min-width: 768px) {
  section {
    margin-bottom: 10vh;
  }
}

.margin-lr-2 {
  margin: 0 2rem;
}
@media (min-width: 1024px) {
  .margin-lr-2 {
    margin: 0;
  }
}

.margin-b-0 {
  margin-bottom: 0;
}

.margin-b-xs {
  margin-bottom: var(--margin-xs);
}

.margin-b-s {
  margin-bottom: var(--margin-s);
}

.margin-b-m {
  margin-bottom: var(--margin-m);
}

.margin-b-l {
  margin-bottom: var(--margin-l);
}

.margin-t-s {
  margin-top: var(--margin-s);
}

.margin-t-m {
  margin-top: var(--margin-m);
}
@media (min-width: 1024px) {
  .margin-t-m {
    margin-top: var(--margin-s);
  }
}

.margin-t-l {
  margin-top: var(--margin-l);
}

.margin-tb-l {
  margin-top: var(--margin-m);
  margin-bottom: var(--margin-m);
}
@media (min-width: 1024px) {
  .margin-tb-l {
    margin-top: var(--margin-l);
    margin-bottom: var(--margin-l);
  }
}

.margin-tb-s {
  margin-top: var(--margin-s);
  margin-bottom: var(--margin-s);
}
@media (min-width: 1024px) {
  .margin-tb-s {
    margin-top: var(--margin-s);
    margin-bottom: var(--margin-s);
  }
}

.margin-t-xl {
  margin-top: var(--margin-l);
}
@media (min-width: 1024px) {
  .margin-t-xl {
    margin-top: var(--margin-xl);
  }
}

.margin-t-nav {
  margin-top: 17rem;
}

.margin-b-l {
  margin-bottom: var(--margin-l);
}

.padding-tb-s {
  padding: var(--padding-tb-s);
}

.padding-tb-m {
  padding: var(--padding-tb-m);
}

.padding-tb-l {
  padding: var(--padding-tb-m);
}
@media (min-width: 1024px) {
  .padding-tb-l {
    padding: var(--padding-tb-l);
  }
}

.padding-t-l {
  padding: var(--padding-t-m);
}
@media (min-width: 1024px) {
  .padding-t-l {
    padding: var(--padding-t-l);
  }
}

.padding-b-m {
  padding: var(--padding-b-m);
}

.padding-b-s {
  padding: var(--padding-b-s);
}

.padding-b-0 {
  padding-bottom: 0;
}

.padding {
  padding: var(--padding);
}

@media (min-width: 1024px) {
  .gap {
    gap: 5rem;
  }
}

.content-grid {
  --padding-inline: 2em;
  --content-max-width: 1190px;
  --breakout-max-width: 1960px;
  --breakout-size: calc((var(--breakout-max-width) - var(--content-max-width)) / 2);
  display: grid;
  grid-template-columns: [full-width-start] 1fr [breakout-start] minmax(0, var(--breakout-size)) [content-start] min(var(--content-max-width), 100% - 4rem) [content-end] minmax(0, var(--breakout-size)) [breakout-end] 1fr [full-width-end];
  /*
      [full-width-start] minmax(2rem, 1fr) [breakout-start] minmax(0, var(--breakout-size)) [content-start] min(100% - (var(--padding-inline) * 2),
        var(--content-max-width)) [content-end] minmax(0, var(--breakout-size)) [breakout-end] minmax(2rem, 1fr) [full-width-end];
  */
}
@media (min-width: 768px) {
  .content-grid {
    grid-template-columns: [full-width-start] minmax(var(--padding-inline), 1fr) [breakout-start] minmax(0, var(--breakout-size)) [content-start] min(100% - var(--padding-inline) * 2, var(--content-max-width)) [content-end] minmax(0, var(--breakout-size)) [breakout-end] minmax(var(--padding-inline), 1fr) [full-width-end];
  }
}

.content-grid > :not(.breakout, .full-width),
.full-width > :not(.breakout, .full-width) {
  grid-column: content;
}

.content-grid > .breakout {
  grid-column: content;
}
@media (min-width: 768px) {
  .content-grid > .breakout {
    grid-column: breakout;
  }
}

.content-grid > .full-width {
  grid-column: full-width;
}

img.full-width {
  width: 100%;
  max-height: 100vh;
  object-fit: cover;
}

.content {
  grid-column: content;
}

.center {
  margin-left: auto;
  margin-right: auto;
}

.r3 {
  display: grid;
  grid-template-rows: auto 1fr min-content;
}

.hero {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: calc(100vh - 12.6rem);
}
@media (min-width: 768px) {
  .hero {
    height: calc(100vh - 12.6rem);
  }
}
.hero .headline-wrapper {
  grid-row: 1;
  display: flex;
  flex-direction: column;
  align-self: flex-end;
  padding: var(--padding-b-m);
  z-index: 2;
}
.hero .headline-wrapper h1 {
  color: var(--color-secondary-light);
}
@media (min-width: 1024px) {
  .hero .headline-wrapper h1 {
    max-width: 34vw;
  }
}
.hero .headline-wrapper h1 span {
  color: var(--color-white);
  line-height: 0.7em;
}
.hero img {
  grid-column: full-width !important;
  height: calc(80vh - 12.6rem);
  object-fit: cover;
  grid-row: 1;
}
@media (min-width: 768px) {
  .hero img {
    grid-column: full-width !important;
    height: calc(100vh - 12.6rem);
    object-fit: cover;
    grid-row: 1;
    object-position: 0 10%;
  }
}
.hero a.hinweis .sticker {
  border-radius: 50%;
  position: absolute;
  z-index: 5;
  width: 20rem;
  height: 20rem;
  right: 5vw;
  top: 25rem;
  display: flex;
  text-align: center;
  justify-content: center;
  align-items: center;
}
@media (min-width: 768px) {
  .hero a.hinweis .sticker {
    top: 30rem;
    width: 30rem;
    height: 30rem;
  }
}
.hero a.hinweis .sticker:hover {
  opacity: 0.8;
}
.hero a.hinweis img.button {
  height: 100%;
  width: 100%;
}

.hero .headline-wrapper {
  grid-row: 1;
  display: flex;
  flex-direction: column;
  align-self: flex-end;
  padding: var(--padding-b-m);
  z-index: 2;
  position: absolute;
  bottom: -3rem;
  right: 0;
  padding: 2em;
  background-color: var(--color-primary-dark);
  margin-bottom: -2em;
  max-width: 80dvw;
}
@media (min-width: 768px) {
  .hero .headline-wrapper {
    grid-row: 1;
    display: flex;
    flex-direction: column;
    align-self: flex-end;
    padding: var(--padding-b-m);
    z-index: 2;
    position: absolute;
    bottom: -3rem;
    right: 0;
    transform: none;
    padding: 3em 4em 4em 4em;
    background-color: var(--color-primary-dark);
    margin-bottom: -2em;
    max-width: 34dvw;
  }
}

.bg-center {
  background-position-x: center;
}

.cta {
  background-color: var(--color-secondary);
  padding: var(--padding-tb-l);
  color: var(--color-primary-dark);
  margin-bottom: 0;
}
.cta .max100 {
  padding: 0 3rem;
}
@media (min-width: 768px) {
  .cta .max100 {
    padding: 0;
  }
}

.max100 {
  max-width: 100rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .max100 {
    max-width: 100rem;
    width: 100%;
  }
}
.max100 ul {
  list-style: inside;
}

.max50 {
  max-width: 50rem;
  width: 85%;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .max50 {
    max-width: 50rem;
    width: 50rem;
  }
}
.max50 ul {
  list-style: inside;
}

.max55 {
  max-width: 55rem;
  width: 85%;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .max55 {
    max-width: 55rem;
    width: 55rem;
  }
}
.max55 ul {
  list-style: inside;
}

.max60 {
  max-width: 60rem;
  width: 85%;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .max60 {
    max-width: 60rem;
    width: 60rem;
  }
}
.max60 ul {
  list-style: inside;
}

.max80 {
  max-width: 80rem;
  width: 85%;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .max80 {
    max-width: 80rem;
    width: 80rem;
  }
}
.max80 ul {
  list-style: inside;
}

.max90 {
  max-width: 90rem;
  width: 85%;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .max90 {
    max-width: 90rem;
    width: 90rem;
  }
}
.max90 ul {
  list-style: inside;
}

.col-2 {
  grid-column: content;
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
}
@media (min-width: 1024px) {
  .col-2 {
    grid-template-columns: 1fr 1fr;
    gap: 5rem;
  }
}

section.col2 {
  grid-column: content;
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  margin-bottom: 1rem;
  align-items: start;
}
@media (min-width: 1024px) {
  section.col2 {
    grid-template-columns: 1fr 1fr;
    margin-bottom: 10vh;
  }
}
section.col2 img {
  grid-column: 1/-1;
}
@media (min-width: 1024px) {
  section.col2 img {
    grid-column: 2/-1;
    margin-left: -1em;
  }
}
section.col2 .text {
  grid-column: 1/-1;
  padding: 1em;
  justify-self: center;
  padding-right: 0;
}
section.col2 .text ul {
  margin-left: 1em;
}
section.col2 .text h4 {
  margin-bottom: var(--margin-s);
}
section.col2 .text p {
  margin-bottom: var(--margin-m);
}
@media (min-width: 1024px) {
  section.col2 .text {
    grid-column: 1/2;
    padding: var(--padding);
    padding-right: 4em;
  }
}
@media (min-width: 1920px) {
  section.col2 .text {
    padding-right: 8em;
  }
}

.col2-reverse {
  grid-column: content;
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .col2-reverse {
    grid-template-columns: 1fr 1fr;
  }
}
.col2-reverse .text {
  grid-column: 1/-1;
  padding: 1em;
  justify-self: center;
}
@media (min-width: 1024px) {
  .col2-reverse .text {
    padding: var(--padding);
    grid-column: 2/-1;
    padding-left: 4em;
  }
}
@media (min-width: 1920px) {
  .col2-reverse .text {
    padding-left: 8em;
  }
}
.col2-reverse .text ul {
  margin-left: 1em;
}
.col2-reverse img {
  grid-column: 1/-1;
}
@media (min-width: 1024px) {
  .col2-reverse img {
    grid-column: 1/2;
    width: 100%;
    align-self: flex-end;
    margin-right: -1em;
  }
}
@media (min-width: 1920px) {
  .col2-reverse img {
    grid-column: 1/2;
    width: 70%;
    align-self: flex-end;
    margin-right: -1em;
  }
}

.col-3 {
  grid-column: content;
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
}
@media (min-width: 768px) {
  .col-3 {
    grid-template-columns: 1fr 1fr;
    gap: 5rem;
  }
}
@media (min-width: 1024px) {
  .col-3 {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 5rem;
  }
}

.col i.fa-solid.fa-check {
  float: left;
  font-size: 1.5em;
  margin-right: 0.5em;
  color: var(--color-primary);
}
@media (min-width: 1024px) {
  .col i.fa-solid.fa-check {
    float: left;
    font-size: 1.5em;
    margin-right: 1em;
    color: var(--color-primary);
  }
}
.col ul li::marker {
  content: "✓";
  /* Unicode-Symbol für Häkchen */
  margin-right: 15px;
  /* Abstand zwischen Symbol und Text */
}
.col p.block {
  display: table;
}

.col.bg-secondary-light {
  position: relative;
}
.col.bg-secondary-light h4.bg-secondary {
  padding: 1em 1.5em;
}
.col.bg-secondary-light p {
  padding: 1em 1.5em 4em 1.5em;
}

.jobs.col.bg-secondary-light {
  position: relative;
  color: var(--color-black);
  padding: 2em;
}
.jobs.col.bg-secondary-light h5 {
  border-bottom: 1px solid var(--color-black);
  width: fit-content;
  margin-bottom: 1em;
}
.jobs.col.bg-secondary-light h3 {
  color: var(--color-black);
  display: block;
  margin-bottom: 1em;
}
.jobs.col.bg-secondary-light p {
  color: var(--color-black);
  padding: 0;
}

.col-2-1 {
  display: grid;
  grid-template-columns: 1fr;
}
@media (min-width: 1024px) {
  .col-2-1 {
    grid-template-columns: 2fr 1fr;
    gap: 5rem;
  }
}
.col-2-1 ul {
  margin-left: 2rem;
}

.col-1-2 {
  display: grid;
  grid-template-columns: 1fr;
}
@media (min-width: 1024px) {
  .col-1-2 {
    grid-template-columns: 1fr 2fr;
    gap: 5rem;
  }
}

.a-right {
  justify-self: start;
}
@media (min-width: 1024px) {
  .a-right {
    justify-self: end;
  }
}

.person {
  border-top: 1px solid var(--color-black);
  padding: 1rem 0;
  margin-top: 1em;
  width: 100%;
}
@media (min-width: 1024px) {
  .person {
    width: 100%;
    border-top: 0;
    margin-top: 0;
    border-left: 1px solid var(--color-black);
    padding-left: 2em;
  }
}

.unternehmen .col {
  position: relative;
}
.unternehmen .col ul {
  margin-left: 2rem;
  margin-bottom: 6em;
}
.unternehmen .col ul li {
  padding-left: 2rem;
}
.unternehmen .col .btn {
  position: absolute;
  bottom: 2em;
}
.unternehmen .col .btn--info {
  width: -webkit-fill-available;
  margin-right: 2em;
}

.teaser-dark {
  background-color: var(--color-primary-dark-alpha);
  color: var(--color-white);
}
.teaser-dark i.fa-solid.fa-check {
  float: left;
  font-size: 1.5em;
  margin-right: 0.5em;
  color: var(--color-secondary-light);
}
@media (min-width: 768px) {
  .teaser-dark i.fa-solid.fa-check {
    font-size: 2.5em;
  }
}
.teaser-dark h2 {
  color: var(--color-white);
}
.teaser-dark h2 span {
  color: var(--color-secondary-light);
}
.teaser-dark h3, .teaser-dark h4 {
  color: var(--color-secondary-light);
}
.teaser-dark .btn--info {
  color: var(--color-secondary-light);
  padding: 2rem;
  border: 3px solid var(--color-secondary-light);
  width: 100%;
  text-align: center;
  font-weight: 400;
}
.teaser-dark .btn--info:hover {
  color: var(--color-secondary-light);
  padding: 2rem;
  border: 3px solid var(--color-secondary-light);
  background-color: var(--color-primary-dark-alpha);
}

.ds h3 {
  padding: 2rem 0;
  margin-bottom: 0;
}
.ds h4 {
  padding: 2rem 0 1rem 0;
}

body[data-aos-duration="50"] [data-aos], [data-aos][data-aos][data-aos-duration="50"] {
  transition-duration: 50ms;
}
body[data-aos-delay="50"] [data-aos], [data-aos][data-aos][data-aos-delay="50"] {
  transition-delay: 0;
}
body[data-aos-delay="50"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="50"].aos-animate {
  transition-delay: 50ms;
}
body[data-aos-duration="100"] [data-aos], [data-aos][data-aos][data-aos-duration="100"] {
  transition-duration: 100ms;
}
body[data-aos-delay="100"] [data-aos], [data-aos][data-aos][data-aos-delay="100"] {
  transition-delay: 0;
}
body[data-aos-delay="100"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="100"].aos-animate {
  transition-delay: 100ms;
}
body[data-aos-duration="150"] [data-aos], [data-aos][data-aos][data-aos-duration="150"] {
  transition-duration: 150ms;
}
body[data-aos-delay="150"] [data-aos], [data-aos][data-aos][data-aos-delay="150"] {
  transition-delay: 0;
}
body[data-aos-delay="150"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="150"].aos-animate {
  transition-delay: 150ms;
}
body[data-aos-duration="200"] [data-aos], [data-aos][data-aos][data-aos-duration="200"] {
  transition-duration: 200ms;
}
body[data-aos-delay="200"] [data-aos], [data-aos][data-aos][data-aos-delay="200"] {
  transition-delay: 0;
}
body[data-aos-delay="200"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="200"].aos-animate {
  transition-delay: 200ms;
}
body[data-aos-duration="250"] [data-aos], [data-aos][data-aos][data-aos-duration="250"] {
  transition-duration: 250ms;
}
body[data-aos-delay="250"] [data-aos], [data-aos][data-aos][data-aos-delay="250"] {
  transition-delay: 0;
}
body[data-aos-delay="250"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="250"].aos-animate {
  transition-delay: 250ms;
}
body[data-aos-duration="300"] [data-aos], [data-aos][data-aos][data-aos-duration="300"] {
  transition-duration: 300ms;
}
body[data-aos-delay="300"] [data-aos], [data-aos][data-aos][data-aos-delay="300"] {
  transition-delay: 0;
}
body[data-aos-delay="300"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="300"].aos-animate {
  transition-delay: 300ms;
}
body[data-aos-duration="350"] [data-aos], [data-aos][data-aos][data-aos-duration="350"] {
  transition-duration: 350ms;
}
body[data-aos-delay="350"] [data-aos], [data-aos][data-aos][data-aos-delay="350"] {
  transition-delay: 0;
}
body[data-aos-delay="350"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="350"].aos-animate {
  transition-delay: 350ms;
}
body[data-aos-duration="400"] [data-aos], [data-aos][data-aos][data-aos-duration="400"] {
  transition-duration: 400ms;
}
body[data-aos-delay="400"] [data-aos], [data-aos][data-aos][data-aos-delay="400"] {
  transition-delay: 0;
}
body[data-aos-delay="400"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="400"].aos-animate {
  transition-delay: 400ms;
}
body[data-aos-duration="450"] [data-aos], [data-aos][data-aos][data-aos-duration="450"] {
  transition-duration: 450ms;
}
body[data-aos-delay="450"] [data-aos], [data-aos][data-aos][data-aos-delay="450"] {
  transition-delay: 0;
}
body[data-aos-delay="450"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="450"].aos-animate {
  transition-delay: 450ms;
}
body[data-aos-duration="500"] [data-aos], [data-aos][data-aos][data-aos-duration="500"] {
  transition-duration: 500ms;
}
body[data-aos-delay="500"] [data-aos], [data-aos][data-aos][data-aos-delay="500"] {
  transition-delay: 0;
}
body[data-aos-delay="500"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="500"].aos-animate {
  transition-delay: 500ms;
}
body[data-aos-duration="550"] [data-aos], [data-aos][data-aos][data-aos-duration="550"] {
  transition-duration: 550ms;
}
body[data-aos-delay="550"] [data-aos], [data-aos][data-aos][data-aos-delay="550"] {
  transition-delay: 0;
}
body[data-aos-delay="550"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="550"].aos-animate {
  transition-delay: 550ms;
}
body[data-aos-duration="600"] [data-aos], [data-aos][data-aos][data-aos-duration="600"] {
  transition-duration: 600ms;
}
body[data-aos-delay="600"] [data-aos], [data-aos][data-aos][data-aos-delay="600"] {
  transition-delay: 0;
}
body[data-aos-delay="600"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="600"].aos-animate {
  transition-delay: 600ms;
}
body[data-aos-duration="650"] [data-aos], [data-aos][data-aos][data-aos-duration="650"] {
  transition-duration: 650ms;
}
body[data-aos-delay="650"] [data-aos], [data-aos][data-aos][data-aos-delay="650"] {
  transition-delay: 0;
}
body[data-aos-delay="650"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="650"].aos-animate {
  transition-delay: 650ms;
}
body[data-aos-duration="700"] [data-aos], [data-aos][data-aos][data-aos-duration="700"] {
  transition-duration: 700ms;
}
body[data-aos-delay="700"] [data-aos], [data-aos][data-aos][data-aos-delay="700"] {
  transition-delay: 0;
}
body[data-aos-delay="700"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="700"].aos-animate {
  transition-delay: 700ms;
}
body[data-aos-duration="750"] [data-aos], [data-aos][data-aos][data-aos-duration="750"] {
  transition-duration: 750ms;
}
body[data-aos-delay="750"] [data-aos], [data-aos][data-aos][data-aos-delay="750"] {
  transition-delay: 0;
}
body[data-aos-delay="750"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="750"].aos-animate {
  transition-delay: 750ms;
}
body[data-aos-duration="800"] [data-aos], [data-aos][data-aos][data-aos-duration="800"] {
  transition-duration: 800ms;
}
body[data-aos-delay="800"] [data-aos], [data-aos][data-aos][data-aos-delay="800"] {
  transition-delay: 0;
}
body[data-aos-delay="800"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="800"].aos-animate {
  transition-delay: 800ms;
}
body[data-aos-duration="850"] [data-aos], [data-aos][data-aos][data-aos-duration="850"] {
  transition-duration: 850ms;
}
body[data-aos-delay="850"] [data-aos], [data-aos][data-aos][data-aos-delay="850"] {
  transition-delay: 0;
}
body[data-aos-delay="850"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="850"].aos-animate {
  transition-delay: 850ms;
}
body[data-aos-duration="900"] [data-aos], [data-aos][data-aos][data-aos-duration="900"] {
  transition-duration: 900ms;
}
body[data-aos-delay="900"] [data-aos], [data-aos][data-aos][data-aos-delay="900"] {
  transition-delay: 0;
}
body[data-aos-delay="900"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="900"].aos-animate {
  transition-delay: 900ms;
}
body[data-aos-duration="950"] [data-aos], [data-aos][data-aos][data-aos-duration="950"] {
  transition-duration: 950ms;
}
body[data-aos-delay="950"] [data-aos], [data-aos][data-aos][data-aos-delay="950"] {
  transition-delay: 0;
}
body[data-aos-delay="950"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="950"].aos-animate {
  transition-delay: 950ms;
}
body[data-aos-duration="1000"] [data-aos], [data-aos][data-aos][data-aos-duration="1000"] {
  transition-duration: 1000ms;
}
body[data-aos-delay="1000"] [data-aos], [data-aos][data-aos][data-aos-delay="1000"] {
  transition-delay: 0;
}
body[data-aos-delay="1000"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1000"].aos-animate {
  transition-delay: 1000ms;
}
body[data-aos-duration="1050"] [data-aos], [data-aos][data-aos][data-aos-duration="1050"] {
  transition-duration: 1050ms;
}
body[data-aos-delay="1050"] [data-aos], [data-aos][data-aos][data-aos-delay="1050"] {
  transition-delay: 0;
}
body[data-aos-delay="1050"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1050"].aos-animate {
  transition-delay: 1050ms;
}
body[data-aos-duration="1100"] [data-aos], [data-aos][data-aos][data-aos-duration="1100"] {
  transition-duration: 1100ms;
}
body[data-aos-delay="1100"] [data-aos], [data-aos][data-aos][data-aos-delay="1100"] {
  transition-delay: 0;
}
body[data-aos-delay="1100"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1100"].aos-animate {
  transition-delay: 1100ms;
}
body[data-aos-duration="1150"] [data-aos], [data-aos][data-aos][data-aos-duration="1150"] {
  transition-duration: 1150ms;
}
body[data-aos-delay="1150"] [data-aos], [data-aos][data-aos][data-aos-delay="1150"] {
  transition-delay: 0;
}
body[data-aos-delay="1150"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1150"].aos-animate {
  transition-delay: 1150ms;
}
body[data-aos-duration="1200"] [data-aos], [data-aos][data-aos][data-aos-duration="1200"] {
  transition-duration: 1200ms;
}
body[data-aos-delay="1200"] [data-aos], [data-aos][data-aos][data-aos-delay="1200"] {
  transition-delay: 0;
}
body[data-aos-delay="1200"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1200"].aos-animate {
  transition-delay: 1200ms;
}
body[data-aos-duration="1250"] [data-aos], [data-aos][data-aos][data-aos-duration="1250"] {
  transition-duration: 1250ms;
}
body[data-aos-delay="1250"] [data-aos], [data-aos][data-aos][data-aos-delay="1250"] {
  transition-delay: 0;
}
body[data-aos-delay="1250"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1250"].aos-animate {
  transition-delay: 1250ms;
}
body[data-aos-duration="1300"] [data-aos], [data-aos][data-aos][data-aos-duration="1300"] {
  transition-duration: 1300ms;
}
body[data-aos-delay="1300"] [data-aos], [data-aos][data-aos][data-aos-delay="1300"] {
  transition-delay: 0;
}
body[data-aos-delay="1300"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1300"].aos-animate {
  transition-delay: 1300ms;
}
body[data-aos-duration="1350"] [data-aos], [data-aos][data-aos][data-aos-duration="1350"] {
  transition-duration: 1350ms;
}
body[data-aos-delay="1350"] [data-aos], [data-aos][data-aos][data-aos-delay="1350"] {
  transition-delay: 0;
}
body[data-aos-delay="1350"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1350"].aos-animate {
  transition-delay: 1350ms;
}
body[data-aos-duration="1400"] [data-aos], [data-aos][data-aos][data-aos-duration="1400"] {
  transition-duration: 1400ms;
}
body[data-aos-delay="1400"] [data-aos], [data-aos][data-aos][data-aos-delay="1400"] {
  transition-delay: 0;
}
body[data-aos-delay="1400"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1400"].aos-animate {
  transition-delay: 1400ms;
}
body[data-aos-duration="1450"] [data-aos], [data-aos][data-aos][data-aos-duration="1450"] {
  transition-duration: 1450ms;
}
body[data-aos-delay="1450"] [data-aos], [data-aos][data-aos][data-aos-delay="1450"] {
  transition-delay: 0;
}
body[data-aos-delay="1450"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1450"].aos-animate {
  transition-delay: 1450ms;
}
body[data-aos-duration="1500"] [data-aos], [data-aos][data-aos][data-aos-duration="1500"] {
  transition-duration: 1500ms;
}
body[data-aos-delay="1500"] [data-aos], [data-aos][data-aos][data-aos-delay="1500"] {
  transition-delay: 0;
}
body[data-aos-delay="1500"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1500"].aos-animate {
  transition-delay: 1500ms;
}
body[data-aos-duration="1550"] [data-aos], [data-aos][data-aos][data-aos-duration="1550"] {
  transition-duration: 1550ms;
}
body[data-aos-delay="1550"] [data-aos], [data-aos][data-aos][data-aos-delay="1550"] {
  transition-delay: 0;
}
body[data-aos-delay="1550"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1550"].aos-animate {
  transition-delay: 1550ms;
}
body[data-aos-duration="1600"] [data-aos], [data-aos][data-aos][data-aos-duration="1600"] {
  transition-duration: 1600ms;
}
body[data-aos-delay="1600"] [data-aos], [data-aos][data-aos][data-aos-delay="1600"] {
  transition-delay: 0;
}
body[data-aos-delay="1600"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1600"].aos-animate {
  transition-delay: 1600ms;
}
body[data-aos-duration="1650"] [data-aos], [data-aos][data-aos][data-aos-duration="1650"] {
  transition-duration: 1650ms;
}
body[data-aos-delay="1650"] [data-aos], [data-aos][data-aos][data-aos-delay="1650"] {
  transition-delay: 0;
}
body[data-aos-delay="1650"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1650"].aos-animate {
  transition-delay: 1650ms;
}
body[data-aos-duration="1700"] [data-aos], [data-aos][data-aos][data-aos-duration="1700"] {
  transition-duration: 1700ms;
}
body[data-aos-delay="1700"] [data-aos], [data-aos][data-aos][data-aos-delay="1700"] {
  transition-delay: 0;
}
body[data-aos-delay="1700"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1700"].aos-animate {
  transition-delay: 1700ms;
}
body[data-aos-duration="1750"] [data-aos], [data-aos][data-aos][data-aos-duration="1750"] {
  transition-duration: 1750ms;
}
body[data-aos-delay="1750"] [data-aos], [data-aos][data-aos][data-aos-delay="1750"] {
  transition-delay: 0;
}
body[data-aos-delay="1750"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1750"].aos-animate {
  transition-delay: 1750ms;
}
body[data-aos-duration="1800"] [data-aos], [data-aos][data-aos][data-aos-duration="1800"] {
  transition-duration: 1800ms;
}
body[data-aos-delay="1800"] [data-aos], [data-aos][data-aos][data-aos-delay="1800"] {
  transition-delay: 0;
}
body[data-aos-delay="1800"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1800"].aos-animate {
  transition-delay: 1800ms;
}
body[data-aos-duration="1850"] [data-aos], [data-aos][data-aos][data-aos-duration="1850"] {
  transition-duration: 1850ms;
}
body[data-aos-delay="1850"] [data-aos], [data-aos][data-aos][data-aos-delay="1850"] {
  transition-delay: 0;
}
body[data-aos-delay="1850"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1850"].aos-animate {
  transition-delay: 1850ms;
}
body[data-aos-duration="1900"] [data-aos], [data-aos][data-aos][data-aos-duration="1900"] {
  transition-duration: 1900ms;
}
body[data-aos-delay="1900"] [data-aos], [data-aos][data-aos][data-aos-delay="1900"] {
  transition-delay: 0;
}
body[data-aos-delay="1900"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1900"].aos-animate {
  transition-delay: 1900ms;
}
body[data-aos-duration="1950"] [data-aos], [data-aos][data-aos][data-aos-duration="1950"] {
  transition-duration: 1950ms;
}
body[data-aos-delay="1950"] [data-aos], [data-aos][data-aos][data-aos-delay="1950"] {
  transition-delay: 0;
}
body[data-aos-delay="1950"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="1950"].aos-animate {
  transition-delay: 1950ms;
}
body[data-aos-duration="2000"] [data-aos], [data-aos][data-aos][data-aos-duration="2000"] {
  transition-duration: 2000ms;
}
body[data-aos-delay="2000"] [data-aos], [data-aos][data-aos][data-aos-delay="2000"] {
  transition-delay: 0;
}
body[data-aos-delay="2000"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2000"].aos-animate {
  transition-delay: 2000ms;
}
body[data-aos-duration="2050"] [data-aos], [data-aos][data-aos][data-aos-duration="2050"] {
  transition-duration: 2050ms;
}
body[data-aos-delay="2050"] [data-aos], [data-aos][data-aos][data-aos-delay="2050"] {
  transition-delay: 0;
}
body[data-aos-delay="2050"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2050"].aos-animate {
  transition-delay: 2050ms;
}
body[data-aos-duration="2100"] [data-aos], [data-aos][data-aos][data-aos-duration="2100"] {
  transition-duration: 2100ms;
}
body[data-aos-delay="2100"] [data-aos], [data-aos][data-aos][data-aos-delay="2100"] {
  transition-delay: 0;
}
body[data-aos-delay="2100"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2100"].aos-animate {
  transition-delay: 2100ms;
}
body[data-aos-duration="2150"] [data-aos], [data-aos][data-aos][data-aos-duration="2150"] {
  transition-duration: 2150ms;
}
body[data-aos-delay="2150"] [data-aos], [data-aos][data-aos][data-aos-delay="2150"] {
  transition-delay: 0;
}
body[data-aos-delay="2150"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2150"].aos-animate {
  transition-delay: 2150ms;
}
body[data-aos-duration="2200"] [data-aos], [data-aos][data-aos][data-aos-duration="2200"] {
  transition-duration: 2200ms;
}
body[data-aos-delay="2200"] [data-aos], [data-aos][data-aos][data-aos-delay="2200"] {
  transition-delay: 0;
}
body[data-aos-delay="2200"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2200"].aos-animate {
  transition-delay: 2200ms;
}
body[data-aos-duration="2250"] [data-aos], [data-aos][data-aos][data-aos-duration="2250"] {
  transition-duration: 2250ms;
}
body[data-aos-delay="2250"] [data-aos], [data-aos][data-aos][data-aos-delay="2250"] {
  transition-delay: 0;
}
body[data-aos-delay="2250"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2250"].aos-animate {
  transition-delay: 2250ms;
}
body[data-aos-duration="2300"] [data-aos], [data-aos][data-aos][data-aos-duration="2300"] {
  transition-duration: 2300ms;
}
body[data-aos-delay="2300"] [data-aos], [data-aos][data-aos][data-aos-delay="2300"] {
  transition-delay: 0;
}
body[data-aos-delay="2300"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2300"].aos-animate {
  transition-delay: 2300ms;
}
body[data-aos-duration="2350"] [data-aos], [data-aos][data-aos][data-aos-duration="2350"] {
  transition-duration: 2350ms;
}
body[data-aos-delay="2350"] [data-aos], [data-aos][data-aos][data-aos-delay="2350"] {
  transition-delay: 0;
}
body[data-aos-delay="2350"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2350"].aos-animate {
  transition-delay: 2350ms;
}
body[data-aos-duration="2400"] [data-aos], [data-aos][data-aos][data-aos-duration="2400"] {
  transition-duration: 2400ms;
}
body[data-aos-delay="2400"] [data-aos], [data-aos][data-aos][data-aos-delay="2400"] {
  transition-delay: 0;
}
body[data-aos-delay="2400"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2400"].aos-animate {
  transition-delay: 2400ms;
}
body[data-aos-duration="2450"] [data-aos], [data-aos][data-aos][data-aos-duration="2450"] {
  transition-duration: 2450ms;
}
body[data-aos-delay="2450"] [data-aos], [data-aos][data-aos][data-aos-delay="2450"] {
  transition-delay: 0;
}
body[data-aos-delay="2450"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2450"].aos-animate {
  transition-delay: 2450ms;
}
body[data-aos-duration="2500"] [data-aos], [data-aos][data-aos][data-aos-duration="2500"] {
  transition-duration: 2500ms;
}
body[data-aos-delay="2500"] [data-aos], [data-aos][data-aos][data-aos-delay="2500"] {
  transition-delay: 0;
}
body[data-aos-delay="2500"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2500"].aos-animate {
  transition-delay: 2500ms;
}
body[data-aos-duration="2550"] [data-aos], [data-aos][data-aos][data-aos-duration="2550"] {
  transition-duration: 2550ms;
}
body[data-aos-delay="2550"] [data-aos], [data-aos][data-aos][data-aos-delay="2550"] {
  transition-delay: 0;
}
body[data-aos-delay="2550"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2550"].aos-animate {
  transition-delay: 2550ms;
}
body[data-aos-duration="2600"] [data-aos], [data-aos][data-aos][data-aos-duration="2600"] {
  transition-duration: 2600ms;
}
body[data-aos-delay="2600"] [data-aos], [data-aos][data-aos][data-aos-delay="2600"] {
  transition-delay: 0;
}
body[data-aos-delay="2600"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2600"].aos-animate {
  transition-delay: 2600ms;
}
body[data-aos-duration="2650"] [data-aos], [data-aos][data-aos][data-aos-duration="2650"] {
  transition-duration: 2650ms;
}
body[data-aos-delay="2650"] [data-aos], [data-aos][data-aos][data-aos-delay="2650"] {
  transition-delay: 0;
}
body[data-aos-delay="2650"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2650"].aos-animate {
  transition-delay: 2650ms;
}
body[data-aos-duration="2700"] [data-aos], [data-aos][data-aos][data-aos-duration="2700"] {
  transition-duration: 2700ms;
}
body[data-aos-delay="2700"] [data-aos], [data-aos][data-aos][data-aos-delay="2700"] {
  transition-delay: 0;
}
body[data-aos-delay="2700"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2700"].aos-animate {
  transition-delay: 2700ms;
}
body[data-aos-duration="2750"] [data-aos], [data-aos][data-aos][data-aos-duration="2750"] {
  transition-duration: 2750ms;
}
body[data-aos-delay="2750"] [data-aos], [data-aos][data-aos][data-aos-delay="2750"] {
  transition-delay: 0;
}
body[data-aos-delay="2750"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2750"].aos-animate {
  transition-delay: 2750ms;
}
body[data-aos-duration="2800"] [data-aos], [data-aos][data-aos][data-aos-duration="2800"] {
  transition-duration: 2800ms;
}
body[data-aos-delay="2800"] [data-aos], [data-aos][data-aos][data-aos-delay="2800"] {
  transition-delay: 0;
}
body[data-aos-delay="2800"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2800"].aos-animate {
  transition-delay: 2800ms;
}
body[data-aos-duration="2850"] [data-aos], [data-aos][data-aos][data-aos-duration="2850"] {
  transition-duration: 2850ms;
}
body[data-aos-delay="2850"] [data-aos], [data-aos][data-aos][data-aos-delay="2850"] {
  transition-delay: 0;
}
body[data-aos-delay="2850"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2850"].aos-animate {
  transition-delay: 2850ms;
}
body[data-aos-duration="2900"] [data-aos], [data-aos][data-aos][data-aos-duration="2900"] {
  transition-duration: 2900ms;
}
body[data-aos-delay="2900"] [data-aos], [data-aos][data-aos][data-aos-delay="2900"] {
  transition-delay: 0;
}
body[data-aos-delay="2900"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2900"].aos-animate {
  transition-delay: 2900ms;
}
body[data-aos-duration="2950"] [data-aos], [data-aos][data-aos][data-aos-duration="2950"] {
  transition-duration: 2950ms;
}
body[data-aos-delay="2950"] [data-aos], [data-aos][data-aos][data-aos-delay="2950"] {
  transition-delay: 0;
}
body[data-aos-delay="2950"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="2950"].aos-animate {
  transition-delay: 2950ms;
}
body[data-aos-duration="3000"] [data-aos], [data-aos][data-aos][data-aos-duration="3000"] {
  transition-duration: 3000ms;
}
body[data-aos-delay="3000"] [data-aos], [data-aos][data-aos][data-aos-delay="3000"] {
  transition-delay: 0;
}
body[data-aos-delay="3000"] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay="3000"].aos-animate {
  transition-delay: 3000ms;
}

body[data-aos-easing=linear] [data-aos], [data-aos][data-aos][data-aos-easing=linear] {
  transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
}
body[data-aos-easing=ease] [data-aos], [data-aos][data-aos][data-aos-easing=ease] {
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
}
body[data-aos-easing=ease-in] [data-aos], [data-aos][data-aos][data-aos-easing=ease-in] {
  transition-timing-function: cubic-bezier(0.42, 0, 1, 1);
}
body[data-aos-easing=ease-out] [data-aos], [data-aos][data-aos][data-aos-easing=ease-out] {
  transition-timing-function: cubic-bezier(0, 0, 0.58, 1);
}
body[data-aos-easing=ease-in-out] [data-aos], [data-aos][data-aos][data-aos-easing=ease-in-out] {
  transition-timing-function: cubic-bezier(0.42, 0, 0.58, 1);
}
body[data-aos-easing=ease-in-back] [data-aos], [data-aos][data-aos][data-aos-easing=ease-in-back] {
  transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
}
body[data-aos-easing=ease-out-back] [data-aos], [data-aos][data-aos][data-aos-easing=ease-out-back] {
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
body[data-aos-easing=ease-in-out-back] [data-aos], [data-aos][data-aos][data-aos-easing=ease-in-out-back] {
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
body[data-aos-easing=ease-in-sine] [data-aos], [data-aos][data-aos][data-aos-easing=ease-in-sine] {
  transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
}
body[data-aos-easing=ease-out-sine] [data-aos], [data-aos][data-aos][data-aos-easing=ease-out-sine] {
  transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
}
body[data-aos-easing=ease-in-out-sine] [data-aos], [data-aos][data-aos][data-aos-easing=ease-in-out-sine] {
  transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
body[data-aos-easing=ease-in-quad] [data-aos], [data-aos][data-aos][data-aos-easing=ease-in-quad] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}
body[data-aos-easing=ease-out-quad] [data-aos], [data-aos][data-aos][data-aos-easing=ease-out-quad] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
body[data-aos-easing=ease-in-out-quad] [data-aos], [data-aos][data-aos][data-aos-easing=ease-in-out-quad] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
body[data-aos-easing=ease-in-cubic] [data-aos], [data-aos][data-aos][data-aos-easing=ease-in-cubic] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}
body[data-aos-easing=ease-out-cubic] [data-aos], [data-aos][data-aos][data-aos-easing=ease-out-cubic] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
body[data-aos-easing=ease-in-out-cubic] [data-aos], [data-aos][data-aos][data-aos-easing=ease-in-out-cubic] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
body[data-aos-easing=ease-in-quart] [data-aos], [data-aos][data-aos][data-aos-easing=ease-in-quart] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}
body[data-aos-easing=ease-out-quart] [data-aos], [data-aos][data-aos][data-aos-easing=ease-out-quart] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
body[data-aos-easing=ease-in-out-quart] [data-aos], [data-aos][data-aos][data-aos-easing=ease-in-out-quart] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

/**
 * Fade animations:
 * fade
 * fade-up, fade-down, fade-left, fade-right
 * fade-up-right, fade-up-left, fade-down-right, fade-down-left
 */
[data-aos^=fade][data-aos^=fade] {
  opacity: 0;
  transition-property: opacity, transform;
}
[data-aos^=fade][data-aos^=fade].aos-animate {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

[data-aos=fade-up] {
  transform: translate3d(0, 100px, 0);
}

[data-aos=fade-down] {
  transform: translate3d(0, -100px, 0);
}

[data-aos=fade-right] {
  transform: translate3d(-100px, 0, 0);
}

[data-aos=fade-left] {
  transform: translate3d(100px, 0, 0);
}

[data-aos=fade-up-right] {
  transform: translate3d(-100px, 100px, 0);
}

[data-aos=fade-up-left] {
  transform: translate3d(100px, 100px, 0);
}

[data-aos=fade-down-right] {
  transform: translate3d(-100px, -100px, 0);
}

[data-aos=fade-down-left] {
  transform: translate3d(100px, -100px, 0);
}

/**
 * Zoom animations:
 * zoom-in, zoom-in-up, zoom-in-down, zoom-in-left, zoom-in-right
 * zoom-out, zoom-out-up, zoom-out-down, zoom-out-left, zoom-out-right
 */
[data-aos^=zoom][data-aos^=zoom] {
  opacity: 0;
  transition-property: opacity, transform;
}
[data-aos^=zoom][data-aos^=zoom].aos-animate {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

[data-aos=zoom-in] {
  transform: scale(0.6);
}

[data-aos=zoom-in-up] {
  transform: translate3d(0, 100px, 0) scale(0.6);
}

[data-aos=zoom-in-down] {
  transform: translate3d(0, -100px, 0) scale(0.6);
}

[data-aos=zoom-in-right] {
  transform: translate3d(-100px, 0, 0) scale(0.6);
}

[data-aos=zoom-in-left] {
  transform: translate3d(100px, 0, 0) scale(0.6);
}

[data-aos=zoom-out] {
  transform: scale(1.2);
}

[data-aos=zoom-out-up] {
  transform: translate3d(0, 100px, 0) scale(1.2);
}

[data-aos=zoom-out-down] {
  transform: translate3d(0, -100px, 0) scale(1.2);
}

[data-aos=zoom-out-right] {
  transform: translate3d(-100px, 0, 0) scale(1.2);
}

[data-aos=zoom-out-left] {
  transform: translate3d(100px, 0, 0) scale(1.2);
}

/**
 * Slide animations
 */
[data-aos^=slide][data-aos^=slide] {
  transition-property: transform;
}
[data-aos^=slide][data-aos^=slide].aos-animate {
  transform: translate3d(0, 0, 0);
}

[data-aos=slide-up] {
  transform: translate3d(0, 100%, 0);
}

[data-aos=slide-down] {
  transform: translate3d(0, -100%, 0);
}

[data-aos=slide-right] {
  transform: translate3d(-100%, 0, 0);
}

[data-aos=slide-left] {
  transform: translate3d(100%, 0, 0);
}

/**
 * Flip animations:
 * flip-left, flip-right, flip-up, flip-down
 */
[data-aos^=flip][data-aos^=flip] {
  backface-visibility: hidden;
  transition-property: transform;
}

[data-aos=flip-left] {
  transform: perspective(2500px) rotateY(-100deg);
}
[data-aos=flip-left].aos-animate {
  transform: perspective(2500px) rotateY(0);
}

[data-aos=flip-right] {
  transform: perspective(2500px) rotateY(100deg);
}
[data-aos=flip-right].aos-animate {
  transform: perspective(2500px) rotateY(0);
}

[data-aos=flip-up] {
  transform: perspective(2500px) rotateX(-100deg);
}
[data-aos=flip-up].aos-animate {
  transform: perspective(2500px) rotateX(0);
}

[data-aos=flip-down] {
  transform: perspective(2500px) rotateX(100deg);
}
[data-aos=flip-down].aos-animate {
  transform: perspective(2500px) rotateX(0);
}

@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-pointer-events {
  touch-action: pan-y;
}
.swiper-pointer-events.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

/* 3D Effects */
.swiper-3d, .swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-wrapper,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none; /* For Firefox */
  -ms-overflow-style: none; /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  width: var(--swiper-centered-offset-after);
}
.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  height: var(--swiper-centered-offset-after);
}
.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
}

.breadcrum {
  grid-column: content;
  margin: 3rem 0 4rem 0;
  border-bottom: 3px solid var(--color-grey-light);
  padding-bottom: 1rem;
  text-transform: uppercase;
}

.navbar-top {
  grid-column: full-width;
  z-index: 99;
  width: 100%;
  top: 0;
  transition: top 0.3s;
  background-color: var(--color-secondary);
}
.navbar-top .nav-top {
  max-width: 196rem;
  margin: auto;
  display: grid;
}
@media (min-width: 1024px) {
  .navbar-top .nav-top {
    max-width: 196rem;
    margin: auto;
    display: flex;
    justify-content: space-between;
    padding: 0 2rem;
  }
}
.navbar-top .nav-top a {
  padding: 0.5rem;
  font-size: 0.8em;
  font-weight: 400;
}
@media (min-width: 768px) {
  .navbar-top .nav-top a {
    padding: 0.5rem 0rem;
    font-size: 0.9em;
  }
}
.navbar-top .nav-top ul {
  display: flex;
  list-style: none;
}
.navbar-top .nav-top ul li {
  padding: 0.5rem 0rem 0.5rem 1rem;
  font-size: 0.8em;
}
@media (min-width: 768px) {
  .navbar-top .nav-top ul li {
    padding: 0.5rem 1rem;
    border-left: 2px solid var(--color-white);
  }
  .navbar-top .nav-top ul li:first-child {
    border-left: 0;
  }
}
.navbar-top .nav-top ul li a {
  color: var(--color-primary-dark);
}
.navbar-top .nav-top ul li a:hover {
  color: var(--color-primary);
  text-decoration: none;
}
.navbar-top .nav-top ul li.selected a {
  color: var(--color-primary);
}

.logo {
  padding: 0;
  text-align: left;
  align-items: center;
  display: flex;
  z-index: 99;
  margin-right: 5rem;
}
@media (min-width: 768px) {
  .logo {
    margin-right: 0;
  }
}
.logo img {
  width: 15rem;
  margin-top: 0rem;
  padding: 1.5rem 0;
}
@media (min-width: 768px) {
  .logo img {
    width: 17rem;
    padding: 1rem 0;
  }
}
.logo h1 {
  font-size: 2rem;
  padding: 0 2rem;
  color: var(--color-primary);
  font-weight: bold;
}
@media (min-width: 1920px) {
  .logo h1 {
    font-size: 2.6rem;
  }
}

.nav-holder {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  text-align: center;
}

@media (max-width: 1400px) {
  .nav-holder {
    background-color: transparent;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    min-height: 0;
  }
}
@media (max-width: 1400px) and (max-width: 1400px) {
  .nav-holder {
    position: absolute;
    top: 100%;
    right: 0;
    width: 101%;
    max-height: 0;
    overflow: hidden;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
  }
  .nav-active .nav-holder {
    max-height: 100vh;
    overflow: auto;
    z-index: 10;
  }
}
.drop-frame {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media (max-width: 1400px) {
  .drop-frame {
    display: block;
    background: var(--color-white);
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
    -webkit-transition: -webkit-transform 0.4s linear;
    transition: -webkit-transform 0.4s linear;
    transition: transform 0.4s linear;
    transition: transform 0.4s linear, -webkit-transform 0.4s linear;
    text-align: center;
    border-bottom: 1px solid var(--color-primary-dark);
    border-top: 1px solid var(--color-primary-dark);
  }
  .nav-active .drop-frame {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}
#nav {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  background-color: var(--color-white);
}

#nav > ul {
  font-size: 0;
  display: flex;
  justify-content: flex-end;
}

@media (max-width: 1599px) {
  #nav > ul {
    margin: 0 auto;
  }
}
@media (max-width: 1400px) {
  #nav > ul {
    text-align: left;
    display: block;
  }
}
#nav > ul > li {
  vertical-align: middle;
  padding: 0 1.5rem;
  font-weight: 300;
  text-transform: uppercase;
  color: var(--color-primary);
  width: max-content;
  display: flex;
  align-items: center;
}
#nav > ul > li:first-child {
  border-left: 0px;
}

@media (max-width: 1400px) {
  #nav > ul > li {
    display: block;
    padding: 0;
    line-height: 5rem;
    width: 100%;
  }
  #nav > ul > li :first-child {
    border-left: 0;
  }
}
#nav > ul > li:before {
  display: none;
}

@media (max-width: 1400px) {
  #nav > ul > li:before {
    display: block;
  }
}
#nav > ul > li:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  height: 0;
  background: var(--color-primary);
  -webkit-transition: height 0.2s linear;
  transition: height 0.2s linear;
}

@media (max-width: 1400px) {
  #nav > ul > li:after {
    display: none;
  }
}
#nav > ul > li.selected.has-drop-down > a.has-drop-down-a {
  color: var(--color-primary);
  background-color: var(--color-secondary-light);
}
#nav > ul > li.selected.has-drop-down > a.has-drop-down-a:hover {
  background-color: var(--color-primary);
  color: var(--color-secondary-dark);
}

@media (max-width: 1400px) {
  #nav > ul > li.selected a {
    background-color: var(--color-primary-light);
    color: var(--color-primary-dark);
    font-weight: normal;
  }
}

#nav > ul > li.selected.selected a {
  color: var(--color-primary);
}
@media (max-width: 1400px) {
  #nav > ul > li.selected.selected a {
    background-color: var(--color-primary-light);
    color: var(--color-white);
    font-weight: normal;
  }
}

#nav > ul > li.hover {
  color: var(--color-primary);
}

#nav > ul > li.hover:after {
  height: 5px;
}

#nav > ul > li > a {
  display: inline-block;
  vertical-align: top;
  color: var(--color-primary-dark);
  font-weight: 400;
  padding: 4rem 0rem;
  font-size: 2rem;
  transition: all 0.2s;
  width: 100%;
  text-align: center;
}
#nav > ul > li > a:hover {
  color: var(--color-primary);
}

#nav > ul > li > a:last-child {
  padding-right: 0;
}

@media (max-width: 1400px) {
  #nav > ul > li > a {
    padding: 1rem 4rem;
    display: block;
    color: var(--color-primary-dark);
    border-bottom: 1px solid var(--color-white);
    text-align: left;
  }
  #nav > ul > li > a:hover {
    color: var(--color-primary);
    background-color: var(--color-primary-light);
  }
}
#nav > ul > li:nth-last-child(-n+3) .drop-down {
  right: 0;
  -webkit-transform: translateY(5px);
  -ms-transform: translateY(5px);
  transform: translateY(5px);
}

#nav > ul > li:nth-last-child(-n+3) .drop-down .drop-down {
  right: 100%;
  padding: 0 5px 0 0;
}

#nav > ul > li:nth-last-child(-n+3) .has-drop-down:before {
  content: "▼";
  right: auto;
  left: 10px;
  font-weight: 300;
}

@media (max-width: 1400px) {
  #nav > ul > li:nth-last-child(-n+3) .has-drop-down:before {
    content: "▼";
    left: auto;
    right: 10px;
    top: 2.3rem;
  }
}
#nav li {
  position: relative;
}

#nav .has-drop-down:before {
  content: "▼";
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 20px;
  color: var(--color-primary);
}

@media (max-width: 1400px) {
  #nav .has-drop-down:before {
    top: 3rem;
    color: var(--color-primary);
    font-size: 1rem;
  }
}
#nav .has-drop-down.hover.hover:before {
  color: var(--color-primary);
}

@media (max-width: 1400px) {
  #nav .has-drop-down.hover.hover:before {
    content: "▼";
    font-size: 1rem;
  }
}
#nav .has-drop-down.hover.hover > .drop-down {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}

@media (max-width: 1400px) {
  #nav .has-drop-down.hover.hover > .drop-down {
    display: block;
    background-color: var(--color-secondary-light);
    padding-left: 0rem;
    color: var(--color-primary-dark);
  }
}
#nav > ul > li.selected.has-drop-down.hover .drop-down > ul > li > a {
  color: var(--color-primary-dark);
}
#nav > ul > li.selected.has-drop-down.hover .drop-down > ul > li > a:hover {
  background-color: var(--color-secondary-dark);
  color: var(--color-white);
}

@media (max-width: 1400px) {
  #nav .drop-down {
    position: static;
    display: none;
    padding: 0;
    width: 100%;
    text-align: left;
  }
}
@media (max-width: 1400px) {
  #nav .drop-down li {
    background: none;
  }
}
.drop-down {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  min-width: 25rem;
  z-index: 12;
  visibility: hidden;
  opacity: 0;
  padding: 0;
  -webkit-transition: visibility 0.3s, opacity 0.3s, -webkit-transform 0.3s;
  transition: visibility 0.3s, opacity 0.3s, -webkit-transform 0.3s;
  transition: visibility 0.3s, opacity 0.3s, transform 0.3s;
  transition: visibility 0.3s, opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
  -webkit-transform: translateY(5px);
  -ms-transform: translateY(5px);
  transform: translateY(5px);
}

@media (max-width: 1400px) {
  .drop-down {
    position: static;
    padding: 0;
  }
}
.drop-down ul {
  box-shadow: none;
}

.drop-down ul li {
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
  text-align: left;
  text-transform: none;
  font-weight: normal;
  background: var(--color-secondary-light);
  border-bottom: 1px solid var(--color-secondary-dark);
}

.drop-down ul li.hover > a {
  color: var(--color-white);
  font-size: 1.8rem;
}
@media (max-width: 1400px) {
  .drop-down ul li.hover > a {
    color: var(--color-white);
    background-color: var(--color-primary-light);
  }
}

@media (max-width: 1400px) {
  .drop-down ul li {
    text-align: left;
    background: none;
  }
}
.drop-down ul li a {
  padding: 14px 28px;
  display: block;
  font-size: 1.8rem;
  color: var(--color-white);
}

@media (min-width: 1401px) {
  .drop-down ul li a {
    padding: 3rem 2rem;
    color: var(--color-primary-dark);
    display: block;
    font-size: 1.8rem;
  }
}
@media (max-width: 1400px) {
  .drop-down ul li a {
    color: var(--color-primary);
    padding: 1rem 4rem;
    border-bottom: 1px solid var(--color-secondary-dark);
  }
  .drop-down ul li a:hover {
    color: var(--color-white);
  }
}
.drop-down ul li:hover,
.drop-down ul li.selected .active {
  background: var(--color-secondary);
  color: var(--color-white);
}

.drop-down ul li.selected a {
  background: var(--color-secondary);
  color: var(--color-white);
}

@media (max-width: 1400px) {
  .drop-down ul li:hover a,
  .drop-down ul li.selected a {
    background-color: var(--color-secondary);
    color: var(--color-white);
  }
}
.drop-down .drop-down {
  padding: 0;
  position: absolute;
  left: 100%;
  top: 0;
  padding-left: 5px;
}

@media (max-width: 1400px) {
  .drop-down ul li a:hover {
    color: var(--color-white);
  }
}
.nav-opener {
  width: 30px;
  height: 30px;
  position: relative;
  margin: 2rem;
  display: none;
  align-self: center;
}

@media (max-width: 1400px) {
  .nav-opener {
    display: inline-block;
    vertical-align: middle;
  }
}
@media (max-width: 1400px) {
  .nav-opener {
    margin-left: 10px;
  }
}
.nav-opener:before,
.nav-opener:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 4px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  background: var(--color-primary);
}

.nav-opener:before {
  bottom: 23px;
  box-shadow: 0 10px 0 var(--color-primary);
}

.nav-opener:after {
  bottom: 3px;
}

.nav-active .nav-opener:before,
.nav-active .nav-opener:after {
  bottom: 50%;
}

.nav-active .nav-opener:before {
  -webkit-transform: translateY(50%) rotate(-45deg);
  -ms-transform: translateY(50%) rotate(-45deg);
  transform: translateY(50%) rotate(-45deg);
  box-shadow: none;
}

.nav-active .nav-opener:after {
  -webkit-transform: translateY(50%) rotate(-135deg);
  -ms-transform: translateY(50%) rotate(-135deg);
  transform: translateY(50%) rotate(-135deg);
}

/* FOOTER NAVIGATION*/
nav.footer ul li a {
  color: var(--color-primary-dark);
  font-size: 0.8em;
}
nav.footer ul li a:hover {
  color: var(--color-primary);
  text-decoration: underline;
}

nav.footer ul li.selected a {
  color: var(--color-primary);
}

header {
  grid-row: 1;
}

#navbar {
  background-color: var(--color-white);
  z-index: 99;
  width: 100%;
  position: fixed;
  top: 0;
  transition: top 0.3s;
}
#navbar .navbar-center {
  max-width: 196rem;
  padding-left: 2rem;
  padding-right: 2rem;
  margin: auto;
  display: flex;
  justify-content: space-between;
}
#navbar .navbar-center--top {
  font-size: 1.2rem;
  padding: 0.5rem 0 0.5rem 2rem;
  color: var(--color-grey-light);
}
@media (min-width: 768px) {
  #navbar .navbar-center--top {
    padding: 0.5rem 0;
    display: block;
  }
}
#navbar .navbar-center--top .claim {
  padding-left: 25rem;
}
@media (min-width: 768px) {
  #navbar .navbar-center--top .claim {
    display: none;
  }
}
#navbar .navbar-center--top .call a {
  color: var(--color-grey-light);
}
#navbar .navbar-center--top .call a:hover {
  color: var(--color-secondary);
}
@media (min-width: 768px) {
  #navbar .navbar-center--top .call {
    text-align: right;
  }
}
#navbar .info {
  color: var(--color-secondary);
  align-self: center;
  min-width: 20vw;
  text-align: center;
  margin: 0 2rem;
}
@media (max-width: 1044px) {
  #navbar .info {
    display: none;
  }
}

:root {
  --swiper-theme-color: $color-black;
  --swiper-navigation-size: 35px;
}

img.logo {
  width: 25rem;
}

:root .swiper-scrollbar {
  position: relative;
  height: 5px;
  margin: 2rem auto;
  max-width: 70%;
  background: var(--color-secondary);
}

:root .swiper-scrollbar-drag {
  background: var(--color-primary);
}

.swiper {
  width: 100%;
  height: 100%;
  position: relative;
}

.swiper-container {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-bottom: 5rem;
}
.swiper-container .swiper-slide img {
  width: 100%;
  height: 100%;
  transition: 0.5s ease;
  border-bottom: 1px solid #fff;
  min-height: 30rem;
  object-fit: cover;
}

.swiper-container-items {
  position: relative;
  overflow: hidden;
  padding: 2rem 0;
  border-bottom: 2px solid var(--color-white);
}
.swiper-container-items .textbox {
  margin: 0rem;
  position: absolute;
  bottom: 0;
  background-color: var(--color-white-alpha);
  width: 100%;
  padding: 1rem 2rem;
  text-align: center;
}
.swiper-container-items .swiper-slide {
  position: relative;
  /* When you mouse over the container, fade in the overlay icon*/
  /* The icon inside the overlay is positioned in the middle vertically and horizontally */
}
.swiper-container-items .swiper-slide img {
  width: 100%;
  display: block;
}
.swiper-container-items .swiper-slide .overlay-buttons {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  transition: 0.3s ease;
  background-color: var(--color-white-alpha);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
}
.swiper-container-items .swiper-slide:hover .overlay-buttons {
  opacity: 1;
}
.swiper-container-items .swiper-slide .title {
  margin: 0 auto;
  font-weight: bold;
  color: var(--color-black);
  padding: 1rem 3rem;
  margin-bottom: 1rem;
  text-align: center;
  border-bottom: 2px solid var(--color-black);
}
.swiper-container-items .swiper-slide .center {
  display: flex;
  margin: 0 auto;
}
.swiper-container-items .swiper-slide .buttons {
  color: var(--color-black);
  font-size: 3rem;
  align-self: center;
  padding: 1rem 2rem;
  text-decoration: none;
}
.swiper-container-items .swiper-slide .buttons:hover {
  text-decoration: underline;
}
.swiper-container-items .swiper-slide .buttons p {
  font-size: 1.5rem;
}

.swiper-container-angebote {
  position: relative;
  overflow: hidden;
  padding: 2rem 0;
  border-bottom: 2px solid var(--color-white);
}
.swiper-container-angebote .textbox {
  margin: 0rem;
  position: absolute;
  bottom: 0;
  background-color: var(--color-white-alpha);
  width: 100%;
  padding: 1rem 2rem;
  text-align: center;
}
.swiper-container-angebote .swiper-slide {
  position: relative;
  /* When you mouse over the container, fade in the overlay icon*/
  /* The icon inside the overlay is positioned in the middle vertically and horizontally */
}
.swiper-container-angebote .swiper-slide img {
  width: 100%;
  display: block;
}
.swiper-container-angebote .swiper-slide .overlay-buttons {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  transition: 0.3s ease;
  background-color: var(--color-white-alpha);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
}
.swiper-container-angebote .swiper-slide:hover .overlay-buttons {
  opacity: 1;
}
.swiper-container-angebote .swiper-slide .title {
  margin: 0 auto;
  font-weight: bold;
  color: var(--color-black);
  padding: 1rem 3rem;
  margin-bottom: 1rem;
  text-align: center;
  border-bottom: 2px solid var(--color-black);
}
.swiper-container-angebote .swiper-slide .center {
  display: flex;
  margin: 0 auto;
}
.swiper-container-angebote .swiper-slide .buttons {
  color: var(--color-black);
  font-size: 3rem;
  align-self: center;
  padding: 1rem 2rem;
  text-decoration: none;
}
.swiper-container-angebote .swiper-slide .buttons:hover {
  text-decoration: underline;
}
.swiper-container-angebote .swiper-slide .buttons p {
  font-size: 1.5rem;
}

.swiper-leistungen {
  grid-column: 1/-1 !important;
  position: relative;
  border-bottom: 5px solid var(--color-primary);
}
.swiper-leistungen .swiper-slide > .txt {
  justify-self: end;
  align-self: start;
  color: var(--color-black);
  width: 70%;
}
.swiper-leistungen .swiper-slide > .txt h5 {
  font-size: 1.1em;
  margin-bottom: 0.5em;
}
@media (min-width: 1024px) {
  .swiper-leistungen .swiper-slide > .txt {
    font-size: 1.1em;
    width: 80%;
  }
}

.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  height: 5px;
  background: rgba(0, 0, 0, 0.1);
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--color-primary);
  border-radius: 10px;
  left: 0;
  top: 0;
}

.swiper-leistungen > .swiper-wrapper {
  grid-column: content;
  box-sizing: border-box;
}
.swiper-leistungen > .swiper-wrapper .swiper-slide {
  position: relative;
  align-content: end;
  display: flex;
  gap: 3rem;
}
.swiper-leistungen > .swiper-wrapper .swiper-slide > img.trenner {
  max-width: 15rem;
  justify-self: center;
  width: auto;
}
@media (min-width: 768px) {
  .swiper-leistungen > .swiper-wrapper .swiper-slide > img.trenner {
    max-width: 25rem;
    justify-self: right;
  }
}

.swiper-projekt-details {
  width: 100%;
  overflow: hidden;
  padding-bottom: 5rem;
  position: relative;
}
@media (min-width: 1024px) {
  .swiper-projekt-details {
    width: 60%;
    padding-left: 0;
    order: 2;
    padding-bottom: 0;
    margin-top: 0rem;
  }
}
.swiper-projekt-details .swiper-slide > a {
  justify-self: end;
  align-self: start;
}

.swiper-button-next, .swiper-button-prev {
  position: absolute;
  background-color: #fff;
  transform: translate(0%, -50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev {
  left: 0px;
  right: auto;
  padding: 4rem 2rem 4rem 2rem;
}

.swiper-button-next {
  left: auto;
  right: 0px;
  padding: 4rem 2rem 4rem 2rem;
}

.swiper-pagination-bullet-active {
  opacity: 1;
  background-color: var(--color-black);
}

.swiper-pagination {
  position: relative;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
  margin: 0.5rem;
}

a.swiper-slide {
  cursor: grab;
}

.swiper {
  height: min-content;
}

button.accordion {
  background-color: var(--color-secondary);
  color: var(--color-black);
  cursor: pointer;
  padding: 10px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-size: var(--default-font-size);
  transition: 0.4s;
  font-weight: normal;
  padding: 2.1rem 3rem 1.5rem 3rem;
  font-size: 2.8rem;
  font-family: var(--font-family-primary);
}
@media (min-width: 768px) {
  button.accordion {
    font-size: 2.3rem;
  }
}

button.accordion.active {
  background-color: var(--color-primary-dark);
  color: var(--color-white);
  font-weight: normal;
}

button.accordion:hover {
  background-color: var(--color-primary-dark);
  color: var(--color-white);
  font-weight: normal;
}

button.accordion:before {
  content: "+";
  color: var--(--color-black);
  font-weight: bold;
  float: left;
  margin-right: 10px;
  font-size: 4rem;
  margin-right: 10px;
  margin-top: -1rem;
}

button.accordion.active:before {
  content: "−";
}

.panel {
  background-color: var(--color-secondary);
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
  margin-bottom: 0.5rem;
}
.panel a {
  color: var(--color-primary-dark);
  font-weight: bold;
}
.panel div {
  padding: 3rem;
}
.panel ul {
  padding: 0rem;
}
@media (min-width: 768px) {
  .panel ul {
    padding: 3rem;
  }
}
.panel ul li {
  border-bottom: 1px solid var(--color-primary);
  padding: 1rem;
}

footer {
  background-color: var(--color-white);
}
footer .flex-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  grid-column: breakout !important;
}
footer .flex-wrapper .txt-center {
  text-align: center;
}
@media (min-width: 1920px) {
  footer .flex-wrapper {
    justify-content: space-between;
    flex-direction: row;
  }
}
footer .logo {
  grid-row: 1;
  width: 15rem;
  height: auto;
  align-self: center;
  margin: 2rem;
}
footer .links {
  width: 4rem;
  align-self: center;
  padding: 2rem 0;
  width: auto;
}
footer .links img {
  width: 10rem;
}
footer nav {
  width: min-content;
  justify-self: center;
  align-self: center;
  grid-row: 2;
}
footer nav ul {
  display: flex;
  list-style: none;
  gap: 2rem;
}
footer nav ul lihover {
  text-decoration: underline;
}
@media (min-width: 768px) {
  footer {
    display: flex;
    justify-content: space-between;
    padding: var(--padding);
    align-content: center;
  }
  footer .logo {
    width: 25rem;
    height: auto;
  }
  footer .links {
    justify-content: center;
    align-self: center;
    padding: 2rem 0;
  }
  footer .links img {
    width: 10rem;
  }
  footer nav {
    width: min-content;
  }
  footer nav ul {
    display: flex;
    list-style: none;
    gap: 2rem;
    margin: 2rem 0;
  }
  footer nav ul lihover {
    text-decoration: underline;
  }
}

.jahn {
  width: auto;
  max-width: 15rem;
}

.adresse {
  display: flex;
  justify-content: left;
  font-weight: bold;
  align-self: flex-start;
  align-self: flex-start;
}
@media (min-width: 768px) {
  .adresse {
    align-self: flex-end;
    justify-content: center;
  }
}

textarea#Notes {
  font-size: var(--default-font-size);
}

select#Betreff {
  width: 100%;
  padding: 2em;
  font-size: 1em;
  background-color: var(--color-secondary);
  color: var(--color-grey-dark);
}

select option:selected {
  background-color: var(--color-white); /* Farbe für die ausgewählte Option */
  color: var(--color-primary);
}

.col50-50 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.5rem;
  width: 100%;
}
@media (min-width: 768px) {
  .col50-50 {
    grid-template-columns: 1fr 1fr;
  }
}
.col50-50 input {
  width: 100%;
  padding: var(--padding);
  background-color: var(--color-secondary);
  border: 0;
  font-family: var(--default-font-family);
  font-size: var(--default-font-size);
}
.col50-50 input ::placeholder {
  color: var(--color-grey-dark);
  opacity: 1;
  /* Firefox */
}
.col50-50 input ::-ms-input-placeholder {
  /* Edge 12 -18 */
  color: var(--color-grey-dark);
}
.col50-50 textarea#Notes {
  width: 100%;
  padding: var(--padding);
  min-height: 30em;
  background-color: var(--color-secondary);
  border: 0;
}
.col50-50 textarea#Notes textarea:-moz-placeholder,
.col50-50 textarea#Notes textarea::-moz-placeholder,
.col50-50 textarea#Notes textarea:-ms-input-placeholder,
.col50-50 textarea#Notes textarea::-webkit-input-placeholder,
.col50-50 textarea#Notes textarea::placeholder {
  /* Modern browsers */
  color: --color-grey-dark;
  font-family: var(--default-font-family);
  font-size: var(--default-font-size);
}
.col50-50 textarea::placeholder {
  font-family: var(--default-font-family);
  font-size: var(--default-font-size);
  color: var(--color-grey-dark);
}
.col50-50 input::placeholder {
  font-family: var(--default-font-family);
  font-size: var(--default-font-size);
  color: var(--color-grey-dark);
}
.col50-50 input[type=date]:before {
  content: attr(placeholder) !important;
  font-family: var(--default-font-family);
  font-size: var(--default-font-size);
  color: var(--color-grey-dark);
  margin-right: 0.5em;
}
.col50-50 input[type=date]:focus:before,
.col50-50 input[type=date]:valid:before {
  content: "";
}
.col50-50 .row {
  grid-column: 1/-1;
}
.col50-50 .row.flex {
  display: flex;
}
.col50-50 .row.flex.spacing,
.col50-50 .row.flex span:nth-child(1) {
  margin-right: 5rem;
}
.col50-50 input#IsDataUsingAllowed {
  width: auto;
  margin-right: 2rem;
}
.col50-50 input#BevorzugteKontaktaufnahme1,
.col50-50 input#BevorzugteKontaktaufnahme2 {
  width: auto;
  margin-right: 2rem;
}
.col50-50 label {
  margin-top: 2rem;
  display: block;
  font-weight: 700;
}
.col50-50 input.btn.btn--primary {
  padding: 2rem;
  color: var(--color-white);
  background-color: var(--color-primary) !important;
}
.col50-50 input.btn.btn--primary:hover {
  color: var(--color-white);
  background-color: var(--color-primary-light);
}

.input-white .col50-50 input, .input-white .col50-50 textarea, .input-white .col50-50 textarea#notes {
  background-color: #ffffff !important;
}

input:-webkit-autofill,
input:-webkit-autofill:focus {
  transition: background-color 0s 600000s, color 0s 600000s;
}

::placeholder {
  color: var(--color-grey-dark);
  opacity: 1; /* Firefox */
}

::-ms-input-placeholder { /* Edge 12 -18 */
  color: var(--color-grey-dark);
}

.grecaptcha-badge {
  visibility: hidden;
}

.recapv3 {
  color: #555;
  display: inline;
  margin-top: 2rem;
}

.recapv3 label {
  font-size: 0.9em;
  padding-left: 10px;
  font-weight: normal;
  margin-top: 0;
}

.recapv3 label a {
  color: var(--color-primary);
}

.recapv3 label a:hover {
  text-decoration: underline;
}

.recapv3 img {
  width: 28px;
  float: left;
}

/* Style the tab */
.tab {
  overflow: hidden;
  border: 0px;
  background-color: var(--color-primary);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (min-width: 768px) {
  .tab {
    flex-direction: row;
  }
}

/* Style the buttons that are used to open the tab content */
.tab button {
  background-color: inherit;
  float: left;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 2rem;
  color: var(--color-white);
  transition: 0.3s;
  width: 100%;
}

/* Change background color of buttons on hover */
.tab button:hover {
  background-color: var(--color-primary-dark);
  color: var(--color-primary-light);
}

/* Create an active/current tablink class */
.tab button.active {
  background-color: var(--color-primary-dark);
  color: var(--color-white);
}

/* Style the tab content */
.tabcontent {
  display: none;
  padding: 0 0 5rem 0;
  border: 0px solid #ccc;
  border-top: none;
  flex-direction: column;
}
@media (min-width: 768px) {
  .tabcontent {
    flex-direction: row;
  }
}

.projekte-grid {
  grid-column: content;
  display: flex;
  margin: 8em 0 4em 0;
  flex-direction: column-reverse;
}
@media (min-width: 1024px) {
  .projekte-grid {
    flex-direction: row;
    margin: 13em 0 6em 0;
  }
}
.projekte-grid .txt {
  width: 100%;
  padding: 0;
}
.projekte-grid .txt ul {
  list-style: inside;
}
@media (min-width: 1024px) {
  .projekte-grid .txt {
    width: 40%;
    padding: 0 5em 0 0;
  }
}
.projekte-grid h1 {
  font-size: var(--h3-font-size);
}

.item {
  position: relative;
  /* When you mouse over the container, fade in the overlay icon*/
  /* The icon inside the overlay is positioned in the middle vertically and horizontally */
}
.item img {
  width: 100%;
  display: block;
}
.item .overlay-buttons {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  transition: 0.3s ease;
  background-color: var(--color-black-alpha);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
}
.item:hover .overlay-buttons {
  opacity: 1;
}
.item .title {
  margin: 0 auto;
  font-weight: bold;
  color: var(--color-white);
  padding: 1rem;
  margin-bottom: 1rem;
  text-align: center;
  border-bottom: 2px solid var(--color-black);
}
.item .center {
  display: flex;
  margin: 0 auto;
}
.item .buttons {
  color: var(--color-white);
  font-size: 3rem;
  align-self: center;
  padding: 1rem 2rem;
  text-decoration: none;
  text-align: center;
  font-weight: 700;
}
.item .buttons:hover {
  text-decoration: underline;
}
.item .buttons p {
  font-size: 1.5rem;
}

nav.breadcrumb-container {
  grid-column: center-start/center-end;
  border-bottom: 2px solid var(--color-grey-light);
  text-transform: uppercase;
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  padding: 4rem 0 0;
  margin-bottom: 2rem;
  list-style: none;
  background-color: none;
  border-radius: 0;
}

.breadcrumb {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  padding: 0.95rem 0 0;
  margin-bottom: 1rem;
  list-style: none;
  background-color: none;
  border-radius: 0;
}
@media (min-width: 768px) {
  .breadcrumb {
    font-size: 1.8rem;
  }
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.3rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  display: inline-block;
  padding-right: 0.3rem;
  color: var(--color-primary-dark);
  content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: #999;
}

.modal {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1002;
  background-color: #fff;
  padding: 20px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  min-width: 90vw;
}
@media (min-width: 768px) {
  .modal {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1002;
    background-color: #fff;
    padding: 3em;
    width: auto;
    min-width: 50rem;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  }
}

/* Schließen-Schaltfläche */
.close {
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
  font-size: 3em;
  font-weight: 700;
  color: var(--color-primary);
}

/* Modal-Inhalt */
.modal-content {
  padding: 20px;
}
.modal-content ul {
  list-style: inside square;
}

/* Zeige das Modal, wenn geöffnet */
.modal.show {
  display: block;
}

/* Hintergrund-Overlay für Abdunkelung */
.background-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); /* 50% Abdunkelung */
  z-index: 1000; /* Hintergrund sollte unterhalb des Modals liegen */
}

/* Zeige das Hintergrund-Overlay, wenn das Modal geöffnet ist */
.modal.show + .background-overlay {
  display: block;
}

button.open-modal-btn {
  position: absolute;
  bottom: 0;
  cursor: pointer;
  text-align: left;
  border-top: 2px solid #fff;
  padding-left: 1.5em;
  font-size: var(--default-font-size);
  width: 100%;
  background-color: var(--color-secondary-light);
}

/* 
.modal {
    max-width: 50ch;
    box-shadow: 0 0 1em rgb(0 0 0 / .3);
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    padding: 2em;
    border: 1px solid #ccc;

    & > * {
      margin: 0 0 0.5rem 0;
    }

    ul {
      list-style: inside square;

    }
  }

  .modal::backdrop {
    background: rgb(0 0 0 / 0.4);
  }



  .button {
    border: 0;
    cursor: pointer;
    background: var(--color-primary);
    color: var(--color-black);
    font-weight: 700;
    padding: var(--size-2) var(--size-4);
  }

  .button:hover,
  .button:focus {
    background: var(--color-primary-light);
  }  
  */
.container {
  overflow: hidden;
}

.filterDiv {
  float: left;
  text-align: center;
  margin: 2px;
  display: none; /* Hidden by default */
}

/* The "show" class is added to the filtered elements */
.show {
  display: block;
}

div#filterBtnContainer {
  display: flex;
  flex-direction: column;
  margin: 2em 0;
  width: 100%;
  justify-content: space-between;
  /* Style the buttons */
  /* Add a light grey background on mouse-over */
  /* Add a dark background to the active button */
}
@media (min-width: 1024px) {
  div#filterBtnContainer {
    flex-direction: row;
  }
}
div#filterBtnContainer .btn {
  border: none;
  outline: none;
  padding: 12px 16px;
  background-color: var(--color-white);
  color: var(--color-primary-dark);
  cursor: pointer;
}
div#filterBtnContainer .btn:hover {
  background-color: var(--color-white);
  color: var(--color-primary);
}
div#filterBtnContainer .btn.active {
  background-color: var(--color-primary);
  color: var(--color-white);
}
div#filterBtnContainer button.btn.btn--filter {
  width: 100%;
  border-bottom: 1px solid var(--color-primary-dark);
}
@media (min-width: 1024px) {
  div#filterBtnContainer button.btn.btn--filter {
    border-left: 1px solid var(--color-primary-dark);
    border-bottom: 0px;
  }
}

.preis {
  border-top: 1px solid var(--color-primary);
  margin-top: 2rem;
}
.preis h4 {
  font-weight: 700;
  padding-top: 1rem;
}
@media (min-width: 1024px) {
  .preis {
    border-top: 0px solid var(--color-primary);
    border-left: 1px solid var(--color-primary);
    padding-left: 1rem;
    padding-top: 0;
    margin-top: 0rem;
  }
}

.product-item--titel {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  padding: 1em;
  text-align: left;
  align-items: center;
}
.product-item--titel h4 {
  padding-bottom: 0.5rem;
}
.product-item--titel .small {
  font-size: 0.8em;
}
@media (min-width: 1024px) {
  .product-item--titel {
    grid-template-columns: 2fr 1fr;
  }
}

a.btn-product-item {
  display: block;
  background-color: var(--color-white);
  color: var(--color-primary-dark);
}
a.btn-product-item .product-item--img {
  background-color: var(--color-primary);
}
a.btn-product-item:hover {
  background-color: var(--color-primary-dark);
  color: var(--color-white);
}
a.btn-product-item:hover .product-item--img {
  opacity: 0.8;
}

/* FILTER NAVIGATION  */
ul.breadcrumb {
  list-style: none;
  grid-column: content-start/content-end;
  border-bottom: 1px solid var(--color-primary-dark);
  padding: 1rem 0;
}

/* Display list items side by side */
ul.breadcrumb li {
  display: inline;
  font-size: 2rem;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  ul.breadcrumb li {
    font-size: 1.5rem;
  }
}

/* Add a slash symbol (/) before/behind each list item */
ul.breadcrumb li + li:before {
  padding: 8px;
  color: var(--color-primary-dark);
  content: "/ ";
}

/* Add a color to all links inside the list */
ul.breadcrumb li a {
  color: var(--color-primary);
  text-decoration: none;
}

/* Add a color on mouse-over */
ul.breadcrumb li a:hover {
  color: var(--color-primary);
  border-bottom: 2px solid var(--color-primary);
}

/* Breadcrum Bauelemente  */
/* Add a color to all links inside the list */
ul.breadcrumb.fenster li a {
  color: var(--color-primary);
  text-decoration: none;
}

/* Add a color on mouse-over */
ul.breadcrumb.fenster li a:hover {
  color: var(--color-primary);
  border-bottom: 2px solid var(--color-primary);
}

#myBtnContainer {
  grid-column: content-start/content-end;
  margin: 0rem auto;
}

.content__thumbs.show {
  display: block;
}

.blog-container {
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: min-content; /* Automatische Anpassung der Zeilenhöhe an den Inhalt */
  grid-row-gap: 5rem; /* Abstand zwischen den Reihen */
  grid-column-gap: 5rem; /* Abstand zwischen den Spalten */
}
@media (min-width: 768px) {
  .blog-container {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .blog-container {
    grid-template-columns: repeat(3, 1fr);
  }
}

.news-item {
  background-color: var(--color-white);
  position: relative;
  display: grid;
  flex-direction: column;
}
@media (min-width: 1024px) {
  .news-item {
    background-color: var(--color-secondary-light);
  }
}
.news-item .image {
  width: 100%;
  overflow: hidden;
}
.news-item .image img {
  object-fit: cover;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
@media (min-width: 1024px) {
  .news-item .image img {
    max-height: 35rem;
  }
}
.news-item .date {
  color: var(--color-black);
  background-color: var(--color-white);
  border-bottom: 2px solid var(--color-primary);
  padding: 1rem 0rem;
  margin-bottom: 1rem;
}
@media (min-width: 1024px) {
  .news-item .date {
    background-color: var(--color-secondary-light);
    padding: 1rem 3rem;
  }
}
.news-item .content {
  padding: 0rem;
  width: auto;
  color: var(--color-primary-dark);
}
@media (min-width: 1024px) {
  .news-item .content {
    padding: 3rem;
  }
}
@media (min-width: 2560px) {
  .news-item .content {
    padding: 4rem;
  }
}
.news-item .content small {
  display: block;
  margin-bottom: 1rem;
}
.news-item .content h1, .news-item .content h2, .news-item .content h3, .news-item .content h4, .news-item .content h5 {
  padding: 0;
  margin: 0 0 2rem 0;
  text-decoration: none;
}
.news-item .content .btn--primary {
  margin-top: 2rem;
  width: fit-content;
}
.news-item .content p {
  height: inherit;
}
.news-item .categorie {
  position: absolute;
  top: 1rem;
  right: 0rem;
  background-color: var(--color-primary-dark);
  color: var(--color-white);
  padding: 1rem;
  font-size: 1.5rem;
}
.news-item a {
  text-decoration: none;
}
.news-item a:hover {
  text-decoration: underline;
}

.news a {
  text-decoration: underline;
}
.news a:hover {
  text-decoration: none;
}

.content-detail {
  padding: 1rem 0rem;
  width: auto;
  color: var(--color-primary-dark);
}
@media (min-width: 1024px) {
  .content-detail {
    background-color: var(--color-secondary-light);
    padding: 3rem;
    margin-bottom: var(--margin-m);
  }
}
@media (min-width: 2560px) {
  .content-detail {
    padding: 4rem;
  }
}
.content-detail small {
  display: block;
  margin-bottom: 1rem;
}
.content-detail h1, .content-detail h2, .content-detail h3, .content-detail h4, .content-detail h5 {
  padding: 0;
  margin: 0 0 2rem 0;
  text-decoration: none;
}
.content-detail .btn--primary {
  margin-top: 2rem;
  width: fit-content;
}
.content-detail p {
  height: inherit;
}

.product-info {
  margin: 1em 0;
}

.padding.bg-secondary hr {
  border: 1px solid #ffffff;
}

.produkt-info {
  margin-top: 0rem;
  z-index: 1;
}
@media (min-width: 768px) {
  .produkt-info {
    margin-top: -10rem;
  }
}

.home .col {
  position: relative;
}
.home .col p {
  padding-bottom: 6em;
}
.home .col .btn--info {
  position: absolute;
  bottom: 2em;
  width: -webkit-fill-available;
  margin-right: 2em;
}

/*# sourceMappingURL=style.css.map */
