:root{
  --canvas:#FFFFFF; --text:#1A1A1A; --meta:#5A6470; --accent:#4A6B8A; --rule:#E4E4E4;
  --veil:rgba(255,255,255,0.88);
  --geo:Futura,"Century Gothic","Twentieth Century","URW Gothic",sans-serif;
  --body:"Helvetica Neue",Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--canvas);color:var(--text);font-family:var(--body);
  font-size:1rem;line-height:1.65;}
img{max-width:100%;height:auto}
a{color:var(--accent)}
a:focus-visible,.tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.stage{max-width:1200px;margin:0 auto;padding:0 24px}
@media(min-width:1400px){.stage{max-width:1440px}}

.band{min-height:72px;display:flex;align-items:center;justify-content:space-between;
  gap:24px;flex-wrap:wrap;padding:14px 0;background:var(--canvas)}
.wordmark{font-family:var(--geo);font-size:1.375rem;font-weight:400;letter-spacing:.06em;
  text-decoration:none;color:var(--text);display:block;margin:0;line-height:1.2}
.brokerline{font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--meta);
  margin-top:4px}
.menu{display:flex;flex-wrap:wrap;gap:24px;margin:0;padding:0;list-style:none}
.menu a{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;
  color:var(--text)}
.menu a:hover{color:var(--accent)}

.gridstage{padding:0 0 8px}
.tilegrid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
@media(min-width:1400px){.tilegrid{grid-template-columns:repeat(4,1fr)}}
.tilegrid li{margin:0}
.tile{position:relative;display:block;aspect-ratio:1/1;text-decoration:none;color:var(--text);
  overflow:hidden}
.plate{position:absolute;inset:0;padding:24px}
.plate .pn{display:block;font-family:var(--geo);font-size:1rem;letter-spacing:.05em;line-height:1.35}
.plate .pc{display:block;font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--meta);margin-top:10px}
.yearindex{position:absolute;right:16px;bottom:16px;font-size:.6875rem;letter-spacing:.12em;
  color:var(--accent)}
.veil{position:absolute;inset:0;background:var(--veil);padding:24px;opacity:0;
  transition:opacity .18s ease;display:flex;flex-direction:column;justify-content:center;gap:6px}
.tile:hover .veil,.tile:focus-visible .veil{opacity:1}
.veil .vt{display:block;font-family:var(--geo);font-size:1.0625rem;letter-spacing:.05em}
.veil .vm{display:block;font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--meta);line-height:1.6}
.tilecap{display:none;font-size:.75rem;line-height:1.4;padding:8px 2px 0}
.tilecap span{display:block;color:var(--meta);font-size:.6875rem;letter-spacing:.12em;
  text-transform:uppercase}

.pagerow{text-align:center;font-size:.875rem;padding:28px 0 4px}
.linkrow{text-align:center;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;
  padding:20px 0 24px;display:flex;gap:28px;justify-content:center;flex-wrap:wrap}
.linkrow a{text-decoration:none}
.foot{border-top:1px solid var(--rule);text-align:center;font-size:.75rem;color:var(--meta);
  padding:18px 0 40px;margin-top:8px}
.foot a{color:var(--meta)}

.crumb{font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--meta);
  padding:8px 0 0}
.crumb a{color:var(--meta)}
.detail{max-width:1000px;margin:0 auto;padding:0 0 8px}
h1{font-family:var(--geo);font-size:1.875rem;font-weight:400;letter-spacing:.04em;
  line-height:1.25;margin:14px 0 6px}
h2{font-family:var(--geo);font-size:1.125rem;font-weight:400;letter-spacing:.1em;
  text-transform:uppercase;margin:36px 0 12px}
.metaline{font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--meta);
  margin:0 0 20px}
.prose p,.prose li{max-width:62ch;overflow-wrap:anywhere;word-break:break-word}
.facts .fv{overflow-wrap:anywhere}
.facts{display:grid;grid-template-columns:220px 1fr;border-top:1px solid var(--rule)}
.facts>div{border-bottom:1px solid var(--rule);padding:10px 0}
.facts .fk{font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--meta)}
.facts .fv{padding-left:16px}
.projnav{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.75rem;
  letter-spacing:.12em;text-transform:uppercase;border-top:1px solid var(--rule);
  margin-top:40px;padding-top:16px}
.projnav a{text-decoration:none}
.countline{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--meta);
  margin:0 0 22px}

@media(max-width:900px){
  .tilegrid{grid-template-columns:repeat(2,1fr);gap:4px}
  .veil{display:none}
  .plate{display:none}
  .tile{aspect-ratio:1/1}
  .tilecap{display:block}
  .wordmark{font-size:1.0625rem}
  .brokerline{font-size:.625rem}
}
@media(max-width:720px){
  .facts{grid-template-columns:1fr}
  .facts .fv{padding-left:0}
  .facts>div.fk{border-bottom:0;padding-bottom:0}
  h1{font-size:1.4375rem}
}
@media(max-width:560px){
  .tilegrid{grid-template-columns:1fr}
  .projnav{flex-direction:column;gap:10px}
}
@media(prefers-reduced-motion:reduce){
  .veil{transition:none}
}
