

:root{
  
  --paper:#FBFAF7;        
  --tint:#EFEEE9;         
  --tint-deep:#E4E2DA;    
  --ink:#16181D;          
  --ink-2:#4A4F57;        
  --ink-3:#696E77;        
  --rule:#D6D3CA;         
  --rule-soft:#E6E3DC;    
  --rubric:#9A2A1E;       
  --seal:#1F5138;         
  --ochre:#8A5B12;        
  
  --rev-bg:#16181D; --rev-fg:#FBFAF7; --rev-2:#A7ABB2;
  --rev-rule:#34383F; --rev-rubric:#E06B52;

  --serif:"Iowan Old Style",Constantia,"Palatino Linotype",Charter,Cambria,Georgia,ui-serif,"Liberation Serif","DejaVu Serif","Noto Serif",serif;
  --sans:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono","Cascadia Mono","Segoe UI Mono","Roboto Mono",Menlo,Consolas,monospace;

  --t-micro:.6875rem; --t-fine:.75rem; --t-small:.8125rem; --t-cap:.875rem;
  --t-body:1.0625rem; --t-lead:1.1875rem; --t-h4:1.0625rem;
  --t-h3:clamp(1.25rem,1.02rem + 1.05vw,1.6875rem);
  --t-h2:clamp(1.6875rem,1.12rem + 2.5vw,2.625rem);
  --t-h1:clamp(2.3125rem,1.05rem + 5.4vw,4.375rem);
  --t-fig:clamp(1.5rem,1.15rem + 1.6vw,2.0625rem);

  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;
  --s7:48px;--s8:64px;--s9:96px;--s10:128px;

  --shell:86rem; --pad:20px; --rail:0px; --gutter:0px;
  --measure:34rem; --head-h:54px;
  --anchor-offset:16px;   

  --w-hair:1px; --w-med:1px; --w-heavy:2px; --w-rubric:3px;--rail-mark:calc(3px + 13px);

  --d1:140ms; --d2:240ms; --d3:480ms; --d-draw:900ms;
  --ease:cubic-bezier(.2,.6,.2,1);
  --ease-rule:cubic-bezier(.65,0,.35,1);
}
@media (min-width:560px){ :root{ --pad:28px; --t-body:1.09375rem } }
@media (min-width:980px){
  :root{ --pad:36px; --rail:8.5rem; --gutter:2rem; --head-h:62px;
         --t-body:1.125rem; --t-lead:1.375rem }
}
@media (min-width:1200px){ :root{ --pad:40px; --rail:10.5rem; --gutter:2.5rem } }

*,*::before,*::after{box-sizing:border-box;border-radius:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--head-h) + var(--anchor-offset))}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font:400 var(--t-body)/1.62 var(--serif);
  font-variant-numeric:lining-nums;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
img,svg{max-width:100%;display:block}
h1,h2,h3,h4,p,ul,ol,figure,blockquote,table,hr{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
table{border-collapse:collapse;width:100%}
:focus-visible{outline:2px solid var(--rubric);outline-offset:3px}
::selection{background:var(--rubric);color:var(--paper)}

.shell{max-width:var(--shell);margin:0 auto;padding-inline:var(--pad)}
.u-hide{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:var(--pad);top:-100px;z-index:90;background:var(--ink);color:var(--paper);
  padding:10px 18px;font:600 var(--t-micro)/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;text-decoration:none}
.skip:focus{top:10px}

.lbl{font:600 var(--t-micro)/1.35 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-3);display:block}
.lbl--rubric{color:var(--rubric)}
.code{font:400 var(--t-fine)/1.4 var(--mono);letter-spacing:.02em}
.num{font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1}

.bar{height:var(--w-heavy);background:var(--ink);border:0}
.bar--hair{height:var(--w-hair);background:var(--rule)}
.bar--rubric{height:var(--w-rubric);background:var(--rubric)}

.mast{position:sticky;top:0;z-index:60;background:var(--paper);border-bottom:var(--w-hair) solid var(--ink)}
.mast-in{display:flex;align-items:center;gap:var(--s5);height:var(--head-h)}
.wordmark{display:flex;align-items:center;gap:10px;text-decoration:none;margin-right:auto;padding:6px 0}
.wordmark svg{width:19px;height:19px;flex:none}
.wordmark b{font:400 1.0625rem/1 var(--serif);letter-spacing:.22em;text-transform:uppercase;
  border-bottom:2px solid var(--rubric);padding-bottom:3px}
.mast-nav{display:none;align-items:stretch;gap:0;height:100%}
.mast-item{position:static;display:flex;align-items:center}
.mast-link{display:flex;align-items:center;gap:5px;height:100%;padding:0 14px;text-decoration:none;
  font:600 var(--t-micro)/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);
  border-bottom:2px solid transparent;margin-bottom:-1px;transition:color var(--d1) var(--ease),border-color var(--d1) var(--ease)}
.mast-link:hover,.mast-link:focus-visible{color:var(--ink);border-bottom-color:var(--rubric)}
.mast-link[aria-current]{color:var(--ink);border-bottom-color:var(--ink)}
.mast-link .caret{width:7px;height:7px;stroke:currentColor;stroke-width:1.6;fill:none;transition:transform var(--d2) var(--ease)}
.mast-item:hover .caret,.mast-item:focus-within .caret{transform:translateY(2px)}
.mast-cta{display:none}

.panel{position:absolute;left:0;right:0;top:100%;background:var(--paper);
  border-top:var(--w-hair) solid var(--rule);border-bottom:var(--w-heavy) solid var(--ink);
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity var(--d2) var(--ease),transform var(--d2) var(--ease),visibility 0s linear var(--d2)}
.mast-item:hover .panel,.mast-item:focus-within .panel{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--s8);padding:var(--s6) 0 var(--s7)}
.panel-col > .lbl{padding-bottom:7px;border-bottom:var(--w-hair) solid var(--ink);margin-bottom:2px}
.panel-col a{display:grid;grid-template-columns:3.25rem 1fr;gap:var(--s3);align-items:baseline;
  padding:9px 0;border-bottom:var(--w-hair) solid var(--rule-soft);text-decoration:none;
  transition:background var(--d1) var(--ease)}
.panel-col a:hover,.panel-col a:focus-visible{background:var(--tint)}
.panel-col a .code{color:var(--rubric)}
.panel-col a i{font-style:normal;font-size:var(--t-cap);letter-spacing:.005em}
.panel-note{grid-column:1/-1;padding-top:var(--s4);color:var(--ink-3);font-size:var(--t-small)}

.burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:34px;height:34px;margin-right:-6px}
.burger span{display:block;height:1.5px;background:var(--ink);transition:transform var(--d2) var(--ease),opacity var(--d1)}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

.index-sheet{position:fixed;inset:var(--head-h) 0 0;z-index:55;background:var(--paper);
  overflow-y:auto;padding-bottom:var(--s8);
  opacity:0;visibility:hidden;transition:opacity var(--d2) var(--ease),visibility 0s linear var(--d2)}
.index-sheet[data-open="true"]{opacity:1;visibility:visible;transition-delay:0s}
.index-sheet .lbl{padding:var(--s5) 0 7px;border-bottom:var(--w-hair) solid var(--ink)}
.index-sheet a{display:grid;grid-template-columns:3.25rem 1fr;gap:var(--s3);align-items:baseline;
  padding:12px 0;border-bottom:var(--w-hair) solid var(--rule-soft);text-decoration:none;font-size:var(--t-cap)}
.index-sheet a .code{color:var(--rubric)}
.index-sheet .ctl{margin-top:var(--s6);width:100%;justify-content:center}
@media (min-width:980px){
  .mast-nav{display:flex} .mast-cta{display:block} .burger{display:none}
  .index-sheet{display:none}
}

.ctl{display:inline-flex;align-items:center;gap:10px;padding:12px 22px;text-decoration:none;
  font:600 var(--t-micro)/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;
  border:var(--w-med) solid var(--ink);background:var(--paper);color:var(--ink);
  transition:background var(--d1) var(--ease),color var(--d1) var(--ease),border-color var(--d1) var(--ease)}
.ctl .arw{width:13px;height:9px;stroke:currentColor;stroke-width:1.6;fill:none;transition:transform var(--d2) var(--ease)}
.ctl:hover .arw,.ctl:focus-visible .arw{transform:translateX(4px)}
.ctl--solid{background:var(--ink);color:var(--paper)}
.ctl--solid:hover,.ctl--solid:focus-visible{background:var(--rubric);border-color:var(--rubric)}
.ctl--ghost:hover,.ctl--ghost:focus-visible{background:var(--ink);color:var(--paper)}
.ctl--sm{padding:9px 16px}

.tl{text-decoration:none;border-bottom:1px solid var(--rubric);padding-bottom:1px;
  transition:border-bottom-width var(--d1) var(--ease),color var(--d1) var(--ease)}
.tl:hover,.tl:focus-visible{border-bottom-width:2px;color:var(--rubric)}
.tl-more{display:inline-flex;align-items:baseline;gap:8px;text-decoration:none;
  font:600 var(--t-micro)/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;
  border-bottom:1px solid var(--ink);padding-bottom:6px;transition:border-color var(--d1),color var(--d1)}
.tl-more:hover,.tl-more:focus-visible{color:var(--rubric);border-bottom-color:var(--rubric)}
.tl-more .arw{width:13px;height:9px;stroke:currentColor;stroke-width:1.6;fill:none;transition:transform var(--d2) var(--ease)}
.tl-more:hover .arw{transform:translateX(4px)}

.sec{display:block}
.sec-grid{display:grid;grid-template-columns:1fr}
.rail{display:none}
.sec-main{border-left:var(--w-hair) solid var(--rule);padding-left:var(--s5);
  padding-block:var(--s8)}
@media (min-width:980px){
  .sec-grid{grid-template-columns:var(--rail) minmax(0,1fr);column-gap:0}
  .rail{display:block;padding-block:var(--s9);padding-right:var(--gutter);padding-left:var(--rail-mark)}
  .sec-main{padding-left:var(--gutter);padding-block:var(--s9)}
}
.sec-main--tight{padding-block:var(--s7)}
@media (min-width:980px){.sec-main--tight{padding-block:var(--s8)}}

.rail-no{font:400 var(--t-h3)/1 var(--serif);color:var(--rubric);display:block;font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1}
.rail-cap{font:600 var(--t-micro)/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-3);margin-top:8px;display:block}
.rail-mob{display:flex;align-items:baseline;gap:12px;margin-bottom:var(--s4)}
.rail-mob .n{font:400 1.25rem/1 var(--serif);color:var(--rubric);font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1}
@media (min-width:980px){.rail-mob{display:none}}

.measure{max-width:var(--measure)}
.measure-wide{max-width:46rem}

.lead{font:italic 400 var(--t-lead)/1.5 var(--serif);color:var(--ink);max-width:32rem;letter-spacing:.002em}
.p{margin-top:var(--s4);color:var(--ink-2)}
.p:first-child{margin-top:0}
.p strong{color:var(--ink);font-weight:600}
.p em{color:var(--ink)}
h2.h{font:400 var(--t-h2)/1.1 var(--serif);letter-spacing:-.015em;margin:0}
h3.h{font:400 var(--t-h3)/1.18 var(--serif);letter-spacing:-.01em;margin:0}
h4.h{font:600 var(--t-h4)/1.35 var(--serif);margin:0}

.hgroup{margin-bottom:var(--s5)}
.hgroup .lbl{margin-bottom:var(--s3)}
.hgroup .lead{margin-top:var(--s4)}

.dropcap::first-letter{
  float:left;font-size:4.05em;line-height:.79;padding:.06em .1em 0 0;margin-top:.03em;
  font-weight:400;color:var(--rubric)}

.sch{font-size:var(--t-cap)}
.sch caption{text-align:left;font:600 var(--t-micro)/1.4 var(--sans);letter-spacing:.15em;
  text-transform:uppercase;color:var(--ink-3);padding-bottom:8px}
.sch th{font:600 var(--t-micro)/1.3 var(--sans);letter-spacing:.13em;text-transform:uppercase;
  color:var(--ink-3);text-align:left;padding:0 0 7px;border-bottom:var(--w-med) solid var(--ink);vertical-align:bottom}
.sch td{padding:11px 0;border-bottom:var(--w-hair) solid var(--rule-soft);vertical-align:baseline;color:var(--ink-2)}
.sch td:first-child{color:var(--ink)}
.sch th+th,.sch td+td{padding-left:var(--s4)}
.sch .n{text-align:right;font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1;white-space:nowrap;color:var(--ink)}
.sch td.flag,.sch td .flag{color:var(--rubric)}
.sch tr:last-child td{border-bottom:0}
.sch tr.tot td{border-top:var(--w-med) solid var(--ink);border-bottom:3px double var(--ink);
  padding-top:12px;color:var(--ink);font-weight:600}
.sch tr.grp td{border-bottom:var(--w-med) solid var(--ink);padding:20px 0 6px;
  font:600 var(--t-micro)/1.3 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--rubric)}
.sch tbody tr{transition:background var(--d1) var(--ease)}
.sch tbody tr:not(.grp):hover{background:var(--tint)}
.sch-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
sup.mk{color:var(--rubric);font-size:.7em;line-height:0}

.vd{font:600 var(--t-micro)/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;white-space:nowrap;
  display:inline-flex;align-items:center;gap:6px}
.vd::before{content:"";width:7px;height:7px;flex:none;background:currentColor;border:1px solid transparent}
.vd--pass{color:var(--seal)}
.vd--open{color:var(--ochre)}
.vd--fail{color:var(--rubric)}
.vd--unknown{color:var(--ink-3)}
.vd--unknown::before{background:var(--paper);border-color:var(--ink-3)}

.ex{margin:0}
.ex-cap{display:flex;align-items:baseline;gap:var(--s3);flex-wrap:wrap;
  padding-bottom:8px;border-bottom:var(--w-heavy) solid var(--ink)}
.ex-no{font:600 var(--t-micro)/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--rubric);flex:none}
.ex-title{font:400 var(--t-cap)/1.35 var(--serif);color:var(--ink);flex:1 1 12rem}
.ex-mark{font:400 var(--t-micro)/1.3 var(--mono);letter-spacing:.22em;text-transform:uppercase;
  color:var(--rubric);border-bottom:1px solid var(--rubric);padding-bottom:2px;flex:none}
.ex-body{padding-top:var(--s4)}
.ex-src{margin-top:var(--s4);padding-top:8px;border-top:var(--w-hair) solid var(--rule);
  font-size:var(--t-fine);line-height:1.5;color:var(--ink-3)}
.ex-src b{color:var(--ink-2);font-weight:600}

.figs{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.75rem,1fr));gap:var(--s5)}
.fg{border-top:var(--w-hair) solid var(--rule);padding-top:9px}
.fg-l{display:block;font:600 var(--t-micro)/1.35 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3)}
.fg-v{display:block;font:400 var(--t-fig)/1.05 var(--serif);margin-top:6px;font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.015em}
.fg-v.is-flag{color:var(--rubric)} .fg-v.is-pass{color:var(--seal)} .fg-v.is-open{color:var(--ochre)}
.fg-n{display:block;font-size:var(--t-fine);color:var(--ink-3);margin-top:5px;line-height:1.45}

.meter{display:block;height:3px;background:var(--rule);margin-top:9px;overflow:hidden;min-width:5rem}
.meter i{display:block;height:100%;background:var(--ink);transform-origin:left;transform:scaleX(var(--v,0));
  transition:transform var(--d-draw) var(--ease-rule)}
.meter--pass i{background:var(--seal)} .meter--open i{background:var(--ochre)} .meter--flag i{background:var(--rubric)}
html.js .meter i{transform:scaleX(0)}
html.js .meter.is-in i{transform:scaleX(var(--v,0))}

.note{border-left:var(--w-rubric) solid var(--rubric);padding:2px 0 2px var(--s4);margin-top:var(--s4)}
.note .lbl{color:var(--rubric);margin-bottom:5px}
.note p{font-size:var(--t-small);line-height:1.55;color:var(--ink-2)}
.note--quiet{border-left-color:var(--ink)}
.note--quiet .lbl{color:var(--ink-3)}

.fnote{display:grid;grid-template-columns:1.25rem 1fr;gap:0 var(--s2);margin-top:var(--s3);
  font-size:var(--t-fine);line-height:1.5;color:var(--ink-3)}
.fnote .mk{color:var(--rubric);font-family:var(--serif);font-size:var(--t-small)}

.finds{margin-top:var(--s5);border-top:var(--w-med) solid var(--ink);counter-reset:f}

.finds li{counter-increment:f;position:relative;padding:12px 0 12px 1.9rem;
  border-bottom:var(--w-hair) solid var(--rule-soft);
  font-size:var(--t-small);line-height:1.55;color:var(--ink-2)}
.finds li::before{content:counter(f,decimal-leading-zero);position:absolute;left:0;top:12px;
  font:400 var(--t-fine)/1.75 var(--mono);color:var(--rubric);letter-spacing:.03em}
.finds li em{color:var(--ink);font-style:italic}
.finds li strong{color:var(--ink);font-weight:600}

.reg{margin-top:var(--s5);border-top:var(--w-med) solid var(--ink)}
.reg-item{display:grid;grid-template-columns:3.5rem 1fr;gap:0 var(--s3);
  padding:13px 0;border-bottom:var(--w-hair) solid var(--rule-soft);break-inside:avoid}
.reg-ref{font:400 var(--t-fine)/1.7 var(--mono);color:var(--rubric);letter-spacing:.04em}
.reg-t{font:600 var(--t-cap)/1.35 var(--serif);color:var(--ink)}
.reg-d{font-size:var(--t-small);line-height:1.5;color:var(--ink-2);margin-top:4px}
@media (min-width:1100px){
  .reg{columns:2;column-gap:var(--s8);column-rule:var(--w-hair) solid var(--rule);
    border-top:0;padding-top:0}
  .reg-item{border-top:0}
  .reg-item:first-child{border-top:0}
}

.pair{display:grid;grid-template-columns:1fr;gap:var(--s7)}
@media (min-width:900px){
  .pair{grid-template-columns:1fr 1fr;gap:0}
  .pair > *:first-child{padding-right:var(--s7)}
  .pair > *:last-child{padding-left:var(--s7);border-left:var(--w-hair) solid var(--rule)}
}
.pane-top{border-top:var(--w-heavy) solid var(--ink);padding-top:var(--s3);margin-bottom:var(--s4)}
.pane-top--rubric{border-top-color:var(--rubric);border-top-width:var(--w-rubric)}
.pane-list{margin-top:var(--s5);border-top:var(--w-hair) solid var(--rule)}
.pane-list li{padding:11px 0 11px var(--s4);border-bottom:var(--w-hair) solid var(--rule-soft);
  font-size:var(--t-small);line-height:1.55;color:var(--ink-2);position:relative}
.pane-list li::before{content:"";position:absolute;left:0;top:1.05em;width:7px;height:1px;background:var(--rubric)}

.stage{display:grid;grid-template-columns:1fr;border-top:var(--w-heavy) solid var(--ink)}
.stg{display:grid;grid-template-columns:1fr;gap:var(--s2);padding:var(--s5) 0;
  border-bottom:var(--w-hair) solid var(--rule)}
@media (min-width:760px){.stg{grid-template-columns:8.5rem minmax(0,1fr);gap:0 var(--s5)}}
.stg-n{font:400 var(--t-fine)/1.6 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--rubric)}
.stg-b h3{font:400 var(--t-h3)/1.2 var(--serif);letter-spacing:-.01em}
.stg-b p{margin-top:var(--s2);font-size:var(--t-small);line-height:1.6;color:var(--ink-2);max-width:40rem}

.clauses{border-top:var(--w-heavy) solid var(--ink)}
.cl{display:grid;grid-template-columns:1fr;gap:var(--s2);padding:var(--s5) 0;
  border-bottom:var(--w-hair) solid var(--rule)}
@media (min-width:760px){.cl{grid-template-columns:5rem minmax(0,1fr);gap:0 var(--s5)}}
.cl-n{font:400 var(--t-cap)/1.5 var(--serif);color:var(--rubric);font-variant-numeric:lining-nums}
.cl-b h3{font:600 var(--t-h4)/1.35 var(--serif)}
.cl-b p{margin-top:var(--s2);font-size:var(--t-small);line-height:1.6;color:var(--ink-2);max-width:42rem}

.band{background:var(--tint);border-block:var(--w-hair) solid var(--rule)}
.band--rev{background:var(--rev-bg);color:var(--rev-fg);border-block:0}
.band--rev .lbl{color:var(--rev-rubric)}
.band--rev p{color:var(--rev-2)}
.band--rev .ctl{border-color:var(--rev-fg);background:var(--rev-fg);color:var(--rev-bg)}
.band--rev .ctl:hover,.band--rev .ctl:focus-visible{background:var(--rev-rubric);border-color:var(--rev-rubric);color:var(--rev-bg)}

.close-in{padding-block:var(--s9);display:grid;gap:var(--s5);max-width:44rem}
.close-in h2{font:400 var(--t-h2)/1.1 var(--serif);letter-spacing:-.015em}
.close-rule{height:var(--w-rubric);background:var(--rev-rubric);width:64px}

.foot{background:var(--tint-deep);border-top:var(--w-heavy) solid var(--ink)}
.foot-in{padding-block:var(--s8) var(--s5)}
.foot-grid{display:grid;grid-template-columns:1fr;gap:var(--s6)}
@media (min-width:640px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.foot-grid{grid-template-columns:1.3fr repeat(4,1fr);gap:var(--s5)}}
.foot h3{font:600 var(--t-micro)/1.3 var(--sans);letter-spacing:.15em;text-transform:uppercase;
  color:var(--ink);padding-bottom:7px;border-bottom:var(--w-med) solid var(--ink);margin-bottom:2px}
.foot a{display:block;padding:7px 0;border-bottom:var(--w-hair) solid var(--rule);
  text-decoration:none;font-size:var(--t-small);color:var(--ink-2);transition:color var(--d1),padding-left var(--d1)}
.foot a:hover,.foot a:focus-visible{color:var(--rubric);padding-left:5px}
.foot-brand p{font-size:var(--t-small);line-height:1.55;color:var(--ink-2);margin-top:var(--s3);max-width:22rem}
.foot-brand .wordmark b{border-bottom-color:var(--rubric)}
.colophon{margin-top:var(--s7);padding-top:var(--s4);border-top:var(--w-hair) solid var(--rule);
  display:flex;flex-wrap:wrap;gap:var(--s3) var(--s5);justify-content:space-between;
  font-size:var(--t-fine);color:var(--ink-3)}
.colophon nav{display:flex;gap:var(--s4)}
.colophon a{display:inline;border:0;padding:0;font-size:var(--t-fine)}

.chart{width:100%;height:auto;display:block;overflow:visible}
.ch-axis{stroke:var(--rule);stroke-width:1}
.ch-tick{font:400 10px var(--mono);fill:var(--ink-3);letter-spacing:.04em}

@media (max-width:719px){
  .ch-tick{font-size:19px} .ch-gate-t{font-size:16px} .ch-val{font-size:20px}
}
.ch-gate{stroke:var(--rubric);stroke-width:1;stroke-dasharray:4 3}
.ch-gate-t{font:600 9px var(--sans);fill:var(--rubric);letter-spacing:.14em;text-transform:uppercase}
.ch-line{stroke:var(--ink);stroke-width:1.5;fill:none;stroke-linejoin:round;
  stroke-dasharray:900;stroke-dashoffset:0;transition:stroke-dashoffset var(--d-draw) var(--ease-rule)}
html.js .ch-line{stroke-dashoffset:900}
html.js .is-in .ch-line{stroke-dashoffset:0}
.ch-dot{opacity:1;transition:opacity var(--d2) var(--ease)}
html.js .ch-dot{opacity:0}
html.js .is-in .ch-dot{opacity:1}

.ch-hit{fill:transparent;stroke:none}
.ch-mark{stroke-width:1.6;transition:r var(--d1) var(--ease)}
.ch-dot.up .ch-mark{fill:var(--seal);stroke:var(--seal)}
.ch-dot.dn .ch-mark{fill:var(--paper);stroke:var(--ochre)}
.ch-dot:hover .ch-mark,.ch-dot:focus-visible .ch-mark{r:6.5}
.ch-dot:focus-visible{outline:none}
.ch-dot:focus-visible .ch-mark{stroke:var(--rubric);stroke-width:2.6}
.ch-val{font:400 11px var(--mono);fill:var(--ink);letter-spacing:.02em}
.ch-read{display:flex;justify-content:space-between;gap:var(--s4);flex-wrap:wrap;margin-top:10px;
  font-size:var(--t-fine);color:var(--ink-3)}
.ch-read b{font:400 var(--t-fine) var(--mono);color:var(--ink)}
.ch-key{display:flex;gap:var(--s4);flex-wrap:wrap;font-size:var(--t-fine);color:var(--ink-3)}
.ch-key span{display:inline-flex;align-items:center;gap:6px}
.ch-key i{width:8px;height:8px;display:block}
.ch-key .k-up{background:var(--seal)}
.ch-key .k-dn{background:var(--paper);border:1.5px solid var(--ochre)}

.rv{transition:opacity var(--d3) var(--ease),transform var(--d3) var(--ease)}
html.js .rv{opacity:0;transform:translateY(9px)}
html.js .rv.is-in{opacity:1;transform:none}
.rv-d1{transition-delay:70ms}.rv-d2{transition-delay:140ms}.rv-d3{transition-delay:210ms}
.draw{transform-origin:left;transition:transform var(--d-draw) var(--ease-rule)}
html.js .draw{transform:scaleX(0)}
html.js .draw.is-in{transform:scaleX(1)}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:1ms!important;animation-iteration-count:1!important;
    transition-duration:1ms!important;scroll-behavior:auto!important}
  html.js .rv{opacity:1;transform:none}
  html.js .draw{transform:scaleX(1)}
  html.js .ch-line{stroke-dashoffset:0}
  html.js .ch-dot{opacity:1}
  html.js .meter i{transform:scaleX(var(--v,0))}
}
@media (forced-colors:active){
  .vd::before,.ch-key i{forced-color-adjust:none}
  .ex-cap,.bar{border-color:CanvasText}
}

@media (max-width:979px){
  .sec-grid{grid-template-columns:minmax(0,1fr)}
}
.sch-scroll{min-width:0}

.rail{position:relative}
.rail-no{transition:color var(--d2) var(--ease)}
.sec[data-stop] .rail-no{position:relative}
.sec.is-here .rail-no{color:var(--rubric)}
.sec.is-here .rail-cap{color:var(--ink)}

.sec.is-here .rail::before{
  content:"";position:absolute;left:0;top:var(--s9);
  width:var(--w-rubric);height:1.35em;background:var(--rubric)}
@media (max-width:979px){.sec.is-here .rail::before{display:none}}

.sec.is-here .rail-mob .n{color:var(--rubric)}
.rail-mob .stop-of{font:400 var(--t-fine)/1.6 var(--mono);color:var(--ink-3);letter-spacing:.06em}

.sec-main > .ex,
.sec-main > .art-fig,
.p + .ex,
.note + .ex{margin-top:var(--s7)}
.ex + .p,.ex + .note,.ex + .gloss{margin-top:var(--s6)}

.hgroup:has(.lead){margin-bottom:var(--s4)}

.sec:target .rail-no{color:var(--rubric)}
@keyframes stopflash{from{background:var(--tint)}to{background:transparent}}
html.js .sec.is-flash .sec-main{animation:stopflash 1.1s var(--ease)}
@media (prefers-reduced-motion:reduce){html.js .sec.is-flash .sec-main{animation:none}}

.cockpit{
  position:fixed;z-index:58;left:0;right:0;bottom:0;
  background:var(--paper);border-top:var(--w-med) solid var(--ink);
  transform:translateY(101%);visibility:hidden;
  transition:transform var(--d2) var(--ease),visibility 0s linear var(--d2)}
.cockpit[data-on="true"]{transform:none;visibility:visible;transition-delay:0s}
.cockpit-in{display:flex;align-items:center;gap:var(--s4);
  padding:10px var(--pad) calc(10px + env(safe-area-inset-bottom,0px))}
.ck-of{font:400 var(--t-fine)/1 var(--mono);color:var(--ink-3);letter-spacing:.08em;flex:none}
.ck-of b{color:var(--rubric);font-weight:400}
.ck-read{flex:1 1 auto;min-width:0}
.ck-l{display:block;font:600 var(--t-micro)/1.3 var(--sans);letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.ck-v{display:block;font:400 var(--t-h4)/1.15 var(--serif);color:var(--ink);margin-top:2px;
  font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.005em}

.ck-v.is-code{font:400 var(--t-cap)/1.3 var(--mono);letter-spacing:.02em}
.ck-ctl{display:flex;align-items:center;gap:var(--s2);flex:none}
.ck-b{display:inline-flex;align-items:center;justify-content:center;gap:7px;
  min-width:44px;min-height:44px;padding:0 12px;
  border:var(--w-med) solid var(--ink);background:var(--paper);color:var(--ink);
  font:600 var(--t-micro)/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;
  transition:background var(--d1) var(--ease),color var(--d1) var(--ease)}
.ck-b:hover,.ck-b:focus-visible{background:var(--ink);color:var(--paper)}
.ck-b[aria-pressed="true"]{background:var(--ink);color:var(--paper)}

.ck-b .t{display:inline}

.ck-prog{height:2px;background:var(--rule);position:relative}
.ck-prog i{position:absolute;inset:0 auto 0 0;background:var(--ink);
  width:calc(var(--p,0) * 100%);transition:width 120ms linear}

@media (min-width:980px){
  
  .cockpit{right:auto;bottom:var(--s5);
    left:max(var(--pad), calc(50% - (var(--shell) / 2) + var(--pad)));
    width:var(--rail);
    border:var(--w-med) solid var(--ink);border-top-width:var(--w-heavy);
    transform:translateY(calc(100% + var(--s5)))}
  .cockpit[data-on="true"]{transform:none}
  .cockpit-in{display:block;padding:10px 12px 12px}
  .ck-of{display:block;margin-bottom:7px}
  .ck-v{font-size:var(--t-h4)}
  .ck-ctl{margin-top:10px}
  .ck-b{flex:1 1 auto;min-width:0;padding:0 8px}
  .ck-prog{display:none}
}

.index-sheet .ix{display:grid;grid-template-columns:2.75rem minmax(0,1fr);gap:0 var(--s3);
  align-items:baseline;padding:13px 0;border-bottom:var(--w-hair) solid var(--rule-soft);text-decoration:none}
.index-sheet{overflow-x:hidden}
.index-sheet .ix:hover,.index-sheet .ix:focus-visible{background:var(--tint)}
.index-sheet .ix .code{color:var(--rubric)}
.index-sheet .ix[aria-current="true"] .code{color:var(--rubric)}
.index-sheet .ix[aria-current="true"] .ix-t{font-weight:600}
.ix-t{font:400 var(--t-cap)/1.35 var(--serif);color:var(--ink)}
.ix-d{display:block;font-size:var(--t-fine);line-height:1.5;color:var(--ink-3);margin-top:3px}
.ix-v{grid-column:2;display:block;margin-top:4px;
  font:400 var(--t-cap)/1.35 var(--serif);color:var(--ink);
  font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1}
.ix-v.is-code{font:400 var(--t-fine)/1.6 var(--mono);color:var(--ink-2)}
@media (min-width:560px){
  
  .index-sheet .ix{grid-template-columns:2.75rem minmax(0,1fr) auto}
  .ix-v{grid-column:auto;margin-top:0;white-space:nowrap;text-align:right}
}
@media (min-width:980px){
  
  .index-sheet{display:block}
  .index-sheet:not([data-open="true"]){opacity:0;visibility:hidden}
}

.gloss{border-left:var(--w-hair) solid var(--rule);padding:2px 0 2px var(--s4);margin-top:var(--s5)}
.gloss .lbl{color:var(--rubric);margin-bottom:5px}
.gloss p{font-size:var(--t-fine);line-height:1.55;color:var(--ink-2)}
.gloss cite{display:block;margin-top:6px;font:400 var(--t-fine)/1.5 var(--mono);
  color:var(--ink-3);font-style:normal;letter-spacing:.02em}

.gloss-host{position:relative}

.tie{border-top:var(--w-heavy) solid var(--ink)}
.tie-row{display:grid;grid-template-columns:1fr;gap:var(--s2);padding:var(--s4) 0;
  border-bottom:var(--w-hair) solid var(--rule-soft)}
@media (min-width:760px){.tie-row{grid-template-columns:4.5rem minmax(0,1fr);gap:0 var(--s5)}}
.tie-n{font:400 var(--t-fine)/1.7 var(--mono);color:var(--rubric);letter-spacing:.06em}
.tie-b{font-size:var(--t-small);line-height:1.6;color:var(--ink-2)}
.tie-b b{color:var(--ink);font-weight:600;
  font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1}
.tie-b .xref{font:400 var(--t-fine)/1.5 var(--mono);color:var(--rubric);letter-spacing:.03em;white-space:nowrap}

.tie-m{display:block;margin-top:5px;font:400 var(--t-fine)/1.6 var(--mono);color:var(--ink-3);
  letter-spacing:.02em}

.xref{font:400 .875em/1 var(--mono);color:var(--rubric);letter-spacing:.03em;
  text-decoration:none;border-bottom:1px solid var(--rubric);padding-bottom:1px;white-space:nowrap}
.xref:hover,.xref:focus-visible{border-bottom-width:2px}

.dr{display:grid;grid-template-columns:1fr;gap:var(--s5)}
@media (min-width:900px){.dr{grid-template-columns:1fr 1fr;gap:0}
  .dr > *:first-child{padding-right:var(--s6)}
  .dr > *:last-child{padding-left:var(--s6);border-left:var(--w-hair) solid var(--rule)}}

.dr-doc{border-top:var(--w-med) solid var(--ink);padding-top:var(--s3)}
.dr-hd{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s3);flex-wrap:wrap}
.dr-vend{font:400 var(--t-cap)/1.3 var(--serif);color:var(--ink)}
.dr-meta{font:400 var(--t-fine)/1.5 var(--mono);color:var(--ink-3);letter-spacing:.02em}
.dr-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s3);
  padding:8px 0;border-bottom:var(--w-hair) solid var(--rule-soft);font-size:var(--t-small);color:var(--ink-2)}
.dr-line .n{font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1;
  white-space:nowrap;color:var(--ink)}

.dr-f{border-bottom:var(--w-rubric) solid var(--rubric);padding-bottom:1px}
.dr-f--read{border-bottom-color:var(--seal)}
.dr-f--ask{border-bottom-color:var(--ochre)}
.dr-line--tot{border-bottom:3px double var(--ink);border-top:var(--w-med) solid var(--ink);
  font-weight:600;color:var(--ink);padding-top:10px}
.dr-line--tot .n{font-weight:600}

.ex--hero .ex-body{padding-top:var(--s3)}
.ex--hero .dr-line{font-size:var(--t-cap)}
@media (min-width:980px){.ex--hero{max-width:34rem}}

.dr-out{border-top:var(--w-med) solid var(--ink);padding-top:var(--s3)}
.dr-row{display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:0 var(--s3);
  padding:9px 0;border-bottom:var(--w-hair) solid var(--rule-soft);align-items:baseline}
.dr-k{font:600 var(--t-micro)/1.4 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3)}
.dr-val{font-size:var(--t-small);line-height:1.5;color:var(--ink)}
.dr-val .code{color:var(--ink-2)}
.dr-conf{display:block;margin-top:3px;font:400 var(--t-fine)/1.5 var(--mono);color:var(--ink-3);letter-spacing:.02em}

.dr-ask{border-left:var(--w-rubric) solid var(--ochre);padding:2px 0 2px var(--s4);margin-top:var(--s4)}
.dr-ask .lbl{color:var(--ochre);margin-bottom:5px}
.dr-ask p{font-size:var(--t-small);line-height:1.55;color:var(--ink-2)}
.dr-ask q{font-style:italic;color:var(--ink);quotes:"\201C" "\201D"}

.ex-src .prov{display:block;margin-top:3px}
.ex-src .prov b{color:var(--ink-2)}

@media (max-width:719px){
  .sch--rec thead{position:absolute;width:1px;height:1px;overflow:hidden;
    clip:rect(0 0 0 0);white-space:nowrap}
  
  .sch--rec tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:var(--s3) var(--s4);padding:14px 0;
    border-bottom:var(--w-hair) solid var(--rule-soft)}
  .sch--rec tbody tr.grp{display:block;padding:20px 0 6px}
  .sch--rec td{border:0;padding:0;text-align:left;vertical-align:baseline}
  
  .sch--rec td:first-child{grid-column:1/-1;color:var(--ink);
    font-size:var(--t-cap);line-height:1.35}
  .sch--rec td[data-l]::before{content:attr(data-l);display:block;
    font:600 var(--t-micro)/1.35 var(--sans);letter-spacing:.13em;
    text-transform:uppercase;color:var(--ink-3);margin-bottom:3px}
  
  .sch--rec td.n{text-align:left;white-space:normal}
  
  .sch--rec td.c-wide{grid-column:1/-1}
  .sch--rec tr.tot{border-top:var(--w-med) solid var(--ink);
    border-bottom:3px double var(--ink);padding-top:14px}
  .sch--rec tr.tot td{border:0}
  .sch--rec tr:last-child{border-bottom:0}
  
}

.art-fig{max-width:58rem}
.tie{max-width:52rem}

.cover-toc{display:none}
@media (min-width:1100px){
  .cover{display:grid;grid-template-columns:minmax(0,1fr) 15rem;column-gap:var(--s8);align-items:start}
  .cover-toc{display:block;padding-top:4px}
  .cover-toc > .lbl{padding-bottom:7px;border-bottom:var(--w-med) solid var(--ink);margin-bottom:2px}
}
.toc-list li{border-bottom:var(--w-hair) solid var(--rule-soft)}
.toc-list a{display:grid;grid-template-columns:2.25rem 1fr;gap:var(--s2);align-items:baseline;
  padding:8px 0;text-decoration:none;font-size:var(--t-small);line-height:1.4;color:var(--ink-2);
  transition:color var(--d1) var(--ease),padding-left var(--d1) var(--ease)}
.toc-list a:hover,.toc-list a:focus-visible{color:var(--rubric);padding-left:4px}
.toc-list .code{color:var(--rubric)}

@media (max-width:559px){
  .ex-cap{gap:6px var(--s3)}
  .ex-title{flex:1 1 100%;order:3}
}

@media print{
  @page{margin:18mm 16mm}

  html,body{background:#fff;color:#000;font-size:10.5pt}
  
  .band,.band--rev{background:#fff!important;color:#000!important;
    border-block:1px solid #000}
  .band--rev .lbl{color:#000!important}
  .band--rev p{color:#333!important}
  .close-rule{background:#000}

  .mast,.cockpit,.index-sheet,.skip,.burger,.cover-toc{display:none!important}
  .sec-main{padding-block:var(--s6)}

  .sch-scroll{overflow:visible!important}
  .sch--rec thead{position:static!important;width:auto!important;
    height:auto!important;clip:auto!important}
  .sch--rec tbody tr{display:table-row!important}
  .sch--rec td{display:table-cell!important;padding:6px 0!important;
    border-bottom:1px solid #ccc!important}
  .sch--rec td[data-l]::before{content:none!important}
  .sch--rec td.n{text-align:right!important}

  .xref::after{content:" (" attr(href) ")";font-size:.85em;color:#555}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:.85em;color:#555}
  .tl,.tl-more{border-bottom:0}

  .ex,.tie-row,.casc,.proof,.dr,figure{break-inside:avoid;page-break-inside:avoid}
  .sch tr{break-inside:avoid}
  h1,h2,h3{break-after:avoid;page-break-after:avoid}
  .ex-cap{break-after:avoid}

  *,*::before,*::after{transition:none!important;animation:none!important}

  .rv,html.js .rv{opacity:1!important;transform:none!important}
  .draw,html.js .draw{transform:none!important}
  .meter i{transform:scaleX(var(--v,0))!important}

  .ctl{border:1px solid #000;background:#fff!important;color:#000!important}
  .ctl .arw{display:none}
}

html.no-motion *,html.no-motion *::before,html.no-motion *::after{
  animation-duration:1ms!important;animation-iteration-count:1!important;
  transition-duration:1ms!important;scroll-behavior:auto!important}
html.no-motion .rv{opacity:1;transform:none}
html.no-motion .draw{transform:scaleX(1)}
html.no-motion .ch-line{stroke-dashoffset:0}
html.no-motion .ch-dot{opacity:1}
html.no-motion .meter i{transform:scaleX(var(--v,0))}
html.no-motion .cockpit{transition:none}
html.no-motion .ck-prog i{transition:none}

@media (prefers-reduced-motion:reduce){
  .cockpit{transition:none}
  .ck-prog i{transition:none}
}
@media (forced-colors:active){
  .cockpit{border-color:CanvasText}
  .sec.is-here .rail::before{background:CanvasText}
  .dr-f,.dr-f--read,.dr-f--ask{border-bottom-color:CanvasText}
}

.casc{border-top:var(--w-med) solid var(--ink)}
.casc-r{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s3);align-items:baseline;
  padding:10px 0;border-bottom:var(--w-hair) solid var(--rule-soft)}
.casc-k{font-size:var(--t-cap);line-height:1.4;color:var(--ink-2)}

.casc-k i{font:400 var(--t-fine)/1 var(--mono);font-style:normal;color:var(--ink-3);
  letter-spacing:.03em;margin-left:6px}
.casc-v{font:400 var(--t-cap)/1.35 var(--serif);color:var(--ink);white-space:nowrap;
  font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1}

.casc-r--tot{border-top:var(--w-med) solid var(--ink);border-bottom:3px double var(--ink);
  padding-top:12px;margin-top:2px}
.casc-r--tot .casc-k{color:var(--ink);font-weight:600}
.casc-r--tot .casc-v{font-size:var(--t-h4);font-weight:600}

.casc-r--bill{border-bottom:0;padding-top:12px}
.casc-r--bill .casc-k{color:var(--rubric)}
.casc-r--bill .casc-v{font-size:var(--t-h4);color:var(--rubric)}

@media (min-width:560px){
  .casc-k{font-size:var(--t-body)}
  .casc-r--tot .casc-v,.casc-r--bill .casc-v{font-size:var(--t-h3)}
}

@media (min-width:1160px){
  .bar--spined{margin-left:var(--spine-w,176px)}
}

.rail-spine{display:none}
@media (min-width:1160px){
  .rail-spine{
    display:block;position:fixed;left:0;top:var(--mast-h,56px);bottom:0;
    width:var(--spine-w,176px);z-index:40;pointer-events:none;
  }
  .rail-spine *{pointer-events:auto}
  .spine-track{position:absolute;left:31px;top:34px;bottom:150px;width:1px;
    background:var(--rule)}
  .spine-fill{position:absolute;left:30px;top:34px;width:2px;height:0;
    background:var(--ink);transition:height .12s linear}
  html.no-motion .spine-fill{transition:none}
  .spine-ticks{position:absolute;left:0;top:34px;right:0;bottom:150px}
  
  .spine-tick{position:absolute;left:0;display:flex;align-items:center;gap:9px;
    text-decoration:none;min-height:24px;margin-top:-12px;padding-right:8px}
  .spine-tick .tl{width:12px;height:1px;background:var(--rule);margin-left:25px;
    transition:width .15s,background .15s}
  .spine-tick .tn{font:400 9.5px/1 var(--mono);color:var(--ink-3);
    letter-spacing:.1em;font-variant-numeric:tabular-nums}
  .spine-tick .tm{font:400 10.5px/1 var(--serif);color:var(--ink-3);
    white-space:nowrap;opacity:0;transition:opacity .15s}
  .spine-tick:hover .tm,.spine-tick[aria-current] .tm{opacity:1}
  .spine-tick:hover .tl{width:18px;background:var(--ink-3)}
  .spine-tick[aria-current] .tn,.spine-tick[aria-current] .tm{color:var(--rubric)}
  .spine-tick[aria-current] .tl{background:var(--rubric);width:18px}
  .spine-tick:focus-visible{outline:2px solid var(--rubric);outline-offset:2px}
  
  .rail-spine .cockpit{position:absolute;left:0;right:12px;bottom:16px;
    margin:0;max-width:none}
}

.rail-top{position:fixed;left:0;right:0;top:var(--mast-h,56px);height:1px;
  background:var(--rule);z-index:39}
.rail-top i{display:block;height:2px;width:0;background:var(--ink);
  transition:width .12s linear}
html.no-motion .rail-top i{transition:none}
@media (min-width:1160px){.rail-top{display:none}}

:root{
  --beat-dur:600ms;
  --beat-ease:cubic-bezier(.16,1,.3,1);
  --beat-rise:14px;
  --beat-stagger:50ms;
}
.rv{transition:opacity var(--beat-dur) var(--beat-ease),
               transform var(--beat-dur) var(--beat-ease)}

html.js .rv{transform:translateY(var(--beat-rise))}

.rv-d1{transition-delay:var(--beat-stagger)}
.rv-d2{transition-delay:calc(var(--beat-stagger) * 2)}
.rv-d3{transition-delay:calc(var(--beat-stagger) * 3)}

html.no-motion .rv{transition:none;transform:none}
@media (prefers-reduced-motion:reduce){
  .rv{transition:none;transform:none}
}

.wordmark .mark{height:24px;width:auto;flex:none;display:block;object-fit:contain}

.loop{margin:var(--s6) 0 0}
.loop-band{margin:var(--s8) 0}
.loop-frame{position:relative;line-height:0;border:var(--w-hair) solid var(--rule)}
.loop-frame--plate{border:0}
.loop-v{display:block;width:100%;height:auto}
.loop-toggle{position:absolute;right:var(--s3);bottom:var(--s3);
  width:34px;height:34px;display:grid;place-items:center;padding:0;cursor:pointer;
  border:var(--w-hair) solid var(--ink);background:var(--paper);color:var(--ink)}
.loop-toggle svg{width:14px;height:14px;fill:currentColor}
.loop-toggle:focus-visible{outline:2px solid var(--rubric);outline-offset:2px}
.band--rev .loop-toggle{border-color:var(--rev-fg);background:var(--rev-bg);color:var(--rev-fg)}
.band--rev .ex-no{color:var(--rev-rubric)}
.band--rev .ex-title,.band--rev .ex-mark,.band--rev .prov{color:var(--rev-2)}
.band--rev .prov b{color:var(--rev-fg)}

.loop--cover{margin-top:var(--s5)}
.loop--cover .loop-frame{border:var(--w-hair) solid var(--rule)}
.loop--cover .loop-v{width:100%;height:auto}

.sec-main--tight.cover:has(.loop--cover),
  
  .sec-main--tight.cover--chain{padding-block-start:var(--s5)}
.cover:has(.loop--cover) .bar,
  .cover--chain .bar{margin:10px 0 16px!important}
.cover:has(.loop--cover) .lead,
  .cover--chain .lead{margin-top:var(--s3)!important}
.cover:has(.loop--cover) .loop--cover{margin-top:var(--s4)}
.cover:has(.loop--cover) .ex--hero{margin-top:var(--s5)!important}

@media (min-width:1100px){
  .cover:has(.loop--cover) .loop--cover,
  .cover:has(.rp) .rp{margin-right:calc(-15rem - var(--s8))}

  .cover--chain:has(.loop--cover) .loop--cover,
  .cover--chain:has(.rp) .rp{margin-right:0}
}

@property --rp{syntax:"<number>";initial-value:0;inherits:true}

.rp{position:relative;margin:var(--s6) 0}
.rp-ground{display:none}
.rp-in{display:block}

.loop--recede{margin:0 auto;max-width:49rem}
.loop--recede .loop-frame{border:var(--w-hair) solid var(--rule)}
.loop--recede .loop-v{width:100%;height:auto}

@media (min-width:1160px) and (prefers-reduced-motion:no-preference){
  
  .rp{height:calc(100vh + var(--rp-travel,40vh));margin:var(--s5) 0 0}  
  .rp-in{position:sticky;top:0;height:100vh;display:grid;place-items:center}

  .rp-ground{display:block;position:sticky;top:0;height:100vh;width:100vw;
    margin-left:calc(-1 * var(--rp-bleed,0px));background:var(--rev-bg);
    opacity:calc(1 - var(--rp));margin-bottom:-100vh;pointer-events:none}

  .loop--recede{
    transform:translateX(calc(var(--rp-dx,0px) * (1 - var(--rp))))
              scale(calc(var(--rp-max,1.3) - (var(--rp-max,1.3) - 1) * var(--rp)));
    transform-origin:center center;
    will-change:transform}
  
  .loop--recede .ex-cap,.loop--recede .prov{opacity:var(--rp)}

  .sec:has(.rp) .rail,
  .sec:has(.rp) .cover-toc,
  .rail-spine,
  #cockpit{opacity:var(--rp-chrome,1)}

}

@media (min-width:1100px){
  
  .cover--chain > nav.cover-toc{display:none}
  .cover--chain{grid-template-columns:minmax(0,1fr)}
}
@media (min-width:1160px){

  .cover--chain{--t-h1:min(clamp(2.125rem,0.95rem + 4.6vw,3.625rem),5.1vh)}
  
  .cover--chain h1{max-width:26ch!important}
  .cover--chain .lead{max-width:60ch}
}
@media (min-width:1160px) and (max-height:900px){
  
  .cover--chain h1{max-width:32ch!important}
  .cover--chain .lead{max-width:60ch}
}

.lst{list-style:none;margin:var(--s5) 0 0;padding:0;max-width:60ch}
.lst > li{padding:var(--s3) 0;border-top:var(--w-hair) solid var(--rule);
  line-height:1.6}
.lst > li:last-child{border-bottom:var(--w-hair) solid var(--rule)}
.lst > li > b{color:var(--ink)}

@media (min-width:1160px) and (prefers-reduced-motion:no-preference){
  
  .loop--cover .loop-frame{transform:scale(var(--cv,0.81));transform-origin:50% 0;
    will-change:transform}
}

.proof{margin-top:var(--s6)}

.sec-main > ul + .p,
.sec-main > ol + .p{margin-top:var(--s5)}

.sec--film{padding-block:var(--s5) 0}
.film{position:relative;line-height:0;border:var(--w-hair) solid var(--rule);background:var(--rev-bg)}
.film-v{display:block;width:100%;height:auto}

@media (max-width:899px){ .sec--film{display:none} }

@media (prefers-reduced-motion:reduce){ .sec--film{display:none} }

.panel-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
