footer.footer {
    margin-top: 70px;
    padding: 20px 0;
    background-color: #19273a;
    font-size: 15px;
    line-height: 1.4;
}

.footer__middle {
    margin-top: clamp(30px, 4.8vw, 48px);
    margin-bottom: 24px;
    padding-bottom: clamp(35px, 4vw, 40px);
    border-top: 1px solid #ffffff1a;
    border-bottom: 1px solid #ffffff1a;
}
.footer__top > div,
.footer__middle > div {
    padding-top: clamp(25px, 4vw, 40px);
}


.footer__top-item-link,
.footer__menu a {
    color: #e0e5ebd9;
}


.footer__title {
    margin-bottom: 16px;
}
.footer__name {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: .02em;
    color: #2BAAEC;
    transition: color .5s;
}
.footer__name > span {
    transform: translate(0, -1px);
    transition: transform .5s;
}
.footer__name-text {
    margin-top: 4px;
    font-size: 12px;
    color: #9ca6b1;
}

.footer__top-text {
    color: #9ca6b1;
}
.footer__top-logo img {
    width: 100%;
    max-height: 128px;
    display: block;
    object-fit: contain;
}
.footer__top-info .footer__top-text {
    margin-top: 16px;
}
.footer__top-info .footer__top-list {
    margin-top: 24px;
}


.footer__socials {
    margin-top: 16px;
    display: flex;
    gap: 8px;
}
.footer__social {
    min-width: 36px;
    max-width: 36px;
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100px;
    transition: transform .3s;
}
.footer__social svg {
    color: #fff;
    width: 20px;
}
.footer__social.social-vb {
    background: #7360F2;
}
.footer__social.social-tg {
    background: #229ED9;
}
.footer__social.social-fb {
    background: #1877F2;
}
.footer__social.social-inst {
    background: linear-gradient(45deg,#feda75 0%,#fa7e1e 25%,#d62976 50%,#962fbf 75%,#4f5bd5 100%)
}


.footer__top-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.footer__top-item {
    display: flex;
    gap: 12px;
}
.footer__top-item svg {
    width: 16px;
    height: 20px;
    color: #2BAAEC;
}

.footer__top-item-phone .footer__top-item-link {
    color: #fff;
}

.footer__top-reviews .footer__top-text {
    margin-top: 8px;
    font-size: 14px;
}


.google-rating__card {
    padding: 8px 12px;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    border-radius: 10px;
    border: 1px solid #ffffff1a;
    background: #0f1e2f99;
    transition: border .3s;
}
.google-rating__card > svg {
    width: 20px;
}
.google-rating__value {
    font-weight: 500;
    color: #fff;
}
.google-rating__stars {
    color: #ffb900;
}
.google-rating__bottom {
    font-size: 12px;
    color: #e2e8f0;
    transition: color .3s;
}


.footer__menu {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.footer__menu-inner {
    display: inline-flex;
    flex-direction: column;
    gap: 12px;
}
.footer__menu-inner span {
    font-size: 12px;
    color: #f6f9fce6;
}


.footer__bottom-inner {
    display: flex;
    justify-content: space-between;
    gap: 15px
}
.footer__bottom-menu {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: clamp(5px, 2vw, 20px);
}
.footer__bottom-inner p,
.footer__bottom-menu a {
    margin: 0 !important;
    font-size: 12px;
    color: #9ca6b1;
}

@media (max-width: 1023px) {
    .footer__middle {
        margin-left: 0;
        margin-right: 0;
        display: flex;
        flex-direction: column;
    }
    .footer__middle > div {
        padding: 15px 0;
        width: 100%;
        border-bottom: 1px solid #ffffff1a;
    }
    .footer__middle .footer__name-text {
        display: none;
    }
    .footer__middle .footer__title {
        margin-bottom: 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 15px;
    }
    .footer__middle .footer__title::after {
        content: "";
        display: inline-block;
        width: 12px;
        height: 12px;
        background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23ffffff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E");
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        line-height: 1;
    }
    .footer__menu {
        margin-top: 16px;
        display: none;
    }
    .footer__middle > div.is-active .footer__title::after {
        transform: rotate(180deg);
    }
    .footer__middle > div.is-active .footer__menu {
        display: flex;
    }
}


@media (max-width: 767px) {
    .footer__bottom-inner {
        flex-direction: column;
    }
}


@media (min-width: 1024px) {
    .google-rating__card:hover {
        border: 1px solid #2BAAEC;
    }

    .google-rating__card:hover .google-rating__bottom,
    a.footer__name:hover {
        color: #fff;
    }
    a.footer__name:hover > span {
        transform: translate(4px, -1px);
    }

    a.footer__top-item-link:hover,
    .footer__menu-inner a:hover,
    .footer__bottom-menu a:hover {
        color: #2BAAEC;
    }

    .footer__social:hover {
        transform: scale(1.1);
    }
}