.bump.bump-family {
  display: block;
}
.bump-family .bump-heading {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.bump-family .bump-heading b {
  flex: 1;
  min-width: 0;
}
.bump-family .bump-heading input {
  flex-shrink: 0;
}
.bump-family .bump-arrow {
  flex-shrink: 0;
  animation: family-arrow-nudge 850ms ease-in-out infinite alternate;
}
.bump-family:has(input:checked) .bump-arrow {
  display: none;
}
.bump-family .bump-description {
  display: block;
  width: 100%;
  margin-top: 8px;
  font-size: 15px;
  color: #5C4A1E;
}
@keyframes family-arrow-nudge {
  from { transform: translateX(0); }
  to { transform: translateX(6px); }
}
@media (prefers-reduced-motion: reduce) {
  .bump-family .bump-arrow { animation: none; }
}
