.footer .footer-grid{grid-template-columns:minmax(340px,1.35fr) minmax(140px,.65fr) minmax(250px,1fr);gap:60px}
.footer-contact .brand{display:flex;align-items:center;gap:16px;color:white;font-size:26px;font-weight:600;margin:0 0 30px}
.footer-contact .brand img{width:72px;height:72px;object-fit:contain;background:var(--paper);border-radius:16px;padding:5px}
.footer .footer-contact-line{font-size:20px;line-height:1.4;font-weight:400;color:#fff;margin:18px 0;overflow-wrap:anywhere}
.footer .footer-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.footer .footer-socials a{margin:0;padding:8px 13px;border:1px solid #e79abd70;border-radius:10px;font-size:14px;color:#fff;transition:background .2s,color .2s}
.footer .footer-socials a:hover,.footer .footer-socials a:focus-visible{background:var(--wine);color:#fff}
.footer-contact a:focus-visible{outline:2px solid #e79abd;outline-offset:4px}
@media(max-width:1050px){.footer .footer-grid{grid-template-columns:1.2fr 1fr;gap:32px}.footer-contact{grid-column:1/-1}}
@media(max-width:620px){.footer .footer-grid{grid-template-columns:1fr;gap:30px}.footer-contact .brand{font-size:23px}.footer .footer-contact-line{font-size:17px}.footer-contact .brand img{width:62px;height:62px}}
@media(prefers-reduced-motion:reduce){.footer .footer-socials a{transition:none}}
