.site-footer { margin-top:0; padding:56px 0 0; background:#08234c; color:#edf4fc; font-family:var(--font-main); }
.site-footer .container { max-width:1240px; padding:0 24px; }
.site-footer-grid { display:grid; grid-template-columns:180px minmax(0,1fr) 265px; align-items:start; gap:40px; }
.site-footer-brand img { width:180px; height:auto; max-width:100%; }
.site-footer-center { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:32px; }
.site-footer h2 { margin:0 0 16px; font-size:17px; font-weight:700; line-height:1.6; color:white; }
.site-footer a { color:#dce8f7; display:block; min-height:44px; padding:7px 0; font-size:14px; line-height:1.8; overflow-wrap:anywhere; }
.site-footer a:hover { color:white; text-decoration:underline; }
.site-footer a:focus-visible { outline:2px solid #87d3fb; outline-offset:4px; }
.site-footer p { margin:0; padding:7px 0; color:#dce8f7; font-size:14px; line-height:1.8; overflow-wrap:anywhere; }
.site-footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:36px; padding-top:18px !important; padding-bottom:76px !important; border-top:1px solid rgba(255,255,255,.16); }
.site-footer-bottom span,.site-footer-bottom a { font-size:12px; line-height:1.8; }
.site-footer-bottom a { min-height:44px; flex-shrink:0; }
@media(max-width:1100px) {
 .site-footer-grid { grid-template-columns:minmax(0,1fr) 265px; gap:28px; }
 .site-footer-brand { grid-column:1/-1; }
}
@media(max-width:700px) {
 .site-footer { padding-top:36px; }
 .site-footer-grid,.site-footer-center { grid-template-columns:minmax(0,1fr); gap:28px; }
 .site-footer-bottom { flex-direction:column; align-items:flex-start; gap:8px; margin-top:28px; }
 .site-footer-contact,.site-footer-center section { min-width:0; }
}
