/* A financial statement is the visual centre of this page. */
.balance-page { max-width:1040px; }
.balance-intro { text-align:center; margin:0 auto 40px; }
.balance-category { color:#3B4FD9; font-size:11px!important; font-weight:700; letter-spacing:.08em; margin-bottom:14px; }
.balance-intro>p:not(.balance-category) { margin:16px auto 0; max-width:55ch; }
.balance-intro h1 { font-size:clamp(34px,4.3vw,52px); }
.balance-report { border:1px solid #DCE0EB; border-radius:10px; background:#FEFEFF; overflow:hidden; }
.balance-report-head { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:24px; border-bottom:1px solid var(--hair); }
.balance-report-head h2 { font-size:20px; }
.balance-report-head p { margin-top:6px; font-size:12px; }
.balance-report-head>a { flex:none; font-size:13px; }
.balance-table-scroll { overflow-x:auto; }
.balance-table { min-width:640px; }
.balance-table caption { text-align:left; padding:20px 24px; font-size:16px; font-weight:700; }
.balance-table caption span { display:block; margin-top:6px; font-size:12px; font-weight:400; color:var(--body); }
.balance-label { width:40%; }
.balance-estimate { background:#F4F6FF; }
.balance-table th,.balance-table td { padding:12px 24px; font:inherit; font-size:14px; letter-spacing:0; text-align:right; border-top:1px solid var(--hair); font-variant-numeric:tabular-nums; }
.balance-table th:first-child { text-align:left; }
.balance-table thead th { font-size:13px; color:var(--ink); font-weight:700; }
.balance-table small { display:block; margin-top:5px; color:var(--body); font-size:11px; font-weight:400; }
.balance-table tbody th { font-weight:400; color:var(--body); }
.balance-table .balance-group th { padding-top:18px; padding-bottom:10px; font-size:12px; font-weight:700; color:#3B4FD9; background:#F0F2F9; text-align:left; }
.balance-table .balance-total th,.balance-table .balance-total td { font-weight:800; color:var(--ink); border-top:1px solid #BBC2D5; padding-top:14px; padding-bottom:14px; }
.balance-report-foot { display:flex; justify-content:space-between; gap:12px; padding:16px 24px; border-top:1px solid var(--hair); font-size:12px; color:var(--body); }
.balance-changes { padding:36px 0 28px; }
.balance-changes>h2 { font-size:21px; }
.balance-changes dl { margin-top:22px; }
.balance-changes dl>div { display:grid; grid-template-columns:140px 1fr 1fr; gap:24px; align-items:baseline; padding:14px 0; border-bottom:1px solid var(--hair); }
.balance-changes dt { font-size:14px; font-weight:700; }
.balance-changes dd { display:flex; gap:14px; align-items:center; margin:0; font-size:15px; font-variant-numeric:tabular-nums; }
.balance-changes dd>span:nth-child(2) { color:#3B4FD9; }
.balance-changes strong { font-weight:700; }
.balance-changes p { font-size:13px; }
.balance-definitions { margin:0; }
.balance-definitions>div { display:flex; gap:24px; padding:10px 0; font-size:14px; line-height:1.65; }
.balance-definitions dt { flex:0 0 90px; font-weight:700; }
.balance-definitions dd { margin:0; color:var(--body); }
@media(max-width:700px) {
 .balance-report-head { padding:20px 16px; align-items:flex-start; }
 .balance-report-head h2 { font-size:18px; }
 .balance-report-head p { max-width:26ch; }
 .balance-report-head>a { font-size:12px; }
 .balance-table caption { padding:18px 16px; }
 .balance-report-foot { padding:14px 16px; flex-direction:column; gap:6px; }
 .balance-changes dl>div { grid-template-columns:1fr; gap:7px; }
 .balance-definitions>div { flex-direction:column; gap:4px; }
 .balance-definitions dt { flex:auto; }
}
