/* fold grotesque*/
@font-face {
    font-family: Fold Grotesque Pro;
    font-style: normal;
    font-weight: 400;
    src: url("../../") format("opentype");
}
@font-face {
    font-family: Fold Grotesque Pro;
    font-style: normal;
    font-weight: 500;
    src: url(../../schriftarten/fold-grotesque-pro/foldgrotesquepro-light-caexuu-n.woff2) format("opentype");
}
@font-face {
    font-family: Fold Grotesque Pro;
    font-style: normal;
    font-weight: 700;
    src: url(../../schriftarten/fold-grotesque-pro/foldgrotesquepro-light-caexuu-n.woff2) format("opentype");
}
@font-face {
    font-family: Fold Grotesque Pro;
    font-style: normal;
    font-weight: 800;
    src: url("../../schriftarten/fold-grotesque-pro/foldgrotesquepro-light-caexuu-n.woff2") format("opentype");
}
@font-face {
    font-family: Fold Grotesque Pro;
    font-style: normal;
    font-weight: 850;
    src: url(../../schriftarten/fold-grotesque-pro/foldgrotesquepro-light-caexuu-n.woff2) format("opentype");
}
@font-face {
    font-family: Fold Grotesque Pro;
    font-style: normal;
    font-weight: 900;
    src: url(../../schriftarten/fold-grotesque-pro/foldgrotesquepro-light-caexuu-n.woff2) format("opentype");
}
@font-face {
    font-family: Fold Grotesque Pro;
    font-style: italic;
    font-weight: 400;
    src: url(../../schriftarten/fold-grotesque-pro/foldgrotesquepro_lightitalic_b2ikz9eu.woff2) format("opentype");
}

body {
    font-family: Fold Grotesque Pro, "Helvetica Neue", Arial, sans-serif;
    line-height: 1.5;
    font-size: 1.125rem;
    color: #000000;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased; }

/*  ####################  source/modules/LightboxContent/scss/LightboxContent.scss  ####################  */
.mod-lightbox-content {
    background-color: #ffffff;
    width: 38.75rem;
    max-width: 38.75rem;
    margin: auto;
    padding: 0.5rem 2rem 2rem 2rem;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.4); }
.mod-lightbox-content.smaller-padding {
    padding: 0.4rem 0.4rem 0 0.4rem; }
.mod-lightbox-content.white-close-button .mfp-close {
    color: white;
    opacity: 1; }
.mod-lightbox-content .mfp-close {
    font-size: 32px;
    opacity: 1; }
@media screen and (max-width: 767px) {
    .mod-lightbox-content {
        width: 100%;
        min-width: 100%;
        max-width: none;
        padding: 14px; } }
.mod-lightbox-content--wide {
    width: 70%;
    max-width: 810px; }
@media screen and (max-width: 767px) {
    .mod-lightbox-content--wide {
        width: 100%;
        min-width: 100%;
        max-width: none; } }

@media screen and (min-width: 768px) and (max-width: 991px) {
    .mod-lightbox-content--wide {
        width: 80%;
        max-width: 80%; } }
.mod-lightbox-content__step {
    display: none; }
.mod-lightbox-content__step.mod-lightbox-content__step--current {
    display: block;

    &>p {
        margin-bottom: 1rem !important
    }
}
.mod-lightbox-content > h3:first-child,
.mod-lightbox-content > h4:first-child,
.mod-lightbox-content > h5:first-child,
.mod-lightbox-content > .heading-h3:first-child,
.mod-lightbox-content > .heading-h4:first-child,
.mod-lightbox-content > .heading-h5:first-child {
    padding-top: 22px; }
.mod-lightbox-content__divider {
    margin-bottom: 30px;
    border: 1px solid #CDCDCD;
    height: 1px;
    background-color: #CDCDCD;
    float: left;
    width: 100%; }
@media screen and (max-width: 767px) {
    .mod-lightbox-content__divider {
        margin-bottom: 1.5rem; } }

@media screen and (min-width: 576px) {
    .dialog-button-row button,
    .dialog-button-row a {
        float: right;
        margin-right: 1rem; }
    .dialog-button-row button:first-child,
    .dialog-button-row a:first-child {
        margin-right: 0; } }

@media screen and (max-width: 575px) {
    .dialog-button-row button,
    .dialog-button-row a {
        margin-top: 8px; }
    .dialog-button-row button:first-child,
    .dialog-button-row a:first-child {
        margin-top: 0; } }

.dialog-button-row:before, .dialog-button-row:after {
    content: ' ';
    display: table; }

.dialog-button-row:after {
    clear: both; }

@media screen and (max-width: 575px) {
    .form-group {
        margin-bottom: 20px; } }

/* Magnific Popup CSS */
.mfp-bg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1042;
    overflow: hidden;
    position: fixed;
    background: #000000;
    opacity: 0.3; }

.mfp-wrap {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1043;
    position: fixed;
    outline: none !important;
    -webkit-backface-visibility: hidden; }

.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0 10px;
    box-sizing: border-box; }

.mfp-container:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle; }

.mfp-align-top .mfp-container:before {
    display: none; }

.mfp-content {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    text-align: left;
    z-index: 1045; }

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
    width: 100%;
    cursor: auto; }

.mfp-ajax-cur {
    cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: zoom-out; }

.mfp-zoom {
    cursor: pointer;
    cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
    cursor: auto; }

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none; }

.mfp-loading.mfp-figure {
    display: none; }

.mfp-hide {
    display: none !important; }

.mfp-preloader {
    color: #CCC;
    position: absolute;
    top: 50%;
    width: auto;
    text-align: center;
    margin-top: -0.8em;
    left: 8px;
    right: 8px;
    z-index: 1044; }

.mfp-preloader a {
    color: #CCC; }

.mfp-preloader a:hover {
    color: #FFF; }

.mfp-s-ready .mfp-preloader {
    display: none; }

.mfp-s-error .mfp-content {
    display: none; }

button.mfp-close,
button.mfp-arrow {
    overflow: visible;
    cursor: pointer;
    background: transparent;
    border: 0;
    -webkit-appearance: none;
    display: block;
    outline: none;
    padding: 0;
    z-index: 1046;
    box-shadow: none;
    touch-action: manipulation; }

button::-moz-focus-inner {
    padding: 0;
    border: 0; }

.mfp-close {
    width: 44px;
    height: 44px;
    line-height: 44px;
    position: absolute;
    right: 0;
    top: 0;
    text-decoration: none;
    text-align: center;
    opacity: 0.65;
    padding: 0 0 18px 10px;
    font-style: normal;
    font-size: 28px;
    font-family: Arial, Baskerville, monospace; }

.mfp-close:hover,
.mfp-close:focus {
    opacity: 1; }

.mfp-close:active {
    top: 1px; }

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
    color: #FFF;
    right: -6px;
    text-align: right;
    padding-right: 6px;
    width: 100%; }

.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #CCC;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap; }

.mfp-arrow {
    position: absolute;
    opacity: 0.65;
    margin: 0;
    top: 50%;
    margin-top: -55px;
    padding: 0;
    width: 90px;
    height: 110px;
    -webkit-tap-highlight-color: transparent; }

.mfp-arrow:active {
    margin-top: -54px; }

.mfp-arrow:hover,
.mfp-arrow:focus {
    opacity: 1; }

.mfp-arrow:before,
.mfp-arrow:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent; }

.mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px; }

.mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7; }

.mfp-arrow-left {
    left: 0; }

.mfp-arrow-left:after {
    border-right: 17px solid #FFF;
    margin-left: 31px; }

.mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
    right: 0; }

.mfp-arrow-right:after {
    border-left: 17px solid #FFF;
    margin-left: 39px; }

.mfp-arrow-right:before {
    border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px; }

.mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px; }

.mfp-iframe-holder .mfp-close {
    top: -40px; }

.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%; }

.mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000; }

/* Main image in popup */
img.mfp-img {
    width: auto;
    height: auto;
    display: block;
    line-height: 0;
    box-sizing: border-box;
    padding: 40px 0 40px;
    margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
    line-height: 0; }

.mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444; }

.mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px; }

.mfp-figure figure {
    margin: 0; }

.mfp-bottom-bar {
    margin-top: -36px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    cursor: auto; }

.mfp-title {
    text-align: left;
    line-height: 18px;
    color: #F3F3F3;
    word-wrap: break-word;
    padding-right: 36px; }

.mfp-image-holder .mfp-content {
    max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
    /**
         * Remove all paddings around the image on small screen
         */
    .mfp-img-mobile .mfp-image-holder {
        padding-left: 0;
        padding-right: 0; }
    .mfp-img-mobile img.mfp-img {
        padding: 0; }
    .mfp-img-mobile .mfp-figure:after {
        top: 0;
        bottom: 0; }
    .mfp-img-mobile .mfp-figure small {
        display: inline;
        margin-left: 5px; }
    .mfp-img-mobile .mfp-bottom-bar {
        background: rgba(0, 0, 0, 0.6);
        bottom: 0;
        margin: 0;
        top: auto;
        padding: 3px 5px;
        position: fixed;
        box-sizing: border-box; }
    .mfp-img-mobile .mfp-bottom-bar:empty {
        padding: 0; }
    .mfp-img-mobile .mfp-counter {
        right: 5px;
        top: 3px; }
    .mfp-img-mobile .mfp-close {
        top: 0;
        right: 0;
        width: 35px;
        height: 35px;
        line-height: 35px;
        background: rgba(0, 0, 0, 0.6);
        position: fixed;
        text-align: center;
        padding: 0; } }

@media all and (max-width: 900px) {
    .mfp-arrow {
        transform: scale(0.75); }
    .mfp-arrow-left {
        transform-origin: 0; }
    .mfp-arrow-right {
        transform-origin: 100%; }
    .mfp-container {
        padding-left: 6px;
        padding-right: 6px; } }

/*

====== Zoom effect ======

*/
/* start state */
.mfp-with-anim {
    opacity: 0;
    transition: all 0.2s ease-in-out;
    transform: scale(0.8); }

.mfp-bg {
    opacity: 0;
    transition: all 0.3s ease-out; }

/* animate in */
.mfp-ready .mfp-with-anim {
    opacity: 1;
    transform: scale(1); }

.mfp-ready.mfp-bg {
    opacity: 0.3; }

/* animate out */
.mfp-removing .mfp-with-anim {
    transform: scale(0.8);
    opacity: 0; }

.mfp-removing.mfp-bg {
    opacity: 0; }

/*  ####################  source/modules/Info/scss/Info.scss  ####################  */
.mod-info {
    margin: 1rem 0; }
.mod-info .info-wrapper {
    position: relative; }
.mod-info .info-wrapper * {
    margin: 0;
    padding: 0; }
.mod-info .info-wrapper .icon {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: 0; }
.mod-info--info .info-wrapper *:not(span) {
    margin: 0.5rem 0; }
.mod-info--border {
    border-top: 3px solid #CDCDCD;
    border-bottom: 3px solid #CDCDCD; }
.mod-info--xs {
    padding: 5px 0; }
.mod-info--xs .info-wrapper {
    padding-left: 35px; }
.mod-info--xs .info-wrapper .icon {
    font-size: 1.5625rem; }
.mod-info--md {
    padding: 15px 0; }
.mod-info--md .info-wrapper {
    padding-left: 58px; }
.mod-info--md .info-wrapper .icon {
    font-size: 3rem; }
.mod-info--lg {
    padding: 25px 0; }
.mod-info--lg .info-wrapper {
    padding-left: 80px; }
.mod-info--lg .info-wrapper .icon {
    font-size: 4.375rem; }

.icon--WL_Info_polygon:before {
    content: "";
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjMDA0RjlGIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDI0IDI0IiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCI+PGc+PHBhdGggZD0iTTAsMGgyNHYyNEgwVjB6IiBmaWxsPSJub25lIi8+PC9nPjxnPjxwYXRoIGQ9Ik0xMiwyQzYuNDgsMiwyLDYuNDgsMiwxMnM0LjQ4LDEwLDEwLDEwczEwLTQuNDgsMTAtMTBTMTcuNTIsMiwxMiwyeiBNMTIsMTdjLTAuNTUsMC0xLTAuNDUtMS0xdi00YzAtMC41NSwwLjQ1LTEsMS0xIHMxLDAuNDUsMSwxdjRDMTMsMTYuNTUsMTIuNTUsMTcsMTIsMTd6IE0xMiw5TDEyLDljLTAuNTUsMC0xLTAuNDUtMS0xdjBjMC0wLjU1LDAuNDUtMSwxLTFoMGMwLjU1LDAsMSwwLjQ1LDEsMXYwIEMxMyw4LjU1LDEyLjU1LDksMTIsOXoiLz48L2c+PC9zdmc+Cg==");
    mask-image: url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjMDA0RjlGIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDI0IDI0IiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCI+PGc+PHBhdGggZD0iTTAsMGgyNHYyNEgwVjB6IiBmaWxsPSJub25lIi8+PC9nPjxnPjxwYXRoIGQ9Ik0xMiwyQzYuNDgsMiwyLDYuNDgsMiwxMnM0LjQ4LDEwLDEwLDEwczEwLTQuNDgsMTAtMTBTMTcuNTIsMiwxMiwyeiBNMTIsMTdjLTAuNTUsMC0xLTAuNDUtMS0xdi00YzAtMC41NSwwLjQ1LTEsMS0xIHMxLDAuNDUsMSwxdjRDMTMsMTYuNTUsMTIuNTUsMTcsMTIsMTd6IE0xMiw5TDEyLDljLTAuNTUsMC0xLTAuNDUtMS0xdjBjMC0wLjU1LDAuNDUtMSwxLTFoMGMwLjU1LDAsMSwwLjQ1LDEsMXYwIEMxMyw4LjU1LDEyLjU1LDksMTIsOXoiLz48L2c+PC9zdmc+Cg==");
    mask-size: contain;
    background-color: black;
    display: inline-block;
    width: 64px;
    height: 64px;
    background-size: contain;
    background-repeat: no-repeat;
}

/*  ####################  source/elements/heading/scss/_heading.all.scss  ####################  */
h1, .heading-h1 {
    font-size: 3.125rem;
    line-height: 3.25rem;
    /*@include media-breakpoint-down(sm) {
          font-size: rem(50px);
          line-height: rem(52px);
      }*/
    font-family: Fold Grotesque Pro, "Helvetica Neue", Arial, sans-serif; }
h1.big-number, .heading-h1.big-number {
    font-size: 7.5rem;
    line-height: 7.625rem;
    letter-spacing: -2px; }
@media screen and (max-width: 767px) {
    h1.big-number, .heading-h1.big-number {
        font-size: 3.75rem;
        line-height: 3.875rem;
        letter-spacing: -2px; } }
h1.large-number, .heading-h1.large-number {
    font-size: 6.25rem;
    line-height: 1;
    letter-spacing: -2px; }
@media screen and (max-width: 767px) {
    h1.large-number, .heading-h1.large-number {
        font-size: 4.6875rem; } }
h1 small, .heading-h1 small {
    display: inline-block;
    margin-top: -1.25rem;
    margin-left: -1.25rem;
    font-size: 2.375rem;
    vertical-align: top; }

h2, .heading-h2 {
    font-size: 2.5rem;
    line-height: 2.625rem;
    font-family: Fold Grotesque Pro, "Helvetica Neue", Arial, sans-serif; }
@media screen and (max-width: 767px) {
    h2, .heading-h2 {
        font-size: 2rem;
        line-height: 2.125rem; } }

.heading-h3 {
    font-size: 2.3275rem !important;
    line-height: 2.5rem;
    text-transform: uppercase;
    font-weight: 500;
    font-family: Fold Grotesque Pro, "Helvetica Neue", Arial, sans-serif; }
@media screen and (max-width: 767px) {
    .heading-h3 {
        font-size: 1.5rem !important;
        line-height: 1.625rem; } }

h4, .heading-h4 {
    font-size: 1.25rem !important;
    line-height: 1.625rem;
    font-family: Fold Grotesque Pro, "Helvetica Neue", Arial, sans-serif; }
@media screen and (max-width: 767px) {
    h4, .heading-h4 {
        font-size: 1.25rem !important;
        line-height: 1.375rem; } }

h5, .heading-h5 {
    font-size: 1.25rem;
    line-height: 1.375rem;
    font-family: Fold Grotesque Pro, "Helvetica Neue", Arial, sans-serif; }
@media screen and (max-width: 767px) {
    h5, .heading-h5 {
        font-size: 1.125rem;
        line-height: 1.25rem; } }

h6, .heading-h6 {
    font-size: 1.125rem;
    line-height: 1.25rem; }
@media screen and (max-width: 767px) {
    h6, .heading-h6 {
        font-size: 1rem;
        line-height: 1.125rem; } }

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

.btn {
    transform: translateZ(0);
    background: none;
    border: none;
    text-decoration: none !important;
    display: inline-block;
    vertical-align: top;
    transition: all 0.3s;
    font-size: 1rem;
    text-transform: uppercase;
    position: relative;
    top: 0;
    left: 0;
    overflow: hidden; }
.btn:focus {
    outline: 2px solid #00391e;
    outline-offset: 3px;
}
.btn:after, .btn:before {
    transition: all 0.3s; }

.btn--primary,.btn--hero,.btn--secondary,.btn--pagination {
    color: #000 !important;
    min-height: 50px;
    padding: 19px 30px;
    min-width: 6.25rem;
    font-size: 1.10rem;
    line-height: 1.375rem;
    font-family: Fold Grotesque Pro,"Helvetica Neue",Arial,sans-serif;
    border-radius: 32px
}

.btn--primary:before,.btn--hero:before,.btn--secondary:before,.btn--pagination:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    border: 3px solid #c7db00;
    border-radius: 32px
}

.btn--primary:after,.btn--hero:after,.btn--secondary:after,.btn--pagination:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    transition-timing-function: ease-out;
    background-color: transparent;
    transform-origin: 0 0
}

.btn--primary:hover,.btn--hero:hover,.btn--secondary:hover,.btn--pagination:hover,.btn--primary:active,.btn--hero:active,.btn--secondary:active,.btn--pagination:active {
    color: #000000 !important;
    &>.icon--arrow_right:before {
        filter: invert(1)
    }
}

.btn--primary:hover:after,.btn--hero:hover:after,.btn--secondary:hover:after,.btn--pagination:hover:after,.btn--primary:active:after,.btn--hero:active:after,.btn--secondary:active:after,.btn--pagination:active:after {
    background-color: #c7db00
}

