.image-container {
  position: relative;
  overflow: hidden;
  width: 100%;
}

.image-container img {
  width: 100%;
  cursor: zoom-in;
}

.image-container::before {
  content: attr(data-header);
  display: inline-block;
  color: darkorange;
  font-size: 36px;
  margin: 10px 0;
  width: 100%;
  text-align: center;
}

button.prev { left: 0px; }
button.next { right: 0px; }
button.prev,
button.next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.5);
  border: none;
  color: white;
  font-size: 2em;
  padding: 0 10px;
  z-index: 1;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  width: 20%;
}

.dots {
  text-align: center;
  margin-top: -55px;
  margin-bottom: 40px;
  display: flex;
  justify-content: space-evenly;
}

.dots .dot {
  height: 10px;
  width: 10px;
  margin: 0 4px;
  display: inline-block;
  border: 1px solid white;
  border-radius: 5px;
}

.dots .dot.active {
  background-color: white;
}