.main {
  width: 100%;
  align-self: stretch;
  padding: 2rem;
}
.page-title {
  margin-bottom: 2rem;
  color: #5B3760;
  font-weight: bold;
}
h4.header, h5.header {
  display: flex;
  align-items: stretch;
}
h4.header::before, h5.header::before {
  content: '';
  display: inline-block;
  width: 4px;
  margin-right: 0.5rem;
  background-color: #928B53;
  flex-shrink: 0;
}
.search-form {
  height: 310px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(45deg, #efefef, #c0c0c0);
  z-index: 2;
}
.search-form .keyword {
  border-radius: 0;
  border: 2px solid #5B3760;
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgb(from #5B3760 r g b / .5);
  border-right-width: 0;
}
.search-form .form-check-input {
  border-radius: 0;
}
.search-form .form-check-input, .search-form .form-check-input:checked, .search-form .form-check-input:indeterminate {
  border-color: #5B3760;
}
.search-form .form-check-input:checked {
  background-color: #5B3760;
}
.search-form .form-check-input:indeterminate {
  background-color: rgb(from #5B3760 r g b / 0.5);
}
.search-form .search-button {
  border-radius: 0;
  --bs-btn-bg: #5B3760;
  --bs-btn-border-color: #5B3760;
  --bs-btn-border-width: 2px;
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgb(from #5B3760 r g b / .5);
  --bs-btn-padding-x: 0.5rem;
  --bs-btn-color: white;
}
.search-form .search-button:hover, .search-form .search-button:focus {
  --bs-btn-hover-bg: #ad7cb4;
  --bs-btn-hover-border-color: #5B3760;
  --bs-btn-hover-color: white;
}
