/* Pagine legali (privacy, cookie): testo lungo, leggibile, con i colori del sito. */
:root {
    --legal-blu: #084c61;
    --legal-giallo: #ffc247;
    --legal-testo: #26292b;
    --legal-sfondo: #e0e0e0;
    --legal-carta: #ffffff;
}

body.legal {
    background: var(--legal-sfondo);
    color: var(--legal-testo);
    font-family: 'Asap', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.legal-header {
    background: var(--legal-blu);
    padding: 1rem 16px;
}
.legal-header a {
    color: #fff;
    font-family: 'Monument Extended', 'Asap', sans-serif;
    font-weight: 800;
    letter-spacing: .02em;
    text-decoration: none;
}
.legal-header a:hover,
.legal-header a:focus-visible { color: var(--legal-giallo); }

.legal-main {
    max-width: 46rem;
    margin: 2.5rem auto;
    padding: 2.5rem clamp(16px, 5vw, 3rem);
    background: var(--legal-carta);
    border-radius: 6px;
    line-height: 1.7;
    font-size: 1.0625rem;
}
.legal-main h1 {
    color: var(--legal-blu);
    font-size: clamp(1.75rem, 4vw, 2.25rem);
    margin-bottom: .25rem;
}
.legal-main .aggiornata { color: #5b6166; font-size: .9rem; margin-bottom: 2rem; }
.legal-main h2 {
    color: var(--legal-blu);
    font-size: 1.25rem;
    margin: 2.25rem 0 .75rem;
    padding-top: .25rem;
    border-top: 2px solid var(--legal-giallo);
}
.legal-main a { color: var(--legal-blu); text-decoration: underline; }
.legal-main a:hover { color: #0a6a87; }
.legal-main table { width: 100%; border-collapse: collapse; margin: 1rem 0; font-size: .95rem; }
.legal-main th, .legal-main td { border: 1px solid #c9ced1; padding: .5rem .65rem; text-align: left; vertical-align: top; }
.legal-main th { background: #f1f3f4; }
.legal-table-wrap { overflow-x: auto; }

.legal-footer { text-align: center; padding: 0 16px 2.5rem; font-size: .9rem; }
.legal-footer a { color: var(--legal-blu); margin: 0 .5rem; }

@media (max-width: 575.98px) {
    .legal-main { margin: 0; border-radius: 0; }
}
