.footer {
    background: var(--dark);
    padding: 120px 80px;
    position: relative;

    &:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 66, 0.66);
        border-radius: var(--border-radius);
        z-index: 2;
        transition: var(--transition);
    }

    &:after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: url('../img/bg_hdp_home.webp') no-repeat center center/cover;
        z-index: 1;
    }

    .container {
        position: relative;
        z-index: 3;
    }

    @media (max-width: 768px) {
        padding: 40px 0;
    }

    .footer__main {
        display: flex;
        justify-content: space-between;
        gap: 60px;

        @media (max-width: 992px) {
            flex-direction: column;
            gap: 40px;
        }

        .footer__agency {
            flex: 0.3;

            >p {
                margin-top: 25px;
                font-size: 12px;
                line-height: 16px;
            }

            * {
                color: var(--white) !important;
            }
        }

        .footer__contact {
            display: flex;
            flex-direction: column;
            gap: 16px;

            @media (min-width: 768px) {
                flex: 0.2;
            }

            &>p {
                color: var(--white);
                font-weight: var(--bold);
                font-size: 14px;
                text-transform: uppercase;
                margin: 0 !important;
            }

            a {
                line-height: 16px;
                display: flex;
                font-size: 12px;
                color: var(--white) !important;

                &:before {
                    content: '';
                    width: 16px;
                    height: 16px;
                    display: inline-block;
                    margin-right: 10px;
                    background-position: center;
                    background-size: contain;
                    background-repeat: no-repeat;
                }

                &.adresse {
                    &:before {
                        background-image: url(../img/icon_address.svg);
                    }
                }

                &.phone {
                    &:before {
                        background-image: url(../img/icon_phone.svg);
                    }
                }

                &.mail {
                    &:before {
                        background-image: url(../img/icon_mail.svg);
                    }
                }

                &:hover {
                    >a {
                        color: var(--hover) !important;
                    }
                }
            }
        }

        .footer__menu {
            display: flex;
            flex-wrap: wrap;

            @media (min-width: 768px) {
                flex: 0.65;
            }

            @media (max-width: 768px) {
                flex-direction: column;
                gap: 20px;
            }

            .menu__footer {
                margin: 0;
                padding: 0;
                width: 100%;
                display: grid;
                grid-template-columns: 1fr 1fr 1fr;
                gap: 32px;
                height: fit-content;

                @media (max-width: 768px) {
                    flex-direction: column;
                    gap: 0px 20px;
                }

                li,
                a {
                    color: var(--white) !important;
                    list-style: none !important;
                    font-size: 14px;
                    line-height: 16px;
                    font-weight: var(--medium);
                }

                li.current-page-ancestor,
                li.current-menu-item {
                    >a {
                        color: var(--hover) !important;
                    }
                }

                li {
                    &:hover {
                        >a {
                            color: var(--hover) !important;
                        }
                    }
                }

                >li {

                    @media (max-width: 768px) {
                        &:not(:last-child) {
                            margin-bottom: 20px;
                        }
                    }

                    &:before {
                        display: none;
                    }

                    .sub-menu {
                        padding: 0;
                        display: flex;
                        flex-direction: column;
                        gap: 24px;

                        a {
                            font-size: 15px;
                            font-weight: var(--semibold);
                            line-height: 20px;
                        }
                    }
                }
            }
        }
    }

    .footer__last {
        width: 100%;
        margin-top: 30px;
        padding: 30px 0;
        text-align: center;
        border-top: 1px solid rgba(228, 245, 250, 0.33);

        p {
            color: var(--light-blue) !important;
            margin: 0;
            font-size: 14px;
            line-height: 16px;
        }

        p,
        a {
            font-size: 12px;
        }
    }
}