.Accordion {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}

.Accordion + .Accordion {
  margin-top: 1em;
}

.Accordion input[type=radio],
.Accordion input[type=checkbox] {
  display: none;
}

.Accordion input:checked + .Accordion-subElements > .Accordion-subElement {
  height: 2em;
  transform: scale(1);
}

.Accordion-item label {
  display: block;
  padding: 1em;
  background-color: #1abc9c;
  color: #fff;
  font-weight: bold;
  cursor: pointer;
}

.Accordion-item label:hover {
  background-color: #16a085;
}

.Accordion-subElements {
  padding-left: 0;
  background-color: #ecf0f1;
}

.Accordion-subElement {
  height: 0;
  transform-origin: 0 0;
  transform: scale(0);
  font-size: 0.9em;
  line-height: 2;
  color: #555;
  transition-property: transform, height;
  transition-duration: 0.3s;
  overflow: hidden;
}

.Accordion-subElement:hover {
  background-color: #bdc3c7;
  color: #111;
}

.Accordion-subElement a {
  display: block;
  padding-left: 2em;
  color: inherit;
  text-decoration: none;
}
