/* ==========================================================================
   IRSML — legal.css
   Pagine legali (Privacy Policy, Cookie Policy) — canvas piatto, nessun
   blocco decorativo o gradiente, tipografia impostata sulla leggibilità.
   ========================================================================== */

.legal-hero { padding-bottom: var(--s-xxl); }
.legal-hero h1 { margin-bottom: var(--s-md); max-width: none; }
.legal-hero p { max-width: var(--measure); }
.legal-hero .caption { margin-bottom: 0; }

/* Corpo del documento ----------------------------------------------------- */
.legal-body { max-width: 820px; }
.legal-body h2 {
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -0.028em;
  line-height: 1.25;
  margin-bottom: var(--s-md);
  color: var(--ink);
}
.legal-body h3 {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: -0.02em;
  margin: var(--s-xl) 0 var(--s-xs);
  color: var(--ink);
}
.legal-body h4 {
  font-size: 15px;
  font-weight: 600;
  letter-spacing: -0.01em;
  margin: var(--s-lg) 0 var(--s-xs);
  color: var(--ink);
}
.legal-body h5 {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -0.01em;
  text-transform: uppercase;
  margin: var(--s-lg) 0 var(--s-xs);
  color: var(--ink-muted);
}
.legal-body p,
.legal-body li { color: var(--ink-muted); font-size: 15px; line-height: 1.65; }
.legal-body strong { color: var(--ink); font-weight: 600; }
.legal-body ul,
.legal-body ol { padding-left: 1.3em; margin-bottom: var(--s-md); }
.legal-body li { margin-bottom: var(--s-xs); }
.legal-body .table-wrap { margin: var(--s-lg) 0; }
.legal-body .table-wrap td,
.legal-body .table-wrap th { line-height: 1.5; }

/* Le sezioni legali sono lunghe: ritmo verticale più compatto -------------- */
main > section { padding-top: 40px; padding-bottom: 40px; }
main > section.legal-hero { padding-top: var(--s-xl); }

@media (max-width: 640px) {
  .legal-body h2 { font-size: 21px; }
}
