/* LE PAGINE LEGALI (29 ottobre 2026): privacy, cookie, condizioni, rimborsi,
   cancellazione dei dati. Testo lungo, da leggere: una colonna sola, righe
   non troppo lunghe, titoli che si vedono e un indice in cima. */

.legale{max-width:760px;margin-inline:auto;color:var(--ink);font-size:16.5px;line-height:1.65}
.legale p{max-width:none}
.legale p + p,.legale p + ul,.legale ul + p,.legale p + ol,.legale ol + p,
.legale table + p,.legale p + table{margin-top:12px}
.legale h2{font-size:clamp(22px,2.8vw,27px);line-height:1.2;margin:46px 0 14px;scroll-margin-top:90px}
.legale h3{font-size:18px;margin:26px 0 8px;color:var(--ink-strong)}
.legale ul,.legale ol{padding-left:22px}
.legale li + li{margin-top:6px}
.legale strong{color:var(--ink-strong)}
.legale a{overflow-wrap:anywhere}

.legale-data{font-size:14px;color:var(--ink-3);margin-bottom:22px}

.legale-breve{background:var(--accent-soft);border:1px solid var(--line);border-radius:var(--r-l);padding:20px 22px}
.legale-breve h2{margin:0 0 8px;font-size:19px}

.legale-indice{border:1px solid var(--line);border-radius:var(--r-l);padding:18px 22px;margin-top:22px;background:var(--surface)}
.legale-indice h2{margin:0 0 8px;font-size:15px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
.legale-indice ol{margin:0;font-size:15.5px}
.legale-indice li + li{margin-top:3px}

.legale-nota{border-left:4px solid var(--warn);background:var(--warn-bg);color:var(--ink);padding:12px 16px;border-radius:0 var(--r-s) var(--r-s) 0;margin-top:14px}

.legale-tabella + p,.legale-tabella + ul{margin-top:14px}
.legale-tabella{width:100%;overflow-x:auto;margin-top:12px;border:1px solid var(--line);border-radius:var(--r-m)}
.legale table{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}
.legale th,.legale td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line-soft)}
.legale thead th{background:var(--surface-2);color:var(--ink-strong);font-weight:800}
.legale tbody tr:last-child td,.legale tbody tr:last-child th{border-bottom:0}

.legale-titolare{font-style:normal;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-m);padding:14px 18px;margin-top:10px}

.legale-altre{margin-top:52px;padding-top:22px;border-top:1px solid var(--line)}
.legale-altre h2{margin-top:0;font-size:17px}
.legale-altre ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px}
.legale-altre li + li{margin-top:0}

@media (max-width:600px){
  .legale{font-size:16px}
  .legale h2{margin-top:38px}
  .legale-breve,.legale-indice{padding:16px}
}

/* fra il titolo e il testo basta poca aria: la vetrina ha di serie il passo intero */
body:has(.legale) .vetrina{padding-bottom:clamp(20px,3vw,32px)}

/* Sul telefono le tabelle diventano schede: una riga sotto l'altra, con il nome della colonna sopra ogni valore. */
@media (max-width:600px){
  .legale-tabella{border:0;overflow:visible}
  .legale table{min-width:0}
  .legale thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .legale tbody tr{display:block;border:1px solid var(--line);border-radius:var(--r-m);padding:12px 14px;background:var(--surface)}
  .legale tbody tr + tr{margin-top:10px}
  .legale tbody th,.legale tbody td{display:block;padding:3px 0;border:0}
  .legale tbody [data-t]::before{content:attr(data-t);display:block;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
  .legale tbody th[data-t]{font-size:16px}
}
