/* Banner dei cookie (consenso.js). Stesso peso per Rifiuta, Scegli e Accetta; contrasto almeno 4,5:1; bersagli di 44 px. */
.mz-cookie {
  position: fixed; z-index: 2147483000; left: 16px; right: 16px; bottom: 16px; max-width: 620px; margin: 0 auto;
  background: #132230; color: #ffffff; border-radius: 16px; padding: 20px 22px 18px; box-shadow: 0 10px 40px rgba(0, 0, 0, .35);
  font: 15px/1.55 Arial, Helvetica, sans-serif;
}
.mz-cookie p { margin: 0 0 12px; color: #ffffff; }
.mz-cookie a { color: #8EC3EA; text-decoration: underline; }
.mz-cookie a:focus-visible, .mz-cookie button:focus-visible, .mz-cookie input:focus-visible, .mz-cookie-preferenze:focus-visible { outline: 3px solid #F5A800; outline-offset: 2px; }
.mz-cookie-titolo { font-size: 18px; font-weight: 700; padding-right: 36px; }
.mz-cookie-x {
  position: absolute; top: 8px; right: 8px; width: 44px; height: 44px; border: 0; background: transparent; color: #ffffff;
  font-size: 28px; line-height: 44px; cursor: pointer; border-radius: 50%;
}
.mz-cookie-azioni { display: flex; flex-wrap: wrap; gap: 10px; }
.mz-cookie-btn {
  flex: 1 1 140px; min-height: 44px; padding: 10px 16px; border-radius: 999px; border: 2px solid #ffffff;
  background: #ffffff; color: #132230; font: 700 15px/1.2 Arial, Helvetica, sans-serif; cursor: pointer;
}
.mz-cookie-btn:hover { background: #E6F3FA; }
.mz-cookie--pannello { max-height: calc(100vh - 32px); overflow-y: auto; }
.mz-cookie-voce { border-top: 1px solid rgba(255, 255, 255, .2); padding: 10px 0; }
.mz-cookie-voce label { display: flex; align-items: center; gap: 10px; min-height: 44px; cursor: pointer; }
.mz-cookie-voce input { width: 22px; height: 22px; accent-color: #F5A800; }
.mz-cookie-voce span { display: block; font-size: 14px; color: #D5E3EE; }
.mz-cookie-nota { font-size: 14px; }
.mz-cookie-preferenze {
  position: fixed; z-index: 2147482999; left: 12px; bottom: 12px; min-height: 44px; padding: 8px 14px; border-radius: 999px;
  border: 1px solid #132230; background: #ffffff; color: #132230; font: 700 13px/1.2 Arial, Helvetica, sans-serif; cursor: pointer;
  box-shadow: 0 2px 10px rgba(0, 0, 0, .2);
}
@media (max-width: 767px) { .mz-cookie-preferenze { bottom: 76px; } } /* sopra la barra dei pulsanti su telefono */
.mz-segnaposto-esterno {
  background: #E6F3FA; color: #132230; border: 1px solid #B9CCDB; border-radius: 12px; padding: 18px; margin: 0 0 12px;
  font: 15px/1.55 Arial, Helvetica, sans-serif;
}
.mz-segnaposto-esterno p { margin: 0 0 12px; }
.mz-segnaposto-esterno a { color: #35668D; }
.mz-segnaposto-esterno .mz-cookie-btn { flex: none; background: #132230; color: #ffffff; border-color: #132230; }
@media print { .mz-cookie, .mz-cookie-preferenze { display: none; } }
