:root {
    --distance: 75%;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body,
html {
    height: 100%;
}

/* CSS Grid Stack Image Snippet from Alex John Suarez */
#image-container {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    height: inherit;
    justify-items: center;
    align-items: center;
    overflow: hidden;
}

#image-container img {
    position: relative;
    grid-column: 1;
    grid-row: 1;
    overflow: hidden;
    height: 700px;
    border-radius: 2px;
    box-shadow: 0px 3px 3px rgba(140, 140, 140, 0.5);
}

.hidden {
    visibility: hidden;
}

@keyframes slideIn {
    0% {
        left: var(--distance);
        opacity: 0;
    }
    40%,
    100% {
        left: 0%;
        opacity: 1;
    }
}

@keyframes slideOut {
    0% {
        left: 0%;
        opacity: 1;
    }
    40%,
    100% {
        left: calc(var(--distance) * -1);
        opacity: 0;
    }
}