/* stylelint-disable */
/* stylelint-enable */
.hatching-white {
  background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='Ebene_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 100 100' style='enable-background:new 0 0 100 100;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23fff;%7D%0A%3C/style%3E%3Cg%3E%3Cpolygon class='st0' points='0,0 0,0.7 0.7,0 '/%3E%3Cpolygon class='st0' points='19.3,0 0,19.3 0,20.7 20.7,0 '/%3E%3Cpolygon class='st0' points='39.3,0 0,39.3 0,40.7 40.7,0 '/%3E%3Cpolygon class='st0' points='59.3,0 0,59.3 0,60.7 60.7,0 '/%3E%3Cpolygon class='st0' points='79.3,0 0,79.3 0,80.7 80.7,0 '/%3E%3Cpolygon class='st0' points='100,0 99.3,0 0,99.3 0,100 0.7,100 100,0.7 '/%3E%3Cpolygon class='st0' points='20.7,100 100,20.7 100,19.3 19.3,100 '/%3E%3Cpolygon class='st0' points='40.7,100 100,40.7 100,39.3 39.3,100 '/%3E%3Cpolygon class='st0' points='60.7,100 100,60.7 100,59.3 59.3,100 '/%3E%3Cpolygon class='st0' points='80.7,100 100,80.7 100,79.3 79.3,100 '/%3E%3Cpolygon class='st0' points='100,100 100,99.3 99.3,100 '/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 7rem;
}

.space-before-extra-small {
  margin-top: -1px !important;
}

.space-after-extra-small {
  margin-bottom: -1px !important;
}
.space-after-extra-small + .co {
  margin-top: 0;
}

.space-before-small {
  margin-top: 3rem !important;
}

.space-after-small {
  margin-bottom: 3rem !important;
}
.space-after-small + .co {
  margin-top: 0;
}

.space-before-medium {
  margin-top: 5rem !important;
}

.space-after-medium {
  margin-bottom: 5rem !important;
}
.space-after-medium + .co {
  margin-top: 0;
}

.space-before-large {
  margin-top: 7rem !important;
}

.space-after-large {
  margin-bottom: 7rem !important;
}
.space-after-large + .co {
  margin-top: 0;
}

.space-before-extra-large {
  margin-top: 15rem !important;
}

.space-after-extra-large {
  margin-bottom: 15rem !important;
}
.space-after-extra-large + .co {
  margin-top: 0;
}

body {
  --header-height: 10rem;
}
@media (min-width: 50em) {
  body {
    --header-height: 13.7rem;
  }
}

.header-logo {
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 7rem;
  margin: 0;
  max-height: unset;
  transition: all 200ms ease-out;
  width: unset;
}
@media (max-width: 46.24em) {
  .header-logo {
    height: 5rem;
  }
  .document-header--is-shrinked .header-logo {
    height: 5rem;
  }
}
.document-header--is-shrinked .header-logo {
  height: 5rem;
}
.header-logo svg {
  height: 100%;
  max-height: unset;
  width: auto;
}
.document-header--is-shrinked .header-logo svg {
  transform: none;
}

.document-header {
  background-color: #004562;
  height: var(--header-height);
  transition: all 200ms ease-out;
}
.document-header.document-header--is-shrinked {
  --header-height: 10rem;
  transform: none;
}
.document-header a {
  text-decoration: none;
}

@media (min-width: 50em) {
  .document-header__offscreen {
    display: none;
  }
}

.document-header__main,
.document-header__container {
  height: 100%;
}

.document-header__container {
  max-width: 1600px;
}

.document-header__main {
  -ms-flex-align: center;
      align-items: center;
  width: 100%;
}

.document-header__menu {
  display: block;
  list-style: none;
  margin-bottom: 0;
  padding-left: 0;
  -ms-flex-align: center;
      align-items: center;
  color: white;
  display: none;
  font-size: 2rem;
  gap: 4.5rem;
  -ms-flex-pack: end;
      justify-content: flex-end;
}
@media (min-width: 46.25em) {
  .document-header__menu {
    display: -ms-flexbox;
    display: flex;
  }
}
.document-header__menu a {
  color: white;
  font-weight: 700;
}
.document-header__menu li:last-child a {
  font-family: Quicksand, Helvetica, Arial, sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0;
  background: #d7e613;
  border: thin solid #d7e613;
  color: #004562;
  border-radius: 1.5rem;
  cursor: pointer;
  display: inline-block;
  -ms-flex: 0 1 auto;
      flex: 0 1 auto;
  min-height: 2.2em;
  outline: 0;
  padding: 0.4rem 0.8rem;
  text-align: center;
  text-decoration: none;
  transition: all 150ms ease-out, transform 225ms ease-out 50ms;
  border-radius: 1.5rem;
  font-weight: bold;
}
.document-header__menu li:last-child a:focus, .document-header__menu li:last-child a:hover {
  background: #d7e613;
  border: thin solid #d7e613;
  color: #004562;
}
.document-header__menu li:last-child a:focus, .document-header__menu li:last-child a:hover {
  text-decoration: none;
}

.document-header__main {
  padding: 0 1rem;
}
@media (min-width: 50em) {
  .document-header__main {
    padding: 0;
  }
}

.document-header__offscreen {
  top: 0;
}

.document-header__mobile {
  color: #004562;
  height: 100%;
}

.document-header__mobile-main {
  display: block;
  list-style: none;
  margin-bottom: 0;
  padding-left: 0;
  padding: 2.6rem;
}
.document-header__mobile-main::before {
  display: none;
}
.document-header__mobile-main a {
  color: inherit;
  font-size: 2rem;
  font-weight: 700;
  max-width: unset;
  padding: 1.5rem 0;
  text-decoration: none;
}

.main-nav-is-visible .document-header__container {
  overflow-y: unset;
}

.document-header__container {
  height: 100%;
}

.main-nav-toggle {
  color: inherit;
}

.document-main {
  overflow: hidden;
}
@media (min-width: 50em) {
  .document-main {
    padding-top: var(--header-height);
  }
}

.topics-header {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.text-center {
  margin: 0 auto;
  max-width: 100rem;
}

.document-section__main {
  position: relative;
}

.stage-image-container {
  width: 100%;
}
.stage-image-container img {
  width: 100%;
}

.stage-items-container {
  --gutter: 9rem;
  margin: -5rem auto 0;
  max-width: 1600px;
  padding: 0 15px;
}
@media (min-width: 61.25em) {
  .stage-items-container {
    margin-top: -16rem;
  }
}
.stage-items-container .snapSlider__content {
  --item-layout-mobile: 1;
  --item-layout-phablet: var(--item-layout-mobile);
  --item-layout-tablet: 2;
  --item-layout-desktop: 2;
  --item-layout-wide: 4;
  --item-count-current: var(--item-layout-mobile);
  position: relative;
  width: 100%;
}
@media (min-width: 61.25em) {
  .stage-items-container .snapSlider__content {
    width: calc(100% + var(--gutter));
  }
}
.stage-items-container .snapSlider__controller {
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex-pack: justify;
      justify-content: space-between;
  left: 50%;
  max-width: 1300px;
  padding: 0 2rem;
  position: absolute;
  top: 10rem;
  transform: translateX(-50%);
  width: 100%;
}
@media (min-width: 75em) {
  .stage-items-container .snapSlider__controller {
    display: none !important;
  }
}
.stage-items-container .stage-item {
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column;
      flex-flow: column;
}
.stage-items-container .stage-item figure {
  background-color: #d7e613;
  border-radius: 50%;
  height: 0;
  padding-bottom: 80%;
  position: relative;
  width: 80%;
}
.stage-items-container .stage-item figure img {
  height: 70%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: auto;
}
.stage-items-container .stage-item figure img[src*=co2] {
  height: 50%;
}
.stage-items-container .stage-item .stage-item-content {
  background-color: #004562;
  border-radius: 1.5rem;
  color: white;
  margin-top: -4rem;
  padding: 3rem 2rem;
  text-align: center;
}
.stage-items-container button {
  transform-origin: center;
  transition: transform 150ms;
}
.stage-items-container button[aria-expanded=true] {
  transform: rotate(180deg);
}
.stage-items-container button svg {
  width: 13px;
}
.stage-items-container h3 {
  margin: 0;
}

.dropdown-menu {
  --bs-dropdown-font-size: inherit;
}

.sticky-container {
  bottom: 20vh;
  position: fixed;
  right: 1rem;
  z-index: 1021;
}
@media (min-width: 46.25em) {
  .sticky-container {
    right: 5rem;
  }
}

.sticky-button {
  cursor: pointer;
  transition: transform 0.3s linear;
}
@media (max-width: 46.24em) {
  .sticky-button {
    height: 7rem;
    width: 7rem;
  }
}
.sticky-button:focus-visible, .sticky-button:hover {
  transform: translateY(-5px);
}

.sticky-element {
  background-attachment: fixed;
  background-image: url("../img/sticky-bg.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  padding: 2rem 2rem 4rem;
  width: 80vw;
}
@media (min-width: 46.25em) {
  .sticky-element {
    width: 39rem;
  }
}
@media (max-width: 46.24em) {
  .sticky-element p,
  .sticky-element a {
    font-size: 1.6rem;
  }
}

.dropup .dropdown-toggle::after {
  display: none;
}

.cb-person-teaser-container {
  --gutter: 5rem;
  -ms-flex-align: start;
      align-items: flex-start;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column;
      flex-flow: column;
  gap: 5rem;
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
}
@media (min-width: 61.25em) {
  .cb-person-teaser-container {
    -ms-flex-flow: row;
        flex-flow: row;
  }
  .c-column .cb-person-teaser-container {
    -ms-flex-flow: column;
        flex-flow: column;
  }
}
.cb-person-teaser-container:last-child {
  margin-bottom: 4rem;
}

.cb-person-teaser {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column;
      flex-flow: column;
  gap: 4rem;
}
@media (min-width: 61.25em) {
  .cb-person-teaser {
    -ms-flex-align: center;
        align-items: center;
    -ms-flex: 1 1 calc(50% - var(--gutter));
        flex: 1 1 calc(50% - var(--gutter));
    -ms-flex-flow: row;
        flex-flow: row;
  }
  .c-column .cb-person-teaser {
    -ms-flex: 1 1 100%;
        flex: 1 1 100%;
    width: 100%;
  }
}

.cb-person-teaser-info {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column;
      flex-flow: column;
  gap: 1.5rem;
}
.cb-person-teaser-info a,
.cb-person-teaser-info p,
.cb-person-teaser-info h3 {
  display: block;
  margin: 0;
}
.cb-person-teaser-info .cb-person-teaser-phone,
.cb-person-teaser-info .cb-person-teaser-mail {
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}

.cb-person-teaser-image {
  border-radius: 1.5rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin: 0;
  overflow: hidden;
  width: 100%;
}
@media (min-width: 61.25em) {
  .cb-person-teaser-image {
    width: 40%;
  }
}
.cb-person-teaser-image.no-image {
  background-color: #e9ecf2;
  height: 25rem;
}

.cb-member-teaser {
  --gutter: 2rem;
  -ms-flex-align: start;
      align-items: flex-start;
  color: white;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column;
      flex-flow: column;
  gap: var(--gutter);
  position: relative;
}
@media (min-width: 46.25em) {
  .cb-member-teaser {
    -ms-flex-flow: row;
        flex-flow: row;
  }
}
.cb-member-teaser a {
  color: white;
}
.cb-member-teaser + .cb-member-teaser {
  margin-top: 4rem;
}
.cb-member-teaser p {
  margin: 0;
}
.cb-member-teaser h2 {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 var(--gutter);
}
@media (min-width: 46.25em) {
  .cb-member-teaser h2 {
    font-size: 4.6rem;
  }
}

.cb-member-teaser-meta {
  -ms-flex-align: end;
      align-items: flex-end;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  gap: var(--gutter);
}
@media (min-width: 46.25em) {
  .cb-member-teaser-meta {
    -ms-flex-flow: column;
        flex-flow: column;
    -ms-flex-pack: justify;
        justify-content: space-between;
    width: 14rem;
  }
}
.cb-member-teaser-meta a {
  margin-top: auto;
}
.cb-member-teaser-meta a::after {
  content: "";
  height: 100%;
  position: absolute;
  width: 100%;
}

.co--list:has(.coMap.co--full) {
  left: 50%;
  position: relative;
  transform: translateX(-50%);
  width: 100vw;
}

.toTop {
  background: transparent;
  border: 0;
  cursor: pointer;
  display: inline-block;
  font-family: Quicksand, Helvetica, Arial, sans-serif;
  font-size: 1em;
  -ms-flex-align: center;
      align-items: center;
  background: #d7e613;
  border-radius: 50%;
  bottom: 10vh;
  display: -ms-flexbox;
  display: flex;
  height: 50px;
  -ms-flex-pack: center;
      justify-content: center;
  position: fixed;
  right: 2rem;
  transition: transform 0.3s linear;
  width: 50px;
}
@media (min-width: 46.25em) {
  .toTop {
    right: 7rem;
  }
}
.toTop:focus-visible, .toTop:hover {
  box-shadow: none;
  transform: translateY(-5px);
}