/**
 * Styling specific to the content container block.
 */

.page-container .content-container {
    font: var(--font-copy-md);
    padding: var(--spacing-12) var(--default-padding);
    grid-column: 3 /-3;
}

.page-container .content-container.main-grid {
    padding: 0 var(--default-padding);
    max-width: 1320px;
    grid-column: 1 / -1;
}

.page-container .content-container.main-grid > *:not(.input-form-field-module) {
    grid-column: 3 / -3;
    box-sizing: border-box;
}

.page-container .content-container .wp-block-group {
    padding-bottom: var(--spacing-10);
}

.page-container .content-container h2 {
    font: var(--font-h3);
    letter-spacing: var(--font-h3-spacing);
    margin-bottom: var(--spacing-5);
}

.page-container .content-container h3 {
    font: var(--font-h5);
    letter-spacing: var(--font-h5-spacing);
    margin: var(--spacing-5) 0 var(--spacing-7) 0;
}

.page-container .content-container h4 {
    font: var(--font-copy-md-bold);
    margin-bottom: var(--spacing-5);
}

.page-container .content-container p {
    margin-bottom: var(--spacing-7);
    line-height: 24px;
}

.page-container .content-container ol {
    margin: 0;
    counter-reset: item;
    list-style-type: none;
}

.page-container .content-container ol ul {
    margin: var(--spacing-7) 0 0;
}

.page-container .content-container ol ol ul {
    margin: var(--spacing-5) 0 0;
}

.page-container .content-container ul {
    margin: 0 0 var(--spacing-7);
}

.page-container .content-container ul {
    margin: 0 0 var(--spacing-7);
}

.page-container .content-container ul ul {
    margin: var(--spacing-5) 0 0;
}

.page-container .content-container ul ul > li:first-child {
    margin-top: 0;
}

.page-container .content-container ol > li:last-child {
    margin-top: 0;
    margin-bottom: var(--spacing-7);
}

.page-container .content-container ol > li:first-child, .page-container .content-container ul > li:first-child {
    margin-top: calc(-1 * var(--spacing-3));
    padding-bottom: var(--spacing-3);
}

.page-container .content-container ul > li:not(:first-child), .page-container .content-container ol > li:not(:first-child) {
    padding-top: var(--spacing-3);
    padding-bottom: var(--spacing-3);
}

.page-container .content-container li > ol {
    margin-top: var(--spacing-5);
}

.page-container .content-container ol li ol li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
}

.page-container .content-container ol li ol li:first-child {
    margin-top: 0;
}

.page-container .content-container ol > li:before {
    content: counters(item, ".") ". ";
}

.page-container .content-container ol li {
    counter-increment: item;
}

.page-container .content-container ol ul li {
    counter-increment: unset;
}

.page-container .content-container ol ul ol li {
    counter-increment: item;
}


.page-container .content-container ol li, ul li {
    counter-increment: item;
    position: relative;
    box-sizing: border-box;
}

.page-container .content-container ol > li:before {
    content: counters(item, ".") ". ";
    position: absolute;
    inset-inline-start: -2.5em;
}

.page-container .content-container ol ol > li {
    display: block;
    margin-inline-start: 0.5em;
}

.page-container .content-container ol ol > li:before {
    content: counters(item, ".") ". ";
}

.page-container .content-container ol ol > li:before {
    content: counters(item, ".") ". ";
    inset-inline-start: -3em;
}

.page-container .content-container ol ol ol > li {
    margin-inline-start: 1.5em;
}

.page-container .content-container ol ol ol > li:before {
    inset-inline-start: -4em;
}

.page-container .content-container ol ol ol ol > li {
    margin-inline-start: 2em;
}

.page-container .content-container ol ol ol ol > li:before {
    inset-inline-start: -4.5em;
}


.page-container .content-container ul {
    list-style-position: outside;
}

.page-container .content-container ul li,
.page-container .content-container ol ul {
    padding-inline-start: 1em;
}

/* Breakpoint M */
@media screen and (min-width: 768px) and (max-width: 1080px) {
    .page-container .content-container {
        grid-column: 2 /-2;
    }

    .page-container .content-container.main-grid > *:not(.input-form-field-module) {
        grid-column: 2 / -2;
    }
}

/* Breakpoint S */
@media screen and (min-width: 0px) and (max-width: 768px) {
    .page-container .content-container {
        grid-column: 1 /-1;
    }

    .page-container .content-container.main-grid > *:not(.input-form-field-module) {
        grid-column: 1 / -1;
    }
    .page-container .content-container h2,
    .page-container .content-container h3 {
        hyphens: auto;
    }
}
