.footer.site-footer{display:block;padding:64px 4.5vw 26px;background:#111;color:#fff}
.footer-main{display:grid;grid-template-columns:.85fr 1fr 1.25fr;gap:clamp(28px,4vw,70px);align-items:start;max-width:1600px;margin:0 auto}
.site-footer .footer-brand img{width:220px;height:auto;max-height:70px;object-fit:contain;object-position:left center}
.footer-brand p{font-size:14px;line-height:1.8;letter-spacing:.15em;color:#92928a;margin:25px 0 0}
.site-footer h2{font-size:17px;font-weight:700;letter-spacing:.1em;margin:0 0 26px;line-height:1.4;color:#fff}
.footer-contact{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.footer-contact-label{font-size:12px;color:#aaa;letter-spacing:.08em;margin-bottom:10px}
.footer-phone{font-size:clamp(22px,2.1vw,32px);font-weight:800;line-height:1.4;white-space:nowrap;letter-spacing:.015em;color:var(--yellow)}
.footer-contact-line{font-size:14px;line-height:1.9;margin:16px 0 0;color:#b8b8b0;overflow-wrap:anywhere;max-width:100%}
.footer-social{min-width:0}
.footer-qr-grid{display:grid;grid-template-columns:repeat(auto-fit,112px);gap:22px 18px}
.footer-qr{margin:0;width:112px;text-align:center}
.site-footer .footer-qr img{display:block;width:112px;height:112px;background:#fff;object-fit:contain;padding:7px;max-width:none;max-height:none;border-radius:2px}
.footer-qr a{display:block;transition:transform .2s}
.footer-qr a:hover{transform:translateY(-3px)}
.footer-qr figcaption{font-size:12px;color:#ddd;line-height:1.6;margin-top:12px;overflow-wrap:anywhere}
.footer-social-note{font-size:12px;color:#92928a;line-height:1.8;margin:18px 0 0}
.footer-qr-empty{border:1px dashed #4f4f48;min-height:125px;max-width:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#191919;color:#aaa;font-size:14px;letter-spacing:.04em}
.footer-qr-empty small{font-size:12px;color:#777}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #333;margin:44px auto 0;padding-top:24px;max-width:1600px;font-size:12px;color:#888;line-height:1.8}
.site-footer a:focus-visible{outline:2px solid var(--yellow);outline-offset:5px}
@media(max-width:900px){.footer-main{grid-template-columns:1fr 1.2fr;gap:36px}.footer-social{grid-column:1/-1}.footer-qr-grid{grid-template-columns:repeat(auto-fit,112px)}.footer-qr-empty{max-width:100%}.footer-phone{font-size:26px}}
@media(max-width:540px){.footer.site-footer{padding:42px 18px 22px}.footer-main{grid-template-columns:1fr;gap:36px}.site-footer .footer-brand img{width:190px}.footer-brand p{margin-top:18px}.site-footer h2{margin-bottom:20px}.footer-phone{font-size:29px}.footer-bottom{margin-top:32px;font-size:10px;gap:12px}.footer-qr-grid{gap:22px 16px}.footer-qr-empty{min-height:125px}}

.footer-legal{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px}.footer-legal a{color:#bfc3bb;text-decoration:none}.footer-legal a:hover{text-decoration:underline;text-underline-offset:4px}.footer-version{color:#858980}@media(max-width:540px){.footer-bottom{align-items:flex-start}.footer-legal{flex-direction:column;align-items:flex-start;gap:5px}.footer-bottom>a{white-space:nowrap}}
