/* Shared footer: offer, useful navigation and complete contact; legal links below. */
.footer{margin-top:64px;padding-top:48px;background:#f2f2f2;border-top:4px solid var(--orange);font:var(--weight-body) var(--text-base)/var(--leading-body) var(--font-body)}
.footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1.1fr 1fr;gap:40px;padding-bottom:40px;align-items:start}
.footer-grid>*{min-width:0}.footer h2{margin:0 0 16px;font:var(--weight-heading) var(--text-base)/var(--leading-body) var(--font-body);text-transform:none;letter-spacing:0}
.footer-brand .brand{margin:0 0 20px}.footer-brand .brand img{width:170px;height:67px;max-width:100%;object-fit:contain;object-position:left center}
.footer p{margin:0;color:var(--muted)}
.footer a:not(.brand){color:var(--ink);text-decoration-line:none;overflow-wrap:anywhere}.footer a:not(.brand):hover{text-decoration-line:underline;text-decoration-color:var(--orange)}
.footer-grid nav a{display:flex;align-items:center;min-height:40px;padding:6px 0}
.footer-company-details p,.footer-company-details address,.footer-contact a{font:inherit;color:var(--ink)}
.footer-company-details{display:grid;gap:8px}.footer-company-details address{margin:0}
.footer-company-ids{display:flex;flex-wrap:wrap;gap:0 16px}.footer-company-ids span{white-space:nowrap}
.footer-contact-details{margin-top:0}.footer-contact-details a{display:flex;align-items:center;min-height:40px;padding:6px 0}
.footer .footer-contact .map-link{display:inline-block;text-decoration-line:none}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px 40px;padding-top:24px;padding-bottom:28px;border-top:1px solid var(--line);font-size:var(--text-small);line-height:1.6}
.footer .footer-copyright{color:var(--ink);font-weight:var(--weight-heading)}
.footer-legal{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:4px 24px}.footer-legal a{display:inline-flex;align-items:center;min-height:44px;padding:6px 0}
@media(max-width:1100px){.footer-grid{grid-template-columns:1fr 1.2fr;gap:32px 48px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:12px}.footer-legal{justify-content:flex-start}}
@media(max-width:600px){.footer{margin-top:48px;padding-top:32px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px;padding-bottom:28px}.footer-brand,.footer-contact{grid-column:1/-1}.footer-brand .brand{margin-bottom:20px}.footer-brand .brand img{width:170px;height:67px}.footer-brand p{max-width:none}.footer-contact{border-top:1px solid var(--line);padding-top:24px}.footer h2{margin-bottom:10px}.footer-grid nav a{min-height:44px;line-height:1.4}.footer-bottom{padding-top:20px;padding-bottom:24px}.footer-legal{gap:0 20px}.footer-legal a{min-height:44px}.footer-contact-details a{min-height:44px}}

.footer .map-link:hover,.footer .map-link:focus-visible{text-decoration-line:underline}
