.c-gallery {
}

.c-gallery__link {
    display: block;
    position: relative;

    &::before {
        content: '';
        opacity: 0;
    }

    &:hover {
        &::before {
            display: block;
            position: aboslute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            height: 100%;
            width: 100%;
            z-index: 50;
            background-color: rgba(0, 0, 0, .5);
            opacity: .75;
            transition: opacity $transition-time linear;
        }
    }
}

.c-gallery__image {
    display: block;
    position: relative;
    z-index: 10;
}

.c-gallery__caption {
    .lg-sub-html & {
        margin-top: 0;
        font-size: 1.125rem;
    }
}

.c-gallery__zoom-icon {
    font-size: 2.5rem;
    position: absolute;
    z-index: 100;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    transition: opacity $transition-time linear;
    color: #fff;

    .c-gallery__link:hover & {
        opacity: 1;
    }
}
