:root {
  --f-body: 'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --f-display: 'Big Shoulders Display', 'Arial Narrow', Impact, sans-serif;
  --f-mono: 'DM Mono', ui-monospace, monospace;
}
body { font-family: var(--f-body); }
h1 { font-family: var(--f-display); font-weight: 800; text-transform: uppercase;
  font-size: clamp(52px,7vw,96px); line-height: .98; letter-spacing: -.02em; max-width: 16ch; }
.eyebrow, .address { font-family: var(--f-mono); }
.caption { font-size: 16px; line-height: 1.35; }
.caption small { margin-bottom: 7px; font-family: var(--f-mono); font-size: 11px; }
.viewer-head h2 { font-weight: 600; }
.shell { overflow: clip; }
.cta { background: #c94b20; }
#discuss { background: #ff5a1f; color: #fff; }
#discuss:hover { background: #f04e17; }
.cta.secondary { background: #fff; }
.layout { grid-template-columns: 230px minmax(0, 1fr); }
.filter { display: flex; align-items: center; justify-content: space-between; gap: 10px; white-space: nowrap; }
.filter small { float: none; flex-shrink: 0; margin-left: auto; }
@media (min-width: 601px) and (max-width: 900px) {
  .layout { grid-template-columns: 210px minmax(0, 1fr); }
}
@media (max-width: 600px) {
  .filter { flex-shrink: 0; }
  .filters { top: calc(64px + env(safe-area-inset-top, 0px)); z-index: 20; }
  .caption { font-size: 16px; }
  header { padding-bottom: 28px; }
}
