.content-page {
    padding-block: clamp(2rem, 1.5rem + 3vw, 4rem);
}

/* Narrower than the section column — long legal text needs a readable measure,
   not the full 1218px the homepage sections use. */
.content-page__inner {
    max-width: 50rem;
    margin-inline: auto;
    padding-inline: var(--space-section-x);
}

/* Every rule below is scoped under .content-page and therefore at least (0,2,0),
   which clears Elementor's Global Kit rules on bare elements at (0,1,1). These
   pages are plain post content, so the theme has to style the raw tags. */
.content-page .content-page__title {
    color: var(--color-ink);
    font-size: var(--text-h2);
    font-weight: var(--font-weight-bold);
    line-height: 1.2;
    text-transform: none;
    letter-spacing: normal;
    margin-block-end: clamp(1.5rem, 1rem + 2vw, 2.5rem);
}

.content-page .content-page__body {
    color: var(--color-ink);
    font-size: var(--text-body);
    line-height: 1.6;
}

.content-page .content-page__body h2,
.content-page .content-page__body h3,
.content-page .content-page__body h4 {
    color: var(--color-ink);
    font-weight: var(--font-weight-bold);
    line-height: 1.3;
    text-transform: none;
    letter-spacing: normal;
    margin-block: 2rem 0.75rem;
}

.content-page .content-page__body h2 {
    font-size: var(--text-h3);
}

.content-page .content-page__body h3 {
    font-size: var(--text-card-title);
}

.content-page .content-page__body h4 {
    font-size: var(--text-body);
}

.content-page .content-page__body p,
.content-page .content-page__body ul,
.content-page .content-page__body ol {
    margin-block: 0 1rem;
}

.content-page .content-page__body ul,
.content-page .content-page__body ol {
    padding-inline-start: 1.5rem;
}

.content-page .content-page__body li {
    margin-block-end: 0.5rem;
}

.content-page .content-page__body a {
    color: var(--color-brand-red);
    text-decoration: underline;
}

.content-page .content-page__body strong {
    font-weight: var(--font-weight-bold);
}

/* The cookie policy carries a real data table. */
.content-page .content-page__body table {
    width: 100%;
    border-collapse: collapse;
    margin-block-end: 1.5rem;
    font-size: var(--text-small);
}

.content-page .content-page__body th,
.content-page .content-page__body td {
    border: 1px solid var(--color-checkbox-border);
    padding: 0.625rem 0.75rem;
    text-align: start;
    vertical-align: top;
}

.content-page .content-page__body th {
    background: var(--color-section-bg);
    font-weight: var(--font-weight-bold);
}

/* Wide tables scroll inside their own box rather than widening the page. */
.content-page .content-page__body figure.wp-block-table,
.content-page .content-page__body .table-wrap {
    overflow-x: auto;
}
