/*!***************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[0].use[2]!./node_modules/sass-loader/dist/cjs/index.js??ruleSet[1].rules[0].use[3]!../css/_caeliRelaunch/_theme.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
ul.list-check > li:before, ul.list-arrow > li:before, main .content--element ul:not([class], [role]) > li:before,
main .content--element ul[class*=big-dots] > li:before, .btn.btn-xl.with-arrow:after, .btn.btn-lg:after, .btn.with-arrow:after, .swiper-button-next:after, .swiper-button-prev:after, .dropdown-toggle:after, .mm-spn.mod_navigation li:not(.extra-content):before, .mm-spn.mod_navigation:before, #mainNav .level_2 > li > *:first-child:after, #mainNav .level_1 > li.submenu > *:first-child:after {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
}

.fak, .swiper-button-next:after, .swiper-button-prev:after, .mm-spn.mod_navigation li:not(.extra-content):before, .mm-spn.mod_navigation:before, #mainNav .level_2 > li > *:first-child:after, #mainNav .level_1 > li.submenu > *:first-child:after, .fa-kit {
  font-family: "Font Awesome Kit";
}

/*

 */
header#header {
  --header-top-reserved-space: 48px;
  position: sticky;
  top: 0;
  z-index: 20;
  background-color: #F3F3F3;
  padding-top: 0.75rem;
  transition: padding 0.3s ease-in-out;
}
[data-bs-theme=dark] header#header {
  background-color: var(--bs-body-bg);
}
header#header:has(li.submenu:hover) {
  border-bottom: 0;
}
header#header .logo {
  transition: padding 0.3s ease-in-out;
}
header#header {
  padding-bottom: 0.5rem;
}
@media (min-width: 1040px) {
  header#header {
    padding-bottom: 0;
  }
}
header#header.is-scrolling {
  padding-block: 0.5rem;
}
@media (min-width: 1040px) {
  header#header.is-scrolling {
    padding-block: 0.5rem 0;
  }
}
header#header.is-scrolling {
  /*
  .mobileNav__activator-holder,
  .navigation .level_1 > li,
  .logo {
    padding-bottom: 0;

    @include media-breakpoint-up(lg) {
      padding-bottom: .5rem;
      padding-top: .5rem;
    }

    @include media-breakpoint-up(xxl) {
      padding-bottom: 1rem;
    }
  }
   */
}
header#header.is-scrolling.is-scrolling-up .header-top {
  padding-bottom: 0.5rem;
}
header#header.is-scrolling:not(.is-scrolling-up) .header-top {
  opacity: 0;
  max-height: 0;
  overflow: hidden;
}
header#header.is-scrolling .header-bottom {
  padding-top: 0;
}
header#header:not(:has(.header-top)) .header-bottom {
  margin-top: var(--header-top-reserved-space);
}
header#header:not(:has(.header-top)).is-scrolling .header-bottom {
  margin-top: 0;
}
header#header .header-top {
  text-align: right;
  font-size: 14px;
  position: relative;
  z-index: 5;
  transition: all 0.3s ease-in-out;
  max-height: 48px;
}
header#header .header-top ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-flow: row nowrap;
}
header#header .header-top ul li {
  display: inline-block;
}
header#header .header-top ul li strong, header#header .header-top ul li a {
  display: inline-block;
  transition: all 0.15s ease-in-out;
}
header#header .header-top .mod_navigation {
  display: inline-block;
}
header#header .header-top .mod_navigation ul li strong, header#header .header-top .mod_navigation ul li a {
  padding: 0.5rem 0.35rem;
  font-weight: 400;
}
header#header .header-top .mod_navigation ul li strong.active, header#header .header-top .mod_navigation ul li strong:hover, header#header .header-top .mod_navigation ul li a.active, header#header .header-top .mod_navigation ul li a:hover {
  background-color: #deeec6;
  color: #113634;
}
[data-bs-theme=dark] header#header .header-top .mod_navigation ul li strong.active, [data-bs-theme=dark] header#header .header-top .mod_navigation ul li strong:hover, [data-bs-theme=dark] header#header .header-top .mod_navigation ul li a.active, [data-bs-theme=dark] header#header .header-top .mod_navigation ul li a:hover {
  background-color: rgba(var(--bs-secondary-rgb), 0.85);
  color: var(--bs-body-color);
}
header#header .header-top .mod_changelanguage {
  display: inline-block;
  font-weight: 600;
}
header#header .header-top .mod_changelanguage ul li strong, header#header .header-top .mod_changelanguage ul li a {
  padding: 0.5rem 0 0.5rem 0.35rem;
}
header#header .header-top .darkmode-toggle-holder {
  display: inline-flex;
  align-items: center;
  margin-left: 0.45rem;
  vertical-align: middle;
}
header#header .header-top .darkmode-toggle {
  appearance: none;
  border: 0;
  background: transparent;
  color: currentColor;
  display: inline-grid;
  place-items: center;
  width: auto;
  height: auto;
  padding: 0;
  line-height: 1;
  cursor: pointer;
  transition: color 0.2s ease-in-out, opacity 0.2s ease-in-out;
  opacity: 0.9;
}
header#header .header-top .darkmode-toggle:focus-visible {
  outline: 1px dashed currentColor;
  outline-offset: 4px;
}
header#header .header-top .darkmode-toggle__icon {
  grid-area: 1/1;
  font-size: 1.1rem;
  line-height: 1;
  transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out;
}
header#header .header-top .darkmode-toggle:hover {
  color: var(--bs-link-hover-color);
  opacity: 1;
}
header#header .header-top .darkmode-toggle__icon--sun {
  opacity: 0;
  transform: scale(0.8);
}
header#header .header-top .darkmode-toggle__icon--moon {
  opacity: 1;
  transform: scale(1);
}
header#header .header-top .darkmode-toggle[aria-pressed=true] .darkmode-toggle__icon--sun {
  opacity: 1;
  transform: scale(1);
}
header#header .header-top .darkmode-toggle[aria-pressed=true] .darkmode-toggle__icon--moon {
  opacity: 0;
  transform: scale(0.8);
}
header#header .header-top--placeholder {
  pointer-events: none;
  visibility: hidden;
}
header#header .header-top--placeholder::before {
  content: "";
  display: block;
  height: var(--header-top-reserved-space);
}
header#header .header-bottom {
  position: relative;
  transition: padding-top 0.3s ease-in-out, margin-top 0.3s ease-in-out;
}
@media (min-width: 1040px) {
  header#header .header-bottom {
    padding-top: 0;
  }
}
@media (min-width: 1340px) {
  header#header .header-bottom {
    margin-top: 0;
    padding-top: 1rem;
  }
}
@media (max-width: 575.98px) {
  header#header .header-bottom .logo svg {
    width: 200px;
  }
}
header#header .header-bottom .nav-wrapper {
  display: flex;
  flex-flow: row wrap;
  gap: 0 1rem;
  justify-content: space-between;
}
@media (max-width: 767.98px) {
  header#header .header-bottom .nav-wrapper {
    align-items: center;
  }
}

.is-home header#header #spinner {
  transform-box: fill-box;
  transform-origin: center;
  animation: spin 1.8s cubic-bezier(0.25, 0.1, 0.25, 1) 1;
  backface-visibility: hidden;
}
.is-flaechencheck .mod_article {
  padding-top: 0 !important;
}

main#main .main-content > .mod_article:first-child:not(:has(> .article-content:not([class*=bg-]) > *[class*=bg-]:first-child)) {
  padding-top: calc(var(--main-gap));
}
main#main .main-content > .mod_article:first-child:has(> .article-content[class*=bg-], > [class*=pt-0]) {
  padding-top: 0 !important;
}
main#main .main-content:has(.mod_landingpage_viewer.is-fullwidth) > .mod_article {
  padding-top: 0 !important;
}

@media (min-width: 1040px) {
  .ce--inner:not([class*=col]) > .ce--headline {
    max-width: 70%;
  }
}

@media (min-width: 1040px) {
  .headline-above-columns {
    max-width: 85%;
  }
}

@media (min-width: 1040px) {
  [class*=bg-][class*=container-] .headline-above-columns,
  [class*=bg-][class*=container-] .ce--inner:not([class*=col]) > .ce--headline {
    max-width: 67%;
  }
}

.scroll-progress-bar {
  position: fixed;
  top: 0;
  left: 0;
  width: 0;
  height: 3px;
  background-color: var(--bs-primary);
  z-index: 1000;
}

.BodyScrollToTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer;
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
  transform: rotate(90deg);
}
.BodyScrollToTop::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  right: 2px;
  bottom: 2px;
  border-radius: 50%;
  background: conic-gradient(from 270deg, transparent calc(180deg - var(--scroll-progress, 0) * 180deg), var(--bs-primary) calc(180deg - var(--scroll-progress, 0) * 180deg), var(--bs-primary) calc(180deg + var(--scroll-progress, 0) * 180deg), transparent calc(180deg + var(--scroll-progress, 0) * 180deg));
  mask: radial-gradient(circle at center, transparent 18px, #000 19px, #000 23px, transparent 24px);
  -webkit-mask: radial-gradient(circle at center, transparent 18px, #000 19px, #000 23px, transparent 24px);
}
.BodyScrollToTop::after {
  content: "";
  width: 14px;
  height: 14px;
  border-top: 2px solid var(--bs-primary);
  border-left: 2px solid var(--bs-primary);
  transform: translateY(0px) rotate(-45deg);
  position: relative;
  left: 3px;
}

footer#footer {
  --bs-link-color-rgb: var(--bs-secondary-rgb);
  --bs-link-hover-color-rgb: var(--bs-secondary-rgb);
  padding-block: var(--main-gap) calc(var(--main-gap) * 2);
  background-color: var(--bs-primary);
  color: rgb(var(--bs-link-color-rgb));
}
footer#footer .footer-top {
  margin-bottom: calc(var(--main-gap) / 2);
}
footer#footer .footer-top .logo {
  position: relative;
}
@media (min-width: 1040px) {
  footer#footer .footer-top .logo {
    left: -25px;
  }
}
footer#footer .footer-top .logo svg {
  max-height: 2.8125rem;
}
footer#footer .footer-bottom .footer-title {
  display: block;
  font-weight: 600;
}
@media (min-width: 576px) {
  footer#footer .footer-bottom .footer-title {
    margin-bottom: 1rem;
  }
  footer#footer .footer-bottom .footer-title:not(:has(> a)) {
    pointer-events: none;
  }
}
@media (max-width: 575.98px) {
  footer#footer .footer-bottom .footer-title + p {
    margin-top: 0.5rem;
  }
}
footer#footer .footer-bottom p a {
  color: inherit;
}
footer#footer .footer-bottom .is-bold {
  font-weight: 600;
}
footer#footer .footer-bottom .is-nowrap {
  white-space: nowrap;
}
footer#footer .footer-bottom ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
@media (max-width: 575.98px) {
  footer#footer .footer-bottom ul {
    padding-top: 0.5rem;
  }
}
footer#footer .footer-bottom ul li {
  display: block;
}
footer#footer .footer-bottom ul li:not(:last-child) {
  margin-bottom: 0.25rem;
}
@media (min-width: 576px) {
  footer#footer .footer-bottom ul li:not(:last-child) {
    margin-bottom: 0.75rem;
  }
}
footer#footer .footer-bottom ul.contact-list li {
  white-space: nowrap;
}
footer#footer .footer-bottom ul.contact-list li:not(:last-child) {
  margin-bottom: 0.25rem;
}
footer#footer .footer-accordion-item .footer-title {
  text-decoration: none;
  color: inherit;
}
footer#footer .footer-accordion-item .footer-title:focus {
  box-shadow: none;
}
footer#footer .footer-accordion-item .footer-title .indicator {
  transition: none;
}
@media (min-width: 576px) {
  footer#footer .footer-accordion-item .collapse {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
  }
}

.accordion {
  --bs-accordion-btn-padding-x: 0;
  --bs-accordion-body-padding-x: var(--bs-accordion-btn-padding-x);
  --bs-accordion-border-width: 3px;
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 530 512'%3E%3Cpath d='M309.1 211.9L309.1 0 220.9 0l0 211.9L9 211.9l0 88.3 211.9 0 0 211.9 88.3 0 0-211.9 211.9 0 0-88.3-211.9 0z'/%3E%3C/svg%3E");
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Ebene_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 30 5'%3E%3C!-- Generator: Adobe Illustrator 29.5.0, SVG Export Plug-In . SVG Version: 2.1.0 Build 137) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %23113534; %7D %3C/style%3E%3C/defs%3E%3Crect class='st0' x='.5' y='0' width='29' height='5'/%3E%3C/svg%3E");
  --bs-accordion-active-bg: transparent;
  --bs-accordion-border-radius: 0;
  --bs-accordion-btn-focus-box-shadow: inset 0 calc(var(--bs-accordion-border-width) * -1) 0 var(--bs-accordion-border-color);
}
.accordion .accordion-item {
  border-top: 0;
  border-left: 0;
  border-right: 0;
}
.accordion .accordion-item:first-child .accordion-button {
  padding-top: 0;
}
.accordion .accordion-item .ce--headline > * {
  font-size: 1.25rem;
}
@media (min-width: 768px) {
  .accordion .accordion-item .ce--headline > * {
    font-size: 1.875rem;
  }
}
.accordion .accordion-item .ce--headline > * {
  font-weight: var(--bs-font-weight-normal);
}
.accordion .accordion-item .accordion-button {
  gap: 2rem;
}
.accordion .accordion-item .accordion-button[aria-expanded=true]:after {
  height: 4px;
}
.accordion .accordion-item .accordion-button:hover, .accordion .accordion-item .accordion-button[aria-expanded=true] {
  -webkit-text-stroke: 1px currentColor;
}

#mainNav ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
#mainNav ul li {
  display: inline-block;
}
#mainNav ul li a, #mainNav ul li strong {
  display: block;
}
#mainNav .level_1 > li:not(:last-child) {
  margin-right: 0.25rem;
}
#mainNav .level_1 > li.submenu > *:first-child {
  display: flex;
  align-items: center;
  gap: 0.35rem;
}
#mainNav .level_1 > li.submenu > *:first-child:after {
  content: "\e003";
  font-size: 0.35rem;
  padding-top: 0.15rem;
  animation: none !important;
}
#mainNav .level_1 > li > *:first-child:not([class*=btn]) {
  padding: 0.65rem 0.25rem 1.25rem 0.25rem;
  font-weight: 400;
  transition: all 0.15s ease-in-out;
}
#mainNav .level_1 > li > *:first-child:not([class*=btn]).contact-btn {
  padding-bottom: 0.65rem;
}
#mainNav .level_1 > li:hover > *:first-child:not([class*=btn]), #mainNav .level_1 > li.active > *:first-child:not([class*=btn]), #mainNav .level_1 > li.trail > *:first-child:not([class*=btn]) {
  color: #113634;
  -webkit-text-stroke: 0.3px currentColor;
}
#mainNav .level_1 > li .contact-btn {
  background-color: var(--bs-primary);
  color: var(--bs-body-color-inverse);
  padding-inline: 1.25rem;
  padding-block: 0.65rem;
}
#mainNav .level_1 > li .contact-btn:hover, #mainNav .level_1 > li .contact-btn:focus, #mainNav .level_1 > li .contact-btn.active {
  box-shadow: inset 0 0 0 2px var(--bs-primary);
  color: var(--bs-primary);
  background-color: transparent;
  -webkit-text-stroke: initial;
}
#mainNav .level_1 > li:hover .level_2-wrapper,
#mainNav .level_1 > li .level_2-wrapper:hover,
#mainNav .level_1 > li .level_2-wrapper.show {
  visibility: visible;
  height: var(--mega-menu-height, 0px);
  z-index: 10;
  transition: height 0.75s ease-in-out, box-shadow 0.45s ease-in-out, visibility 0s;
}
#mainNav:not(:has(.level_2)) .level_1 > li > *:first-child:not([class*=btn]) {
  padding: 0.65rem 0.25rem 0.65rem 0.25rem;
}
#mainNav .level_2-wrapper {
  --mega-menu-width: min(100vw, var(--mega-menu-max-width, 100vw));
  --mega-menu-height: 0px;
  position: absolute;
  left: 0;
  transform: translateX(calc(-1 * var(--mega-menu-offset, 0px)));
  top: 100%;
  width: var(--mega-menu-width);
  padding-inline: 0;
  box-sizing: border-box;
  height: 0;
  overflow: hidden;
  visibility: hidden;
  z-index: -1;
  background-color: var(--bs-body-bg);
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  transition: height 0.75s ease-in-out 0.12s, box-shadow 0.35s ease-in-out, visibility 0s linear 0.87s;
}
#mainNav .level_2 {
  display: grid;
  gap: 0 10px;
  width: 100%;
  margin: 0;
  padding: 0 var(--bs-container-gutter);
  padding-top: calc(var(--main-gap) / 3);
  padding-bottom: calc(var(--main-gap) / 2);
}
@media (min-width: 768px) {
  #mainNav .level_2 {
    position: relative;
    left: -1.2rem;
  }
}
#mainNav .level_2:has(:nth-child(5)) {
  grid-template-columns: repeat(2, 1fr);
}
#mainNav .level_2 > li.is-100 {
  grid-column: 1/-1;
  margin-bottom: calc(var(--main-gap) / 3);
}
#mainNav .level_2 > li.is-right {
  grid-column: 2/3;
}
#mainNav .level_2 > li > *:first-child {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  #mainNav .level_2 > li > *:first-child {
    font-size: 1.5rem;
  }
}
#mainNav .level_2 > li > *:first-child {
  padding: 0.75rem 0.65rem;
  transition: all 0.3s ease-in-out;
}
#mainNav .level_2 > li > *:first-child:hover, #mainNav .level_2 > li > *:first-child.active, #mainNav .level_2 > li > *:first-child.trail {
  gap: 1.5rem;
  background-color: var(--bs-primary);
  color: var(--bs-body-color-inverse);
}
#mainNav .level_2 > li > *:first-child:after {
  content: "\e000";
  font-size: 1.35rem;
}

.mm-spn.mod_navigation .contact-btn {
  display: none !important;
}

.mm-spn.mod_navigation:before {
  content: "\e005";
  align-content: center;
  transform: none;
}

.mm-spn.mod_navigation li:not(.extra-content):before {
  content: "\e000";
  align-content: center;
}

html body main#main .mod_breadcrumb {
  font-size: 0.75rem;
}
html body main#main .mod_breadcrumb ul {
  padding-left: 0;
  white-space: nowrap;
  overflow: hidden;
  display: flex;
  align-items: center;
  max-width: calc(100vw - 2 * var(--bs-container-gutter));
}
html body main#main .mod_breadcrumb ul li {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-bottom: 0;
  flex-shrink: 0;
}
html body main#main .mod_breadcrumb ul li:first-child:before {
  display: none;
}
html body main#main .mod_breadcrumb ul li:before {
  position: static;
  content: ">";
  vertical-align: baseline;
  margin-right: 5px;
  margin-left: 5px;
  font-family: var(--bs-body-font-family);
  flex-shrink: 0;
}
html body main#main .mod_breadcrumb ul li > * {
  color: currentColor;
}
@media (max-width: 575.98px) {
  html body main#main .mod_breadcrumb ul li:not(:last-child) > a,
  html body main#main .mod_breadcrumb ul li:not(:last-child) > strong {
    font-size: 0 !important;
  }
  html body main#main .mod_breadcrumb ul li:not(:last-child) > a:after,
  html body main#main .mod_breadcrumb ul li:not(:last-child) > strong:after {
    content: "..." !important;
    font-size: 0.75rem !important;
    display: inline !important;
  }
  html body main#main .mod_breadcrumb ul li:last-child {
    flex-shrink: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
  }
  html body main#main .mod_breadcrumb ul li:last-child > a,
  html body main#main .mod_breadcrumb ul li:last-child > strong {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    display: block !important;
    font-size: 0.75rem !important;
  }
}

.nav-button {
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  text-align: inherit;
  color: var(--bs-body-color);
}

.pagination {
  text-align: center;
  margin-top: var(--main-gap);
  width: 100%;
  color: currentColor;
}
.pagination ul {
  list-style-type: none;
  margin: 0;
  display: inline-flex;
  flex-flow: row nowrap;
  gap: 0.75rem;
  align-items: center;
}
.pagination ul a {
  color: currentColor;
}
.pagination ul a:after {
  display: none;
}
.pagination ul .active, .pagination ul a:hover {
  color: currentColor;
  -webkit-text-stroke: 0.3px currentColor;
}

.services-overview .services-list .service-item.active, .services-overview .services-list .service-item:hover {
  background-color: transparent;
}
.services-overview .services-list .service-item:first-child {
  border-top: 0;
}
.services-overview .services-list .service-item .service-link {
  border: 0;
  padding: 0.75rem 1.25rem;
  display: inline-block;
  background-color: transparent;
}
.services-overview .services-list .service-item .service-link h3.h5 {
  --bs-h5-font-weight: 400;
  --bs-h3-font-weight: 400;
}
.services-overview .services-list .service-item .service-link:hover, .services-overview .services-list .service-item .service-link.active, .services-overview .services-list .service-item .service-link:focus {
  background-color: var(--bs-tertiary);
  color: var(--bs-body-color);
}
.services-overview .services-list .service-item .service-link:hover h3, .services-overview .services-list .service-item .service-link.active h3, .services-overview .services-list .service-item .service-link:focus h3 {
  --bs-h5-font-weight: 600;
  --bs-h3-font-weight: 600;
}
.services-overview .services-list .service-item .service-link:hover .service-link, .services-overview .services-list .service-item .service-link.active .service-link, .services-overview .services-list .service-item .service-link:focus .service-link {
  --bs-heading-color: var(--bs-body-color);
}

form .formbody {
  --bs-gutter-x: 10px;
  --bs-gutter-y: 10px;
}

.form-control, .form-select {
  background-color: var(--bs-gray-100);
}
.form-control:focus, .form-select:focus {
  background-color: var(--bs-gray-100);
}

.form-check:not(.form-switch) .form-check-input[type=checkbox],
form .widget:not(.form-floating).widget-radio fieldset > span input[type=checkbox],
form .widget:not(.form-floating).widget-checkbox fieldset > span input[type=checkbox] {
  border-radius: 0;
  width: 20px;
  height: 20px;
  margin-top: 3px;
}

.form-check-input,
.form-check-input:checked,
.form-check-input:focus,
.form-check-input:focus-visible {
  border: none;
  box-shadow: var(--bs-input-shadow);
}

.form-switch.form-check {
  min-height: 0;
}
.form-switch.form-check:last-child {
  margin-bottom: 0;
}

.form-check-input:focus:not(:checked) {
  background-color: transparent;
}

.mod_form_enhancer__wrapper {
  margin-top: 2rem;
}

.mod_form_enhancer__sidebar {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media (min-width: 768px) {
  .mod_form_enhancer__sidebar {
    position: sticky;
    top: 2rem;
    gap: 1.5rem;
  }
}

.mod_form_enhancer__stats {
  display: grid;
  gap: 0.5rem 1rem;
  margin: 0;
}

.mod_form_enhancer__stats > div {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}

.mod_form_enhancer__pages-wrapper {
  overflow-x: auto;
  padding-bottom: 0.5rem;
  -webkit-overflow-scrolling: touch;
  padding-inline: 0.25rem;
}
@media (min-width: 768px) {
  .mod_form_enhancer__pages-wrapper {
    margin: 0 0 1.5rem;
  }
}

.mod_form_enhancer__page-links {
  width: 100%;
}

.mod_form_enhancer__pages-wrapper::-webkit-scrollbar {
  height: 0.4rem;
}

.mod_form_enhancer__pages-wrapper::-webkit-scrollbar-thumb {
  background-color: var(--bs-gray-400);
  border-radius: 999px;
}

.mod_form_enhancer__page-links-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: flex-start;
}

.mod_form_enhancer__page-links-item {
  display: flex;
  width: auto;
}
.mod_form_enhancer__page-links-item > .btn {
  width: auto;
}

.mod_form_enhancer__page-link.btn-primary {
  transform: translateY(-2px);
}

.mod_form_enhancer__page-link.is-locked {
  opacity: 0.6;
}

@media (min-width: 768px) {
  .mod_form_enhancer__page-links-list {
    justify-content: flex-start;
  }
}
@media (max-width: 767.98px) {
  .mod_form_enhancer__pages-wrapper {
    display: flex;
    align-items: stretch;
    overflow-x: auto;
    padding-bottom: 0.75rem;
    width: 100%;
  }
  .mod_form_enhancer__pages {
    display: inline-flex;
  }
  .mod_form_enhancer__page-links-list {
    display: inline-flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 0.5rem;
    align-items: stretch;
    width: max-content;
  }
  .mod_form_enhancer__page-links-item {
    flex: 0 0 auto;
  }
  .mod_form_enhancer__page-link {
    white-space: nowrap;
  }
}
.mod_form_enhancer__page-nav:has(button + button) {
  width: 100%;
}

.mod_form_enhancer__page-nav[hidden] {
  display: none !important;
}

.mod_form_enhancer__page-nav-btn {
  min-width: 8rem;
}

.mod_form_enhancer__pager {
  width: 100%;
}

.mod_form_enhancer__pager-status {
  min-width: 6rem;
  font-weight: 600;
}

.mod_form_enhancer__email-tools {
  align-items: stretch;
}

.mod_form_enhancer__intro-controls {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: calc(0.5rem + 6px);
}
@media (min-width: 768px) {
  .mod_form_enhancer__intro-controls {
    align-items: flex-end;
  }
}

.mod_form_enhancer__email-row {
  display: flex;
  align-items: stretch;
}

.mod_form_enhancer__actions-row {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
@media (min-width: 768px) {
  .mod_form_enhancer__actions-row {
    flex-direction: row;
    justify-content: flex-end;
  }
}

.mod_form_enhancer__page-actions {
  width: 100%;
}

.mod_form_enhancer__send-mail,
.mod_form_enhancer__delete-progress,
.mod_form_enhancer__save-progress-btn,
.mod_form_enhancer__save-progress-inline {
  min-width: 180px;
}
@media (min-width: 768px) {
  .mod_form_enhancer__send-mail,
  .mod_form_enhancer__delete-progress,
  .mod_form_enhancer__save-progress-btn,
  .mod_form_enhancer__save-progress-inline {
    flex: 0 0 180px;
  }
}
@media (max-width: 575.98px) {
  .mod_form_enhancer__send-mail,
  .mod_form_enhancer__delete-progress,
  .mod_form_enhancer__save-progress-btn,
  .mod_form_enhancer__save-progress-inline {
    width: 100%;
  }
}

.mod_form_enhancer__mailinfo {
  text-align: left;
}
@media (min-width: 768px) {
  .mod_form_enhancer__mailinfo {
    text-align: right;
  }
}

.mod_form_enhancer__intro-block.is-hidden {
  display: none !important;
}

.mod_form_enhancer--sidebar-hidden .mod_form_enhancer__sidebar {
  display: none !important;
}

.mod_form_enhancer--sidebar-hidden .mod_form_enhancer__main {
  flex: 1 1 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}

.mod_form_enhancer .project-stage-intro {
  display: none;
}

.mod_form_enhancer[data-current-page=projektstatus] .project-stage-intro {
  display: block;
}

.mod_form_enhancer__main {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.mod_form_enhancer__form {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  gap: 2rem;
}
.mod_form_enhancer__form .formbody {
  --bs-gutter-y: 1.5rem;
  flex: 1 1 auto;
}
.mod_form_enhancer__form .formbody legend, .mod_form_enhancer__form .formbody label {
  font-weight: 600;
}
.mod_form_enhancer__form .formbody .form-check label {
  font-weight: 400;
}
.mod_form_enhancer__form .formbody .widget-submit:last-child {
  margin-right: 0 !important;
  margin-left: auto !important;
}

.mod_form_enhancer__form-content {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

.mod_form_enhancer__form-footer {
  align-items: center;
  justify-content: flex-end;
  margin-top: auto;
}

.mod_form_enhancer__feedback {
  margin: 0 0 1.5rem;
  display: none;
}

.mod_form_enhancer__feedback:not(:empty) {
  display: block;
}

.agb_checkbox label,
.agb_notice p {
  font-size: clamp(14px, 1.2vw, 16px);
}

.dropdown-menu {
  --bs-border-color-translucent: rgba(255, 255, 255, .175);
  border-top: 0;
}

.dropdown-toggle {
  padding-right: 0.25rem;
}
.dropdown-toggle:after {
  font-family: "Font Awesome Kit";
  content: "\e003";
  border: 0;
  font-size: 7px;
  margin-left: 0.5rem;
}

/********** Range Input Styles **********/
/*Range Reset*/
input[type=range] {
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  cursor: pointer;
  width: 15rem;
}

/* Removes default focus */
input[type=range]:focus {
  outline: none;
}

/***** Chrome, Safari, Opera and Edge Chromium styles *****/
/* slider track */
input[type=range]::-webkit-slider-runnable-track {
  background-color: var(--bs-secondary);
  border-radius: 0.5rem;
  height: 0.5rem;
}

/* slider thumb */
input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none; /* Override default look */
  appearance: none;
  margin-top: -12px; /* Centers thumb on the track */
  /*custom styles*/
  background-color: var(--bs-tertiary);
  height: 2rem;
  width: 1rem;
}

input[type=range]:focus::-webkit-slider-thumb {
  border: 1px solid var(--bs-tertiary);
  outline: 3px solid var(--bs-tertiary);
  outline-offset: 0.125rem;
}

/******** Firefox styles ********/
/* slider track */
input[type=range]::-moz-range-track {
  background-color: var(--bs-tertiary);
  border-radius: 0.5rem;
  height: 0.5rem;
}

/* slider thumb */
input[type=range]::-moz-range-thumb {
  border: none; /*Removes extra border that FF applies*/
  border-radius: 0; /*Removes default border-radius that FF applies*/
  /*custom styles*/
  background-color: var(--bs-secondary);
  height: 2rem;
  width: 1rem;
}

input[type=range]:focus::-moz-range-thumb {
  border: 1px solid var(--bs-tertiary);
  outline: 3px solid var(--bs-tertiary);
  outline-offset: 0.125rem;
}

@media (max-width: 575.98px) {
  .input-group {
    overflow: hidden;
  }
  .input-group > input {
    border-bottom: 0 !important;
  }
}
@media (min-width: 576px) {
  .input-group > input {
    border-right: 0 !important;
  }
}
.input-group > *.form-control {
  text-align: center;
}
@media (max-width: 575.98px) {
  .input-group > * {
    width: 100%;
    margin-inline: auto;
    flex: 100%;
  }
}

.border-lg .form-control, .border-lg .form-select {
  box-shadow: none;
  border: 3px solid var(--bs-primary);
}
.border-lg .form-check-input {
  border: 3px solid var(--bs-primary);
}

input[name=vsm_form_enhancer_email] {
  margin-right: calc(0.5rem + 6px);
}

.widget[class*=-text] label {
  margin-bottom: 0.5rem;
}
.widget.stage-selector legend {
  display: none;
}
.widget.stage-selector fieldset.radio_container {
  border: 0;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 1.5rem;
  flex-wrap: wrap;
}
.widget.stage-selector .form-check {
  flex: 0 0 calc(33.333% - 1rem);
  max-width: calc(33.333% - 1rem);
  margin: 0;
  padding: 0;
  position: relative;
}
@media (max-width: 767.98px) {
  .widget.stage-selector .form-check {
    flex: 1 1 100%;
    max-width: 100%;
  }
}
.widget.stage-selector .form-check-input {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}
.widget.stage-selector .form-check-label {
  display: flex;
  flex-direction: column;
  width: 100%;
  text-align: left;
  min-height: 100%;
  padding: 1rem 1.35rem;
  border-radius: var(--bs-border-radius-lg);
  border: 3px solid var(--bs-primary);
  background-color: transparent;
  color: var(--bs-body-color);
  font-size: 1.25rem;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  cursor: pointer;
}
.widget.stage-selector .form-check-input:checked + .form-check-label, .widget.stage-selector .form-check-input:focus-visible + .form-check-label, .widget.stage-selector .form-check-label:hover {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
  color: var(--bs-secondary);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}
.widget.checkbox-list-lg {
  margin-bottom: 1rem;
}
.widget.checkbox-list-lg .form-check {
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  gap: 1.5rem;
  padding-left: 0;
}
.widget.checkbox-list-lg .form-check:not(:last-child) {
  margin-bottom: 0.75rem;
}
.widget.checkbox-list-lg .form-check .form-check-input {
  float: none;
  margin-left: 0;
  box-shadow: none;
  border: 3px solid var(--bs-primary);
}
.widget.checkbox-list-lg .form-check .form-check-input[type=checkbox], .widget.checkbox-list-lg .form-check .form-check-input[type=radio] {
  width: 43px;
  height: 43px;
}
.widget.is-inline {
  display: flex;
  flex-flow: row wrap;
  gap: 1rem;
  align-items: center;
}
@media (max-width: 767.98px) {
  .widget.is-inline {
    width: auto !important;
  }
}
.widget.is-inline > label {
  width: 170px;
  font-weight: 600;
}
.widget.is-inline > label + * {
  width: calc(100% - 170px - 1rem);
}
.widget.is-inline .form-control {
  background-color: var(--bs-secondary);
}
.widget.is-highlighted {
  background-color: var(--bs-tertiary);
  padding: 0.75rem !important;
}

fieldset.radio_btn-view,
fieldset.checkbox_btn-view,
fieldset.choice_btn-view {
  border: 0;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
fieldset.radio_btn-view legend,
fieldset.checkbox_btn-view legend,
fieldset.choice_btn-view legend {
  margin-bottom: 0.75rem;
}
fieldset.radio_btn-view .radio-btn,
fieldset.radio_btn-view .checkbox-btn,
fieldset.radio_btn-view .choice-btn,
fieldset.checkbox_btn-view .radio-btn,
fieldset.checkbox_btn-view .checkbox-btn,
fieldset.checkbox_btn-view .choice-btn,
fieldset.choice_btn-view .radio-btn,
fieldset.choice_btn-view .checkbox-btn,
fieldset.choice_btn-view .choice-btn {
  flex: 1 1 0;
  position: relative;
}
fieldset.radio_btn-view .radio-btn input[type=radio],
fieldset.radio_btn-view .radio-btn input[type=checkbox],
fieldset.radio_btn-view .checkbox-btn input[type=radio],
fieldset.radio_btn-view .checkbox-btn input[type=checkbox],
fieldset.radio_btn-view .choice-btn input[type=radio],
fieldset.radio_btn-view .choice-btn input[type=checkbox],
fieldset.checkbox_btn-view .radio-btn input[type=radio],
fieldset.checkbox_btn-view .radio-btn input[type=checkbox],
fieldset.checkbox_btn-view .checkbox-btn input[type=radio],
fieldset.checkbox_btn-view .checkbox-btn input[type=checkbox],
fieldset.checkbox_btn-view .choice-btn input[type=radio],
fieldset.checkbox_btn-view .choice-btn input[type=checkbox],
fieldset.choice_btn-view .radio-btn input[type=radio],
fieldset.choice_btn-view .radio-btn input[type=checkbox],
fieldset.choice_btn-view .checkbox-btn input[type=radio],
fieldset.choice_btn-view .checkbox-btn input[type=checkbox],
fieldset.choice_btn-view .choice-btn input[type=radio],
fieldset.choice_btn-view .choice-btn input[type=checkbox] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}
fieldset.radio_btn-view .radio-btn label,
fieldset.radio_btn-view .checkbox-btn label,
fieldset.radio_btn-view .choice-btn label,
fieldset.checkbox_btn-view .radio-btn label,
fieldset.checkbox_btn-view .checkbox-btn label,
fieldset.checkbox_btn-view .choice-btn label,
fieldset.choice_btn-view .radio-btn label,
fieldset.choice_btn-view .checkbox-btn label,
fieldset.choice_btn-view .choice-btn label {
  display: flex;
  align-items: center;
  width: 100%;
  padding: var(--bs-btn-padding-y, 0.375rem) var(--bs-btn-padding-x, 0.75rem);
  font-size: var(--bs-btn-font-size, 1rem);
  font-weight: var(--bs-btn-font-weight, 400);
  line-height: var(--bs-btn-line-height, 1.5);
  text-align: left;
  cursor: pointer;
  border: var(--bs-border-width) solid var(--bs-primary);
  border-radius: var(--bs-border-radius);
  background-color: transparent;
  color: var(--bs-primary);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
fieldset.radio_btn-view .radio-btn label:hover,
fieldset.radio_btn-view .checkbox-btn label:hover,
fieldset.radio_btn-view .choice-btn label:hover,
fieldset.checkbox_btn-view .radio-btn label:hover,
fieldset.checkbox_btn-view .checkbox-btn label:hover,
fieldset.checkbox_btn-view .choice-btn label:hover,
fieldset.choice_btn-view .radio-btn label:hover,
fieldset.choice_btn-view .checkbox-btn label:hover,
fieldset.choice_btn-view .choice-btn label:hover {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
  color: #fff;
}
fieldset.radio_btn-view .radio-btn input[type=radio]:checked + label,
fieldset.radio_btn-view .radio-btn input[type=checkbox]:checked + label,
fieldset.radio_btn-view .checkbox-btn input[type=radio]:checked + label,
fieldset.radio_btn-view .checkbox-btn input[type=checkbox]:checked + label,
fieldset.radio_btn-view .choice-btn input[type=radio]:checked + label,
fieldset.radio_btn-view .choice-btn input[type=checkbox]:checked + label,
fieldset.checkbox_btn-view .radio-btn input[type=radio]:checked + label,
fieldset.checkbox_btn-view .radio-btn input[type=checkbox]:checked + label,
fieldset.checkbox_btn-view .checkbox-btn input[type=radio]:checked + label,
fieldset.checkbox_btn-view .checkbox-btn input[type=checkbox]:checked + label,
fieldset.checkbox_btn-view .choice-btn input[type=radio]:checked + label,
fieldset.checkbox_btn-view .choice-btn input[type=checkbox]:checked + label,
fieldset.choice_btn-view .radio-btn input[type=radio]:checked + label,
fieldset.choice_btn-view .radio-btn input[type=checkbox]:checked + label,
fieldset.choice_btn-view .checkbox-btn input[type=radio]:checked + label,
fieldset.choice_btn-view .checkbox-btn input[type=checkbox]:checked + label,
fieldset.choice_btn-view .choice-btn input[type=radio]:checked + label,
fieldset.choice_btn-view .choice-btn input[type=checkbox]:checked + label {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
  color: #fff;
}
fieldset.radio_btn-view .radio-btn input[type=radio]:focus-visible + label,
fieldset.radio_btn-view .radio-btn input[type=checkbox]:focus-visible + label,
fieldset.radio_btn-view .checkbox-btn input[type=radio]:focus-visible + label,
fieldset.radio_btn-view .checkbox-btn input[type=checkbox]:focus-visible + label,
fieldset.radio_btn-view .choice-btn input[type=radio]:focus-visible + label,
fieldset.radio_btn-view .choice-btn input[type=checkbox]:focus-visible + label,
fieldset.checkbox_btn-view .radio-btn input[type=radio]:focus-visible + label,
fieldset.checkbox_btn-view .radio-btn input[type=checkbox]:focus-visible + label,
fieldset.checkbox_btn-view .checkbox-btn input[type=radio]:focus-visible + label,
fieldset.checkbox_btn-view .checkbox-btn input[type=checkbox]:focus-visible + label,
fieldset.checkbox_btn-view .choice-btn input[type=radio]:focus-visible + label,
fieldset.checkbox_btn-view .choice-btn input[type=checkbox]:focus-visible + label,
fieldset.choice_btn-view .radio-btn input[type=radio]:focus-visible + label,
fieldset.choice_btn-view .radio-btn input[type=checkbox]:focus-visible + label,
fieldset.choice_btn-view .checkbox-btn input[type=radio]:focus-visible + label,
fieldset.choice_btn-view .checkbox-btn input[type=checkbox]:focus-visible + label,
fieldset.choice_btn-view .choice-btn input[type=radio]:focus-visible + label,
fieldset.choice_btn-view .choice-btn input[type=checkbox]:focus-visible + label {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
}

.form-select:required:invalid {
  color: #cfd7d6;
}

#meinungsumfrage {
  padding: calc(var(--main-gap) / 1.5);
  padding-bottom: var(--main-gap);
  text-align: center;
  background-color: var(--bs-tertiary);
}
#meinungsumfrage .formbody {
  position: relative;
}
#meinungsumfrage .widget-textarea label {
  font-size: clamp(25px, 1.5vw, 25px + 5px);
  margin-bottom: 1rem;
}
#meinungsumfrage .widget-radio {
  margin-bottom: 0;
}
#meinungsumfrage .widget-radio legend {
  margin-bottom: 2rem;
  font-size: clamp(25px, 1.5vw, 25px + 5px);
  color: var(--bs-body-color);
}
#meinungsumfrage .widget-radio .form-check {
  display: inline-block;
  padding-left: 0;
  margin-inline: 0.5rem;
}
#meinungsumfrage .widget-radio .form-check input[type=radio] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  overflow: hidden;
  pointer-events: none;
}
#meinungsumfrage .widget-radio .form-check .form-check-label {
  display: inline-block;
  padding: 0.5rem 1.5rem;
  border: 2px solid var(--bs-primary);
  border-radius: var(--bs-border-radius);
  background-color: var(--bs-primary);
  color: var(--bs-secondary);
  cursor: pointer;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, color 0.15s ease-in-out;
  min-width: 100px;
  text-align: center;
}
#meinungsumfrage .widget-radio .form-check .form-check-label:hover {
  background-color: transparent;
  color: var(--bs-primary);
}
#meinungsumfrage .widget-radio .form-check input[type=radio]:checked + .form-check-label {
  background-color: transparent;
  color: var(--bs-primary);
}
#meinungsumfrage .widget-radio .form-check input[type=radio]:checked + .form-check-label:hover {
  background-color: transparent;
  color: var(--bs-primary);
}
#meinungsumfrage .back-btn {
  position: absolute;
  bottom: calc(-1 * var(--main-gap) / 1.5);
}
@media (max-width: 575.98px) {
  #meinungsumfrage .back-btn {
    margin-top: 1.5rem;
    text-align: center;
    width: 100%;
    position: static;
  }
}
#meinungsumfrage .back-btn .btn {
  --bs-btn-hover-color: var(--bs-primary);
}
#meinungsumfrage .alert {
  width: 100%;
  margin-bottom: 0;
  margin-top: 1.85rem;
}

.filepond--panel-root {
  background-color: transparent;
}

.filepond--root .filepond--drop-label {
  background-color: var(--bs-tertiary);
  cursor: pointer;
  margin-top: 0.5rem;
  transition: 0.3s ease-in-out;
}
.filepond--root .filepond--drop-label:hover {
  background-color: var(--bs-primary);
}
.filepond--root .filepond--drop-label label {
  color: var(--bs-white);
  transition: 0.3s ease-in-out;
  cursor: pointer;
}

.filepond--list-scroller {
  top: 22px;
}

.filepond--list {
  left: 0;
  right: 0;
}
.filepond--list .filepond--item {
  margin-inline: 0;
}

.widget-upload p.help {
  font-size: 0.75rem;
  text-align: right;
}

.widget.widget-altcha {
  --altcha-border-radius: 0;
  --altcha-checkbox-border-radius: 0;
  --altcha-border-width: 2px;
  --altcha-color-border-focus: var(--bs-primary);
  --altcha-color-border: var(--bs-primary);
  margin-top: 1rem;
  /*
  --altcha-border-width: 0;
  --altcha-max-width: none;
  --altcha-color-base: transparent;
  --altcha-checkbox-size: 20px;
  --altcha-checkbox-border-width: 0;
   */
}
.widget.widget-altcha input {
  accent-color: var(--bs-primary);
  border: 2px solid var(--bs-primary);
  appearance: none;
}
.widget.widget-altcha label {
  font-size: 0.875rem;
  margin-top: 0.05rem;
}

.event.layout_teaser {
  padding: 0.75rem;
  transition: all 0.3s ease-in-out;
}
.event.layout_teaser:hover {
  background-color: var(--bs-secondary);
}
.event.layout_teaser:not(:last-of-type) {
  border-bottom: 3px solid var(--bs-primary);
}
.mod_eventreader p.back {
  display: none;
}
.mod_eventreader .container .container {
  padding-inline: 0;
}

.presse-medien.layout_latest:not(:last-of-type) {
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 3px solid var(--bs-primary);
}

.pressespiegel.layout_latest figure, .pressespiegel.layout_latest picture {
  height: 100%;
}

.mod_newsarchive > h2 {
  display: none !important;
}

html body main .mod_newsreader h2, html body main .mod_newsreader h3, html body main .mod_newsreader h4,
html body main .mod_newsreader .h2, html body main .mod_newsreader .h3, html body main .mod_newsreader .h4 {
  font-size: 25px;
  font-weight: 600;
}
html body main .mod_newsreader *:not(.ce--headline) > h2, html body main .mod_newsreader *:not(.ce--headline) > h3, html body main .mod_newsreader *:not(.ce--headline) > h4,
html body main .mod_newsreader *:not(.ce--headline) > .h2, html body main .mod_newsreader *:not(.ce--headline) > .h3, html body main .mod_newsreader *:not(.ce--headline) > .h4 {
  margin-bottom: 1rem;
}
html body main .mod_newsreader * + h2, html body main .mod_newsreader * + h3, html body main .mod_newsreader * + h4, html body main .mod_newsreader * + .h2, html body main .mod_newsreader * + .h3, html body main .mod_newsreader * + .h4 {
  margin-top: 2rem;
}
html body main .mod_newsreader p.back {
  display: none;
}
html body main .mod_newsreader .alert, html body main .mod_newsreader .card {
  margin-block: 2rem;
}
html body main .mod_newsreader .alert:last-child, html body main .mod_newsreader .card:last-child {
  margin-bottom: 0;
}
html body main .mod_newsreader .content--element:not(.ce_rsce_head_hero) {
  margin-block: 2rem;
}
html body main .mod_newsreader .ce_rsce_teaserstripe .ce--inner.with-bg .ce--teaser-stripe .content-wrapper {
  padding: 1rem var(--main-gap);
}

.article-gallery {
  position: sticky;
  top: 175px;
}

.article-info {
  background-color: var(--bs-primary);
  color: var(--bs-secondary);
  padding: 1.5rem 2rem 1.5rem 2rem;
  position: sticky;
  top: 131px;
}
.article-info .author-img {
  position: relative;
  margin-bottom: 1.25rem;
}
.article-info .author-info {
  padding-bottom: 1rem;
  border-bottom: 2px solid var(--bs-secondary);
  margin-bottom: 0.75rem;
}
.article-info .article-meta {
  padding-bottom: 1rem;
  border-bottom: 2px solid var(--bs-secondary);
}

#articleNav {
  font-size: 16px;
}
#articleNav ul {
  max-height: 35dvh;
  overflow: auto;
}

.article-nav-content,
.article-info-content {
  width: 300px;
}
@media (max-width: 1039.98px) {
  .article-nav-content,
  .article-info-content {
    font-size: 16px;
  }
}

@media (min-width: 1040px) {
  .author-icons-overlay {
    position: absolute;
    right: 0;
    bottom: 0;
  }
}

.article-info-content {
  display: flex;
  flex-flow: row wrap;
  gap: 0.5rem;
  align-items: center;
}
.article-info-content .author-img {
  width: calc(50% - 0.5rem);
}
.article-info-content .author-img img {
  height: 100%;
  object-fit: cover;
  max-height: 80px;
}
.article-info-content .author-info {
  width: calc(50% - 0.5rem);
}
.article-info-content .article-meta {
  width: 100%;
  padding-block: 0.35rem;
  border-top: 2px solid var(--bs-primary);
  border-bottom: 2px solid var(--bs-primary);
}

@media (max-width: 1039.98px) {
  .content--element.ce_rsce_stoerer .stoerer--content .stoerer-content--inner .article-nav-content a:not(.btn) {
    display: inline !important;
  }
}

.auction-item.is-primary .card {
  --bs-card-cap-bg: var(--bs-primary);
  --bs-card-bg: var(--bs-primary);
  color: var(--bs-secondary);
}
.auction-item .card {
  --bs-card-border-width: 0;
  --bs-card-cap-bg: var(--bs-body-bg);
  --bs-card-spacer-x: 1rem;
}
.auction-item .card .card-header {
  padding: 1rem var(--bs-card-spacer-x) 1rem var(--bs-card-spacer-x);
}
.auction-item .card .card-img {
  padding-inline: var(--bs-card-spacer-x);
}
.auction-item .card .card-img .card-img-top {
  position: relative;
}
.auction-item .card .card-img .countdown-badge {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.35rem 0.5rem;
}
.auction-item .card .card-img .preview-btn {
  position: absolute;
  bottom: 0;
  right: 0;
}
.auction-item .card .card-body {
  padding: 1rem var(--bs-card-spacer-x) 2rem var(--bs-card-spacer-x);
}
.auction-item .card .card-body .auction-details-section {
  gap: 0.5rem 1rem;
}
.auction-item .card .card-footer {
  padding: 1rem var(--bs-card-spacer-x) 1rem var(--bs-card-spacer-x);
}
.is-primary .auction-item .card {
  --bs-card-cap-bg: var(--bs-primary);
  --bs-card-bg: var(--bs-primary);
  color: var(--bs-secondary);
}

.filter-buttons {
  position: relative;
  z-index: 1;
}

/* Relative Position für das Overlay */
.auction-listing {
  position: relative;
  min-height: 200px;
}

.auction-details-section {
  display: grid;
  grid-template-columns: auto 1fr; /* Erste Spalte passt sich dem Inhalt an, zweite nimmt Restplatz */
  gap: 0.5rem 0.25rem; /* Abstand: Zeilen Spalten */
  align-items: baseline;
}

.market-detail .offset-wrapper .auction-detail-box {
  margin-bottom: calc(-1 * (242px + var(--main-gap)));
}
@media (min-width: 576px) {
  .market-detail .offset-wrapper .auction-detail-box {
    margin-bottom: calc(-1 * (212px + var(--main-gap)));
  }
}
@media (min-width: 768px) {
  .market-detail .offset-wrapper .auction-detail-box {
    margin-bottom: calc(-1 * (180px + var(--main-gap)));
  }
}
@media (min-width: 1340px) {
  .market-detail .offset-wrapper .auction-detail-box {
    margin-bottom: calc(-1 * (150px + var(--main-gap)));
  }
}
.market-detail .offset-wrapper + .content--element {
  margin-top: calc(242px + var(--main-gap));
}
@media (min-width: 576px) {
  .market-detail .offset-wrapper + .content--element {
    margin-top: calc(212px + var(--main-gap));
  }
}
@media (min-width: 768px) {
  .market-detail .offset-wrapper + .content--element {
    margin-top: calc(180px + var(--main-gap));
  }
}
@media (min-width: 1340px) {
  .market-detail .offset-wrapper + .content--element {
    margin-top: calc(150px + var(--main-gap));
  }
}

@media (max-width: 1039.98px) {
  .auction-detail-box {
    font-size: 16px;
  }
}
.auction-detail-box .auction-details-section {
  white-space: nowrap;
}
.auction-detail-box .auction-details-section strong {
  text-align: right;
}
.auction-detail-box .auction-image-wrapper {
  position: relative;
  min-height: 250px;
  height: 100%;
  display: flex;
  flex-flow: column wrap;
}
.auction-detail-box .auction-image-wrapper .button-holder {
  margin-top: auto;
}
.auction-detail-box .auction-image-wrapper img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.auction-detail-box .auction-image-wrapper .button-holder, .auction-detail-box .auction-image-wrapper > .d-flex {
  position: relative;
  z-index: 2;
}
.auction-detail-box .box-footer {
  height: 235px;
}
@media (min-width: 576px) {
  .auction-detail-box .box-footer {
    height: 205px;
  }
}
@media (min-width: 768px) {
  .auction-detail-box .box-footer {
    height: 180px;
  }
}
@media (min-width: 1340px) {
  .auction-detail-box .box-footer {
    height: 150px;
  }
}
.auction-detail-box .box-footer i {
  width: 27px;
}
.auction-detail-box .box-footer i.fa-check {
  font-size: 0.65rem;
}
.auction-detail-box .box-footer i.fa-hourglass {
  font-size: 0.95rem;
}

.pachtrechner-widget .pachtrechner-badge {
  text-align: right;
  margin-top: calc(-1 * var(--main-gap));
  margin-bottom: calc(-1 * var(--main-gap) / 2);
  top: calc(-1 * var(--main-gap));
  z-index: 10;
  right: 3rem;
}
@media (min-width: 576px) {
  .pachtrechner-widget .pachtrechner-badge {
    position: absolute;
    margin-block: 0;
  }
}
.pachtrechner-widget .pachtrechner-badge svg {
  width: 150px;
}
@media (min-width: 576px) {
  .pachtrechner-widget .pachtrechner-badge {
    right: 4rem;
  }
}
@media (min-width: 768px) {
  .pachtrechner-widget .pachtrechner-badge {
    right: 50%;
    top: calc(var(--main-gap) * -1);
    transform: translate(150%, -25%);
  }
  .pachtrechner-widget .pachtrechner-badge svg {
    width: 170px;
  }
}
@media (min-width: 1040px) {
  .pachtrechner-widget .pachtrechner-badge {
    top: calc(-1 * var(--main-gap) * 2);
    transform: none;
    right: 0;
  }
  .pachtrechner-widget .pachtrechner-badge svg {
    width: auto;
  }
}
@media (min-width: 1200px) {
  .pachtrechner-widget .pachtrechner-badge {
    top: calc(-1 * var(--main-gap) / 2);
  }
}
@media (min-width: 1340px) {
  .pachtrechner-widget .pachtrechner-badge {
    right: calc(-1 * var(--main-gap));
  }
}

@media (max-width: 575.98px) {
  .pachtrechner-widget.is-box .js-pachtrechner-check-btn,
  .pachtrechner-widget.is-box .js-pachtrechner-v2-submit {
    width: 100%;
  }
}

.pachtrechnerBar .progress {
  background-color: var(--bs-secondary);
  position: relative; /* Für die Positionierung des Indikators */
  overflow: visible; /* Damit der Indikator außerhalb sichtbar ist */
  margin-block: 0.5rem 1rem;
}
.pachtrechnerBar .progress-bar {
  background-color: var(--bs-primary);
  position: relative; /* Für die Positionierung des Indikators */
  transition: width 0.6s ease; /* Hinzugefügte Transition */
}
.pachtrechnerBar .progress-bar[style*="width: 0%"], .pachtrechnerBar .progress-bar[style*="width: 1%"], .pachtrechnerBar .progress-bar[style*="width: 2%"], .pachtrechnerBar .progress-bar[style*="width: 3%"], .pachtrechnerBar .progress-bar[style*="width: 4%"], .pachtrechnerBar .progress-bar[style*="width: 5%"] { /* Bis ca. 5% Breite sollte der Pfeil am Anfang bleiben*/ }
.pachtrechnerBar .progress-bar[style*="width: 0%"] + .percent-indicator, .pachtrechnerBar .progress-bar[style*="width: 1%"] + .percent-indicator, .pachtrechnerBar .progress-bar[style*="width: 2%"] + .percent-indicator, .pachtrechnerBar .progress-bar[style*="width: 3%"] + .percent-indicator, .pachtrechnerBar .progress-bar[style*="width: 4%"] + .percent-indicator, .pachtrechnerBar .progress-bar[style*="width: 5%"] + .percent-indicator {
  left: -24px; /* Zentriert am Anfang */
  right: auto;
}
.pachtrechnerBar .percent-indicator {
  position: absolute;
  right: -24px; /* Hälfte der Breite des SVGs, um es am Ende zu zentrieren */
  top: -60px; /* Etwas oberhalb der Leiste, Höhe des SVGs + kleiner Abstand */
  z-index: 10;
  width: 48px; /* Breite des SVGs */
  height: 48px; /* Höhe des SVGs */
}

#pachtrechner .modal-body {
  padding: 0;
}
#pachtrechner .modal-body .container-wide, #pachtrechner .modal-body .container {
  padding-inline: 0;
}
#pachtrechner .modal-body .pachtrechner-result {
  padding: 1rem;
}
#pachtrechner .modal-body .pachtrechner-result .result-footer {
  margin-inline: -1rem;
  margin-bottom: -1rem;
  padding-inline: 1rem;
}
@media (min-width: 768px) {
  #pachtrechner .modal-body .pachtrechner-result {
    padding: 2rem;
  }
  #pachtrechner .modal-body .pachtrechner-result .result-footer {
    margin-inline: -2rem;
    margin-bottom: -2rem;
    padding-inline: 2rem;
  }
}
#pachtrechner .modal-body .position-relative.col-sm-10 {
  width: 100%;
}
#pachtrechner .modal-body .pull-up {
  margin-top: 0 !important;
}
#pachtrechner .modal-body *[data-animation] {
  opacity: 1 !important;
  animation-name: none !important;
  visibility: visible !important;
}

@media (min-width: 1200px) and (max-width: 1339.98px) {
  .pachtrechner-widget.widget {
    max-width: 400px;
  }
}

.auction-slider-element-wrapper .swiper-wrapper {
  padding-bottom: 1px;
}
.auction-slider-element-wrapper .auction-swiper-slider {
  position: relative;
}
@media (max-width: 1039.98px) {
  .auction-slider-element-wrapper .auction-swiper-slider:has(.is-primary) [class*=swiper-button]:after {
    color: var(--bs-tertiary);
  }
}
.auction-slider-element-wrapper .auction-swiper-slider.single {
  display: inline-block;
  max-width: 330px;
  margin-inline: auto;
}
.auction-slider-element-wrapper .auction-swiper-slider.single .swiper-button-prev {
  left: -25px;
}
@media (min-width: 576px) {
  .auction-slider-element-wrapper .auction-swiper-slider.single .swiper-button-prev {
    left: -45px;
  }
}
@media (min-width: 768px) {
  .auction-slider-element-wrapper .auction-swiper-slider.single .swiper-button-prev {
    left: -70px;
  }
}
.auction-slider-element-wrapper .auction-swiper-slider.single .swiper-button-next {
  right: -25px;
}
@media (min-width: 576px) {
  .auction-slider-element-wrapper .auction-swiper-slider.single .swiper-button-next {
    right: -45px;
  }
}
@media (min-width: 768px) {
  .auction-slider-element-wrapper .auction-swiper-slider.single .swiper-button-next {
    right: -70px;
  }
}
.auction-slider-element-wrapper .auction-swiper-slider.single .swiper {
  text-align: left;
}

.swiper-button-prev, .swiper-button-next {
  padding: 0;
  width: auto;
  height: auto;
  color: currentColor;
  background-color: transparent;
  box-shadow: none;
}
.swiper-button-prev:after, .swiper-button-next:after {
  font-size: 30px;
  color: currentColor;
}
@media (min-width: 576px) {
  .swiper-button-prev:after, .swiper-button-next:after {
    font-size: 50px;
  }
}

.swiper-button-prev:after {
  content: "\e005";
}

.swiper-button-next:after {
  content: "\e000";
}

.slider-controls {
  display: inline-flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}
.slider-controls .slider-pagination {
  line-height: 0;
}
.slider-controls .slider-pagination .swiper-pagination-bullet {
  width: 40px;
  height: 8px;
  background-color: transparent;
  border: 1px solid currentColor;
  border-radius: 0;
  transition: 0.15s ease-in-out;
}
.slider-controls .slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: currentColor;
}
.slider-controls button {
  background-color: transparent;
  padding: 0;
  border: 0;
  color: currentColor;
  font-size: 1.5rem;
  transition: 0.15s ease-in-out;
}
.slider-controls button:hover {
  color: var(--bs-link-hover-color);
}

div.ce_auction_element:empty {
  display: none;
}

.filter-loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100dvh; /* Dynamische Viewport-Höhe ist oft besser */
  background-color: rgba(0, 0, 0, 0.35); /* Etwas dezenter vielleicht */
  display: none; /* Standardmäßig ausgeblendet */
  justify-content: center;
  align-items: center;
  z-index: 1050; /* Über den meisten anderen Elementen, aber unter Modals, falls nötig */
}

.filter-spinner {
  /* Ggf. vorhandene Styles für Größe (width, height) hier belassen oder anpassen */
  /* style="width: 50px; height: 50px;" ist aktuell inline im SVG-Tag */
  animation: caeliAuctionSpin 1.8s cubic-bezier(0.25, 0.1, 0.25, 1) infinite;
}

@keyframes caeliAuctionSpin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.filter-spinner path {
  fill: #fff;
}

.popover {
  max-width: 380px;
  --bs-popover-border-color: var(--bs-primary);
  --bs-popover-bg: var(--bs-tertiary);
  --bs-popover-header-bg: var(--bs-primary);
  --bs-popover-header-color: var(--bs-secondary);
}
@media (max-width: 768px) {
  .popover {
    max-width: 280px;
    --bs-popover-body-padding-x: 0.5rem;
    --bs-popover-body-padding-y: 0.5rem;
  }
}

/* Popover Arrow Primary Color - Pfeil zeigt nach oben */
/* Bei Bottom-Placement: Popover ist unten, Pfeil zeigt nach oben */
.bs-popover-bottom .popover-arrow::after,
.bs-popover-auto[data-popper-placement=bottom] .popover-arrow::after {
  border-bottom-color: var(--bs-primary) !important;
}

/* Mobile Popovers: Pfeil verstecken da fixe Positionierung */
@media (max-width: 768px) {
  .popover .popover-arrow {
    display: none !important;
  }
}
h3.popover-header {
  margin-bottom: 0 !important;
  font-size: 25px;
  font-weight: normal;
}
@media (max-width: 768px) {
  h3.popover-header {
    font-size: 20px;
  }
}
h3.popover-header:has(.tutorial-close-btn) {
  padding-right: 0.5rem;
}

.popover-body {
  --bs-popover-body-padding-x: .75rem;
  --bs-popover-body-padding-y: .75rem;
  font-size: var(--bs-body-font-size);
  line-height: 1.3;
}
@media (max-width: 768px) {
  .popover-body {
    --bs-popover-body-padding-x: 0.5rem;
    --bs-popover-body-padding-y: 0.5rem;
    font-size: 14px;
    line-height: 1.2;
  }
}
.popover-body i {
  font-size: 0.875rem;
  text-align: center;
  width: 35px;
}
.popover-body i.fa-check {
  font-size: 0.75rem;
}

#map {
  min-height: 600px;
  height: calc(100vh - 130px);
}
@media (min-width: 768px) {
  #map {
    height: 80vh;
  }
}
#map div[style*="width: 9px"],
#map div[style*="width:9px"],
#map div[style*="height: 9px"],
#map div[style*="height:9px"] {
  min-width: 20px !important;
  min-height: 20px !important;
  width: 20px !important;
  height: 20px !important;
  border: 3px solid white !important;
  background-color: yellow !important;
  border-radius: 50% !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  margin: -8px 0 0 -7px !important;
}
#map div[style*="width: 9px"]:hover,
#map div[style*="width:9px"]:hover,
#map div[style*="height: 9px"]:hover,
#map div[style*="height:9px"]:hover {
  transform: scale(1.3) !important;
  border-color: white !important;
  z-index: 1000 !important;
}

@media (max-width: 768px) {
  #button-wrapper {
    white-space: nowrap;
    justify-content: space-between;
  }
  #button-wrapper .btn {
    padding: 0.5rem;
  }
}
#controls {
  --bs-card-border-width: 0;
  position: absolute;
  width: 100vw;
  left: 0;
  top: 2.5rem;
  z-index: 5;
  transform: scale(0.7);
}
@media (min-width: 768px) {
  #controls {
    width: 500px;
    left: 2rem;
    top: 5rem;
    transform: none;
  }
}
#controls .card-header {
  background-color: var(--bs-primary);
  color: white;
  font-size: 25px;
}
#controls .card-body {
  background-color: var(--bs-secondary);
}
#controls .form-label {
  font-weight: 500;
  margin-bottom: 0.5rem;
}
#controls > .card-body > div:has(#place-autocomplete) {
  position: relative;
}

.autocomplete-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background-color: var(--bs-tertiary) !important;
  border: var(--bs-border-width) solid var(--bs-border-color) !important;
  border-top: none !important;
  border-radius: 0 0 var(--bs-border-radius) var(--bs-border-radius) !important;
  box-shadow: var(--bs-box-shadow) !important;
  z-index: 1000 !important;
  max-height: 200px;
  overflow-y: auto;
}
@media (max-width: 768px) {
  .autocomplete-dropdown {
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
  }
}

.autocomplete-item {
  padding: 0.35rem 0.75rem !important;
  color: var(--bs-body-color) !important;
  background-color: var(--bs-tertiary) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
  cursor: pointer !important;
  font-size: var(--bs-body-font-size) !important;
  display: flex;
  align-items: center;
}
.autocomplete-item:hover, .autocomplete-item.selected {
  background-color: var(--bs-primary) !important;
  color: white !important;
}
.autocomplete-item:last-child {
  border-bottom: none !important;
}

.autocomplete-icon {
  width: 16px;
  height: 16px;
  margin-right: 8px;
  opacity: 0.6;
}

.autocomplete-message {
  padding: 0.5rem 0.75rem !important;
  color: var(--bs-body-color) !important;
  background-color: var(--bs-tertiary) !important;
  font-size: var(--bs-body-font-size) !important;
  display: flex;
  align-items: center;
}
.autocomplete-message .autocomplete-icon {
  color: var(--bs-warning) !important;
  opacity: 0.8;
}

.map-controls .form-check.form-switch {
  padding-left: 0;
}
.map-controls .form-check.form-switch .form-check-input {
  width: 54px;
  height: 24px;
  background-color: var(--bs-secondary);
  border: none;
  border-radius: 12px;
  margin: 0;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23113634'/%3E%3C/svg%3E");
  background-position: left center;
  background-size: contain;
  background-repeat: no-repeat;
}
.map-controls .form-check.form-switch .form-check-input:focus {
  box-shadow: none;
  background-color: var(--bs-secondary);
}
.map-controls .form-check.form-switch .form-check-input:checked {
  background-color: var(--bs-secondary);
  border-color: var(--bs-secondary);
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23113634'/%3E%3C/svg%3E");
  background-position: right center;
}
.map-controls .form-check.form-switch .form-check-input:checked:focus {
  background-color: var(--bs-secondary);
  border-color: var(--bs-secondary);
}
.map-controls .form-check.form-switch .form-check-label {
  font-size: 18px;
  margin-left: 12px;
  line-height: 24px;
}

.mapboxgl-ctrl-top-right .mapboxgl-ctrl-group {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}
.mapboxgl-ctrl-top-right .mapboxgl-ctrl-group button {
  width: 40px !important;
  height: 40px !important;
  margin-bottom: 8px !important;
  background-color: var(--bs-secondary) !important;
  border: none !important;
  border-radius: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: transform 0.15s ease-in-out !important;
}
.mapboxgl-ctrl-top-right .mapboxgl-ctrl-group button .mapboxgl-ctrl-icon {
  background-color: var(--bs-secondary) !important;
  -webkit-mask-size: 20px 20px !important;
  mask-size: 20px 20px !important;
}
.mapboxgl-ctrl-top-right .mapboxgl-ctrl-group button:hover {
  transform: scale(1.05) !important;
}

.gm-bundled-control {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  display: flex !important;
  flex-direction: column !important;
  position: absolute !important;
  top: 10px !important;
  z-index: 1000 !important;
}
.gm-bundled-control > div {
  display: flex !important;
  flex-direction: column !important;
}
.gm-bundled-control > div > div {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  margin-bottom: 2px !important;
}
.gm-bundled-control button {
  width: 40px !important;
  height: 40px !important;
  margin: 0 0 2px 0 !important;
  background-color: var(--bs-secondary) !important;
  border: none !important;
  border-radius: 0 !important;
  display: block !important;
  box-shadow: rgba(0, 0, 0, 0.3) 0px 1px 4px -1px !important;
  transition: transform 0.15s ease-in-out !important;
}
.gm-bundled-control button img {
  filter: brightness(0) saturate(100%) invert(19%) sepia(18%) saturate(1009%) hue-rotate(124deg) brightness(96%) contrast(91%) !important;
}
.gm-fullscreen-control,
button[aria-label*=Vollbild],
button[title*=Vollbild],
button[aria-label*=Vollbildansicht] {
  display: none !important;
}

.gm-bundled-control-on-bottom {
  margin-top: 100px !important;
}

button[aria-label=Vergrößern] {
  top: -5px !important;
}

menu li:has(button[aria-label=Vergrößern]),
menu li:has(button[aria-label=Verkleinern]) {
  display: none !important;
}

@media (max-width: 767px) {
  .gmnoprint[data-control-width="40"][data-control-height="81"],
  .gmnoprint.gm-bundled-control.gm-bundled-control-on-bottom {
    display: none !important;
  }
}
.consent-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 10;
}
.consent-overlay::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-image: url(/files/base/layout/css/_caeliRelaunch/dist/fonts/overlay-map-bg.d5eaa63d7c21acece738.jpg);
  background-size: cover;
  background-position: center;
  filter: blur(2px);
  z-index: 1;
}
.consent-overlay::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.6);
  z-index: 2;
}

.consent-content {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: white;
  padding: 2rem;
  border-radius: 8px;
  text-align: center;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
  z-index: 3;
  max-width: 400px;
  width: 90%;
}
.consent-content h4 {
  margin-bottom: 1rem;
  color: #333;
}
.consent-content p {
  margin-bottom: 1.5rem;
  color: #666;
}

@media (max-width: 768px) {
  .popover {
    position: fixed !important;
    bottom: 40px !important;
    left: 10px !important;
    right: 10px !important;
    top: auto !important;
    transform: none !important;
    margin: 0 !important;
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
  }
}

.tutorial-buttons {
  text-align: right;
}

.tutorial-close-btn {
  border: none;
  background: none;
  font-size: 1.5rem;
  opacity: 1;
  padding: 0;
  margin: 0;
  line-height: 1;
  width: auto;
  height: auto;
  color: var(--bs-secondary);
}

.tutorial-title {
  display: inline-block;
  margin-right: 8px;
}

.tutorial-polygon-popover {
  position: absolute !important;
  top: 50% !important;
  right: 20px !important;
  transform: translateY(-50%) !important;
  z-index: 1000 !important;
}

#loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--bs-body-bg);
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
}

.loading-content {
  text-align: center;
  margin-inline: auto;
}
.loading-content h2 {
  margin-bottom: var(--main-gap) !important;
  color: currentColor;
  font-weight: 600;
  padding-inline: 1rem;
  line-height: 1.1;
}

.landingpage-overview-map-wrapper,
#mapContainer .map-container,
.map-container {
  position: relative;
  width: 100%;
  display: block;
}

.loading-spinner--overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 1rem;
  background: rgba(255, 255, 255, 0.85);
  z-index: 5;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  --spinner-color: var(--bs-primary);
  color: var(--spinner-color);
  pointer-events: auto;
}
.loading-spinner--overlay.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.loading-spinner--overlay .loading-message {
  color: var(--bs-primary);
  font-weight: 600;
}

.loading-spinner {
  margin-bottom: 1.5rem;
  text-align: center;
  --spinner-color: #DEEEC6;
  color: var(--spinner-color);
}
.loading-spinner svg {
  color: currentColor;
}

@keyframes map-spinner-rotate {
  to {
    transform: rotate(360deg);
  }
}
@media (min-width: 768px) {
  .loading-spinner svg {
    display: inline-block;
    width: 150px;
    height: 150px;
    animation: map-spinner-rotate 3.6s linear infinite !important;
    transform-origin: 50% 50%;
    transform-box: fill-box;
  }
  .loading-spinner .gif-animation {
    display: none;
  }
  .spinner-bar {
    fill: currentColor;
  }
}
@media (max-width: 767px) {
  .loading-spinner svg {
    display: none;
  }
  .loading-spinner .gif-animation {
    display: inline-block;
    width: 150px;
    height: 150px;
    margin: 0 auto;
  }
}
.loading-percentage {
  font-size: 30px;
  color: currentColor;
  margin-bottom: 2rem;
  padding-inline: 1rem;
  line-height: 1.1;
  min-height: 66px;
}
@media (min-width: 768px) {
  .loading-percentage {
    font-size: 50px;
  }
}
@media (max-width: 767px) {
  .loading-percentage {
    display: none;
  }
}

.loading-message {
  font-size: 30px;
  color: currentColor;
  margin-top: var(--main-gap);
  padding-inline: 1rem;
  line-height: 1.1;
  min-height: 66px;
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
}
.loading-message.loading-message-animate {
  animation: loading-message-slide 1.8s ease forwards;
}
@media (prefers-reduced-motion: reduce) {
  .loading-message.loading-message-animate {
    animation: none;
  }
}
@media (min-width: 768px) {
  .loading-message {
    font-size: 50px;
  }
}

@keyframes loading-message-slide {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  30% {
    opacity: 1;
    transform: translateY(0);
  }
  70% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0.2;
    transform: translateY(-12px);
  }
}
.spinner-bar {
  transition: fill 0.3s ease;
  fill: currentColor;
}

.area-label-popup-custom {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  pointer-events: none !important;
}
.area-label-popup-custom .mapboxgl-popup-content {
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
}
.area-label-popup-custom .mapboxgl-popup-tip {
  display: none !important;
}

.area-label-custom {
  background: #ffffff;
  color: #113634;
  border-radius: 24px;
  padding: 6px 12px;
  font-weight: 600;
  font-style: normal;
  font-size: 0.9rem;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18);
  border: 1px solid rgba(0, 0, 0, 0.12);
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  pointer-events: none;
  position: relative;
  text-align: center;
  white-space: nowrap;
}
.area-label-custom::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -10px;
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 10px solid #ffffff;
  filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.12));
}
.area-label-custom.area-label-theme-sh {
  color: #00563d;
}

.area-label-fallback {
  background: #ffffff;
  color: #113634;
}

gmp-advanced-marker {
  margin-top: 10px;
}

.interactive-svg-links li:has([class*=btn-link]):not(:last-child) {
  margin-bottom: 0.7rem;
}

.interactive-svg-figure svg {
  width: 100%;
}

html body .content--element.ce_rsce_stoerer {
  --stoerer-padding-inner: .75rem;
}

.btn {
  --bs-btn-border-radius: 0;
  --bs-btn-border-width: 3px;
  --bs-btn-disabled-color: var(--bs-btn-color);
  border-radius: var(--bs-btn-border-radius);
}
.btn.btn-primary {
  --bs-btn-hover-bg: transparent;
  --bs-btn-border-color: var(--bs-primary);
  --bs-btn-hover-color: var(--bs-primary);
  --bs-btn-color: var(--bs-secondary);
}
.btn.btn-outline-primary {
  --bs-btn-hover-color: var(--bs-secondary);
}
.btn.btn-outline-white {
  --bs-btn-active-color: var(--bs-primary);
}
.btn.btn-outline-white.active {
  --bs-btn-color: var(--bs-btn-active-color);
}
.btn.btn-secondary {
  --bs-btn-hover-bg: transparent;
  --bs-btn-color: var(--bs-primary);
  --bs-btn-hover-color: var(--bs-secondary);
}
.btn.btn-secondary:disabled {
  --bs-btn-disabled-color: rgba(var(--bs-primary-rgb), 0.4);
  --bs-btn-disabled-border-color: rgba(var(--bs-primary-rgb), 0.3);
  opacity: 0.7;
}
.btn.btn-outline-secondary {
  --bs-btn-hover-color: var(--bs-primary);
}
.btn.btn-tertiary {
  --bs-btn-hover-bg: transparent;
  --bs-btn-border-color: var(--bs-tertiary);
  --bs-btn-hover-color: var(--bs-tertiary);
  --bs-btn-color: var(--bs-primary);
}
.btn.with-arrow {
  gap: 0.5rem;
}
@media (min-width: 768px) {
  .btn.with-arrow {
    gap: 0.85rem;
  }
}
.btn.with-arrow:hover:after {
  padding-left: 0.35rem;
}
.btn.with-arrow:after {
  font-family: "Font Awesome Kit";
  content: "\e000";
  transition: all 0.3s ease-in-out;
}
.btn.btn-link {
  font-weight: 600;
  text-align: left;
}
.btn.btn-link:after {
  position: relative;
  top: 1px;
}
@media (max-width: 575.98px) {
  .btn.btn-link {
    display: inline;
  }
  .btn.btn-link:after {
    margin-left: 0.5rem;
    display: inline;
  }
}
.btn.btn-sm {
  --bs-btn-padding-bottom: .35rem;
}
.btn.btn-lg {
  --bs-btn-padding-left: 1rem;
  --bs-btn-padding-right: 1rem;
  --bs-btn-font-size: 20px;
  border-width: 3px;
  border-radius: 48px;
  line-height: 1.1;
  padding-block: 0.75rem;
}
.btn.btn-lg.with-arrow {
  --bs-btn-padding-top: 0rem;
  --bs-btn-padding-bottom: 0rem;
  gap: 0.5rem;
}
.btn.btn-lg:after {
  font-family: "Font Awesome Kit";
  content: "\e001";
  font-size: 32px;
}
.btn.btn-xl {
  --bs-btn-padding-left: .75rem;
  --bs-btn-padding-right: .75rem;
  --bs-btn-font-size: 20px;
  border-width: 3px;
  border-radius: 48px;
}
@media (min-width: 768px) {
  .btn.btn-xl {
    --bs-btn-padding-left: 1rem;
    --bs-btn-padding-right: 1rem;
    border-width: 4px;
    border-radius: 48px;
    --bs-btn-font-size: 25px;
  }
}
.btn.btn-xl.with-arrow:after {
  font-family: "Font Awesome Kit";
  content: "\e001";
  font-size: 32px;
}
@media (min-width: 768px) {
  .btn.btn-xl.with-arrow:after {
    font-size: 45px;
  }
}

p a.btn.btn-link, .interactive-svg-links a.btn.btn-link {
  font-weight: 400;
}

.btn-close {
  position: absolute;
  right: 1rem;
  top: 1rem;
  z-index: 10;
  border: 3px solid currentColor;
  opacity: 1;
  transition: all 0.15s ease-in-out;
}

main a:not(.btn, .text-decoration-none, [class*=ctrl]):not(:has(img, svg)), footer a:not(.btn, .text-decoration-none, [class*=ctrl]):not(:has(img, svg)) {
  text-decoration: none;
  background-image: linear-gradient(to right, currentColor, currentColor);
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: 0 1px; /* Anfangs keine Unterstreichung */
  transition: all 0.3s;
}
main a:not(.btn, .text-decoration-none):not(:has(img, svg)):hover, footer a:not(.btn, .text-decoration-none):not(:has(img, svg)):hover {
  background-size: 100% 1px; /* Unterstreichung beim Hovern */
}
main p a, main label a, footer p a, footer label a {
  color: var(--bs-tertiary);
}

main ul li a {
  color: var(--bs-tertiary);
}

p + ul, p + ol {
  margin-top: 1rem;
}

@media (max-width: 767.98px) {
  html body p:not(:last-child) {
    margin-bottom: 0.5rem;
  }
}

main .content--element ul:not([class], [role]),
main .content--element ul[class*=big-dots] {
  list-style-type: none;
  padding: 0;
}
main .content--element ul:not([class], [role]) > li,
main .content--element ul[class*=big-dots] > li {
  position: relative;
  padding-left: 32px;
}
main .content--element ul:not([class], [role]) > li:not(:last-child),
main .content--element ul[class*=big-dots] > li:not(:last-child) {
  margin-bottom: 0.875rem;
}
main .content--element ul:not([class], [role]) > li:before,
main .content--element ul[class*=big-dots] > li:before {
  font-family: "Font Awesome Kit";
  content: "\e007";
  position: absolute;
  color: currentColor;
  left: 0;
  top: 4px;
  font-size: 0.9375rem;
}
main .content--element ul:not([class], [role]) > li a,
main .content--element ul[class*=big-dots] > li a {
  text-decoration: none;
}

ol li:not(:last-child) {
  margin-bottom: 1rem;
}

ul.list-arrow {
  list-style-type: none;
  padding: 0px;
  margin: 0px;
}
ul.list-arrow > li {
  position: relative;
  padding-left: 28px;
}
ul.list-arrow > li:not(:last-child) {
  margin-bottom: 8px;
}
ul.list-arrow > li:before {
  font-family: "Font Awesome Kit";
  content: "\e00e";
  position: absolute;
  padding-right: 0.5rem;
  color: currentColor;
  left: 0;
  top: 2px;
  font-size: 16px;
}
ul.list-arrow > li a {
  text-decoration: none;
  color: currentColor;
  display: inline;
}

ul.list-check > li {
  padding-left: 45px;
}
ul.list-check > li:not(:last-child) {
  margin-bottom: 20px;
}
ul.list-check > li:before {
  font-family: "Font Awesome Kit";
  content: "\e008";
  position: absolute;
  padding-right: 0.625rem;
  color: var(--bs-tertiary);
  left: 0;
  top: -4px;
  font-size: 1.75rem;
}
ul.list-check > li.is-invalid:before {
  content: "\e010";
}
ul.list-check > li.is-danger:before {
  color: var(--bs-danger);
}
ul.list-check > li.is-warning:before {
  color: var(--bs-warning);
}

@media (min-width: 1040px) {
  .list-2-col {
    display: grid;
    grid-template-columns: max-content max-content;
    grid-auto-flow: column;
    grid-template-rows: repeat(2, auto);
    gap: 0.5rem 2rem;
  }
}
li.active a {
  background-size: 100% 1px !important;
}

figcaption, .figcaption {
  padding-top: 0.5rem;
  font-size: 16px;
  text-align: left;
}

@media (min-width: 1040px) {
  .ce--headline.is-quote:last-child {
    margin-bottom: 0;
  }
}
.ce--headline.is-quote:not(:last-child) {
  margin-bottom: 1rem;
}
.ce--headline.is-quote > span.ce--subline.ce--subline {
  font-size: 1rem;
  margin-top: 1rem;
}
.ce--headline.is-quote > *:not([class*=ce--]) {
  font-style: italic;
  font-weight: 300;
}

p + h1,
p + h2,
p + h3,
p + h4,
p + h5,
p + h6,
p + .h1,
p + .h2,
p + .h3,
p + .h4,
p + .h5,
p + .h6 {
  margin-top: 1.75rem;
}

.badge {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.badge.badge-sm {
  min-height: 36px;
  font-size: 16px;
}

@media (min-width: 1040px) {
  .step-content-wrapper .step--headline:has(+ .step-desc-wrapper) {
    max-width: 55%;
  }
}

.small-subline .ce--subline {
  font-size: var(--bs-body-font-size) !important;
}
.small-subline h2 + .ce--subline {
  margin-top: 1.5rem !important;
}

p small:first-child:last-child {
  display: block;
  line-height: 1.5;
}

.special-uk-element .ce--headline.hl-h2 {
  margin-bottom: 1rem;
}
.special-uk-element p {
  line-height: 1.1;
}

@media (max-width: 1039.98px) {
  h1 br, .h1 br, h2 br, .h2 br, h3 br, .h3 br {
    display: none;
  }
}

h2 a, .h2 a, h3 a, .h3 a {
  background: none !important;
}

.text-lg {
  hyphens: auto;
}

svg {
  max-width: 100%;
}

.ce--headline:has([class*=bg-]) {
  display: block;
}
.ce--headline:has([class*=bg-]) *[class*=bg-] {
  display: inline-block;
  padding: 0.5rem 1rem;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.ce--stoerer:hover .stoerer-trigger > svg {
  transform: scale(1.2);
}

.has-pull-up-half-compensation {
  padding-bottom: var(--pull-up-half-compensation, var(--main-gap)) !important;
}

[class*=pull-] {
  z-index: 5 !important;
  position: relative;
}

.content--element:has([class*=pull]) {
  z-index: 5 !important;
}

.pull-down {
  margin-bottom: calc(-1 * var(--main-gap) * 2) !important;
}

.pull-up {
  margin-top: calc(-1 * var(--main-gap) * 2) !important;
}

.pull-up-half {
  --pull-up-half-offset: calc(var(--main-gap) * 2);
  margin-top: calc(-1 * var(--pull-up-half-offset)) !important;
}

[class*=pull-down].article-content {
  margin-top: var(--main-gap);
}

[class*=pull-up].article-content {
  margin-bottom: var(--main-gap);
}

.pull-down.pull-down-large {
  margin-bottom: calc(var(--main-gap) * -1 * 5) !important;
}

.mod_article:has(.content--element:last-child .pull-down, .content--element:last-child.pull-down) + .mod_article > .article-content {
  padding-top: calc(var(--main-gap) * 2);
}

.mod_article:has(+ .mod_article .pull-up, + .mod_article .pull-up-half) .article-content {
  padding-bottom: calc(var(--main-gap) * 1);
}

.mod_article > .article-content .content--element.content--element:has(+ .content--element.pull-up, + .content--element.pull-up-half) {
  padding-bottom: calc(var(--main-gap) * 2);
}

.content--element.content--element.content--element.pull-down + .content--element.content--element:not(.ce_rsce_headimagelogo) {
  padding-top: calc(var(--main-gap) * 3);
}

.mod_article:has(> .article-content.pull-down) + .mod_article > .article-content > .content--element:first-child {
  padding-top: calc(var(--main-gap) * 3);
}

.mod_article:has(.pull-down.pull-down-large) + .mod_article > .article-content > .content--element:first-child {
  padding-top: var(--main-gap);
}
@media (min-width: 576px) {
  .mod_article:has(.pull-down.pull-down-large) + .mod_article > .article-content > .content--element:first-child {
    padding-top: calc(var(--main-gap) * 5);
  }
}

@media (min-width: 0) {
  .pull-down-xs {
    margin-bottom: calc(-1 * var(--main-gap) * 2) !important;
  }
  .pull-up-xs {
    margin-top: calc(-1 * var(--main-gap) * 2) !important;
  }
  .pull-up-half-xs {
    --pull-up-half-offset: calc(var(--main-gap) * 2);
    margin-top: calc(-1 * var(--pull-up-half-offset)) !important;
  }
  .mod_article:has(+ .mod_article .pull-up-half-xs) .article-content {
    padding-bottom: calc(var(--main-gap) * 1);
  }
  .mod_article > .article-content .content--element.content--element:has(+ .content--element.pull-up-half-xs) {
    padding-bottom: calc(var(--main-gap) * 2);
  }
  .mod_article:has(.content--element:last-child .pull-down-xs, .content--element:last-child.pull-down-xs) + .mod_article > .article-content {
    padding-top: calc(var(--main-gap) * 2);
  }
  .mod_article:has(.content--element:last-child .pull-up-xs, .content--element:last-child.pull-up-xs, .content--element:last-child .pull-up-half-xs, .content--element:last-child.pull-up-half-xs) .article-content {
    padding-bottom: calc(var(--main-gap) * 2);
  }
}
@media (min-width: 576px) {
  .pull-down-sm {
    margin-bottom: calc(-1 * var(--main-gap) * 2) !important;
  }
  .pull-up-sm {
    margin-top: calc(-1 * var(--main-gap) * 2) !important;
  }
  .pull-up-half-sm {
    --pull-up-half-offset: calc(var(--main-gap) * 2);
    margin-top: calc(-1 * var(--pull-up-half-offset)) !important;
  }
  .mod_article:has(+ .mod_article .pull-up-half-sm) .article-content {
    padding-bottom: calc(var(--main-gap) * 1);
  }
  .mod_article > .article-content .content--element.content--element:has(+ .content--element.pull-up-half-sm) {
    padding-bottom: calc(var(--main-gap) * 2);
  }
  .mod_article:has(.content--element:last-child .pull-down-sm, .content--element:last-child.pull-down-sm) + .mod_article > .article-content {
    padding-top: calc(var(--main-gap) * 2);
  }
  .mod_article:has(.content--element:last-child .pull-up-sm, .content--element:last-child.pull-up-sm, .content--element:last-child .pull-up-half-sm, .content--element:last-child.pull-up-half-sm) .article-content {
    padding-bottom: calc(var(--main-gap) * 2);
  }
}
@media (min-width: 768px) {
  .pull-down-md {
    margin-bottom: calc(-1 * var(--main-gap) * 2) !important;
  }
  .pull-up-md {
    margin-top: calc(-1 * var(--main-gap) * 2) !important;
  }
  .pull-up-half-md {
    --pull-up-half-offset: calc(var(--main-gap) * 2);
    margin-top: calc(-1 * var(--pull-up-half-offset)) !important;
  }
  .mod_article:has(+ .mod_article .pull-up-half-md) .article-content {
    padding-bottom: calc(var(--main-gap) * 1);
  }
  .mod_article > .article-content .content--element.content--element:has(+ .content--element.pull-up-half-md) {
    padding-bottom: calc(var(--main-gap) * 2);
  }
  .mod_article:has(.content--element:last-child .pull-down-md, .content--element:last-child.pull-down-md) + .mod_article > .article-content {
    padding-top: calc(var(--main-gap) * 2);
  }
  .mod_article:has(.content--element:last-child .pull-up-md, .content--element:last-child.pull-up-md, .content--element:last-child .pull-up-half-md, .content--element:last-child.pull-up-half-md) .article-content {
    padding-bottom: calc(var(--main-gap) * 2);
  }
}
@media (min-width: 1040px) {
  .pull-down-lg {
    margin-bottom: calc(-1 * var(--main-gap) * 2) !important;
  }
  .pull-up-lg {
    margin-top: calc(-1 * var(--main-gap) * 2) !important;
  }
  .pull-up-half-lg {
    --pull-up-half-offset: calc(var(--main-gap) * 2);
    margin-top: calc(-1 * var(--pull-up-half-offset)) !important;
  }
  .mod_article:has(+ .mod_article .pull-up-half-lg) .article-content {
    padding-bottom: calc(var(--main-gap) * 1);
  }
  .mod_article > .article-content .content--element.content--element:has(+ .content--element.pull-up-half-lg) {
    padding-bottom: calc(var(--main-gap) * 2);
  }
  .mod_article:has(.content--element:last-child .pull-down-lg, .content--element:last-child.pull-down-lg) + .mod_article > .article-content {
    padding-top: calc(var(--main-gap) * 2);
  }
  .mod_article:has(.content--element:last-child .pull-up-lg, .content--element:last-child.pull-up-lg, .content--element:last-child .pull-up-half-lg, .content--element:last-child.pull-up-half-lg) .article-content {
    padding-bottom: calc(var(--main-gap) * 2);
  }
}
@media (min-width: 1200px) {
  .pull-down-xl {
    margin-bottom: calc(-1 * var(--main-gap) * 2) !important;
  }
  .pull-up-xl {
    margin-top: calc(-1 * var(--main-gap) * 2) !important;
  }
  .pull-up-half-xl {
    --pull-up-half-offset: calc(var(--main-gap) * 2);
    margin-top: calc(-1 * var(--pull-up-half-offset)) !important;
  }
  .mod_article:has(+ .mod_article .pull-up-half-xl) .article-content {
    padding-bottom: calc(var(--main-gap) * 1);
  }
  .mod_article > .article-content .content--element.content--element:has(+ .content--element.pull-up-half-xl) {
    padding-bottom: calc(var(--main-gap) * 2);
  }
  .mod_article:has(.content--element:last-child .pull-down-xl, .content--element:last-child.pull-down-xl) + .mod_article > .article-content {
    padding-top: calc(var(--main-gap) * 2);
  }
  .mod_article:has(.content--element:last-child .pull-up-xl, .content--element:last-child.pull-up-xl, .content--element:last-child .pull-up-half-xl, .content--element:last-child.pull-up-half-xl) .article-content {
    padding-bottom: calc(var(--main-gap) * 2);
  }
}
@media (min-width: 1340px) {
  .pull-down-xxl {
    margin-bottom: calc(-1 * var(--main-gap) * 2) !important;
  }
  .pull-up-xxl {
    margin-top: calc(-1 * var(--main-gap) * 2) !important;
  }
  .pull-up-half-xxl {
    --pull-up-half-offset: calc(var(--main-gap) * 2);
    margin-top: calc(-1 * var(--pull-up-half-offset)) !important;
  }
  .mod_article:has(+ .mod_article .pull-up-half-xxl) .article-content {
    padding-bottom: calc(var(--main-gap) * 1);
  }
  .mod_article > .article-content .content--element.content--element:has(+ .content--element.pull-up-half-xxl) {
    padding-bottom: calc(var(--main-gap) * 2);
  }
  .mod_article:has(.content--element:last-child .pull-down-xxl, .content--element:last-child.pull-down-xxl) + .mod_article > .article-content {
    padding-top: calc(var(--main-gap) * 2);
  }
  .mod_article:has(.content--element:last-child .pull-up-xxl, .content--element:last-child.pull-up-xxl, .content--element:last-child .pull-up-half-xxl, .content--element:last-child.pull-up-half-xxl) .article-content {
    padding-bottom: calc(var(--main-gap) * 2);
  }
}
.ce_rsce_headline[class*=col-] .row.g-lg-3 {
  --bs-gutter-x: 15px;
  --bs-gutter-y: 15px;
}

@media (max-width: 1039.98px) {
  .ce_rsce_twocolimagewall:has(form) .image--col {
    display: none;
  }
}

@media (max-width: 1039.98px) {
  #flaechencheckBox .headline-column + div {
    display: none;
  }
}

.mod_newsmenu {
  margin-bottom: 0 !important;
}

@media (min-width: 1040px) {
  html body .mb-lg-50 {
    margin-bottom: 50% !important;
  }
}

@media (max-width: 575.98px) {
  .with-hyphens h1, .with-hyphens .h1 {
    hyphens: auto;
  }
}

@media (max-width: 575.98px) {
  .mod_article:not(:last-child) .article-content[class*=bg-]:not(:has(.content--element.mb-0:last-child)) {
    padding-bottom: 0;
  }
  .mod_article > .article-content .content--element.content--element:has(+ .content--element.pull-up) {
    padding-bottom: var(--main-gap);
  }
  .mod_article:has(.content--element:last-child .pull-down,
  .content--element:last-child.pull-down) + .mod_article > .article-content:not(.ce_rsce_hero_complex:first-child,
  .pull-up,
  .pull-up-half,
  .ce_rsce_twocolimagewall,
  .ce_rsce_head_hero,
  .mod_newsmenu,
  .ce_rsce_headline:first-child):not([class*=mt-]),
  #wrapper #main .mod_article .article-content:not(:has(.moved-content)) > :not(.body-slider, .bgvideo, .ce_rsce_headline:not(:has(.text, .content-column))):not(.ce_rsce_hero_complex:first-child,
  .pull-up,
  .pull-up-half,
  .ce_rsce_twocolimagewall,
  .ce_rsce_head_hero,
  .mod_newsmenu,
  .ce_rsce_headline:first-child):not([class*=mt-]) {
    padding-top: calc(var(--main-gap));
  }
  .ce_rsce_headline [class*=bg-]:not([class*=badge], [class*=box]) {
    padding-block: var(--main-gap) !important;
  }
  .ce_rsce_headline[class*=mb-]:has(+ .content--element) + .content--element:not([class*=bg-]) {
    padding-top: 0 !important;
  }
  .ce_rsce_headline .ce--inner > [class*=bg-] {
    padding-inline: var(--bs-container-gutter) !important;
  }
  .ce_rsce_twocolimagewall[class*=container] {
    padding-inline: 0;
  }
  [class*=pull-]:has([class*=bg-]) {
    margin-block: 0 !important;
  }
  [class*=pull-]:has([class*=bg-])[class*=container] {
    padding-inline: 0;
  }
  #wrapper #main .mod_article .article-content:not(:has(.moved-content)) > :not(.body-slider, .bgvideo, .ce_rsce_ansprechpartner:last-child, .ce_rsce_headline:not(:has(.text, .content-column))):last-child:has(form) {
    margin-bottom: 0;
  }
  div + .headline-column:has(+ div:not(:has(.content-column.mt-4))) {
    margin-bottom: var(--main-gap) !important;
  }
  .ce_rsce_image.pull-up,
  .content--element[class*=bg-]:has(+ .pachtrechner-widget) {
    margin-bottom: 0 !important;
  }
}
@media (max-width: 1039.98px) {
  .head-hero .image-section {
    margin-inline: calc(-1 * var(--bs-container-gutter));
  }
}
@media (max-width: 767.98px) {
  html body .cmpbox.cmpboxclosed {
    display: none !important;
  }
}

.dropdown-menu.bg-primary .form-check-input, .dropdown-menu.bg-primary .form-check-input:checked, .dropdown-menu.bg-primary .form-check-input:focus, .dropdown-menu.bg-primary .form-check-input:focus-visible {
  border: 1px solid rgba(255, 255, 255, 0.15);
}

.content--element[class*=bg-] + .pachtrechner-instance.pachtrechner-result {
  padding-top: var(--main-gap);
}

p + .alert, p + div {
  margin-top: 1.5rem;
}

html body #wrapper #main .mod_landingpage_viewer {
  margin-bottom: 0 !important;
}

.bg-primary {
  color: white;
}

.is-flaechencheck .ai-assistant, .market-detail .ai-assistant {
  display: none;
}

header#header:has(.header-primary) {
  --bs-link-color-rgb: 255, 255, 255;
  --bs-link-hover-color-rgb: 146, 160, 255;
  background-color: var(--bs-primary);
}
header#header:has(.header-primary) #mainNav .level_1 > li.active > :first-child:not(.contact-btn, .btn),
header#header:has(.header-primary) #mainNav .level_1 > li.trail > :first-child:not(.contact-btn, .btn),
header#header:has(.header-primary) #mainNav .level_1 > li:hover > :first-child:not(.contact-btn, .btn) {
  color: var(--bs-tertiary);
}
header#header:has(.header-primary) .level_1 > li .contact-btn {
  box-shadow: inset 0 0 0 3px white;
}
header#header:has(.header-primary) .level_1 > li .contact-btn:hover, header#header:has(.header-primary) .level_1 > li .contact-btn.active {
  background-color: var(--bs-tertiary);
  box-shadow: none;
  color: var(--bs-primary);
}

#wrapper:has(main .article-content > div:last-child[class*=bg-]:not([class*=container], [class*=bg-secondary])) footer#footer,
#wrapper:has(main .mod_article:last-child > .article-content[class*=bg-]) footer#footer,
body.footer-white footer#footer {
  --bs-link-color-rgb: var(--bs-primary-rgb);
  --bs-link-hover-color-rgb: var(--bs-primary-rgb);
  background-color: var(--bs-gray-100);
}
#wrapper:has(main .article-content > div:last-child[class*=bg-]:not([class*=container], [class*=bg-secondary])) footer#footer .logo svg path,
#wrapper:has(main .mod_article:last-child > .article-content[class*=bg-]) footer#footer .logo svg path,
body.footer-white footer#footer .logo svg path {
  fill: var(--bs-body-color);
}

.market-detail footer#footer {
  --bs-link-color-rgb: var(--bs-white-rgb);
  --bs-link-hover-color-rgb: var(--bs-white-rgb);
}
.market-detail footer#footer .logo svg path {
  fill: var(--bs-body-color-inverse);
}

.body-primary {
  --bs-body-bg: var(--bs-primary);
}
.body-primary .modal {
  --bs-modal-bg: var(--bs-gray-100);
}

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

[data-bs-theme=dark],
[data-bs-theme=dark] body {
  background-color: var(--bs-body-bg);
  color: var(--bs-body-color);
}
[data-bs-theme=dark] a:not(.btn) {
  color: var(--bs-link-color);
}
[data-bs-theme=dark] a:not(.btn):hover, [data-bs-theme=dark] a:not(.btn):focus {
  color: var(--bs-link-hover-color);
}
[data-bs-theme=dark] h1, [data-bs-theme=dark] h2, [data-bs-theme=dark] h3, [data-bs-theme=dark] h4, [data-bs-theme=dark] h5, [data-bs-theme=dark] h6,
[data-bs-theme=dark] .h1, [data-bs-theme=dark] .h2, [data-bs-theme=dark] .h3, [data-bs-theme=dark] .h4, [data-bs-theme=dark] .h5, [data-bs-theme=dark] .h6,
[data-bs-theme=dark] p, [data-bs-theme=dark] li, [data-bs-theme=dark] dt, [data-bs-theme=dark] dd, [data-bs-theme=dark] small, [data-bs-theme=dark] strong:not(.btn), [data-bs-theme=dark] span:not(.btn) {
  color: inherit;
}
[data-bs-theme=dark] .text-primary,
[data-bs-theme=dark] .link-primary {
  color: var(--bs-secondary) !important;
}
[data-bs-theme=dark] .bg-secondary {
  background-color: var(--caeli-surface-2) !important;
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] .mod_article .article-content.bg-primary,
[data-bs-theme=dark] .mod_article .article-content > .content--element.bg-primary,
[data-bs-theme=dark] .auction-item.is-primary .card,
[data-bs-theme=dark] .body-primary {
  background-color: var(--caeli-surface-primary) !important;
  color: var(--bs-body-color);
}
[data-bs-theme=dark] .ce_rsce_twocolimagewall .ce--imagetextwall.with-custom-bgcolor,
[data-bs-theme=dark] .ce_rsce_twocolimagewall .ce--imagetextwall.with-custom-bgcolor .content--col {
  background-color: var(--caeli-surface-2) !important;
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] .ce_rsce_twocolimagewall .ce--imagetextwall.with-custom-bgcolor h1,
[data-bs-theme=dark] .ce_rsce_twocolimagewall .ce--imagetextwall.with-custom-bgcolor h2,
[data-bs-theme=dark] .ce_rsce_twocolimagewall .ce--imagetextwall.with-custom-bgcolor h3,
[data-bs-theme=dark] .ce_rsce_twocolimagewall .ce--imagetextwall.with-custom-bgcolor p,
[data-bs-theme=dark] .ce_rsce_twocolimagewall .ce--imagetextwall.with-custom-bgcolor small,
[data-bs-theme=dark] .ce_rsce_twocolimagewall .ce--imagetextwall.with-custom-bgcolor span {
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] .card,
[data-bs-theme=dark] .dropdown-menu,
[data-bs-theme=dark] .modal-content,
[data-bs-theme=dark] .popover,
[data-bs-theme=dark] .tooltip-inner,
[data-bs-theme=dark] .offcanvas {
  background-color: var(--caeli-surface-1);
  color: var(--bs-body-color);
  border-color: var(--bs-border-color);
}
[data-bs-theme=dark] .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--bs-body-color);
  --bs-table-border-color: var(--bs-border-color-translucent);
  --bs-table-striped-bg: rgba(255, 255, 255, 0.04);
  --bs-table-striped-color: var(--bs-body-color);
  --bs-table-active-bg: rgba(255, 255, 255, 0.1);
  --bs-table-active-color: var(--bs-body-color);
  --bs-table-hover-bg: rgba(255, 255, 255, 0.08);
  --bs-table-hover-color: var(--bs-body-color);
}
[data-bs-theme=dark] .btn.btn-primary {
  --bs-btn-color: #102322;
  --bs-btn-bg: var(--bs-secondary);
  --bs-btn-border-color: var(--bs-secondary);
  --bs-btn-hover-bg: var(--bs-secondary);
  --bs-btn-hover-color: #102322;
  --bs-btn-hover-border-color: var(--bs-secondary);
  --bs-btn-active-bg: var(--bs-secondary);
  --bs-btn-active-color: #102322;
  --bs-btn-active-border-color: var(--bs-secondary);
}
[data-bs-theme=dark] .btn.btn-outline-primary {
  --bs-btn-color: var(--bs-secondary);
  --bs-btn-bg: transparent;
  --bs-btn-border-color: rgba(var(--bs-secondary-rgb), 0.58);
  --bs-btn-hover-bg: var(--bs-secondary);
  --bs-btn-hover-color: #102322;
  --bs-btn-hover-border-color: var(--bs-secondary);
  --bs-btn-active-bg: var(--bs-secondary);
  --bs-btn-active-color: #102322;
  --bs-btn-active-border-color: var(--bs-secondary);
  --bs-btn-disabled-color: rgba(var(--bs-secondary-rgb), 0.58);
  --bs-btn-disabled-border-color: rgba(var(--bs-secondary-rgb), 0.3);
}
[data-bs-theme=dark] .btn.btn-outline-primary:visited {
  color: var(--bs-secondary);
}
[data-bs-theme=dark] .btn.btn-outline-secondary {
  --bs-btn-color: var(--bs-secondary);
  --bs-btn-bg: transparent;
  --bs-btn-border-color: rgba(var(--bs-secondary-rgb), 0.58);
  --bs-btn-hover-bg: var(--bs-secondary);
  --bs-btn-hover-color: #102322;
  --bs-btn-hover-border-color: var(--bs-secondary);
  --bs-btn-active-bg: var(--bs-secondary);
  --bs-btn-active-color: #102322;
  --bs-btn-active-border-color: var(--bs-secondary);
  --bs-btn-disabled-color: rgba(var(--bs-secondary-rgb), 0.58);
  --bs-btn-disabled-border-color: rgba(var(--bs-secondary-rgb), 0.3);
}
[data-bs-theme=dark] .btn.btn-outline-white {
  --bs-btn-color: var(--bs-secondary);
  --bs-btn-bg: transparent;
  --bs-btn-border-color: rgba(var(--bs-secondary-rgb), 0.68);
  --bs-btn-hover-bg: var(--bs-secondary);
  --bs-btn-hover-color: #102322;
  --bs-btn-hover-border-color: var(--bs-secondary);
  --bs-btn-active-bg: var(--bs-secondary);
  --bs-btn-active-color: #102322;
  --bs-btn-active-border-color: var(--bs-secondary);
  --bs-btn-disabled-color: rgba(var(--bs-secondary-rgb), 0.58);
  --bs-btn-disabled-border-color: rgba(var(--bs-secondary-rgb), 0.3);
}
[data-bs-theme=dark] .btn.btn-outline-white:hover, [data-bs-theme=dark] .btn.btn-outline-white:focus, [data-bs-theme=dark] .btn.btn-outline-white:focus-visible, [data-bs-theme=dark] .btn.btn-outline-white:active, [data-bs-theme=dark] .btn.btn-outline-white.active {
  color: #102322 !important;
  background-color: var(--bs-secondary) !important;
  border-color: var(--bs-secondary) !important;
}
[data-bs-theme=dark] .btn.btn-secondary {
  --bs-btn-color: var(--bs-body-color);
  --bs-btn-bg: var(--caeli-surface-2);
  --bs-btn-border-color: var(--caeli-border-strong);
  --bs-btn-hover-color: var(--bs-secondary);
  --bs-btn-hover-border-color: var(--bs-secondary);
}
[data-bs-theme=dark] .btn.btn-white {
  --bs-btn-color: var(--bs-body-color);
  --bs-btn-bg: var(--caeli-surface-1);
  --bs-btn-border-color: rgba(var(--bs-secondary-rgb), 0.42);
  --bs-btn-hover-bg: transparent;
  --bs-btn-hover-color: var(--bs-secondary);
  --bs-btn-hover-border-color: var(--bs-secondary);
  --bs-btn-active-color: var(--bs-secondary);
  --bs-btn-active-bg: transparent;
  --bs-btn-active-border-color: var(--bs-secondary);
}
[data-bs-theme=dark] .btn.btn-currentColor {
  color: var(--parent-bg-color) !important;
  background-color: var(--btn-context-color) !important;
  border-color: var(--btn-context-color) !important;
}
[data-bs-theme=dark] .btn.btn-currentColor:hover,
[data-bs-theme=dark] .btn.btn-currentColor:focus,
[data-bs-theme=dark] .btn.btn-currentColor:focus-visible,
[data-bs-theme=dark] .btn.btn-currentColor:active,
[data-bs-theme=dark] .btn.btn-currentColor.active {
  color: var(--btn-context-color) !important;
  background-color: transparent !important;
  border-color: var(--btn-context-color) !important;
}
[data-bs-theme=dark] .filter-buttons .btn.btn-white {
  box-shadow: inset 0 0 0 1px rgba(var(--bs-secondary-rgb), 0.2);
}
[data-bs-theme=dark] .filter-buttons .btn.btn-primary {
  --bs-btn-color: #102322;
  --bs-btn-hover-color: #102322;
  --bs-btn-active-color: #102322;
}
[data-bs-theme=dark] .filter-buttons .btn.btn-outline-primary {
  background-color: transparent;
  border-color: rgba(var(--bs-secondary-rgb), 0.58);
  color: var(--bs-secondary);
}
[data-bs-theme=dark] .alert {
  --bs-alert-color: var(--bs-body-color);
}
[data-bs-theme=dark] .form-control,
[data-bs-theme=dark] .form-select {
  color: var(--bs-body-color);
  background-color: var(--caeli-surface-1);
  box-shadow: var(--bs-input-shadow);
}
[data-bs-theme=dark] .form-control:focus,
[data-bs-theme=dark] .form-select:focus {
  color: var(--bs-body-color);
  background-color: var(--caeli-surface-2);
}
[data-bs-theme=dark] .form-control::placeholder,
[data-bs-theme=dark] .form-select::placeholder {
  color: var(--caeli-text-muted);
}
[data-bs-theme=dark] .form-check-input {
  background-color: var(--caeli-surface-1);
  border-color: var(--caeli-border-strong);
}
[data-bs-theme=dark] .ai-assistant__panel,
[data-bs-theme=dark] .ai-assistant__footer {
  background-color: var(--caeli-surface-1) !important;
  border-color: var(--bs-border-color) !important;
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] .ai-assistant__header {
  background-color: var(--caeli-surface-primary) !important;
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] .ai-assistant__messages {
  background-color: var(--caeli-surface-2) !important;
  border-color: var(--bs-border-color) !important;
}
[data-bs-theme=dark] .ai-assistant__hint,
[data-bs-theme=dark] .ai-assistant__footer label,
[data-bs-theme=dark] .ai-assistant__footer p {
  color: var(--caeli-text-muted) !important;
}
[data-bs-theme=dark] .ai-assistant__textarea.form-control {
  background-color: var(--caeli-surface-2) !important;
  border-color: var(--caeli-border-strong) !important;
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] input[type=range]::-webkit-slider-runnable-track {
  background-color: var(--caeli-surface-3);
}
[data-bs-theme=dark] input[type=range]::-moz-range-track {
  background-color: var(--caeli-surface-3);
}
[data-bs-theme=dark] .filepond--root .filepond--drop-label {
  background-color: var(--caeli-surface-2);
}
[data-bs-theme=dark] .filepond--root .filepond--drop-label:hover {
  background-color: var(--caeli-surface-3);
}
[data-bs-theme=dark] .mod_form_enhancer__pages-wrapper::-webkit-scrollbar-thumb {
  background-color: var(--caeli-surface-3);
}
[data-bs-theme=dark] .mod_form_enhancer__page-link.is-locked {
  opacity: 0.45;
}
[data-bs-theme=dark] #meinungsumfrage {
  background-color: var(--caeli-surface-2);
}
[data-bs-theme=dark] #meinungsumfrage .widget-radio .form-check .form-check-label {
  background-color: var(--caeli-surface-3);
  border-color: var(--caeli-border-strong);
  color: var(--bs-body-color);
}
[data-bs-theme=dark] #meinungsumfrage .widget-radio .form-check .form-check-label:hover,
[data-bs-theme=dark] #meinungsumfrage .widget-radio .form-check input[type=radio]:checked + .form-check-label {
  background-color: transparent;
  border-color: var(--bs-secondary);
  color: var(--bs-secondary);
}
[data-bs-theme=dark] .widget.stage-selector .form-check-label {
  border-color: var(--caeli-border-strong);
  color: var(--bs-body-color);
}
[data-bs-theme=dark] .widget.stage-selector .form-check-input:checked + .form-check-label,
[data-bs-theme=dark] .widget.stage-selector .form-check-input:focus-visible + .form-check-label,
[data-bs-theme=dark] .widget.stage-selector .form-check-label:hover {
  background-color: var(--caeli-surface-3);
  border-color: var(--bs-secondary);
  color: var(--bs-secondary);
}
[data-bs-theme=dark] main#main .BodyScrollToTop {
  background-color: var(--caeli-surface-1);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
}
[data-bs-theme=dark] main#main .BodyScrollToTop::after {
  border-top-color: var(--bs-secondary);
  border-left-color: var(--bs-secondary);
}
[data-bs-theme=dark] #mainNav .level_1 > li:hover > *:first-child:not([class*=btn]),
[data-bs-theme=dark] #mainNav .level_1 > li.active > *:first-child:not([class*=btn]),
[data-bs-theme=dark] #mainNav .level_1 > li.trail > *:first-child:not([class*=btn]) {
  color: var(--bs-secondary);
}
[data-bs-theme=dark] #mainNav .level_1 > li > *:first-child:not([class*=btn]) {
  color: var(--bs-body-color);
}
[data-bs-theme=dark] #mainNav .level_1 > li .contact-btn {
  background-color: var(--bs-secondary);
  border-color: var(--bs-secondary);
  color: #112221;
}
[data-bs-theme=dark] #mainNav .level_1 > li .contact-btn:hover, [data-bs-theme=dark] #mainNav .level_1 > li .contact-btn:focus, [data-bs-theme=dark] #mainNav .level_1 > li .contact-btn.active {
  background-color: transparent;
  box-shadow: inset 0 0 0 2px var(--bs-secondary);
  color: var(--bs-secondary);
}
[data-bs-theme=dark] #mainNav .level_2-wrapper {
  background-color: var(--caeli-surface-1);
  border-bottom-color: var(--bs-border-color);
}
[data-bs-theme=dark] #mainNav .level_2 > li > *:first-child:hover,
[data-bs-theme=dark] #mainNav .level_2 > li > *:first-child.active,
[data-bs-theme=dark] #mainNav .level_2 > li > *:first-child.trail {
  background-color: var(--caeli-surface-3);
  color: var(--bs-secondary);
}
[data-bs-theme=dark] header#header .header-top .mod_navigation ul li strong,
[data-bs-theme=dark] header#header .header-top .mod_navigation ul li a,
[data-bs-theme=dark] header#header .header-top .mod_changelanguage ul li strong,
[data-bs-theme=dark] header#header .header-top .mod_changelanguage ul li a {
  color: var(--bs-body-color);
}
[data-bs-theme=dark] header#header .header-top .mod_navigation ul li strong.active,
[data-bs-theme=dark] header#header .header-top .mod_navigation ul li a.active,
[data-bs-theme=dark] header#header .header-top .mod_navigation ul li strong:hover,
[data-bs-theme=dark] header#header .header-top .mod_navigation ul li a:hover {
  color: var(--bs-secondary);
  background-color: rgba(var(--bs-secondary-rgb), 0.16);
}
[data-bs-theme=dark] header#header:has(.header-primary) {
  --bs-link-color-rgb: var(--bs-body-color-rgb);
  --bs-link-hover-color-rgb: var(--bs-secondary-rgb);
  background-color: var(--caeli-surface-primary);
}
[data-bs-theme=dark] header#header:has(.header-primary) #mainNav .level_1 > li:hover > *:first-child:not(.contact-btn, .btn),
[data-bs-theme=dark] header#header:has(.header-primary) #mainNav .level_1 > li.active > *:first-child:not(.contact-btn, .btn),
[data-bs-theme=dark] header#header:has(.header-primary) #mainNav .level_1 > li.trail > *:first-child:not(.contact-btn, .btn) {
  color: var(--bs-secondary);
}
[data-bs-theme=dark] header#header:has(.header-primary) .level_1 > li .contact-btn {
  box-shadow: inset 0 0 0 3px var(--bs-secondary);
  color: #112221;
}
[data-bs-theme=dark] header#header:has(.header-primary) .level_1 > li .contact-btn:hover, [data-bs-theme=dark] header#header:has(.header-primary) .level_1 > li .contact-btn.active {
  background-color: transparent;
  color: var(--bs-secondary);
  box-shadow: inset 0 0 0 3px var(--bs-secondary);
}
[data-bs-theme=dark] header#header .logo svg path {
  fill: var(--bs-secondary);
}
[data-bs-theme=dark] footer#footer {
  background-color: var(--caeli-surface-2);
  color: var(--bs-body-color);
}
[data-bs-theme=dark] #wrapper:has(main .article-content > div:last-child[class*=bg-]:not([class*=container], [class*=bg-secondary])) footer#footer,
[data-bs-theme=dark] #wrapper:has(main .mod_article:last-child > .article-content[class*=bg-]) footer#footer,
[data-bs-theme=dark] body.footer-white footer#footer {
  background-color: var(--caeli-surface-1);
  color: var(--bs-body-color);
}
[data-bs-theme=dark] .article-info {
  background-color: var(--caeli-surface-2);
  color: var(--bs-body-color);
}
[data-bs-theme=dark] .article-info .author-info,
[data-bs-theme=dark] .article-info .article-meta {
  border-bottom-color: var(--caeli-border-strong);
}
[data-bs-theme=dark] .article-info-content .article-meta {
  border-top-color: var(--caeli-border-strong);
  border-bottom-color: var(--caeli-border-strong);
}
[data-bs-theme=dark] .event.layout_teaser:hover {
  background-color: var(--caeli-surface-1);
}
[data-bs-theme=dark] .services-overview .services-list .service-item .service-link {
  color: var(--bs-body-color);
  border-color: rgba(var(--bs-secondary-rgb), 0.28);
}
[data-bs-theme=dark] .services-overview .services-list .service-item .service-link h3,
[data-bs-theme=dark] .services-overview .services-list .service-item .service-link h3 span {
  color: inherit;
}
[data-bs-theme=dark] .services-overview .services-list .service-item .service-link:hover,
[data-bs-theme=dark] .services-overview .services-list .service-item .service-link:focus,
[data-bs-theme=dark] .services-overview .services-list .service-item .service-link.active {
  background-color: var(--caeli-surface-3);
  color: var(--bs-secondary);
}
[data-bs-theme=dark] .services-overview .mobile-service-button {
  color: var(--bs-body-color);
}
[data-bs-theme=dark] .services-overview .mobile-service-button:hover,
[data-bs-theme=dark] .services-overview .mobile-service-button:focus,
[data-bs-theme=dark] .services-overview .mobile-service-button.active {
  background-color: var(--caeli-surface-3);
  color: var(--bs-secondary);
}
[data-bs-theme=dark] .accordion .accordion-button,
[data-bs-theme=dark] .accordion .accordion-button:not(.collapsed),
[data-bs-theme=dark] .accordion .accordion-item .accordion-button[aria-expanded=true] {
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] .accordion .accordion-button .ce--headline > *,
[data-bs-theme=dark] .accordion .accordion-button .ce--headline h1,
[data-bs-theme=dark] .accordion .accordion-button .ce--headline h2,
[data-bs-theme=dark] .accordion .accordion-button .ce--headline h3,
[data-bs-theme=dark] .accordion .accordion-button .ce--headline h4,
[data-bs-theme=dark] .accordion .accordion-button .ce--headline h5,
[data-bs-theme=dark] .accordion .accordion-button .ce--headline h6 {
  color: inherit;
}
[data-bs-theme=dark] .tutorial-popover .btn.btn-outline-primary,
[data-bs-theme=dark] .tutorial-content .btn.btn-outline-primary,
[data-bs-theme=dark] .tutorial-buttons .btn.btn-outline-primary,
[data-bs-theme=dark] #tutorial-welcome-skip,
[data-bs-theme=dark] #tutorial-plz-back,
[data-bs-theme=dark] #tutorial-polygon-back {
  --bs-btn-color: var(--bs-secondary) !important;
  --bs-btn-border-color: rgba(var(--bs-secondary-rgb), 0.68) !important;
  --bs-btn-hover-bg: var(--bs-secondary) !important;
  --bs-btn-hover-color: #102322 !important;
  --bs-btn-hover-border-color: var(--bs-secondary) !important;
  --bs-btn-active-bg: var(--bs-secondary) !important;
  --bs-btn-active-color: #102322 !important;
  --bs-btn-active-border-color: var(--bs-secondary) !important;
  color: var(--bs-secondary) !important;
  border-color: rgba(var(--bs-secondary-rgb), 0.68) !important;
  background-color: transparent !important;
}
[data-bs-theme=dark] .pachtrechnerBar .progress {
  background-color: var(--caeli-surface-1);
}
[data-bs-theme=dark] .area-label-custom,
[data-bs-theme=dark] .area-label-fallback {
  background: var(--caeli-surface-1);
  color: var(--bs-secondary);
  border-color: rgba(222, 238, 198, 0.25);
}
[data-bs-theme=dark] .area-label-custom::after {
  border-top-color: var(--caeli-surface-1);
}
[data-bs-theme=dark] .ce_rsce_stoerer .stoerer--content,
[data-bs-theme=dark] .ce_rsce_stoerer .stoerer--content .stoerer-content--inner,
[data-bs-theme=dark] .ce_rsce_stoerer .stoerer--content .button-label,
[data-bs-theme=dark] .ce_rsce_stoerer .stoerer--content p,
[data-bs-theme=dark] .ce_rsce_stoerer .stoerer--content a:not(.btn) {
  color: var(--bs-primary) !important;
}
[data-bs-theme=dark] .landingpage-listing .landingpage-overview-map {
  background-color: var(--caeli-surface-primary) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-group {
  background-color: var(--caeli-surface-1) !important;
  border-color: rgba(var(--bs-secondary-rgb), 0.2) !important;
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-group__name,
[data-bs-theme=dark] .landingpage-listing .lp-group__name a,
[data-bs-theme=dark] .landingpage-listing .lp-child__name,
[data-bs-theme=dark] .landingpage-listing .lp-child__arrow {
  color: var(--bs-secondary) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-group__district,
[data-bs-theme=dark] .landingpage-listing .lp-group__stat,
[data-bs-theme=dark] .landingpage-listing .lp-child__stat {
  color: var(--caeli-text-muted) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-group__stat strong {
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-group__children,
[data-bs-theme=dark] .landingpage-listing .lp-child {
  border-color: rgba(var(--bs-secondary-rgb), 0.14) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-child {
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] .landingpage-listing a.lp-child:hover {
  background-color: var(--caeli-surface-3) !important;
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-legend {
  background-color: var(--caeli-surface-1) !important;
  border-color: rgba(var(--bs-secondary-rgb), 0.2) !important;
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-legend__toggle {
  color: var(--bs-secondary) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-legend__content {
  color: var(--bs-body-color) !important;
  border-top-color: rgba(var(--bs-secondary-rgb), 0.2) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-legend__icon {
  background: var(--caeli-surface-primary) !important;
  color: var(--bs-secondary) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-pagination__btn {
  background-color: var(--caeli-surface-1) !important;
  border-color: rgba(var(--bs-secondary-rgb), 0.24) !important;
  color: var(--bs-body-color) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-pagination__btn:hover {
  background-color: var(--caeli-surface-3) !important;
  border-color: rgba(var(--bs-secondary-rgb), 0.44) !important;
  color: var(--bs-secondary) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-pagination__btn--active {
  background-color: var(--bs-secondary) !important;
  border-color: var(--bs-secondary) !important;
  color: #102322 !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-pagination__ellipsis {
  color: var(--caeli-text-muted) !important;
}
[data-bs-theme=dark] .landingpage-listing .border-lg {
  border-color: rgba(var(--bs-secondary-rgb), 0.22) !important;
}
[data-bs-theme=dark] .landingpage-listing .text-muted,
[data-bs-theme=dark] .landingpage-listing .small.text-muted {
  color: var(--caeli-text-muted) !important;
}
[data-bs-theme=dark] .landingpage-listing #landingpage-search,
[data-bs-theme=dark] .landingpage-listing #landingpage-perpage {
  background-color: var(--caeli-surface-1) !important;
  border-color: rgba(var(--bs-secondary-rgb), 0.3) !important;
  color: var(--bs-body-color) !important;
  box-shadow: none !important;
}
[data-bs-theme=dark] .landingpage-listing #landingpage-search::placeholder {
  color: var(--caeli-text-muted) !important;
}
[data-bs-theme=dark] .landingpage-listing #landingpage-perpage option {
  background-color: var(--caeli-surface-1);
  color: var(--bs-body-color);
}
[data-bs-theme=dark] .landingpage-listing .lp-group__header {
  background-color: rgba(var(--bs-secondary-rgb), 0.03);
}
[data-bs-theme=dark] .landingpage-listing .lp-group:hover {
  background-color: var(--caeli-surface-2) !important;
  border-color: rgba(var(--bs-secondary-rgb), 0.28) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-child--disabled {
  opacity: 0.55;
  color: var(--caeli-text-muted) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-legend__toggle::before {
  color: var(--bs-secondary) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-pagination__btn--disabled {
  opacity: 0.52 !important;
  background-color: rgba(15, 32, 30, 0.78) !important;
  border-color: rgba(var(--bs-secondary-rgb), 0.14) !important;
  color: var(--caeli-text-muted) !important;
}
[data-bs-theme=dark] .landingpage-listing .lp-pagination__btn:focus-visible,
[data-bs-theme=dark] .landingpage-listing .lp-legend__toggle:focus-visible,
[data-bs-theme=dark] .landingpage-listing .lp-child:focus-visible,
[data-bs-theme=dark] .landingpage-listing .lp-group__name a:focus-visible,
[data-bs-theme=dark] .landingpage-listing #landingpage-search:focus,
[data-bs-theme=dark] .landingpage-listing #landingpage-perpage:focus {
  outline: 2px solid rgba(var(--bs-secondary-rgb), 0.7) !important;
  outline-offset: 2px;
  box-shadow: none !important;
}
[data-bs-theme=dark] .landingpage-listing .loading-spinner--overlay {
  background: rgba(8, 24, 23, 0.88) !important;
  --spinner-color: var(--bs-secondary) !important;
  color: var(--bs-secondary) !important;
}
[data-bs-theme=dark] .landingpage-listing .loading-spinner--overlay .loading-message,
[data-bs-theme=dark] .landingpage-listing .loading-spinner--overlay .loading-percentage {
  color: var(--bs-secondary) !important;
}
[data-bs-theme=dark] .landingpage-listing .mapboxgl-ctrl-group {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
[data-bs-theme=dark] .landingpage-listing .mapboxgl-ctrl-group button {
  background-color: var(--bs-secondary) !important;
}
[data-bs-theme=dark] .landingpage-listing .mapboxgl-ctrl-group button .mapboxgl-ctrl-icon {
  background-color: #102322 !important;
}
[data-bs-theme=dark] .landingpage-listing .map-controls {
  background-color: rgba(10, 30, 29, 0.9) !important;
  border: 1px solid rgba(var(--bs-secondary-rgb), 0.26) !important;
  color: var(--bs-secondary) !important;
}
[data-bs-theme=dark] .landingpage-listing .map-controls .form-check-label {
  color: var(--bs-secondary) !important;
}
[data-bs-theme=dark] .landingpage-listing .map-controls .form-check-input,
[data-bs-theme=dark] .landingpage-listing .map-controls .form-check-input:checked {
  background-color: rgba(var(--bs-secondary-rgb), 0.88);
  border-color: rgba(var(--bs-secondary-rgb), 0.88);
}
[data-bs-theme=dark] .landingpage-listing .map-controls #focusResetBtn {
  background-color: var(--bs-secondary) !important;
  color: #102322 !important;
}
[data-bs-theme=dark] .market-detail .box-main.bg-white.text-body {
  background-color: var(--caeli-surface-1) !important;
  color: var(--bs-body-color) !important;
  border: 1px solid rgba(var(--bs-secondary-rgb), 0.18);
}
[data-bs-theme=dark] .market-detail .box-main .auction-detail-label,
[data-bs-theme=dark] .market-detail .box-main .button-holder strong.small,
[data-bs-theme=dark] .market-detail .box-main .auction-content .mt-3 span {
  color: var(--caeli-text-muted);
}
[data-bs-theme=dark] .market-detail .box-main .auction-detail-value,
[data-bs-theme=dark] .market-detail .box-main .auction-content .mt-3 strong {
  color: var(--bs-body-color);
}
[data-bs-theme=dark] .market-detail .box-main .button-holder .btn.btn-primary {
  --bs-btn-color: #102322;
  --bs-btn-hover-color: #102322;
  --bs-btn-active-color: #102322;
  color: #102322;
}
[data-bs-theme=dark] .market-detail .box-main .preview-btn.btn.btn-secondary.no-button {
  --bs-btn-color: #c7dbb1;
  --bs-btn-bg: rgba(24, 46, 43, 0.94);
  --bs-btn-border-color: rgba(var(--bs-secondary-rgb), 0.42);
  --bs-btn-border-width: 1px;
  color: #c7dbb1;
  background-color: rgba(24, 46, 43, 0.94);
  border-color: rgba(var(--bs-secondary-rgb), 0.42);
}
[data-bs-theme=dark] .market-detail .box-main .countdown-btn.btn.btn-primary.no-button {
  --bs-btn-color: #102322;
  --bs-btn-bg: var(--bs-secondary);
  --bs-btn-border-color: var(--bs-secondary);
  color: #102322;
}
[data-bs-theme=dark] .market-detail .box-footer.bg-secondary.text-body {
  background-color: var(--caeli-surface-2) !important;
  border-top: 1px solid rgba(var(--bs-secondary-rgb), 0.16);
}

/*# sourceMappingURL=_theme.d8dd62b72c22091cd771.bundle.min.css.map*/