/*
 * footer.css — v2
 * Footer modernizado — Target Consulting
 */

/* ══════════════════════════════════════════
   BASE
   ══════════════════════════════════════════ */
footer.footer {
  background: #0B1F4A !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 72px 0 0 !important;
}

/* ── Gráfica de barras — esquina derecha ── */
footer.footer::before {
  content: '';
  position: absolute;
  top: 20px;
  right: 40px;
  width: 260px;
  height: 180px;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 260 180' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='10' y='100' width='24' height='70' rx='4' fill='rgba(30,95,211,0.18)'/%3E%3Crect x='46' y='60' width='24' height='110' rx='4' fill='rgba(30,95,211,0.14)'/%3E%3Crect x='82' y='30' width='24' height='140' rx='4' fill='rgba(30,95,211,0.20)'/%3E%3Crect x='118' y='70' width='24' height='100' rx='4' fill='rgba(30,95,211,0.13)'/%3E%3Crect x='154' y='45' width='24' height='125' rx='4' fill='rgba(13,140,109,0.18)'/%3E%3Crect x='190' y='80' width='24' height='90' rx='4' fill='rgba(13,140,109,0.14)'/%3E%3Crect x='226' y='20' width='24' height='150' rx='4' fill='rgba(13,140,109,0.20)'/%3E%3Cline x1='0' y1='170' x2='260' y2='170' stroke='rgba(255,255,255,0.07)' stroke-width='1'/%3E%3C/svg%3E") no-repeat center/contain;
  pointer-events: none;
  z-index: 0;
}

/* ── Gráfica de puntos — esquina izquierda ── */
footer.footer::after {
  content: '';
  position: absolute;
  bottom: 30px;
  left: 20px;
  width: 220px;
  height: 160px;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 220 160' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='20' cy='130' r='5' fill='rgba(30,95,211,0.25)'/%3E%3Ccircle cx='55' cy='90' r='5' fill='rgba(30,95,211,0.20)'/%3E%3Ccircle cx='90' cy='110' r='5' fill='rgba(30,95,211,0.22)'/%3E%3Ccircle cx='125' cy='55' r='5' fill='rgba(13,140,109,0.25)'/%3E%3Ccircle cx='160' cy='75' r='5' fill='rgba(13,140,109,0.20)'/%3E%3Ccircle cx='195' cy='30' r='5' fill='rgba(13,140,109,0.28)'/%3E%3Cpolyline points='20,130 55,90 90,110 125,55 160,75 195,30' fill='none' stroke='rgba(30,95,211,0.15)' stroke-width='1.5' stroke-dasharray='4,3'/%3E%3Ccircle cx='20' cy='130' r='2.5' fill='rgba(255,255,255,0.15)'/%3E%3Ccircle cx='55' cy='90' r='2.5' fill='rgba(255,255,255,0.12)'/%3E%3Ccircle cx='90' cy='110' r='2.5' fill='rgba(255,255,255,0.12)'/%3E%3Ccircle cx='125' cy='55' r='2.5' fill='rgba(255,255,255,0.15)'/%3E%3Ccircle cx='160' cy='75' r='2.5' fill='rgba(255,255,255,0.12)'/%3E%3Ccircle cx='195' cy='30' r='2.5' fill='rgba(255,255,255,0.18)'/%3E%3C/svg%3E") no-repeat center/contain;
  pointer-events: none;
  z-index: 0;
}

footer.footer .container,
footer.footer .row {
  position: relative;
  z-index: 1;
}

/* ══════════════════════════════════════════
   LOGO + CONTACTO
   ══════════════════════════════════════════ */
footer.footer .footer-logo img {
  max-width: 120px !important;
  margin-bottom: 20px !important;
}

footer.footer .footer-info p {
  font-size: 13px !important;
  color: rgba(255,255,255,0.60) !important;
  line-height: 1.7 !important;
  margin-bottom: 10px !important;
}

footer.footer .footer-info p i,
footer.footer .footer-info .iconpfooter {
  color: #1E5FD3 !important;
}

footer.footer .footer-info a {
  color: rgba(255,255,255,0.60) !important;
  text-decoration: none !important;
}
footer.footer .footer-info a:hover { color: #fff !important; }

/* Redes sociales */
footer.footer .footer-social {
  list-style: none !important;
  padding: 0 !important;
  margin: 20px 0 0 !important;
  display: flex !important;
  gap: 10px !important;
}
footer.footer .footer-social li a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  background: rgba(255,255,255,0.07) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 10px !important;
  transition: all 0.2s !important;
}
footer.footer .footer-social li a:hover {
  background: #1E5FD3 !important;
  border-color: #1E5FD3 !important;
  transform: translateY(-3px) !important;
}
footer.footer .footer-social li a img {
  width: 18px !important;
  height: 18px !important;
  filter: brightness(0) invert(1) !important;
}

/* ══════════════════════════════════════════
   TÍTULOS DE COLUMNA
   ══════════════════════════════════════════ */
footer.footer h6.widget-title {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.40) !important;
  margin: 0 0 22px !important;
  padding-bottom: 12px !important;
  position: relative !important;
}
footer.footer h6.widget-title::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0;
  width: 28px; height: 2px;
  background: linear-gradient(90deg, #1E5FD3, #0D8C6D);
  border-radius: 2px;
}

/* ══════════════════════════════════════════
   NEWSLETTER
   ══════════════════════════════════════════ */
footer.footer .footerp {
  font-size: 13px !important;
  color: rgba(255,255,255,0.55) !important;
  margin-bottom: 18px !important;
  line-height: 1.6 !important;
}

footer.footer input[type="email"] {
  width: 100% !important;
  padding: 13px 18px !important;
  background: rgba(255,255,255,0.07) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  border-radius: 12px !important;
  color: #fff !important;
  font-size: 13px !important;
  font-family: 'Poppins', sans-serif !important;
  outline: none !important;
  box-sizing: border-box !important;
  margin-bottom: 10px !important;
  transition: border-color 0.2s !important;
}
footer.footer input[type="email"]::placeholder { color: rgba(255,255,255,0.28) !important; }
footer.footer input[type="email"]:focus { border-color: #1E5FD3 !important; }

/* ── Botón de registro — NO afectar con footer-menu ── */
footer.footer button[type="submit"] {
  display: block !important;
  width: 100% !important;
  padding: 13px !important;
  background: linear-gradient(135deg, #1E5FD3, #0D8C6D) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  font-family: 'Poppins', sans-serif !important;
  border: none !important;
  border-radius: 12px !important;
  cursor: pointer !important;
  letter-spacing: 0.5px !important;
  box-shadow: 0 4px 16px rgba(13,140,109,0.25) !important;
  transition: transform 0.2s, box-shadow 0.2s !important;
  /* Cancelar cualquier estilo heredado del footer-menu */
  text-align: center !important;
  list-style: none !important;
}
footer.footer button[type="submit"]::before { display: none !important; }
footer.footer button[type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(13,140,109,0.40) !important;
  color: #fff !important;
}

/* ══════════════════════════════════════════
   LINKS
   ══════════════════════════════════════════ */
footer.footer .footer-menu {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}
footer.footer .footer-menu li a {
  font-size: 13px !important;
  color: rgba(255,255,255,0.58) !important;
  text-decoration: none !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  transition: color 0.2s, gap 0.2s !important;
}
footer.footer .footer-menu li a::before {
  content: '';
  width: 5px; height: 5px;
  background: #1E5FD3;
  border-radius: 50%;
  flex-shrink: 0;
  transition: background 0.2s;
}
footer.footer .footer-menu li a:hover {
  color: #fff !important;
  gap: 12px !important;
}
footer.footer .footer-menu li a:hover::before { background: #0D8C6D; }

/* ══════════════════════════════════════════
   COPYRIGHT
   ══════════════════════════════════════════ */
footer.footer .alt-footer,
footer.footer .footer-bottom {
  margin-top: 52px !important;
  padding: 18px 0 !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
}
footer.footer .copyright {
  font-size: 12px !important;
  color: rgba(255,255,255,0.28) !important;
  text-align: center !important;
  margin: 0 !important;
}

/* Ocultar viñetas en links vacíos (columna IT Services) */
footer.footer .footer-menu li a[href=""] ,
footer.footer .footer-menu li a:empty::before,
footer.footer .footer-menu li:empty {
  display: none !important;
}

footer.footer .footer-menu li a[href="server-and-storage-systems.html"]::before,
footer.footer .footer-menu li a[href="it-support-services.html"]::before,
footer.footer .footer-menu li a[href="desktop-and-server-virtualization.html"]::before,
footer.footer .footer-menu li a[href="network-and-security-solutions.html"]::before,
footer.footer .footer-menu li a[href="cloud-services.html"]::before,
footer.footer .footer-menu li a[href="tracing-solutions.html"]::before {
  display: none !important;
}

/* Ocultar li completos de la columna IT Services si el nombre está vacío */
footer.footer .footer-menu li a:not([href=""]) {
  /* solo mostrar los que tengan texto */
}

/* Ocultar columna IT Services completa (datos vacíos en footer.js) */
footer.footer [class*="col-lg"]:has(.footer-menu li a[href="server-and-storage-systems.html"]) {
  display: none !important;
}