.elementor-59 .elementor-element.elementor-element-1c9cb53{--display:flex;}/* Start custom CSS for html, class: .elementor-element-29a2090 *//* =========================
   AREA LEGALE - STILE UNICO
========================= */

.mi-legal-page{
  max-width: 980px;
  margin: 0 auto;
  padding: 32px 22px 56px;
  color: #1f2937;
  font-family: inherit;
  line-height: 1.72;
  word-wrap: break-word;
}

.mi-legal-page *{
  box-sizing: border-box;
}

.mi-legal-page h1,
.mi-legal-page h2,
.mi-legal-page h3,
.mi-legal-page h4{
  margin: 0;
  color: #111827;
  font-weight: 700;
  letter-spacing: -0.01em;
}

.mi-legal-page h1{
  font-size: clamp(30px, 3.2vw, 42px);
  line-height: 1.08;
  margin-bottom: 22px;
  padding-bottom: 14px;
  border-bottom: 1px solid #e5e7eb;
}

.mi-legal-page h2{
  font-size: clamp(22px, 2vw, 29px);
  line-height: 1.16;
  margin-top: 34px;
  margin-bottom: 14px;
}

.mi-legal-page h3{
  font-size: clamp(17px, 1.5vw, 21px);
  line-height: 1.24;
  margin-top: 24px;
  margin-bottom: 10px;
}

.mi-legal-page h4{
  font-size: 16px;
  line-height: 1.3;
  margin-top: 18px;
  margin-bottom: 8px;
}

.mi-legal-page p{
  margin: 0 0 14px;
  font-size: 15px;
  color: #374151;
}

.mi-legal-page ul,
.mi-legal-page ol{
  margin: 0 0 16px 0;
  padding-left: 22px;
}

.mi-legal-page li{
  margin-bottom: 8px;
  font-size: 15px;
  color: #374151;
}

.mi-legal-page strong,
.mi-legal-page b{
  color: #111827;
  font-weight: 700;
}

.mi-legal-page a{
  color: #111827;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: opacity .18s ease;
}

.mi-legal-page a:hover{
  opacity: .75;
}

.mi-legal-page hr{
  border: 0;
  height: 1px;
  background: #e5e7eb;
  margin: 28px 0;
}

/* Blocchi visivi più eleganti */
.mi-legal-page > h2:not(:first-of-type){
  padding-top: 8px;
}

/* Liste più leggibili */
.mi-legal-page ul li::marker,
.mi-legal-page ol li::marker{
  color: #6b7280;
}

/* Tabelle eventuali */
.mi-legal-page table{
  width: 100%;
  border-collapse: collapse;
  margin: 18px 0 22px;
  overflow: hidden;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #fff;
}

.mi-legal-page th,
.mi-legal-page td{
  text-align: left;
  padding: 12px 14px;
  border-bottom: 1px solid #e5e7eb;
  font-size: 14px;
  color: #374151;
}

.mi-legal-page th{
  background: #f9fafb;
  color: #111827;
  font-weight: 700;
}

.mi-legal-page tr:last-child td{
  border-bottom: 0;
}

/* Citazioni o box testo se mai servono */
.mi-legal-page blockquote{
  margin: 18px 0;
  padding: 14px 16px;
  border-left: 4px solid #d1d5db;
  background: #f9fafb;
  color: #374151;
  border-radius: 10px;
}

/* Spaziatura tra blocchi testuali */
.mi-legal-page h2 + p,
.mi-legal-page h3 + p,
.mi-legal-page h4 + p{
  margin-top: 2px;
}

/* Se ci sono sezioni con molto testo numerato */
.mi-legal-page p + p{
  margin-top: 0;
}

/* Migliora leggibilità di testi molto lunghi */
.mi-legal-page p,
.mi-legal-page li{
  hyphens: auto;
}

/* Versione premium ma sobria */
.mi-legal-page{
  background: #ffffff;
}

/* Mobile */
@media (max-width: 767px){
  .mi-legal-page{
    padding: 24px 16px 42px;
  }

  .mi-legal-page h1{
    margin-bottom: 18px;
    padding-bottom: 12px;
  }

  .mi-legal-page h2{
    margin-top: 28px;
    margin-bottom: 12px;
  }

  .mi-legal-page h3{
    margin-top: 20px;
    margin-bottom: 8px;
  }

  .mi-legal-page p,
  .mi-legal-page li{
    font-size: 14px;
    line-height: 1.7;
  }

  .mi-legal-page th,
  .mi-legal-page td{
    padding: 10px 12px;
    font-size: 13px;
  }
}/* End custom CSS */