.org-chart { margin-top: 84px; padding: 60px 0 20px; border-top: 1px solid var(--line); scroll-margin-top: 100px; }
.org-heading { margin-bottom: 38px; }
.org-heading h2 { font-size: clamp(1.8rem, 3.5vw, 2.7rem); line-height: 1.15; margin-bottom: 10px; }
.org-heading p:last-child, .org-departments > p { color: #52666c; line-height: 1.6; }
.org-section + .org-section { margin-top: 42px; }
.org-section h3 { margin: 0 0 18px; color: var(--ink); font-size: 1.2rem; }
.org-organs, .org-executive-list, .org-department-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; }
.org-governance-tree, .org-executive-tree { max-width: 920px; margin-inline: auto; }
.org-tree-root { position: relative; width: min(100%, 320px); margin-inline: auto; justify-content: center; background: #0d2d35; border-color: #0d2d35; color: white; }
.org-tree-root .org-number { color: #f1bd42; }
.org-tree-root::after { content: ''; position: absolute; top: 100%; left: 50%; height: 24px; border-left: 1px solid #9bb3b3; }
.org-organs { position: relative; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 24px; padding-top: 24px; }
.org-organs::before { content: ''; position: absolute; top: 0; left: 16.667%; right: 16.667%; border-top: 1px solid #9bb3b3; }
.org-organs > li { position: relative; }
.org-organs > li::before { content: ''; position: absolute; bottom: 100%; left: 50%; height: 24px; border-left: 1px solid #9bb3b3; }
.org-executive-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.org-executive-tree { position: relative; padding-top: 30px; border-top: 1px solid #9bb3b3; }
.org-executive-tree::before { content: ''; position: absolute; top: 0; left: 50%; height: 30px; border-left: 1px solid #9bb3b3; }
.org-executive-tree h3 { display: table; position: relative; margin: 0 auto 24px; padding: 14px 20px; border: 1px solid #69988b; border-radius: var(--radius); background: #fff; color: var(--green-deep); text-align: center; }
.org-executive-tree h3::after { content: ''; position: absolute; top: 100%; left: 50%; height: 24px; border-left: 1px solid #9bb3b3; }
.org-executive-list { position: relative; padding-top: 24px; }
.org-executive-list::after { content: ''; position: absolute; top: 100%; left: 50%; height: 42px; border-left: 1px solid #9bb3b3; }
.org-executive-list::before { content: ''; position: absolute; top: 0; left: 16.667%; right: 16.667%; border-top: 1px solid #9bb3b3; }
.org-executive-list > li:nth-child(-n+3) { position: relative; }
.org-executive-list > li:nth-child(-n+3)::before { content: ''; position: absolute; bottom: 100%; left: 50%; height: 24px; border-left: 1px solid #9bb3b3; }
.org-office { display: flex; align-items: center; gap: 14px; min-width: 0; padding: 20px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; color: var(--ink); }
.org-office strong { font-size: 1rem; line-height: 1.4; font-weight: 600; overflow-wrap: anywhere; }
.org-office-main { background: #0d2d35; border-color: #0d2d35; color: white; }
.org-office-main .org-number { color: #f1bd42; }
.org-office-main::after { content: ''; position: absolute; top: 100%; left: 50%; height: 42px; border-left: 1px solid #9bb3b3; }
.org-number { flex: none; color: var(--green-deep); font-size: .875rem; font-weight: 700; }
.org-departments-node { display: table; position: relative; margin-inline: auto !important; margin-bottom: 0 !important; padding: 16px 22px; border: 1px solid #69988b; border-radius: var(--radius); color: var(--green-deep) !important; text-align: center; }
.org-departments-tree { position: relative; padding-top: 26px; border-top: 1px solid #9bb3b3; }
.org-departments-tree::before { content: ''; position: absolute; bottom: 100%; left: 50%; height: 42px; border-left: 1px solid #9bb3b3; }
.org-departments-node::after { content: ''; position: absolute; top: 100%; left: 50%; height: 24px; border-left: 1px solid #9bb3b3; }
.org-departments > p { margin: 0 0 22px; }
.org-department-list { position: relative; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; margin-top: 24px; padding-top: 24px; }
.org-department-list::before { content: ''; position: absolute; top: 0; bottom: 0; left: 50%; border-left: 1px solid #9bb3b3; }
.org-department-item { min-width: 0; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; }
.org-department-item { position: relative; }
.org-department-item::before { content: ''; position: absolute; top: 34px; left: 100%; width: 8px; border-top: 1px solid #9bb3b3; }
.org-department-item:nth-child(even)::before { left: auto; right: 100%; }
.org-department summary { display: flex; align-items: start; gap: 14px; min-height: 88px; padding: 22px; cursor: pointer; list-style: none; }
.org-department summary::-webkit-details-marker { display: none; }
.org-department summary::after { content: '+'; margin-left: auto; color: var(--green-deep); font-size: 1.35rem; line-height: 1.1; }
.org-department[open] summary::after { content: '−'; }
.org-department summary:focus-visible { outline: 2px solid var(--green-deep); outline-offset: -3px; border-radius: var(--radius); }
.org-department-title { flex: 1; min-width: 0; font-weight: 600; line-height: 1.45; overflow-wrap: anywhere; }
.org-unit-body { padding: 20px 22px; border-top: 1px solid var(--line); }
.org-unit-body h4 { margin: 0 0 14px; color: var(--green-deep); font-size: .875rem; }
.org-units { margin: 0; padding-left: 20px; color: #52666c; font-size: .9375rem; line-height: 1.6; }
.org-units li + li { margin-top: 8px; }
@media (max-width: 800px) {
  .org-executive-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .org-executive-list::before { left: 25%; right: 25%; }
  .org-executive-list > li:nth-child(3)::before { display: none; }
}
@media (max-width: 660px) {
  .org-chart { margin-top: 58px; padding-top: 38px; }
  .org-office { padding: 17px 13px; gap: 9px; }
  .org-office strong { font-size: .9375rem; }
  .org-organs, .org-department-list { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 0 0 0 20px; border-left: 1px solid #9bb3b3; }
  .org-organs::before, .org-department-list::before { display: none; }
  .org-organs > li::before, .org-department-item::before, .org-department-item:nth-child(even)::before { bottom: auto; top: 50%; left: -20px; right: auto; width: 19px; height: 0; border-left: 0; border-top: 1px solid #9bb3b3; }
  .org-tree-root::after { left: 0; height: 24px; }
  .org-organs { margin-top: 24px; }
  .org-executive-tree { padding-top: 24px; }
  .org-executive-tree::before { height: 24px; }
  .org-department-list { margin-left: 0; }
  .org-departments-node::after { height: 24px; }
  .org-department summary { min-height: 0; padding: 20px 16px; gap: 10px; }
  .org-unit-body { padding: 18px 16px; }
}
