/* ============================================================
   Pagine legali (Privacy Policy / Cookie Policy).
   Layout editoriale centrato, palette brand (azzurro/navy).
   Footer eredita il navy di default (nessun accento pagina).
   ============================================================ */

.legale {
  padding-block: var(--space-xl);
  background: var(--c-sky);
  color: var(--c-navy);
  text-align: center;
}

.legale__head { margin-bottom: var(--space-l); }

.legale__title {
  font-family: var(--font-serif);
  font-weight: 400;
  font-size: var(--fs-legale-title);
  line-height: var(--lh-tight);
  color: var(--c-blue-deep);
  max-width: var(--legale-measure);
  margin-inline: auto;
}
.legale__title::after {
  content: "";
  display: block;
  width: 4rem;
  height: 2px;
  margin: var(--space-s) auto 0;
  background: var(--c-blue-deep);
}

.legale__updated {
  margin-top: var(--space-s);
  font-size: var(--fs-legale-body);
  opacity: .7;
}

.legale__prose {
  max-width: var(--legale-measure);
  margin-inline: auto;
}

.legale__prose h2 {
  font-family: var(--font-serif);
  font-weight: 400;
  font-size: var(--fs-legale-h2);
  line-height: var(--lh-tight);
  color: var(--c-blue-deep);
  margin: var(--space-l) 0 var(--space-s);
}

.legale__prose h3 {
  font-family: var(--font-serif);
  font-weight: 700;
  font-size: var(--fs-legale-h3);
  line-height: var(--lh-tight);
  color: var(--c-navy);
  margin: var(--space-m) 0 var(--space-xs);
}

.legale__prose p {
  font-size: var(--fs-legale-body);
  line-height: var(--lh-body);
  margin: 0 0 var(--space-s);
}

.legale__prose a {
  color: var(--c-blue-deep);
  text-decoration: underline;
  text-underline-offset: .18em;
}
.legale__prose a:hover { opacity: .7; }

.legale__empty {
  font-size: var(--fs-legale-body);
  font-style: italic;
  opacity: .7;
}

@media (max-width: 1024px) {
  .legale { padding-block: var(--space-l); }
  .legale__title { font-size: calc(var(--fs-legale-title) * .7); }
  .legale__prose h2 { font-size: calc(var(--fs-legale-h2) * .85); }
}
