.idc-legal-page {
    background: var(--idc-color-white);
}

.idc-legal-page__hero {
    min-height: clamp(320px, 52vh, 560px);
}

.idc-legal-content {
    background: var(--idc-color-white);
    margin: 0;
    padding: clamp(3rem, 8vw, 7rem) clamp(1.25rem, 4vw, 4rem);
    width: 100%;
}

.idc-legal-content__inner {
    color: rgba(17, 39, 57, 0.78);
    font-family: var(--idc-font-header);
    font-size: clamp(1rem, 1.4vw, 1.125rem);
    line-height: 1.75;
    margin: 0 auto;
    max-width: 1400px;
    width: 100%;
}

.idc-legal-content__inner > :first-child {
    margin-top: 0;
}

.idc-legal-content__inner > :last-child {
    margin-bottom: 0;
}

.idc-legal-content__inner h2,
.idc-legal-content__inner h3,
.idc-legal-content__inner h4 {
    color: var(--idc-color-navy);
    font-family: var(--idc-font-header);
    line-height: 1.2;
}

.idc-legal-content__inner a {
    color: var(--idc-color-navy);
    text-decoration-color: var(--idc-color-bronze);
    text-underline-offset: 0.2em;
}

.idc-legal-content__inner a:hover,
.idc-legal-content__inner a:focus-visible {
    color: var(--idc-color-bronze);
}

.idc-legal-content--privacy .idc-legal-content__inner,
.idc-legal-content--terms .idc-legal-content__inner {
    max-width: 900px;
}

.idc-privacy-policy__section + .idc-privacy-policy__section,
.idc-terms-policy__section + .idc-terms-policy__section {
    margin-top: clamp(3rem, 6vw, 4.5rem);
}

.idc-privacy-policy__section h2,
.idc-terms-policy__section h2 {
    font-size: clamp(1.75rem, 3.2vw, 2.4rem);
    font-weight: 600;
    letter-spacing: 0;
    margin: 0 0 1.4rem;
    text-wrap: balance;
}

.idc-privacy-policy__section h3,
.idc-terms-policy__section h3 {
    font-size: clamp(1.2rem, 2vw, 1.5rem);
    font-weight: 600;
    letter-spacing: 0;
    margin: 2.25rem 0 0.85rem;
}

.idc-privacy-policy__section p,
.idc-terms-policy__section p {
    margin: 0 0 1.15rem;
}

.idc-privacy-policy__section ul,
.idc-terms-policy__section ul {
    margin: 0 0 1.5rem;
    padding-left: 1.4rem;
}

.idc-privacy-policy__section li,
.idc-terms-policy__section li {
    margin-bottom: 0.55rem;
    padding-left: 0.25rem;
}

.idc-privacy-policy__section a,
.idc-terms-policy__section a {
    overflow-wrap: anywhere;
}

body.page-template-page-privacy,
body.page-template-page-privacy-php,
body.page-template-page-terms,
body.page-template-page-terms-php {
    padding-bottom: calc(68px + env(safe-area-inset-bottom));
}

body.page-template-page-privacy #page,
body.page-template-page-privacy .site-content,
body.page-template-page-privacy-php #page,
body.page-template-page-privacy-php .site-content,
body.page-template-page-terms #page,
body.page-template-page-terms .site-content,
body.page-template-page-terms-php #page,
body.page-template-page-terms-php .site-content {
    margin-left: 0;
    margin-right: 0;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
}

@media (min-width: 1024px) {
    body.page-template-page-privacy,
    body.page-template-page-privacy-php,
    body.page-template-page-terms,
    body.page-template-page-terms-php {
        padding-bottom: 0;
    }
}

@media (max-width: 767px) {
    .idc-legal-page__hero {
        min-height: 360px;
        padding-bottom: 5rem;
        padding-top: 5rem;
    }

    .idc-legal-content {
        padding-bottom: 4rem;
        padding-top: 4rem;
    }

    .idc-privacy-policy__section + .idc-privacy-policy__section,
    .idc-terms-policy__section + .idc-terms-policy__section {
        margin-top: 2.75rem;
    }

    .idc-privacy-policy__section h3,
    .idc-terms-policy__section h3 {
        margin-top: 1.8rem;
    }

    .idc-privacy-policy__section ul,
    .idc-terms-policy__section ul {
        padding-left: 1.2rem;
    }
}
