/* =============================================================================
   LEGAL — composición del aviso de privacidad.
   Depende de sistema.css y pagina.css. Sólo se carga en esa página.
   ========================================================================== */
.legal { padding-block: clamp(3rem, 1.5rem + 5vw, 6rem) var(--s-section); }
.legal__cab { max-width: 34rem; }
.legal__cab .h2 { max-width: 20ch; }
.legal__fecha { display: block; margin-top: var(--s-6); }
.legal__cuerpo { margin-top: var(--s-10); display: grid; gap: var(--s-8); max-width: var(--w-narrow); }
.legal__bloque { display: grid; gap: var(--s-4); padding-top: var(--s-6); border-top: var(--hairline) solid var(--c-rule); }
.legal__bloque p { color: var(--c-ink-2); max-width: var(--w-text); }
.legal__bloque b { color: var(--c-ink); font-weight: 600; }
.legal__lista { display: grid; gap: var(--s-3); max-width: var(--w-text); color: var(--c-ink-2); }
.legal__lista li { position: relative; padding-left: var(--s-5); }
.legal__lista li::before {
    content: '';
    position: absolute;
    left: 0; top: 0.65em;
    width: 7px; height: 7px;
    background: var(--c-signal);
}
.legal__estado { font-weight: 600; color: var(--c-ink); }
.legal__acciones { display: flex; flex-wrap: wrap; gap: var(--s-3); }
.legal__acciones[hidden] { display: none; }
.legal__nota { color: var(--c-ink-3); }
.no-js .legal__acciones { display: none; }
