.filter--container {
  padding: 2rem;
}
.filter--button {
  display: inline-block;
  font-size: 1.375rem;
  position: relative;
}
.filter input[type=radio] {
  display: block;
  left: 0;
  height: 100%;
  opacity: 0;
  pointer: cursor;
  position: absolute;
  top: 0;
  width: 100%;
}
.filter input[type=radio] + label {
  background-color: white;
  border: 1px solid blue;
  color: blue;
  padding: 0.5em 1.5em;
  pointer: cursor;
}
.filter input[type=radio]:checked + label {
  background-color: blue;
  color: white;
}
.filter input[type=radio]:hover, .filter input[type=radio]:focus {
  cursor: pointer;
}
.filter input[type=radio]:hover + label, .filter input[type=radio]:focus + label {
  cursor: pointer;
  outline: 2px solid blue;
}

.programs {
  column-gap: 1.5rem;
  display: flex;
  flex-flow: row wrap;
  padding: 0 2rem;
}
.programs--program.hide {
  display: none;
}