:root{
  --yellow:#f2c200; --cream:#fbf6e6; --sheet:#ffffff; --rail:#f7edd4;
  --ink:#141210; --ink2:#4a4136; --red:#8c1c1a; --hair:#cbbf9d;
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s6:24px; --s8:32px; --s12:48px; --s16:64px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream) url("/assets/letterpress-grid.svg") repeat;
  color:var(--ink);font:16.5px/1.65 Georgia,"Times New Roman",serif;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--red)}
a:hover{color:#5e100f}
a:focus-visible,.skip:focus{outline:3px solid var(--red);outline-offset:2px}
.wrap{max-width:1180px;margin:0 auto;padding:0 var(--s6)}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:var(--s2) var(--s4);z-index:9}
.skip:focus{left:0}

/* banner */
.banner{background:var(--yellow);border-bottom:6px solid var(--ink);padding:var(--s6) 0 var(--s4)}
.brand{margin:0;font:400 40px/1.05 "Arial Black","Helvetica Neue",Impact,Arial,sans-serif;
  letter-spacing:-.02em;text-transform:uppercase}
.brand a{color:var(--ink);text-decoration:none}
.brandsub{margin:var(--s2) 0 0;font:13px/1.4 "Courier New",monospace;letter-spacing:.09em;
  text-transform:uppercase;color:#3a3120}

/* coverage */
.coverage{background:var(--sheet);border-bottom:3px solid var(--ink);padding:var(--s6) 0 var(--s4)}
.coverline{margin:0 0 var(--s4);max-width:66ch}
.topnav{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);border-top:1px solid var(--hair);
  border-bottom:1px solid var(--hair);padding:var(--s2) 0;margin-bottom:var(--s4)}
.topnav a{font:600 13px/1.4 Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.08em;
  text-decoration:none;color:var(--ink);padding:var(--s1) 0}
.topnav a:hover{color:var(--red);text-decoration:underline}
.azlabel{margin:0 0 var(--s2);font:12.5px/1.3 "Courier New",monospace;text-transform:uppercase;
  letter-spacing:.1em;color:var(--ink2)}
.azstrip{list-style:none;display:flex;flex-wrap:wrap;gap:var(--s1);margin:0 0 var(--s2);padding:0}
.azstrip li{margin:0}
.azstrip a,.azstrip .az-off{display:block;min-width:28px;padding:var(--s1) var(--s2);text-align:center;
  font:700 13px/1.5 Arial,Helvetica,sans-serif;border:1px solid var(--ink);text-decoration:none;
  color:var(--ink);background:var(--yellow)}
.azstrip a:hover{background:var(--ink);color:var(--yellow)}
.azstrip .az-off{background:transparent;border-color:var(--hair);color:#8b8371}
.azstrip--big a,.azstrip--big .az-off{min-width:36px;padding:var(--s2)}
.azstrip--foot a,.azstrip--foot .az-off{min-width:24px;padding:2px var(--s1);font-size:12px}

/* rules and tabs */
.rule{position:relative;margin:0 0 var(--s4);padding:0 0 var(--s2);
  border-bottom:3px double var(--ink);font:700 24px/1.25 Arial,Helvetica,sans-serif}
.rule .tab{display:inline-block;min-width:26px;margin-right:var(--s3);padding:0 var(--s2);
  background:var(--red);color:#fff;font:700 15px/26px "Courier New",monospace;text-align:center;
  vertical-align:2px}

/* grid */
.grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:var(--s8);
  padding:var(--s8) 0 var(--s12);align-items:start}
.grid--detail{grid-template-columns:220px minmax(0,1fr)}
.rail{background:var(--rail);border:1px solid var(--hair);border-top:5px solid var(--ink);
  padding:var(--s4)}
.railkey{margin:0 0 var(--s3)}
.railhead{font-size:18px;margin-bottom:var(--s3)}
.railgroup{margin:0 0 var(--s4)}
.railgroup h3{margin:0 0 var(--s2);font:700 13px/1.3 Arial,Helvetica,sans-serif;
  text-transform:uppercase;letter-spacing:.07em;color:var(--ink)}
.railgroup .count{font:12px/1 "Courier New",monospace;color:var(--ink2)}
.railgroup ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--hair)}
.railgroup li{border-bottom:1px solid var(--hair)}
.railgroup a{display:block;padding:var(--s2) 0;font:14px/1.35 Arial,Helvetica,sans-serif;
  text-decoration:none;color:var(--ink)}
.railgroup a:hover{color:var(--red);text-decoration:underline}
.railgroup li.here a{font-weight:700;color:var(--red)}

/* content + records */
.content{min-width:0}
.content > section{margin:0 0 var(--s12)}
.modnote{margin:0 0 var(--s6);max-width:66ch;font-size:15.5px;color:var(--ink2)}
.catblock{margin:0 0 var(--s8)}
.cathead{margin:0 0 var(--s4);padding:var(--s1) var(--s3);background:var(--ink);color:var(--yellow);
  font:700 14px/1.6 Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.1em}
.reccols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s6) var(--s8)}
.rec{background:var(--sheet);border-top:3px double var(--ink);padding:var(--s3) 0 var(--s4);min-width:0}
.rec h3{margin:0 0 var(--s1);font:700 19px/1.3 Arial,Helvetica,sans-serif}
.rec h3 a{text-decoration:none;color:var(--ink)}
.rec h3 a:hover{color:var(--red);text-decoration:underline}
.reccat{margin:0 0 var(--s2);font:700 11.5px/1.4 Arial,Helvetica,sans-serif;text-transform:uppercase;
  letter-spacing:.12em;color:var(--red)}
.factline{margin:0 0 var(--s2);font:12.5px/1.6 "Courier New",monospace;color:var(--ink2);
  font-variant-numeric:tabular-nums;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);
  padding:var(--s1) 0}
.factline span{color:var(--ink);font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.factline span + span{margin-left:var(--s2)}
.recsum{margin:0;font-size:15.5px}
.rec--display{border:3px solid var(--ink);border-left:8px solid var(--red);padding:var(--s4)}
.rec--display h3{font-size:21px}

/* location index */
.locindex{list-style:none;margin:0;padding:0;border-top:3px double var(--ink)}
.locindex li{border-bottom:1px solid var(--hair);padding:var(--s3) 0}
.locindex a{display:block;font:700 16px/1.35 Arial,Helvetica,sans-serif;text-decoration:none;color:var(--ink)}
.locindex a:hover{color:var(--red);text-decoration:underline}
.locblurb{display:block;margin-top:2px;font-size:15px;color:var(--ink2)}

/* article */
.article{background:var(--sheet);border:1px solid var(--hair);border-top:5px solid var(--ink);
  padding:var(--s6) var(--s8) var(--s8)}
.crumb{margin:0 0 var(--s3);font:12.5px/1.4 "Courier New",monospace;text-transform:uppercase;
  letter-spacing:.08em;color:var(--ink2)}
.crumb a{color:var(--red)}
.article h1{margin:0 0 var(--s4);font:700 38px/1.15 Arial,Helvetica,sans-serif;max-width:20ch}
.lead{margin:0 0 var(--s6);font-size:18.5px;line-height:1.6;max-width:60ch;
  border-left:5px solid var(--red);padding-left:var(--s4)}
.opening{margin:0 0 var(--s8);background:var(--rail);border:1px solid var(--hair);padding:var(--s4)}
.openlabel{margin:0 0 var(--s2);font:12.5px/1.3 "Courier New",monospace;text-transform:uppercase;
  letter-spacing:.1em;color:var(--ink2)}
.openlist{margin:0;padding-left:var(--s6);columns:2;column-gap:var(--s8)}
.openlist li{margin:0 0 var(--s1);font:15px/1.45 Arial,Helvetica,sans-serif;
  break-inside:avoid}
.article section{margin:0 0 var(--s8)}
.article section h2{font-size:22px}
.article p{max-width:66ch}
.related{border-top:3px double var(--ink);padding-top:var(--s6)}
.glosslinks{margin:var(--s6) 0 0;font-size:15px}
.factrail{list-style:none;margin:0 0 var(--s4);padding:0;border-top:1px solid var(--hair)}
.factrail li{display:flex;justify-content:space-between;gap:var(--s2);
  border-bottom:1px solid var(--hair);padding:var(--s2) 0;
  font:12.5px/1.5 "Courier New",monospace;font-variant-numeric:tabular-nums}
.fk{text-transform:uppercase;letter-spacing:.06em;color:var(--ink2)}
.fv{font-weight:700;color:var(--ink);text-align:right}

/* glossary */
.letterblock{margin:0 0 var(--s8)}
.letterblock .rule{font-size:28px}
.term{border-top:1px solid var(--hair);padding:var(--s3) 0}
.term h3{margin:0 0 var(--s1);font:700 17px/1.3 Arial,Helvetica,sans-serif}
.term p{margin:0;font-size:15.5px}
.backtoaz{margin:var(--s3) 0 0;font:12.5px/1.4 "Courier New",monospace;text-transform:uppercase;
  letter-spacing:.08em}

/* footer */
.foot{background:var(--ink);color:#e8e2d2;border-top:6px solid var(--red);padding:var(--s8) 0}
.foot .azstrip a{background:transparent;border-color:#5a5344;color:#f0ead9}
.foot .azstrip a:hover{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}
.foot .azstrip .az-off{border-color:#3a3529;color:#7a7361}
.footcats{margin:var(--s4) 0 var(--s3);font:13px/1.9 Arial,Helvetica,sans-serif}
.footcats a{color:var(--yellow);text-decoration:none}
.footcats a:hover{text-decoration:underline}
.footcover{margin:0 0 var(--s4);max-width:70ch;font-size:14px;color:#c9c2b1}
.footname{margin:0;font:700 12.5px/1.4 "Courier New",monospace;text-transform:uppercase;
  letter-spacing:.14em;color:#f0ead9}

@media (max-width:1180px){ .wrap{padding:0 var(--s4)} }
@media (max-width:900px){
  .grid,.grid--detail{grid-template-columns:minmax(0,1fr);gap:var(--s6);padding-top:var(--s6)}
  .rail{order:-1}
  .railgroup ul{columns:2;column-gap:var(--s6)}
  .railgroup li{break-inside:avoid}
  .article{padding:var(--s4) var(--s4) var(--s6)}
}
@media (max-width:760px){
  .brand{font-size:27px;letter-spacing:0}
  .reccols{grid-template-columns:minmax(0,1fr)}
  .openlist{columns:1}
  .article h1{font-size:29px;max-width:none}
  .lead{font-size:17px}
  .rule{font-size:20px}
  .rec--display{border-left-width:3px;border-right:0;border-left:0;border-top:5px solid var(--ink);
    border-bottom:3px solid var(--ink);padding:var(--s3) 0}
}
@media (max-width:480px){
  body{font-size:16px}
  .railgroup ul{columns:1}
  .azstrip a,.azstrip .az-off{min-width:32px;padding:var(--s2) var(--s1)}
}
