/* Pagine di servizio (informativa): stessa testata e stessi colori della home, niente scena. */
.legal-page{background:radial-gradient(ellipse at 85% 0%,#1770882e,transparent 55%),var(--navy)}
.legal-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 5.5vw;background:#020c16e6;backdrop-filter:blur(16px);border-bottom:1px solid #c5e6ef1a}
.legal-header .brand{display:block;width:190px;height:44px}
.legal-header .brand-art{width:100%;height:100%}
.legal-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:.9375rem;color:#d5ecf2}
.legal-back:hover{color:var(--cyan)}
.legal-back .flow-icon{width:18px;height:18px}
.legal{max-width:780px;margin:0 auto;padding:64px 6vw 90px}
/* Il titolo della pagina è un <header>: le regole generiche della testata del sito
   (style.css: fixed, alta 76-95 px, flex) lo staccavano dal flusso e su mobile finiva
   sotto la testata vera, sopra il testo. Qui torna un blocco normale. */
.legal .legal-head{position:static;inset:auto;z-index:auto;display:block;height:auto;padding:0;gap:0;background:none;border:0;backdrop-filter:none;transition:none}
.legal-head h1{font-size:clamp(2.5rem,6vw,4.25rem);line-height:1.02;letter-spacing:-.055em;margin:16px 0 22px}
.legal-head>p{font-size:1.125rem;line-height:1.7;color:#c1d5df;margin:0 0 20px}
.legal section{border-top:1px solid var(--line);padding:30px 0 8px}
.legal h2{font-size:1.375rem;letter-spacing:-.02em;margin:0 0 14px;color:#effbff}
.legal p{font-size:1rem;line-height:1.75;color:#c6d8df;margin:0 0 16px}
.legal p strong{color:#eefbfd}
.legal a:not(.button){color:#b1e7f6;text-decoration:underline;text-underline-offset:3px}
.legal-note{font-size:.875rem!important;color:#a6bec8!important;margin-top:24px!important}
.legal .button{margin-top:12px;gap:12px}
.legal .button .flow-icon{width:20px;height:20px}
.legal-footer{display:flex;flex-wrap:wrap;gap:10px 28px;align-items:center;padding:28px 5.5vw 40px;border-top:1px solid var(--line);font-size:.8125rem;color:#a6bec8}
.legal-footer a{min-height:36px;display:inline-flex;align-items:center}
@media (max-width:760px){
 .legal-header .brand{width:150px;height:36px}
 .legal{padding-top:44px}
 .legal-head>p{font-size:1rem}
}

/* Condizioni del servizio: indice, tabella prova/recesso, modulo di recesso. */
.legal-toc{display:flex;flex-wrap:wrap;gap:8px 10px;margin:4px 0 10px}
.legal .legal-toc a{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border:1px solid #89d8ee40;border-radius:999px;font-size:.875rem;color:#d5ecf2;text-decoration:none}
.legal .legal-toc a:hover{border-color:var(--cyan);color:var(--cyan)}
.legal section{scroll-margin-top:84px}
.legal-table-wrap{overflow-x:auto;margin:6px 0 20px}
.legal-table{width:100%;border-collapse:collapse;font-size:.9375rem;line-height:1.5;color:#c6d8df}
.legal-table caption{text-align:left;font-size:.8125rem;letter-spacing:.06em;color:#a6bec8;padding-bottom:10px}
.legal-table th,.legal-table td{text-align:left;vertical-align:top;padding:12px 14px 12px 0;border-bottom:1px solid var(--line)}
.legal-table thead th{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan)}
.legal-table tbody th{color:#eefbfd;font-weight:700;white-space:nowrap}
.legal-form{border:1px solid #89d8ee40;border-radius:7px;background:linear-gradient(150deg,#102e3f,#081d29);padding:22px 22px 8px;margin:6px 0 20px}
.legal-form-note{font-size:.8125rem!important;color:#a6bec8!important}
@media (max-width:760px){
 .legal-table tbody th{white-space:normal}
 .legal-form{padding:18px 16px 4px}
}
