body {
  &.body--modal-open {
    overflow: hidden;
  }
}

.modal {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  z-index: 4999;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.6);
  transition: .3s;
  &.modal-open {
    visibility: visible;
    opacity: 1;
  }
  &.overlay {
    background: rgba(0,0,0,.8);
  }
}
.modal-content {
  position: fixed;
  z-index: 5000;
  left: 5vw;
  right: 5vw;
  bottom: -90vh;
  background: $color-white;
  border: 0.25rem solid $color-plp-tertiary;
  border-bottom: none;
  padding: 0.5rem;
  height: 90vh;
  transition: .6s;
  &.modal-open {
    bottom: 0;
  }
  &-inner {
    overflow: auto;
    height: 100%;
    padding: 1rem;
  }
  &.overlay {
    opacity: 0;
    visibility: hidden;
    border-bottom: 0.25rem solid $color-plp-primary;
    border-color: $color-plp-primary;
    left: 10vw;
    right: 10vw;
    top: 10vh;
    bottom: 10vh;
    height: 80vh;
    &.modal-open {
      visibility: visible;
      opacity: 1;
    }
  }
  .close {
    cursor: pointer;
    position: absolute;
    right: 1.5rem;
    top: 1.5rem;
    display: block;
    width: 27px;
    height: 27px;
    text-indent: -9999px;
    font-size: 1px;
    line-height: 1px;
    background: transparent url("/assets/elements/close-x.svg") no-repeat left top;
    background-size: 100% auto;
  }
}

@media only screen and (max-width: 1004px) {
  .modal-content {
    height: 96vh;
    left: 2vw;
    right: 2vw;
    bottom: - 96vh;
    &.overlay {
      height: 96vh;
      left: 2vw;
      right: 2vw;
      top: 2vh;
      bottom: 2vh;
    }
  }
}
