img:not(.lazy-loaded)[data-src],
#footer .form-container:not(.lazy-loaded) {
    background: url("../images/layout/loading.svg") no-repeat center center;
}
@font-face {
    font-family: "icomoon";
    font-weight: null;
    font-style: normal;
    font-display: block;
    src: url("../fonts/icomoon.woff") format("woff"), url("../fonts/icomoon.ttf") format("truetype"), url("../fonts/icomoon.svg#icomoon") format("svg"), url("../fonts/icomoond41d.eot?#iefix") format("embedded-opentype");
}
@font-face {
    font-family: "Roboto";
    font-weight: regular;
    font-style: normal;
    font-display: block;
    src: url("../fonts/roboto-v27-latin-regular.woff2") format("woff2"), url("../fonts/roboto-v27-latin-regular.woff") format("woff"), url("../fonts/roboto-v27-latin-regular.ttf") format("truetype"),
        url("../fonts/roboto-v27-latin-regular.svg#Roboto") format("svg"), url("../fonts/roboto-v27-latin-regulard41d.eot?#iefix") format("embedded-opentype");
}
@font-face {
    font-family: "Roboto";
    font-weight: 700;
    font-style: normal;
    font-display: block;
    src: url("../fonts/roboto-v27-latin-700.woff2") format("woff2"), url("../fonts/roboto-v27-latin-700.woff") format("woff"), url("../fonts/roboto-v27-latin-700.ttf") format("truetype"),
        url("../fonts/roboto-v27-latin-700.svg#Roboto") format("svg"), url("../fonts/roboto-v27-latin-700d41d.eot?#iefix") format("embedded-opentype");
}
.row {
    margin-left: auto;
    margin-right: auto;
    max-width: 101.25rem;
    width: 100%;
    position: relative;
    display: flex;
    flex: 0 1 auto;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
}
.row:not(.full-width) .row {
    margin-left: -1.0625rem;
    padding-left: 0;
    padding-right: 0;
    max-width: calc(100% + 2.125rem);
    width: calc(100% + 2.125rem);
}
.row.full-width {
    max-width: none;
}
.row .cms-el-row {
    margin-left: -1.0625rem;
    padding-left: 0;
    padding-right: 0;
    max-width: calc(100% + 2.125rem);
    width: calc(100% + 2.125rem);
}
.row > .row {
    margin: 0;
    padding: 0;
    max-width: 100%;
    width: 100%;
    flex-basis: 100%;
}
.row.break-right,
.row.break-left {
    max-width: calc(50vw + 801px);
}
.row.break-right {
    margin-left: auto;
    margin-right: 0;
    justify-content: flex-start;
}
.row.break-left {
    margin-right: auto;
    margin-left: 0;
    justify-content: flex-end;
}
.col {
    float: left;
    padding-left: 1.0625rem;
    padding-right: 1.0625rem;
    max-width: 100%;
    width: 100%;
    flex: 0 0 auto;
    flex-grow: 1;
    flex-basis: 100%;
    box-sizing: border-box;
}
.no-gutter,
.no-gutter > .col {
    padding-left: 0;
    padding-right: 0;
}
@media (min-width: 0) {
    .col.default-1 {
        max-width: 8.33333%;
        flex-basis: 8.33333%;
    }
}
@media (min-width: 0) and (min-width: 101.25em) {
    .row.break-left > .col.default-1,
    .row.break-right > .col.default-1 {
        max-width: 8.4375rem;
    }
}
@media (min-width: 0) {
    .col.default-2 {
        max-width: 16.66667%;
        flex-basis: 16.66667%;
    }
}
@media (min-width: 0) and (min-width: 101.25em) {
    .row.break-left > .col.default-2,
    .row.break-right > .col.default-2 {
        max-width: 16.875rem;
    }
}
@media (min-width: 0) {
    .col.default-3 {
        max-width: 25%;
        flex-basis: 25%;
    }
}
@media (min-width: 0) and (min-width: 101.25em) {
    .row.break-left > .col.default-3,
    .row.break-right > .col.default-3 {
        max-width: 25.3125rem;
    }
}
@media (min-width: 0) {
    .col.default-4 {
        max-width: 33.33333%;
        flex-basis: 33.33333%;
    }
}
@media (min-width: 0) and (min-width: 101.25em) {
    .row.break-left > .col.default-4,
    .row.break-right > .col.default-4 {
        max-width: 33.75rem;
    }
}
@media (min-width: 0) {
    .col.default-5 {
        max-width: 41.66667%;
        flex-basis: 41.66667%;
    }
}
@media (min-width: 0) and (min-width: 101.25em) {
    .row.break-left > .col.default-5,
    .row.break-right > .col.default-5 {
        max-width: 42.1875rem;
    }
}
@media (min-width: 0) {
    .col.default-6 {
        max-width: 50%;
        flex-basis: 50%;
    }
}
@media (min-width: 0) and (min-width: 101.25em) {
    .row.break-left > .col.default-6,
    .row.break-right > .col.default-6 {
        max-width: 50.625rem;
    }
}
@media (min-width: 0) {
    .col.default-7 {
        max-width: 58.33333%;
        flex-basis: 58.33333%;
    }
}
@media (min-width: 0) and (min-width: 101.25em) {
    .row.break-left > .col.default-7,
    .row.break-right > .col.default-7 {
        max-width: 59.0625rem;
    }
}
@media (min-width: 0) {
    .col.default-8 {
        max-width: 66.66667%;
        flex-basis: 66.66667%;
    }
}
@media (min-width: 0) and (min-width: 101.25em) {
    .row.break-left > .col.default-8,
    .row.break-right > .col.default-8 {
        max-width: 67.5rem;
    }
}
@media (min-width: 0) {
    .col.default-9 {
        max-width: 75%;
        flex-basis: 75%;
    }
}
@media (min-width: 0) and (min-width: 101.25em) {
    .row.break-left > .col.default-9,
    .row.break-right > .col.default-9 {
        max-width: 75.9375rem;
    }
}
@media (min-width: 0) {
    .col.default-10 {
        max-width: 83.33333%;
        flex-basis: 83.33333%;
    }
}
@media (min-width: 0) and (min-width: 101.25em) {
    .row.break-left > .col.default-10,
    .row.break-right > .col.default-10 {
        max-width: 84.375rem;
    }
}
@media (min-width: 0) {
    .col.default-11 {
        max-width: 91.66667%;
        flex-basis: 91.66667%;
    }
}
@media (min-width: 0) and (min-width: 101.25em) {
    .row.break-left > .col.default-11,
    .row.break-right > .col.default-11 {
        max-width: 92.8125rem;
    }
}
@media (min-width: 0) {
    .col.default-12 {
        max-width: 100%;
        flex-basis: 100%;
    }
}
@media (min-width: 0) and (min-width: 101.25em) {
    .row.break-left > .col.default-12,
    .row.break-right > .col.default-12 {
        max-width: 101.25rem;
    }
}
@media (min-width: 0) {
    .col.default-auto {
        max-width: 100%;
        flex-basis: 0;
    }
    .row.break-left > .col.default-auto,
    .row.break-right > .col.default-auto {
        max-width: 100%;
    }
    .col.default-prefix-0 {
        margin-left: 0%;
    }
    .col.default-prefix-1 {
        margin-left: 8.33333%;
    }
    .col.default-prefix-2 {
        margin-left: 16.66667%;
    }
    .col.default-prefix-3 {
        margin-left: 25%;
    }
    .col.default-prefix-4 {
        margin-left: 33.33333%;
    }
    .col.default-prefix-5 {
        margin-left: 41.66667%;
    }
    .col.default-prefix-6 {
        margin-left: 50%;
    }
    .col.default-prefix-7 {
        margin-left: 58.33333%;
    }
    .col.default-prefix-8 {
        margin-left: 66.66667%;
    }
    .col.default-prefix-9 {
        margin-left: 75%;
    }
    .col.default-prefix-10 {
        margin-left: 83.33333%;
    }
    .col.default-prefix-11 {
        margin-left: 91.66667%;
    }
    .col.default-prefix-12 {
        margin-left: 100%;
    }
    .col.default-suffix-0 {
        margin-right: 0%;
    }
    .col.default-suffix-1 {
        margin-right: 8.33333%;
    }
    .col.default-suffix-2 {
        margin-right: 16.66667%;
    }
    .col.default-suffix-3 {
        margin-right: 25%;
    }
    .col.default-suffix-4 {
        margin-right: 33.33333%;
    }
    .col.default-suffix-5 {
        margin-right: 41.66667%;
    }
    .col.default-suffix-6 {
        margin-right: 50%;
    }
    .col.default-suffix-7 {
        margin-right: 58.33333%;
    }
    .col.default-suffix-8 {
        margin-right: 66.66667%;
    }
    .col.default-suffix-9 {
        margin-right: 75%;
    }
    .col.default-suffix-10 {
        margin-right: 83.33333%;
    }
    .col.default-suffix-11 {
        margin-right: 91.66667%;
    }
    .col.default-suffix-12 {
        margin-right: 100%;
    }
    .default-start {
        justify-content: flex-start;
    }
    .default-center {
        justify-content: center;
    }
    .default-end {
        justify-content: flex-end;
    }
    .default-between {
        justify-content: space-between;
    }
    .default-around {
        justify-content: space-around;
    }
    .default-top {
        align-items: flex-start;
    }
    .default-middle {
        align-items: center;
    }
    .default-baseline {
        align-items: flex-baseline;
    }
    .default-bottom {
        align-items: flex-end;
    }
    .default-stretch {
        align-items: stretch;
    }
    .default-reverse {
        flex-direction: row-reverse;
    }
    .default-forward {
        flex-direction: row;
    }
    .default-first {
        order: -1;
    }
    .default-last {
        order: 1;
    }
    .default-unset {
        order: 0;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-1 {
        max-width: 8.33333%;
        flex-basis: 8.33333%;
    }
}
@media (min-width: 26.25em) and (min-width: 101.25em) {
    .row.break-left > .col.tiny-1,
    .row.break-right > .col.tiny-1 {
        max-width: 8.4375rem;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-2 {
        max-width: 16.66667%;
        flex-basis: 16.66667%;
    }
}
@media (min-width: 26.25em) and (min-width: 101.25em) {
    .row.break-left > .col.tiny-2,
    .row.break-right > .col.tiny-2 {
        max-width: 16.875rem;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-3 {
        max-width: 25%;
        flex-basis: 25%;
    }
}
@media (min-width: 26.25em) and (min-width: 101.25em) {
    .row.break-left > .col.tiny-3,
    .row.break-right > .col.tiny-3 {
        max-width: 25.3125rem;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-4 {
        max-width: 33.33333%;
        flex-basis: 33.33333%;
    }
}
@media (min-width: 26.25em) and (min-width: 101.25em) {
    .row.break-left > .col.tiny-4,
    .row.break-right > .col.tiny-4 {
        max-width: 33.75rem;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-5 {
        max-width: 41.66667%;
        flex-basis: 41.66667%;
    }
}
@media (min-width: 26.25em) and (min-width: 101.25em) {
    .row.break-left > .col.tiny-5,
    .row.break-right > .col.tiny-5 {
        max-width: 42.1875rem;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-6 {
        max-width: 50%;
        flex-basis: 50%;
    }
}
@media (min-width: 26.25em) and (min-width: 101.25em) {
    .row.break-left > .col.tiny-6,
    .row.break-right > .col.tiny-6 {
        max-width: 50.625rem;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-7 {
        max-width: 58.33333%;
        flex-basis: 58.33333%;
    }
}
@media (min-width: 26.25em) and (min-width: 101.25em) {
    .row.break-left > .col.tiny-7,
    .row.break-right > .col.tiny-7 {
        max-width: 59.0625rem;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-8 {
        max-width: 66.66667%;
        flex-basis: 66.66667%;
    }
}
@media (min-width: 26.25em) and (min-width: 101.25em) {
    .row.break-left > .col.tiny-8,
    .row.break-right > .col.tiny-8 {
        max-width: 67.5rem;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-9 {
        max-width: 75%;
        flex-basis: 75%;
    }
}
@media (min-width: 26.25em) and (min-width: 101.25em) {
    .row.break-left > .col.tiny-9,
    .row.break-right > .col.tiny-9 {
        max-width: 75.9375rem;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-10 {
        max-width: 83.33333%;
        flex-basis: 83.33333%;
    }
}
@media (min-width: 26.25em) and (min-width: 101.25em) {
    .row.break-left > .col.tiny-10,
    .row.break-right > .col.tiny-10 {
        max-width: 84.375rem;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-11 {
        max-width: 91.66667%;
        flex-basis: 91.66667%;
    }
}
@media (min-width: 26.25em) and (min-width: 101.25em) {
    .row.break-left > .col.tiny-11,
    .row.break-right > .col.tiny-11 {
        max-width: 92.8125rem;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-12 {
        max-width: 100%;
        flex-basis: 100%;
    }
}
@media (min-width: 26.25em) and (min-width: 101.25em) {
    .row.break-left > .col.tiny-12,
    .row.break-right > .col.tiny-12 {
        max-width: 101.25rem;
    }
}
@media (min-width: 26.25em) {
    .col.tiny-auto {
        max-width: 100%;
        flex-basis: 0;
    }
    .row.break-left > .col.tiny-auto,
    .row.break-right > .col.tiny-auto {
        max-width: 100%;
    }
    .col.tiny-prefix-0 {
        margin-left: 0%;
    }
    .col.tiny-prefix-1 {
        margin-left: 8.33333%;
    }
    .col.tiny-prefix-2 {
        margin-left: 16.66667%;
    }
    .col.tiny-prefix-3 {
        margin-left: 25%;
    }
    .col.tiny-prefix-4 {
        margin-left: 33.33333%;
    }
    .col.tiny-prefix-5 {
        margin-left: 41.66667%;
    }
    .col.tiny-prefix-6 {
        margin-left: 50%;
    }
    .col.tiny-prefix-7 {
        margin-left: 58.33333%;
    }
    .col.tiny-prefix-8 {
        margin-left: 66.66667%;
    }
    .col.tiny-prefix-9 {
        margin-left: 75%;
    }
    .col.tiny-prefix-10 {
        margin-left: 83.33333%;
    }
    .col.tiny-prefix-11 {
        margin-left: 91.66667%;
    }
    .col.tiny-prefix-12 {
        margin-left: 100%;
    }
    .col.tiny-suffix-0 {
        margin-right: 0%;
    }
    .col.tiny-suffix-1 {
        margin-right: 8.33333%;
    }
    .col.tiny-suffix-2 {
        margin-right: 16.66667%;
    }
    .col.tiny-suffix-3 {
        margin-right: 25%;
    }
    .col.tiny-suffix-4 {
        margin-right: 33.33333%;
    }
    .col.tiny-suffix-5 {
        margin-right: 41.66667%;
    }
    .col.tiny-suffix-6 {
        margin-right: 50%;
    }
    .col.tiny-suffix-7 {
        margin-right: 58.33333%;
    }
    .col.tiny-suffix-8 {
        margin-right: 66.66667%;
    }
    .col.tiny-suffix-9 {
        margin-right: 75%;
    }
    .col.tiny-suffix-10 {
        margin-right: 83.33333%;
    }
    .col.tiny-suffix-11 {
        margin-right: 91.66667%;
    }
    .col.tiny-suffix-12 {
        margin-right: 100%;
    }
    .tiny-start {
        justify-content: flex-start;
    }
    .tiny-center {
        justify-content: center;
    }
    .tiny-end {
        justify-content: flex-end;
    }
    .tiny-between {
        justify-content: space-between;
    }
    .tiny-around {
        justify-content: space-around;
    }
    .tiny-top {
        align-items: flex-start;
    }
    .tiny-middle {
        align-items: center;
    }
    .tiny-baseline {
        align-items: flex-baseline;
    }
    .tiny-bottom {
        align-items: flex-end;
    }
    .tiny-stretch {
        align-items: stretch;
    }
    .tiny-reverse {
        flex-direction: row-reverse;
    }
    .tiny-forward {
        flex-direction: row;
    }
    .tiny-first {
        order: -1;
    }
    .tiny-last {
        order: 1;
    }
    .tiny-unset {
        order: 0;
    }
}
@media (min-width: 40em) {
    .col.small-1 {
        max-width: 8.33333%;
        flex-basis: 8.33333%;
    }
}
@media (min-width: 40em) and (min-width: 101.25em) {
    .row.break-left > .col.small-1,
    .row.break-right > .col.small-1 {
        max-width: 8.4375rem;
    }
}
@media (min-width: 40em) {
    .col.small-2 {
        max-width: 16.66667%;
        flex-basis: 16.66667%;
    }
}
@media (min-width: 40em) and (min-width: 101.25em) {
    .row.break-left > .col.small-2,
    .row.break-right > .col.small-2 {
        max-width: 16.875rem;
    }
}
@media (min-width: 40em) {
    .col.small-3 {
        max-width: 25%;
        flex-basis: 25%;
    }
}
@media (min-width: 40em) and (min-width: 101.25em) {
    .row.break-left > .col.small-3,
    .row.break-right > .col.small-3 {
        max-width: 25.3125rem;
    }
}
@media (min-width: 40em) {
    .col.small-4 {
        max-width: 33.33333%;
        flex-basis: 33.33333%;
    }
}
@media (min-width: 40em) and (min-width: 101.25em) {
    .row.break-left > .col.small-4,
    .row.break-right > .col.small-4 {
        max-width: 33.75rem;
    }
}
@media (min-width: 40em) {
    .col.small-5 {
        max-width: 41.66667%;
        flex-basis: 41.66667%;
    }
}
@media (min-width: 40em) and (min-width: 101.25em) {
    .row.break-left > .col.small-5,
    .row.break-right > .col.small-5 {
        max-width: 42.1875rem;
    }
}
@media (min-width: 40em) {
    .col.small-6 {
        max-width: 50%;
        flex-basis: 50%;
    }
}
@media (min-width: 40em) and (min-width: 101.25em) {
    .row.break-left > .col.small-6,
    .row.break-right > .col.small-6 {
        max-width: 50.625rem;
    }
}
@media (min-width: 40em) {
    .col.small-7 {
        max-width: 58.33333%;
        flex-basis: 58.33333%;
    }
}
@media (min-width: 40em) and (min-width: 101.25em) {
    .row.break-left > .col.small-7,
    .row.break-right > .col.small-7 {
        max-width: 59.0625rem;
    }
}
@media (min-width: 40em) {
    .col.small-8 {
        max-width: 66.66667%;
        flex-basis: 66.66667%;
    }
}
@media (min-width: 40em) and (min-width: 101.25em) {
    .row.break-left > .col.small-8,
    .row.break-right > .col.small-8 {
        max-width: 67.5rem;
    }
}
@media (min-width: 40em) {
    .col.small-9 {
        max-width: 75%;
        flex-basis: 75%;
    }
}
@media (min-width: 40em) and (min-width: 101.25em) {
    .row.break-left > .col.small-9,
    .row.break-right > .col.small-9 {
        max-width: 75.9375rem;
    }
}
@media (min-width: 40em) {
    .col.small-10 {
        max-width: 83.33333%;
        flex-basis: 83.33333%;
    }
}
@media (min-width: 40em) and (min-width: 101.25em) {
    .row.break-left > .col.small-10,
    .row.break-right > .col.small-10 {
        max-width: 84.375rem;
    }
}
@media (min-width: 40em) {
    .col.small-11 {
        max-width: 91.66667%;
        flex-basis: 91.66667%;
    }
}
@media (min-width: 40em) and (min-width: 101.25em) {
    .row.break-left > .col.small-11,
    .row.break-right > .col.small-11 {
        max-width: 92.8125rem;
    }
}
@media (min-width: 40em) {
    .col.small-12 {
        max-width: 100%;
        flex-basis: 100%;
    }
}
@media (min-width: 40em) and (min-width: 101.25em) {
    .row.break-left > .col.small-12,
    .row.break-right > .col.small-12 {
        max-width: 101.25rem;
    }
}
@media (min-width: 40em) {
    .col.small-auto {
        max-width: 100%;
        flex-basis: 0;
    }
    .row.break-left > .col.small-auto,
    .row.break-right > .col.small-auto {
        max-width: 100%;
    }
    .col.small-prefix-0 {
        margin-left: 0%;
    }
    .col.small-prefix-1 {
        margin-left: 8.33333%;
    }
    .col.small-prefix-2 {
        margin-left: 16.66667%;
    }
    .col.small-prefix-3 {
        margin-left: 25%;
    }
    .col.small-prefix-4 {
        margin-left: 33.33333%;
    }
    .col.small-prefix-5 {
        margin-left: 41.66667%;
    }
    .col.small-prefix-6 {
        margin-left: 50%;
    }
    .col.small-prefix-7 {
        margin-left: 58.33333%;
    }
    .col.small-prefix-8 {
        margin-left: 66.66667%;
    }
    .col.small-prefix-9 {
        margin-left: 75%;
    }
    .col.small-prefix-10 {
        margin-left: 83.33333%;
    }
    .col.small-prefix-11 {
        margin-left: 91.66667%;
    }
    .col.small-prefix-12 {
        margin-left: 100%;
    }
    .col.small-suffix-0 {
        margin-right: 0%;
    }
    .col.small-suffix-1 {
        margin-right: 8.33333%;
    }
    .col.small-suffix-2 {
        margin-right: 16.66667%;
    }
    .col.small-suffix-3 {
        margin-right: 25%;
    }
    .col.small-suffix-4 {
        margin-right: 33.33333%;
    }
    .col.small-suffix-5 {
        margin-right: 41.66667%;
    }
    .col.small-suffix-6 {
        margin-right: 50%;
    }
    .col.small-suffix-7 {
        margin-right: 58.33333%;
    }
    .col.small-suffix-8 {
        margin-right: 66.66667%;
    }
    .col.small-suffix-9 {
        margin-right: 75%;
    }
    .col.small-suffix-10 {
        margin-right: 83.33333%;
    }
    .col.small-suffix-11 {
        margin-right: 91.66667%;
    }
    .col.small-suffix-12 {
        margin-right: 100%;
    }
    .small-start {
        justify-content: flex-start;
    }
    .small-center {
        justify-content: center;
    }
    .small-end {
        justify-content: flex-end;
    }
    .small-between {
        justify-content: space-between;
    }
    .small-around {
        justify-content: space-around;
    }
    .small-top {
        align-items: flex-start;
    }
    .small-middle {
        align-items: center;
    }
    .small-baseline {
        align-items: flex-baseline;
    }
    .small-bottom {
        align-items: flex-end;
    }
    .small-stretch {
        align-items: stretch;
    }
    .small-reverse {
        flex-direction: row-reverse;
    }
    .small-forward {
        flex-direction: row;
    }
    .small-first {
        order: -1;
    }
    .small-last {
        order: 1;
    }
    .small-unset {
        order: 0;
    }
}
@media (min-width: 47.5em) {
    .col.medium-1 {
        max-width: 8.33333%;
        flex-basis: 8.33333%;
    }
}
@media (min-width: 47.5em) and (min-width: 101.25em) {
    .row.break-left > .col.medium-1,
    .row.break-right > .col.medium-1 {
        max-width: 8.4375rem;
    }
}
@media (min-width: 47.5em) {
    .col.medium-2 {
        max-width: 16.66667%;
        flex-basis: 16.66667%;
    }
}
@media (min-width: 47.5em) and (min-width: 101.25em) {
    .row.break-left > .col.medium-2,
    .row.break-right > .col.medium-2 {
        max-width: 16.875rem;
    }
}
@media (min-width: 47.5em) {
    .col.medium-3 {
        max-width: 25%;
        flex-basis: 25%;
    }
}
@media (min-width: 47.5em) and (min-width: 101.25em) {
    .row.break-left > .col.medium-3,
    .row.break-right > .col.medium-3 {
        max-width: 25.3125rem;
    }
}
@media (min-width: 47.5em) {
    .col.medium-4 {
        max-width: 33.33333%;
        flex-basis: 33.33333%;
    }
}
@media (min-width: 47.5em) and (min-width: 101.25em) {
    .row.break-left > .col.medium-4,
    .row.break-right > .col.medium-4 {
        max-width: 33.75rem;
    }
}
@media (min-width: 47.5em) {
    .col.medium-5 {
        max-width: 41.66667%;
        flex-basis: 41.66667%;
    }
}
@media (min-width: 47.5em) and (min-width: 101.25em) {
    .row.break-left > .col.medium-5,
    .row.break-right > .col.medium-5 {
        max-width: 42.1875rem;
    }
}
@media (min-width: 47.5em) {
    .col.medium-6 {
        max-width: 50%;
        flex-basis: 50%;
    }
}
@media (min-width: 47.5em) and (min-width: 101.25em) {
    .row.break-left > .col.medium-6,
    .row.break-right > .col.medium-6 {
        max-width: 50.625rem;
    }
}
@media (min-width: 47.5em) {
    .col.medium-7 {
        max-width: 58.33333%;
        flex-basis: 58.33333%;
    }
}
@media (min-width: 47.5em) and (min-width: 101.25em) {
    .row.break-left > .col.medium-7,
    .row.break-right > .col.medium-7 {
        max-width: 59.0625rem;
    }
}
@media (min-width: 47.5em) {
    .col.medium-8 {
        max-width: 66.66667%;
        flex-basis: 66.66667%;
    }
}
@media (min-width: 47.5em) and (min-width: 101.25em) {
    .row.break-left > .col.medium-8,
    .row.break-right > .col.medium-8 {
        max-width: 67.5rem;
    }
}
@media (min-width: 47.5em) {
    .col.medium-9 {
        max-width: 75%;
        flex-basis: 75%;
    }
}
@media (min-width: 47.5em) and (min-width: 101.25em) {
    .row.break-left > .col.medium-9,
    .row.break-right > .col.medium-9 {
        max-width: 75.9375rem;
    }
}
@media (min-width: 47.5em) {
    .col.medium-10 {
        max-width: 83.33333%;
        flex-basis: 83.33333%;
    }
}
@media (min-width: 47.5em) and (min-width: 101.25em) {
    .row.break-left > .col.medium-10,
    .row.break-right > .col.medium-10 {
        max-width: 84.375rem;
    }
}
@media (min-width: 47.5em) {
    .col.medium-11 {
        max-width: 91.66667%;
        flex-basis: 91.66667%;
    }
}
@media (min-width: 47.5em) and (min-width: 101.25em) {
    .row.break-left > .col.medium-11,
    .row.break-right > .col.medium-11 {
        max-width: 92.8125rem;
    }
}
@media (min-width: 47.5em) {
    .col.medium-12 {
        max-width: 100%;
        flex-basis: 100%;
    }
}
@media (min-width: 47.5em) and (min-width: 101.25em) {
    .row.break-left > .col.medium-12,
    .row.break-right > .col.medium-12 {
        max-width: 101.25rem;
    }
}
@media (min-width: 47.5em) {
    .col.medium-auto {
        max-width: 100%;
        flex-basis: 0;
    }
    .row.break-left > .col.medium-auto,
    .row.break-right > .col.medium-auto {
        max-width: 100%;
    }
    .col.medium-prefix-0 {
        margin-left: 0%;
    }
    .col.medium-prefix-1 {
        margin-left: 8.33333%;
    }
    .col.medium-prefix-2 {
        margin-left: 16.66667%;
    }
    .col.medium-prefix-3 {
        margin-left: 25%;
    }
    .col.medium-prefix-4 {
        margin-left: 33.33333%;
    }
    .col.medium-prefix-5 {
        margin-left: 41.66667%;
    }
    .col.medium-prefix-6 {
        margin-left: 50%;
    }
    .col.medium-prefix-7 {
        margin-left: 58.33333%;
    }
    .col.medium-prefix-8 {
        margin-left: 66.66667%;
    }
    .col.medium-prefix-9 {
        margin-left: 75%;
    }
    .col.medium-prefix-10 {
        margin-left: 83.33333%;
    }
    .col.medium-prefix-11 {
        margin-left: 91.66667%;
    }
    .col.medium-prefix-12 {
        margin-left: 100%;
    }
    .col.medium-suffix-0 {
        margin-right: 0%;
    }
    .col.medium-suffix-1 {
        margin-right: 8.33333%;
    }
    .col.medium-suffix-2 {
        margin-right: 16.66667%;
    }
    .col.medium-suffix-3 {
        margin-right: 25%;
    }
    .col.medium-suffix-4 {
        margin-right: 33.33333%;
    }
    .col.medium-suffix-5 {
        margin-right: 41.66667%;
    }
    .col.medium-suffix-6 {
        margin-right: 50%;
    }
    .col.medium-suffix-7 {
        margin-right: 58.33333%;
    }
    .col.medium-suffix-8 {
        margin-right: 66.66667%;
    }
    .col.medium-suffix-9 {
        margin-right: 75%;
    }
    .col.medium-suffix-10 {
        margin-right: 83.33333%;
    }
    .col.medium-suffix-11 {
        margin-right: 91.66667%;
    }
    .col.medium-suffix-12 {
        margin-right: 100%;
    }
    .medium-start {
        justify-content: flex-start;
    }
    .medium-center {
        justify-content: center;
    }
    .medium-end {
        justify-content: flex-end;
    }
    .medium-between {
        justify-content: space-between;
    }
    .medium-around {
        justify-content: space-around;
    }
    .medium-top {
        align-items: flex-start;
    }
    .medium-middle {
        align-items: center;
    }
    .medium-baseline {
        align-items: flex-baseline;
    }
    .medium-bottom {
        align-items: flex-end;
    }
    .medium-stretch {
        align-items: stretch;
    }
    .medium-reverse {
        flex-direction: row-reverse;
    }
    .medium-forward {
        flex-direction: row;
    }
    .medium-first {
        order: -1;
    }
    .medium-last {
        order: 1;
    }
    .medium-unset {
        order: 0;
    }
}
@media (min-width: 62em) {
    .col.large-1 {
        max-width: 8.33333%;
        flex-basis: 8.33333%;
    }
}
@media (min-width: 62em) and (min-width: 101.25em) {
    .row.break-left > .col.large-1,
    .row.break-right > .col.large-1 {
        max-width: 8.4375rem;
    }
}
@media (min-width: 62em) {
    .col.large-2 {
        max-width: 16.66667%;
        flex-basis: 16.66667%;
    }
}
@media (min-width: 62em) and (min-width: 101.25em) {
    .row.break-left > .col.large-2,
    .row.break-right > .col.large-2 {
        max-width: 16.875rem;
    }
}
@media (min-width: 62em) {
    .col.large-3 {
        max-width: 25%;
        flex-basis: 25%;
    }
}
@media (min-width: 62em) and (min-width: 101.25em) {
    .row.break-left > .col.large-3,
    .row.break-right > .col.large-3 {
        max-width: 25.3125rem;
    }
}
@media (min-width: 62em) {
    .col.large-4 {
        max-width: 33.33333%;
        flex-basis: 33.33333%;
    }
}
@media (min-width: 62em) and (min-width: 101.25em) {
    .row.break-left > .col.large-4,
    .row.break-right > .col.large-4 {
        max-width: 33.75rem;
    }
}
@media (min-width: 62em) {
    .col.large-5 {
        max-width: 41.66667%;
        flex-basis: 41.66667%;
    }
}
@media (min-width: 62em) and (min-width: 101.25em) {
    .row.break-left > .col.large-5,
    .row.break-right > .col.large-5 {
        max-width: 42.1875rem;
    }
}
@media (min-width: 62em) {
    .col.large-6 {
        max-width: 50%;
        flex-basis: 50%;
    }
}
@media (min-width: 62em) and (min-width: 101.25em) {
    .row.break-left > .col.large-6,
    .row.break-right > .col.large-6 {
        max-width: 50.625rem;
    }
}
@media (min-width: 62em) {
    .col.large-7 {
        max-width: 58.33333%;
        flex-basis: 58.33333%;
    }
}
@media (min-width: 62em) and (min-width: 101.25em) {
    .row.break-left > .col.large-7,
    .row.break-right > .col.large-7 {
        max-width: 59.0625rem;
    }
}
@media (min-width: 62em) {
    .col.large-8 {
        max-width: 66.66667%;
        flex-basis: 66.66667%;
    }
}
@media (min-width: 62em) and (min-width: 101.25em) {
    .row.break-left > .col.large-8,
    .row.break-right > .col.large-8 {
        max-width: 67.5rem;
    }
}
@media (min-width: 62em) {
    .col.large-9 {
        max-width: 75%;
        flex-basis: 75%;
    }
}
@media (min-width: 62em) and (min-width: 101.25em) {
    .row.break-left > .col.large-9,
    .row.break-right > .col.large-9 {
        max-width: 75.9375rem;
    }
}
@media (min-width: 62em) {
    .col.large-10 {
        max-width: 83.33333%;
        flex-basis: 83.33333%;
    }
}
@media (min-width: 62em) and (min-width: 101.25em) {
    .row.break-left > .col.large-10,
    .row.break-right > .col.large-10 {
        max-width: 84.375rem;
    }
}
@media (min-width: 62em) {
    .col.large-11 {
        max-width: 91.66667%;
        flex-basis: 91.66667%;
    }
}
@media (min-width: 62em) and (min-width: 101.25em) {
    .row.break-left > .col.large-11,
    .row.break-right > .col.large-11 {
        max-width: 92.8125rem;
    }
}
@media (min-width: 62em) {
    .col.large-12 {
        max-width: 100%;
        flex-basis: 100%;
    }
}
@media (min-width: 62em) and (min-width: 101.25em) {
    .row.break-left > .col.large-12,
    .row.break-right > .col.large-12 {
        max-width: 101.25rem;
    }
}
@media (min-width: 62em) {
    .col.large-auto {
        max-width: 100%;
        flex-basis: 0;
    }
    .row.break-left > .col.large-auto,
    .row.break-right > .col.large-auto {
        max-width: 100%;
    }
    .col.large-prefix-0 {
        margin-left: 0%;
    }
    .col.large-prefix-1 {
        margin-left: 8.33333%;
    }
    .col.large-prefix-2 {
        margin-left: 16.66667%;
    }
    .col.large-prefix-3 {
        margin-left: 25%;
    }
    .col.large-prefix-4 {
        margin-left: 33.33333%;
    }
    .col.large-prefix-5 {
        margin-left: 41.66667%;
    }
    .col.large-prefix-6 {
        margin-left: 50%;
    }
    .col.large-prefix-7 {
        margin-left: 58.33333%;
    }
    .col.large-prefix-8 {
        margin-left: 66.66667%;
    }
    .col.large-prefix-9 {
        margin-left: 75%;
    }
    .col.large-prefix-10 {
        margin-left: 83.33333%;
    }
    .col.large-prefix-11 {
        margin-left: 91.66667%;
    }
    .col.large-prefix-12 {
        margin-left: 100%;
    }
    .col.large-suffix-0 {
        margin-right: 0%;
    }
    .col.large-suffix-1 {
        margin-right: 8.33333%;
    }
    .col.large-suffix-2 {
        margin-right: 16.66667%;
    }
    .col.large-suffix-3 {
        margin-right: 25%;
    }
    .col.large-suffix-4 {
        margin-right: 33.33333%;
    }
    .col.large-suffix-5 {
        margin-right: 41.66667%;
    }
    .col.large-suffix-6 {
        margin-right: 50%;
    }
    .col.large-suffix-7 {
        margin-right: 58.33333%;
    }
    .col.large-suffix-8 {
        margin-right: 66.66667%;
    }
    .col.large-suffix-9 {
        margin-right: 75%;
    }
    .col.large-suffix-10 {
        margin-right: 83.33333%;
    }
    .col.large-suffix-11 {
        margin-right: 91.66667%;
    }
    .col.large-suffix-12 {
        margin-right: 100%;
    }
    .large-start {
        justify-content: flex-start;
    }
    .large-center {
        justify-content: center;
    }
    .large-end {
        justify-content: flex-end;
    }
    .large-between {
        justify-content: space-between;
    }
    .large-around {
        justify-content: space-around;
    }
    .large-top {
        align-items: flex-start;
    }
    .large-middle {
        align-items: center;
    }
    .large-baseline {
        align-items: flex-baseline;
    }
    .large-bottom {
        align-items: flex-end;
    }
    .large-stretch {
        align-items: stretch;
    }
    .large-reverse {
        flex-direction: row-reverse;
    }
    .large-forward {
        flex-direction: row;
    }
    .large-first {
        order: -1;
    }
    .large-last {
        order: 1;
    }
    .large-unset {
        order: 0;
    }
}
@media (min-width: 75em) {
    .col.giant-1 {
        max-width: 8.33333%;
        flex-basis: 8.33333%;
    }
}
@media (min-width: 75em) and (min-width: 101.25em) {
    .row.break-left > .col.giant-1,
    .row.break-right > .col.giant-1 {
        max-width: 8.4375rem;
    }
}
@media (min-width: 75em) {
    .col.giant-2 {
        max-width: 16.66667%;
        flex-basis: 16.66667%;
    }
}
@media (min-width: 75em) and (min-width: 101.25em) {
    .row.break-left > .col.giant-2,
    .row.break-right > .col.giant-2 {
        max-width: 16.875rem;
    }
}
@media (min-width: 75em) {
    .col.giant-3 {
        max-width: 25%;
        flex-basis: 25%;
    }
}
@media (min-width: 75em) and (min-width: 101.25em) {
    .row.break-left > .col.giant-3,
    .row.break-right > .col.giant-3 {
        max-width: 25.3125rem;
    }
}
@media (min-width: 75em) {
    .col.giant-4 {
        max-width: 33.33333%;
        flex-basis: 33.33333%;
    }
}
@media (min-width: 75em) and (min-width: 101.25em) {
    .row.break-left > .col.giant-4,
    .row.break-right > .col.giant-4 {
        max-width: 33.75rem;
    }
}
@media (min-width: 75em) {
    .col.giant-5 {
        max-width: 41.66667%;
        flex-basis: 41.66667%;
    }
}
@media (min-width: 75em) and (min-width: 101.25em) {
    .row.break-left > .col.giant-5,
    .row.break-right > .col.giant-5 {
        max-width: 42.1875rem;
    }
}
@media (min-width: 75em) {
    .col.giant-6 {
        max-width: 50%;
        flex-basis: 50%;
    }
}
@media (min-width: 75em) and (min-width: 101.25em) {
    .row.break-left > .col.giant-6,
    .row.break-right > .col.giant-6 {
        max-width: 50.625rem;
    }
}
@media (min-width: 75em) {
    .col.giant-7 {
        max-width: 58.33333%;
        flex-basis: 58.33333%;
    }
}
@media (min-width: 75em) and (min-width: 101.25em) {
    .row.break-left > .col.giant-7,
    .row.break-right > .col.giant-7 {
        max-width: 59.0625rem;
    }
}
@media (min-width: 75em) {
    .col.giant-8 {
        max-width: 66.66667%;
        flex-basis: 66.66667%;
    }
}
@media (min-width: 75em) and (min-width: 101.25em) {
    .row.break-left > .col.giant-8,
    .row.break-right > .col.giant-8 {
        max-width: 67.5rem;
    }
}
@media (min-width: 75em) {
    .col.giant-9 {
        max-width: 75%;
        flex-basis: 75%;
    }
}
@media (min-width: 75em) and (min-width: 101.25em) {
    .row.break-left > .col.giant-9,
    .row.break-right > .col.giant-9 {
        max-width: 75.9375rem;
    }
}
@media (min-width: 75em) {
    .col.giant-10 {
        max-width: 83.33333%;
        flex-basis: 83.33333%;
    }
}
@media (min-width: 75em) and (min-width: 101.25em) {
    .row.break-left > .col.giant-10,
    .row.break-right > .col.giant-10 {
        max-width: 84.375rem;
    }
}
@media (min-width: 75em) {
    .col.giant-11 {
        max-width: 91.66667%;
        flex-basis: 91.66667%;
    }
}
@media (min-width: 75em) and (min-width: 101.25em) {
    .row.break-left > .col.giant-11,
    .row.break-right > .col.giant-11 {
        max-width: 92.8125rem;
    }
}
@media (min-width: 75em) {
    .col.giant-12 {
        max-width: 100%;
        flex-basis: 100%;
    }
}
@media (min-width: 75em) and (min-width: 101.25em) {
    .row.break-left > .col.giant-12,
    .row.break-right > .col.giant-12 {
        max-width: 101.25rem;
    }
}
@media (min-width: 75em) {
    .col.giant-auto {
        max-width: 100%;
        flex-basis: 0;
    }
    .row.break-left > .col.giant-auto,
    .row.break-right > .col.giant-auto {
        max-width: 100%;
    }
    .col.giant-prefix-0 {
        margin-left: 0%;
    }
    .col.giant-prefix-1 {
        margin-left: 8.33333%;
    }
    .col.giant-prefix-2 {
        margin-left: 16.66667%;
    }
    .col.giant-prefix-3 {
        margin-left: 25%;
    }
    .col.giant-prefix-4 {
        margin-left: 33.33333%;
    }
    .col.giant-prefix-5 {
        margin-left: 41.66667%;
    }
    .col.giant-prefix-6 {
        margin-left: 50%;
    }
    .col.giant-prefix-7 {
        margin-left: 58.33333%;
    }
    .col.giant-prefix-8 {
        margin-left: 66.66667%;
    }
    .col.giant-prefix-9 {
        margin-left: 75%;
    }
    .col.giant-prefix-10 {
        margin-left: 83.33333%;
    }
    .col.giant-prefix-11 {
        margin-left: 91.66667%;
    }
    .col.giant-prefix-12 {
        margin-left: 100%;
    }
    .col.giant-suffix-0 {
        margin-right: 0%;
    }
    .col.giant-suffix-1 {
        margin-right: 8.33333%;
    }
    .col.giant-suffix-2 {
        margin-right: 16.66667%;
    }
    .col.giant-suffix-3 {
        margin-right: 25%;
    }
    .col.giant-suffix-4 {
        margin-right: 33.33333%;
    }
    .col.giant-suffix-5 {
        margin-right: 41.66667%;
    }
    .col.giant-suffix-6 {
        margin-right: 50%;
    }
    .col.giant-suffix-7 {
        margin-right: 58.33333%;
    }
    .col.giant-suffix-8 {
        margin-right: 66.66667%;
    }
    .col.giant-suffix-9 {
        margin-right: 75%;
    }
    .col.giant-suffix-10 {
        margin-right: 83.33333%;
    }
    .col.giant-suffix-11 {
        margin-right: 91.66667%;
    }
    .col.giant-suffix-12 {
        margin-right: 100%;
    }
    .giant-start {
        justify-content: flex-start;
    }
    .giant-center {
        justify-content: center;
    }
    .giant-end {
        justify-content: flex-end;
    }
    .giant-between {
        justify-content: space-between;
    }
    .giant-around {
        justify-content: space-around;
    }
    .giant-top {
        align-items: flex-start;
    }
    .giant-middle {
        align-items: center;
    }
    .giant-baseline {
        align-items: flex-baseline;
    }
    .giant-bottom {
        align-items: flex-end;
    }
    .giant-stretch {
        align-items: stretch;
    }
    .giant-reverse {
        flex-direction: row-reverse;
    }
    .giant-forward {
        flex-direction: row;
    }
    .giant-first {
        order: -1;
    }
    .giant-last {
        order: 1;
    }
    .giant-unset {
        order: 0;
    }
}
@media (min-width: 85.25em) {
    .col.huge-1 {
        max-width: 8.33333%;
        flex-basis: 8.33333%;
    }
}
@media (min-width: 85.25em) and (min-width: 101.25em) {
    .row.break-left > .col.huge-1,
    .row.break-right > .col.huge-1 {
        max-width: 8.4375rem;
    }
}
@media (min-width: 85.25em) {
    .col.huge-2 {
        max-width: 16.66667%;
        flex-basis: 16.66667%;
    }
}
@media (min-width: 85.25em) and (min-width: 101.25em) {
    .row.break-left > .col.huge-2,
    .row.break-right > .col.huge-2 {
        max-width: 16.875rem;
    }
}
@media (min-width: 85.25em) {
    .col.huge-3 {
        max-width: 25%;
        flex-basis: 25%;
    }
}
@media (min-width: 85.25em) and (min-width: 101.25em) {
    .row.break-left > .col.huge-3,
    .row.break-right > .col.huge-3 {
        max-width: 25.3125rem;
    }
}
@media (min-width: 85.25em) {
    .col.huge-4 {
        max-width: 33.33333%;
        flex-basis: 33.33333%;
    }
}
@media (min-width: 85.25em) and (min-width: 101.25em) {
    .row.break-left > .col.huge-4,
    .row.break-right > .col.huge-4 {
        max-width: 33.75rem;
    }
}
@media (min-width: 85.25em) {
    .col.huge-5 {
        max-width: 41.66667%;
        flex-basis: 41.66667%;
    }
}
@media (min-width: 85.25em) and (min-width: 101.25em) {
    .row.break-left > .col.huge-5,
    .row.break-right > .col.huge-5 {
        max-width: 42.1875rem;
    }
}
@media (min-width: 85.25em) {
    .col.huge-6 {
        max-width: 50%;
        flex-basis: 50%;
    }
}
@media (min-width: 85.25em) and (min-width: 101.25em) {
    .row.break-left > .col.huge-6,
    .row.break-right > .col.huge-6 {
        max-width: 50.625rem;
    }
}
@media (min-width: 85.25em) {
    .col.huge-7 {
        max-width: 58.33333%;
        flex-basis: 58.33333%;
    }
}
@media (min-width: 85.25em) and (min-width: 101.25em) {
    .row.break-left > .col.huge-7,
    .row.break-right > .col.huge-7 {
        max-width: 59.0625rem;
    }
}
@media (min-width: 85.25em) {
    .col.huge-8 {
        max-width: 66.66667%;
        flex-basis: 66.66667%;
    }
}
@media (min-width: 85.25em) and (min-width: 101.25em) {
    .row.break-left > .col.huge-8,
    .row.break-right > .col.huge-8 {
        max-width: 67.5rem;
    }
}
@media (min-width: 85.25em) {
    .col.huge-9 {
        max-width: 75%;
        flex-basis: 75%;
    }
}
@media (min-width: 85.25em) and (min-width: 101.25em) {
    .row.break-left > .col.huge-9,
    .row.break-right > .col.huge-9 {
        max-width: 75.9375rem;
    }
}
@media (min-width: 85.25em) {
    .col.huge-10 {
        max-width: 83.33333%;
        flex-basis: 83.33333%;
    }
}
@media (min-width: 85.25em) and (min-width: 101.25em) {
    .row.break-left > .col.huge-10,
    .row.break-right > .col.huge-10 {
        max-width: 84.375rem;
    }
}
@media (min-width: 85.25em) {
    .col.huge-11 {
        max-width: 91.66667%;
        flex-basis: 91.66667%;
    }
}
@media (min-width: 85.25em) and (min-width: 101.25em) {
    .row.break-left > .col.huge-11,
    .row.break-right > .col.huge-11 {
        max-width: 92.8125rem;
    }
}
@media (min-width: 85.25em) {
    .col.huge-12 {
        max-width: 100%;
        flex-basis: 100%;
    }
}
@media (min-width: 85.25em) and (min-width: 101.25em) {
    .row.break-left > .col.huge-12,
    .row.break-right > .col.huge-12 {
        max-width: 101.25rem;
    }
}
@media (min-width: 85.25em) {
    .col.huge-auto {
        max-width: 100%;
        flex-basis: 0;
    }
    .row.break-left > .col.huge-auto,
    .row.break-right > .col.huge-auto {
        max-width: 100%;
    }
    .col.huge-prefix-0 {
        margin-left: 0%;
    }
    .col.huge-prefix-1 {
        margin-left: 8.33333%;
    }
    .col.huge-prefix-2 {
        margin-left: 16.66667%;
    }
    .col.huge-prefix-3 {
        margin-left: 25%;
    }
    .col.huge-prefix-4 {
        margin-left: 33.33333%;
    }
    .col.huge-prefix-5 {
        margin-left: 41.66667%;
    }
    .col.huge-prefix-6 {
        margin-left: 50%;
    }
    .col.huge-prefix-7 {
        margin-left: 58.33333%;
    }
    .col.huge-prefix-8 {
        margin-left: 66.66667%;
    }
    .col.huge-prefix-9 {
        margin-left: 75%;
    }
    .col.huge-prefix-10 {
        margin-left: 83.33333%;
    }
    .col.huge-prefix-11 {
        margin-left: 91.66667%;
    }
    .col.huge-prefix-12 {
        margin-left: 100%;
    }
    .col.huge-suffix-0 {
        margin-right: 0%;
    }
    .col.huge-suffix-1 {
        margin-right: 8.33333%;
    }
    .col.huge-suffix-2 {
        margin-right: 16.66667%;
    }
    .col.huge-suffix-3 {
        margin-right: 25%;
    }
    .col.huge-suffix-4 {
        margin-right: 33.33333%;
    }
    .col.huge-suffix-5 {
        margin-right: 41.66667%;
    }
    .col.huge-suffix-6 {
        margin-right: 50%;
    }
    .col.huge-suffix-7 {
        margin-right: 58.33333%;
    }
    .col.huge-suffix-8 {
        margin-right: 66.66667%;
    }
    .col.huge-suffix-9 {
        margin-right: 75%;
    }
    .col.huge-suffix-10 {
        margin-right: 83.33333%;
    }
    .col.huge-suffix-11 {
        margin-right: 91.66667%;
    }
    .col.huge-suffix-12 {
        margin-right: 100%;
    }
    .huge-start {
        justify-content: flex-start;
    }
    .huge-center {
        justify-content: center;
    }
    .huge-end {
        justify-content: flex-end;
    }
    .huge-between {
        justify-content: space-between;
    }
    .huge-around {
        justify-content: space-around;
    }
    .huge-top {
        align-items: flex-start;
    }
    .huge-middle {
        align-items: center;
    }
    .huge-baseline {
        align-items: flex-baseline;
    }
    .huge-bottom {
        align-items: flex-end;
    }
    .huge-stretch {
        align-items: stretch;
    }
    .huge-reverse {
        flex-direction: row-reverse;
    }
    .huge-forward {
        flex-direction: row;
    }
    .huge-first {
        order: -1;
    }
    .huge-last {
        order: 1;
    }
    .huge-unset {
        order: 0;
    }
}
@media (min-width: 95em) {
    .col.full-1 {
        max-width: 8.33333%;
        flex-basis: 8.33333%;
    }
}
@media (min-width: 95em) and (min-width: 101.25em) {
    .row.break-left > .col.full-1,
    .row.break-right > .col.full-1 {
        max-width: 8.4375rem;
    }
}
@media (min-width: 95em) {
    .col.full-2 {
        max-width: 16.66667%;
        flex-basis: 16.66667%;
    }
}
@media (min-width: 95em) and (min-width: 101.25em) {
    .row.break-left > .col.full-2,
    .row.break-right > .col.full-2 {
        max-width: 16.875rem;
    }
}
@media (min-width: 95em) {
    .col.full-3 {
        max-width: 25%;
        flex-basis: 25%;
    }
}
@media (min-width: 95em) and (min-width: 101.25em) {
    .row.break-left > .col.full-3,
    .row.break-right > .col.full-3 {
        max-width: 25.3125rem;
    }
}
@media (min-width: 95em) {
    .col.full-4 {
        max-width: 33.33333%;
        flex-basis: 33.33333%;
    }
}
@media (min-width: 95em) and (min-width: 101.25em) {
    .row.break-left > .col.full-4,
    .row.break-right > .col.full-4 {
        max-width: 33.75rem;
    }
}
@media (min-width: 95em) {
    .col.full-5 {
        max-width: 41.66667%;
        flex-basis: 41.66667%;
    }
}
@media (min-width: 95em) and (min-width: 101.25em) {
    .row.break-left > .col.full-5,
    .row.break-right > .col.full-5 {
        max-width: 42.1875rem;
    }
}
@media (min-width: 95em) {
    .col.full-6 {
        max-width: 50%;
        flex-basis: 50%;
    }
}
@media (min-width: 95em) and (min-width: 101.25em) {
    .row.break-left > .col.full-6,
    .row.break-right > .col.full-6 {
        max-width: 50.625rem;
    }
}
@media (min-width: 95em) {
    .col.full-7 {
        max-width: 58.33333%;
        flex-basis: 58.33333%;
    }
}
@media (min-width: 95em) and (min-width: 101.25em) {
    .row.break-left > .col.full-7,
    .row.break-right > .col.full-7 {
        max-width: 59.0625rem;
    }
}
@media (min-width: 95em) {
    .col.full-8 {
        max-width: 66.66667%;
        flex-basis: 66.66667%;
    }
}
@media (min-width: 95em) and (min-width: 101.25em) {
    .row.break-left > .col.full-8,
    .row.break-right > .col.full-8 {
        max-width: 67.5rem;
    }
}
@media (min-width: 95em) {
    .col.full-9 {
        max-width: 75%;
        flex-basis: 75%;
    }
}
@media (min-width: 95em) and (min-width: 101.25em) {
    .row.break-left > .col.full-9,
    .row.break-right > .col.full-9 {
        max-width: 75.9375rem;
    }
}
@media (min-width: 95em) {
    .col.full-10 {
        max-width: 83.33333%;
        flex-basis: 83.33333%;
    }
}
@media (min-width: 95em) and (min-width: 101.25em) {
    .row.break-left > .col.full-10,
    .row.break-right > .col.full-10 {
        max-width: 84.375rem;
    }
}
@media (min-width: 95em) {
    .col.full-11 {
        max-width: 91.66667%;
        flex-basis: 91.66667%;
    }
}
@media (min-width: 95em) and (min-width: 101.25em) {
    .row.break-left > .col.full-11,
    .row.break-right > .col.full-11 {
        max-width: 92.8125rem;
    }
}
@media (min-width: 95em) {
    .col.full-12 {
        max-width: 100%;
        flex-basis: 100%;
    }
}
@media (min-width: 95em) and (min-width: 101.25em) {
    .row.break-left > .col.full-12,
    .row.break-right > .col.full-12 {
        max-width: 101.25rem;
    }
}
@media (min-width: 95em) {
    .col.full-auto {
        max-width: 100%;
        flex-basis: 0;
    }
    .row.break-left > .col.full-auto,
    .row.break-right > .col.full-auto {
        max-width: 100%;
    }
    .col.full-prefix-0 {
        margin-left: 0%;
    }
    .col.full-prefix-1 {
        margin-left: 8.33333%;
    }
    .col.full-prefix-2 {
        margin-left: 16.66667%;
    }
    .col.full-prefix-3 {
        margin-left: 25%;
    }
    .col.full-prefix-4 {
        margin-left: 33.33333%;
    }
    .col.full-prefix-5 {
        margin-left: 41.66667%;
    }
    .col.full-prefix-6 {
        margin-left: 50%;
    }
    .col.full-prefix-7 {
        margin-left: 58.33333%;
    }
    .col.full-prefix-8 {
        margin-left: 66.66667%;
    }
    .col.full-prefix-9 {
        margin-left: 75%;
    }
    .col.full-prefix-10 {
        margin-left: 83.33333%;
    }
    .col.full-prefix-11 {
        margin-left: 91.66667%;
    }
    .col.full-prefix-12 {
        margin-left: 100%;
    }
    .col.full-suffix-0 {
        margin-right: 0%;
    }
    .col.full-suffix-1 {
        margin-right: 8.33333%;
    }
    .col.full-suffix-2 {
        margin-right: 16.66667%;
    }
    .col.full-suffix-3 {
        margin-right: 25%;
    }
    .col.full-suffix-4 {
        margin-right: 33.33333%;
    }
    .col.full-suffix-5 {
        margin-right: 41.66667%;
    }
    .col.full-suffix-6 {
        margin-right: 50%;
    }
    .col.full-suffix-7 {
        margin-right: 58.33333%;
    }
    .col.full-suffix-8 {
        margin-right: 66.66667%;
    }
    .col.full-suffix-9 {
        margin-right: 75%;
    }
    .col.full-suffix-10 {
        margin-right: 83.33333%;
    }
    .col.full-suffix-11 {
        margin-right: 91.66667%;
    }
    .col.full-suffix-12 {
        margin-right: 100%;
    }
    .full-start {
        justify-content: flex-start;
    }
    .full-center {
        justify-content: center;
    }
    .full-end {
        justify-content: flex-end;
    }
    .full-between {
        justify-content: space-between;
    }
    .full-around {
        justify-content: space-around;
    }
    .full-top {
        align-items: flex-start;
    }
    .full-middle {
        align-items: center;
    }
    .full-baseline {
        align-items: flex-baseline;
    }
    .full-bottom {
        align-items: flex-end;
    }
    .full-stretch {
        align-items: stretch;
    }
    .full-reverse {
        flex-direction: row-reverse;
    }
    .full-forward {
        flex-direction: row;
    }
    .full-first {
        order: -1;
    }
    .full-last {
        order: 1;
    }
    .full-unset {
        order: 0;
    }
}
@media (min-width: 101.25em) {
    .col.cut-1 {
        max-width: 8.33333%;
        flex-basis: 8.33333%;
    }
}
@media (min-width: 101.25em) and (min-width: 101.25em) {
    .row.break-left > .col.cut-1,
    .row.break-right > .col.cut-1 {
        max-width: 8.4375rem;
    }
}
@media (min-width: 101.25em) {
    .col.cut-2 {
        max-width: 16.66667%;
        flex-basis: 16.66667%;
    }
}
@media (min-width: 101.25em) and (min-width: 101.25em) {
    .row.break-left > .col.cut-2,
    .row.break-right > .col.cut-2 {
        max-width: 16.875rem;
    }
}
@media (min-width: 101.25em) {
    .col.cut-3 {
        max-width: 25%;
        flex-basis: 25%;
    }
}
@media (min-width: 101.25em) and (min-width: 101.25em) {
    .row.break-left > .col.cut-3,
    .row.break-right > .col.cut-3 {
        max-width: 25.3125rem;
    }
}
@media (min-width: 101.25em) {
    .col.cut-4 {
        max-width: 33.33333%;
        flex-basis: 33.33333%;
    }
}
@media (min-width: 101.25em) and (min-width: 101.25em) {
    .row.break-left > .col.cut-4,
    .row.break-right > .col.cut-4 {
        max-width: 33.75rem;
    }
}
@media (min-width: 101.25em) {
    .col.cut-5 {
        max-width: 41.66667%;
        flex-basis: 41.66667%;
    }
}
@media (min-width: 101.25em) and (min-width: 101.25em) {
    .row.break-left > .col.cut-5,
    .row.break-right > .col.cut-5 {
        max-width: 42.1875rem;
    }
}
@media (min-width: 101.25em) {
    .col.cut-6 {
        max-width: 50%;
        flex-basis: 50%;
    }
}
@media (min-width: 101.25em) and (min-width: 101.25em) {
    .row.break-left > .col.cut-6,
    .row.break-right > .col.cut-6 {
        max-width: 50.625rem;
    }
}
@media (min-width: 101.25em) {
    .col.cut-7 {
        max-width: 58.33333%;
        flex-basis: 58.33333%;
    }
}
@media (min-width: 101.25em) and (min-width: 101.25em) {
    .row.break-left > .col.cut-7,
    .row.break-right > .col.cut-7 {
        max-width: 59.0625rem;
    }
}
@media (min-width: 101.25em) {
    .col.cut-8 {
        max-width: 66.66667%;
        flex-basis: 66.66667%;
    }
}
@media (min-width: 101.25em) and (min-width: 101.25em) {
    .row.break-left > .col.cut-8,
    .row.break-right > .col.cut-8 {
        max-width: 67.5rem;
    }
}
@media (min-width: 101.25em) {
    .col.cut-9 {
        max-width: 75%;
        flex-basis: 75%;
    }
}
@media (min-width: 101.25em) and (min-width: 101.25em) {
    .row.break-left > .col.cut-9,
    .row.break-right > .col.cut-9 {
        max-width: 75.9375rem;
    }
}
@media (min-width: 101.25em) {
    .col.cut-10 {
        max-width: 83.33333%;
        flex-basis: 83.33333%;
    }
}
@media (min-width: 101.25em) and (min-width: 101.25em) {
    .row.break-left > .col.cut-10,
    .row.break-right > .col.cut-10 {
        max-width: 84.375rem;
    }
}
@media (min-width: 101.25em) {
    .col.cut-11 {
        max-width: 91.66667%;
        flex-basis: 91.66667%;
    }
}
@media (min-width: 101.25em) and (min-width: 101.25em) {
    .row.break-left > .col.cut-11,
    .row.break-right > .col.cut-11 {
        max-width: 92.8125rem;
    }
}
@media (min-width: 101.25em) {
    .col.cut-12 {
        max-width: 100%;
        flex-basis: 100%;
    }
}
@media (min-width: 101.25em) and (min-width: 101.25em) {
    .row.break-left > .col.cut-12,
    .row.break-right > .col.cut-12 {
        max-width: 101.25rem;
    }
}
@media (min-width: 101.25em) {
    .col.cut-auto {
        max-width: 100%;
        flex-basis: 0;
    }
    .row.break-left > .col.cut-auto,
    .row.break-right > .col.cut-auto {
        max-width: 100%;
    }
    .col.cut-prefix-0 {
        margin-left: 0%;
    }
    .col.cut-prefix-1 {
        margin-left: 8.33333%;
    }
    .col.cut-prefix-2 {
        margin-left: 16.66667%;
    }
    .col.cut-prefix-3 {
        margin-left: 25%;
    }
    .col.cut-prefix-4 {
        margin-left: 33.33333%;
    }
    .col.cut-prefix-5 {
        margin-left: 41.66667%;
    }
    .col.cut-prefix-6 {
        margin-left: 50%;
    }
    .col.cut-prefix-7 {
        margin-left: 58.33333%;
    }
    .col.cut-prefix-8 {
        margin-left: 66.66667%;
    }
    .col.cut-prefix-9 {
        margin-left: 75%;
    }
    .col.cut-prefix-10 {
        margin-left: 83.33333%;
    }
    .col.cut-prefix-11 {
        margin-left: 91.66667%;
    }
    .col.cut-prefix-12 {
        margin-left: 100%;
    }
    .col.cut-suffix-0 {
        margin-right: 0%;
    }
    .col.cut-suffix-1 {
        margin-right: 8.33333%;
    }
    .col.cut-suffix-2 {
        margin-right: 16.66667%;
    }
    .col.cut-suffix-3 {
        margin-right: 25%;
    }
    .col.cut-suffix-4 {
        margin-right: 33.33333%;
    }
    .col.cut-suffix-5 {
        margin-right: 41.66667%;
    }
    .col.cut-suffix-6 {
        margin-right: 50%;
    }
    .col.cut-suffix-7 {
        margin-right: 58.33333%;
    }
    .col.cut-suffix-8 {
        margin-right: 66.66667%;
    }
    .col.cut-suffix-9 {
        margin-right: 75%;
    }
    .col.cut-suffix-10 {
        margin-right: 83.33333%;
    }
    .col.cut-suffix-11 {
        margin-right: 91.66667%;
    }
    .col.cut-suffix-12 {
        margin-right: 100%;
    }
    .cut-start {
        justify-content: flex-start;
    }
    .cut-center {
        justify-content: center;
    }
    .cut-end {
        justify-content: flex-end;
    }
    .cut-between {
        justify-content: space-between;
    }
    .cut-around {
        justify-content: space-around;
    }
    .cut-top {
        align-items: flex-start;
    }
    .cut-middle {
        align-items: center;
    }
    .cut-baseline {
        align-items: flex-baseline;
    }
    .cut-bottom {
        align-items: flex-end;
    }
    .cut-stretch {
        align-items: stretch;
    }
    .cut-reverse {
        flex-direction: row-reverse;
    }
    .cut-forward {
        flex-direction: row;
    }
    .cut-first {
        order: -1;
    }
    .cut-last {
        order: 1;
    }
    .cut-unset {
        order: 0;
    }
}
.notification-area {
    position: fixed;
    bottom: 2.5rem;
    left: 2.5rem;
    z-index: 999999;
    visibility: hidden;
    display: block;
}
@media (min-width: 62em) {
    .notification-area {
        left: 3.75rem;
    }
}
.notification-area > :not(:first-child):not(.hide).transition-in {
    margin-top: 17px;
}
.notification-area .notification {
    display: block;
    position: relative;
    transition: 300ms all ease-in-out;
    overflow: hidden;
    padding: 0;
    background: #d85d00;
    font-size: 0.75rem;
    line-height: 1rem;
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
    width: 18.75rem;
    max-width: calc(100vw - 80px);
    transform-origin: left center;
    visibility: hidden;
    opacity: 0;
    max-height: none;
    height: 0;
    box-sizing: border-box;
    margin-left: -100px;
}
.notification-area .notification .note-content {
    padding: 1rem;
    display: block;
}
@media (min-width: 62em) {
    .notification-area .notification {
        font-size: 1rem;
        line-height: 1.375rem;
    }
}
.notification-area .notification.transition-in {
    visibility: visible;
    opacity: 1;
    max-height: 9999999px;
    height: auto;
    margin-left: 0;
}
.notification-area .notification,
.notification-area .notification a {
    color: #fff;
}
.notification-area .notification.success {
    background: #333;
}
.notification-area .notification.success,
.notification-area .notification.success .close {
    color: #fff;
}
.notification-area .notification.error {
    background: #d85d00;
}
.notification-area .notification.success p,
.notification-area .notification.error p {
    margin-bottom: 0.3125rem;
}
.notification-area .notification.success p + ul,
.notification-area .notification.error p + ul {
    margin-top: 0.3125rem;
}
.notification-area .notification .close {
    position: absolute;
    top: 0;
    right: 0;
    padding-top: 5px;
    padding-right: 8px;
    cursor: pointer;
    color: #fff;
    font-size: 1.2rem;
}
.notification-area .notification.hide {
    margin-left: -100px;
    opacity: 0;
    visibility: hidden;
    height: 0;
}
#privacy-ctrl {
    background: #333;
    border-radius: 4px;
    color: #fff;
}
#privacy-ctrl .note-content {
    padding: 0;
}
#privacy-ctrl,
#privacy-ctrl * {
    font-family: Arial, sans-serif;
}
#privacy-ctrl.hide,
#privacy-ctrl .hide {
    opacity: 0;
    visibility: hidden;
}
#privacy-ctrl.open {
    opacity: 1;
    visibility: visible;
}
.open #privacy-ctrl {
    height: calc(100vh - 40px);
}
#privacy-controller {
    display: block;
    font-size: 11px;
    line-height: 1.3em;
    font-weight: normal;
}
.privacy-header {
    display: block;
    padding: 10px;
}
.privacy-header .privacy-text {
    padding-right: 20px;
}
.privacy-text {
    display: block;
    margin-bottom: 10px;
}
.privacy-buttons :first-child {
    margin-bottom: 0.3125rem;
}
@media (min-width: 26.25em) {
    .privacy-buttons {
        display: flex;
    }
    .privacy-buttons :first-child {
        margin-bottom: 0;
    }
}
.privacy-buttons .hide {
    display: none;
}
.privacy-btn {
    width: 100%;
    display: flex;
    color: #464a4d;
    background: #888a8c;
    cursor: pointer;
    border-radius: 4px;
    padding-top: 6.66667px;
    padding-bottom: 6.66667px;
    padding-left: 12px;
    padding-right: 12px;
    flex-wrap: nowrap;
    white-space: nowrap;
    justify-content: center;
}
.privacy-btn:first-of-type {
    margin-right: 10px;
}
#privacy-confirm {
    background: #3bb54a;
    color: #fff;
}
.privacy-link {
    cursor: pointer;
    color: #eee;
    text-decoration: underline;
}
.privacy-fields {
    display: block;
    background: #464a4d;
    max-height: 40vh;
    overflow-y: scroll;
    border-left: 2px solid #333;
    border-right: 2px solid #333;
    height: 0;
    transition: 800ms height ease-in-out;
}
.privacy-controller.open .privacy-fields {
    height: 100vh;
}
.privacy-controller.open .privacy-fields:empty {
    height: 0;
}
.privacy-fields label {
    cursor: pointer;
    position: relative;
    display: block;
    width: 100%;
}
.privacy-fields label span {
    font-size: 1.2em;
    content: "";
    letter-spacing: 0;
    width: 2.2em;
    height: 1.2em;
    line-height: 1.2em;
    border-radius: 14px;
    display: block;
    text-align: center;
    background: #888a8c;
    color: transparent;
    margin-right: 10px;
    position: relative;
}
.privacy-fields label span:before {
    content: "";
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    left: 4px;
    top: 3px;
    opacity: 1;
    transition: 150ms left ease-in-out;
    z-index: 10;
}
.privacy-fields label span:after {
    content: attr(data-off) " ";
    display: inline-block;
    position: absolute;
    left: calc(100% + 5px);
    color: #eee;
    font-size: 0.6875rem;
    word-break: normal;
}
.privacy-fields input:checked + span:before {
    left: 1.0625rem;
}
.privacy-fields input:checked + span {
    background: #3bb54a;
}
.privacy-fields input:checked + span:after {
    content: attr(data-on) " ";
}
.privacy-fields input {
    display: none;
}
.privacy-row {
    display: flex;
    flex-wrap: wrap;
    padding: 10px;
}
.privacy-row:not(:last-of-type) {
    border-bottom: 2px solid #333;
}
.privacy-cell {
    width: 50%;
    hyphens: auto;
}
.privacy-cell:not(:last-of-type) {
    margin-bottom: 10px;
}
.privacy-footer {
    display: flex;
    padding: 10px;
    flex-flow: row wrap;
}
@media (min-width: 26.25em) {
    .privacy-footer {
        justify-content: flex-end;
        flex-flow: unset;
    }
}
.privacy-footer .privacy-link {
    width: 50%;
}
@media (min-width: 26.25em) {
    .privacy-footer .privacy-link {
        width: auto;
    }
}
.privacy-footer .privacy-link:not(:last-child) {
    padding-right: 10px;
    margin-bottom: 0.3125rem;
}
#privacy-reset {
    opacity: 0.5;
}
.privacy-control-badge {
    transform: rotate(90deg) translateX(-100%);
    display: inline-block;
    position: fixed;
    left: 0;
    bottom: 2.8125rem;
    transform-origin: bottom left;
    background: #333;
    color: #fff;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    font-size: 0.6875rem;
    line-height: 0.625rem;
    text-decoration: none;
    padding: 10px;
    transition: 300ms all ease-in-out;
    z-index: 999998;
}
body.privacy-control-is-open .privacy-control-badge {
    left: -100%;
}
.privacy-control-badge:hover,
.privacy-control-badge:active,
.privacy-control-badge:visited {
    color: #fff;
    background: #c3282e;
}
@media (min-width: 62em) {
    .privacy-control-badge {
        font-size: 0.75rem;
        line-height: 0.75rem;
    }
}
.icon,
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next,
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev,
ul.styled-list li:before,
main ul:not(.unstyled-list) li:before,
ol.styled-list li:before,
main ol:not(.unstyled-list) li:before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-family: icomoon;
}
.icon-times:before,
noscript input#noticebar:checked ~ label:before {
    content: "×";
}
.icon-minus:before {
    content: "-";
}
.icon-angle-right:before {
    content: "❯";
}
.icon-plus:before {
    content: "+";
}
.icon-angle-up:before {
    content: "↑";
}
.icon-exclamation:before,
noscript label:before,
.informatizer:before {
    content: "!";
}
.icon-caret-right:before {
    content: "";
}
.icon-long-arrow:before {
    content: "";
}
.icon-mail:before {
    content: "";
}
.icon-phone:before {
    content: "";
}
.icon-akustik:before {
    content: "";
}
.icon-dach:before {
    content: "";
}
.icon-trockenbau:before,
ul.styled-list li:before,
main ul:not(.unstyled-list) li:before,
ol.styled-list li:before,
main ol:not(.unstyled-list) li:before {
    content: "";
}
.icon-wand:before {
    content: "";
} /*!
 * baguetteBox.js
 * @version 1.10.0
 * @url https://github.com/feimosi/baguetteBox.js
 */
#baguetteBox-overlay {
    display: none;
    opacity: 0;
    position: fixed;
    overflow: hidden;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    z-index: 1000000;
    transition: opacity 0.5s ease;
}
#baguetteBox-overlay.visible {
    opacity: 1;
}
#baguetteBox-overlay .full-image {
    display: inline-block;
    position: relative;
    width: 100%;
    height: 100%;
    text-align: center;
}
#baguetteBox-overlay .full-image figure {
    display: inline;
    margin: 0;
    height: 100%;
}
#baguetteBox-overlay .full-image img {
    display: inline-block;
    width: auto;
    height: auto;
    max-height: 100%;
    max-width: 100%;
    vertical-align: middle;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}
#baguetteBox-overlay .full-image figcaption {
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
    text-align: center;
    line-height: 1.8;
    white-space: normal;
    color: #ccc;
    background-color: #000;
    background-color: rgba(0, 0, 0, 0.6);
    font-family: sans-serif;
}
#baguetteBox-overlay .full-image:before {
    content: "";
    display: inline-block;
    height: 50%;
    width: 1px;
    margin-right: -1px;
}
#baguetteBox-slider {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    white-space: nowrap;
    transition: left 0.4s ease;
    transition: left 0.4s ease, transform 0.4s ease;
    transition: left 0.4s ease, transform 0.4s ease;
}
#baguetteBox-slider.bounce-from-right {
    animation: bounceFromRight 0.4s ease-out;
}
#baguetteBox-slider.bounce-from-left {
    animation: bounceFromLeft 0.4s ease-out;
}
@keyframes bounceFromRight {
    0% {
        margin-left: 0;
    }
    50% {
        margin-left: -30px;
    }
    100% {
        margin-left: 0;
    }
}
@keyframes bounceFromLeft {
    0% {
        margin-left: 0;
    }
    50% {
        margin-left: 30px;
    }
    100% {
        margin-left: 0;
    }
}
.baguetteBox-button#next-button,
.baguetteBox-button#previous-button {
    top: 50%;
    top: calc(50% - 30px);
    width: 44px;
    height: 60px;
}
.baguetteBox-button {
    position: absolute;
    cursor: pointer;
    outline: none;
    padding: 0;
    margin: 0;
    border: 0;
    background: transparent;
    color: #ddd;
    font: 1.6em sans-serif;
    transition: background-color 0.4s ease;
}
.baguetteBox-button:focus,
.baguetteBox-button:hover {
    background-color: rgba(50, 50, 50, 0.9);
}
.baguetteBox-button#next-button {
    right: 2%;
}
.baguetteBox-button#previous-button {
    left: 2%;
}
.baguetteBox-button#close-button {
    top: 20px;
    right: 2%;
    right: calc(2% + 6px);
    width: 30px;
    height: 30px;
}
.baguetteBox-button svg {
    position: absolute;
    left: 0;
    top: 0;
}
.baguetteBox-spinner {
    width: 40px;
    height: 40px;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -20px;
    margin-left: -20px;
}
.baguetteBox-double-bounce1,
.baguetteBox-double-bounce2 {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #fff;
    opacity: 0.6;
    position: absolute;
    top: 0;
    left: 0;
    animation: bounce 2s infinite ease-in-out;
}
.baguetteBox-double-bounce2 {
    animation-delay: -1s;
}
@keyframes bounce {
    0%,
    100% {
        transform: scale(0);
    }
    50% {
        transform: scale(1);
    }
}
.swiper-container {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
}
.swiper-container-no-flexbox .swiper-slide {
    float: left;
}
.swiper-container-vertical > .swiper-wrapper {
    flex-direction: column;
}
.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box;
}
.swiper-container-android .swiper-slide,
.swiper-wrapper {
    transform: translate3d(0px, 0, 0);
}
.swiper-container-multirow > .swiper-wrapper {
    flex-wrap: wrap;
}
.swiper-container-free-mode > .swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto;
}
.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
}
.swiper-slide-invisible-blank {
    visibility: hidden;
}
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
    height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height;
}
.swiper-container-3d {
    perspective: 1200px;
}
.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
    transform-style: preserve-3d;
}
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
}
.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal > .swiper-wrapper {
    touch-action: pan-y;
}
.swiper-container-wp8-vertical,
.swiper-container-wp8-vertical > .swiper-wrapper {
    touch-action: pan-x;
}
.swiper-button-prev,
.swiper-button-next {
    position: absolute;
    bottom: 0;
    width: 27px;
    height: 44px;
    margin-top: -22px;
    z-index: 10;
    cursor: pointer;
    background-size: 27px 44px;
    background-position: center;
    background-repeat: no-repeat;
}
@media (min-width: 62em) {
    .swiper-button-prev,
    .swiper-button-next {
        bottom: 0.875rem;
    }
}
.swiper-button-prev:hover:before,
.swiper-button-prev:focus:before,
.swiper-button-next:hover:before,
.swiper-button-next:focus:before {
    opacity: 0.4;
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    left: 30%;
    right: auto;
    font-size: 2.1875rem;
}
@media (min-width: 26.25em) {
    .swiper-button-prev,
    .swiper-container-rtl .swiper-button-next {
        left: 40%;
    }
}
@media (min-width: 47.5em) {
    .swiper-button-prev,
    .swiper-container-rtl .swiper-button-next {
        left: 45%;
    }
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    right: 30%;
    left: auto;
    font-size: 2.1875rem;
}
@media (min-width: 26.25em) {
    .swiper-button-next,
    .swiper-container-rtl .swiper-button-prev {
        right: 40%;
    }
}
@media (min-width: 47.5em) {
    .swiper-button-next,
    .swiper-container-rtl .swiper-button-prev {
        right: 45%;
        transform: translateX(-45%);
    }
}
.swiper-button-lock {
    display: none;
}
.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: 300ms opacity;
    transform: translate3d(0, 0, 0);
    z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
    opacity: 0;
}
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
    bottom: 10px;
    left: 0;
    width: 100%;
}
.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
}
.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #000;
    opacity: 0.2;
}
button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -moz-appearance: none;
    appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer;
}
.swiper-pagination-bullet-active {
    opacity: 1;
    background: #007aff;
}
.swiper-container-vertical > .swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0px, -50%, 0);
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 6px 0;
    display: block;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: 200ms transform, 200ms top;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 200ms transform, 200ms left;
}
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 200ms transform, 200ms right;
}
.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, 0.25);
    position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #007aff;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top;
}
.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0;
}
.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0;
}
.swiper-pagination-white .swiper-pagination-bullet-active {
    background: #ffffff;
}
.swiper-pagination-progressbar.swiper-pagination-white {
    background: rgba(255, 255, 255, 0.25);
}
.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #ffffff;
}
.swiper-pagination-black .swiper-pagination-bullet-active {
    background: #000000;
}
.swiper-pagination-progressbar.swiper-pagination-black {
    background: rgba(0, 0, 0, 0.25);
}
.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
    background: #000000;
}
.swiper-pagination-lock {
    display: none;
}
.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0, 0, 0, 0.1);
}
.swiper-container-horizontal > .swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%;
}
.swiper-container-vertical > .swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%;
}
.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 10px;
    left: 0;
    top: 0;
}
.swiper-scrollbar-cursor-drag {
    cursor: move;
}
.swiper-scrollbar-lock {
    display: none;
}
.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}
.swiper-slide-zoomed {
    cursor: move;
}
.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    animation: swiper-preloader-spin 1s steps(12, end) infinite;
}
.swiper-lazy-preloader:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-position: 50%;
    background-size: 100%;
    background-repeat: no-repeat;
}
@keyframes swiper-preloader-spin {
    100% {
        transform: rotate(360deg);
    }
}
.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000;
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    transition-timing-function: ease-out;
}
.swiper-container-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
}
.swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none;
}
.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}
.swiper-container-cube {
    overflow: visible;
}
.swiper-container-cube .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%;
}
.swiper-container-cube .swiper-slide .swiper-slide {
    pointer-events: none;
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
    transform-origin: 100% 0;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
    pointer-events: auto;
    visibility: visible;
}
.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden;
}
.swiper-container-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.6;
    filter: blur(50px);
    z-index: 0;
}
.swiper-container-flip {
    overflow: visible;
}
.swiper-container-flip .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
}
.swiper-container-flip .swiper-slide .swiper-slide {
    pointer-events: none;
}
.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}
.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden;
}
.swiper-container-coverflow .swiper-wrapper {
    -ms-perspective: 1200px;
}
noscript {
    margin-top: 3.75rem;
    display: block;
}
noscript input#noticebar {
    display: none;
}
noscript input#noticebar:checked ~ div {
    opacity: 1;
    visibility: visible;
}
noscript input#noticebar:checked ~ label {
    background: #fff;
    color: #d85d00;
}
noscript label {
    text-indent: 110%;
    white-space: nowrap;
    overflow: hidden;
    background: #d85d00;
    bottom: 0.625rem;
    color: #fff;
    font-size: 1.5625rem;
    height: 2.8125rem;
    opacity: 0.9;
    position: fixed;
    right: 0.625rem;
    text-decoration: none;
    width: 2.8125rem;
    z-index: 99999999 !important;
}
noscript label:before {
    font-family: icomoon;
    display: inline-block;
    left: 50%;
    position: absolute;
    text-indent: 0;
    top: 50%;
    transform: translate(-50%, -50%);
}
noscript label:hover {
    cursor: pointer;
    background: #bf5200;
}
noscript label + div {
    opacity: 0;
    visibility: hidden;
    height: 100vh;
}
noscript label + div,
.notice-bar {
    background: #d85d00;
    color: #fff;
    display: flex;
    justify-content: space-around;
    left: 0;
    padding: 1.25rem;
    position: fixed;
    text-align: center;
    top: 0;
    transition: 0.3s;
    width: 100%;
    z-index: 9999999 !important;
}
noscript label + div span,
.notice-bar span {
    align-self: center;
    font-size: 1.375rem;
    line-height: 1.875rem;
    margin: 0;
}
noscript label + div a,
.notice-bar a {
    color: #fff;
}
noscript label + div a:hover,
.notice-bar a:hover {
    color: #fff;
    text-decoration: none;
}
noscript div:first-child {
    display: none;
}
.breadcrumb li {
    list-style: none;
    float: left;
}
.breadcrumb li:before {
    content: "❯";
    padding: 0 1rem;
    font-size: 60%;
}
.breadcrumb li:first-child + li:before {
    content: " ";
    padding: 0 0.2rem;
}
.breadcrumb li:first-child:before {
    content: "";
    padding: 0;
}
#log_container pre,
#log_container .checkupXYZ {
    height: 100%;
    overflow-y: scroll;
    background: #fff;
    padding: 1%;
}
#log_hider {
    cursor: pointer;
    z-index: 999999999;
}
#show_console {
    display: none;
}
#show_console:checked + #log_container {
    top: 0;
}
#log_container {
    height: 100%;
    width: 100%;
    position: fixed;
    top: -100%;
    left: 0;
    color: #484848;
    background: #f2f2f2;
    padding: 2%;
    transition: all 0.5s ease-in-out;
    box-shadow: inset 0 0 0.0625rem 0.0625rem rgba(216, 93, 0, 0.5);
    z-index: 99999999;
}
#log_container:target {
    top: 0;
}
#log_container.show {
    top: 0;
}
#log_container ul {
    list-style: inside square;
}
#log_container ul ul {
    margin-left: 2rem;
}
#log_container ul h3 {
    display: inline-block;
}
#log_container ul li {
    padding: 0.5rem 0;
    border-bottom: 0.0625rem solid #f2f2f2;
}
#log_container ul li:last-child {
    border: none;
}
#log_container h1 {
    text-align: center;
    padding-top: 2rem;
}
#log_container h2 {
    padding-bottom: 0.5rem;
    border-bottom: 0.0625rem solid #f3f3f3;
    text-align: center;
    font-weight: normal;
    margin-top: 4rem;
}
#log_container h3 {
    font-weight: normal;
}
#log_container .checkup_pages li {
    padding: 1rem;
}
#log_container .checkup_pages .sub {
    margin-left: 2rem;
}
#log_container > p {
    margin-bottom: 4rem;
}
.checkup_pages > li:nth-child(odd) {
    background: #f4f4f4;
}
.checkupXYZ {
    width: 60rem;
    margin: 0 auto;
    resize: horizontal;
}
.informatizer {
    background: #8dd45c;
    padding: 1%;
    position: fixed;
    top: 2%;
    right: 2%;
    display: block;
    color: #fff;
    transition: all 0.5s ease-in-out;
    text-decoration: none;
}
.informatizer:before {
    margin-right: 1rem;
    font-size: 1.5em;
    line-height: 1rem;
}
.informatizer a {
    color: #fff;
}
.btn-focus {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) scale(0);
    padding: 2.6em;
    background: rgba(216, 93, 0, 0.9);
    color: #fff !important;
    font-size: 1.5rem;
    z-index: 2000;
    transition: all 300ms;
    text-decoration: none;
}
.btn-focus:focus {
    transform: translate(-50%, -50%) scale(1);
}
body.sitemap {
    display: flex;
    padding: 2rem;
}
body.sitemap nav {
    width: 100%;
    margin: 0 auto;
}
body.sitemap nav .sitemap ul {
    padding-left: 20px;
}
.back-to-top {
    position: fixed;
    bottom: 1.0625rem;
    right: 1.0625rem;
    z-index: 800;
    font-size: 1rem;
    width: 3em;
    height: 3em;
    line-height: 3em;
    background-color: #c3282e;
    color: #fff;
    text-decoration: none;
    text-align: center;
}
body:not(.scrolling-up) .back-to-top {
    opacity: 0;
    visibility: hidden;
}
.back-to-top span {
    display: none;
}
* {
    margin: 0;
    padding: 0;
}
*,
*:before,
*:after {
    box-sizing: inherit;
}
html {
    background: #fff;
    box-sizing: border-box;
    color: #484848;
    font-family: Roboto, sans-serif;
    font-size: 100%;
    hyphens: manual;
    line-height: 1.625rem;
    scroll-behavior: smooth;
    text-size-adjust: none;
}
body {
    line-height: 1.625rem;
    opacity: 1 !important;
}
iframe,
[data-iframe] {
    border: none;
    width: 100%;
}
address {
    font-style: normal;
}
p {
    font-weight: 300;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
form.default legend,
form.default span.legend,
.h3,
.h4,
.h5,
.h6 {
    display: block;
    text-rendering: optimizeLegibility;
    hyphens: auto;
    line-height: 1.3em;
}
h1 span,
h2 span,
h3 span,
h4 span,
h5 span,
h6 span,
.h1 span,
.h2 span,
form.default legend span,
form.default span.legend span,
.h3 span,
.h4 span,
.h5 span,
.h6 span {
    display: block;
    font-weight: normal;
}
h1,
.h1 {
    font-size: 1.6875rem;
    padding-bottom: 2rem;
}
h1 span,
.h1 span {
    font-size: 1.375rem;
}
@media (min-width: 47.5em) {
    h1,
    .h1 {
        font-size: 2rem;
    }
    h1 span,
    .h1 span {
        font-size: 1.6875rem;
    }
}
@media (min-width: 62em) {
    h1,
    .h1 {
        font-size: 2.25rem;
        padding-bottom: 3rem;
    }
    h1 span,
    .h1 span {
        font-size: 2rem;
    }
}
h2,
.h2,
form.default legend,
form.default span.legend {
    font-size: 1.375rem;
    padding-bottom: 1.5rem;
}
h2 span,
.h2 span,
form.default legend span,
form.default span.legend span {
    font-size: 1.125rem;
}
@media (min-width: 47.5em) {
    h2,
    .h2,
    form.default legend,
    form.default span.legend {
        font-size: 2rem;
    }
    h2 span,
    .h2 span,
    form.default legend span,
    form.default span.legend span {
        font-size: 1.6875rem;
    }
}
h3,
.h3 {
    font-size: 1.375rem;
}
h3 span,
.h3 span {
    font-size: 1.125rem;
}
@media (min-width: 62em) {
    h3,
    .h3 {
        font-size: 1.6875rem;
    }
    h3 span,
    .h3 span {
        font-size: 1.375rem;
    }
}
h4,
.h4 {
    font-size: 1.375rem;
}
h5,
.h5 {
    font-size: 1.125rem;
}
h6,
.h6 {
    font-size: 1rem;
}
strong {
    font-weight: 800;
}
a {
    color: #c3282e;
    word-wrap: break-word;
    text-decoration: none;
}
a:hover {
    color: #484848;
}
a:focus {
    color: #484848;
}
a:active {
    color: #484848;
}
a img {
    border: none;
}
a[href^="tel"] {
    color: inherit;
    text-decoration: underline;
}
a:not(.btn):focus,
[tabindex]:focus {
    outline: 1px dotted #d85d00;
    outline-offset: 0.3125rem;
}
hr,
.hr {
    display: flex;
    background: #cacaca;
    border: none;
    clear: both;
    height: 0.0625rem;
    margin: 1rem 0 calc(1rem + 26px);
    flex-basis: 100%;
}
@media (min-width: 75em) {
    hr,
    .hr {
        margin: 3rem 0 calc(3rem + 26px);
    }
}
.cms-navi ul.navi.navi-add,
.cms-navi ul.navi.navi-main {
    background: none;
}
ul,
ol {
    list-style: none;
    background: #e9e9e9;
    padding: 2rem 1rem;
}
@media (min-width: 47.5em) {
    ul,
    ol {
        padding: 2rem;
    }
}
ul.styled-list li,
main ul:not(.unstyled-list) li,
ol.styled-list li,
main ol:not(.unstyled-list) li {
    padding-left: 2.875rem;
    margin-bottom: 0.8rem;
    padding-top: 0.825rem;
    padding-bottom: 0.825rem;
    padding-right: 0.5rem;
    color: #484848;
    background: #fff;
}
ul.styled-list li:last-child,
main ul:not(.unstyled-list) li:last-child,
ol.styled-list li:last-child,
main ol:not(.unstyled-list) li:last-child {
    border: none;
}
ul.styled-list li:before,
main ul:not(.unstyled-list) li:before,
ol.styled-list li:before,
main ol:not(.unstyled-list) li:before {
    text-indent: -1.875rem;
    transform: rotate(91deg);
    top: 1.5rem;
    left: -1rem;
    position: relative;
}
ul.styled-list ul,
main ul:not(.unstyled-list) ul,
ol.styled-list ul,
main ol:not(.unstyled-list) ul {
    margin-left: 1rem;
    margin-bottom: 0;
}
.bigList ul li {
    padding: 2rem !important;
}
.bigList ul li:before {
    display: none !important;
}
dl.styled-list,
main dl:not(.unstyled-list) {
    zoom: 1;
}
dl.styled-list:after,
main dl:not(.unstyled-list):after {
    content: "";
    display: table;
    clear: both;
}
dl.styled-list dt,
main dl:not(.unstyled-list) dt,
dl.styled-list dd,
main dl:not(.unstyled-list) dd {
    display: block;
    background: rgba(243, 243, 243, 0.8);
    padding: 0.9375rem;
}
dl.styled-list dt,
main dl:not(.unstyled-list) dt {
    padding-bottom: 0;
    font-weight: bold;
}
dl.styled-list dd,
main dl:not(.unstyled-list) dd {
    padding-top: 0;
}
dl.styled-list dd + dt,
main dl:not(.unstyled-list) dd + dt {
    margin-top: 0.625rem;
}
dl.styled-list dd + dd,
main dl:not(.unstyled-list) dd + dd {
    margin-top: -0.9375rem;
}
dl.float-list {
    zoom: 1;
}
dl.float-list:after {
    content: "";
    display: table;
    clear: both;
}
dl.float-list dt,
dl.float-list dd {
    display: block;
    vertical-align: top;
    float: left;
}
dl.float-list dt {
    padding-right: 0.5rem;
    width: 40%;
    clear: left;
}
dl.float-list dd {
    width: 60%;
}
ol.styled-list,
main ol:not(.unstyled-list) {
    counter-reset: item;
}
ol.styled-list li,
main ol:not(.unstyled-list) li {
    counter-increment: item;
}
ol.styled-list li:before,
main ol:not(.unstyled-list) li:before {
    content: counters(item, ".") ". ";
}
ol.styled-list ol,
main ol:not(.unstyled-list) ol {
    margin-bottom: 0;
}
ol.styled-list ol li:before,
main ol:not(.unstyled-list) ol li:before {
    content: counters(item, ".") " ";
    margin-right: 0.3125rem;
}
img {
    vertical-align: bottom;
    float: none;
    height: auto;
    max-width: 100%;
    width: 100%;
}
img[src^='http://cms.'],img[src^='https://cms.']
{
    max-width: none;
    width: auto;
}
[data-rel] img,
.lightbox-image img {
    margin-bottom: 0;
}
main table {
    display: table;
    border-collapse: collapse;
    width: 100%;
    max-width: 100%;
    text-align: left;
    font-size: 1rem;
}
@media (max-width: 39.9375em) {
    main table {
        overflow-x: auto;
        display: block;
    }
}
main table caption {
    text-align: left;
    padding: 1.0625rem 1.0625rem 1.5625rem;
    display: table-caption;
    font-weight: bold;
    font-size: 1.2rem;
}
main table thead {
    border-collapse: collapse;
    display: table-header-group;
}
main table tbody {
    width: 100%;
    overflow-x: scroll;
    display: table-row-group;
}
main table tbody tr {
    padding: 1.0625rem 0;
}
main table tbody tr:not(:last-child) {
    border-bottom: 0.0625rem solid #f3f3f3;
}
main table tr {
    display: table-row;
}
main table th,
main table td {
    padding: 1.0625rem;
    display: table-cell;
    vertical-align: top;
}
@media (max-width: 39.9375em) {
    main table td {
        min-width: 50vw;
    }
}
.margin-bottom,
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
form.default legend,
form.default span.legend,
.h3,
.h4,
.h5,
.h6,
main p,
main ol,
main ul,
main dl,
main table {
    margin-bottom: 1.625rem;
}
.highlight {
    color: #ede8dd;
}
.btn,
#header .claim a,
form.default button,
form.default [type="submit"] {
    -moz-appearance: none;
    appearance: none;
    background: #c3282e;
    border: none;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: 1rem;
    line-height: 1.625rem;
    padding: 0.8rem 2.5rem;
    text-align: center;
    text-decoration: none;
    font-family: Roboto, sans-serif;
    box-shadow: 3px 5px 8px 0px rgba(12, 12, 12, 0.29);
}
.btn:after,
#header .claim a:after,
form.default button:after,
form.default [type="submit"]:after {
    display: inline-block;
    font-family: icomoon;
    content: "";
    margin-left: 0.5rem;
}
.btn:hover,
#header .claim a:hover,
form.default button:hover,
form.default :hover[type="submit"] {
    background: #6e6e6e;
    color: #fff;
}
.btn:active,
#header .claim a:active,
form.default button:active,
form.default :active[type="submit"] {
    background: #959595;
    color: #fff;
}
.btn:focus,
#header .claim a:focus,
form.default button:focus,
form.default :focus[type="submit"] {
    background: #bbb;
    color: #fff;
}
.btn *[class^="icon"],
#header .claim a *[class^="icon"],
form.default button *[class^="icon"],
form.default [type="submit"] *[class^="icon"] {
    margin-left: 0.5rem;
    vertical-align: middle;
}
.clear {
    clear: both;
    float: none;
}
.clearfix {
    zoom: 1;
}
.clearfix:after {
    content: "";
    display: table;
    clear: both;
}
.hidden {
    display: none !important;
}
.hideText {
    text-indent: 110%;
    white-space: nowrap;
    overflow: hidden;
    display: inline-block;
    overflow: hidden;
    width: 0;
}
.float-left {
    float: left;
}
img.float-left {
    margin-right: 1rem;
}
.float-right {
    float: right;
}
img.float-right {
    margin-left: 1rem;
}
.fluid {
    height: auto;
    width: 100%;
}
.non-fluid {
    width: auto !important;
}
.align-left {
    text-align: left;
}
.align-right {
    text-align: right;
}
.align-center {
    text-align: center;
}
.wide {
    width: 100%;
    display: block;
}
.video-container:not(.video-tag),
.google-maps:not(.video-tag) {
    position: relative;
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative;
}
.video-container:not(.video-tag) iframe,
.google-maps:not(.video-tag) iframe {
    border: none;
    height: 100%;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
}
.video-container video,
.google-maps video {
    width: 100%;
    height: auto;
}
@media (min-width: 47.5em) {
    .google-maps {
        height: 25rem;
    }
}
body:before {
    width: 97.5pt;
    content: "default:16px....default:0....tiny:26.25em....small:40em....medium:47.5em....large:62em....giant:75em....huge:85.25em....full:95em....cut:101.25em";
    display: none !important;
}
@media (min-width: 0) {
    body:before {
        width: 175.5pt;
    }
}
@media (min-width: 26.25em) {
    body:before {
        width: 271.5pt;
    }
}
@media (min-width: 40em) {
    body:before {
        width: 355.5pt;
    }
}
@media (min-width: 47.5em) {
    body:before {
        width: 457.5pt;
    }
}
@media (min-width: 62em) {
    body:before {
        width: 541.5pt;
    }
}
@media (min-width: 75em) {
    body:before {
        width: 625.5pt;
    }
}
@media (min-width: 85.25em) {
    body:before {
        width: 721.5pt;
    }
}
@media (min-width: 95em) {
    body:before {
        width: 799.5pt;
    }
}
@media (min-width: 101.25em) {
    body:before {
        width: 895.5pt;
    }
}
body.dev-mode:before,
body.debug:before {
    background: #d85d00;
    border-color: #d85d00;
    border-style: solid;
    border-width: 0 1.0625rem;
    color: #fff;
    display: block !important;
    font-family: Courier;
    font-size: 10pt;
    left: 0;
    line-height: 2.5;
    overflow: hidden;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
    white-space: nowrap;
    z-index: 99999;
}
body:hover:before {
    opacity: 0.5;
    pointer-events: none;
}
.swiper-button-prev:before,
.swiper-button-next:before,
.back-to-top,
.btn,
#header .claim a,
form.default button,
form.default [type="submit"],
form.default [type="text"],
form.default [type="tel"],
form.default [type="email"],
form.default [type="file"],
form.default input,
form.default textarea,
form.default select {
    transition: 0.3s;
}
html.in-progress {
    pointer-events: none;
}
html.in-progress:before {
    content: "";
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999998;
}
html.in-progress:after {
    content: "";
    position: fixed;
    top: 0;
    height: 0;
    background: url("../images/layout/loading.svg") no-repeat center center;
    height: 100vh;
    width: 100vw;
    z-index: 99999999;
    filter: invert(100%);
}
.row.stretch {
    align-items: stretch;
}
.row.top {
    align-items: flex-start;
}
.row.middle {
    align-items: center;
}
.row.bottom {
    align-items: flex-end;
}
.row.start {
    justify-content: flex-start;
}
.row.center {
    justify-content: center;
}
.row.end {
    justify-content: flex-end;
}
.row.around {
    justify-content: space-around;
}
.row.between {
    justify-content: space-between;
}
@media (min-width: 62em) {
    .count {
        -moz-column-count: 2;
        column-count: 2;
    }
}
#navigation nav ul.navi li.nav-back:hover,
#navigation nav ul.navi li:hover > a,
#navigation nav ul.navi li:hover:not(.nav-back) > span {
    color: #c3282e;
}
#navigation nav ul.navi li a.active,
#navigation nav ul.navi li.has-sub > span.active,
#navigation nav ul.navi li.has-sub.active > a,
#navigation nav ul.navi li.has-sub.active > span {
    color: #c3282e;
    font-weight: 700;
}
#navigation nav ul.navi li.nav-back:before {
    font-family: icomoon;
    content: "";
    transform: rotateY(180deg);
}
#navigation nav ul.navi li.has-sub > span:after,
#navigation nav ul.navi li.has-sub > a:after {
    font-family: icomoon;
    content: "";
}
@media (min-width: 75em) {
    #navigation nav ul.navi li.has-sub > span:after,
    #navigation nav ul.navi li.has-sub > a:after {
        transform: rotate(90deg);
    }
}
@media (max-width: 74.9375em) {
    #navigation {
        min-width: 50%;
        overflow: hidden;
        top: 3.125rem;
        bottom: 0;
    }
    #navigation.first-level nav {
        height: calc(100vh - 3.125rem);
        overflow: hidden;
        overflow-y: auto;
    }
    #navigation nav ul.navi li.has-sub .sub {
        height: calc(100vh - 3.125rem);
    }
    #navigation nav ul.navi li.has-sub .sub.open {
        -webkit-overflow-scrolling: touch;
        overflow: hidden;
        overflow-y: auto;
    }
    #navigation nav ul.navi li.has-sub .sub:before {
        content: attr(data-parent-name);
        display: block;
    }
    html.hidden-scroll {
        overflow: hidden;
    }
}
#quickbar {
    position: fixed;
    left: 0;
    width: 100%;
    top: 0;
}
@media (max-width: 74.9375em) {
    #quickbar {
        height: 3.125rem;
    }
}
#quickbar.hide {
    transform: translateY(-100%);
}
#quickbar label[for="navi-toggled"] {
    display: block;
    cursor: pointer;
    width: 1.25rem;
    height: 1.25rem;
    position: relative;
    overflow: hidden;
}
#quickbar label[for="navi-toggled"]:after {
    content: "";
    position: fixed;
    left: 0;
    width: 200vw;
    height: 200vh;
    display: block;
    background-color: #484848;
    opacity: 0.9;
    z-index: -1;
    top: 3.125rem;
}
#quickbar label[for="navi-toggled"] span {
    transition: 0.4s linear;
    text-indent: -9999px;
    width: 0;
    top: 50%;
    transform: translate(-50%, -50%);
}
#quickbar label[for="navi-toggled"] span,
#quickbar label[for="navi-toggled"] span:before,
#quickbar label[for="navi-toggled"] span:after {
    content: "";
    position: absolute;
    display: block;
    background: #fff;
    height: 2px;
    left: 50%;
    transform-origin: center;
}
#quickbar label[for="navi-toggled"] span:before,
#quickbar label[for="navi-toggled"] span:after {
    top: calc(50% + 0rem);
    width: 1.25rem;
    transition: top 0.3s ease-in-out, transform 0.3s 0.2s linear;
}
#quickbar label[for="navi-toggled"] span:before {
    transform: translate(-50%, -50%) rotate(45deg);
}
#quickbar label[for="navi-toggled"] span:after {
    transform: translate(-50%, -50%) rotate(-45deg);
}
#navi-toggled {
    display: none;
}
@media (max-width: 74.9375em) {
    #navi-toggled:not(:checked) ~ * #navigation,
    #navi-toggled:not(:checked) ~ #navigation {
        transform: translateX(100%);
    }
}
#navi-toggled:not(:checked) ~ #quickbar label[for="navi-toggled"]:after {
    opacity: 0;
    visibility: hidden;
}
#navi-toggled:not(:checked) ~ #quickbar label[for="navi-toggled"] span {
    width: 1.25rem;
}
#navi-toggled:not(:checked) ~ #quickbar label[for="navi-toggled"] span:before,
#navi-toggled:not(:checked) ~ #quickbar label[for="navi-toggled"] span:after {
    transform: translate(-50%, -50%);
    transition: top 0.3s 0.2s ease-in-out, transform 0.3s linear;
}
#navi-toggled:not(:checked) ~ #quickbar label[for="navi-toggled"] span:before {
    top: calc(50% + -0.3125rem);
}
#navi-toggled:not(:checked) ~ #quickbar label[for="navi-toggled"] span:after {
    top: calc(50% + 0.3125rem);
}
body.javascript .sub {
    transition: transform 0.3s ease, opacity 0.3s ease;
}
#navigation {
    position: fixed;
    max-width: 100%;
    right: 0;
    background-color: #fff;
    z-index: 1001;
    padding: 1rem 0;
}
#navigation .branding {
    display: none;
}
#navigation nav .contact {
    display: flex;
    flex-direction: column;
    padding: 0 1.0625rem;
    margin-bottom: 4rem;
}
#navigation nav .contact .phone::after,
#navigation nav .contact .email::after {
    display: none;
}
#navigation nav .contact .phone::before,
#navigation nav .contact .email::before {
    display: inline-block;
    font-family: icomoon;
    margin-right: 0.5rem;
}
#navigation nav .contact .phone::before {
    content: "";
}
#navigation nav .contact .email {
    margin-top: 1rem;
}
#navigation nav .contact .email::before {
    content: "";
}
#navigation nav ul {
    width: 100%;
    padding: 0 0;
}
#navigation nav ul.navi li a,
#navigation nav ul.navi li:not(.nav-back) > span,
#navigation nav ul.navi li.nav-back,
#navigation nav ul.navi li.has-sub > span {
    display: block;
    cursor: pointer;
    padding: 1em 1.0625rem;
    text-decoration: none;
    color: #484848;
}
#navigation nav ul.navi li.has-sub > span,
#navigation nav ul.navi li.has-sub > a {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#navigation nav ul.navi li.has-sub > span .sub,
#navigation nav ul.navi li.has-sub > a .sub {
    position: absolute;
    left: 0;
    top: 0;
    background: #fff;
    padding-bottom: 2rem;
}
@media (min-width: 75em) {
    #navigation nav ul.navi li.has-sub > span .sub,
    #navigation nav ul.navi li.has-sub > a .sub {
        padding-bottom: 0;
    }
}
#navigation nav ul.navi li.has-sub > span .sub .leistungen,
#navigation nav ul.navi li.has-sub > a .sub .leistungen {
    display: none;
}
#navigation nav ul.navi li.has-sub > span .sub:before,
#navigation nav ul.navi li.has-sub > a .sub:before {
    padding: 1em 1.0625rem;
    background-color: #f0f0f0;
}
@media (max-width: 74.9375em) {
    #navigation nav ul.navi li.has-sub > span .sub,
    #navigation nav ul.navi li.has-sub > a .sub {
        transform: translateX(100%);
    }
}
@media (min-width: 75em) {
    #navigation nav ul.navi li.has-sub > span .sub,
    #navigation nav ul.navi li.has-sub > a .sub {
        opacity: 0;
        visibility: hidden;
    }
}
@media (max-width: 74.9375em) {
    #navigation nav ul.navi li.has-sub > span .sub.current,
    #navigation nav ul.navi li.has-sub > a .sub.current {
        transform: translateX(0%);
    }
}
@media (min-width: 75em) {
    #navigation nav ul.navi li.has-sub > span .sub.current,
    #navigation nav ul.navi li.has-sub > a .sub.current {
        opacity: 1;
        visibility: visible;
    }
}
#navigation nav ul.navi li.has-sub > span:after,
#navigation nav ul.navi li.has-sub > a:after {
    margin-left: 0.5em;
    display: inline-block;
}
#navigation nav ul.navi li.has-sub .sub {
    position: absolute;
    left: 0;
    top: 0;
    background: #fff;
    padding-bottom: 2rem;
}
@media (min-width: 75em) {
    #navigation nav ul.navi li.has-sub .sub {
        padding-bottom: 0;
    }
}
#navigation nav ul.navi li.has-sub .sub .leistungen {
    display: none;
}
#navigation nav ul.navi li.has-sub .sub:before {
    padding: 1em 1.0625rem;
    background-color: #f0f0f0;
}
@media (max-width: 74.9375em) {
    #navigation nav ul.navi li.has-sub .sub {
        transform: translateX(100%);
    }
}
@media (min-width: 75em) {
    #navigation nav ul.navi li.has-sub .sub {
        opacity: 0;
        visibility: hidden;
    }
}
@media (max-width: 74.9375em) {
    #navigation nav ul.navi li.has-sub .sub.current {
        transform: translateX(0%);
    }
}
@media (min-width: 75em) {
    #navigation nav ul.navi li.has-sub .sub.current {
        opacity: 1;
        visibility: visible;
    }
}
#navigation nav ul.navi li.nav-back {
    position: relative;
}
#navigation nav ul.navi li.nav-back:before {
    margin-right: 1em;
    display: inline-block;
}
@media (min-width: 75em) {
    #navigation {
        top: 0;
        width: 100%;
    }
    #navigation nav ul.navi {
        display: flex;
        justify-content: space-between;
    }
    #navigation nav ul.navi li a,
    #navigation nav ul.navi li:not(.nav-back) > span,
    #navigation nav ul.navi li .sub:before,
    #navigation nav ul.navi li .nav-back {
        white-space: nowrap;
    }
    #navigation nav ul.navi li.has-sub {
        position: relative;
    }
    body.cms-backend #navigation nav ul.navi li.has-sub:hover > .sub {
        opacity: 1;
        visibility: visible;
    }
    #navigation nav ul.navi li.has-sub .sub {
        top: 100%;
        width: auto;
    }
    #navigation nav ul.navi li.has-sub .sub .sub {
        left: 100%;
        top: 0;
    }
    #navigation nav ul.navi li.nav-back:before {
        content: "×";
        text-align: center;
        width: 100%;
    }
    #navigation nav ul.navi li.nav-back span {
        display: none;
    }
    #navigation.hover-navigation nav ul.navi li.nav-back {
        display: none;
    }
    #navigation {
        top: 1rem;
        transition: 0.5s;
    }
    #navigation .flex {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
    #navigation .flex .branding {
        display: block;
        margin-bottom: 0;
    }
    #navigation .flex .branding img {
        display: block;
        margin-left: auto;
        margin-right: auto;
        width: 170px;
    }
    #navigation .flex nav {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
    #navigation .flex nav .hr {
        margin: 0 1rem;
        flex-basis: auto;
        width: 0.0625rem;
        height: 1.25rem;
    }
    #navigation .flex nav .contact {
        flex-direction: row;
        margin-bottom: 0;
    }
    #navigation .flex nav .contact .email {
        margin-top: 0;
        margin-left: 1rem;
    }
    .scrolled #navigation {
        top: 0;
        transition: 0.5s;
        box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
    }
}
#quickbar {
    background-color: #484848;
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.0625rem;
    z-index: 1000;
}
@media (min-width: 75em) {
    #quickbar {
        display: none;
    }
}
#quickbar .phone:before {
    font-family: icomoon;
    content: "";
    margin-right: 0.75rem;
}
.navi-add {
    display: flex;
    flex-direction: column;
    margin-top: 2rem;
}
.navi-add li {
    margin: 0.5rem 0;
}
.navi-add li a {
    display: block;
    text-align: center;
    text-decoration: none;
    background-color: #f3f3f3;
    color: #484848;
    padding: 1rem;
}
.navi-add li a:hover,
.navi-add li a.active {
    background-color: #c3282e;
    color: #fff;
}
@media (min-width: 40em) {
    .navi-add {
        flex-direction: row;
        justify-content: center;
    }
    .navi-add li {
        margin: 0 0.5rem;
    }
    .navi-add li a {
        padding: 1rem 1.5rem;
    }
}
@media (min-width: 75em) {
    .navi-add {
        margin-top: 0;
        flex-direction: column;
    }
    .navi-add li {
        margin: 0;
    }
    .navi-add li a {
        text-align: start;
        text-decoration: underline;
        background-color: transparent;
        color: #c3282e;
        padding: 0;
    }
    .navi-add li a:hover,
    .navi-add li a.active {
        background-color: transparent;
        color: #c3282e;
        text-decoration: none;
    }
    .navi-add li a.active {
        font-weight: 700;
    }
}
body.cms-page-edit #navigation,
body.cms-page-edit #header,
body.cms-page-edit #footer {
    display: none;
}
svg#icon-iso {
    width: 110px;
    height: 110px;
    margin-bottom: -1rem;
    margin-top: -1rem;
}
.kontaktArea {
    background-color: #3f3f3f;
    color: #fff;
    padding: 2rem;
    text-align: center;
    margin: 2rem 0;
    position: relative;
    box-shadow: 6px 11px 10px 0px rgba(0, 0, 0, 0.41);
}
.kontaktArea:before {
    position: absolute;
    content: "💬";
    display: flex;
    top: -29px;
    left: -10px;
    color: #fff;
    font-size: 24px;
    padding: 0.5rem;
    background: #3f3f3f;
    z-index: 3;
    box-shadow: 3px 6px 4px 0px rgba(0, 0, 0, 0.34);
    transition: 0.4s;
}
.kontaktArea:hover:before {
    font-size: 28px;
    padding: 0.6rem;
    transition: 0.4s;
}
.kontaktArea .btn,
.kontaktArea #header .claim a,
#header .claim .kontaktArea a,
.kontaktArea form.default button,
form.default .kontaktArea button,
.kontaktArea form.default [type="submit"],
form.default .kontaktArea [type="submit"] {
    margin-bottom: 1.5rem;
    background-color: #c3282e;
    color: #fff;
    display: block;
}
.kontaktArea .btn:hover,
.kontaktArea #header .claim a:hover,
#header .claim .kontaktArea a:hover,
.kontaktArea form.default button:hover,
form.default .kontaktArea button:hover,
.kontaktArea form.default :hover[type="submit"],
form.default .kontaktArea :hover[type="submit"] {
    background-color: #c3282e;
    color: #fff;
    background-color: #fff;
    color: #484848;
}
.cms-article.attationBox {
    background: #d85d00;
    color: #fff;
    padding: 2rem 2rem 1.5rem 2rem;
    position: relative;
    margin: 1.5rem 0 2.5rem 0;
    transition: 0.4s;
}
.cms-article.attationBox:before {
    position: absolute;
    content: "🛈";
    display: flex;
    top: -20px;
    left: -14px;
    color: #fff;
    font-size: 33px;
    padding: 0.5rem;
    background: #d85d00;
    z-index: 3;
    box-shadow: 3px 6px 4px 0px rgba(0, 0, 0, 0.34);
    transition: 0.4s;
}
.cms-article.attationBox:hover:before {
    font-size: 38px;
    padding: 0.8rem;
    transition: 0.4s;
}
.greyContainer {
    background-color: #f4f4f4;
    padding: 4.375rem 0;
}
@media (min-width: 75em) {
    .greyContainer {
        padding: 8.125rem 0;
    }
}
.whiteContainer {
    padding: 4.375rem 0;
}
@media (min-width: 75em) {
    .whiteContainer {
        padding: 8.125rem 0;
    }
}
.redContainer {
    padding: 4.375rem 0;
    background-color: #c3272e;
    color: #fff;
    text-align: center;
}
@media (min-width: 75em) {
    .redContainer {
        padding: 6.25rem 0;
    }
}
.redContainer .btn,
.redContainer #header .claim a,
#header .claim .redContainer a,
.redContainer form.default button,
form.default .redContainer button,
.redContainer form.default [type="submit"],
form.default .redContainer [type="submit"] {
    background-color: #fff;
    color: #484848;
    display: block;
}
.redContainer .btn:hover,
.redContainer #header .claim a:hover,
#header .claim .redContainer a:hover,
.redContainer form.default button:hover,
form.default .redContainer button:hover,
.redContainer form.default :hover[type="submit"],
form.default .redContainer :hover[type="submit"] {
    background-color: #484848;
    color: #fff;
}
.cms-container-el.bigInfoArea.mediumTeaser {
    margin: 4rem 0;
}
.bigInfoArea {
    background-color: #404040;
    margin: 7rem 1rem;
    padding: 3rem 1rem;
    color: white;
}
.bigInfoArea p a {
    color: #e1545a;
}
.bigInfoArea p a:hover {
    color: #fff;
}
.bigInfoArea ul,
.bigInfoArea ol {
    background: #303030;
}
.bigInfoArea ul li,
.bigInfoArea ol li {
    color: #fff !important;
    background: #232323 !important;
}
@media (min-width: 62em) {
    .bigInfoArea {
        margin: 10rem 4rem;
        padding: 3rem 2rem 5rem;
    }
}
.bigInfoArea .lightInfoBox {
    background-color: #303030;
    color: #ffffff;
    padding: 1rem;
    position: relative;
}
@media (min-width: 47.5em) {
    .bigInfoArea .lightInfoBox {
        padding: 2rem;
    }
}
.bigInfoArea .lightInfoBox:before {
    position: absolute;
    content: "💬";
    display: flex;
    top: -29px;
    left: -10px;
    color: #fff;
    font-size: 24px;
    padding: 0.5rem;
    background: #303030;
    z-index: 3;
    box-shadow: 3px 6px 4px 0px rgba(0, 0, 0, 0.34);
    transition: 0.4s;
}
.bigInfoArea .lightInfoBox:hover:before {
    font-size: 28px;
    padding: 0.6rem;
    transition: 0.4s;
}
.bigInfoArea .lightInfoBox .btn,
.bigInfoArea .lightInfoBox #header .claim a,
#header .claim .bigInfoArea .lightInfoBox a,
.bigInfoArea .lightInfoBox form.default button,
form.default .bigInfoArea .lightInfoBox button,
.bigInfoArea .lightInfoBox form.default [type="submit"],
form.default .bigInfoArea .lightInfoBox [type="submit"] {
    margin-bottom: 1.5rem;
}
.bigInfoArea .iconBox {
    position: relative;
    top: -60%;
    margin-bottom: -3rem;
    background: #c3272e;
    text-align: center;
    padding: 1.5rem;
}
@media (min-width: 47.5em) {
    .bigInfoArea .iconBox {
        top: -75%;
    }
}
.bigInfoArea .iconBox svg {
    width: 90px;
    height: 90px;
    background: #c3272e;
    fill: #fff;
    padding: 1rem;
}
.teaserArea .col {
    margin-top: 4rem;
}
@media (min-width: 47.5em) {
    .teaserArea .col {
        margin-top: 7rem;
    }
}
.teaserArea :nth-child(even) .redTeaserbox {
    background-color: #676767;
}
.teaserArea .redTeaserbox {
    background-color: #404040;
    height: 100%;
    padding: 3rem 2rem;
    color: #fff;
    text-align: center;
}
.teaserArea .redTeaserbox h3 {
    color: #fff;
}
.teaserArea .redTeaserbox .iconBox {
    position: relative;
    top: -12%;
    margin-bottom: -2rem;
}
body:not(.index) .teaserArea .redTeaserbox .iconBox {
    top: -25%;
}
@media (min-width: 26.25em) {
    .teaserArea .redTeaserbox .iconBox {
        top: -20%;
    }
}
@media (min-width: 40em) {
    .teaserArea .redTeaserbox .iconBox {
        top: -15%;
    }
}
@media (min-width: 47.5em) {
    .teaserArea .redTeaserbox .iconBox {
        top: -28%;
    }
}
.teaserArea .redTeaserbox .iconBox svg {
    width: 120px;
    height: 120px;
    background: #c3272e;
    fill: #fff;
    padding: 1.5rem;
}
.rightIndexBox {
    background: #f4f4f4;
    padding: 2rem 1rem;
    position: relative;
}
body.index .rightIndexBox {
    top: -10%;
    margin: 0 0.5rem -4rem;
}
@media (min-width: 40em) {
    body.index .rightIndexBox {
        top: -20%;
        margin: 0 1.5rem -5rem;
        padding: 2rem 1.5rem;
    }
}
@media (min-width: 62em) {
    body.index .rightIndexBox {
        top: -36%;
        margin: 0 3rem -8rem;
        padding: 3rem 2rem;
    }
}
@media (min-width: 75em) {
    body.index .rightIndexBox {
        left: -24%;
        top: 0;
        margin: 0 3rem;
    }
}
@media (min-width: 62em) {
    .rightIndexBox {
        padding: 3rem 2rem;
    }
}
.textboxImage {
    position: relative;
}
.textboxImage img {
    height: 300px;
    -o-object-fit: cover;
    object-fit: cover;
}
@media (min-width: 75em) {
    .textboxImage img {
        height: 750px;
    }
}
.smallImage {
    position: relative;
}
.smallImage img {
    height: 300px;
    -o-object-fit: cover;
    object-fit: cover;
}
.redIconArea .col {
    margin-bottom: 2rem;
}
.iconBoxes {
    padding: 2rem;
    background: #404040;
    text-align: center;
    color: #fff;
    height: 100%;
}
.iconBoxes svg {
    width: 80px;
    height: 80px;
    fill: #fff;
    stroke-width: 1;
}
.teaserIcons a.btn,
.teaserIcons #header .claim a,
#header .claim .teaserIcons a,
.teaserIcons form.default a[type="submit"],
form.default .teaserIcons a[type="submit"] {
    padding: 2rem;
    background: #c3282e;
    text-align: center;
    color: #fff;
    height: 225px;
    display: block;
}
.teaserIcons a.btn:after,
.teaserIcons #header .claim a:after,
#header .claim .teaserIcons a:after,
.teaserIcons form.default a[type="submit"]:after,
form.default .teaserIcons a[type="submit"]:after {
    display: none;
}
.teaserIcons a.btn:hover,
.teaserIcons #header .claim a:hover,
#header .claim .teaserIcons a:hover,
.teaserIcons form.default a:hover[type="submit"],
form.default .teaserIcons a:hover[type="submit"] {
    background-color: #484848;
    color: #fff;
}
.teaserIcons a.btn svg,
.teaserIcons #header .claim a svg,
#header .claim .teaserIcons a svg,
.teaserIcons form.default a[type="submit"] svg,
form.default .teaserIcons a[type="submit"] svg {
    width: 80px;
    height: 80px;
    fill: #fff;
    stroke-width: 1;
}
.indexBox {
    background: #f4f4f4;
}
body:not(.index) .indexBox {
    padding: 2rem;
}
.indexBox .btn,
.indexBox #header .claim a,
#header .claim .indexBox a,
.indexBox form.default button,
form.default .indexBox button,
.indexBox form.default [type="submit"],
form.default .indexBox [type="submit"] {
    display: block;
    margin-bottom: 1rem;
    padding: 1rem 1rem;
    border-radius: inherit;
}
.indexBox .btn:after,
.indexBox #header .claim a:after,
#header .claim .indexBox a:after,
.indexBox form.default button:after,
form.default .indexBox button:after,
.indexBox form.default [type="submit"]:after,
form.default .indexBox [type="submit"]:after {
    display: none;
}
.bigBottom {
    margin-bottom: 2rem;
}
@media (min-width: 47.5em) {
    .bigBottom {
        margin-bottom: 5rem;
    }
}
.bigTop {
    margin-top: 2rem;
}
@media (min-width: 47.5em) {
    .bigTop {
        margin-top: 5rem;
    }
}
.marginBottom {
    margin-bottom: 1.5rem;
}
.marginTop {
    margin-top: 1.5rem;
}
#header {
    position: relative;
    width: 100%;
    background-image: url("../images/layout/bgHeader.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 400px;
    padding: 10rem 0;
}
@media (max-width: 47.4375em) {
    #header {
        background-image: url("../images/layout/medium-bgHeader.jpg");
    }
}
@media (min-width: 75em) {
    #header {
        padding: 21rem 0 10rem;
    }
}
#header .branding {
    display: inline-block;
}
#header .branding img {
    width: 220px;
    margin-bottom: 1.625rem;
}
@media (min-width: 75em) {
    #header .branding {
        display: none;
    }
}
#header .claim .headline {
    display: block;
    font-weight: 700;
    color: #fff;
    font-size: 30px;
    line-height: 38px;
    margin-bottom: 2rem;
}
#header .claim .headline .subline {
    display: block;
}
#header .claim .phone::after,
#header .claim .email::after {
    display: none;
}
#header .claim .phone::before,
#header .claim .email::before {
    display: inline-block;
    font-family: icomoon;
    margin-right: 0.5rem;
}
#header .claim span.phone {
    border: 1px solid #fff;
    border-radius: 50px;
    padding: 1rem 2.5rem;
    color: #fff;
}
#header .claim .phone {
    margin-right: 1rem;
}
#header .claim .phone::before {
    content: "";
}
#header .claim .email {
    margin-top: 1.5rem;
}
#header .claim .email::before {
    content: "";
}
@media (min-width: 40em) {
    #header .claim .headline {
        font-size: 45px;
        line-height: 52px;
    }
    #header .claim .email {
        margin-top: 0;
    }
}
body:not(.index) #header {
    margin-bottom: 5rem;
    padding: 8rem 0 5rem;
}
@media (min-width: 75em) {
    body:not(.index) #header {
        padding: 15rem 0 3rem;
    }
}
body:not(.index) #header .claim .headline {
    display: none;
    margin-bottom: 0;
}
@media (min-width: 75em) {
    body:not(.index) #header .claim .headline {
        display: block;
        font-size: 35px;
        line-height: 42px;
    }
}
body:not(.index) #header .claim .phone,
body:not(.index) #header .claim .email {
    display: none;
}
main {
    display: block;
}
main img {
    margin-bottom: 2.125rem;
}
main .btn,
main #header .claim a,
#header .claim main a,
main form.default button,
form.default main button,
main form.default [type="submit"],
form.default main [type="submit"] {
    display: inline-block;
}
main .flex-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
@media (min-width: 62em) {
    main .text-right {
        padding-left: 1rem;
    }
}
@media (min-width: 75em) {
    main .text-right {
        padding-left: 3rem;
    }
}
@media (min-width: 62em) {
    main .text-left {
        padding-right: 1rem;
    }
}
@media (min-width: 75em) {
    main .text-left {
        padding-right: 3rem;
    }
}
main .container-margin {
    margin-top: 5rem;
    margin-bottom: 5rem;
}
@media (min-width: 75em) {
    main .container-margin {
        margin-top: 8rem;
        margin-bottom: 8rem;
    }
}
main .teaser {
    margin-bottom: 5rem;
}
body.leistungen main .teaser.sub {
    display: none;
}
main .teaser a {
    color: transparent;
    background-color: transparent;
}
main .teaser a:hover .btn,
main .teaser a:hover #header .claim a,
#header .claim main .teaser a:hover a,
main .teaser a:hover form.default button,
form.default main .teaser a:hover button,
main .teaser a:hover form.default [type="submit"],
form.default main .teaser a:hover [type="submit"] {
    background: #6e6e6e;
}
body:not(.index) main .teaser {
    margin-bottom: 0;
    margin-top: 4rem;
}
body:not(.index) main .teaser .inner {
    top: 0;
}
main .teaser .container {
    position: relative;
    min-height: 270px;
    width: auto;
    margin: 1.3rem 0;
}
@media (min-width: 85.25em) {
    main .teaser .container {
        margin: 0;
    }
}
main .teaser .container .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #f3f3f3;
    text-align: center;
    padding: 6rem 2rem;
    position: absolute;
    top: -20%;
    height: 100%;
    width: 100%;
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
}
main .teaser .container .inner::before {
    display: block;
    font-family: icomoon;
    color: #484848;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    font-size: 200px;
    opacity: 0.15;
}
main .teaser .container .inner.akustik::before {
    content: "";
}
main .teaser .container .inner.trockenbau::before {
    content: "";
}
main .teaser .container .inner.wand::before {
    content: "";
}
main .teaser .container .inner.dach::before {
    content: "";
}
main .teaser .container .inner p {
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;
    color: #484848;
}
main .teaser .container .inner .btn,
main .teaser .container .inner #header .claim a,
#header .claim main .teaser .container .inner a,
main .teaser .container .inner form.default button,
form.default main .teaser .container .inner button,
main .teaser .container .inner form.default [type="submit"],
form.default main .teaser .container .inner [type="submit"] {
    position: absolute;
    bottom: 20%;
    transform: translateY(20%);
}
main .referenzen-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #f3f3f3;
    padding: 2rem;
    margin-bottom: 2rem;
}
@media (min-width: 62em) {
    main .referenzen-container {
        flex-direction: row;
        justify-content: space-between;
    }
}
@media (min-width: 62em) {
    main .referenzen-container h2 {
        margin-bottom: 0;
    }
}
#privacy-policy a {
    display: inline-block;
    word-break: break-all;
}
#footer {
    margin-top: 3rem;
    padding: 1rem 0;
}
#footer .yellow-page {
    background-color: #f7f7f7;
    padding: 5rem 0;
}
#footer .yellow-page .col {
    display: flex;
    flex-direction: column;
}
@media (min-width: 47.5em) {
    #footer .yellow-page .col {
        display: flex;
        grid-template-columns: auto;
        grid-template-rows: auto;
        align-items: center;
        flex-direction: row;
        justify-content: space-evenly;
    }
}
#footer .yellow-page h3 {
    font-size: 24px;
    margin: 1rem;
}
@media (min-width: 47.5em) {
    #footer .yellow-page h3 {
        font-size: 25px;
    }
}
@media (min-width: 85.25em) {
    #footer .yellow-page h3 {
        font-size: 39px;
    }
}
#footer .yellow-page a {
    padding: 2rem 1rem;
    margin: 1rem;
    background-color: #fff;
    display: flex;
    align-items: center;
}
@media (min-width: 47.5em) {
    #footer .yellow-page a {
        height: 100%;
        padding: 1rem;
    }
}
@media (min-width: 62em) {
    #footer .yellow-page a {
        padding: 2rem;
    }
}
#footer .yellow-page a img.nicelocal {
    height: 40px;
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%;
}
#footer .yellow-page a img.findeoffen {
    height: 180px;
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%;
}
@media (min-width: 26.25em) {
    #footer .yellow-page a img.findeoffen {
        height: 150px;
    }
}
#footer .yellow-page a img.gelbeseiten {
    height: 80px;
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%;
}
#footer .form-container {
    content: "";
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 4rem 0;
}
body.kontakt #footer .form-container {
    display: none;
}
#footer .form-container.lazy-loaded {
    background-image: url("../images/layout/bgForm.jpg");
}
@media (max-width: 47.4375em) {
    #footer .form-container.lazy-loaded {
        background-image: url("../images/layout/medium-bgForm.jpg");
    }
}
@media (min-width: 47.5em) {
    #footer .form-container {
        padding: 4rem 2rem;
    }
}
@media (min-width: 62em) {
    #footer .form-container {
        padding: 6rem 2rem;
    }
}
@media (min-width: 95em) {
    #footer .form-container {
        padding: 8rem 15rem;
    }
}
#footer .form-container form input,
#footer .form-container form select {
    margin-bottom: 1.35rem;
}
#footer .form-container form textarea {
    min-height: 8.4375rem;
}
#footer .form-container form div[data-field-error] {
    margin-bottom: 1.0625rem;
}
#footer .form-container form label:not(.label-visible) {
    display: none;
}
body:not(.index) #footer .form-container {
    margin-top: 3rem;
}
#footer .grid {
    margin-top: 4rem;
    margin-bottom: 4rem;
    text-align: center;
}
#footer .grid .branding {
    margin-bottom: 2rem;
    text-align: center;
}
#footer .grid .branding img {
    width: 200px;
    margin-bottom: 2rem;
}
#footer .grid .contact {
    margin-bottom: 2rem;
}
#footer .grid .navi-grid-container {
    grid-column: 1/4;
}
@media (min-width: 40em) {
    #footer .grid {
        display: grid;
        grid-template-columns: auto;
        grid-template-rows: auto;
        align-items: center;
        justify-content: space-between;
    }
    #footer .grid .branding {
        grid-column: 1/4;
    }
    #footer .grid .contact,
    #footer .grid .opening {
        text-align: start;
    }
    #footer .grid .contact {
        grid-column: 1/3;
        margin-bottom: 0;
    }
    #footer .grid .opening {
        padding-left: 1rem;
    }
}
@media (min-width: 47.5em) {
    #footer .grid .contact,
    #footer .grid .opening {
        padding: 0 2rem;
        grid-column: auto;
    }
}
@media (min-width: 62em) {
    #footer .grid {
        grid-template-columns: auto auto;
        padding-left: 5rem;
        padding-right: 5rem;
    }
    #footer .grid .branding {
        grid-column: auto;
    }
    #footer .grid .contact,
    #footer .grid .opening {
        padding-left: 0;
        grid-column: auto;
    }
}
@media (min-width: 75em) {
    #footer .grid {
        grid-template-columns: auto auto auto auto;
        padding-left: 2.5rem;
        padding-right: 2.5rem;
    }
    #footer .grid .branding {
        margin-bottom: 0;
        text-align: start;
    }
    #footer .grid .branding img {
        width: 250px;
    }
    #footer .grid .navi-grid-container {
        grid-column: auto;
    }
}
.bewertungMargin {
    margin-bottom: 2rem;
}
.bewertungsBox {
    border: 1px solid #bbb;
    padding: 34px;
    height: 100%;
}
.bewertungsBox .dateBox p {
    margin-bottom: 0;
}
.bewertungsBox .bewertungsKopf {
    display: block;
    justify-content: space-between;
    color: #fff;
    font-weight: bold;
    margin-bottom: 2rem;
}
@media (min-width: 47.5em) {
    .bewertungsBox .bewertungsKopf {
        display: flex;
        align-items: center;
    }
}
.bewertungsBox .bewertungsKopf .nameBox {
    display: flex;
    align-items: center;
}
.bewertungsBox .bewertungsKopf .nameBox p {
    margin-bottom: 0;
    color: #484848;
}
.bewertungsBox .bewertungsKopf .nameBox .anfangsBuchstabe {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    margin-right: 12px;
    border-radius: 50%;
    background: #d56a6a;
}
.bewertungsBox .bewertungsKopf .nameBox .anfangsBuchstabe.third {
    background-color: #0288d1;
}
.bewertungsBox .bewertungsKopf .nameBox .anfangsBuchstabe.fourth {
    background-color: #78909c;
}
.bewertungsBox .bewertungsSterne {
    padding: 0.5rem 0;
}
.bewertungsBox .bewertungsSterne svg {
    fill: #f3d779;
}
.bewertungsBox .bewertungsSterne i {
    color: #f3d779;
}
body.cms-liveeditor-is-opened .teaser {
    display: none !important;
}
form.default {
    overflow: hidden;
    width: 100%;
}
form.default.disabled input,
form.default.disabled textarea,
form.default.disabled select,
form.default.disabled button,
form.default.disabled label {
    pointer-events: none;
    opacity: 0.5;
}
form.default.disabled input a,
form.default.disabled textarea a,
form.default.disabled select a,
form.default.disabled button a,
form.default.disabled label a {
    pointer-events: all;
}
form.default ::-webkit-input-placeholder {
    color: #484848;
}
form.default ::-moz-placeholder {
    color: #484848;
}
form.default :-ms-input-placeholder {
    color: #484848 !important;
}
form.default :-moz-placeholder {
    color: #484848;
}
form.default fieldset {
    border: none;
    margin: 0 0 3.5rem 0;
}
form.default legend,
form.default span.legend {
    margin-top: 2rem;
}
form.default label {
    color: inherit;
    display: block;
    padding: 1rem 0 0.6rem;
    position: relative;
    clear: both;
}
form.default label small {
    color: #d85d00;
    display: inline-block;
    line-height: 0.5rem;
}
form.default label[for*="privacy-policy"],
form.default label[for*="datenschutz"],
form.default label[for*="rueckrufbitte-ja"],
form.default label[for*="callback-yes"] {
    float: right;
    width: calc(100% - 2rem);
}
form.default small {
    line-height: 1rem;
    display: inline-block;
    font-size: 0;
}
form.default small:before {
    font-size: 1rem;
    padding-left: 0.375rem;
}
body.lang-en form.default small:before {
    content: "(Required)";
}
body.lang-de form.default small:before {
    content: "(Pflichtfeld)";
}
form.default.cms-map small {
    font-size: 0.75rem;
}
form.default.cms-map small:before {
    display: none;
}
form.default [type="text"],
form.default [type="tel"],
form.default [type="email"],
form.default [type="file"],
form.default input,
form.default textarea,
form.default select {
    background: #fff;
    border: 1px solid #bbb;
    color: #484848;
    display: block;
    font-family: Roboto, sans-serif;
    font-size: 1rem;
    line-height: 1.625rem;
    margin: 0 0 0.5rem 0;
    padding: 0.8rem;
    position: relative;
    resize: none;
    width: 100%;
    border-radius: 0;
}
form.default [type="text"]:focus,
form.default [type="tel"]:focus,
form.default [type="email"]:focus,
form.default [type="file"]:focus,
form.default input:focus,
form.default textarea:focus,
form.default select:focus {
    background: #fafafa;
    outline: none;
}
form.default textarea {
    min-height: 7.5rem;
    padding-top: 0.9rem;
}
form.default textarea[name="Nachricht"] {
    min-height: 18.5rem;
}
form.default textarea[name="Text"] {
    min-height: 18.5rem;
}
form.default [type="checkbox"] {
    display: inline-block;
    margin: 0 1rem 0 0;
    padding: 0;
    width: 1rem;
    height: 1rem;
    flex-shrink: 0;
}
form.default [type="checkbox"][id*="privacy-policy"],
form.default [type="checkbox"][id*="datenschutz"],
form.default [type="checkbox"][id*="rueckrufbitte-ja"],
form.default [type="checkbox"][id*="callback-yes"] {
    margin-top: calc((1.625rem - 1rem) / 2 + 1rem);
}
body.iexplore form.default [type="checkbox"] {
    border: none;
}
body.iexplore form.default [type="checkbox"]:focus {
    background: none;
}
form.default [type="radio"] {
    margin: 0 0.9375rem 0 0;
    width: 0.9375rem;
    min-height: auto;
    flex-shrink: 0;
}
form.default button,
form.default [type="submit"] {
    margin-top: 1rem;
    margin-bottom: 1rem;
    width: 100%;
}
form.default div[data-field-error] {
    color: red;
}
div.error {
    background: red;
    color: #fff;
    padding: 1rem;
}
.contact-text {
    border-top: 1px solid #bbb;
    border-bottom: 1px solid #bbb;
    padding: 1.875rem 0;
    margin: 1.875rem 0 2.5rem 0;
}
.contact-text p {
    margin-bottom: 0;
}
.specialfield {
    display: none !important;
    visibility: hidden !important;
}
#newsletter-info {
    background: #d85d00;
    color: #fff;
    font-weight: bold;
    margin-bottom: 26px;
    padding: 17px;
}
#newsletter-info *:last-of-type {
    margin-bottom: 0;
}
img[name="vimg"] + input[name="imgverify"] {
    float: right;
}

/*# sourceMappingURL=styles.css.map */
.cms-gallery-image figure a img{
    aspect-ratio: 16 / 9;
    object-fit: cover;
}
.gotcha_field {
  position: absolute !important;
  left: -9999px !important;
  top: -9999px !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  aria-hidden: true;
}

