/* ============================================================
   FOOTER — estilos (extraídos de partials/footer.html). Scoped bajo .wsx-footer.
   ============================================================ */
.wsx-footer{
  --bg:#04101C; --text:#F0F4F8; --muted:#9FB4C6; --dim:#5B7184;
  --teal:#038F8F; --cyan:#00E5FF; --green:#2FE6A8;
  --line:rgba(0,229,255,.12); --line-soft:rgba(255,255,255,.08);
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  font-size:16px; color:var(--muted); line-height:1.6; background:var(--bg); width:100%;
}
:root[data-theme="light"] .wsx-footer{
  --bg:#EEF3F8; --text:#0A1628; --muted:#41566A; --dim:#7E93A6;
  --cyan:#0098C9; --line:rgba(2,98,98,.16); --line-soft:rgba(10,22,40,.08);
}
.wsx-footer *{box-sizing:border-box}
.wsx-footer a{color:inherit;text-decoration:none;transition:.2s}
.wsx-footer img{display:block}
.wsx-footer .wrap{max-width:1280px;margin:0 auto;padding:64px 24px 30px}

.wsx-footer .foot-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.4fr;gap:40px;
  padding-bottom:40px;border-bottom:1px solid var(--line-soft)}

/* brand */
.wsx-footer .brand{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.wsx-footer .brand img{width:44px;height:44px;border-radius:50%;box-shadow:0 0 0 1px rgba(0,229,255,.18),0 6px 20px -6px rgba(0,229,255,.5)}
.wsx-footer .brand .name{font-family:'Inter';font-weight:800;font-size:24px;color:#fff;letter-spacing:-.01em}
.wsx-footer .brand .name b{color:var(--cyan);font-weight:800}
:root[data-theme="light"] .wsx-footer .brand .name{color:#0A1628}
.wsx-footer .foot-brand p{font-size:15px;line-height:1.7;max-width:44ch;margin:0 0 18px}
.wsx-footer .branches{display:flex;flex-wrap:wrap;gap:7px}
.wsx-footer .branches span{font-size:13px;color:var(--muted);border:1px solid var(--line);border-radius:8px;padding:5px 11px;background:rgba(0,229,255,.03)}

/* link columns */
.wsx-footer .col h5{font-family:'Inter';color:#fff;font-size:13px;letter-spacing:.1em;text-transform:uppercase;margin:0 0 18px;font-weight:700}
:root[data-theme="light"] .wsx-footer .col h5{color:#0A1628}
.wsx-footer .col a{display:block;font-size:15px;margin-bottom:13px;color:var(--muted)}
.wsx-footer .col a:hover{color:var(--cyan)}
.wsx-footer .contact-line{font-size:15px;line-height:1.7;margin-top:4px;color:var(--muted)}
.wsx-footer .mail{color:var(--cyan);cursor:pointer;background:none;border:0;padding:0;font:inherit;font-size:15px;display:inline-block;margin-bottom:13px}
.wsx-footer .mail:hover{text-decoration:underline}

/* bottom bar */
.wsx-footer .foot-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:24px;font-size:14px;color:var(--dim)}
.wsx-footer .foot-bottom .legal{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.wsx-footer .foot-bottom .legal a{color:var(--muted)}
.wsx-footer .foot-bottom .legal a:hover{color:var(--cyan)}
.wsx-footer .foot-bottom .sep{color:var(--dim)}

@media(max-width:900px){
  .wsx-footer .foot-grid{grid-template-columns:1fr 1fr;gap:32px}
  .wsx-footer .foot-brand{grid-column:1 / -1}
}
@media(max-width:560px){
  .wsx-footer .foot-grid{grid-template-columns:1fr}
  .wsx-footer .foot-bottom{flex-direction:column;align-items:flex-start}
}
