.thumbnail:hover {
    cursor: zoom-in;
}

.close-btn {
    font-size: 3rem;
    line-height: 1.6rem;
    font-weight: bold;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    cursor: pointer;
    padding: 0.5rem;
    background-color: var(--white);
}
.close-btn:hover {
    color: var(--white);
}

.earth {
    .close-btn {
        color: var(--green);
        border: 1px solid var(--green);
    }
    .close-btn:hover {
        color: var(--white);
        background-color: var(--green);
    }
}

.aqua {
    .close-btn {
        color: var(--blue);
        border: 1px solid var(--blue);
    }
    .close-btn:hover {
        color: var(--white);
        background-color: var(--blue);
    }
}

.modal {
    display: none;
    position: fixed;
    height: 100vh;
    width: 100vw;
    top: 0;
    left: 0;
    background-color: #FFFFFFAA;
    overflow: auto;
}

.modal.visible {
    display: block;
}

.modal-bkgd {
    height: 100%;
    width: 100%;
}    

.modal-contents {
    position: absolute;
    top: max(5vh, 1rem);
    left: 5vw;
    width: 90vw;
    @media screen and (min-width: 888px) {
        width: 50rem;
        left: calc(50vw - 25rem);
    }
    isolation: isolate;
}

.modal img {
    margin: 0 auto;
    width: 100%;
    height: auto;
}