/* =============================================================
   LEGAL — impaginazione delle pagine privacy e cookie policy.
   ============================================================= */

.wrap { max-width: 760px; margin: 0 auto; padding: 0 clamp(20px, 5vw, 32px); }

.legal-top {
    background: var(--navy);
    color: #fff;
    padding: clamp(96px, 14vh, 132px) 0 clamp(32px, 6vh, 56px);
}
.legal-h1 {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 800;
    font-size: clamp(30px, 4.4vw, 46px);
    line-height: 1.06;
    letter-spacing: -.02em;
    margin: 0;
}
.legal-intro {
    font-size: clamp(16px, 1.7vw, 19px);
    line-height: 1.55;
    color: rgba(255, 255, 255, .78);
    margin: 16px 0 0;
    max-width: 54ch;
}
.legal-updated {
    margin: 18px 0 0;
    font-size: 13px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .5);
}

.legal-body { padding: clamp(32px, 6vh, 56px) 0 clamp(44px, 9vh, 80px); }
.legal-body h2 {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 800;
    font-size: clamp(19px, 2.1vw, 24px);
    letter-spacing: -.01em;
    margin: clamp(30px, 5vh, 44px) 0 12px;
}
.legal-body h2:first-child { margin-top: 0; }
.legal-body p {
    font-size: 16px;
    line-height: 1.75;
    color: #25323f;
    margin: 0 0 16px;
}
.legal-body a { color: var(--navy); font-weight: 600; }
.legal-body ul { margin: 0 0 16px; padding-left: 20px; color: #25323f; line-height: 1.75; }

.legal-table {
    width: 100%;
    border-collapse: collapse;
    margin: 6px 0 20px;
    font-size: 15px;
}
.legal-table th,
.legal-table td {
    text-align: left;
    padding: 10px 12px;
    border-bottom: 1px solid rgba(15, 28, 46, .12);
    vertical-align: top;
}
.legal-table th {
    font-weight: 700;
    color: var(--navy);
    border-bottom-width: 2px;
}
.legal-table td { color: #25323f; }

/* Segnaposto da sostituire prima della pubblicazione */
.legal-todo {
    background: #FFF3CD;
    color: #7A5B00;
    padding: 1px 6px;
    border-radius: 4px;
    font-weight: 600;
}
