/* ==========================================================================
   Policy section styles
   ========================================================================== */

.policy-section h2 {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--ink);
    line-height: 1.25;
    margin: 0 0 2rem;
    padding-bottom: 1.25rem;
    position: relative;
}

.policy-section h2::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 40px;
    height: 3px;
    background: var(--primary-500);
}

.policy-section h3 {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--ink);
    line-height: 1.4;
    margin: 1.75rem 0 .75rem;
}

.policy-section p {
    font-size: .9rem;
    color: var(--ink-2);
    line-height: 1.85;
    margin-bottom: 1rem;
}

.policy-section li,
.policy-section ul,
.policy-section ol {
    font-size: .9rem;
    color: var(--ink-2);
    line-height: 1.85;
}

.policy-section ul,
.policy-section ol {
    padding-left: 1.25rem;
}

/* Data tables within policy sections */
.data-table--policies th:nth-child(1) { width: 20%; }
.data-table--policies th:nth-child(2) { width: 35%; }
.data-table--policies th:nth-child(3) { width: 45%; }

.data-table--policies td,
.data-table--policies td p,
.data-table--policies td li,
.data-table--policies td ul,
.data-table--policies td ol {
    font-size: .82rem;
    color: var(--ink-2);
}
/* Subtle vertical borders to complement the existing horizontal borders */
.data-table--policies th,
.data-table--policies td {
    border-right: 1px solid var(--border-color, #e5e7eb);
}

.data-table--policies th:last-child,
.data-table--policies td:last-child {
    border-right: none;
}

.cell-subnote {
    margin-bottom: .4rem;
}

.cell-note-italic {
    font-size: .78rem;
    color: var(--ink-3);
    font-style: italic;
    margin: 0;
}