.list-none {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.no-margin {
  margin: 0;
}
.subtle {
  opacity: 0.5;
}
label {
  font-weight: normal;
}
label.error {
  color: red;
  display: block;
  margin-top: 5px;
}
.event-hero {
  background: #ccc;
  height: 300px;
  margin-bottom: 40px;
  position: relative;
}
.event-hero:after {
  width: 100%;
  height: 200px;
  display: block;
  content: '';
  bottom: 0;
  position: absolute;
  z-index: 2;
  background: -moz-linear-gradient(top, rgba(12, 14, 16, 0) 0%, rgba(12, 14, 16, 0.2) 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(12, 14, 16, 0) 0%, rgba(12, 14, 16, 0.2) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(12, 14, 16, 0) 0%, rgba(12, 14, 16, 0.2) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000c0e10', endColorstr='#290c0e10', GradientType=0);
  /* IE6-9 */
}
.event-hero .event-header {
  position: relative;
  z-index: 3;
  bottom: 0;
  color: #000;
  margin-bottom: 10px;
  position: absolute;
  text-align: center;
}
.event-hero .media .media-left,
.booking-hero .media .media-left {
  display: block;
}
.event-hero .event-icon,
.booking-hero .event-icon {
  border: 6px solid white;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
  width: 100px;
}
.event-hero i,
.booking-hero i {
  margin-right: 5px;
}
.event-hero p,
.booking-hero p {
  font-size: 18px;
  margin: 0;
}
.booking-hero {
  padding-top: 80px;
  margin-bottom: 40px;
}
.booking-progress {
  margin: 0 0 40px 0;
}
.booking-progress .booking-progress-item {
  text-align: center;
  background: red;
}
.booking-progress .booking-progress-item.booking-progress-item-active {
  font-weight: bold;
  background: blue;
}
.event-profile {
  line-height: 1.7;
}
.event-profile fieldset {
  margin-bottom: 30px;
}
.event-profile fieldset legend {
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 2px;
  padding-bottom: 10px;
}
.event-profile .tickets {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.event-profile .tickets li.ticket {
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 10px;
  margin-bottom: 20px;
}
.sections {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.sections .section {
  background: white;
  border: 1px solid #d9dbdd;
  padding: 25px;
  margin-bottom: 25px;
  border-radius: 5px;
}
.sections .section .section-header {
  border-bottom: 1px solid #d9dbdd;
  margin-bottom: 20px;
  text-transform: uppercase;
  letter-spacing: 1px;
}
@media (min-width: 768px) {
  .event-hero {
    background-size: cover;
  }
  .event-hero .event-header {
    margin-bottom: 30px;
    text-align: left;
  }
  .event-hero .media .media-left,
  .booking-hero .media .media-left {
    display: table-cell;
  }
  .event-hero .event-icon,
  .booking-hero .event-icon {
    margin: 0 10px 0 0;
  }
}
