.footer-menu {
    position: relative;
}

ol.footer-menu__list ,ul.footer-menu__list  {
    padding-left: 0;
}

.footer-menu__list li a {
    display: block;
    font-weight: 400;
    font-size: var(--fluid-16-12);
    color: #000;
    line-height: 145%;
    padding: 6px 0px;
    transition: color var(--animation-duration) var(--timing-func);
}

.footer-menu__list li:first-child a {
    padding-top: 0;
}

.footer-menu__list li:last-child a {
    padding-bottom: 0;
}

.subscribe-form {
    container-type: inline-size;
    display: grid;
    gap: 30px;
}

.subscribe-form .form-submit {
    display: grid;
    gap: 15px;
    justify-items: start;
}

.subscribe-form .form-submit__confirm {
    display: grid;
    gap: 5px;
}

.subscribe-form .form-submit__capcha {
    padding: 15px 20px;
    height: 89px;
    background: #ece4e4;
    width: 100%;
}

.subscribe-form .form-group {
    display: grid;
    position: relative;
    margin-bottom: 0;
}

.subscribe-form input {
    height: 55px;
    width: 100%;
    background: var(--5);
    padding: 0px 20px 0px 20px;
    font-weight: 400;
    font-size: 14px;
    line-height: 120%;
    color: #000;
    border-radius: 0px;
}

.subscribe-form input:-ms-input-placeholder {
    color: #000;
}

.subscribe-form input::placeholder {
    color: #000;
}

.subscribe-form .checkbox {
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 0;
    margin-bottom: 0;
    min-height: 28px;
}

.subscribe-form .checkbox > input {
    position: absolute;
    visibility: hidden;
    opacity: 0;
}

.subscribe-form .checkbox span {
    text-align: left;
    display: inline-block;
    padding-left: 28px;
    cursor: pointer;
    font-weight: 400;
    font-size: 12px;
    line-height: 120%;
    color: #1d1e21;
    position: relative;
}

.subscribe-form .checkbox span a {
    color: var(--4-domenik);
}

.subscribe-form .checkbox span:before {
    content: "";
    position: absolute;
    top: calc(50% - 10px);
    left: 0;
    width: 20px;
    height: 20px;
    border-radius: 4px;
    background: #fff;
    border: 1px solid #d6dbe0;
    transition: background 0.3s ease;
}

.subscribe-form .checkbox span:after {
    content: url("data:image/svg+xml,%3Csvg width='15' height='11' viewBox='0 0 15 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M14.0952 1.17851L5.34518 9.92851C5.01974 10.2539 4.4921 10.2539 4.16667 9.92851L0 5.76184L1.17851 4.58333L4.75592 8.16074L12.9167 0L14.0952 1.17851Z' fill='white' /%3E%3C/svg%3E");
    position: absolute;
    top: calc(50% - 6px);
    left: 3px;
    transform: scale(0);
    transition: transform 0.3s ease;
    line-height: 0;
}

.subscribe-form .checkbox input:checked ~ span::after {
    transform: scale(1);
}

.subscribe-form .checkbox input:checked ~ span::before {
    background: var(--4-domenik);
    border-color: var(--4-domenik);
}

.site-nav-social__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    gap: 15px;
}

.site-nav-social__list li {
    list-style: none;
    padding: 0;
}

.site-nav-social__list li a {
    display: block;
    position: relative;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    background: #fff;
    transition: background var(--animation-duration) var(--timing-func);
}

.site-nav-social__list li a::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 29px;
    -webkit-mask-image: var(--icon);
    mask-image: var(--icon);
    background: #000;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    transition: background var(--animation-duration) var(--timing-func);
}

.footer {
    margin-top: 30px;
    padding-bottom: 42px;
    margin-bottom: 0;
}

.footer__wrapper {
    position: relative;
    background: var(--bezh);
    padding: 64px 54px;
    display: grid;
    gap: 24px;
    grid-template-columns: 58.3% 1fr;
}

.footer__row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 66px;
}

.footer__row:not(:last-child) {
    border-bottom: 1px solid var(--1);
}

.footer__row:nth-child(1) {
    padding-bottom: 47px;
}

.footer__row:nth-child(2) {
    padding: 30px 0px;
    -ms-flex-align: center;
    align-items: center;
}

.footer__row:nth-child(3) {
    padding-top: 20px;
}

.footer__copyright {
    display: -ms-flexbox;
    display: flex;
    gap: 5px;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.footer-title {
    font-family: var(--font-family);
    font-weight: 500;
    font-size: var(--fluid-20-15);
    letter-spacing: -0.01em;
    color: #000;
    margin-bottom: 12px;
}

._spoller-init .footer-title.spollers__title {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 0;
    padding: 10px 0px;
}

._spoller-init .footer-title.spollers__title::after {
    display: inline-block;
    transition: transform var(--animation-duration) var(--timing-func);
    content: "";
    background-image: url('data:image/svg+xml,<svg width="12" height="7" viewBox="0 0 12 7" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L6 6L11 1" stroke="%239397AD" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /></svg>');
    background-repeat: no-repeat;
    background-position: center;
    width: 24px;
    height: 24px;
}

._spoller-init .footer-title.spollers__title._spoller-active::after {
    transform: rotateX(-180deg);
}

.footer-contacts h4 {
    font-weight: 400;
    font-size: 14px;
    line-height: 150%;
    margin-bottom: 10px;
    color: #000;
}

.footer-contacts a {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 20px;
    color: #000;
    transition: color var(--animation-duration) var(--timing-func);
}

.footer-copyright {
    font-weight: 400;
    font-size: 14px;
    color: #000;
    grid-column: span 2;
}

.footer-policies {
    font-weight: 400;
    font-size: 13px;
    text-decoration: underline;
    color: #000;
}

.footer-policies a {
    display: block;
    color: #000;
    transition: color var(--animation-duration) var(--timing-func);
}

.footer-form {
    max-width: 580px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.footer-logo {
    margin-top: -16px;
    margin-bottom: 24px;
}

.footer-logo img {
    max-width: 100%;
}

@media (min-width: 767.98px) {
    .footer-menu_grid .footer-menu__list {
        column-count: 3;
        column-gap: 60px;
    }
}

@media (max-width: 1299.98px) {
    .footer__wrapper {
        padding: 60px 16px;
        grid-template-columns: 68.3% 1fr;
    }

    .footer__row {
        gap: 24px;
    }
}

@media (max-width: 991.98px) {
    .footer__wrapper {
        grid-template-columns: 1fr;
    }

    .footer-form {
        -ms-flex-order: -1;
        order: -1;
        max-width: none;
    }
}

@media (max-width: 767.98px) {
    .footer__row {
        grid-template-columns: 1fr;
    }

    .footer__row:nth-child(1) {
        gap: 0;
        padding-bottom: 0;
    }

    .footer__copyright {
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

@media (any-hover: hover) {
    .footer-menu__list li a:hover {
        color: var(--4-domenik);
    }

    .site-nav-social__list li a:hover::before {
        background: #e52729;
    }

    .footer-contacts a:hover {
        color: #e52729;
    }

    .footer-policies a:hover {
        color: #e52729;
    }
}