﻿footer {
    margin-top: 9rem;
}

.footer-top {
    background-color: var(--black);
    color: #fff;
    padding: 3rem 0;
}

    .footer-top h4 {
        font-family: Changa;
        font-weight: 800;
        font-size: 2.2rem;
        line-height: 2.3rem;
    }

    .footer-top .footer__usp {
        display: flex;
        align-items: center;
    }

        .footer-top .footer__usp svg {
            margin-right: 1.5rem;
            width: 3rem;
            min-width: 3rem;
            height: auto;
            align-self: flex-start;
        }

    .footer-top p {
        margin-bottom: 0;
    }

    .footer-top a {
        color: #fff;
        background-image: linear-gradient(#fff, #fff);
        background-position: 100% 100%;
        background-repeat: no-repeat;
        background-size: 100% 1px;
    }

        .footer-top a:hover {
            color: var(--grey-light);
            background-image: linear-gradient(var(--grey-light), var(--grey-light));
            background-size: 0% 1px;
        }

.footer-middle {
    background-color: var(--blue-light);
    padding: 5rem 0;
}

    .footer-middle h4 {
        font-family: Changa;
        font-weight: 800;
        font-size: 2.2rem;
        line-height: 4.4rem;
    }

    .footer-middle a {
        color: var(--black);
    }

        .footer-middle a:hover {
            color: var(--blue);
        }

    .footer-middle ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }

        .footer-middle ul li {
            line-height: 4rem;
        }

            .footer-middle ul li a {
                background-image: linear-gradient(var(--blue), var(--blue));
                background-position: 0% 100%;
                background-repeat: no-repeat;
                background-size: 0% 1px;
            }

                .footer-middle ul li a:hover {
                    background-image: linear-gradient(var(--blue), var(--blue));
                    background-size: 100% 1px;
                }

        .footer-middle ul.columns-3 {
            column-count: 3;
        }

.footer-bottom {
    padding: 2rem 0;
    font-size: 1.2rem;
}

    .footer-bottom .col {
        display: flex;
        justify-content: flex-start;
        align-items: center;
    }

        .footer-bottom .col img {
            margin-right: 1.5rem;
        }

        .footer-bottom .col ul {
            list-style: none;
            margin: 0 0 0 1.5rem;
            padding: 0;
            display: flex;
        }

            .footer-bottom .col ul li:not(:first-of-type) {
                margin-left: 1.5rem;
            }

            .footer-bottom .col ul li a {
                color: var(--black);
            }

                .footer-bottom .col ul li a:hover {
                    color: var(--blue-hover);
                }

.footer-bottom__links {
    display: flex;
    margin-left: 3rem;
}

.footer-bottom__socials {
    display: flex;
    margin-left: auto;
}

    .footer-bottom__socials li a {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .footer-bottom__socials svg {
        height: 2.5rem;
        width: auto;
    }

        .footer-bottom__socials svg path,
        .footer-bottom__socials svg circle {
            fill: var(--grey);
            transition: var(--transition-default);
        }

        .footer-bottom__socials a:hover svg path,
        .footer-bottom__socials a:hover svg circle {
            fill: var(--black);
        }

    .footer-bottom__socials .social--linkedin svg {
        height: 2rem;
    }

@media(max-width: 991px) {
    .footer-middle {
        padding: 3rem 0;
    }

        .footer-middle ul {
            margin-bottom: 3rem;
        }

            .footer-middle ul li {
                line-height: 3.5rem;
            }

    .footer-bottom {
        padding-bottom: 8rem;
    }
}

@media(max-width: 767px) {
    .footer-top .row > div:last-of-type .footer__usp {
        margin-top: 3rem;
    }

    .footer-bottom .col {
        flex-flow: column;
    }

        .footer-bottom .col > img,
        .footer-bottom .col > span {
            order: 1;
        }

        .footer-bottom .col ul {
            order: 0;
            margin: 0 0 1.5rem;
        }

    .footer-bottom__socials {
        margin-left: 0;
    }

    .footer-bottom__links {
        flex-flow: column;
        justify-content: center;
        margin-left: 0;
        text-align: center;
    }
}
