.itemProduct, .itemProgram > div.enrolmentBlock {
  display: flex;
  align-items: center;
  align-content: center;
}

.itemProduct > div:nth-of-type(1), .itemProgram > div.enrolmentBlock > div:nth-of-type(1) {
  flex-grow: 1;
}

.itemProduct > div:nth-of-type(3) > a, .itemProgram a {
  margin: 0;
}

.cartItem {
  background: #0f58aa;
  padding: 20px;
  margin-top: 20px;
}

.cartItem h3 {
  margin-top: 0;
}

.cartItem .price {
  padding: 20px;
}

#cartFooter {
  background: #0f58aa;
  padding: 20px;
  margin: 20px -20px -20px -20px;
}

#cartFooter a {
  margin-top: 0;
}

.addons {
  margin-top: 10px;
}

.addons p {
  margin: 2px 0 0 0;
}

.enrolmentBlock .details > p {
  margin: 0;
}

.enrolmentBlock .details > p.title {
  margin-top: 20px;
}

.enrolmentBlock .details > p.venue {
  margin-top: 10px;
}

p.venue, p.option, p.time {
  opacity: 0.5;
}

.price {
  text-align: center;
}

.price span {
  display: block;
}

.price span.originalPrice {
  text-decoration: line-through;
  opacity: 0.5;
}