/* Collection pages reuse the existing palette, cards and responsive grid. */
.collection-page h1 {
  max-width: 850px;
  font-size: clamp(36px, 5vw, 58px);
}
.collection-intro { max-width: 760px; margin-bottom: 32px; color: var(--muted); }
.breadcrumbs { justify-content: start; flex-wrap: wrap; margin-bottom: 30px; color: var(--muted); }
.breadcrumbs span { font-size: 13px; }
.collection-controls { flex-wrap: wrap; align-items: end; }
.collection-controls label { flex: 1 1 180px; min-width: 0; font-size: 13px; font-weight: 600; }
.collection-controls input, .collection-controls select {
  display: block;
  width: 100%;
  min-height: 50px;
  margin-top: 6px;
  padding: 12px;
  border: 1px solid #80939b;
  border-radius: 4px;
  background: #fffdf8;
  color: var(--ink);
  font-size: 16px;
}
.collection-page .events { padding: 18px; border-radius: 4px; }
.collection-page .hood a { min-height: 44px; font-size: 13px; font-weight: 600; }
.detail-content { max-width: 850px; }
.detail-meta, .detail-note { color: var(--muted); }
.detail-description { white-space: pre-line; line-height: 1.8; overflow-wrap: anywhere; }
.detail-page h1, .detail-facts dd, .breadcrumbs { overflow-wrap: anywhere; }
.detail-links { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.detail-links a { padding-block: 12px; min-height: 44px; }
.detail-facts { display: flex; flex-wrap: wrap; gap: 18px 40px; }
.detail-facts dt { font-weight: 600; font-size: 13px; }
.detail-facts dd { margin: 4px 0 0; }
.card h3 a, .event h3 a, .event h4 a { color: inherit; font: inherit; }
@media (max-width: 760px) {
  .collection-controls label { flex-basis: auto; width: 100%; }
}
