/* Governance content; shared site geometry remains owned by site-shell.css. */
.document-download { display: inline-flex; align-items: center; min-height: 44px; margin-top: .75rem; font-weight: 700; }
.formal-toc { list-style: none; margin: 0; padding: 0; }
.formal-toc li { border-bottom: 1px solid var(--line, #cbd0d3); }
.formal-toc a { display: flex; align-items: baseline; gap: 1rem; padding: 1.15rem .5rem; color: var(--navy); text-decoration: none; font: 600 1.18rem/1.5 "Fraunces", Georgia, serif; }
.formal-toc a:hover, .formal-toc a:focus-visible { background: #f0ede4; text-decoration: underline; }
.formal-toc a > span:first-child { flex: 0 0 7rem; font: 600 .85rem/1.5 "IBM Plex Mono", monospace; }
.formal-toc a > span:last-child { margin-left: auto; }
.aoi-hero .article-banner { color: var(--navy); background: transparent; border-block: 3px solid var(--navy); padding-inline: 0; }
.governance-reading { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; align-items: start; }
.governance-reading > * { min-width: 0; }
.governance-outline { padding: 1.5rem; background: #f7f3e9; border: 1px solid var(--line); max-height: 45vh; overflow: auto; }
.governance-outline h2 { margin-top: 0; font-size: 1.25rem; }
.governance-outline ol { padding-left: 1.15rem; list-style: none; }
.governance-outline > ol { padding-left: 0; }
.governance-outline li { margin: .5rem 0; }
.governance-outline a { display: block; color: var(--navy); line-height: 1.5; }
.governance-outline a span { font-family: "IBM Plex Mono", monospace; font-size: .8em; }
.section-number { display: block; font: 600 .85rem/1.5 "IBM Plex Mono", monospace; margin-bottom: .3rem; }
.document-body { overflow-wrap: anywhere; }
/* The Word style "RDA Eternity Notice": a cream band with a gold bar, shown on every designated Eternity
   Clause Article in both the Bylaws and the Articles of Incorporation. */
.document-body .eternity-notice {
  margin: 1.1rem 0 1.4rem;
  padding: 0.75rem 1rem 0.75rem 1.1rem;
  border-left: 4px solid #c58b1a;
  background: #fdf7ec;
  font-weight: 700;
}
/* The Word table that lists the designated Eternity Clause Articles (styles "RDA Eternity Table Group",
   "Number" and "Title"): a gold header, gold group bands with white text, and cream alternate rows. The band and
   row fills come from the Word cells; these rules supply the borders and text treatment. */
.document-body .eternity-table { border-top: 3px solid #8a5a00; border-bottom: 3px solid #8a5a00; border-left: 1px solid #e0cfa8; border-right: 1px solid #e0cfa8; }
.document-body .eternity-table th,
.document-body .eternity-table td { border: 0; border-bottom: 1px solid #efe3c8; padding: .35rem .75rem; vertical-align: middle; }
.document-body .eternity-table th,
.document-body .eternity-table th p { color: #fff; font-weight: 700; letter-spacing: .06em; font-size: .8rem; }
.document-body .eternity-table th:first-child { text-align: center; width: 1%; white-space: nowrap; }
.document-body .eternity-table .eternity-table-group { color: #fff; font-weight: 700; font-size: .78rem; letter-spacing: .08em; }
.document-body .eternity-table .eternity-table-number { color: #1f2937; font-weight: 700; text-align: center; }
.document-body .eternity-table .eternity-table-title { color: #1f2937; font-weight: 700; }
.document-body .document-centered { text-align: center; }
.document-body .document-note { font-size: .9rem; }
.document-body .source-list { list-style: none; padding-left: 0; }
.source-list-item { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: .25rem; }
.source-list-item.level-1 { margin-left: 2rem; }
.source-list-item.level-2 { margin-left: 4rem; }
.document-body td p, .document-body th p { font: inherit; margin: .25rem 0; }
.document-body .bylaws-page-nav { flex-wrap: wrap; }
.document-body .bylaws-page-nav a { min-height: 44px; display: inline-flex; align-items: center; }
.document-body .bylaws-figure img { max-height: 85vh; object-fit: contain; }
@media (min-width: 1600px) {
 .governance-reading:has(.governance-outline) { grid-template-columns: minmax(210px, 24%) minmax(0, 1fr); }
 .governance-outline { position: sticky; top: calc(var(--shell-header-height, 85px) + 1rem); max-height: calc(100vh - var(--shell-header-height, 85px) - 100px); }
}
@media (max-width: 600px) {
 .formal-toc a { flex-wrap: wrap; gap: .25rem .75rem; }
 .formal-toc a > span:first-child { flex-basis: 100%; }
 .governance-outline a { padding-block: .35rem; }
 .source-list-item { grid-template-columns: 2.25rem minmax(0, 1fr); }
}
.governance-figure-open { display: block; width: 100%; border: 0; background: transparent; padding: 0; cursor: zoom-in; }
.document-signature img { max-width: min(100%, 22rem); }
.governance-figure-dialog { box-sizing: border-box; width: min(96vw, 1600px); max-width: 96vw; max-height: 92vh; padding: 2.5rem 1rem 1rem; border: 1px solid var(--line); background: #fffdf8; overflow: auto; }
.governance-figure-dialog::backdrop { background: rgb(0 0 0 / .75); }
.governance-figure-close { position: absolute; top: 0; right: .5rem; min-width: 44px; min-height: 44px; font-size: 1.75rem; border: 0; background: #fffdf8; color: #153348; cursor: pointer; }
.document-body .governance-figure-dialog img { max-height: 75vh; width: 100%; object-fit: contain; }
.figure-links { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; justify-content: center; }
.figure-links a { display: inline-flex; align-items: center; min-height: 44px; }
/* Reserve each source image's aspect ratio before native lazy loading starts. */
.document-body .governance-figure-open img { width: 100%; height: auto; }
.document-body .document-signature img { width: 22rem; height: auto; }

/* Preserve readable column headings; wide tables scroll inside their region. */
.governance-document .bylaws-table-wrap table:has(tr > :nth-child(3)) { min-width: 40rem; }
.governance-document .bylaws-table-wrap th { overflow-wrap: normal; word-break: normal; }
/* The document body breaks long words anywhere, which also lets a table column shrink below its longest word
   and split ordinary words across lines ("Actin / g / Direct / or"). Cells break a word only when it cannot fit. */
.governance-document .bylaws-table-wrap td { overflow-wrap: break-word; word-break: normal; }
/* The first column holds the term or number, so it keeps its longest word whole and the table scrolls instead. */
.governance-document .bylaws-table-wrap td:first-child { overflow-wrap: normal; }

.governance-document .copy-link { min-height: 24px; }
