/* --- MAIN STYLES --- */

#general-content {
    padding-top: 72px;
    min-height: 100%;
}

.background {
    background: #ffffff 50% 50% no-repeat;
    background-size: cover;
}

.media-container {
    height: 100%;
    width: 100%;
    position: relative;
    overflow: hidden;
    background: #000000;
}

    .media-container img {
        height: auto;
        width: auto;
        min-height: 100%;
        min-width: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .media-container video {
        max-width: 100%;
        height: auto;
        width: auto;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

.bg-positioned {
    position: absolute;
    z-index: -25;
}

#bg1 {
    width: 200px;
    opacity: .05;
    top: 0;
    left: -7px;
}
.service-list #bg1 {top: 260px; left: auto; right: 0}

#bg2 {
    width: 250px;
    opacity: .05;
    top: 20%;
    right: -22px;
    transform: rotate(-9deg);
}
.service-list #bg2 {top: 25%; right: 40px; transform: rotate(-38deg);}

#bg3 {
    width: 300px;
    top: 40%;
    left: 0;
}
.service-list #bg3 {top: 65%; left: auto; right: -100px}

#bg4 {
    width: 370px;
    top: 57%;
    right: -144px;
}
.service-list #bg4 {top: 43%; right: auto; left: -90px}

#bg5 {
    width: 400px;
    opacity: .05;
    top: 75%;
    right: -107px;
    transform: rotate(-24deg);
}
.service-list #bg5 {top: 76%; transform: rotate(3deg);}

#bg6 {
    width: 200px;
    opacity: .05;
    bottom: 70px;
    left: 3px;
}

#bg7 {
    display: none;
}


/* --- HEADER --- */


header {
    height: 72px;
    width: 100%;
    display: flex;
    display: -ms-flex;
    align-items: center;
    -ms-flex-align: center;
    justify-content: space-between;
    -ms-flex-pack: justify;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 200;
    background-color: #ffffff;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

    .menu-icon {
        padding: 12px 20px;
        display: block;
        text-decoration: none;
    }

        .line {
            margin: 6px 0;
            height: 4px;
            width: 22px;
            background-color: #b72c3c;
            border-radius: 2px;
        }
        .line:nth-child(2) {width: 28px;}

        .menu-icon-view svg {
            margin: 12px 0;
            height: 24px;
            display: block;
            fill: #b72c3c;
        }

    .logo {
        height: 30px;
        display: block;
        text-decoration: none;
    }

        .logo img {
            height: 100%;
        }

    nav {
        padding: 10px 0 60px;
        height: calc(100vh - 72px);
        width: 80%;
        position: fixed;
        left: 0;
        top: 72px;
        z-index: 175;
        transform: translateX(-100%);
        transition: transform .4s ease-in-out;
        background-color: #ffffff;
    }
    nav.shown {
        transform: translateX(0);
        box-shadow: 0px 10px 10px rgba(0, 0, 0, 0.1);
    }

        nav a:not(.btn) {
            padding: 0 20px;
            height: 72px;
            width: 100%;
            display: flex;
            display: -ms-flex;
            align-items: center;
            -ms-flex-align: center;
            justify-content: flex-start;
            -ms-flex-pack: start;
            border-bottom: .5px solid rgba(183, 44, 60, .1);
            color: #2b2a29 !important;
            text-decoration: none;
        }

            nav a:not(.btn) svg {
                margin-right: 15px;
                height: 18px;
                fill: #b72c3c;
            }

        .hc-info a:last-of-type {border-color: transparent;}

        .header-order {
            width: 100%;
            position: absolute;
            left: 0;
            bottom: 60px;
            z-index: 25;
            text-align: center;
        }

    .phone-icon {
        padding: 25px 20px;
        display: block;
        text-decoration: none;
    }

        .phone-icon svg {
            height: 22px;
            fill: #b72c3c;
        }

@media (max-height: 500px) {
    nav {
        padding: 10px 0 30px;
        overflow: scroll;
    }

    .header-order {
        margin-top: 20px;
        position: static;
    }
}


/* --- FOOTER --- */


.footer-nav {
    padding: 0 40px;
    display: flex;
    display: -ms-flex;
    justify-content: space-between;
    -ms-flex-pack: justify;
    flex-direction: column;
    -ms-flex-direction: column;
    font-size: 14px;
}

    .footer-seo {
        margin-bottom: 30px;
        order: 2;
    }

        .footer-seo .logo {
            margin-bottom: 30px;
            height: auto;
        }

    .footer-contact {
        margin-bottom: 30px;
        order: 0;
        text-align: center;
    }

        .footer-contact > ul {
            margin: 0 0 30px;
            padding: 0;
            list-style: none;
            display: flex;
            display: -ms-flex;
            justify-content: space-between;
            -ms-flex-pack: justify;
        }

            .footer-contact > ul li {
                font-size: 16px;
                font-weight: 700;
            }

                .footer-contact > ul li a {
                    text-decoration: none;
                }
                .footer-contact > ul li a:hover {color: #2b2a29;}

        .footer-contact > a {
            font-size: 20px;
            font-weight: 600;
            color: #2b2a29;
            text-decoration: none;
        }
        .footer-contact > a:hover {color: #b72c3c;}

            .footer-contact > a svg {
                margin-right: 5px;
                height: 18px;
                vertical-align: middle;
                transition: fill .4s ease-in-out;
                fill: #2b2a29;
            }
            .footer-contact > a:hover svg {fill: #b72c3c;}

    .footer-map {
        margin-bottom: 40px;
        order: 1;
        text-align: center;
    }

        .footer-map > p {
            margin: 0 0 10px;
        }

            .footer-map > p > a {
                color: #2b2a29;
                text-decoration: none !important;
            }
            .footer-map > p > a:hover {color: #b72c3c;}

        .footer-map .map {
            height: 130px;
            display: block;
            text-decoration: none;
        }

.footer-rights {
    padding-bottom: 15px;
    text-align: center;
}


/* --- INDEX --- */


.w-promo {
    height: 220px;
    position: relative;
    color: #ffffff;
    text-align: center;
}
.w-promo.small {height: 230px;}

    .w-promo > .background {
        height: 100%;
    }

    .w-promo > .cover {
        padding: 25px 0;
        display: flex;
        display: -ms-flex;
        align-items: center;
        -ms-flex-align: center;
        justify-content: space-between;
        -ms-flex-pack: justify;
        flex-direction: column;
        -ms-flex-direction: column;
        background-color: rgba(43, 42, 41, .7);
    }
    .w-promo.small > .cover {
        justify-content: center;
        -ms-flex-pack: center;
    }

        .w-promo > .cover h1 {
            color: #ffffff;
        }
        .w-promo:not(.small) > .cover h1 {
            font-size: 18px;
            font-weight: 700;
        }
        .w-promo.small > .cover h1 {
            line-height: 30px;
        }

        .w-promo > .cover p {
            font-size: 12px;
        }

.feature-container {
    padding: 40px 15px 0;
}

    .feature-block {
        margin-bottom: 54px;
        color: rgba(43, 42, 41, .6);
        font-size: 18px;
        line-height: 25px;
        text-align: center;
    }

        .feature-block svg {
            margin-bottom: 13px;
            height: 100px;
        }

.benefit-container {
    margin-bottom: 20px;
    padding: 25px 0 40px;
    background-image: linear-gradient(to right, #f3f3f3 0%, #f7f7f7 100%);
}

    .benefit-img h2 {
        padding-left: 35px;
        font-size: 24px;
        font-weight: 700;
        text-transform: uppercase;
    }

    .benefit-img img {
        margin-bottom: 25px;
    }

    .benefit-block h3 {
        color: #2b2a29;
        text-align: center;
    }

    .benefit-list {
        padding-left: 30px;
        margin-bottom: 30px;
        /*list-style-image: url('data:image/svg+xml,\
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 23 22" width="23" height="22">\
            <path d="M6.42905 8.72344C6.10515 8.37536 5.57766 8.37536 5.24914 8.71853C4.92061 9.06171 4.92061 9.6206 5.24451 9.96868L9.19606 14.1848C9.35338 14.3515 9.5616 14.4447 9.7837 14.4447C9.7837 14.4447 9.7837 14.4447 9.78833 14.4447C10.0104 14.4447 10.2186 14.3515 10.376 14.1898L22.4064 1.51182C22.7303 1.16864 22.735 0.609755 22.4111 0.261676C22.0872 -0.0864038 21.5597 -0.0864037 21.2312 0.256773L16.9788 4.73278C15.1696 2.37466 12.4489 0.992152 9.55697 0.992152C8.20586 0.992152 6.90101 1.2863 5.67946 1.8599C4.49955 2.41879 3.44919 3.20809 2.56542 4.21801C1.68164 5.22303 1.01071 6.38493 0.571134 7.66939C0.113051 9.00778 -0.072033 10.4148 0.0251362 11.8562C0.353661 16.842 4.15251 20.8719 8.85828 21.2298C9.08963 21.2494 9.32561 21.2543 9.55697 21.2543C11.7456 21.2543 13.8602 20.4699 15.563 19.0089C17.423 17.4205 18.6446 15.1703 19.0101 12.6798C19.0842 12.1699 19.1212 11.6453 19.1212 11.1208C19.1212 10.6354 18.7464 10.2383 18.2883 10.2383C17.8302 10.2383 17.4554 10.6354 17.4554 11.1208C17.4554 11.5522 17.423 11.9836 17.3629 12.4101C16.7429 16.6753 13.0597 19.7737 8.97858 19.4649C5.09644 19.1707 1.95927 15.8468 1.68627 11.7287C1.52894 9.37547 2.27391 7.13502 3.78234 5.41913C5.27227 3.72776 7.3776 2.75706 9.55697 2.75706C12.0001 2.75706 14.2951 3.95818 15.7897 5.98783L9.79295 12.3121L6.42905 8.72344Z" fill="rgba(43, 42, 41, .1)"/>\
        </svg>');*/
        list-style: none;
    }

        .benefit-list li {
            padding-left: 35px;
            margin-bottom: 20px;
            background: 0 0 no-repeat url(../../img/check-black.svg);
        }

.service-container {
    padding: 0 15px 90px;
    position: relative;
    overflow: hidden;
    text-align: center;
}

    .service-container h2 {
        margin-bottom: 25px;
    }

    .service-block {
        margin-bottom: 32px;
        display: block;
        text-decoration: none !important;
    }

        .service-block .service-img {
            margin-bottom: 20px;
            position: relative;
            clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%, 25% 0%);
        }
        .service-block .service-img:after {
            padding-top: 86.6025%;
            display: block;
            content: '';
        }

            .service-block .service-img img {
                height: 100%;
                position: absolute;
                top: 0;
                left: 50%;
                z-index: 25;
                transform: translateX(-50%);
                transition: transform .4s ease-in-out;
            }
            .service-block:hover .service-img img {transform: translateX(-50%) scale(1.1);}

            .service-block .service-img .cover {
                background-color: rgba(183, 44, 60, .15);
            }

        .service-block h4 {
            color: rgba(43, 42, 41, .8);
            font-size: 18px;
            line-height: 25px;
        }
        .service-block:hover h4 {color: #b72c3c;}

.fast-order {
    margin-bottom: 65px;
    padding: 35px 40px;
    background-image: linear-gradient(to right, #f3f3f3 0%, #f7f7f7 100%);
    border-radius: 7px;
}

    .fa-caption {
        padding-bottom: 10px;
    }

        .fa-caption h3 {
            text-align: center;
        }

    .fast-order form {
        text-align: center;
    }

.review-container {
    width: calc(100% + 40px);
    position: relative;
}

    .review-block {
        padding: 0 80px 0 0;
        display: flex;
        display: -ms-flex;
        align-items: center;
        -ms-flex-align: center;
    }

        .review-block svg {
            margin: 4px 15px 0;
            height: 20px;
            flex-shrink: 0;
            fill: #b72c3c;
        }
        .review-block svg:last-of-type {transform: rotate(180deg);}

        .review-info {
            flex-grow: 1;
            color: #000000;
            font-size: 14px;
            line-height: 19px;
        }

            .review-info h4 {
                color: #000000;
                text-align: center;
            }

    .review-container > svg {
        height: 50px;
        position: absolute;
        bottom: 0;
        right: 0;
        z-index: 25;
    }

.warranty-container {
    margin-bottom: 15px;
    padding: 40px 15px 25px;
    background-image: linear-gradient(to right, #f3f3f3 0%, #f7f7f7 100%);
}

    .warranty-img {
        padding-bottom: 70px;
        max-width: 410px;
        position: relative;
    }

        .warranty-icon {
            padding-left: 45px;
            position: relative;
            z-index: 25;
        }

            .warranty-icon > svg {
                width: 100%;
            }

            .wi-caption {
                padding-left: 45px;
                position: absolute;
                top: 33%;
                left: 50%;
                z-index: 25;
                transform: translateX(-50%);
                color: #ffffff;
                font-family: 'Exo 2', Arial, sans-serif;
                font-size: 24px;
                line-height: 29px;
                text-align: center;
            }

        .warranty-img > svg {
            width: 200px;
            position: absolute;
            bottom: 30px;
            left: 0;
            z-index: 0;
        }

    .warranty-block h2 {
        margin-bottom: 30px;
        text-align: center;
    }

    .warranty-list {
        padding: 0;
        margin-bottom: 30px;
        list-style: none;
    }

        .warranty-list li {
            padding-left: 40px;
            margin-bottom: 10px;
            background: 0 0 no-repeat url(../../img/check-red.svg);
        }

.text-container {
    padding: 10px 40px 30px;
}


.border-block {
    margin: 45px 15px;
    padding: 50px 20px 10px;
    display: flex;
    display: -ms-flex;
    justify-content: space-between;
    -ms-flex-pack: justify;
    flex-wrap: wrap;
    position: relative;
    border: 5px solid #b72c3c;
    border-radius: 7px;
}
.border-block.form {padding: 30px 20px 40px;}

    .border-block h2 {
        margin: -5px 0 0;
        padding: 0 10px;
        display: inline-block;
        position: absolute;
        top: 0;
        left: 50%;
        z-index: 25;
        transform: translate(-50%, -50%);
        background-color: #ffffff;
        font-size: 24px;
        font-weight: 700;
        line-height: 29px;
        text-align: center;
        white-space: nowrap;
    }
    .border-block h2.small {
        font-size: 18px;
        line-height: 22px;
    }
    .border-block h2.long {
        min-width: 75%;
        white-space: normal;
    }

    .border-link {
        margin-bottom: 35px;
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
        display: flex;
        display: -ms-flex;
        align-items: center;
        -ms-flex-align: center;
        color: rgba(43, 42, 41, .8);
        font-size: 18px;
        line-height: 25px;
    }
    a.border-link {text-decoration: none !important;}
    a.border-link:hover {color: #b72c3c;}

        .border-link svg {
            margin-right: 20px;
            width: 70px;
            flex-shrink: 0;
        }
        a.border-link:hover svg path {fill: rgba(4, 42, 41, .4) !important;}

    .border-block form {
        width: 100%;
    }

.service-list {
    padding: 0 15px;
    display: flex;
    display: -ms-flex;
    flex-wrap: wrap;
    position: relative;
    overflow: hidden;
}

    .service-detail {
        margin-bottom: 40px;
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }

        .service-detail .background {
            margin-bottom: 15px;
            height: 240px;
            display: block;
            text-decoration: none !important;
        }

        .service-detail h5 {
            margin-bottom: 12px;
        }

            .service-detail h5 a {
                text-decoration: none !important;
            }
            .service-detail h5 a:hover {color: #2b2a29;}

        .service-caption {
            margin-bottom: 4px;
            color: rgba(43, 42, 41, .8);
            font-size: 14px;
            line-height: 19px;
        }

.img-container {
    margin-bottom: 20px;
}
.img-container > .row {
    flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
}

    .img-container h2 {
        display: none;
    }

    .img-container .background {
        margin-bottom: 20px;
        height: 320px;
    }

.contact-block {
    padding: 0 15px;
}

    .map {
        margin-bottom: 20px;
        height: 255px;
        width: 100%;
    }

    .contact-paragraph {
        padding: 0 0 30px;
    }

        .contact-phone {
            color: #2b2a29 !important;
            font-size: 20px;
            font-weight: 600;
            line-height: 27px;
            text-decoration: none !important;
        }

            .contact-phone svg {
                margin-right: 10px;
                height: 18px;
            }

.icon-pin {
    display: none;
}
