.photography-main {
    margin: 0;
}

.photography-main img:hover {
    cursor: pointer;
    filter: brightness(70%);
}

#FullImageView {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .9);
    text-align: center;
}

#FullImage {
    padding: 24px;
    max-width: 98%;
    max-height: 98%;

}

#CloseButton {
    position: absolute;
    top: 12px;
    right: 12px;
    font-size: 2rem;
    color: white;
    cursor: pointer;
}

.image-grid {
    --gap: 16px;
    --num-cols: 4;
    --row-height: 300px;

    box-sizing: border-box;
    padding: var(--gap);

    display: grid;
    grid-template-columns: repeat(var(--num-cols), 1fr);
    grid-auto-rows: var(--row-height);
    gap: var(--gap);
}

.image-grid > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.image-grid-col-2 {
    grid-column: span 2;
}
.image-grid-row-2 {
    grid-row: span 2;
}

@media screen and (max-width: 1024px) {
    .image-grid {
        --num-cols: 2;
        --row-height: 200px;
    }
}

@media screen and (max-width: 512px) {
    .image-grid {
        --num-cols: 1;
        --row-height: 200px;
    }
}