.modal-outer {
    display: grid;
    background: hsla(60, 2%, 12%, 0.7);
    position: fixed;
    height: 100vh;
    width: 100vw;
    top: 0;
    left: 0;
    justify-content: center;
    align-items: center;
    /* Hide this modal until we need it */
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s;
    z-index: 99;
}

.modal-outer img {
    width: 100%;
}

.modal-outer.open {
    opacity: 1;
    pointer-events: all;
}

.modal-inner {
    max-width: 900px;
    min-width: 850px;
    padding: 2rem;
    min-height: 200px;
    background: #1A1A1A 0% 0% no-repeat padding-box!important;
    box-shadow: 0px 10px 30px #00000065!important;
    border-radius: 24px!important;
    opacity: 1!important;
    transform: translateY(-200%);
    transition: transform 0.5s;
}

.modal-outer.open .modal-inner {
    transform: translateY(0);
}

@media only screen and (max-width: 768px) {
    .modal-inner {
        min-width: 90%;
        max-width: 90%;
    }
}