@charset "UTF-8";
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-lightbox {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: black;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}

.slick-lightbox .slick-loading .slick-list {
  background-color: transparent;
}

.slick-lightbox .slick-prev {
  left: 15px;
}

.slick-lightbox .slick-next {
  right: 15px;
}

.slick-lightbox-hide {
  opacity: 0;
}

.slick-lightbox-hide.slick-lightbox-ie {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}

.slick-lightbox-hide-init {
  position: absolute;
  top: -9999px;
  opacity: 0;
}

.slick-lightbox-hide-init.slick-lightbox-ie {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}

.slick-lightbox-inner {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.slick-lightbox-slick-item {
  text-align: center;
  overflow: hidden;
}

.slick-lightbox-slick-item:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em;
}

.slick-caption-bottom .slick-lightbox-slick-item .slick-lightbox-slick-item .slick-lightbox-slick-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: center;
  width: 100%;
  margin-bottom: 20px;
}

.slick-caption-dynamic .slick-lightbox-slick-item .slick-lightbox-slick-item .slick-lightbox-slick-caption {
  display: block;
  text-align: center;
}

.slick-lightbox-slick-item-inner {
  display: inline-block;
  vertical-align: middle;
  max-width: 90%;
  max-height: 90%;
}

.slick-lightbox-slick-img {
  margin: 0 auto;
  display: block;
  max-width: 90%;
  max-height: 90%;
}

.slick-lightbox-slick-caption {
  margin: 10px 0 0;
  color: white;
}

.slick-lightbox-close {
  position: absolute;
  top: 15px;
  right: 15px;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0;
  font-size: 0;
  cursor: pointer;
  background: transparent;
  color: transparent;
  padding: 0;
  border: none;
}

.slick-lightbox-close:focus {
  outline: none;
}

.slick-lightbox-close:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.85;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "×";
}

@font-face {
  font-family: "Nunito Sans";
  font-display: swap;
  font-style: normal;
  font-weight: 300;
  src: url("../../../../../../../../assets/teammade/themes/fonts/nunito/NunitoSans-Light.woff2") format("woff2");
}
@font-face {
  font-family: "Nunito Sans";
  font-display: swap;
  font-style: normal;
  font-weight: 400;
  src: url("../../../../../../../../assets/teammade/themes/fonts/nunito/NunitoSans-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "Nunito Sans";
  font-display: swap;
  font-style: normal;
  font-weight: 700;
  src: url("../../../../../../../../assets/teammade/themes/fonts/nunito/NunitoSans-Bold.woff2") format("woff2");
}
@font-face {
  font-family: "Domine";
  font-display: swap;
  font-style: normal;
  font-weight: 400;
  src: url("../../../../../../../../assets/teammade/themes/fonts/domine/Domine-Medium.woff2") format("woff2");
}
/*
* Die Breakpoints müssen anhand des "Mobile First" ansatzes sortiert sein.
 */
/*
 TODO: !!! Die Berechnung der Abstände muss entfernt werden, Beziehungsweise ausgelage
 */
/*
 horizontal-spacing
*/
/*
 vertical-spacing-small
*/
/*
 vertical-spacing-medium
*/
/*
 vertical-spacing-large
*/
/*
 vertical-spacing-larger
*/
/*
 Infobox
*/
.tabcontrol-basic {
  --tabs-margin-top: 0;
  --tabs-margin-left: 0;
  --tabs-margin-right: 0;
  --tabs-margin-bottom: var(--container-vs-medium);
  --tabs-direction: row;
  --tabs-justify-content: center;
  --tabs-gap: var(--grid-gutter);
  --tabs-item-font: var(--font-h3);
  --tabs-item-font-active: var(--font-h3);
  --tabs-item-color: var(--black);
  --tabs-item-color-active: var(--primary);
}
.tabcontrol-basic__tabs {
  margin-top: var(--tabs-margin-top);
  margin-bottom: var(--tabs-margin-bottom);
  margin-left: var(--tabs-margin-left);
  margin-right: var(--tabs-margin-right);
}
.tabcontrol-basic__tabs ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: var(--tabs-justify-content);
      -ms-flex-pack: var(--tabs-justify-content);
          justify-content: var(--tabs-justify-content);
  gap: var(--tabs-gap);
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: var(--tabs-direction);
          flex-direction: var(--tabs-direction);
  margin-bottom: 0;
}
.tabcontrol-basic__tabs__item {
  font: var(--tabs-item-font);
  color: var(--tabs-item-color);
  cursor: pointer;
}
.tabcontrol-basic__tabs__item.active {
  cursor: unset;
  color: var(--tabs-item-color-active);
  font: var(--tabs-item-font-active);
}
.tabcontrol-basic__panes__item {
  display: none;
}
.tabcontrol-basic__panes__item.active {
  display: block;
}

.tabcontrol-basic--booking-manager {
  --tabs-item-font: var(--font-h6);
  --tabs-item-font-active: var(--font-h6);
  --tabs-item-color: var(--primary);
  --tabs-item-color-active: var(--primary);
}
.tabcontrol-basic--booking-manager .tabcontrol-basic__tabs {
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.tabcontrol-basic--booking-manager .tabcontrol-basic__tabs .active {
  font-weight: bold;
}
@media (min-width: 992px) {
  .tabcontrol-basic--booking-manager {
    margin-top: calc(-1 * var(--container-vs-medium));
  }
}

.tabcontrol-basic--booking-manager-detail {
  --tabs-item-font: var(--font-h6);
  --tabs-item-font-active: var(--font-h6);
  --tabs-item-color: var(--primary);
  --tabs-item-color-active: var(--primary);
  --tabs-margin-bottom: 0;
  --tabs-gap: 0;
  max-width: calc(var(--page-max-width) - 2 * var(--container-vs-large));
  width: 100%;
  margin: 0 auto;
}
.tabcontrol-basic--booking-manager-detail .tabcontrol-basic__tabs {
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.tabcontrol-basic--booking-manager-detail .tabcontrol-basic__tabs .active {
  font-weight: bold;
  background: var(--g-100);
}
.tabcontrol-basic--booking-manager-detail .tabcontrol-basic__tabs__item {
  padding: calc(0.6 * var(--font-baseline)) calc(1 * var(--font-baseline));
}
.tabcontrol-basic--booking-manager-detail .tabcontrol-basic__panes {
  background: var(--g-100);
}
.tabcontrol-basic--booking-manager-detail .tabcontrol-basic__panes__item {
  max-width: 1200px;
  margin: 0 auto;
}
.tabcontrol-basic--booking-manager-detail .tabcontrol-basic__panes__item ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0;
  gap: var(--list-gap);
}
.tabcontrol-basic--booking-manager-detail .tabcontrol-basic__panes__item ul li {
  position: relative;
  padding-left: 1.6em;
  width: calc(var(--list-width) - var(--list-gap));
}
.tabcontrol-basic--booking-manager-detail .tabcontrol-basic__panes__item ul li:before {
  position: absolute;
  left: 0;
  content: "\f068";
  color: var(--primary);
  font-weight: 300;
  font-family: var(--font-family-fontawesome-pro);
}
@media (max-width: 991px) {
  .tabcontrol-basic--booking-manager-detail {
    --tabs-direction: column;
    --list-gap: calc(.4 * var(--font-baseline));
    --list-width: 100%;
  }
  .tabcontrol-basic--booking-manager-detail .tabcontrol-basic__panes__item {
    padding: var(--container-hs);
  }
}
@media (min-width: 992px) {
  .tabcontrol-basic--booking-manager-detail {
    --list-gap: calc(.7 * var(--font-baseline));
    --list-width: 33%;
    margin-top: calc(-1 * var(--container-vs-medium));
  }
  .tabcontrol-basic--booking-manager-detail .tabcontrol-basic__tabs__item {
    width: 100%;
    text-align: center;
  }
  .tabcontrol-basic--booking-manager-detail .tabcontrol-basic__panes__item {
    padding: var(--container-vs-medium);
  }
}

.card-tabcontrol-rooms {
  --tabcontrol-gap:var(--container-vs-medium);
  --tabcontrol-padding:var(--container-vs-medium) var(--container-vs-large);
  --tabcontrol-font:var(--font-h4);
  --tabcontrol-color: var(--secondary);
  --tabcontrol-color-active:var(--primary);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.card-tabcontrol-rooms__tabs {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: var(--container-vs-medium);
}
.card-tabcontrol-rooms__tabs ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: var(--tabcontrol-gap);
  margin-bottom: 0 !important;
}
.card-tabcontrol-rooms__tabs ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: 0.4s linear all;
  transition: 0.4s linear all;
  cursor: pointer;
  font: var(--tabcontrol-font);
  color: var(--tabcontrol-color);
}
.card-tabcontrol-rooms__tabs ul li:hover {
  color: var(--tabcontrol-color-active);
  font-weight: 700;
}
.card-tabcontrol-rooms__tabs ul li.active {
  color: var(--tabcontrol-color-active);
  font-weight: 700;
}
.card-tabcontrol-rooms__panes__item {
  display: none;
}
.card-tabcontrol-rooms__panes__item__headline {
  display: none;
}
.card-tabcontrol-rooms__panes__item.active {
  display: block;
}

.accordion-simple .hl {
  font: var(--font-h2);
  padding-left: 60px;
  cursor: pointer;
  position: relative;
}
.accordion-simple .hl:after {
  width: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 25px;
  content: "\f055";
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  font-family: var(--font-family-fontawesome-pro);
  border-radius: 20px;
  color: var(--primary);
  font-weight: 200;
  text-align: center;
}
.accordion-simple .mod_accordion_simple {
  -ms-grid-column-span: 12;
  grid-column: span 12;
  border-bottom: 2px solid var(--g-200);
}
.accordion-simple .wrapper {
  overflow: hidden;
  width: calc(100% - 50px);
  max-height: 0;
}
.accordion-simple > .zb-i {
  grid-gap: 30px;
}
.accordion-simple > .zb-i .hl {
  margin-bottom: 30px;
}
.accordion-simple .open .wrapper {
  padding-bottom: 30px;
  max-height: 100%;
}
.accordion-simple .open .hl:after {
  content: "\f056";
}
.location-imprint .section > dl dt, .location-imprint .section > dl dd {
  margin-left: 0;
  padding: 0;
}
.location-imprint .section > dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.location-imprint .section > dl dt {
  font-weight: bold;
}
.location-imprint .section > dl dt, .location-imprint .section > dl dd {
  margin-top: calc(0.6 * var(--font-base));
}
.location-imprint .section + .section {
  margin-top: var(--container-vs-small) !important;
}
@media (max-width: 991px) {
  .location-imprint .section > dl dt {
    width: 99%;
  }
}
@media (min-width: 992px) {
  .location-imprint {
    max-width: 84%;
    margin-right: auto;
  }
  .location-imprint .section > dl dt {
    width: 49%;
  }
}

@media (max-width: 991px) {
  .location-basic {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
  }
  .location-basic__picture {
    position: relative;
    overflow: hidden;
    margin-bottom: 0 !important;
    margin-bottom: 0;
  }
  .location-basic__picture picture {
    position: static;
  }
  .location-basic__picture .img-responsive {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .location-basic__text :last-child, .location-basic__text__text :last-child {
    margin-bottom: 0;
  }
  .location-basic .location-basic__text > .zb-i {
    padding: var(--container-infobox-vs) var(--container-infobox-hs);
  }
  .location-basic__picture {
    margin-bottom: 0 !important;
  }
  .location-basic__picture picture {
    height: 0;
    padding-bottom: 60%;
  }
}
@media (min-width: 992px) {
  .location-basic {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-grid-column-span: 12 !important;
    grid-column-end: span 12 !important;
    height: 200px !important;
  }
  .location-basic__picture {
    position: relative;
    overflow: hidden;
  }
  .location-basic__picture picture {
    position: static;
  }
  .location-basic__picture .img-responsive {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .location-basic__text :last-child, .location-basic__text__text :last-child {
    margin-bottom: 0;
  }
  .location-basic .location-basic__text {
    width: 80%;
  }
  .location-basic .location-basic__text > .zb-i {
    padding: var(--container-infobox-vs) var(--container-infobox-hs);
  }
  .location-basic .location-basic__picture {
    width: 20%;
  }
  .location-basic .location-basic__picture picture {
    height: 100%;
    position: relative;
  }
}

.mod_newslist {
  --component-grid-gap: calc(1.2 * var(--font-baseline) );
}
.mod_newslist > .zb-i {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 0;
  gap: var(--component-grid-gap);
}
.ce-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.ce-icon > * {
  margin-bottom: calc((var(--font-baseline)) * 1);
}
.ce-icon > *:last-child {
  margin-bottom: 0;
}
.ce-icon__text > .zb-i > * {
  margin-bottom: calc((var(--font-baseline)) * 1);
}
.ce-icon__text > .zb-i > *:last-child {
  margin-bottom: 0;
}
.ce-icon__icon {
  width: 90px;
  height: 90px;
  text-align: center;
  line-height: 90px;
  border-radius: 90px;
  background-color: var(--primary);
  color: white;
  font-size: 30px;
  margin-bottom: 0 !important;
}
.ce-icon__text {
  width: calc(100% - 90px);
  padding-left: 30px;
}
.ce-icon__hl {
  font-size: inherit;
  font-weight: bold;
  margin-bottom: 0 !important;
}
@media (min-width: 1280px) {
  .ce-icon {
    -ms-grid-column-span: 4;
    grid-column-end: span 4;
  }
  .ce-icon:nth-child(1n+4) {
    margin-top: calc(80px - var(--font-baseline));
  }
}
.card-portfolio {
  --button-size: calc(1.6 * var(--font-baseline));
  --component-image-height: var(--container-vs-small);
  --component-text-padding: calc(1.2 * var(--font-baseline));
  position: relative;
  backdrop-filter: blur(20px);
  background: rgba(0, 0, 0, 0.05);
  border: 1px solid hsla(var(--secondary--h), var(--secondary--s), var(--secondary--l), 0.2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
body.ios .card-portfolio, body.mobile .card-portfolio {
  backdrop-filter: unset;
  background: rgba(0, 0, 0, 0.3);
}
.card-portfolio .card-portfolio__picture {
  aspect-ratio: 8/5;
  margin-bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.card-portfolio .card-portfolio__picture img {
  height: var(--component-image-height);
  width: auto;
  margin: 0 auto;
  display: block;
}
.card-portfolio .card-portfolio__text {
  padding: var(--component-text-padding);
  padding-top: 0;
}
.card-portfolio .card-portfolio__text > .zb-i {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.card-portfolio .card-portfolio__text > .zb-i p {
  -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
          order: 10;
  margin: 0;
}
.card-portfolio .card-portfolio__btn {
  margin-top: var(--container-vs-small);
  -webkit-box-ordinal-group: 21;
      -ms-flex-order: 20;
          order: 20;
}
.card-portfolio .card-portfolio__btn:after {
  content: "\f054";
  font-family: var(--font-family-fontawesome-pro);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: var(--button-size);
  height: var(--button-size);
  border: 1px solid var(--secondary);
  border-radius: var(--button-size);
  -webkit-transition: 0.2s linear all;
  transition: 0.2s linear all;
}
.card-portfolio .card-portfolio__btn span {
  display: none;
}
.card-portfolio .card-portfolio__btn:hover:after {
  background: var(--secondary);
  -webkit-box-shadow: 0 0 30px 10px rgba(255, 255, 255, 0.4);
          box-shadow: 0 0 30px 10px rgba(255, 255, 255, 0.4);
}
.card-portfolio ul:not([class]) {
  margin-bottom: var(--container-vs-small);
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: calc(0.4 * var(--font-baseline));
}
.card-portfolio ul:not([class]) li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font: var(--font-h6);
  font-size: 12px;
  height: calc(1.2 * var(--font-baseline));
  padding: 0 calc(0.6 * var(--font-baseline));
  border: 1px solid var(--secondary);
  border-radius: var(--font-baseline);
}
@media (max-width: 991px) {
  .card-portfolio {
    --component-image-height: var(--container-vs-medium);
  }
}
.card-list {
  --font-base-factor-headline: .6;
}
.card-list__main, .card-list.hl--single {
  display: block;
}
.card-list__hl__main, .card-list.hl--single {
  display: block;
}
.card-list__hl__sub {
  display: block;
  font: var(--font-h6);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: calc(var(--compontent-text-subheadline-factor) * var(--font-baseline));
}
.card-list.hl--wsub {
  display: block;
}
.card-list__hl__main, .card-list__hl.hl--single {
  display: block;
  font: var(--font-h3);
}
.card-list + .card-list {
  padding-top: var(--component-grid-gap);
  border-top: 1px solid hsla(var(--secondary--h), var(--secondary--s), var(--secondary--l), 0.2);
}
.card-list .card-list__hl__sub {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font: var(--font-h6);
  font-size: 12px;
  height: calc(1.2 * var(--font-baseline));
  padding: 0 calc(0.6 * var(--font-baseline));
  border: 1px solid var(--secondary);
  border-radius: var(--font-baseline);
}
body {
  background: var(--black);
  /*
  #main {
      transition: background-color .4s linear;
      .bg-g-900 {
          background: transparent !important;
      }
  }

  &.switch-bg {
      #main {
          background: rgba(1, 7, 29, .9);
      }
  }

   */
}
body.oc-menu--is-visible, body.animate-logo {
  overflow: hidden;
}
body #page:before {
  content: " ";
  position: fixed;
  z-index: 100;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  border: var(--page-border) solid var(--white);
}
@media (max-width: 991px) {
  body {
    --page-border: 5px;
  }
}
.footer__container ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.footer__container ul > li {
  position: relative;
  display: block;
  line-height: 1.6em;
}
.footer__container ul > li > * {
  display: block;
}
.footer__container ul > li + li {
  margin-top: calc(0.4 * var(--font-baseline));
}
.footer__container > .zb-i {
  position: relative;
}
.footer__container > .zb-i:before {
  content: " ";
  position: absolute;
  top: 0;
  height: 1px;
  left: var(--container-hs);
  right: var(--container-hs);
  background: hsla(var(--secondary--h), var(--secondary--s), var(--secondary--l), 0.2);
}
.footer__container--navigation {
  --container-top: var(--container-vs-large);
  --container-bottom: var(--container-vs-large);
  --container-left: var(--container-hs);
  --container-right: var(--container-hs);
}
.footer__container--navigation > .zb-i {
  padding: var(--container-top) var(--container-right) var(--container-bottom) var(--container-left);
}
.footer__container--navigation nav .hl {
  margin-bottom: calc(0.7 * var(--font-baseline));
  font: var(--font-h6);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.footer__container--navigation nav ul {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-bottom: 0 !important;
}
.footer__container--navigation nav ul a {
  font: var(--list-text-font);
}
.footer__container--navigation nav ul a, .footer__container--navigation nav ul a:hover {
  color: var(--black) !important;
}
.footer__container--navigation nav ul a:hover {
  text-decoration: underline;
}
.footer__container--navigation nav ul i {
  display: none;
}
.footer__container--navigation > .zb-i > .zb-ce {
  -ms-grid-column-span: var(--grid-columns) !important;
  grid-column-end: span var(--grid-columns) !important;
}
.footer__container--navigation nav ul a, .footer__container--navigation nav ul a:hover {
  color: var(--black) !important;
}
.footer__container--navigation nav ul i {
  display: none;
}
@media (max-width: 767px) {
  .footer__container--navigation {
    --grid-columns: 12;
    --list-text-font: var(--font-text);
  }
}
@media (min-width: 768px) {
  .footer__container--navigation {
    --grid-columns: 4;
    --list-text-font: var(--font-text);
  }
}
@media (min-width: 1600px) {
  .footer__container--navigation {
    --grid-columns: 2;
    --list-text-font: var(--font-text);
  }
}

.footer__container--disclaimer {
  --container-top: var(--container-vs-large);
  --container-bottom: var(--container-vs-large);
  --container-left: var(--container-hs);
  --container-right: var(--container-hs);
  border-top: 1px solid var(--g-400);
}
.footer__container--disclaimer > .zb-i {
  padding: var(--container-top) var(--container-right) var(--container-bottom) var(--container-left);
}
.footer__container--disclaimer nav .hl {
  margin-bottom: calc(0.7 * var(--font-baseline));
  font: var(--font-h6);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.footer__container--disclaimer nav ul {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-bottom: 0 !important;
}
.footer__container--disclaimer nav ul a {
  font: var(--list-text-font);
}
.footer__container--disclaimer nav ul a, .footer__container--disclaimer nav ul a:hover {
  color: var(--black) !important;
}
.footer__container--disclaimer nav ul a:hover {
  text-decoration: underline;
}
.footer__container--disclaimer nav ul i {
  display: none;
}
.footer__container--disclaimer ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 0;
}
.footer__container--disclaimer ul > li {
  position: relative;
  display: block;
  line-height: var(--font-baseline);
}
.footer__container--disclaimer ul > li > * {
  display: block;
}
.footer__container--disclaimer ul > li + li {
  margin-top: calc(0.6 * var(--font-baseline));
}
.footer__container--disclaimer ul {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
.footer__container--disclaimer ul > li > * {
  display: inline-block;
}
.footer__container--disclaimer ul > li + li {
  margin: 0;
  margin-left: calc(1.2 * var(--font-base));
}
.footer__container--disclaimer > .zb-i {
  padding: var(--font-baseline) var(--container-hs);
}
.footer__container--disclaimer nav ul a, .footer__container--disclaimer nav ul a:hover {
  color: var(--black) !important;
}
.footer__container--disclaimer nav ul i {
  display: none;
}
@media (min-width: 768px) {
  .footer__container--disclaimer {
    --list-text-font: var(--font-text);
  }
}

.footer__container--newsletter {
  --container-top: var(--container-vs-large);
  --container-bottom: var(--container-vs-large);
  --container-left: var(--container-hs);
  --container-right: var(--container-hs);
  background: var(--black);
}
.footer__container--newsletter > .zb-i {
  padding: var(--container-top) var(--container-right) var(--container-bottom) var(--container-left);
}
.footer__container--newsletter .level_1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.footer__container--newsletter .level_1 li {
  position: relative;
  display: block;
  line-height: var(--font-baseline);
}
.footer__container--newsletter .level_1 li + li {
  margin-top: calc(0.6 * var(--font-base));
}
.footer__container--newsletter .level_1 li {
  padding-left: calc(1.4 * var(--font-baseline));
}
.footer__container--newsletter .level_1 li:before {
  content: "\f068";
  line-height: var(--font-baseline);
  font-family: var(--font-family-fontawesome-pro);
  font-size: var(--font-text);
  position: absolute;
  left: 0;
}
.footer__container--newsletter li:before {
  color: var(--secondary);
}
.footer__container--newsletter > .zb-i {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  grid-row-gap: var(--font-baseline);
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
.footer__container--newsletter .hl--single {
  --font-base-factor-headline: 1;
  font: var(--font-h3);
}
.footer__container--newsletter .hl--single, .footer__container--newsletter .hl--single a {
  color: var(--secondary) !important;
}
.footer__container--newsletter .ce_image figure {
  width: 100%;
  padding: 0 var(--container-vs-small);
}
@media (max-width: 991px) {
  .footer__container--newsletter > .zb-i {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    grid-row-gap: var(--container-vs-medium);
  }
}
@media (min-width: 992px) {
  .footer__container--newsletter > .zb-i .zb-ce {
    width: 100%;
  }
}

.card-keyfacts {
  --compontent-list-direction: row;
  --compontent-list-gap: var(--container-vs-small);
}
.card-keyfacts .card-keyfacts__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: var(--compontent-list-direction);
          flex-direction: var(--compontent-list-direction);
  gap: var(--compontent-list-gap);
}
.card-keyfacts .card-keyfacts__list__item {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
.card-keyfacts .card-keyfacts__list__item__label {
  font: var(--font-h6);
  text-transform: uppercase;
  letter-spacing: 2px;
}
.card-keyfacts .card-keyfacts__list__item__value {
  font: var(--font-h0);
  white-space: nowrap;
  text-transform: uppercase;
  color: transparent;
  -webkit-text-stroke: 1px var(--secondary);
}
@media (max-width: 991px) {
  .card-keyfacts {
    --compontent-list-direction: column;
  }
}