.banner-grid-section__grid {
    display: grid
}

.banner-grid-section__item {
    display: grid;
    grid-template-rows:1fr;
    position: relative;
    min-height: 100%;
    max-width: 100%
}

.banner-grid-section__item__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: var(--gutter)
}

.banner-grid-section__item__overlay:before {
    content: "";
    height: 100%;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0
}

.banner-grid-section__item__heading {
    position: relative
}

.banner-grid-section .media:not(.media--empty), .banner-grid-section figure:not(.media--empty) {
    background-color: transparent
}

.banner-grid-section[data-structure=fixed] .banner-grid-section__item figure {
    height: 100%
}

.banner-grid-section[data-structure=masonry] .banner-grid-section__item img {
    height: auto
}

.banner-grid-section__item--text {
    padding-top: calc(2 * var(--gutter));
    padding-bottom: calc(2 * var(--gutter));
    place-content: center;
    grid-auto-rows: minmax(min-content, max-content);
    grid-template-rows:auto
}

.banner-grid-section__item__inner {
    display: flex;
    flex-direction: column;
    width: 47%;
    margin: 0 auto;
    gap: 8px
}

.banner-grid-section__item--accessories {
    max-height: 471px;
}

.banner-grid-section__item .title {
    margin-bottom: 2.4rem;
}

@media screen and (max-width: 960px) {
    .banner-grid-section__item__inner {
        width: 85%;
    }
}


@media screen and (max-width: 767.98px) {
    .banner-grid-section__item__inner {
        width: 100%;
        padding: 24px;
    }

    .banner-grid-section__item--accessories {
        max-height: none;
    }

    .banner-grid-section__item .title {
        margin-bottom: 0;
    }
}