:root{
  --paper:#BDB6A8; --ink:#1E1B16; --mark:#2C3E63; --stamp:#7A2E22; --rule:#9A9384;
  --muted:#5E574B; --panel:#CFC8BA; --dim:#3F3A31;
  --serif:"Iowan Old Style",Palatino,"Palatino Linotype",Georgia,serif;
  --mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);
  font-size:17.5px;line-height:1.6;font-variant-numeric:tabular-nums}
a{color:var(--mark);text-underline-offset:2px;text-decoration-thickness:1px}
a:hover{background:var(--panel)}
.mono{font-family:var(--mono);font-size:.76em;letter-spacing:.08em;text-transform:uppercase}
.skip{position:absolute;left:-9999px}
.skip:focus{left:8px;top:8px;background:var(--ink);color:var(--paper);padding:8px 12px;z-index:9}
/* ledger bar */
.ledgerbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;padding:10px 20px;
  border-bottom:2px solid var(--ink)}
.period{font-family:var(--mono);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;
  background:var(--mark);color:var(--paper);padding:3px 9px}
.brand{font-family:var(--serif);font-weight:700;font-size:1.16rem;letter-spacing:.01em;
  color:var(--ink);text-decoration:none}
.brand:hover{background:transparent;color:var(--mark)}
.refs{display:flex;flex-wrap:wrap;gap:.15rem .9rem;margin-left:auto}
.ref{font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink);text-decoration:none;border-bottom:1px solid transparent;padding-bottom:2px}
.ref:hover{border-bottom-color:var(--mark);color:var(--mark);background:transparent}
.ref[aria-current="true"]{border-bottom-color:var(--mark);color:var(--mark);font-weight:700}
/* the column rule: a double rule, as an account book has */
.colrule{height:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);margin-top:3px}
main{display:block}
.crumb{font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--muted);padding:12px 20px 0;max-width:1180px;margin:0 auto}
.crumb a{color:var(--muted)}
.crumb-sep{color:var(--rule)}
.sheet{max-width:1180px;margin:0 auto;padding:8px 20px 8px;position:relative}
/* folio number in the margin */
.folio{position:absolute;right:20px;top:14px;font-family:var(--mono);font-size:.62rem;
  letter-spacing:.18em;text-transform:uppercase;color:var(--rule)}
/* reading column: two columns of prose, tables and figures spanning both */
.col.ledger{max-width:none;margin:0;padding:0}
.ledger-flow{column-count:2;column-gap:38px;column-rule:1px solid var(--rule);margin-top:.4rem}
.ledger-flow h2,.ledger-flow p,.ledger-flow ul,.ledger-flow ol,.ledger-flow .note{break-inside:avoid}
.ledger-flow .tablewrap,.ledger-flow .fig,.ledger-flow .formula,.ledger-flow .balance{
  column-span:all;margin-left:0;margin-right:0}
h1{font-family:var(--serif);font-weight:700;font-size:2rem;line-height:1.18;letter-spacing:-.005em;
  margin:.3rem 0 1rem}
h2{font-family:var(--mono);font-weight:700;font-size:.72rem;letter-spacing:.16em;
  text-transform:uppercase;margin:2rem 0 .6rem;padding-bottom:.3rem;
  border-bottom:2px solid var(--ink);display:flex;align-items:baseline;gap:.5rem}
.col.ledger{counter-reset:folio}
.ledger-flow h2:not(.sources-h):not(.xlink-h){counter-increment:folio}
.ledger-flow h2:not(.sources-h):not(.xlink-h)::before{
  content:"folio " counter(folio,decimal-leading-zero);flex:0 0 auto;
  font-family:var(--mono);font-size:.6rem;letter-spacing:.1em;color:var(--paper);
  background:var(--mark);padding:2px 6px}
p{margin:0 0 1rem}
ul,ol{margin:0 0 1.1rem;padding-left:1.5rem}
li{margin:0 0 .5rem}
li::marker{font-family:var(--mono);font-size:.78em;color:var(--mark);font-weight:700}
.verdict{border-left:4px solid var(--mark);background:var(--panel);padding:.9rem 1rem;
  margin:0 0 1.1rem;font-size:1.06rem;line-height:1.5}
/* stamp */
.stamp{display:flex;flex-wrap:wrap;gap:6px 18px;border-top:1px solid var(--ink);
  border-bottom:1px solid var(--ink);padding:7px 0;margin:0 0 1rem;font-size:.76rem;
  font-family:var(--mono);letter-spacing:.03em}
.stamp-cell{color:var(--muted)}
.stamp-rots{color:var(--stamp);font-weight:700}
/* the evidence strip: the cost-breakdown bar */
.costbar{border-top:2px solid var(--ink);border-bottom:1px solid var(--ink);
  padding:.7rem 0;margin:0 0 1.5rem}
.cb-total{font-family:var(--mono);font-size:1rem;font-weight:700;margin:0 0 .5rem;color:var(--ink)}
.cb-lab{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mark);
  margin-right:.6rem}
.cb-track{display:flex;height:22px;border:1px solid var(--ink);overflow:hidden}
.cb-track .seg-a{background:var(--mark)}
.cb-track .seg-b{background:var(--ink)}
.cb-track .seg-c{background:var(--rule)}
.cb-legend{display:flex;flex-wrap:wrap;gap:.3rem 1.3rem;margin:.5rem 0 0;
  font-family:var(--mono);font-size:.68rem;letter-spacing:.04em;color:var(--muted)}
.cl-item{display:inline-flex;align-items:center;gap:.4rem}
.cl-sw{width:11px;height:11px;display:inline-block;border:1px solid var(--ink)}
.cl-sw.seg-a{background:var(--mark)} .cl-sw.seg-b{background:var(--ink)} .cl-sw.seg-c{background:var(--rule)}
.cl-pct{color:var(--ink);font-weight:700}
/* the running balance track */
.balance{border:1px solid var(--ink);border-top:4px solid var(--mark);padding:.6rem .8rem;
  margin:0 0 1.6rem}
.bal-h{font-family:var(--mono);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--mark);margin:0 0 .5rem;font-weight:700}
.bal-list{list-style:none;padding:0;margin:0;display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.bal-list li{display:flex;flex-direction:column;gap:1px;padding:.35rem .8rem;
  border-right:1px solid var(--rule)}
.bal-list li:last-child{border-right:0}
.tr-lab{font-family:var(--mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--muted)}
.tr-val{font-family:var(--mono);font-size:.92rem;font-weight:700;color:var(--ink)}
.tr-per{font-family:var(--mono);font-size:.62rem;color:var(--mark)}
.tr-ref{font-family:var(--mono);font-size:.56rem;color:var(--rule);line-height:1.3}
/* figures */
.drawings{display:grid;gap:18px}
.fig{margin:0 0 1.4rem;border:1px solid var(--ink);background:var(--panel)}
.fig img{display:block;width:100%;height:auto}
.fig figcaption{font-family:var(--mono);font-size:.66rem;letter-spacing:.04em;color:var(--muted);
  padding:7px 10px;border-top:1px solid var(--ink)}
/* worked example */
.formula{border:1px solid var(--ink);border-left:4px solid var(--mark);padding:11px 13px;
  margin:0 0 1.5rem;background:var(--panel);break-inside:avoid}
.formula-tag{font-family:var(--mono);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--mark);font-weight:700;margin:0 0 .5rem}
.formula-expr{font-family:var(--mono);font-size:.86rem;line-height:1.5;margin:0 0 .5rem;color:var(--ink)}
.formula-units,.formula-worked{font-size:.9rem;margin:0 0 .3rem;color:var(--ink)}
.formula-units .mono,.formula-worked .mono{margin-right:.45rem;color:var(--mark)}
/* tables */
.tablewrap{overflow-x:auto;margin:0 0 1.4rem;border:1px solid var(--ink);background:var(--paper)}
table{border-collapse:collapse;width:100%;font-size:.86rem}
th,td{text-align:left;padding:7px 9px;border-bottom:1px solid var(--rule);vertical-align:top}
th{font-family:var(--mono);font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  font-size:.6rem;color:var(--paper);background:var(--mark);
  border-bottom:2px solid var(--ink)}
td{font-family:var(--mono);font-size:.78rem;letter-spacing:.01em}
td:first-child{font-family:var(--serif);font-size:.9rem;letter-spacing:0}
tr:last-child td{border-bottom:0}
.note{border-left:3px solid var(--stamp);padding:.15rem 0 .15rem .9rem;color:var(--dim)}
/* cross links */
.xlink{border-top:1px solid var(--ink);margin-top:2rem;padding-top:.9rem}
.xlink-h{font-family:var(--mono);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;
  border:0;margin:0 0 .5rem;padding:0;color:var(--muted)}
.xlink ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.4rem .8rem}
.xlink li{margin:0}
.xlink a{font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;
  text-decoration:none;border:1px solid var(--rule);padding:3px 8px;display:inline-block}
.xlink a:hover{background:var(--mark);color:var(--paper);border-color:var(--mark)}
/* sources: a ruled schedule */
.sources{margin-top:2.2rem;padding:0;border-top:4px double var(--ink);
  border-bottom:1px solid var(--ink)}
.sources-h{font-family:var(--mono);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--mark);border:0;margin:0;padding:.7rem 0 .5rem}
.sources-list{list-style:none;padding:0;margin:0}
.sources-list li{display:grid;grid-template-columns:2.1rem minmax(0,1fr);gap:0 .8rem;
  padding:.6rem 0;border-bottom:1px dotted var(--rule);align-items:baseline}
.sources-list li:last-child{border-bottom:0}
.src-idx{font-family:var(--mono);font-size:.66rem;font-weight:700;color:var(--paper);
  background:var(--mark);text-align:center;padding:.16rem 0;line-height:1.25}
.src-link{font-size:.9rem;color:var(--ink);text-decoration:underline;
  text-decoration-color:var(--mark);text-underline-offset:3px;text-decoration-thickness:1px}
.src-sup{grid-column:2;font-size:.82rem;color:var(--muted);margin-top:.15rem}
.sources-note{font-family:var(--mono);font-size:.62rem;color:var(--rule);margin:.55rem 0 0;
  letter-spacing:.03em;line-height:1.45}
/* close note: ruled off */
.close-note{border-top:1px solid var(--ink);border-bottom:3px double var(--ink);
  padding:.8rem 0;margin:1.6rem 0 1.2rem;font-size:.98rem}
.close-tag{font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--paper);background:var(--mark);padding:2px 7px;margin-right:.6rem;font-weight:700}
.closed-mark{font-family:var(--mono);font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--paper);background:var(--stamp);padding:2px 6px;margin-right:.5rem;font-weight:700}
.closed-open{background:var(--rule);color:var(--ink)}
/* sign-off */
.signoff{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;
  border:1px solid var(--ink);padding:10px;margin:0 0 2.2rem}
.so-cell{display:flex;flex-direction:column;gap:14px}
.so-lab{font-family:var(--mono);font-size:.56rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted)}
.so-line{display:block;border-bottom:1px solid var(--rule);height:1px}
/* homepage: the spine */
.lead{max-width:1180px;margin:0 auto;padding:8px 20px 0;display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:26px;align-items:start}
.lead-text h1{font-size:1.72rem;margin-top:0}
.lead-figs{display:grid;gap:16px}
.spine{max-width:1180px;margin:0 auto;padding:28px 20px 0}
.sp-head{font-family:var(--mono);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;
  border-bottom:2px solid var(--ink);margin:0 0 .6rem;padding-bottom:.35rem;color:var(--ink)}
.sp-head::before{content:none}
table.sp td,table.sp th{white-space:nowrap}
.sp-period{font-family:var(--mono);font-weight:700;color:var(--mark)}
.sp-state{font-family:var(--mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}
.sp-entry{font-family:var(--mono);font-size:.76rem;color:var(--muted)}
.sp-folio{font-family:var(--mono);font-weight:700;color:var(--mark)}
.sp-title{font-family:var(--serif);font-size:.92rem;white-space:normal}
.sp-title a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule)}
.sp-title a:hover{background:var(--panel);border-bottom-color:var(--mark)}
.sp-cab{font-family:var(--mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;
  color:var(--muted)}
.sp-bal{font-family:var(--mono);font-size:.76rem;color:var(--dim)}
.sp-date{font-family:var(--mono);font-size:.72rem;color:var(--muted)}
.reg-recast{font-family:var(--mono);font-size:.54rem;letter-spacing:.1em;text-transform:uppercase;
  background:var(--stamp);color:var(--paper);padding:1px 5px;margin-left:.5rem}
.homegrid{max-width:1180px;margin:30px auto 0;padding:0 20px}
/* footer */
.foot{max-width:1180px;margin:44px auto 0;padding:20px;border-top:4px double var(--ink);
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.foot-h{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;
  border:0;margin:0 0 .55rem;padding:0;color:var(--mark)}
.foot-h::before{content:none}
.foot ul{list-style:none;padding:0;margin:0;font-size:.84rem}
.foot li{margin:0 0 .3rem}
.foot-note{grid-column:1 / -1;font-size:.8rem;color:var(--muted);margin:.8rem 0 0;
  border-top:1px solid var(--rule);padding-top:.7rem}
@media (max-width:1000px){
  .lead{grid-template-columns:1fr}
  .ledger-flow{column-count:1}
  .bal-list{grid-template-columns:1fr 1fr}
  .bal-list li{border-right:0;border-bottom:1px solid var(--rule)}
  .foot{grid-template-columns:1fr 1fr}
  .signoff{grid-template-columns:1fr 1fr}
  h1{font-size:1.62rem}
  .folio{position:static;display:block;margin-bottom:.4rem}
}
@media print{
  .ledgerbar,.colrule,.foot,.crumb,.xlink,.sources,.skip,.signoff{display:none}
  .sheet,.col.ledger{max-width:none;padding:0}
  .ledger-flow{column-count:2}
  .verdict{border-left:0;background:none;padding:0;font-weight:700}
  a{color:#000;text-decoration:none}
  .fig,.tablewrap,.balance,.costbar{border-color:#000}
  body{background:#fff;color:#000}
}
