@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700;800&display=swap');
.site-footer{
  --footer-navy:#063d83;
  --footer-blue:#0754a7;
  --footer-text:#fff;
  position:relative;
  isolation:isolate;
  color:var(--footer-text);
  font-family:Roboto,Arial,sans-serif;
  background:#063d83;
  overflow:hidden;
}
.site-footer::before{
  content:"";
  position:absolute;inset:0;z-index:-2;
  background:
    linear-gradient(90deg,rgba(3,53,119,.97),rgba(3,65,143,.93)),
    url("../images/footer-bg.jpg") center/cover no-repeat;
  transform:scale(1.01);
}
.site-footer::after{
  content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;
  background:radial-gradient(ellipse at 18% 80%,rgba(44,146,235,.16),transparent 42%),
             linear-gradient(0deg,rgba(0,24,66,.14),transparent 70%);
}
.footer-main{padding:48px 0 34px}
.footer-inner{
  width:min(1320px,calc(100% - 48px));margin:0 auto;
  display:grid;grid-template-columns:1.45fr 1fr 1fr .8fr;gap:34px;
}
.footer-logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;margin-bottom:18px}
.footer-logo img{width:42px;height:52px;object-fit:contain;flex-shrink:0}
.footer-logo strong{display:block;font-size:clamp(16px,1.45vw,22px);line-height:1.15;font-weight:800;letter-spacing:-.5px}
.footer-logo small{display:block;margin-top:3px;font-size:9px;font-weight:700;letter-spacing:.35px}
.footer-contact{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}
.footer-contact li{display:flex;align-items:flex-start;gap:11px;font-size:12px;line-height:1.65;color:rgba(255,255,255,.94)}
.contact-icon{width:15px;flex:0 0 15px;text-align:center;font-size:17px;line-height:1.2;font-weight:700}
.footer-contact a{color:inherit;text-decoration:none}
.footer-contact a:hover,.footer-column a:hover{color:#ffdc63}
.footer-column h2,.footer-social h2{margin:4px 0 20px;font-size:14px;line-height:1.3;font-weight:800;color:#fff}
.footer-column ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}
.footer-column li{position:relative;padding-left:16px;font-size:12px;line-height:1.5}
.footer-column li::before{content:"›";position:absolute;left:0;top:-1px;font-size:17px;color:#ffd23f}
.footer-column a{color:rgba(255,255,255,.95);text-decoration:none;transition:color .2s}
.social-links{display:flex;gap:10px;flex-wrap:wrap}
.social-links a{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.78);border-radius:50%;color:#fff;text-decoration:none;font-size:16px;font-weight:700;transition:background .2s,color .2s,border-color .2s}
.social-links a:hover{background:#ffd23f;color:#063d83;border-color:#ffd23f}
.social-links svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}
.social-links .social-dot{fill:currentColor;stroke:none}
.social-links .social-fill{fill:currentColor;stroke:none}
.footer-bottom{border-top:1px solid rgba(255,255,255,.25)}
.footer-bottom-inner{width:min(1320px,calc(100% - 48px));min-height:48px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:18px;color:rgba(255,255,255,.92);font-size:11px;text-align:center}
.footer-back-top{color:#ffe16b;text-decoration:none}
.footer-back-top:hover{text-decoration:underline}
@media(max-width:1000px){
  .footer-inner{grid-template-columns:1.3fr 1fr 1fr;gap:30px}
  .footer-social{grid-column:2 / 4}
}
@media(max-width:650px){
  .footer-main{padding:34px 0 28px}
  .footer-inner{width:calc(100% - 36px);grid-template-columns:1fr 1fr;gap:27px 20px}
  .footer-brand{grid-column:1 / -1}
  .footer-social{grid-column:auto}
  .footer-logo strong{font-size:17px}
  .footer-column h2,.footer-social h2{font-size:12px;margin-bottom:14px}
  .footer-column li,.footer-contact li{font-size:11px}
  .footer-column ul{gap:10px}
  .footer-bottom-inner{width:calc(100% - 28px);padding:12px 0;min-height:48px;flex-direction:column;gap:7px;font-size:10px}
}
