.page-footer {
    background-color: #fff;
}

.footer-head {
    padding: 35px 0;
    position: relative;

    &:before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        top: 5px;
        right: 0;
        bottom: 5px;
        pointer-events: none;
        border-top: 1px dashed rgba(255, 255, 255, 0.6);
        border-bottom: 1px dashed rgba(255, 255, 255, 0.6);
    }

    .newsletter-title {
        font-size: 200%;
        font-weight: 700;
        margin-top: 7px;
    }
}

.block-subscribe-footer {
    .newsletter-content,
    .input-box {
        width: 100%;
    }

    .newsletter-content {
        position: relative;
    }

    .input-box input {
        border: none;
        height: 54px;
        padding-left: 15px;
        .border-radius(4px);
    }

    .action-button button {
        width: 46px;
        height: 46px;
        line-height: 46px;
        padding: 0;
        position: absolute;
        top: 4px;
        right: 4px;
        .border-radius(4px);
        .transition(.1s);

        span {
            display: none;
        }

        &:before {
            .icomoon(e955, 26px);
        }
    }
}

.footer-top {
    background-color: #fff;
    padding-top: 40px;
}

.footer-description {
    border-bottom: 1px dashed #e5e5e5;
    margin-bottom: 40px;
    padding-bottom: 30px;

    img {
        margin-bottom: 15px;
    }

    .social-block-list {
        float: right;
        margin-top: 25px;

        ul {
            .ul-nostyle();
        }

        ul li {
            display: inline-block;
            vertical-align: top;
            margin-left: 5px;
        }

        ul li a {
            background-color: #524d5e;
            color: #fff;
            display: block;
            width: 54px;
            height: 54px;
            line-height: 54px;
            font-size: 22px;
            text-align: center;
            .border-radius(3px);
            .transition(.1s);
        }
    }
}

.footer-block {
    margin-bottom: 40px;

    .footer-block-title {
        font-size: 116.67%;
        position: relative;
        color: #524d5e;
        font-weight: 700;
        padding-bottom: 10px;
        margin-bottom: 15px;

        &:before {
            content: "";
            display: block;
            position: absolute;
            left: 0;
            bottom: 0;
            width: 40px;
            height: 2px;
        }
    }

    .links-footer {
        .ul-nostyle();

        li {
            margin: 0;
        }

        li a {
            display: table;
            padding: 6px 0;
        }
    }
}

.footer-block.footer-contact {
    .contact-info {
        margin: 0;
        padding: 8px 0 0;
        list-style: none;

        li {
            padding-left: 39px;
            position: relative;
            margin: 0;
            color: #444;
        }

        li:not(:last-child) {
            margin-bottom: 20px;
        }

        li:before {
            background-color: #4a5678;
            display: block;
            width: 30px;
            height: 30px;
            text-align: center;
            line-height: 30px;
            color: #fff;
            position: absolute;
            left: 0;
            top: 50%;
            margin-top: -15px;
            .border-radius(3px);
        }

        li.address:before {
            .icomoon(e90a, 20px);
        }

        li.email:before {
            .icomoon(e908, 18px);
        }

        li.phone:before {
            .icomoon(e967, 18px);
        }
    }
}

.footer-bottom {
    .bottom-content {
        border-top: 1px dashed #e5e5e5;
        padding: 20px 0;
    }

    address {
        margin: 4px 0 0;
    }

    address a:hover {
        text-decoration: underline;
    }

    small, .small {
        font-size: 100%;
    }
}

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

.layout-boxed {
    .newsletter-footer {
        padding-right: 20px;
    }

    .footer-bottom {
        padding-left: 10px;
        padding-right: 10px;
    }
}