/* Easy Paw — футер */

.footer {
    background: var(--color-accent);
    color: var(--color-white);
}

/* ── Верхній блок ───────────────────────────────────────────────────────── */
.footer__top {
    display: flex;
    padding: 45px 0 27px;
}

.footer__brand,
.footer__col { flex: 0 0 25.7%; }

.footer__col:last-child { flex: 1 1 auto; }

.footer__logo img {
    display: block;
    width: 200px;
    height: 71px;
    object-fit: contain;
    object-position: left center;
}

.footer__logo .site-title-link {
    font-size: var(--fs-h4);
    font-weight: var(--fw-bold);
    color: var(--color-white);
}

.footer__socials {
    display: flex;
    align-items: center;
    gap: 25px;
    list-style: none;
    margin-top: 25px;
}

.footer__social {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    border: 1px solid var(--color-white);
    border-radius: var(--radius-circle);
    color: var(--color-white);
    transition: background var(--transition), color var(--transition);
}

.footer__social:hover {
    background: var(--color-white);
    color: var(--color-accent);
}

.footer__social svg { display: block; width: 18px; height: 18px; }

/* Конверт займає ~60% свого viewBox — рендеримо більшим, щоб зрівняти візуально */
.footer__social .icon-mail { width: 30px; height: 30px; }

.footer__title {
    margin-bottom: 20px;
    font-size: var(--fs-h4);
    line-height: 48px;
    font-weight: var(--fw-normal);
    color: var(--color-white);
}

.footer__menu,
.footer__contacts {
    display: flex;
    flex-direction: column;
    gap: 10px;
    list-style: none;
}

.footer__menu a,
.footer__phone {
    display: inline-flex;
    align-items: center;
    gap: var(--gap-xs);
    color: var(--color-white);
    line-height: 20px;
    transition: opacity var(--transition);
}

.footer__menu a:hover,
.footer__phone:hover { color: var(--color-white); opacity: .75; }

.footer__phone svg { display: block; width: 20px; height: 20px; flex: 0 0 auto; }

/* ── Нижній блок ────────────────────────────────────────────────────────── */
.footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gap-lg);
    padding: 10px 0 25px;
    border-top: 2px solid #FAFAFA;
}

.footer__copyright {
    font-weight: 600;
    line-height: 48px;
}

.footer__policy-menu {
    display: flex;
    align-items: center;
    gap: var(--gap-lg);
    list-style: none;
}

.footer__policy-menu a {
    color: var(--color-white);
    line-height: 20px;
    transition: opacity var(--transition);
}

.footer__policy-menu a:hover { color: var(--color-white); opacity: .75; }

/* ── Tablet ─────────────────────────────────────────────────────────────── */
@media (max-width: 1023px) {
    .footer__top {
        flex-wrap: wrap;
        gap: var(--gap-xl);
        padding: 40px 0 24px;
    }

    .footer__brand { flex: 0 0 100%; }

    .footer__col,
    .footer__col:last-child { flex: 1 1 calc((100% - var(--gap-xl) * 2) / 3); }

    .footer__title { line-height: 32px; margin-bottom: 16px; }
}

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .footer__top {
        flex-direction: column;
        gap: var(--gap-xl);
        padding: 32px 0 24px;
    }

    .footer__col,
    .footer__col:last-child { flex: 1 1 auto; }

    .footer__bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--gap-md);
        padding: 20px 0;
        min-height: 0;
    }

    .footer__policy-menu {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--gap-sm);
    }
}
