@charset "UTF-8";
.site-footer-partners {
  background: var(--color-bg-default-light);
  padding: 40px 72px;
  display: flex;
  justify-content: center;
}
.site-footer-partners .partner-logos {
  display: flex;
  gap: 32px;
  flex-wrap: wrap;
  justify-content: center;
}
.site-footer-partners .partner-logos img {
  background: var(--color-neutral-50);
  border-radius: 8px;
  height: 50px;
  width: 160px;
  object-fit: contain;
}

.site-footer {
  background: var(--color-bg-color);
  padding: 40px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 88px;
  text-align: center;
  /* mod_custom avvolge sempre il contenuto in un <div class="mod-custom">: senza
     "sciogliere" quel contenitore i due <p> non sono più figli diretti del flex/grid
     del footer e la spaziatura/allineamento si rompe. */
}
.site-footer .footer-info {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 0 72px;
  font-size: var(--text-body-size);
  text-align: left;
}
.site-footer .footer-info .mod-custom,
.site-footer .footer-legal .mod-custom {
  display: contents;
}
.site-footer .footer-contact-text {
  text-align: right;
}
.site-footer .footer-logo {
  font-family: var(--font-display);
}
.site-footer .footer-logo p {
  font-size: 56px;
  line-height: 1.15;
  margin: 0;
}
.site-footer .footer-legal {
  font-size: var(--text-caption-size);
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 0 72px;
}
.site-footer .footer-legal .footer-links {
  display: flex;
  gap: 36px;
}

@media (max-width: 960px) {
  .site-footer .footer-info,
  .site-footer .footer-legal {
    flex-direction: column;
    gap: 16px;
    padding: 0 16px;
  }
  /* Il footer nel Figma mobile mantiene le dimensioni desktop (non segue la scala
     mobile/*): senza questa eccezione erediterebbe --text-body-size ridotto a 16px. */
  .site-footer .footer-info {
    font-size: 18px;
  }
}
