body > footer {
    background: #252525;

    padding: 60px 60px 40px 60px;
}

.footer__row-1 {
    display: flex;
    justify-content: space-between;
    column-gap: 40px;

    color: #fff;

    padding-bottom: 80px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.footer__row-1__col-1 {
	display: flex;
	flex-direction: column;
}

.footer__good-place {
	margin-top: auto;
}

.footer__text-1 {
    font-weight: 500;
    font-size: 11px;
    line-height: 1.1;
    letter-spacing: -0.03em;
    text-transform: uppercase;
    text-align: center;

    margin-top: 7px;
}

.footer__text-2 {
    font-weight: 400;
    font-size: 14px;
    line-height: 1.1;
    letter-spacing: -0.04em;
    color: rgba(255, 255, 255, 0.6);

    margin-top: 30px;
}

.footer__row-1__col-2 {
    display: flex;
    column-gap: 40px;
    max-width: 1100px;
    justify-content: space-between;
    width: 100%;
}

.footer__menu-col-title {
    font-weight: 400;
    font-size: 14px;
    line-height: 1.1;
    letter-spacing: -0.06em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.6);
    margin-top: 10px;
    white-space: nowrap;
}

.footer__menu-col > ul {
    margin: 30px 0 0 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    row-gap: 15px;
}

.footer__menu-col > ul a {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.1;
    letter-spacing: -0.04em;
    color: #fff;
    text-decoration: none;
}

.footer__menu-col > ul a:hover, .footer__menu-col > ul a:focus, .footer__menu-col > ul a:active {
    text-decoration: underline;
}

.footer__contacts-socials {
    background: #2c2c2c;
    padding: 40px 30px 30px 30px;
    min-width: 375px;
    min-height: 300px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.footer__contacts-phone {
    font-weight: 500;
    font-size: 24px;
    line-height: 1.1;
    color: #fff;
    text-decoration: none;
}

.footer__contacts-phone > a {
    color: #fff;
    text-decoration: none;
}

.footer__contacts-phone > a:hover, .footer__contacts-phone > a:focus, .footer__contacts-phone > a:active {
    text-decoration: underline;
}

.footer__contacts-worktime {
    font-weight: 400;
    font-size: 14px;
    line-height: 1.1;
    letter-spacing: -0.06em;
    color: rgba(255, 255, 255, 0.5);
    
    margin-top: 8px;
}

.footer__contacts-address {
    margin: 25px 0 0 0;
    padding: 0;
    list-style: none;

    display: flex;
    flex-direction: column;
    row-gap: 10px;
}

.footer__socials {
    display: flex;
    column-gap: 10px;
}

.footer__socials > a {
    width: 40px;
    height: 40px;
    aspect-ratio: 1;

    border: 0.50px solid rgba(255, 255, 255, 0.5);
    background-repeat: no-repeat;
    background-position: center;
}

.footer__socials > a.icon-max {
    background-image: url(../icons/footer/max.svg);
    /*background-size: 20px;*/
    background-size: 54%;
}

.footer__socials > a.icon-whatsapp {
    background-image: url(../icons/footer/whatsapp.svg);
}

.footer__socials > a.icon-vk {
    background-image: url(../icons/footer/vk.svg);
}

.footer__socials > a.icon-telegram {
    background-image: url(../icons/footer/telegram.svg);
}

.footer__socials > a.icon-yandex {
    background-image: url(../icons/footer/yandex.svg);
}

.footer__socials > a.icon-flickr {
    background-image: url(../icons/footer/flickr.svg);
}

.footer__socials > a.icon-2gis {
    background-image: url(../icons/footer/2gis.svg);
}

.footer__socials > a:hover, .footer__socials > a:focus, .footer__socials > a:active {
    opacity: 0.7;
}

.footer__row-2 {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
    column-gap: 30px;
}

.footer__req {
    font-weight: 400;
    font-size: 14px;
    line-height: 1.3;
    letter-spacing: -0.04em;
    color: rgba(255, 255, 255, 0.6);
}

.footer__policy {
    font-weight: 400;
    font-size: 14px;
    line-height: 1.1;
    letter-spacing: -0.04em;
    color: #fff;
}

.footer__policy > a {
    color: #fff;
}

.footer__contraindications {
    font-weight: 400;
    font-size: 14px;
    line-height: 1.3;
    letter-spacing: -0.04em;
    color: rgba(255, 255, 255, 0.6);

    min-width: 375px;
}

@media (max-width: 1260px) {
    .footer__row-1__col-2 {
        flex-wrap: wrap;
    }

    .footer__contacts-socials {
        width: 100%;
        margin-top: 60px;
        min-height: inherit;
    }

    .footer__row-1 {
        column-gap: 145px;
    }

    .footer__contacts-socials {
        flex-direction: row;
        align-items: self-start;
        column-gap: 30px;
    }

    .footer__socials {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        row-gap: 10px;
        column-gap: 10px;
    }
}

.footer__text-3 {
    display: none;
}

@media (max-width: 1060px) {
    body > footer {
        padding-top: 5.5cqw; /*53px*/
        padding-left: 3.1cqw; /*30px*/
        padding-right: 3.1cqw; /*30px*/
        padding-bottom: 2.1cqw; /*20px*/
    }

    .footer__logo {
        aspect-ratio: 230 / 58;
        width: 21.4cqw; /*205px*/
        height: 100%;
    }

    .footer__text-1 {
        font-size: 1cqw; /*9px*/
        margin-top: 0.7cqw; /*6px*/
        width: 21.4cqw; /*205px*/
    }

    .footer__text-2 {
        margin-top: 2.1cqw; /*20px*/
        font-size: 1.3cqw; /*12px*/
    }

    .footer__text-3 {
        margin-top: 7.9cqw; /*78px*/
        font-size: 1.3cqw; /*12px*/

        display: block;

        font-weight: 400;
        line-height: 1.3;
        letter-spacing: -0.04em;
        color: rgba(255, 255, 255, 0.6);
    }

    .footer__menu-col-title {
        margin: 0;
        font-size: 1.3cqw; /*12px*/
    }

    .footer__menu-col > ul {
        margin-top: 2.1cqw; /*20px*/
        row-gap: 1.2cqw; /*12px*/
    }

    .footer__menu-col ul li {
        display: flex;
    }

    .footer__menu-col > ul a {
        font-size: 1.3cqw; /*12px*/
    }

    .footer__contacts-socials {
        margin-top: 3.1cqw; /*30px*/
        column-gap: 2.1cqw; /*20px*/
        padding: 3.1cqw; /*30px*/
        min-width: inherit;
    }

    .footer__contacts-phone {
        font-size: 2.1cqw; /*20px*/
    }

    .footer__contacts-worktime {
        margin-top: 0.7cqw; /*6px*/
        font-size: 1.3cqw; /*12px*/
    }

    .footer__contacts-address {
        margin-top: 2.1cqw; /*20px*/
        row-gap: 1.1cqw; /*10px*/

        font-weight: 400;
        font-size: 1.3cqw; /*12px*/
        line-height: 1.1;
        letter-spacing: -0.06em;
        color: #fff;
    }

    .footer__socials > a {
        width: 3.1cqw; /*30px*/
        height: 3.1cqw; /*30px*/

        background-size: 50%;
    }

    .footer__socials > a.icon-yandex {
        background-size: 30%;
    }

    .footer__row-1 {
        padding-bottom: 4.2cqw; /*40px*/
        column-gap: 15cqw; /*145px*/
    }

    .footer__row-2 {
        margin-top: 1.1cqw; /*10px*/
        align-items: center;
    }

    .footer__req {
        font-size: 1.3cqw; /*12px*/
    }

    .footer__policy {
        font-size: 1.3cqw; /*12px*/
    }

    .footer__contraindications {
        display: none;
    }
    
}

.footer__mobile-copyright {
    display: none;
}

@media (max-width: 575px) {
    body > footer {
        padding-top: 11.8cqw; /*44px*/
        padding-left: 2.8cqw; /*10px*/
        padding-right: 2.8cqw; /*10px*/
        padding-bottom: 16cqw; /*60px*/
    }

    .footer__row-1 {
        flex-direction: column;
    }
    
    .footer__good-place {
		margin-top: 8cqw;
	}

    .footer__logo {
        /*aspect-ratio: 300 / 73;*/
        width: 44cqw; /*165px*/
    }

    .footer__text-1 {
        font-size: 2.2cqw; /*8px*/
        margin-top: 1.5cqw; /*5px*/
        width: 44.5cqw; /*165px*/
    }

    .footer__logo-wrapper > a {
        display: flex;
        width: fit-content;
    }

    .footer__text-2 {
        display: none;
    }

    .footer__text-3 {
        display: none;
    }

    .footer__row-1 {
        padding-bottom: 5.4cqw; /*20px*/
    }

    .footer__row-1__col-1 {
        padding: 0 2.8cqw; /*10px*/
    }

    .footer__row-1__col-2 {
        margin-top: 15.2cqw; /*57px*/
    }

    .footer__menu-col:first-child {
        margin-left: 2.8cqw; /*10px*/
    }

    .footer__menu-col:nth-child(3) {
        margin-right: 2.8cqw; /*10px*/
    }

    .footer__menu-col-title {
        font-size: 3.2cqw; /*12px*/
    }

    .footer__menu-col > ul a {
        font-size: 3.2cqw; /*12px*/
    }

    .footer__menu-col > ul {
        margin-top: 4cqw; /*15px*/
        row-gap: 2.8cqw; /*10px*/
    }

    .footer__contacts-socials {
        margin-top: 8cqw; /*30px*/
        padding: 8cqw 2.8cqw; /*30px 10px*/

        flex-direction: column;
        row-gap: 8cqw;
    }

    .footer__contacts-phone {
        font-size: 4.3cqw; /*16px*/
    }

    .footer__contacts-worktime {
        margin-top: 1.1cqw; /*4px*/
        font-size: 3.2cqw; /*12px*/
    }

    .footer__contacts-address {
        margin-top: 5.4cqw; /*20px*/
        row-gap: 2.8cqw; /*10px*/
        font-size: 3.2cqw; /*12px*/
    }

    .footer__socials {
        display: flex;
    }

    .footer__socials > a {
        width: 8cqw; /*30px*/
        height: 8cqw; /*30px*/
    }

    .footer__row-2 {
        margin-top: 5.4cqw; /*20px*/
        padding: 0 2.8cqw; /*10px*/
        flex-direction: column;
        row-gap: 2.8cqw; /*10px*/
        align-items: inherit;
    }

    .footer__mobile-copyright {
        display: block;
        font-weight: 400;
        font-size: 3.2cqw; /*12px*/
        line-height: 1.1;
        letter-spacing: -0.06em;
        color: #fff;
    }

    .footer__req {
        display: none;
    }

    .footer__policy {
        font-size: 3.2cqw; /*12px*/
    }
}