/* ==========================================================================
   ALDO — pagine legali (/privacy e /terms)
   Il testo dei documenti è incluso "as is": qui viene solo ristilizzato.
   Le classi p1–p6 / s1–s3 provengono dall'export originale dei documenti.
   ========================================================================== */

.legal-hero {
    padding: 150px 0 56px;
    text-align: center;
    background:
        radial-gradient(700px 320px at 50% -120px, rgba(255, 179, 0, 0.22) 0%, transparent 70%),
        var(--paper);
}

.legal-hero .eyebrow::before { display: none; }

.legal-hero h1 {
    font-size: clamp(32px, 5vw, 52px);
    font-weight: 800;
    margin-top: 14px;
}

.legal-hero .legal-meta {
    margin-top: 16px;
    color: var(--ink-soft);
    font-size: 15px;
}

.legal-doc {
    max-width: 820px;
    margin: 0 auto;
    padding: clamp(28px, 5vw, 64px) clamp(22px, 5vw, 64px);
    background: var(--card);
    border: 1px solid var(--line);
    border-radius: var(--radius-l);
    box-shadow: var(--shadow-m);
}

.legal-wrap { padding-bottom: clamp(64px, 8vw, 110px); }

.legal-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 auto 28px;
    font-weight: 600;
    font-size: 15px;
    color: var(--ink-soft);
    text-decoration: none;
    transition: color 0.2s ease;
}

.legal-back:hover { color: var(--sunrise-deep); }

/* ----- Ristilizzazione dell'export originale (testo intatto) ----- */

.legal-doc p {
    margin: 0 0 14px !important;
    font: 400 16px/1.7 var(--font-body) !important;
    color: var(--ink-soft) !important;
    -webkit-text-stroke: 0 !important;
    text-indent: 0 !important;
}

.legal-doc span {
    font: inherit !important;
    color: inherit !important;
    -webkit-text-stroke: 0 !important;
}

/* Titolo del documento (solo privacy: p1 è il titolone) */
.legal--privacy .legal-doc p.p1 {
    font: 800 clamp(24px, 3vw, 32px)/1.25 var(--font-display) !important;
    letter-spacing: -0.02em;
    color: var(--ink) !important;
    margin: 0 0 18px !important;
}

/* Nei terms p1 è un paragrafo normale */
.legal--terms .legal-doc p.p1 { margin-bottom: 6px !important; }

/* Sezioni */
.legal-doc p.p3 {
    font: 700 23px/1.3 var(--font-display) !important;
    letter-spacing: -0.01em;
    color: var(--ink) !important;
    margin: 38px 0 14px !important;
    padding-top: 26px;
    border-top: 1px solid var(--line);
}

/* Sottosezioni */
.legal-doc p.p4 {
    font: 700 18px/1.35 var(--font-display) !important;
    color: var(--ink) !important;
    margin: 26px 0 10px !important;
}

/* Voci elenco (puntini "·" con rientro sospeso) */
.legal-doc p.p5,
.legal-doc p.p6 {
    position: relative;
    padding-left: 26px;
    margin: 0 0 10px !important;
}

.legal-doc p.p5 > span.s1:first-child,
.legal-doc p.p6 > span.s1:first-child {
    position: absolute;
    left: 6px;
    color: var(--sunrise-deep) !important;
    font-weight: 800 !important;
}

.legal-doc span.s2 { display: none; } /* spaziatura tipografica dell'export, non testo */

.legal-doc span.s3 {
    text-decoration: none !important;
    font-weight: 600 !important;
    color: var(--ink) !important;
}

.legal-doc a { color: var(--sunrise-deep); word-break: break-word; }

/* Footer minimale */
.legal-footer {
    padding: 34px 0;
    background: var(--midnight);
    color: rgba(255, 255, 255, 0.6);
    font-size: 14px;
}

.legal-footer .container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.legal-footer a {
    color: rgba(255, 255, 255, 0.85);
    text-decoration: none;
    font-weight: 600;
}

.legal-footer a:hover { color: var(--sunrise); }
