/* ============================================================
   MV STUDIO ROMA — pagine legali (privacy, cookie)
   Estende css/style.css: qui solo ciò che serve a un documento
   di testo lungo, su fondo carta.
   ============================================================ */

.pagina-legale{
  background:var(--carta);
  color:var(--ink);
}

.legale-testata{
  display:flex;align-items:center;justify-content:space-between;gap:1.5rem;
  padding:1.1rem var(--pad);
  border-bottom:1px solid var(--hair-scuro);
}
/* su fondo carta il marchio torna bicolore: bianco sarebbe invisibile */
.legale-testata .marchio{margin-right:0;--mv-m:var(--rosso);--mv-v:var(--ink)}
.legale-testata .marchio-testo{color:var(--ink)}

.legale-torna{
  font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;
  color:var(--grigio-scuro);border:1px solid var(--hair-scuro-2);
  padding:.55rem .9rem;transition:border-color .25s,color .25s;
}
.legale-torna:hover{border-color:var(--ink);color:var(--ink)}

.legale{
  max-width:74ch;
  margin:0 auto;
  padding:clamp(2.5rem,7vw,5rem) var(--pad) clamp(3rem,7vw,5rem);
}

.legale h1{
  font-family:var(--display);font-weight:900;
  font-size:clamp(2rem,5.5vw,3.4rem);letter-spacing:-.038em;line-height:1;
  margin:.7rem 0 1.8rem;
}

.legale h2{
  font-family:var(--display);font-weight:900;
  font-size:clamp(1.25rem,2.4vw,1.6rem);letter-spacing:-.02em;line-height:1.15;
  margin:2.6rem 0 .8rem;
}

.legale h3{
  font-size:1rem;font-weight:600;font-family:var(--body);
  margin:1.6rem 0 .4rem;
}

.legale p,.legale li{color:var(--ink);max-width:70ch}
.legale p{margin:0 0 1em}

.legale ul{margin:0 0 1.2em;padding:0;display:grid;gap:.5rem}
.legale ul li{display:grid;grid-template-columns:auto 1fr;gap:.8rem;align-items:baseline}
.legale ul li::before{content:"";width:4px;height:4px;background:var(--vivo);transform:translateY(-3px)}

.legale table{width:100%;border-collapse:collapse;margin:1rem 0 1.6rem;font-size:.92rem}
.legale th,.legale td{text-align:left;padding:.7rem .8rem;border-bottom:1px solid var(--hair-scuro);vertical-align:top}
.legale th{
  font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;
  font-weight:600;color:var(--grigio-scuro);
}
.legale .tabella-cont{overflow-x:auto}

.legale a{color:var(--rosso);text-decoration:underline;text-underline-offset:3px}
.legale a:hover{color:var(--vivo)}

.legale code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:.9em;background:var(--carta-2);padding:.1em .35em;
  border:1px solid var(--hair-scuro);
}

.legale em{font-style:italic}

.legale-avviso{
  border-left:2px solid var(--vivo);
  background:var(--carta-2);
  padding:1.1rem 1.3rem;
  margin:0 0 2rem;
}
.legale-avviso p{margin:0;font-size:.95rem}

.legale-agg{
  font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;
  font-weight:600;color:var(--grigio-scuro);
  padding-top:1.2rem;border-top:1px solid var(--hair-scuro);
  margin:2.4rem 0 2rem;
}

.legale .btn--linea{color:var(--ink);border-color:var(--hair-scuro-2)}
.legale .btn--linea:hover{border-color:var(--ink);background:rgba(27,27,27,.04)}

.legale-piede{
  border-top:1px solid var(--hair-scuro);
  padding:1.6rem var(--pad);
  display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;
}
.legale-piede p{margin:0;font-size:.8rem;color:var(--grigio-scuro)}
.legale-piede nav{display:flex;gap:1.2rem;flex-wrap:wrap}
.legale-piede a{font-size:.8rem;color:var(--grigio-scuro);transition:color .25s}
.legale-piede a:hover{color:var(--ink)}

@media print{
  .legale-testata,.legale-piede,.legale .btn{display:none !important}
  .legale{max-width:none;padding:0}
}
