﻿@import url("//hello.myfonts.net/count/3d0164");@font-face{font-family:"HongKong";font-style:normal;font-weight:100;src:url('/fonts/HongKong-Thin/font.woff2') format('woff2'),url('/fonts/HongKong-Thin/font.woff') format('woff');font-display:swap}@font-face{font-family:"HongKong";font-style:normal;font-weight:300;src:url('/fonts/HongKong-Light/font.woff2') format('woff2'),url('/fonts/HongKong-Light/font.woff') format('woff');font-display:swap}@font-face{font-family:"HongKong";font-style:normal;font-weight:400;src:url('/fonts/HongKong-Regular/font.woff2') format('woff2'),url('/fonts/HongKong-Regular/font.woff') format('woff');font-display:swap}@font-face{font-family:"HongKong";font-style:normal;font-weight:500;src:url('/fonts/HongKong-Medium/font.woff2') format('woff2'),url('/fonts/HongKong-Medium/font.woff') format('woff');font-display:swap}blockquote p {
    display: inline;
}

.price-form {
    margin-top: 2em;
}
.price-form .checkbox--dataprivacy+label::before {
    transform: translateY(2px);
}

.card__content .text-component h2 {
  margin-top: 0.5em;
}

.padding-right-sm {
    padding-right: var(--space-sm);
}
.margin-right-sm {
    margin-right: var(--space-sm);
}


p + .quote {
    margin-top: var(--space-xl);
}

.sevice-image img {
    max-width: 80px;
}
body {
    max-width: 100%;
    overflow-x: hidden;
}

.project-hero-image img {
    width: 100%;
}
.row.absenden {
    text-align: right;
}

#imagemain_getKontakt_Captcha img {
    margin-bottom: 1.5em;
}


:lang(de) .quote blockquote{quotes:'\201e' '\201c' !important}

#tocontent + .margin-y-160 {
    margin-top: 53px;
}/* :::  Quicknav ::: */
a.jumpto {
  display:block; 
  position:absolute; 
  top:6px; 
  left:-1000px; 
  z-index:100; 
  padding:10px; 
  font-size:16px; 
  line-height:1.5em;
  font-weight:bold; 
  color:#000;
  background-color:#FFFF8D; 
}
a.jumpto:focus, 
a.jumpto:active {
  left:0;
}@font-face {
  font-family: 'PP Neue Montreal';
  src: url("/fonts/PPNeueMontreal-Variable.woff2") format("woff2"), url("/fonts/PPNeueMontreal-Variable.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'PP Fragment Serif';
  src: url("/fonts/PPFragment-SerifVariable.woff") format("woff"), url("/fonts/PPFragment-SerifVariable.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

:root {
  --color-white: #ffffff;
  --color-gray100: #000000;
  --color-gray200: #EBEBEB;
  --color-gray600: #767676;
  --color-gray800: #212121;
  --color-deepgreen: #1B6659;
  --color-vividgreen: #85DE76;
  --color-pastelgreen: #CDFFA4;
  --color-deeprose: #A30245;
  --color-primary: var(--color-vividgreen)!important;
  --space-unit: 1.20em !important; }

@media (max-width: 512px) {
  :root, * {
    --component-padding: 1rem !important;
    --space-lg: 1rem !important; } }

h1 {
  font-weight: 640 !important;
  font-size: 1.8333333333rem !important;
  line-height: 2.1666666667rem !important; }

@media (min-width: 576px) {
  h1 {
    font-size: 2.0333333333rem !important;
    line-height: 2.3666666667rem !important; } }

@media (min-width: 768px) {
  h1 {
    font-size: 2.2333333333rem !important;
    line-height: 2.5666666667rem !important; } }

@media (min-width: 992px) {
  h1 {
    font-size: 2.4333333333rem !important;
    line-height: 2.7666666667rem !important; } }

@media (min-width: 1200px) {
  h1 {
    font-size: 2.6333333333rem !important;
    line-height: 2.9666666667rem !important; } }

@media (min-width: 1400px) {
  h1 {
    font-size: 2.8333333333rem !important;
    line-height: 3.1666666667rem !important; } }

.main-footer h4, .consultation h3, h2 {
  font-weight: 640 !important;
  font-size: 1.5rem !important;
  line-height: 1.8333333333rem !important; }

@media (min-width: 576px) {
  .main-footer h4, .consultation h3, h2 {
    font-size: 1.6666666667rem !important;
    line-height: 2rem !important; } }

@media (min-width: 768px) {
  .main-footer h4, .consultation h3, h2 {
    font-size: 1.8333333333rem !important;
    line-height: 2.1666666667rem !important; } }

@media (min-width: 992px) {
  .main-footer h4, .consultation h3, h2 {
    font-size: 2rem !important;
    line-height: 2.3333333333rem !important; } }

@media (min-width: 1200px) {
  .main-footer h4, .consultation h3, h2 {
    font-size: 2.1666666667rem !important;
    line-height: 2.5rem !important; } }

@media (min-width: 1400px) {
  .main-footer h4, .consultation h3, h2 {
    font-size: 2.3333333333rem !important;
    line-height: 2.6666666667rem !important; } }

.feature-teaser h2, h3 {
  font-weight: 640 !important;
  font-size: 1.3333333333rem !important;
  line-height: 1.6666666667rem !important; }

@media (min-width: 576px) {
  .feature-teaser h2, h3 {
    font-size: 1.3666666667rem !important;
    line-height: 1.7rem !important; } }

@media (min-width: 768px) {
  .feature-teaser h2, h3 {
    font-size: 1.4rem !important;
    line-height: 1.7333333333rem !important; } }

@media (min-width: 992px) {
  .feature-teaser h2, h3 {
    font-size: 1.4333333333rem !important;
    line-height: 1.7666666667rem !important; } }

@media (min-width: 1200px) {
  .feature-teaser h2, h3 {
    font-size: 1.4666666667rem !important;
    line-height: 1.8rem !important; } }

@media (min-width: 1400px) {
  .feature-teaser h2, h3 {
    font-size: 1.5rem !important;
    line-height: 1.8333333333rem !important; } }

.accordion__header, .product-infos dl dd, #quote blockquote,
.quote blockquote, .text-25, .text-30,
.subline-1.subline-1 p, .text-copy--big p, h4 {
  font-weight: 480 !important;
  font-size: 1.1666666667rem !important;
  line-height: 1.5rem !important; }

@media only screen and (max-width: 991px) {
  .accordion__header, .product-infos dl dd, #quote blockquote,
.quote blockquote, .text-25, .text-30,
.subline-1.subline-1 p, .text-copy--big p, h4 {
    font-weight: 640 !important; } }

@media (min-width: 576px) {
  .accordion__header, .product-infos dl dd, #quote blockquote,
.quote blockquote, .text-25, .text-30,
.subline-1.subline-1 p, .text-copy--big p, h4 {
    font-size: 1.2rem !important;
    line-height: 1.5333333333rem !important; } }

@media (min-width: 768px) {
  .accordion__header, .product-infos dl dd, #quote blockquote,
.quote blockquote, .text-25, .text-30,
.subline-1.subline-1 p, .text-copy--big p, h4 {
    font-size: 1.2333333333rem !important;
    line-height: 1.5666666667rem !important; } }

@media (min-width: 992px) {
  .accordion__header, .product-infos dl dd, #quote blockquote,
.quote blockquote, .text-25, .text-30,
.subline-1.subline-1 p, .text-copy--big p, h4 {
    font-size: 1.2666666667rem !important;
    line-height: 1.6rem !important; } }

@media (min-width: 1200px) {
  .accordion__header, .product-infos dl dd, #quote blockquote,
.quote blockquote, .text-25, .text-30,
.subline-1.subline-1 p, .text-copy--big p, h4 {
    font-size: 1.3rem !important;
    line-height: 1.6333333333rem !important; } }

@media (min-width: 1400px) {
  .accordion__header, .product-infos dl dd, #quote blockquote,
.quote blockquote, .text-25, .text-30,
.subline-1.subline-1 p, .text-copy--big p, h4 {
    font-size: 1.3333333333rem !important;
    line-height: 1.6666666667rem !important; } }

#quote figcaption,
.quote figcaption, h5 {
  font-weight: 480 !important;
  font-size: 1rem !important;
  line-height: 1.3333333333rem !important; }

@media (min-width: 576px) {
  #quote figcaption,
.quote figcaption, h5 {
    font-size: 1.0333333333rem !important;
    line-height: 1.3666666667rem !important; } }

@media (min-width: 768px) {
  #quote figcaption,
.quote figcaption, h5 {
    font-size: 1.0666666667rem !important;
    line-height: 1.4rem !important; } }

@media (min-width: 992px) {
  #quote figcaption,
.quote figcaption, h5 {
    font-size: 1.1rem !important;
    line-height: 1.4333333333rem !important; } }

@media (min-width: 1200px) {
  #quote figcaption,
.quote figcaption, h5 {
    font-size: 1.1333333333rem !important;
    line-height: 1.4666666667rem !important; } }

@media (min-width: 1400px) {
  #quote figcaption,
.quote figcaption, h5 {
    font-size: 1.1666666667rem !important;
    line-height: 1.5rem !important; } }

.header {
  background-color: var(--color-white); }

@media (max-width: 374px) {
  .header__logo a svg {
    max-width: 120px !important; } }

html,
body {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 480 !important;
  font-size: 24px !important;
  line-height: 32px !important;
  color: var(--color-gray800) !important;
  font-family: "PP Neue Montreal", Arial, sans-serif !important; }

h1, h2, h3, h4, h5 {
  font-family: "PP Neue Montreal", Arial, sans-serif !important; }
  h1.font-thin, h2.font-thin, h3.font-thin, h4.font-thin, h5.font-thin {
    font-weight: 640 !important; }

.scroll-please {
  display: none !important; }

.color-primary,
[class*='color-'] {
  color: var(--color-gray800) !important; }

main a,
main .link {
  color: var(--color-gray800) !important; }

main p {
  font-weight: 480 !important; }

.font-thin {
  font-weight: 480 !important; }

.btn,
.btn-container a {
  border-radius: 80px !important;
  padding: 16px 32px !important;
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 640 !important;
  font-size: 18px !important;
  line-height: 24px !important;
  color: var(--color-gray800) !important; }

.btn--primary,
.btn-container--primary a {
  color: var(--color-gray800) !important;
  background: var(--color-vividgreen) !important;
  border-radius: 80px !important; }

.btn--primary:focus, .btn-container--primary a:focus {
  outline: 1px solid var(--color-vividgreen) !important; }

.btn--secondary {
  color: var(--color-white) !important;
  border-color: var(--color-white) !important; }

.btn--outline {
  border-color: var(--color-gray800) !important; }

.btn--subtle,
.btn-container--subtle a {
  background: var(--color-white) !important;
  color: var(--color-gray800) !important;
  border: 1px solid var(--color-gray800) !important;
  border-radius: 80px !important; }

@media (min-width: 48rem) {
  .margin-y-160 {
    margin-top: 6rem !important;
    margin-bottom: 6em !important; } }

.header .btn--black.btn--header {
  background-color: var(--color-vividgreen) !important;
  color: var(--color-gray800) !important; }

.header__link {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 640 !important;
  font-size: 18px !important;
  line-height: 24px !important;
  color: var(--color-gray800) !important; }
  .header__link:hover, .header__link[aria-current] {
    color: var(--color-vividgreen) !important; }

.header__trigger {
  padding-right: 0 !important;
  padding-left: 1em !important; }

@media (min-width: 80rem) {
  .btn--search {
    margin-left: 0 !important; } }

@media (max-width: 374px) {
  .btn--search {
    right: 4rem !important; } }

.btn--search:hover {
  color: var(--color-vividgreen) !important; }

.homepage-hero > *:not(:has(img)),
.content-hero > *:not(:has(img)) {
  max-width: 920px !important; }

.text-component ul li,
.text-component ol li,
.text-component p {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 480 !important;
  font-size: 24px !important;
  line-height: 32px !important;
  color: var(--color-gray800) !important; }

.text-component ul li:before {
  color: var(--color-gray800) !important; }

.font-light p,
.lead p,
.subline-1 p,
.subline-2 p {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 480 !important;
  font-size: 24px !important;
  line-height: 32px !important;
  color: var(--color-gray800) !important; }

.more-link > a,
.more-link-text,
.more-link-extra > a {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 480 !important;
  font-size: 24px !important;
  line-height: 32px !important;
  color: var(--color-gray800) !important;
  text-decoration: underline !important;
  text-underline-offset: 4px; }
  .more-link > a:after,
.more-link-text:after,
.more-link-extra > a:after {
    filter: brightness(0%); }

.feature-teaser h2 {
  margin-bottom: 8px !important; }

[data-theme='onpublix'] .pill {
  background-color: var(--color-deepgreen) !important; }

@media (min-width: 48rem) {
  .pill {
    font-family: "PP Neue Montreal";
    font-style: normal;
    font-weight: 640 !important;
    font-size: 18px !important;
    line-height: 24px !important;
    color: var(--color-white) !important; } }

.card-topline,
.topline {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 480 !important;
  font-size: 28px !important;
  line-height: 36px !important;
  color: var(--color-gray800) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  width: 100%;
  padding-left: 0 !important;
  margin-bottom: 8px !important; }

.newcard__topwrapper .topline {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 480 !important;
  font-size: 24px !important;
  line-height: 32px !important;
  color: var(--color-gray800) !important; }

.badge,
.badge-container em {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 640 !important;
  font-size: 18px !important;
  line-height: 24px !important;
  color: var(--color-gray800) !important;
  border-radius: 64px !important; }

.text-30 {
  font-weight: 640 !important; }

.text-25 {
  font-weight: 640 !important; }

.consultation {
  margin-bottom: 200px !important; }
  .consultation.margin-y-160 {
    margin-bottom: 200px !important; }
  .consultation .bg-black {
    background: var(--color-deepgreen) !important;
    color: var(--color-white) !important; }
  .consultation h3 {
    color: var(--color-white) !important; }
  .consultation .text-copy p {
    font-family: "PP Neue Montreal";
    font-style: normal;
    font-weight: 480 !important;
    font-size: 24px !important;
    line-height: 32px !important;
    color: var(--color-gray800) !important;
    color: var(--color-white) !important; }
    .consultation .text-copy p + p {
      margin-top: 30px !important;
      font-family: "PP Neue Montreal";
      font-style: normal;
      font-weight: 480 !important;
      font-size: 28px !important;
      line-height: 36px !important;
      color: var(--color-white) !important; }
  .consultation .gap-20 {
    margin-top: 48px !important; }

.swiper-pagination-bullet {
  opacity: .4 !important;
  background: var(--color-gray800) !important;
  width: 84px !important;
  height: 8px !important;
  border-radius: 24px !important;
  margin: 0 4px !important; }
  .swiper-pagination-bullet-active {
    opacity: 1 !important; }

.swiper-button-prev,
.swiper-button-next {
  width: 64px !important;
  height: 64px !important;
  background-image: url("data:image/svg+xml,%0A%3Csvg width='64' height='64' viewBox='0 0 64 64' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0.8' y='0.8' width='62.4' height='62.4' rx='31.2' stroke='%23212121' stroke-width='1.6'/%3E%3Cpath d='M17.5 32L16.9103 31.4594L16.4147 32L16.9103 32.5406L17.5 32ZM18 31.2L17.2 31.2L17.2 32.8H18L18 31.2ZM23.5897 37.4594L18.0897 31.4594L16.9103 32.5406L22.4103 38.5406L23.5897 37.4594ZM18.0897 32.5406L23.5897 26.5406L22.4103 25.4594L16.9103 31.4594L18.0897 32.5406ZM47 31.2L18 31.2L18 32.8L47 32.8V31.2Z'  fill='%23212121'/%3E%3C/svg%3E%0A") !important;
  background-size: 100% !important; }

.swiper-button-next {
  transform: rotate(180deg); }

#quote blockquote,
.quote blockquote {
  font-weight: 480 !important; }

#quote figcaption,
.quote figcaption {
  text-transform: none !important; }

.teaser--img-sm img {
  height: 80px !important; }

@media (min-width: 32rem) {
  .gap-footer {
    --gap-y: 4rem !important; } }

.main-footer h4 {
  color: var(--color-white) !important; }

.main-footer p {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 480 !important;
  font-size: 24px !important;
  line-height: 32px !important;
  color: var(--color-gray800) !important;
  color: var(--color-white) !important; }
  .main-footer p b {
    font-weight: 640 !important; }

.main-footer__link {
  text-decoration: none !important; }
  .main-footer__link:hover {
    color: var(--color-vividgreen) !important; }

.copyright {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 480 !important;
  font-size: 24px !important;
  line-height: 32px !important;
  color: var(--color-gray600) !important; }

.top-button {
  background-color: var(--color-vividgreen) !important;
  color: var(--color-gray800) !important;
  margin: 0 !important; }

.js-tooltip-trigger {
  padding: 0 !important; }
  .js-tooltip-trigger svg {
    fill: var(--color-vividgreen) !important; }
    .js-tooltip-trigger svg path {
      fill: var(--color-gray800) !important; }

.product-infos dl dt {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 640 !important;
  font-size: 18px !important;
  line-height: 24px !important;
  color: var(--color-gray800) !important; }

.pricelist-item--selected:before {
  filter: brightness(0%) !important; }

#product_options .form-label {
  font-size: 0.9166666667rem !important;
  line-height: 1.0833333333rem !important;
  font-weight: 640; }

@media (min-width: 576px) {
  #product_options .form-label {
    font-size: 0.9333333333rem !important;
    line-height: 1.1333333333rem !important; } }

@media (min-width: 768px) {
  #product_options .form-label {
    font-size: 0.95rem !important;
    line-height: 1.1833333333rem !important; } }

@media (min-width: 992px) {
  #product_options .form-label {
    font-size: 0.9666666667rem !important;
    line-height: 1.2333333333rem !important; } }

@media (min-width: 1200px) {
  #product_options .form-label {
    font-size: 0.9833333333rem !important;
    line-height: 1.2833333333rem !important; } }

@media (min-width: 1400px) {
  #product_options .form-label {
    font-size: 1rem !important;
    line-height: 1.3333333333rem !important; } }

#price {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 640 !important;
  font-size: 32px !important;
  line-height: 40px !important;
  color: var(--color-gray800) !important; }

.collapse-button {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 480 !important;
  font-size: 24px !important;
  line-height: 32px !important;
  color: var(--color-gray800) !important;
  text-decoration: underline !important;
  text-underline-offset: 4px; }
  .collapse-button svg {
    display: none; }
  .collapse-button:after {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-left: 1em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24.24 13.074'%3E%3Cpath d='M24.2,6.5l-5.8,5.8c-0.2,0.2-0.5,0.3-0.7,0.3s-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l3.4-3.4H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h19.4L17,2.1c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0L24.2,6.5z' fill='%23f03d3d'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center bottom 2px;
    transition: 0.2s;
    filter: brightness(0%); }
  .collapse-button:hover:after {
    transform: translateX(10px); }
  .collapse-button:focus {
    outline-color: var(--color-vividgreen) !important; }

.switch__label {
  background: var(--color-gray600) !important;
  box-shadow: none !important; }

.switch__input:checked + .switch__label {
  background: var(--color-deepgreen) !important; }

.js .number-input--v2 {
  max-width: none !important;
  border: 1px solid var(--color-gray800) !important;
  border-radius: 80px !important; }
  .js .number-input--v2 .form-control {
    background: none !important;
    font-family: "PP Neue Montreal";
    font-style: normal;
    font-weight: 480 !important;
    font-size: 18px !important;
    line-height: 24px !important;
    color: var(--color-gray800) !important;
    padding: 0 !important;
    height: 64px !important; }
  .js .number-input--v2 .number-input__btn {
    color: var(--color-gray800) !important; }
    .js .number-input--v2 .number-input__btn svg path {
      fill: var(--color-gray800) !important; }
    .js .number-input--v2 .number-input__btn:hover {
      border-color: var(--color-vividgreen) !important; }
    .js .number-input--v2 .number-input__btn:focus {
      background: none !important;
      color: var(--color-gray800) !important;
      border-color: var(--color-vividgreen) !important; }

.pricetag {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 480 !important;
  font-size: 24px !important;
  line-height: 32px !important;
  color: var(--color-gray800) !important;
  text-transform: none !important; }

.sevice-image img {
  filter: brightness(0%); }

.filter-pill {
  background: var(--color-white) !important;
  color: var(--color-gray800) !important;
  border: 1px solid var(--color-gray800) !important; }

.accordion__header {
  font-weight: 480 !important; }
  .accordion__header .icon {
    color: var(--color-gray800) !important; }

.accordion__item {
  margin-bottom: 0 !important; }
  .accordion__item.js-accordion__item {
    padding: 24px 0 !important; }
  .accordion__item:last-child {
    border-bottom-width: 1px !important; }
  .accordion__item .accordion__panel.js-accordion__panel .text-component {
    padding-bottom: 0 !important; }
  .accordion__item--is-open > .accordion__header {
    color: var(--color-primary); }

.select__item--option[aria-selected='true'] {
  background: var(--color-deepgreen) !important; }

.js-tooltip {
  color: var(--color-deepgreen) !important; }

.tooltip-trigger:hover {
  color: var(--color-deepgreen) !important;
  border-color: var(--color-deepgreen) !important; }

.contact-item h4,
.contact-item .h4 {
  color: var(--color-vividgreen) !important; }

.contact-card p a {
  color: var(--color-white) !important; }

.form-group {
  margin-bottom: 32px !important; }
  .form-group ::placeholder {
    color: var(--color-gray200) !important; }
  .form-group ::-webkit-input-placeholder {
    color: var(--color-gray200) !important; }
  .form-group label.sr-only {
    position: static !important;
    height: auto !important;
    width: auto !important;
    clip: unset !important;
    clip-path: unset !important;
    font-family: "PP Neue Montreal";
    font-style: normal;
    font-weight: 480 !important;
    font-size: 22px !important;
    line-height: 24px !important;
    color: var(--color-gray800) !important; }

.full-screen-search__input,
.form-control {
  background: var(--color-gray200) !important;
  color: var(--color-gray800) !important;
  border-radius: 0 !important;
  padding: 20px !important; }
  .full-screen-search__input:hover, .full-screen-search__input:focus,
.form-control:hover,
.form-control:focus {
    border-color: var(--color-vividgreen) !important;
    box-shadow: none !important; }

.full-screen-search ::placeholder {
  color: var(--color-gray800) !important; }

.full-screen-search ::-webkit-input-placeholder {
  color: var(--color-gray800) !important; }

.full-screen-search__btn .icon {
  color: var(--color-gray800) !important; }

.radio + label,
.checkbox + label,
.checkbox--dataprivacy + label {
  font-family: "PP Neue Montreal";
  font-style: normal;
  font-weight: 480 !important;
  font-size: 18px !important;
  line-height: 24px !important;
  color: var(--color-gray800) !important; }

.row.absenden {
  text-align: left; }

.js-notice__hide-control {
  background: var(--color-vividgreen) !important;
  color: var(--color-gray800) !important;
  position: relative;
  top: -10px; }

@media (min-width: 48rem) {
  .sticky-things {
    transform: translateY(-155px) !important; } }

.top-button {
  right: 3rem  !important; }

@media only screen and (max-width: 1799px) {
  .top-button {
    right: 4rem  !important; }
  .price-sticky .col-content\@sm {
    margin-right: 100px; } }

@media (max-width: 511px) {
  .homepage-hero {
    margin-top: 150px !important; }
  .margin-y-xl {
    margin-bottom: 100px !important; }
  .margin-y-xl:not(.homepage-hero) {
    margin-top: 100px !important; }
  .grid > *:not(.pricelist-item > .grid > div) {
    margin-bottom: 50px !important; }
    .grid > *:not(.pricelist-item > .grid > div):last-child:not(:has(figure)):not(.price-sticky > .grid > div):not(.copyright) {
      margin-bottom: 0 !important; }
  .feature-teaser > *:last-child {
    margin-bottom: 0 !important; }
  section.bg-contrast-lower {
    margin-top: 100px;
    margin-bottom: 100px;
    padding-top: 100px;
    padding-bottom: 100px; }
  .teaser--img-sm img {
    margin-bottom: 25px !important; }
  .main-footer p, .main-footer__list li {
    margin-bottom: 0px !important;
    margin-top: 15px; }
  .grid > *:has(.teaser--img-sm), .col-12.copyright {
    margin-bottom: 80px !important; }
  .grid > *:has(.teaser--img-sm):last-child {
    margin-bottom: 110px !important; }
  .margin-top-xl:not(.consultation__image + div) {
    margin-top: 50px !important; }
  #product_options .pricelist-item.pricelist-item--big .flex-center {
    flex-direction: column;
    gap: 16px;
    margin-bottom: 1px; }
    #product_options .pricelist-item.pricelist-item--big .flex-center > * {
      margin-bottom: 0 !important; }
  #product_options .margin-left-xl\@xs > .grid {
    margin-bottom: 1px; }
  #product_options > div > * {
    margin-left: 0px; }
  #product_options > div {
    padding: 20px !important; }
  .pricelist-item .grid {
    flex-direction: column; }
  .consultation.margin-y-160 {
    margin-bottom: 0 !important; } }

@media only screen and (max-width: 767px) {
  .pricelist-item .grid > *:last-child {
    display: flex; } }

@media only screen and (max-width: 767px) and (min-width: 512px) {
  #product_options .pricelist-item:before {
    flex-basis: 60px;
    align-self: flex-start;
    margin-top: 5px; }
  #product_options > div > *:not(.pricelist-item) {
    margin-left: 60px; } }