/* ═══════════════════════════════════════════════════════════════
   FOOTER — una sola versión, tematizada igual que el header.
   ═══════════════════════════════════════════════════════════════ */

.pie {
  background: var(--bg);
  border-top: 1px solid var(--border);
  padding: 72px var(--pad) 40px;
}

/* CINCO columnas: el logo, las TRES de $FOOTER_COLUMNAS y el bloque de
   contacto. Eran cuatro; al entrar «Services» la quinta se caía a una
   segunda fila ella sola, porque una rejilla solo coloca los hijos que
   sus columnas declaran.

   El hueco baja de 48 a 40: con cinco columnas dentro de los mismos
   1160px, a 48 el ancho útil de cada una se quedaba en 168px y
   «Developer» rozaba el borde. */
.footer-grid {
  display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr 1fr;
  gap: 40px; align-items: start;
  max-width: 1160px; margin: 0 auto;
  padding-bottom: 56px;
  border-bottom: 1px solid var(--border);
}

.footer-logo { display: inline-block; color: var(--tinta-alta); text-decoration: none; }
.footer-logo .logo-neiyoz { display: block; opacity: .9; }

.footer-social { display: flex; gap: 8px; margin-top: 24px; }
.footer-social-link {
  display: flex; align-items: center; justify-content: center;
  width: 32px; height: 32px; border-radius: 8px;
  border: 1px solid var(--border); text-decoration: none;
  transition: border-color .2s, background .2s;
}
.footer-social-link:hover { border-color: var(--nav-btn-brd-h); background: var(--nav-hover); }
.footer-social-link svg { width: 15px; height: 15px; fill: var(--muted); transition: fill .2s; }
.footer-social-link:hover svg { fill: var(--tinta-alta); }

.footer-col-title { font-size: 13.5px; font-weight: 400; color: var(--muted); margin-bottom: 20px; }
.footer-col-links { display: flex; flex-direction: column; gap: 14px; }
.footer-col-link {
  font-size: 13.5px; color: var(--tinta-alta); text-decoration: none;
  transition: opacity .15s;
}
.footer-col-link:hover { opacity: .5; }

.footer-contact-item  { margin-bottom: 14px; }
.footer-contact-label { font-size: 13px; color: var(--muted); margin-bottom: 4px; }
.footer-contact-val   {
  display: block; font-size: 13.5px; color: var(--tinta-alta);
  text-decoration: none; transition: opacity .15s;
}
.footer-contact-val:hover { opacity: .6; }

.footer-bottom {
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 12px;
  max-width: 1160px; margin: 28px auto 0;
}
.footer-copy { font-size: 12.5px; color: var(--muted); }
.footer-legal { display: flex; gap: 20px; }
.footer-legal a {
  font-size: 12.5px; color: var(--muted); text-decoration: none;
  transition: opacity .15s;
}
.footer-legal a:hover { opacity: .7; }

@media (max-width: 960px) {
  .footer-grid { grid-template-columns: 1fr 1fr; padding: 0 0 48px; }
}
@media (max-width: 600px) {
  .pie { padding: 48px var(--pad) 32px; }
  .footer-grid { grid-template-columns: 1fr; gap: 36px; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }
  .footer-legal { flex-wrap: wrap; gap: 10px; }
}
