/* City landing pages. Deliberately the same paper/serif/mono language as the calendar, but this is
   a plain server-rendered document: no grid, no client-side app, nothing that needs JS. */
:root{
  --paper:#faf9f6; --ink:#1b1a17; --muted:#6f6a60; --line:#ddd8ce; --line-2:#c9c2b4;
  --accent:#1f5d4c; --paid:#8a4b12;
  --mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,"Liberation Mono",monospace;
  --serif:Georgia,"Iowan Old Style","Times New Roman",serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 var(--sans)}
a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line-2)}
a:hover{border-bottom-color:var(--accent)}
.wrap{max-width:760px;margin:0 auto;padding:0 20px}
header.wrap{padding-top:30px;padding-bottom:6px}
.kicker{font:10.5px/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
h1{font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.01em;margin:0 0 10px}
.lede{font-size:14.5px;color:#3b3833;margin:0 0 10px;max-width:62ch}
.lede b{color:var(--ink)}
.nav{font:11.5px/1.6 var(--mono);color:var(--muted);margin:0 0 6px}
.nav a{border-bottom-color:transparent}
.nav a:hover{border-bottom-color:var(--accent)}
h2.sect{font:11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
  border-top:1px solid var(--line);padding-top:14px;margin:30px 0 0}
.day{margin:14px 0 0}
.day h3{font:12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 6px}
.day ul,.venues{list-style:none;margin:0;padding:0}
.day li{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid #ece8e0}
.day li .t{font:12px/1.4 var(--mono);color:var(--muted);min-width:58px;flex:none}
.day li .w{display:block}
.day li b{font-weight:600}
.day li .v,.venues li .v{display:block;font-size:12.5px;color:var(--muted)}
.day li .s,.venues li .s{display:block;font:10.5px/1.6 var(--mono);color:#8d8677}
.venues li{padding:8px 0;border-bottom:1px solid #ece8e0}
.citygrid{list-style:none;margin:22px 0;padding:0;
  columns:2;column-gap:26px}
@media (min-width:620px){.citygrid{columns:3}}
.citygrid li{break-inside:avoid;padding:3px 0;font-size:14px}
.citygrid .n{font:10.5px/1 var(--mono);color:var(--line-2);margin-left:4px}
footer.wrap{margin-top:34px;padding-bottom:44px;border-top:1px solid var(--line);
  font-size:12.5px;color:var(--muted)}
footer.wrap p{max-width:62ch}
