/* Единый блок контактов в подвале всех публичных страниц. */
footer .footer-email {
    margin: 0 0 20px;
}

footer .footer-email a {
    display: inline-block;
}

footer .footer-social-links {
    width: min(100%, 440px);
    margin: 0 auto 22px;
    display: flex;
    justify-content: center;
    gap: 10px;
}

footer .footer-social-link {
    min-width: 0;
    flex: 1 1 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 11px 14px;
    border: 1px solid rgba(44, 37, 35, 0.35);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.16);
    color: var(--espresso);
    font-size: 0.76rem;
    font-weight: 500;
    letter-spacing: 0.6px;
    line-height: 1;
    white-space: nowrap;
    transition: color 0.3s ease, background-color 0.3s ease,
                border-color 0.3s ease, transform 0.3s ease;
}

footer .footer-social-link:hover {
    transform: translateY(-2px);
    border-color: var(--espresso);
    background-color: var(--espresso);
    color: var(--card-bg);
}

footer .footer-social-link:focus-visible {
    outline: 2px solid var(--espresso);
    outline-offset: 3px;
}

footer .footer-social-link::before {
    content: "";
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    display: block;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    filter: grayscale(1) brightness(0.28);
    transition: filter 0.3s ease;
}

footer .footer-social-link[href^="https://t.me/"]::before {
    background-image: url("images/icons/telegram.svg?v=2");
}

footer .footer-social-link[href^="https://wa.me/"]::before {
    background-image: url("images/icons/whatsapp.svg");
}

footer .footer-social-link[href^="https://max.ru/"]::before {
    background-image: url("images/icons/max.svg");
}

footer .footer-social-link:hover::before {
    filter: grayscale(1) brightness(0) invert(1);
}

/* Старые встроенные значки скрыты: используются официальные SVG-файлы. */
footer .footer-social-icon {
    display: none;
}

footer .footer-copyright {
    margin-top: 0;
    font-size: 0.75rem;
}

@media (max-width: 480px) {
    footer .footer-social-links {
        gap: 7px;
    }

    footer .footer-social-link {
        gap: 5px;
        padding: 10px 8px;
        font-size: 0.68rem;
        letter-spacing: 0.2px;
    }

    footer .footer-social-link::before {
        width: 16px;
        height: 16px;
        flex-basis: 16px;
    }
}

@media (max-width: 340px) {
    footer .footer-social-links {
        max-width: 230px;
        flex-wrap: wrap;
    }

    footer .footer-social-link {
        flex-basis: 100px;
    }
}
