/* ========== Monkey Widget – FOOTER (final limpio) ========== */

/* Si el footer quedó dentro de .container, forzamos a ocupar todo el ancho */
.container > .site-footer { grid-column: 1 / -1; width: 100%; }

/* ----- Footer principal oscuro ----- */
.site-footer{
  background:#0f2542;
  color:#e8eff8;
  margin-top:24px;
  border-top:4px solid var(--blue, #003d76);
}

/* Contenido del footer (3 columnas) */
.footer__inner{
  max-width:1100px;
  margin:0 auto;
  padding:20px 18px;
  display:grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap:18px;
}

.footer__brand{ display:flex; gap:12px; align-items:flex-start; }
.footer__logo{ width:36px; height:36px; object-fit:contain; filter: drop-shadow(0 1px 0 rgba(0,0,0,.2)); }
.footer__title{ font-weight:800; letter-spacing:.08em; margin:0; color:#fff; }
.footer__subtitle{ margin:2px 0 0; font-size:12px; color:#c7d6ec; }

.footer__col h4{ margin:0 0 8px 0; font-size:14px; color:#ffffff; letter-spacing:.02em; }
.footer__links{ list-style:none; margin:0; padding:0; }
.footer__links li{ margin:6px 0; }
.footer__links a{ color:#cfe2ff; text-decoration:none; }
.footer__links a:hover{ text-decoration:underline; }

.footer__contact{ font-size:13px; color:#dbe7f8; }
.footer__contact a{ color:#cfe2ff; text-decoration:underline; }

.footer__social{ display:flex; gap:10px; margin-top:10px; }
.footer__social a{
  width:32px; height:32px; border-radius:50%;
  background:#17365f; display:inline-flex; align-items:center; justify-content:center;
  border:1px solid #2a4a78;
}
.footer__social a:hover{ filter:brightness(1.05); }

/* ----- Franja legal inferior CLARA con crédito ----- */
.footer__legal{
  background:#EFEFEF;   /* claro */
  color:#333;
  border-top:1px solid #e6e6e6;
}
.footer__legal-inner{
  max-width:1100px;
  margin:0 auto;
  padding:14px 18px;
  display:flex; gap:12px; align-items:center; justify-content:flex-start;
  font-size:12px;
}

.footer-credit{ display:flex; align-items:center; gap:10px; }
.footer-credit__logo{ width:28px; height:28px; object-fit:contain; opacity:.8; }
.footer__legal a{ color:#1b4c9c; text-decoration:underline; }
.footer__legal a:hover{ text-decoration:none; }

/* ----- Responsive ----- */
@media (max-width: 900px){
  .footer__inner{ grid-template-columns: 1fr; }
}

/* Ajuste de logo: alto consistente y sin deformar */
.footer__logo{ height:36px; width:auto; object-fit:contain; }
.footer-credit__logo{ height:24px; width:auto; object-fit:contain; opacity:.9; }

/* Centrado vertical perfecto del crédito y separación del borde */
.footer__legal-inner{
  padding:14px 18px;
  display:flex; align-items:center; gap:10px;
}

/* Si quedó texto suelto antes del crédito por markup anterior, lo ocultamos: */
.footer__legal-inner > :not(.footer-credit){ display:none; }
