.a-gallery {
    box-sizing: border-box;
    max-width: $XX_LARGE_SIZE;
    padding-left: $MOBILE_SIDE_GUTTER;
    padding-right: $MOBILE_SIDE_GUTTER;

    @include at-medium-size {
        padding-left: $TABLET_SIDE_GUTTER;
        padding-right: $TABLET_SIDE_GUTTER;
    }

    @include at-x-large-size {
        padding-left: $DESKTOP_SIDE_GUTTER;
        padding-right: $DESKTOP_SIDE_GUTTER;
    }

    &.is-closed {
        .g-image-nav,
        .a-gallery__view--list .a-gallery__image-listitem:nth-of-type(n+4) {
            display: none;
        }

        .a-gallery__message {
            display: block;
        }
    }
}

.a-gallery__wrapper {
    box-sizing: border-box;
    margin: 0 auto;
    max-width: $XX_LARGE_SIZE;
    position: relative;

    @include at-x-large-size {
        padding-right: $ARTICLE_RIGHT_TOTAL;
    }
}

.a-gallery__message {
    display: none;
    margin: 0 auto;
    text-align: center;
}

.a-gallery__message-btn {
    appearance: none;
    background: transparent;
    border: none;
    border-radius: 0;
    cursor: pointer;
    padding: 0;
}

.a-gallery__thumbnail-list {
    list-style: none;
    margin: 0;
    overflow: hidden;
    padding: 0;
}

.a-gallery__thumbnail {
    cursor: pointer;
    float: left;
    margin: 0;
    padding: 0;
    position: relative;
    width: 33.3333333333%;
}

.a-gallery__thumbnail-image {
    position: relative;
    padding-top: 100%;

    img {
        bottom: 0;
        left: 0;
        overflow: hidden;
        position: absolute;
        right: 0;
        top: 0;
        vertical-align: top;
        width: 100%;
    }
}

.a-gallery__thumbnail-hover {
    background-color: rgba(0, 0, 0, 0.7);
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: opacity 200ms ease-in-out;
    width: 100%;

    svg {
        display: block;
        height: 100%;
        margin: 0 auto;
        width: 25%;

        path {
            fill: #fff;
        }
    }

    &:hover {
        opacity: 1;
    }
}

.a-gallery__view {
    &.is-hidden {
        display: none;
    }
}

.a-gallery__image-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.a-gallery__image-listitem {
    margin: 0;
    padding: 0;
}
.a-gallery__image-listitem--ad {
    position: static;
}

.a-gallery__image-listitem--image {
    position: relative;
}

.c-figure__container {
    position: relative;

    @include max-screen($MEDIUM_SIZE - 1) {
        margin-left: -$MOBILE_SIDE_GUTTER;
        margin-right: -$MOBILE_SIDE_GUTTER;
    }
}

.g-image-nav {
    display: none;
    position: absolute;
    transform: translateX(-100%);
    width: 30px;

    @include at-medium-size {
        display: block;
    }

    &.is-hidden {
        display: none;
    }

}

.g-image-nav__btns {}
.g-image-nav__btn {
    appearance: none;
    background: transparent;
    border: none;
    border-radius: 0;
    cursor: pointer;
    display: block;
    height: 40px;
    padding: 0;
    transition: all 100ms ease-in-out;
    width: 30px;

    svg {
        display: block;
        fill: #000;
        height: 100%;
        margin: 0 auto;
        width: 20px;
    }
}

.g-image-nav__btn--previous {}
.g-image-nav__btn--next {}
.g-image-nav__btn[disabled] {
    cursor: default;
}
