.program-type-banner-heading {
    max-width: 70%;
}

@media (max-width: 991px) {
    .program-type-banner-heading {
        max-width: 100% !important;
    }

    .apprivacynotice-section .content-box.epn-after-h2--heading,
    .program-type-banner-section .epn-after-h2--heading {
        margin-top: 32px !important;
    }
    .apprivacynotice-section p, .apprivacynotice-section li, .apprivacynotice-desc strong, .apprivacynotice-section table td{
        line-height: 24px !important;
        font-size: 16px !important;
    }

    .apprivacynotice-section h3 {
        font-size: 24px !important;
        line-height: 32px !important;
    }

    .apprivacynotice-section h2 {
        font-size: 28px !important;
        line-height: 36px !important;
    }
}

/* -------------------------------------------------------------------------- */
/* Tables                                                                     */
/* -------------------------------------------------------------------------- */
.apprivacynotice-section table th {
    background: #1E1248 !important;
    padding: 16px !important;
    vertical-align: top;
}

.apprivacynotice-section table tr,
.apprivacynotice-section table td {
    padding: 16px;
    vertical-align: top;
}

.apprivacynotice-section table tr:nth-child(even) {
    background-color: #fff !important;
}

.apprivacynotice-section table tr:nth-child(odd) {
    background-color: #EEEEEE !important;
}

.apprivacynotice-desc table th p {
    color: #fff;
}

/* -------------------------------------------------------------------------- */
/* List internals                                                             */
/* -------------------------------------------------------------------------- */
.apprivacynotice-section .apprivacynotice-desc ul,
.apprivacynotice-section .apprivacynotice-desc ol {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 24px !important;
}

.apprivacynotice-section .apprivacynotice-desc ul li {
    margin: 8px 0;
}

/* -------------------------------------------------------------------------- */
/* Heading type                                                               */
/* -------------------------------------------------------------------------- */
.apprivacynotice-section h3 {
    font-size: 32px;
    line-height: 40px;
    font-weight: 500;
    font-family: "program", Arial, Helvetica, sans-serif !important;
    color: #262626;
}

/* -------------------------------------------------------------------------- */
/* Links — theme tokens                                                       */
/* -------------------------------------------------------------------------- */
.breadcrumbs-section a,
.program-type-banner-section a,
.apprivacynotice-section a {
    color: var(--primary-dark-color);
}

.breadcrumbs-section a:hover,
.breadcrumbs-section a:focus-visible,
.program-type-banner-section a:hover,
.program-type-banner-section a:focus-visible,
.apprivacynotice-section a:hover,
.apprivacynotice-section a:focus-visible {
    text-decoration: none;
}

/*
 * Spacing system
 * --------------
 * No catch-all > * + * (that forced 24px between consecutive <p>s).
 *
 * Body text / lists use 8px. Headings use 24px / 40px.
 * Nested CMS wrappers are covered with :has(> …) and with
 * .epn-after-h2--* classes from heading-spacing.js for h2 → next visual block.
 */

.apprivacynotice-section .custom-title > .apprivacynotice-heading {
    margin: 0;
    padding: 0;
}

.apprivacynotice-section .apprivacynotice-desc > * {
    margin-top: 0;
    margin-bottom: 0;
}
.apprivacynotice-desc p{
    display: block !important;
}

.apprivacynotice-section .apprivacynotice-desc p:not(:last-child) {
    margin-bottom: 0;
}

.apprivacynotice-section .apprivacynotice-desc :is(table, .cms-table-wrapper) {
    margin-top: 0;
}

/* ---- Body text & lists: 8px ---- */
.apprivacynotice-section .apprivacynotice-desc > :is(p, ul, ol) + :is(p, ul, ol),
.apprivacynotice-section .apprivacynotice-desc > :is(p, ul, ol) + div:has(> :is(p, ul, ol)),
.apprivacynotice-section .apprivacynotice-desc > div:has(> :is(p, ul, ol)) + :is(p, ul, ol),
.apprivacynotice-section .apprivacynotice-desc > div:has(> :is(p, ul, ol)) + div:has(> :is(p, ul, ol)) {
    margin-top: 8px;
}

/* ---- Tables: 32px to/from surrounding content (design) ---- */
.apprivacynotice-section .apprivacynotice-desc > :is(p, ul, ol, blockquote, figure) + :is(table, .cms-table-wrapper),
.apprivacynotice-section .apprivacynotice-desc > :is(table, .cms-table-wrapper) + :is(p, ul, ol, blockquote, figure),
.apprivacynotice-section .apprivacynotice-desc > div:has(> :is(p, ul, ol, blockquote, figure)) + :is(table, .cms-table-wrapper),
.apprivacynotice-section .apprivacynotice-desc > :is(table, .cms-table-wrapper) + div:has(> :is(p, ul, ol, blockquote, figure)),
.apprivacynotice-section .apprivacynotice-desc > div:has(> :is(p, ul, ol, blockquote, figure)) + div:has(> :is(table, .cms-table-wrapper)),
.apprivacynotice-section .apprivacynotice-desc > div:has(> :is(table, .cms-table-wrapper)) + div:has(> :is(p, ul, ol, blockquote, figure)) {
    margin-top: 32px;
}

/* ---- h3 → content: 24px ---- */
.apprivacynotice-section .apprivacynotice-desc > h3 + :is(p, ul, ol, table, blockquote, figure, .cms-table-wrapper),
.apprivacynotice-section .apprivacynotice-desc > h3 + div:has(> :is(p, ul, ol, table, blockquote, figure)),
.apprivacynotice-section .apprivacynotice-desc > div:has(> h3) + :is(p, ul, ol, table, blockquote, figure, .cms-table-wrapper),
.apprivacynotice-section .apprivacynotice-desc > div:has(> h3) + div:has(> :is(p, ul, ol, table, blockquote, figure)) {
    margin-top: 24px;
}

/* ---- Content → h3: 32px (not when immediately after an h2 — JS overrides) ---- */
.apprivacynotice-section .apprivacynotice-desc > :is(p, ul, ol, table, blockquote, figure, .cms-table-wrapper) + h3,
.apprivacynotice-section .apprivacynotice-desc > :is(p, ul, ol, table, blockquote, figure, .cms-table-wrapper) + div:has(> h3),
.apprivacynotice-section .apprivacynotice-desc > div:has(> :is(p, ul, ol, table, blockquote, figure)) + h3,
.apprivacynotice-section .apprivacynotice-desc > div:has(> :is(p, ul, ol, table, blockquote, figure)) + div:has(> h3) {
    margin-top: 32px;
}

/*
 * h2 → first visual block (any nesting depth) — marked by heading-spacing.js
 *   heading → 40px
 *   other content → 24px
 * !important so these win over body/list/table sibling rules when both match.
 */
.apprivacynotice-section .epn-after-h2--heading,
.program-type-banner-section .epn-after-h2--heading {
    margin-top: 40px !important;
}

.apprivacynotice-section .epn-after-h2--content,
.program-type-banner-section .epn-after-h2--content {
    margin-top: 24px !important;
}

.apprivacynotice-desc p, .apprivacynotice-desc ul li{
    color:#262626
}