/* ==========================================================================
   CT-67 — PML Content Page (legal / prosa) — brand flat, sin sidebar
   ==========================================================================
   Estilos del template page-templates/pml-content.php. Contenedor centrado de
   ancho legible + tipografía flat (Outfit/Poppins, tokens --pml-* del :root).
   Pensado para Privacy / Terms / Cancellation / GDPR y cualquier página de
   texto. Encolado solo en ese template (inc/enqueue.php, CT-67).

   Todo scoped a .pml-prose / .pml-content-canvas. Cero box-shadow/glass.
   ========================================================================== */

.pml-content-canvas {
    background: var(--pml-bg-page);
}

.pml-prose {
    max-width: 768px;
    margin: 0 auto;
    padding: 56px 24px 88px;
    font-family: var(--pml-font-body);
    font-size: var(--pml-fs-body-lg);
    line-height: var(--pml-lh-relaxed);
    color: var(--pml-text-body);
}

/* Título de la página (the_title) */
.pml-prose__title {
    font-family: var(--pml-font-heading);
    font-size: var(--pml-fs-display);
    font-weight: var(--pml-fw-bold);
    line-height: var(--pml-lh-display);
    letter-spacing: var(--pml-ls-tight);
    color: var(--pml-text-heading);
    margin: 0 0 28px;
}

/* Encabezados dentro del contenido */
.pml-prose h2 {
    font-family: var(--pml-font-heading);
    font-size: var(--pml-fs-h2);
    font-weight: var(--pml-fw-semibold);
    line-height: var(--pml-lh-heading-h2);
    color: var(--pml-text-heading);
    margin: 44px 0 14px;
}

.pml-prose h3 {
    font-family: var(--pml-font-heading);
    font-size: var(--pml-fs-h3, 1.15rem);
    font-weight: var(--pml-fw-semibold);
    color: var(--pml-text-heading);
    margin: 28px 0 10px;
}

.pml-prose p {
    margin: 0 0 16px;
}

.pml-prose a {
    color: var(--pml-text-link);
    text-decoration: underline;
}

.pml-prose a:hover {
    color: var(--pml-action);
}

.pml-prose ul,
.pml-prose ol {
    margin: 0 0 16px;
    padding-left: 24px;
}

.pml-prose li {
    margin: 0 0 6px;
}

.pml-prose strong {
    font-weight: var(--pml-fw-semibold);
    color: var(--pml-text-heading);
}

.pml-prose em {
    color: var(--pml-text-secondary);
}

/* Tablas flat (retención, cookies, derechos, etc.) */
.pml-prose table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 24px;
    font-size: var(--pml-fs-body-sm);
}

.pml-prose th,
.pml-prose td {
    border: 1px solid var(--pml-border);
    padding: 10px 14px;
    text-align: left;
    vertical-align: top;
}

.pml-prose th {
    background: var(--pml-bg-card);
    font-family: var(--pml-font-accent);
    font-weight: var(--pml-fw-semibold);
    color: var(--pml-text-heading);
}

.pml-prose hr {
    border: 0;
    border-top: 1px solid var(--pml-border);
    margin: 32px 0;
}

@media (max-width: 768px) {
    .pml-prose {
        padding: 36px 18px 64px;
    }

    /* Tablas: scroll horizontal en móvil para no romper el layout */
    .pml-prose table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
}
