/* ════════════════════════════════════════════
   SOLACE UNIFIED FOOTER
   Drop a <div id="solace-footer-mount"></div>
   on a page; solace-footer.js will render it.
   ════════════════════════════════════════════ */
.solace-footer{background:#0a1220;border-top:1px solid rgba(255,255,255,.07);padding:64px 28px 28px;color:rgba(255,255,255,.6);font-family:'Inter',sans-serif;font-size:14px;line-height:1.7}
.solace-footer *{box-sizing:border-box}
.solace-footer a{color:inherit;text-decoration:none;transition:color .15s}
.solace-footer .sf-wrap{max-width:1240px;margin:0 auto}
.solace-footer .sf-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;gap:48px;margin-bottom:44px}
.solace-footer .sf-brand-logo{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.solace-footer .sf-brand-logo svg{width:32px;height:32px;flex-shrink:0}
.solace-footer .sf-brand-logo .sf-bt{display:flex;flex-direction:column;line-height:1.1}
.solace-footer .sf-brand-logo .sf-bt strong{font-size:14.5px;font-weight:800;color:#fff;letter-spacing:.6px;text-transform:uppercase}
.solace-footer .sf-brand-logo .sf-bt span{font-size:9.5px;color:rgba(255,255,255,.42);font-weight:500;letter-spacing:.6px;margin-top:3px}
.solace-footer .sf-desc{font-size:13.5px;color:rgba(255,255,255,.5);line-height:1.7;margin-bottom:18px;max-width:300px}
.solace-footer .sf-soc{display:flex;gap:8px}
.solace-footer .sf-soc a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);color:rgba(255,255,255,.55);font-size:15px;transition:all .15s}
.solace-footer .sf-soc a:hover{background:rgba(59,130,246,.14);border-color:rgba(59,130,246,.3);color:#60a5fa;transform:translateY(-1px)}
.solace-footer .sf-col h6{font-size:11.5px;font-weight:700;color:#fff;letter-spacing:.1em;text-transform:uppercase;margin:0 0 16px}
.solace-footer .sf-col ul{list-style:none;padding:0;margin:0}
.solace-footer .sf-col li{margin-bottom:10px}
.solace-footer .sf-col a{font-size:13.5px;color:rgba(255,255,255,.5)}
.solace-footer .sf-col a:hover{color:#60a5fa}
.solace-footer .sf-bot{padding-top:24px;border-top:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}
.solace-footer .sf-copy{font-size:12.5px;color:rgba(255,255,255,.38)}
.solace-footer .sf-leg{display:flex;gap:18px;flex-wrap:wrap}
.solace-footer .sf-leg a{font-size:12.5px;color:rgba(255,255,255,.4)}
.solace-footer .sf-leg a:hover{color:#fff}
/* Solace mark colors (mirrors nav) */
.solace-footer .sf-brand-logo .smark-fill{opacity:.25;transition:opacity .35s}
.solace-footer .sf-brand-logo .smark-hex{fill:none;stroke:#60a5fa;stroke-width:1.5;opacity:.7}
.solace-footer .sf-brand-logo .smark-cube path{fill:none;stroke:#60a5fa;stroke-width:1.4;stroke-linejoin:round;opacity:.75}
@media (max-width:1100px){
  .solace-footer .sf-grid{grid-template-columns:1fr 1fr 1fr;gap:40px}
  .solace-footer .sf-brand-col{grid-column:1/-1}
  .solace-footer .sf-desc{max-width:none}
}
@media (max-width:560px){
  .solace-footer{padding:48px 22px 24px}
  .solace-footer .sf-grid{grid-template-columns:1fr 1fr;gap:30px}
  .solace-footer .sf-bot{flex-direction:column;align-items:flex-start;gap:10px}
}
