/* ==========================================================================
   Footer: logo y financiación, dirección, contacto, páginas legales,
   sello Kit Digital y copyright. Sin redes sociales.
   Marcado en template-parts/footer/site-footer.php.
   ========================================================================== */

/* Reset frente a Divi (ver header.css) */
:where(.site-footer) :is(p, h2, ul, li, address) {
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-footer {
  background: var(--color-cream);
  color: var(--color-ink);
  font-family: var(--font-sans);
  font-size: var(--fs-base);
  line-height: 1.5;
}

.site-footer__top {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(0, 1fr));
  gap: 48px;
  padding-block: 80px 64px;
}

.site-footer__brand {
  display: grid;
  align-content: start;
  justify-items: start;
  gap: 0px;
}

.site-footer__logo { width: 180px; height: auto; mix-blend-mode: multiply; }

.site-footer__financing {
  display: inline-flex;
  align-items: center;
  gap: 0;
  flex-direction: column;
  padding: 0 8px;
  color: var(--color-ink);
  font-size: var(--fs-sm);
  font-weight: 600;
  text-decoration: none;
  transition: border-color var(--transition);
}
.site-footer__financing:hover { border-color: var(--color-ink); color: var(--color-ink); }

.site-footer__financing-logo { width: 120px; height: auto; }

/* El título es sans en mayúsculas: se pisa la fuente display que base.css da a los h2 */
.site-footer__heading {
  margin-bottom: 20px;
  color: var(--color-ink);
  font-family: var(--font-sans);
  font-size: var(--fs-xs);
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: var(--tracking-caps);
  text-transform: uppercase;
}

.site-footer__text {
  color: var(--color-graphite);
  font-style: normal;
  line-height: 1.7;
}

.site-footer__list { display: grid; gap: 10px; }

.site-footer__link {
  color: var(--color-graphite);
  text-decoration: none;
  overflow-wrap: anywhere;
}
.site-footer__link:hover,
.site-footer__link[aria-current="page"] {
  color: var(--color-ink);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.site-footer__seal {
  padding-block: 20px;
  border-block: 1px solid var(--color-line);
}

.site-footer__seal-img { display: block; width: 100%; max-width: 960px; height: auto; margin-inline: auto; }

.site-footer__bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 24px;
  padding-block: 24px;
  color: var(--color-graphite);
  font-size: var(--fs-sm);
}

/* ---------- Responsive ---------- */

/* Tablet: el logo y Frakmenta ocupan una fila arriba de las tres columnas */
@container site (max-width: 1023px) {
  .site-footer__top { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .site-footer__brand {
    grid-column: 1 / -1;
    grid-auto-flow: column;
    align-items: center;
    justify-content: space-between;
  }
}

/* Mobile: una columna */
@container site (max-width: 767px) {
  .site-footer__top { grid-template-columns: 1fr; gap: 36px; padding-block: 56px 40px; }
  .site-footer__brand { grid-auto-flow: row; }
  .site-footer__heading { margin-bottom: 12px; }
  .site-footer__bottom { flex-direction: column; }
}
