/* Páginas legales (privacidad, términos). Se carga después de /assets/styles.css. */
.legal { padding-block: 64px 96px; }
.legal .wrap { max-width: calc(780px + 2 * var(--gutter)); display: flex; flex-direction: column; gap: 16px; }
.legal h1 { margin: 0 0 8px; }
.legal h2 { font: 600 22px/1.3 var(--f-texto); margin: 26px 0 0; color: var(--tinta); scroll-margin-top: 96px; }
.legal h3 { font: 600 17px/1.35 var(--f-texto); margin: 10px 0 0; color: var(--tinta); }
.legal p, .legal li { color: var(--texto-suave); font-size: 17px; line-height: 1.65; margin: 0; }
.legal ul { margin: 0; padding-left: 1.2em; display: grid; gap: 8px; }
.legal b { color: var(--tinta); font-weight: 600; }
.legal a { color: var(--cafe); }
.legal code { font-size: .9em; background: rgba(91, 63, 44, .08); padding: 1px 6px; border-radius: 6px; }
.legal .indice { display: flex; flex-wrap: wrap; gap: 8px 14px; padding: 16px 18px; border: 1px solid var(--linea); border-radius: 14px; background: var(--papel); font-size: 14px; }
.legal .indice a { text-decoration: none; color: var(--texto-suave); }
.legal .indice a:hover { color: var(--cafe); text-decoration: underline; }
.legal .resumen { padding: 22px 24px; border-radius: 16px; background: var(--bosque); }
.legal .resumen h2 { margin: 0 0 12px; color: var(--crema); }
.legal .resumen li { color: var(--crema-suave); }
.legal .resumen b { color: var(--crema); }
.legal .resumen a { color: var(--dorado); }
.legal .aviso { padding: 14px 18px; border-left: 3px solid var(--dorado); background: rgba(201, 161, 91, .1); border-radius: 0 12px 12px 0; }
.legal .relacionado { margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--linea); }
.pie { padding: 36px 0 48px; background: var(--bosque); color: var(--salvia); font-size: 14px; }
.pie .wrap { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
