/* Source documents presented as readable HTML, without extra JavaScript. */
.parent-archive-hero.page-hero { padding-block: clamp(2.5rem, 6vw, 5rem); background: var(--color-sage-soft); }
.parent-archive-back { display: inline-flex; align-items: center; min-height: 44px; margin-bottom: 1rem; font-weight: 650; }
.parent-archive-warning { max-width: 70ch; font-weight: 650; }
.parent-archive-content.entry-content { max-width: 64rem; overflow-wrap: anywhere; }
.parent-archive-body { padding-top: 2.5rem; }
.parent-archive-nav { margin: 0 0 3rem; padding: 1.5rem; border: 1px solid var(--color-border); border-radius: var(--radius-md); }
.parent-archive-nav h2 { margin: 0 0 1rem; font-size: 1.25rem; }
.parent-archive-nav ul { display: flex; flex-wrap: wrap; gap: .65rem; padding: 0; margin: 0; list-style: none; }
.parent-archive-nav li { display: flex; min-width: 0; max-width: 100%; margin: 0; }
.parent-archive-nav a { display: inline-flex; align-items: center; min-height: 44px; padding: .6rem 1rem; border-radius: .6rem; background: var(--color-sun-soft); }
.parent-archive-block { margin-block: 3.5rem; }
.parent-archive-block > h2 { margin-top: 0; padding-bottom: .8rem; border-bottom: 2px solid var(--brand-orange); }
.parent-archive-block > p, .parent-archive-block > details { max-width: 72ch; }
.parent-fees { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.parent-fees > div { padding: 1.25rem; border: 1px solid var(--color-border); border-radius: var(--radius-md); }
.parent-fees dt { font-weight: 700; font-size: 1.1rem; }
.parent-fees dd { margin: .5rem 0 0; }
.parent-fee-value { font-size: 1.3rem; font-weight: 700; color: var(--color-link); }
.parent-source-term { font-size: .95rem; }
.parent-books-table { max-width: 40rem; }
.parent-books-table caption { text-align: left; font-weight: 650; padding-bottom: .75rem; }
.parent-dates, .parent-events { list-style: none; padding: 0; }
.parent-dates li { display: grid; grid-template-columns: minmax(12rem, .75fr) minmax(0, 1.5fr); gap: .4rem 1.5rem; padding: 1.1rem 0; border-bottom: 1px solid var(--color-border); }
.parent-dates p, .parent-events p { margin: .35rem 0 0; }
.parent-dates strong { display: block; }
.parent-archive-status { display: inline-block; margin-top: .4rem; padding: .15rem .55rem; border: 1px solid var(--color-border); border-radius: .35rem; background: var(--color-sage-soft); font-size: .88rem; font-weight: 650; }
.parent-events > li { padding: 1.25rem 0; border-bottom: 1px solid var(--color-border); }
.parent-events h4 { margin: .2rem 0 .5rem; font-size: 1.15rem; }
.parent-event-date { font-weight: 700; color: var(--color-link); }
.parent-archive-content details { margin-top: 1.5rem; padding: 1rem 1.25rem; border: 1px solid var(--color-border); border-radius: var(--radius-md); }
.parent-archive-content summary { min-height: 44px; cursor: pointer; font-weight: 700; }
.parent-archive-content details[open] summary { margin-bottom: 1rem; }
.parent-bank-account { overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.parent-archives { margin-block: 0 3rem; padding: clamp(1.25rem, 3vw, 2rem); border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-sage-soft); }
.parent-archives h2 { font-size: clamp(1.4rem, 3vw, 2rem); margin: .4rem 0 1.25rem; }
.parent-archive-card { display: flex; align-items: start; justify-content: space-between; gap: 1rem; }
.parent-archive-card + .parent-archive-card { margin-top: 1.5rem; }
.parent-archive-card h3 { font-size: 1.1rem; margin: 0 0 .5rem; }
.parent-archive-card p { margin: 0; max-width: 60ch; }
.parent-archive-badge { padding: .3rem .6rem; background: var(--color-sun-soft); border-radius: .35rem; font-size: .85rem; font-weight: 650; flex-shrink: 0; }
.parent-archive-content :where(h2, nav, section) { scroll-margin-top: 2rem; }
.parent-archive-content :target { outline: 2px solid var(--color-link); outline-offset: .5rem; }
.parent-directory-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; margin-block: 1.5rem 3rem; }
.parent-directory-grid > :last-child:nth-child(odd) { grid-column: 1 / -1; }
.parent-directory-card { display: flex; flex-direction: column; align-items: start; gap: .75rem; min-width: 0; padding: clamp(1.25rem, 3vw, 2rem); border: 1px solid var(--color-border); border-top: 4px solid var(--brand-orange); border-radius: var(--radius-md); background: var(--color-sage-soft); }
.entry-content .parent-directory-card h2, .entry-content .parent-directory-card h3 { margin: 0; font-size: clamp(1.3rem, 3vw, 1.65rem); }
.entry-content .parent-directory-card p { margin: 0; }
.parent-directory-card > a { display: inline-flex; align-items: center; min-height: 44px; margin-top: auto; font-weight: 700; }
.parent-directory-notice { padding: 1.25rem 1.5rem; border-left: 4px solid var(--brand-orange); background: var(--color-sun-soft); border-radius: 0 var(--radius-md) var(--radius-md) 0; }
@media (max-width: 40rem) {
 .parent-fees { grid-template-columns: minmax(0, 1fr); }
 .parent-directory-grid { grid-template-columns: minmax(0, 1fr); }
 .parent-dates li { grid-template-columns: minmax(0, 1fr); }
 .parent-archive-card { flex-direction: column; }
 .parent-archive-nav { padding: 1rem; }
 .parent-archive-block { margin-block: 2.5rem; }
 .parent-books-table th, .parent-books-table td { padding: .65rem; }
}
html[data-contrast="high"] :is(.parent-archive-nav a,.parent-archive-status,.parent-archives,.parent-archive-badge,.parent-archive-hero.page-hero) { background: #fff; color: #000; border-color: #000; }
html[data-contrast="high"] :is(.parent-fee-value,.parent-event-date) { color: #000; }
html[data-contrast="high"] :is(.parent-directory-card,.parent-directory-notice) { background: #fff; color: #000; border-color: #000; }
@media print {
 .parent-archive-back, .parent-archive-nav, .parent-archive-end { display: none; }
 .parent-fees { display: block; }
 .parent-fees > div, .parent-dates li, .parent-events > li { break-inside: avoid; }
 .parent-archive-content { max-width: none; }
}
