/* URBAN — Footer */

.urban-footer {
    background: #2d2e32;
    padding: 1.75rem 1rem 1.85rem;
}

.urban-footer__inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem 2rem;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.urban-footer__meta {
    min-width: 0;
}

.urban-footer__brand {
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: 0.11em;
    text-transform: uppercase;
    color: #fff;
}

.urban-footer__rights {
    margin: 0.35rem 0 0;
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.62);
    line-height: 1.5;
}

.urban-footer__rights a:not(.urban-footer__credit-link) {
    color: inherit;
    text-decoration: none;
}

footer.urban-footer .urban-footer__rights a.urban-footer__credit-link {
    color: #ef4536;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-decoration: none;
    transition: color 0.2s ease;
}

footer.urban-footer .urban-footer__rights a.urban-footer__credit-link:hover,
footer.urban-footer .urban-footer__rights a.urban-footer__credit-link:focus-visible {
    color: #ff6a5c;
    outline: none;
}

.urban-footer__nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 1.25rem 1.75rem;
}

.urban-footer__links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.25rem;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.urban-footer__links a {
    color: rgba(255, 255, 255, 0.82);
    text-decoration: none;
    transition: color 0.2s ease;
}

.urban-footer__links a:hover,
.urban-footer__links a:focus-visible {
    color: #ef4536;
    outline: none;
}

.urban-footer__social {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.55rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.urban-footer__social-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(255, 255, 255, 0.88);
    text-decoration: none;
    transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
}

.urban-footer__social-link i {
    font-size: 1.2rem;
    line-height: 1;
    font-family: boxicons !important;
    font-weight: 400 !important;
    font-style: normal;
}

.urban-footer__ra-mark {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    line-height: 1;
}

.urban-footer__social-link:hover,
.urban-footer__social-link:focus-visible {
    outline: none;
    transform: translateY(-1px);
}

.urban-footer__social-link--instagram:hover,
.urban-footer__social-link--instagram:focus-visible {
    color: #fff;
    border-color: rgba(214, 41, 118, 0.55);
    background: linear-gradient(45deg, rgba(254, 218, 117, 0.18), rgba(214, 41, 118, 0.22));
}

.urban-footer__social-link--facebook:hover,
.urban-footer__social-link--facebook:focus-visible {
    color: #1877f2;
    border-color: rgba(24, 119, 242, 0.45);
    background: rgba(24, 119, 242, 0.12);
}

.urban-footer__social-link--telegram:hover,
.urban-footer__social-link--telegram:focus-visible {
    color: #29a9eb;
    border-color: rgba(41, 169, 235, 0.45);
    background: rgba(41, 169, 235, 0.12);
}

.urban-footer__social-link--ra:hover,
.urban-footer__social-link--ra:focus-visible {
    color: #ff4848;
    border-color: rgba(255, 72, 72, 0.45);
    background: rgba(255, 72, 72, 0.12);
}

.urban-footer__social-link--linkedin:hover,
.urban-footer__social-link--linkedin:focus-visible {
    color: #0077b5;
    border-color: rgba(0, 119, 181, 0.45);
    background: rgba(0, 119, 181, 0.12);
}

@media (max-width: 768px) {
    .urban-footer {
        padding: 1.5rem 1rem 1.5rem;
    }

    .urban-footer__inner {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 1.1rem;
        padding: 0 15px;
    }

    .urban-footer__nav {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 1rem 1.25rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .urban-footer__links a,
    .urban-footer__social-link {
        transition: none;
    }
}
