/* Phase 9W: restore the original homepage footer design exactly across public and authenticated pages.
   This file deliberately touches FOOTER ONLY. Header fixes remain in earlier CSS. */
body .footer,
body.admin-shell-page .footer,
body.auth-unified-page .footer,
body.auth-investor-page .footer,
body.auth-issuer-page .footer,
body.issuer-body .footer,
body.pp-admin-homepage-frame .footer{
  background:#061746!important;
  color:#d9e4ff!important;
  position:relative!important;
  overflow:hidden!important;
  margin-top:40px!important;
  padding:0!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
}
body .footer:before,
body.admin-shell-page .footer:before,
body.auth-unified-page .footer:before,
body.auth-investor-page .footer:before,
body.auth-issuer-page .footer:before,
body.issuer-body .footer:before,
body.pp-admin-homepage-frame .footer:before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:auto auto -160px -140px!important;
  width:520px!important;
  height:520px!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(255,255,255,.08),transparent 60%)!important;
  pointer-events:none!important;
}
body .footer .wide,
body .footer-bottom{
  width:min(var(--wide,1420px),calc(100% - 72px))!important;
  max-width:var(--wide,1420px)!important;
  margin-inline:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}
body .footer-grid{
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  grid-template-columns:minmax(210px,.92fr) minmax(135px,.72fr) minmax(150px,.78fr) minmax(170px,.9fr) minmax(150px,.78fr) minmax(310px,1.45fr)!important;
  gap:34px!important;
  align-items:start!important;
  padding:58px 0 42px!important;
}
body .footer-brand{max-width:260px!important;min-width:0!important;grid-column:auto!important;}
body .footer-brand p{max-width:250px!important;}
body .footer img,
body .footer-brand img,
body .footer-secondary-logo img{
  width:auto!important;
  max-width:168px!important;
  height:auto!important;
  background:transparent!important;
  padding:0!important;
  display:block!important;
  margin:0 0 16px!important;
}
body .footer h4{
  color:#fff!important;
  margin:0 0 18px!important;
  font-size:17px!important;
  line-height:1.25!important;
  font-weight:900!important;
  opacity:1!important;
}
body .footer a,
body .footer p{
  display:block!important;
  color:#c7d5f5!important;
  font-size:14px!important;
  line-height:1.7!important;
  margin:0 0 10px!important;
  text-decoration:none!important;
  opacity:1!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
body .footer a:hover{color:var(--gold,#d99a00)!important;}
body .footer-mini{display:none!important;margin:0!important;}
body .footer-mini a{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  height:auto!important;
  margin:0 8px 8px 0!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1.2!important;
  background:transparent!important;
}
body .footer .social{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:10px!important;
  margin-top:14px!important;
  white-space:normal!important;
}
body .footer .social a{
  display:grid!important;
  place-items:center!important;
  flex:0 0 34px!important;
  width:34px!important;
  height:34px!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  margin:0!important;
  padding:0!important;
  font-weight:800!important;
  line-height:1!important;
}
body .footer-secondary-logo{margin-top:15px!important;}
body .footer-contact{min-width:0!important;max-width:none!important;grid-column:auto!important;}
body .footer-contact p,
body .footer-contact a{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
body .footer-bottom{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  flex-wrap:wrap!important;
  border-top:1px solid rgba(255,255,255,.13)!important;
  margin-top:0!important;
  padding:18px 0!important;
  color:#b8c7e8!important;
  font-size:13px!important;
  line-height:1.5!important;
  text-align:left!important;
}
body .footer-bottom span:last-child{margin-left:auto!important;text-align:right!important;}

body .footer-address{white-space:normal!important;overflow-wrap:normal!important;}
body .footer-nowrap{white-space:nowrap!important;}
body .footer-contact .footer-address{max-width:none!important;}
@media(max-width:1180px){
  body .footer-grid{grid-template-columns:1.2fr 1fr 1fr!important;gap:30px!important;}
  body .footer-brand{grid-column:auto!important;}
  body .footer-contact{grid-column:auto!important;}
}
@media(max-width:760px){
  body .footer,
  body.admin-shell-page .footer,
  body.auth-unified-page .footer,
  body.auth-investor-page .footer,
  body.auth-issuer-page .footer,
  body.issuer-body .footer,
  body.pp-admin-homepage-frame .footer{padding-bottom:62px!important;margin-top:32px!important;}
  body .footer .wide,
  body .footer-bottom{width:calc(100% - 32px)!important;max-width:none!important;}
  body .footer-grid{grid-template-columns:1fr!important;gap:24px!important;padding:42px 0 28px!important;}
  body .footer-brand{grid-column:auto!important;}
  body .footer-brand p{max-width:none!important;}
  body .footer-contact{grid-column:auto!important;}
  body .footer-bottom{display:block!important;text-align:left!important;padding:16px 0!important;}
  body .footer-bottom span{display:block!important;margin:0 0 8px!important;text-align:left!important;}
  body .footer-bottom span:last-child{margin-left:0!important;text-align:left!important;}
}


/* Phase 9AA footer social final refinement */
body .footer .social{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:8px!important;margin-top:14px!important;white-space:nowrap!important;}
body .footer .social a{width:30px!important;height:30px!important;flex:0 0 30px!important;border-radius:10px!important;font-size:12px!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:transform .22s ease, background .22s ease, box-shadow .22s ease, border-color .22s ease!important;}
body .footer .social a:hover{transform:translateY(-3px)!important;background:#c89b2c!important;border-color:#c89b2c!important;color:#fff!important;box-shadow:0 10px 22px rgba(200,155,44,.35)!important;}
