/* Opt-in policy component. No global selectors, no !important, no remote assets. */
.page_static .kh-static-title {
    font-family: inherit;
    font-size: 1.5rem;
    line-height: 1.4;
    font-weight: 700;
    color: var(--ss-text, var(--purplepotion, #263440));
    margin: 0 0 1.25rem;
    overflow-wrap: anywhere;
}
.kh-policy {
    --kh-policy-accent: var(--ss-primary, var(--purplepotion, #254b60));
    --kh-policy-text: var(--ss-text, #263440);
    --kh-policy-surface: var(--ss-surface, #fff);
    --kh-policy-border: var(--ss-border, #dde3e7);
    color: var(--kh-policy-text);
    background: var(--kh-policy-surface);
    font-family: inherit;
    font-size: 1rem;
    line-height: 1.8;
    width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
    container-type: inline-size;
}
.kh-policy :where(*) { box-sizing: border-box; }
.kh-policy :where(p, ul, ol) { margin: 0 0 1.1em; font-size: inherit; line-height: inherit; text-align: start; }
.kh-policy :where(ul, ol) { padding-inline-start: 1.5em; }
.kh-policy :where(li) { margin: .45em 0; padding-inline-start: .2em; }
.kh-policy :where(h2) { color: var(--kh-policy-text); font-family: inherit; font-size: 1.25em; line-height: 1.4; font-weight: 700; margin: 0 0 1em; text-align: start; }
.kh-policy :where(a) { color: var(--kh-policy-accent); text-decoration: underline; text-underline-offset: .2em; }
.kh-policy :where(a:hover) { text-decoration-thickness: 2px; }
.kh-policy :where(a:focus-visible) { outline: 2px solid currentColor; outline-offset: 4px; border-radius: 2px; }
.kh-policy :where([id]) { scroll-margin-top: 180px; }
.kh-policy .kh-policy-lead { border-block-start: 3px solid var(--kh-policy-accent); border-block-end: 1px solid var(--kh-policy-border); padding: 2em 0 1.6em; }
.kh-policy .kh-policy-eyebrow { color: var(--kh-policy-accent); font-size: .72em; letter-spacing: .14em; font-weight: 700; margin-bottom: .8em; }
.kh-policy .kh-policy-journal { font-size: 1.6em; font-family: var(--ss-font-display, Georgia, serif); line-height: 1.35; font-weight: 700; max-width: 36em; margin-bottom: .55em; }
.kh-policy .kh-policy-summary { max-width: 62ch; margin-bottom: 1em; }
.kh-policy .kh-policy-meta { font-size: .8em; margin-bottom: 0; }
.kh-policy .kh-policy-toc { background: var(--kh-policy-surface); border: 1px solid var(--kh-policy-border); border-radius: 10px; padding: 1.4em; margin: 2em 0; }
.kh-policy .kh-policy-toc h2 { font-size: 1em; margin-bottom: .7em; }
.kh-policy .kh-policy-toc ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 2em; margin-bottom: 0; padding: 0; font-size: .86em; counter-reset: kh-policy-section; }
.kh-policy .kh-policy-toc li { display: grid; grid-template-columns: 1.6em minmax(0,1fr); list-style: none; padding: 0; margin: .25em 0; counter-increment: kh-policy-section; }
.kh-policy .kh-policy-toc li::before { content: counter(kh-policy-section) "."; padding-block: .3em; font-variant-numeric: tabular-nums; }
.kh-policy .kh-policy-toc a { display: inline-block; padding-block: .3em; }
.kh-policy .kh-policy-body { max-width: 74ch; margin-inline: auto; }
.kh-policy .kh-policy-section { border-block-end: 1px solid var(--kh-policy-border); padding: 1.65em 0; }
.kh-policy .kh-policy-section:last-child { border-block-end: 0; }
.kh-policy .kh-policy-number { color: var(--kh-policy-accent); font-size: .75em; font-variant-numeric: tabular-nums; display: inline-block; margin-inline-end: .6em; }
.kh-policy .kh-policy-section h2 { scroll-margin-top: 180px; }
.kh-policy .kh-policy-contact { border-inline-start: 3px solid var(--kh-policy-accent); background: var(--kh-policy-surface); border-block: 1px solid var(--kh-policy-border); padding: 1.5em; margin: 1.5em 0 2em; }
.kh-policy .kh-policy-contact a { font-weight: 700; }
.kh-policy .kh-policy-sources { padding-top: 1.5em; border-top: 1px solid var(--kh-policy-border); font-size: .88em; }
@container (max-width: 560px) {
    .kh-policy .kh-policy-toc ol { grid-template-columns: minmax(0, 1fr); }
    .kh-policy .kh-policy-journal { font-size: 1.35em; }
}
@media (max-width: 600px) {
    .kh-policy .kh-policy-toc ol { grid-template-columns: minmax(0, 1fr); }
}
@media print {
    .kh-policy { color: #000; background: #fff; }
    .kh-policy .kh-policy-toc { display: none; }
    .kh-policy .kh-policy-section h2 { break-after: avoid; }
}

/* Compact, stationary tab menu; also applies to earlier generated snapshots. */
.kh-policy .kh-policy-lead { display: none; }
.kh-policy--tabs .kh-policy-toc { border: 0; border-radius: 0; padding: 0; margin: 0 0 1.5em; }
.kh-policy--tabs .kh-policy-toc > h2 { display: none; }
.kh-policy--tabs .kh-policy-toc ol { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr)); gap: .5em; }
.kh-policy--tabs .kh-policy-toc li { display: block; margin: 0; padding: 0; }
.kh-policy--tabs .kh-policy-toc li::before { content: none; }
.kh-policy--tabs .kh-policy-toc a {
    display: flex; align-items: center; height: 100%; padding: .85em 1em;
    border: 1px solid var(--kh-policy-border); border-radius: .5em;
    font-size: 1em; line-height: 1.45; text-decoration: none; font-weight: 600;
    color: var(--kh-policy-text); background: var(--kh-policy-surface);
}
.kh-policy--tabs .kh-policy-toc a[aria-selected="true"] {
    color: var(--kh-policy-accent); border-color: var(--kh-policy-accent);
    box-shadow: inset 0 -3px 0 var(--kh-policy-accent);
}
.kh-policy--tabs .kh-policy-toc a:hover { border-color: var(--kh-policy-accent); }
.kh-policy--tabs .kh-policy-body { max-width: none; }
.kh-policy--tabs .kh-policy-section { padding: 1.3em; border: 1px solid var(--kh-policy-border); border-radius: .6em; }
.kh-policy--tabs .kh-policy-section:last-child { border: 1px solid var(--kh-policy-border); }
.kh-policy--tabs .kh-policy-panel--inactive { display: none; }
.kh-policy--tabs .kh-policy-section h2 { font-size: 1.15em; }
.kh-policy--tabs .kh-policy-number { display: none; }
@media print {
    .kh-policy--tabs .kh-policy-panel--inactive { display: block; }
    .kh-policy--tabs .kh-policy-section { border: 0; padding: 1em 0; }
}
