.site-footer { padding: 82px 0 28px; border-top: 1px solid var(--border-light); background: var(--color-white); color: var(--color-black); }
.site-footer__grid { display: grid; grid-template-columns: minmax(210px, 1.45fr) repeat(4, minmax(90px, 0.72fr)); gap: clamp(20px, 2.8vw, 46px); }
.brand-logo--footer { width: 148px; aspect-ratio: 1; border: 1px solid var(--border-light); background: #fff; overflow: hidden; }
.brand-logo--footer img { width: 100%; height: 100%; object-fit: contain; }
.footer-brand > p { max-width: 285px; margin-top: 23px; color: var(--color-grey-dark); font-size: 0.83rem; line-height: 1.75; }
.footer-socials { display: flex; gap: 8px; margin-top: 25px; }
.footer-socials a { display: grid; width: 35px; height: 35px; place-items: center; border: 1px solid var(--border-light); border-radius: 50%; font-size: 0.59rem; font-weight: 600; transition: color 250ms ease, border-color 250ms ease, background-color 250ms ease; }
.footer-socials a:hover, .footer-socials a:focus-visible { border-color: var(--color-green-deep); background: var(--color-green); }
.footer-links { display: flex; align-items: flex-start; flex-direction: column; gap: 10px; }
.footer-links h2 { margin-bottom: 10px; color: var(--color-green-deep); font-size: 0.67rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; }
.footer-links a { position: relative; color: #50564f; font-size: 0.76rem; line-height: 1.45; }
.footer-links a::after { position: absolute; right: 0; bottom: -2px; left: 0; height: 1px; background: var(--color-green-deep); content: ""; transform: scaleX(0); transform-origin: right; transition: transform 280ms var(--ease-premium); }
.footer-links a:hover::after, .footer-links a:focus-visible::after { transform: scaleX(1); transform-origin: left; }
.site-footer__bottom { display: grid; grid-template-columns: 1fr auto 1fr; gap: 25px; margin-top: 72px; padding-top: 23px; border-top: 1px solid var(--border-light); color: #737871; font-size: 0.57rem; font-weight: 500; letter-spacing: 0.11em; text-transform: uppercase; }
.site-footer__bottom p:nth-child(2) { text-align: center; }
.site-footer__bottom p:last-child { text-align: right; }
