/* =====================================================================
   FOOTER GLOBALE — dalla schermata Stitch "Contatti" (1280px).
   Griglia 12 colonne: marchio 4 · Privacy 2 · Servizi 3 · Contatti 3. Vedi design/DESIGN.md › Components.
   ===================================================================== */
.wp-site-blocks > footer.wp-block-template-part { margin-block-start: 0; }

.mm-footer {
  margin: 0;
  background-color: var(--wp--preset--color--primary-deep);
  border-bottom: 1px solid rgba(1, 76, 152, .6);
  color: var(--wp--preset--color--on-primary-variant);
  font-size: var(--wp--preset--font-size--body-sm);
  line-height: 1.55;
}
.mm-footer p { margin: 0; }
.mm-footer a { color: inherit; text-decoration: none; transition: color .2s; }
.mm-footer a:hover,
.mm-footer a:focus-visible { color: var(--wp--preset--color--surface); }

.mm-footer__inner {
  box-sizing: border-box;
  max-width: 1280px;
  margin: 0 auto;
  padding: 64px var(--wp--style--root--padding-left, 40px) 48px;
}
/* ".wp-block-group." serve a battere i margini del layout "flow" di WordPress sui figli */
.wp-block-group.mm-footer__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 32px; }
.wp-block-group.mm-footer__grid > * { margin: 0; }
.wp-block-group.mm-footer__col { gap: 16px; }

/* Colonna marchio */
.mm-footer__brand { gap: 16px; }
/* Logo del sito reso bianco (come in Stitch: brightness 0 + invert) */
.mm-footer__logo img { display: block; width: auto; height: 32px; filter: brightness(0) invert(1); }
.mm-footer__name {
  font-family: var(--wp--preset--font-family--plus-jakarta-sans);
  font-size: var(--wp--preset--font-size--headline-sm);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.025em;
  color: var(--wp--preset--color--surface);
}
.mm-footer .mm-footer__payoff { line-height: 1; }
/* ".mm-footer__col >" batte ".is-layout-flex > :is(*,div) { margin: 0 }" di WordPress (0,1,1) */
.mm-footer__desc { max-width: 384px; }
.mm-footer__col > .mm-footer__desc { margin-top: 4px; }
.mm-footer__col > .mm-footer__badge { margin-top: 8px; }
.mm-footer__badge {
  padding: 4px 16px;
  border-radius: 9999px;
  background-color: rgba(212, 227, 254, .2);
  color: var(--wp--preset--color--surface);
  font-family: var(--wp--preset--font-family--plus-jakarta-sans);
  font-size: var(--wp--preset--font-size--label-caps);
  font-weight: 600;
  line-height: 1;
  letter-spacing: .05em;
  text-transform: uppercase;
}

/* Titoli di colonna */
.mm-footer__title {
  font-family: var(--wp--preset--font-family--plus-jakarta-sans);
  font-size: var(--wp--preset--font-size--label-caps);
  font-weight: 600;
  line-height: 1;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--wp--preset--color--primary-soft);
}

/* Elenchi di link */
.mm-footer__links { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; list-style: none; }
.mm-footer__links li { margin: 0; }

/* Contatti e dati legali */
.wp-block-group.mm-footer__contacts { gap: 8px; }
.mm-footer__contacts .mm-ico-text { --mm-ico-size: 18px; --mm-ico-gap: 4px; --mm-ico-color: var(--wp--preset--color--primary-soft); }
.mm-footer__piva { padding-top: 4px; color: rgba(201, 221, 245, .8); }
.mm-footer__contacts > .mm-footer__sos-wrap { margin-top: 4px; }
.mm-footer__sos { --mm-ico-size: 16px; }
.mm-footer__sos .wp-block-button__link {
  gap: 4px;
  padding: 4px 16px;
  border-radius: 8px;
  background-color: var(--wp--preset--color--emergency);
  color: #fff;
  font-size: var(--wp--preset--font-size--body-sm);
  font-weight: 600;
  line-height: 20px;
  white-space: nowrap; /* a 1024px la colonna e' 4px piu' stretta del bottone */
  transition: background-color .2s;
}
.mm-footer__sos .wp-block-button__link:hover,
.mm-footer__sos .wp-block-button__link:focus-visible { background-color: var(--wp--preset--color--emergency-deep); color: #fff; }

/* Responsive: 1 colonna (mobile) · 2 colonne da 768px · 12 colonne da 1024px (come Stitch) */
@media (min-width: 768px) {
  .wp-block-group.mm-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  .wp-block-group.mm-footer__grid { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  .mm-footer__col--brand { grid-column: span 4; }
  .mm-footer__col--privacy { grid-column: span 2; }
  .mm-footer__col--servizi,
  .mm-footer__col--contatti { grid-column: span 3; }
}
