/* ==========================================================================
   Páginas legales (aviso legal, privacidad, cookies, condiciones, devoluciones)

   Son documentos para leer seguido, no páginas de tienda: columna estrecha,
   interlineado alto y jerarquía clara de apartados. Se carga solo en estas
   cinco páginas para no engordar el CSS del resto de la web.
   ========================================================================== */

.legal-page { max-width: 780px; margin: 0 auto; }

.legal-page h1 { font-size: clamp(1.9rem, 3.6vw, 2.6rem); margin-bottom: 6px; }

.legal-updated {
    color: var(--muted, #78716c);
    font-size: .88rem;
    margin-bottom: 30px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--border, #e7e1d8);
}

/* El número de apartado ya va escrito en el texto, así que el salto entre
   secciones es lo único que tiene que separarlas a la vista */
.legal-page h2 {
    font-size: 1.3rem;
    margin: 38px 0 12px;
    scroll-margin-top: 20px;
}
.legal-page h3 { font-size: 1.02rem; margin: 24px 0 8px; }

.legal-page p { margin-bottom: 14px; line-height: 1.75; }
.legal-page ul,
.legal-page ol { margin: 0 0 16px 22px; }
.legal-page li { margin-bottom: 8px; line-height: 1.7; color: var(--tinta-suave, #57534e); }
.legal-page li:last-child { margin-bottom: 0; }

/* Recuadro para lo que el cliente busca de un vistazo: los datos fiscales,
   el resumen de una política, la dirección a la que reclamar */
.legal-box {
    background: var(--papel-hondo, #f5f0e8);
    border: 1px solid var(--border, #e7e1d8);
    border-left: 3px solid var(--brand, #b45309);
    border-radius: var(--radius, 12px);
    padding: 20px 24px;
    margin: 20px 0 24px;
}
.legal-box p { margin-bottom: 6px; }
.legal-box p:last-child { margin-bottom: 0; }
.legal-box h3:first-child { margin-top: 0; }

/* Aviso destacado: la excepción del desistimiento, sobre todo. Va en tono de
   alerta porque es la sorpresa que un cliente puede llevarse al comprar algo
   personalizado, y más vale que la lea antes de pagar */
.legal-alerta {
    background: var(--alerta-clara, #fef2f2);
    border: 1px solid #fecaca;
    border-left: 3px solid var(--danger, #b91c1c);
    border-radius: var(--radius, 12px);
    padding: 20px 24px;
    margin: 20px 0 24px;
}
.legal-alerta p:last-child { margin-bottom: 0; }

.legal-table {
    width: 100%;
    border-collapse: collapse;
    margin: 16px 0 22px;
    font-size: .93rem;
}
.legal-table th,
.legal-table td {
    padding: 11px 12px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid var(--border, #e7e1d8);
}
.legal-table th {
    font-size: .74rem;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--muted, #78716c);
    font-weight: 700;
    white-space: nowrap;
}
.legal-table td { color: var(--tinta-suave, #57534e); }

/* En móvil una tabla de tres columnas no cabe: se deja desplazar en
   horizontal en lugar de romper el diseño de la página */
.legal-tabla-scroll { overflow-x: auto; }

.legal-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin-top: 48px;
    padding-top: 20px;
    border-top: 1px solid var(--border, #e7e1d8);
    font-size: .92rem;
}
.legal-nav-current { color: var(--muted, #78716c); font-weight: 600; }
