
/* Acordeon styles */
.accordion .tab {
  position: relative;
  margin-bottom: 1px;
  width: 100%;
  color: #fff;
  overflow: hidden;
}
.accordion input {
  position: absolute;
  opacity: 0;
  z-index: -1;
}
.accordion label {
  position: relative;
  display: block;
  padding: 0 0 0 1em;
  background: #444;
  font-weight: bold;
  line-height: 3;
  cursor: pointer;
}
.accordion .tab-content {
  height: 0;
  overflow: hidden;
  background: transparent;
  color: #444;
  -webkit-transition: max-height .35s;
  transition: max-height .35s;
}
.accordion .tab-content p {
  margin: 1em;
}
/* :checked */
.accordion input:checked ~ .tab-content {
  height: auto;
}
/* Icon */
.accordion label::after {
  position: absolute;
  right: 0;
  top: 0;
  display: block;
  width: 3em;
  height: 3em;
  line-height: 3;
  text-align: center;
  -webkit-transition: all .35s;
  transition: all .35s;
}
.accordion input[type=checkbox] + label::after {
  content: "+";
}
.accordion input[type=radio] + label::after {
  content: "\25BC";
}
.accordion input[type=checkbox]:checked + label::after {
  -webkit-transform: rotate(315deg);
          transform: rotate(315deg);
}
.accordion input[type=radio]:checked + label::after {
  -webkit-transform: rotateX(180deg);
          transform: rotateX(180deg);
}
