.modal {
  transition: all .4s ease;
  align-items: center;
  justify-content: center;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100vw;
  height: 100vh;

  &__overlay {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    position: fixed;
    background-color: hsla(var(--white-hsl), .4);
  }

  &__trigger { cursor: pointer; }

  &__close {
    cursor: pointer;
    background-color: unset;
    padding: unset;
    border: unset;
    float: right;
    &:after {
      @extend .u-material-icons;
      content: 'close';
    }
  }

  &__window {
    position: relative;
    padding: 40px;
    max-height: 90vh;
    max-width: $single-column;
    overflow-y: scroll;
    background-color: hsla(var(--white-hsl), 1);
    box-shadow: 8px 8px 32px hsla(var(--base-hsl), .1);
  }
}

.modal.modal--shown { display: flex; }
body.modal--shown { overflow: hidden; }

