.site-footer {
  display: block !important;
  padding: 0 !important;
  margin: 0;
  background: #001368;
  color: #d9e2ff;
  font-family: var(--font-body, "Inter", Arial, sans-serif);
}

.site-footer-inner {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  gap: 72px;
  max-width: 1176px;
  padding: 56px max(24px, calc((100vw - 1176px) / 2));
  margin: auto;
}

.site-footer-brand > a {
  display: inline-flex !important;
  align-items: center;
  gap: 6px !important;
  color: #fff !important;
  font: 800 23px/1 var(--font-display, "Manrope", sans-serif) !important;
  letter-spacing: -1.5px;
  text-decoration: none;
}

.site-footer-brand > a span {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border-radius: 8px;
  background: #fff;
  color: #0c29ab;
  font-size: 17px;
}

.site-footer-brand > a i { color: #ff957f; font-style: normal; }
.site-footer-brand p { max-width: 280px; margin: 15px 0 0; color: #bdc9ef; font-size: 13px; line-height: 1.65; }

.site-footer-links {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}

.site-footer-links > div { display: block !important; min-width: 0; }

.site-footer-links h2 { margin: 0 0 13px; color: #91a5f3; font-size: 10px; font-weight: 800; letter-spacing: 1.15px; text-transform: uppercase; }
.site-footer-links a { display: block; width: auto; max-width: 100%; margin: 0 0 10px; color: #eaf0ff !important; font-size: 12px !important; font-weight: 550 !important; line-height: 1.4; text-decoration: none; overflow-wrap: anywhere; }
.site-footer-links a:hover, .site-footer-links a:focus-visible { color: #fff !important; text-decoration: underline; outline: none; }
.site-footer-links .site-footer-team-login { margin-top: 17px; color: #aebce8 !important; font-size: 11px !important; }

.site-footer-bottom {
  display: flex !important;
  justify-content: space-between;
  gap: 20px;
  max-width: 1176px;
  padding: 17px max(24px, calc((100vw - 1176px) / 2));
  margin: auto;
  border-top: 1px solid rgba(211, 223, 255, 0.2);
  color: #91a3d8;
  font-size: 10px;
}

@media (max-width: 720px) {
  .site-footer-inner { grid-template-columns: 1fr; gap: 38px; padding-top: 43px; padding-bottom: 36px; }
  .site-footer-links { gap: 22px; }
  .site-footer-bottom { flex-direction: column; gap: 6px; padding-top: 14px; padding-bottom: 18px; }
}

@media (max-width: 450px) { .site-footer-links { grid-template-columns: 1fr 1fr; } }
.site-footer-links .site-footer-savings{display:flex!important;align-items:center;justify-content:space-between;gap:10px;max-width:258px;margin:0 0 10px!important;padding:11px 12px!important;border:1px solid #9db3ff!important;border-radius:10px!important;background:linear-gradient(135deg,#f0f4ff,#fff)!important;color:#102ba4!important;text-decoration:none!important;line-height:1.18!important;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.site-footer-links .site-footer-savings:hover,.site-footer-links .site-footer-savings:focus-visible{border-color:#3158d4!important;box-shadow:0 8px 18px rgba(35,67,180,.13);transform:translateY(-1px)}.site-footer-savings span{display:grid;gap:3px}.site-footer-savings strong{font-size:13px;font-weight:800}.site-footer-savings small{font-size:11px;color:#52617d}.site-footer-savings i{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#3158d4;color:#fff;font-style:normal;font-size:16px;flex:0 0 auto}

/* Shared footer layout: viewport padding belongs to the full-width footer, not a max-width grid. */
.site-footer-inner{box-sizing:border-box;width:100%;max-width:none;grid-template-columns:minmax(290px,.85fr) minmax(500px,1.15fr);gap:clamp(48px,6vw,88px)}
.site-footer-bottom{box-sizing:border-box;width:100%;max-width:none}
.site-footer-brand{display:flex!important;flex-direction:column;align-items:flex-start;align-self:start;min-width:0}
.site-footer-brand p{width:100%;max-width:310px}
.site-footer-links{grid-template-columns:minmax(150px,1.35fr) repeat(2,minmax(120px,1fr));gap:clamp(24px,3vw,42px);min-width:0}
.site-footer-links a{overflow-wrap:normal;word-break:normal}
.site-footer-brand .site-footer-savings{display:flex!important;align-items:center;justify-content:space-between;gap:12px;box-sizing:border-box;width:min(100%,330px);min-width:0;margin:24px 0 0!important;padding:12px 13px!important;border:1px solid #9db3ff!important;border-radius:10px!important;background:linear-gradient(135deg,#f0f4ff,#fff)!important;color:#102ba4!important;text-decoration:none!important;line-height:1.18!important;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.site-footer-brand .site-footer-savings:hover,.site-footer-brand .site-footer-savings:focus-visible{border-color:#3158d4!important;box-shadow:0 8px 18px rgba(35,67,180,.18);transform:translateY(-1px);color:#102ba4!important;outline:none}
.site-footer-savings span{display:grid;gap:3px;min-width:0;flex:1 1 auto;width:auto}.site-footer-savings strong,.site-footer-savings small{display:block;min-width:0;white-space:normal}.site-footer-savings strong{color:#102ba4!important;font-size:13px;font-weight:800}.site-footer-savings small{color:#52617d!important;font-size:11px}.site-footer-savings i{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#3158d4;color:#fff;font-style:normal;font-size:16px;flex:0 0 auto}
@media (max-width:720px){.site-footer-inner{grid-template-columns:1fr;gap:38px}.site-footer-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.site-footer-brand .site-footer-savings{width:min(100%,330px)}}
@media (max-width:450px){.site-footer-links{grid-template-columns:1fr 1fr;gap:22px}.site-footer-brand .site-footer-savings{width:100%;max-width:330px}}
@media (max-width:360px){.site-footer-links{grid-template-columns:1fr}}

@media (max-width:900px){.site-footer-inner{grid-template-columns:1fr;gap:38px}.site-footer-links{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:450px){.site-footer-links{grid-template-columns:1fr 1fr}}
@media (max-width:360px){.site-footer-links{grid-template-columns:1fr}}

/* Keep the shared savings promo legible in full-page captures and at narrow widths. */
.site-footer-brand .site-footer-savings{min-height:64px}
.site-footer-brand .site-footer-savings span{display:flex!important;flex-direction:column;justify-content:center;gap:4px!important}
.site-footer-brand .site-footer-savings strong{font-size:14px!important;line-height:1.35!important;word-spacing:.04em}
.site-footer-brand .site-footer-savings small{font-size:12px!important;line-height:1.35!important;word-spacing:.04em}
