.light-grey-bg {
    background-color: #ededed
}

.dark-grey-bg {
    background-color: #191919;
    color: #b3b3b3
}

.peach-bg {
    background-color: #cfb49c;
    color: #fff
}

.black-transparent-60 {
    background-color: rgba(0, 0, 0, .6);
    color: #fff
}

.text-color-txt {
    color: #333
}

.white-txt {
    color: #fff !important
}

.black-txt {
    color: #000
}

.light-grey-txt {
    color: #b3b3b3
}

.peach {
    color: #cfb49c
}

body,
html {
    overflow-x: hidden;
    width: 100%
}

hr {
    border-color: #cfb49c
}

.p-0 {
    padding: 0 !important
}

.pt-120 {
    padding-top: 120px
}

@media (max-width:991px) {
    .pt-120 {
        padding-top: 60px
    }
}

.pb-120 {
    padding-bottom: 120px
}

@media (max-width:991px) {
    .pb-120 {
        padding-bottom: 60px
    }
}

.ptb-120 {
    padding-bottom: 120px;
    padding-top: 120px
}

@media (max-width:991px) {
    .ptb-120 {
        padding-bottom: 60px;
        padding-top: 60px
    }
}

.pt-90 {
    padding-top: 90px
}

@media (max-width:991px) {
    .pt-90 {
        padding-top: 45px
    }
}

.pb-90 {
    padding-bottom: 90px
}

@media (max-width:991px) {
    .pb-90 {
        padding-bottom: 45px
    }
}

.ptb-90 {
    padding-bottom: 90px;
    padding-top: 90px
}

@media (max-width:991px) {
    .ptb-90 {
        padding-bottom: 45px;
        padding-top: 45px
    }
}

.pt-60 {
    padding-top: 60px
}

@media (max-width:991px) {
    .pt-60 {
        padding-top: 30px
    }
}

.pb-60 {
    padding-bottom: 60px
}

@media (max-width:991px) {
    .pb-60 {
        padding-bottom: 30px
    }
}

.ptb-60 {
    padding-bottom: 60px;
    padding-top: 60px
}

@media (max-width:991px) {
    .ptb-60 {
        padding-bottom: 30px;
        padding-top: 30px
    }
}

.pt-50 {
    padding-top: 50px
}

@media (max-width:991px) {
    .pt-50 {
        padding-top: 30px
    }
}

.pb-50 {
    padding-bottom: 50px
}

@media (max-width:991px) {
    .pb-50 {
        padding-bottom: 30px
    }
}

.ptb-50 {
    padding-bottom: 50px;
    padding-top: 50px
}

@media (max-width:991px) {
    .ptb-50 {
        padding-bottom: 25px;
        padding-top: 25px
    }
}

.p-40 {
    padding: 40px
}

@media (max-width:991px) {
    .p-40 {
        padding: 25px
    }
}

.pt-40 {
    padding-top: 40px
}

@media (max-width:991px) {
    .pt-40 {
        padding-top: 25px
    }
}

.pb-40 {
    padding-bottom: 40px
}

@media (max-width:991px) {
    .pb-40 {
        padding-bottom: 25px
    }
}

.pl-40 {
    padding-left: 40px
}

@media (max-width:991px) {
    .pl-40 {
        padding-left: 25px
    }
}

.pr-40 {
    padding-right: 40px
}

@media (max-width:991px) {
    .pr-40 {
        padding-right: 25px
    }
}

.ptb-40 {
    padding-bottom: 40px;
    padding-top: 40px
}

@media (max-width:991px) {
    .ptb-40 {
        padding-bottom: 25px;
        padding-top: 25px
    }
}

.p-30 {
    padding: 30px
}

@media (max-width:991px) {
    .p-30 {
        padding: 20px
    }
}

.pt-30 {
    padding-top: 30px
}

@media (max-width:991px) {
    .pt-30 {
        padding-top: 20px
    }
}

.pb-30 {
    padding-bottom: 30px
}

@media (max-width:991px) {
    .pb-30 {
        padding-bottom: 20px
    }
}

.pl-30 {
    padding-left: 30px
}

@media (max-width:991px) {
    .pl-30 {
        padding-left: 20px
    }
}

.pr-30 {
    padding-right: 30px
}

@media (max-width:991px) {
    .pr-30 {
        padding-right: 20px
    }
}

.ptb-30 {
    padding-bottom: 30px;
    padding-top: 30px
}

@media (max-width:991px) {
    .ptb-30 {
        padding-bottom: 20px;
        padding-top: 20px
    }
}

.p-20 {
    padding: 20px
}

.pt-20 {
    padding-top: 20px
}

.pb-20 {
    padding-bottom: 20px
}

.pl-20 {
    padding-left: 20px
}

.pr-20 {
    padding-right: 20px
}

.ptb-20 {
    padding-bottom: 20px;
    padding-top: 20px
}

.p-15 {
    padding: 15px
}

.pt-15 {
    padding-top: 15px
}

.pb-15 {
    padding-bottom: 15px
}

.pl-15 {
    padding-left: 15px
}

.pr-15 {
    padding-right: 15px
}

.ptb-15 {
    padding-bottom: 15px;
    padding-top: 15px
}

.p-10 {
    padding: 10px
}

.pt-10 {
    padding-top: 10px
}

.pb-10 {
    padding-bottom: 10px
}

.pl-10 {
    padding-left: 10px
}

.pr-10 {
    padding-right: 10px
}

.ptb-10 {
    padding-bottom: 10px;
    padding-top: 10px
}

.p-5 {
    padding: 5px
}

.pt-5 {
    padding-top: 5px
}

.pb-5 {
    padding-bottom: 5px
}

.pl-5 {
    padding-left: 5px
}

.pr-5 {
    padding-right: 5px
}

.ptb-5 {
    padding-bottom: 5px;
    padding-top: 5px
}

.p-0 {
    padding: 0
}

.pt-0 {
    padding-top: 0
}

.pb-0 {
    padding-bottom: 0
}

.pl-0 {
    padding-left: 0
}

.pr-0 {
    padding-right: 0
}

.ptb-0 {
    padding-bottom: 0;
    padding-top: 0
}

.mt-120 {
    margin-top: 120px
}

@media (max-width:991px) {
    .mt-120 {
        margin-top: 60px
    }
}

.mb-120 {
    margin-bottom: 120px
}

@media (max-width:991px) {
    .mb-120 {
        margin-bottom: 60px
    }
}

.mtb-120 {
    margin-bottom: 120px;
    margin-top: 120px
}

@media (max-width:991px) {
    .mtb-120 {
        margin-bottom: 60px;
        margin-top: 60px
    }
}

.mt-90 {
    margin-top: 90px
}

@media (max-width:991px) {
    .mt-90 {
        margin-top: 45px
    }
}

.mb-90 {
    margin-bottom: 90px
}

@media (max-width:991px) {
    .mb-90 {
        margin-bottom: 45px
    }
}

.mtb-90 {
    margin-bottom: 90px;
    margin-top: 90px
}

@media (max-width:991px) {
    .mtb-90 {
        margin-bottom: 45px;
        margin-top: 45px
    }
}

.mt-60 {
    margin-top: 60px
}

@media (max-width:991px) {
    .mt-60 {
        margin-top: 30px
    }
}

.mb-60 {
    margin-bottom: 60px
}

@media (max-width:991px) {
    .mb-60 {
        margin-bottom: 30px
    }
}

.mtb-60 {
    margin-bottom: 60px;
    margin-top: 60px
}

@media (max-width:991px) {
    .mtb-60 {
        margin-bottom: 30px;
        margin-top: 30px
    }
}

.m-30 {
    margin: 30px
}

@media (max-width:991px) {
    .m-30 {
        margin: 20px
    }
}

.mt-40 {
    margin-top: 40px
}

@media (max-width:991px) {
    .mt-40 {
        margin-top: 25px
    }
}

.mb-40 {
    margin-bottom: 40px
}

@media (max-width:991px) {
    .mb-40 {
        margin-bottom: 25px
    }
}

.ml-40 {
    margin-left: 40px
}

@media (max-width:991px) {
    .ml-40 {
        margin-left: 25px
    }
}

.mr-40 {
    margin-right: 40px
}

@media (max-width:991px) {
    .mr-40 {
        margin-right: 25px
    }
}

.mtb-40 {
    margin-bottom: 40px;
    margin-top: 40px
}

@media (max-width:991px) {
    .mtb-40 {
        margin-bottom: 25px;
        margin-top: 25px
    }
}

.mt-30 {
    margin-top: 30px
}

@media (max-width:991px) {
    .mt-30 {
        margin-top: 20px
    }
}

.mb-30 {
    margin-bottom: 30px
}

@media (max-width:991px) {
    .mb-30 {
        margin-bottom: 20px
    }
}

.ml-30 {
    margin-left: 30px
}

@media (max-width:991px) {
    .ml-30 {
        margin-left: 20px
    }
}

.mr-30 {
    margin-right: 30px
}

@media (max-width:991px) {
    .mr-30 {
        margin-right: 20px
    }
}

.mtb-30 {
    margin-bottom: 30px;
    margin-top: 30px
}

@media (max-width:991px) {
    .mtb-30 {
        margin-bottom: 20px;
        margin-top: 20px
    }
}

.m-20 {
    margin: 20px
}

.mt-20 {
    margin-top: 20px
}

.mb-20 {
    margin-bottom: 20px
}

.ml-20 {
    margin-left: 20px
}

.mr-20 {
    margin-right: 20px
}

.mtb-20 {
    margin-bottom: 20px;
    margin-top: 20px
}

.m-15,
.mt-15 {
    margin-top: 15px
}

.mb-15 {
    margin-bottom: 15px
}

.ml-15 {
    margin-left: 15px
}

.mr-15 {
    margin-right: 15px
}

.mtb-15 {
    margin-bottom: 15px;
    margin-top: 15px
}

.m-10 {
    margin: 10px
}

.mt-10 {
    margin-top: 10px
}

.mb-10 {
    margin-bottom: 10px
}

.ml-10 {
    margin-left: 10px
}

.mr-10 {
    margin-right: 10px
}

.mtb-10 {
    margin-bottom: 10px;
    margin-top: 10px
}

.m-5 {
    margin: 5px
}

.mt-5 {
    margin-top: 5px
}

.mb-5 {
    margin-bottom: 5px
}

.ml-5 {
    margin-left: 5px
}

.mr-5 {
    margin-right: 5px
}

.mtb-5 {
    margin-bottom: 5px;
    margin-top: 5px
}

.m-0 {
    margin: 0
}

.mt-0 {
    margin-top: 0
}

.mb-0 {
    margin-bottom: 0
}

.ml-0 {
    margin-left: 0
}

.mr-0 {
    margin-right: 0
}

.mtb-0 {
    margin-bottom: 0;
    margin-top: 0
}

.container {
    padding-right: 30px;
    padding-left: 30px
}

.row {
    margin-left: -30px;
    margin-right: -30px
}

.col,
.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col-auto,
.col-lg,
.col-lg-1,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-auto,
.col-md,
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md-auto,
.col-sm,
.col-sm-1,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm-auto,
.col-xl,
.col-xl-1,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl-auto {
    padding-left: 30px;
    padding-right: 30px
}

@font-face {
    font-family: Work Sans;
    src: url(../fonts/subset-WorkSans-Light.eot);
    src: url(../fonts/subset-WorkSans-Light.eot?#iefix) format("embedded-opentype"), url(../fonts/subset-WorkSans-Light.woff2) format("woff2"), url(../fonts/subset-WorkSans-Light.woff) format("woff"), url(../fonts/subset-WorkSans-Light.ttf) format("truetype"), url(../fonts/subset-WorkSans-Light.svg#WorkSans-Light) format("svg");
    font-weight: 300;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Work Sans;
    src: url(../fonts/subset-WorkSans-Bold.eot);
    src: url(../fonts/subset-WorkSans-Bold.eot?#iefix) format("embedded-opentype"), url(../fonts/subset-WorkSans-Bold.woff2) format("woff2"), url(../fonts/subset-WorkSans-Bold.woff) format("woff"), url(../fonts/subset-WorkSans-Bold.ttf) format("truetype"), url(../fonts/subset-WorkSans-Bold.svg#WorkSans-Bold) format("svg");
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Work Sans;
    src: url(../fonts/subset-WorkSans-SemiBold.eot);
    src: url(../fonts/subset-WorkSans-SemiBold.eot?#iefix) format("embedded-opentype"), url(../fonts/subset-WorkSans-SemiBold.woff2) format("woff2"), url(../fonts/subset-WorkSans-SemiBold.woff) format("woff"), url(../fonts/subset-WorkSans-SemiBold.ttf) format("truetype"), url(../fonts/subset-WorkSans-SemiBold.svg#WorkSans-SemiBold) format("svg");
    font-weight: 600;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Work Sans;
    src: url(../fonts/subset-WorkSans-Regular.eot);
    src: url(../fonts/subset-WorkSans-Regular.eot?#iefix) format("embedded-opentype"), url(../fonts/subset-WorkSans-Regular.woff2) format("woff2"), url(../fonts/subset-WorkSans-Regular.woff) format("woff"), url(../fonts/subset-WorkSans-Regular.ttf) format("truetype"), url(../fonts/subset-WorkSans-Regular.svg#WorkSans-Regular) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Work Sans;
    src: url(../fonts/subset-WorkSans-Medium.eot);
    src: url(../fonts/subset-WorkSans-Medium.eot?#iefix) format("embedded-opentype"), url(../fonts/subset-WorkSans-Medium.woff2) format("woff2"), url(../fonts/subset-WorkSans-Medium.woff) format("woff"), url(../fonts/subset-WorkSans-Medium.ttf) format("truetype"), url(../fonts/subset-WorkSans-Medium.svg#WorkSans-Medium) format("svg");
    font-weight: 500;
    font-style: normal;
    font-display: swap
}

body {
    font-family: Work Sans;
    font-size: 15px;
    color: #333
}

body,
p.fs-16 {
    line-height: 18px
}

p.fs-16 {
    font-size: 16px
}

strong {
    font-weight: 600
}


.btn {
    height: auto;
    font-weight: 600;
    border-radius: 0;
    transition: all .35s ease-in-out;
    white-space: normal
}

.btn img {
    width: 18px;
    height: 18px
}

.btn.btn-default {
    background-color: #cfb49c;
    color: #fff
}

.btn.btn-default:active,
.btn.btn-default:focus,
.btn.btn-default:hover {
    opacity: .4
}

.btn.btn-outline {
    background-color: transparent;
    color: #fff;
    border-color: #fff
}

.btn.btn-outline:active,
.btn.btn-outline:focus,
.btn.btn-outline:hover {
    opacity: .4
}

::-webkit-input-placeholder {
    color: grey
}

::-moz-placeholder {
    color: grey
}

:-ms-input-placeholder {
    color: grey
}

:-moz-placeholder {
    color: grey
}

.form-control {
    height: 38px;
    border-radius: 0;
    border-color: #b3b3b3;
    margin-bottom: 10px;
    background-color: transparent
}

.form-control:active,
.form-control:focus,
.form-control:hover {
    box-shadow: none;
    outline: none;
    border-color: #cfb49c
}

label {
    font-weight: 400;
    color: #333
}

.form-inline .form-control {
    margin-bottom: 0
}

.checkbox {
    padding-left: 20px;
    margin-right: 10px;
    margin-bottom: 10px
}

.checkbox label {
    display: inline-block;
    position: relative;
    padding-left: 15px;
    font-style: normal;
    cursor: pointer;
    margin: 0;
    padding-top: 6px;
    color: #333
}

.checkbox label:before {
    content: "";
    top: 2px;
    border: 1px solid #b3b3b3;
    border-radius: 0;
    background-color: transparent;
    transition: border .15s ease-in-out, color .15s ease-in-out
}

.checkbox label:after,
.checkbox label:before {
    display: inline-block;
    position: absolute;
    width: 25px;
    height: 25px;
    left: 0;
    margin-left: -20px
}

.checkbox label:after {
    top: 0;
    padding-left: 3px;
    padding-top: 0;
    font-size: 11px;
    color: #fff
}

.checkbox input[type=checkbox] {
    opacity: 0;
    display: none
}

.checkbox input[type=checkbox]:focus+label:before {
    outline: none;
    box-shadow: none
}

.checkbox input[type=checkbox]:checked+label:after {
    background-color: #fff;
    content: " ";
    display: block;
    width: 8px;
    height: 15px;
    border: solid #cfb49c;
    border-width: 0 4px 4px 0;
    position: absolute;
    left: 8px;
    top: 6px;
    margin-top: 0;
    transform: rotate(45deg)
}

.checkbox input[type=checkbox]:disabled+label {
    opacity: .65;
    outline: none;
    box-shadow: none
}

.checkbox input[type=checkbox]:disabled+label:before {
    background-color: #eee;
    cursor: not-allowed
}

.checkbox.checkbox-circle label:before {
    border-radius: 50%
}

.checkbox.checkbox-inline {
    margin-top: 0
}

.radio {
    padding-left: 20px;
    margin-right: 10px;
    margin-bottom: 10px
}

.radio label {
    display: inline-block;
    position: relative;
    padding-left: 15px;
    cursor: pointer;
    font-style: normal;
    margin-bottom: 0;
    padding-top: 4px;
    color: #333
}

.radio label:before {
    content: "";
    width: 26px;
    height: 26px;
    left: 0;
    top: 0;
    border: 1px solid #b3b3b3;
    border-radius: 50%;
    background-color: transparent;
    transition: border .15s ease-in-out
}

.radio label:after,
.radio label:before {
    display: inline-block;
    position: absolute;
    margin-left: -20px
}

.radio label:after {
    content: " ";
    width: 16px;
    height: 16px;
    left: 5px;
    top: 5px;
    border-radius: 50%;
    transform: scale(0);
    transition: transform .1s cubic-bezier(.8, -.33, .2, 1.33)
}

.radio input[type=radio] {
    opacity: 0;
    display: none
}

.radio input[type=radio]:focus+label:before {
    outline: none;
    box-shadow: none;
    background-color: #cfb49c
}

.radio input[type=radio]:checked+label:after {
    transform: scale(1);
    background-color: #cfb49c
}

.radio input[type=radio]:disabled+label {
    opacity: .65
}

.radio input[type=radio]:disabled+label:before {
    cursor: not-allowed
}

.radio .radio-inline {
    margin-top: 0
}

.custom-select {
    background: transparent url(../images/angle-bottom.svg) no-repeat right 16px center;
    background-size: 17px;
    padding-right: 35px;
    border-radius: 0;
    height: 38px;
    cursor: pointer;
    border: 1px solid #b3b3b3;
    padding: 6px 32px 6px 12px;
    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 1px;
    text-overflow: "";
    width: 100%;
    margin-bottom: 10px
}

.custom-select:active,
.custom-select:focus,
.custom-select:hover {
    border-color: #cfb49c !important
}

.bordered-list {
    margin: 0;
    padding: 0 0 0 55px
}

.bordered-list li {
    list-style: none
}

.bordered-list li a {
    font-weight: 500;
    text-transform: uppercase;
    color: #fff;
    padding: 30px 0;
    border-bottom: 1px solid #cfb49c;
    display: block
}

.bordered-list li a:active,
.bordered-list li a:focus,
.bordered-list li a:hover {
    text-decoration: none;
    color: #b3b3b3
}

.bordered-list li:last-child a {
    border-bottom: 0
}

.no-bullets {
    padding: 0;
    margin: 0
}

.no-bullets li {
    list-style: none
}

.boxes {
    padding-top: 40px;
    padding-bottom: 40px
}

.boxes .box {
    position: relative;
    margin-bottom: 30px
}

.boxes .box img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.boxes .box .overlay {
    background-color: rgba(0, 0, 0, .6);
    color: #fff;
    padding: 50px 60px 45px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    transition: all .35s ease-in-out;
    height: 119px
}

@media (max-width:991px) {
    .boxes .box .overlay {
        padding: 30px 40px 25px;
        height: 80px
    }
}

.boxes .box h4 {
    opacity: .85;
    position: relative;
    margin-bottom: 0
}

.boxes .box h4:before {
    height: 1px;
    width: 24px;
    right: 0
}

.boxes .box h4:after,
.boxes .box h4:before {
    content: "";
    display: block;
    background-color: #fff;
    opacity: .85;
    position: absolute;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto
}

.boxes .box h4:after {
    width: 1px;
    height: 24px;
    right: 12px;
    transition: all .35s ease-in-out
}

.boxes .box p {
    margin-bottom: 0;
    margin-top: 23px;
    opacity: 0;
    padding-right: 40px;
    transition: all .35s ease-in-out
}

.contact-banner {
    padding-top: 130px;
    padding-bottom: 75px;
    background-color: #ededed;
    position: relative
}

.contact-banner .logo-bg {
    position: absolute;
    bottom: 0;
    height: 100%
}

.lightbox-gallery {
    position: relative;
    margin-bottom: 20px;
    max-height: 600px
}

.lightbox-gallery img {
    width: 100%;
    height: 600px;
    object-fit: cover;
    object-position: center
}

.lightbox-gallery .bg-overlay {
    min-height: 245px;
    width: 50%;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .6);
    padding: 40px 40px 30px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    text-align: right
}

@media (max-width:991px) {
    .lightbox-gallery .bg-overlay {
        width: 100%
    }
}

.lightbox-gallery .bg-overlay h3 {
    opacity: .85;
    color: #fff
}

.lightbox-gallery .bg-overlay p {
    color: #cfb49c
}

.lightbox-gallery .gallery-thumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: flex-end
}

.lightbox-gallery .gallery-thumbs>div {
    width: 90px;
    height: 50px;
    margin-left: 10px;
    margin-bottom: 10px
}

.lightbox-gallery .gallery-thumbs>div img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.lightbox-close {
    position: absolute;
    right: 30px;
    top: 30px;
    transform: rotate(45deg);
    cursor: pointer;
    width: 24px;
    height: 24px
}

.lightbox-close:before {
    height: 24px;
    width: 1px;
    right: 12px
}

.lightbox-close:after,
.lightbox-close:before {
    content: "";
    background-color: #fff;
    display: block;
    position: absolute
}

.lightbox-close:after {
    width: 24px;
    height: 1px;
    right: 0;
    top: 12px
}

.slick-lightbox .slick-next,
.slick-lightbox .slick-prev {
    padding: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100000
}

.showcase {
    position: relative;
    max-height: 600px
}

.showcase img {
    object-position: center;
    width: 100%;
    height: 600px;
    object-fit: cover
}

.showcase .bg-overlay {
    min-height: 170px;
    width: 50%;
    position: absolute;
    bottom: 0;
    background-color: rgba(0, 0, 0, .6);
    padding: 25px 40px 10px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    text-align: right
}

.showcase .bg-overlay.left {
    left: 0
}

@media (max-width:991px) {
    .showcase .bg-overlay.left {
        align-items: flex-start;
        text-align: left
    }
}

.showcase .bg-overlay.right {
    right: 0;
    text-align: left;
    align-items: flex-start
}

@media (max-width:991px) {
    .showcase .bg-overlay {
        width: 100%
    }
}

.showcase .bg-overlay h3 {
    opacity: .85;
    color: #fff;
    max-width: 400px
}

.showcase .bg-overlay h3 a {
    color: #fff
}

.showcase .bg-overlay h3 a:active,
.showcase .bg-overlay h3 a:focus,
.showcase .bg-overlay h3 a:hover {
    color: #cfb49c
}

.showcase .bg-overlay p {
    color: #cfb49c;
    max-width: 400px
}

#map {
    height: 624px;
    width: 100%
}

.heading {
    background-color: #ededed
}

.heading .top {
    height: 250px;
    position: relative;
    z-index: 1
}

.heading .top img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

.heading .top:after {
    content: "";
    background-color: rgba(0, 0, 0, .45);
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    z-index: 2;
    position: absolute;
    margin: auto;
    display: block
}

.heading .bottom {
    height: 250px;
    background-color: #ededed;
    display: flex;
    position: relative
}

.heading .bottom div {
    display: flex
}

.heading .bottom p {
    margin: 0;
    padding: 0
}

.uber-ans-heading {
    overflow: hidden;
    position: relative;
    padding-top: 150px;
    padding-bottom: 80px;
    color: #fff;
    background-color: #cfb49c
}

.uber-ans-heading .bg-image {
    position: absolute;
    z-index: 0;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto
}

.uber-ans-heading .bg-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: relative;
    z-index: -1
}

.uber-ans-heading .bg-image:after {
    content: "";
    background-color: rgba(0, 0, 0, .6);
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    z-index: -1;
    position: absolute;
    margin: auto;
    display: block
}

footer {
    background-color: #191919;
    padding-top: 100px;
    padding-bottom: 180px
}

@media (max-width:991px) {
    footer {
        padding-top: 50px;
        padding-bottom: 30px
    }
}

.footer-columns {
    display: flex;
    align-items: flex-start;
    flex-wrap: nowrap;
    color: #b3b3b3
}

@media (max-width:991px) {
    .footer-columns {
        flex-wrap: wrap
    }
}

.footer-columns>div {
    width: 100%;
    padding-right: 10px;
    margin-bottom: 20px
}

@media (max-width:991px) {
    .footer-columns>div {
        align-self: flex-start;
        margin-bottom: 30px;
        width: 50%;
        flex: 0 0 50%
    }

    .footer-columns>div:first-child {
        width: 100%;
        flex: 0 0 100%;
        order: 1;
        margin-bottom: 50px
    }

    .footer-columns>div:nth-child(2) {
        order: 2
    }

    .footer-columns>div:nth-child(3) {
        order: 3
    }

    .footer-columns>div:nth-child(4) {
        order: 5
    }

    .footer-columns>div:last-child {
        order: 4
    }
}

@media (max-width:575px) {
    .footer-columns>div {
        width: 100%;
        flex: 0 0 100%
    }

    .footer-columns>div:nth-child(4) {
        order: 4
    }

    .footer-columns>div:last-child {
        order: 5
    }
}

.footer-columns .logo {
    width: 124px;
    height: auto;
    max-width: calc(100%-10px)
}

.footer-columns h6 {
    font-weight: 600;
    color: #fff;
    margin-bottom: 24px
}

.footer-columns a {
    display: block;
    color: #b3b3b3
}

.hero {
    height: 700px;
    position: relative;
    display: flex;
    align-items: flex-end
}

@media (max-width:767px) {
    .hero {
        height: 600px
    }
}

@media (max-width:575px) {
    .hero {
        height: 500px
    }
}

.hero .bg-image {
    object-fit: cover;
    object-position: center;
    z-index: -2
}

.hero .bg-image,
.hero:after {
    width: 100%;
    height: 100%;
    position: absolute
}

.hero:after {
    z-index: -1;
    display: block;
    content: "";
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, .45)
}

.hero .peach-bg {
    height: 138px;
    width: 50%;
    position: absolute;
    bottom: 0;
    left: 0
}

@media (max-width:991px) {
    .hero .peach-bg {
        width: 100%
    }
}

.hero .buttons {
    height: 138px;
    display: flex;
    align-items: center
}

@media (max-width:480px) {
    .hero .buttons {
        flex-direction: column;
        justify-content: space-around;
        align-items: flex-start;
        padding: 20px 0
    }
}

.hero .buttons .btn {
    margin-right: 40px
}

.hero p {
    margin-bottom: 50px;
    margin-top: 40px
}

.hero h1 {
    font-size: 100px;
    line-height: 1;
    font-weight: 700
}

@media (max-width:767px) {
    .hero h1 {
        font-size: 80px
    }
}

@media (max-width:575px) {
    .hero h1 {
        font-size: 65px;
        font-size: 50px
    }
}

.uber-ans-banner {
    position: relative;
    padding-top: 145px;
    padding-bottom: 75px;
    background-color: #ededed
}

@media (max-width:991px) {
    .uber-ans-banner {
        padding-top: 75px;
        padding-bottom: 40px;
        padding-bottom: 30px
    }
}

.uber-ans-banner .light-grey-bg {
    height: 100%;
    width: 50%;
    position: absolute;
    top: 0;
    left: 0
}

@media (max-width:991px) {
    .uber-ans-banner .light-grey-bg {
        width: 100%;
        height: 40%
    }
}

@media (max-width:767px) {
    .uber-ans-banner .light-grey-bg {
        height: 45%
    }
}

@media (max-width:480px) {
    .uber-ans-banner .light-grey-bg {
        height: 50%
    }
}

.uber-ans-banner .image-bg {
    height: 100%;
    width: 50%;
    position: absolute;
    bottom: 0;
    right: 0
}

@media (max-width:991px) {
    .uber-ans-banner .image-bg {
        width: 100%;
        height: 60%
    }
}

@media (max-width:767px) {
    .uber-ans-banner .image-bg {
        height: 55%
    }
}

@media (max-width:480px) {
    .uber-ans-banner .image-bg {
        height: 50%
    }
}

.uber-ans-banner .image-bg:before {
    z-index: 0;
    position: absolute;
    display: block;
    content: "";
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .45)
}

.uber-ans-banner .image-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center
}

@media (max-width:991px) {
    .uber-ans-banner .bordered-list {
        padding-left: 0;
        margin-top: 0
    }
}

@media (max-width:767px) {
    .uber-ans-banner .bordered-list {
        margin-top: 75px
    }
}

@media (max-width:991px) {
    .uber-ans-banner .uber-ans-text {
        padding-bottom: 95px
    }
}

@media (max-width:767px) {
    .uber-ans-banner .uber-ans-text {
        padding-bottom: 25px
    }
}

.unsere-banner {
    position: relative;
    padding-top: 145px;
    padding-bottom: 75px;
    background-color: #ededed
}

@media (max-width:991px) {
    .unsere-banner {
        padding-top: 75px;
        padding-bottom: 40px;
        padding-bottom: 30px
    }
}

.unsere-banner .light-grey-bg {
    height: 100%;
    width: 50%;
    position: absolute;
    top: 0;
    left: 0
}

@media (max-width:991px) {
    .unsere-banner .light-grey-bg {
        width: 100%;
        height: 400px
    }
}

@media (max-width:767px) {
    .unsere-banner .light-grey-bg {
        height: 300px
    }
}

@media (max-width:480px) {
    .unsere-banner .light-grey-bg {
        height: 300px
    }
}

.unsere-banner .image-bg {
    height: 100%;
    width: 50%;
    position: absolute;
    bottom: 0;
    right: 0
}

@media (max-width:991px) {
    .unsere-banner .image-bg {
        width: 100%;
        height: 400px
    }
}

@media (max-width:767px) {
    .unsere-banner .image-bg {
        height: 300px
    }
}

@media (max-width:480px) {
    .unsere-banner .image-bg {
        height: 300px
    }
}

.unsere-banner .image-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center
}

@media (max-width:991px) {
    .unsere-banner .unsen-ans-text {
        margin-bottom: 400px;
        padding-bottom: 50px
    }
}

@media (max-width:767px) {
    .unsere-banner .unsen-ans-text {
        margin-bottom: 300px
    }
}

.unsere-banner-images {
    position: relative;
    display: flex
}

@media (max-width:991px) {
    .unsere-banner-images {
        flex-direction: row;
        display: block
    }
}

.unsere-banner-images .image-bg {
    width: 50%;
    height: 520px
}

@media (max-width:991px) {
    .unsere-banner-images .image-bg {
        width: 100%;
        flex: 0 0 100%;
        height: 400px
    }
}

@media (max-width:767px) {
    .unsere-banner-images .image-bg {
        height: 300px
    }
}

.unsere-banner-images .image-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center
}

.unsere-fahigkeiten-banner {
    position: relative;
    padding-top: 25px;
    padding-bottom: 25px;
    background-color: #ededed
}

.unsere-fahigkeiten-banner .peach-bg {
    height: 100%;
    width: 50%;
    position: absolute;
    top: 0;
    left: 0;
    color: #fff
}

@media (max-width:991px) {
    .unsere-fahigkeiten-banner .peach-bg {
        width: 100vw;
        height: 240px
    }
}

@media (max-width:767px) {
    .unsere-fahigkeiten-banner .peach-bg {
        height: 45%
    }
}

@media (max-width:480px) {
    .unsere-fahigkeiten-banner .peach-bg {
        height: 50%
    }
}

.unsere-fahigkeiten-banner .image-bg {
    height: 100%;
    width: 50%;
    position: absolute;
    bottom: 0;
    right: 0
}

@media (max-width:991px) {
    .unsere-fahigkeiten-banner .image-bg {
        width: 100vw;
        height: calc(100% - 240px)
    }
}

@media (max-width:767px) {
    .unsere-fahigkeiten-banner .image-bg {
        height: 65%
    }
}

.unsere-fahigkeiten-banner .image-bg:before {
    z-index: 0;
    position: absolute;
    display: block;
    content: "";
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .45)
}

.unsere-fahigkeiten-banner .image-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center
}

.unsere-fahigkeiten-banner .bordered-list {
    padding-left: 10px
}

@media (max-width:991px) {
    .unsere-fahigkeiten-banner .bordered-list {
        padding-left: 0;
        margin-top: 0
    }
}

@media (max-width:767px) {
    .unsere-fahigkeiten-banner .bordered-list {
        margin-top: 75px
    }
}

.unsere-fahigkeiten-banner .unsere-fahigkeiten-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    color: #fff
}

.unsere-fahigkeiten-banner .unsere-fahigkeiten-text p {
    max-width: 350px
}

@media (max-width:991px) {
    .unsere-fahigkeiten-banner .unsere-fahigkeiten-text {
        padding-top: 30px;
        padding-bottom: 65px
    }
}

@media (max-width:767px) {
    .unsere-fahigkeiten-banner .unsere-fahigkeiten-text {
        padding-bottom: 25px
    }
}

.mixin {
    background-color: red;
    background-image: -o-linear-gradient(top, red 0, blue 100%) !important;
    background: linear-gradient(90deg, red, blue);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$from", endColorstr="$to", GradientType=1)
}

@media (max-width:767px) {
    .mixin {
        background-color: green
    }
}

@media (min-width:576px) and (max-width:991px) {
    .mixin {
        background-color: red
    }
}

@media (min-width:768px) {
    .mixin {
        background-color: green
    }
}