:root{
  --ef-footer-bg:#080f1e;
  --ef-footer-bg-2:#0b1426;
  --ef-footer-line:rgba(255,255,255,.09);
  --ef-footer-heading:#f4f7fc;
  --ef-footer-text:#aebbd0;
  --ef-footer-muted:#7f8da5;
  --ef-footer-accent:#5d9df6;
}

/* Canonical ExchangeFacts footer.
   This deliberately has its own namespace so page-level footer rules cannot
   turn it white or change its spacing. */
body footer.ef-footer{
  display:block;
  margin:64px 0 0;
  padding:0 !important;
  border:0 !important;
  border-top:1px solid var(--ef-footer-line) !important;
  background:
    radial-gradient(circle at 80% 0,rgba(37,99,235,.09),transparent 34%),
    linear-gradient(180deg,var(--ef-footer-bg-2) 0,var(--ef-footer-bg) 100%) !important;
  color:var(--ef-footer-text) !important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.ef-footer .wrap{
  width:min(100% - 48px,1320px);
  max-width:1320px;
  margin-inline:auto;
  padding-inline:0;
}

.ef-footer .footgrid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:42px 72px !important;
  margin:0 auto !important;
  padding:52px 0 42px !important;
}

.ef-footer .footcol{
  min-width:0;
}

.ef-footer .footcol strong{
  display:block;
  margin:0 0 15px;
  color:var(--ef-footer-heading) !important;
  font-size:14px;
  font-weight:800;
  letter-spacing:-.01em;
}

.ef-footer .footcol:not(:first-child) strong{
  color:var(--ef-footer-accent) !important;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.ef-footer .footcol a{
  display:block;
  width:max-content;
  max-width:100%;
  padding:5px 0 !important;
  color:var(--ef-footer-text) !important;
  font-size:13.5px !important;
  font-weight:600 !important;
  line-height:1.45;
  text-decoration:none !important;
  transition:color .16s ease,transform .16s ease;
}

.ef-footer .footcol a:hover,
.ef-footer .footcol a:focus-visible{
  color:#fff !important;
  transform:translateX(2px);
}

.ef-footer .footcol a:focus-visible,
.ef-footer .footsocial a:focus-visible{
  outline:2px solid var(--ef-footer-accent);
  outline-offset:4px;
  border-radius:4px;
}

.ef-footer .footbottom{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  margin:0 auto !important;
  padding:18px 0 20px !important;
  border-top:1px solid var(--ef-footer-line) !important;
  color:var(--ef-footer-muted) !important;
  font-size:12.5px !important;
  line-height:1.5;
}

.ef-footer .footsocial{
  display:inline-flex;
  align-items:center;
  gap:9px;
}

.ef-footer .footsocial a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:9px;
  color:#d9e3f2 !important;
  transition:background .16s ease,border-color .16s ease,color .16s ease;
}

.ef-footer .footsocial a:hover{
  border-color:rgba(93,157,246,.7);
  background:rgba(37,99,235,.16);
  color:#fff !important;
}

@media(max-width:760px){
  body footer.ef-footer{margin-top:48px}
  .ef-footer .wrap{width:min(100% - 40px,1320px)}
  .ef-footer .footgrid{
    grid-template-columns:1fr 1fr !important;
    gap:34px 28px !important;
    padding:42px 0 34px !important;
  }
  .ef-footer .footcol:first-child{grid-column:1/-1}
}

@media(max-width:480px){
  .ef-footer .footgrid{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }
  .ef-footer .footcol:first-child{grid-column:auto}
  .ef-footer .footbottom{
    align-items:flex-start !important;
    flex-direction:column !important;
  }
}
