.textimage.-fullwidth {
    display: grid;
    width: 100%;
    grid-template-columns: 4% 1fr 4%;
}

.textimage__content {
    grid-column: 2;
    padding: 3rem 0;
    align-self: center;
}

.textimage__imagewrap {
    position: relative;
    grid-column: span 3;
    min-height: 50vw;
    overflow: hidden;
}

.textimage__additional .grid__main {
    display: block;
}

.textimage__additional {
    margin-top: 2rem;
}

.textimage__image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.textimage__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.textimage__title {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.textimage__title::before {
    content: '';
    display: block;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.65+100 */
    background: -moz-linear-gradient(top, rgba(var(--c-neutral-darkest), 0) 0%, rgba(var(--c-neutral-darkest), 0.65) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(var(--c-neutral-darkest), 0) 0%, rgba(var(--c-neutral-darkest), 0.65) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(var(--c-neutral-darkest), 0) 0%, rgba(var(--c-neutral-darkest), 0.65) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#a6000000', GradientType=0); /* IE6-9 */
    bottom: 0;
    left: 0;
    right: 0;
    position: absolute;
    height: 30%;
}

.textimage.-fullwidth.-left .textimage__description {
    direction: ltr;
}

.textimage__description {
    color: rgb(var(--c-neutral-lightest));
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
}

.textimage__textwrap {
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    width: 100%;
}

.textimage.-fullwidth .headline {
    width: 100%;
}

@media (min-width: 900px) {
    .textimage.-fullwidth {
        grid-template-columns: 4% 30px 2fr 1fr 30px 4%;
    }

    .textimage.-fullwidth.-left {
        direction: rtl;
    }

    .textimage__content {
        direction: ltr;
        grid-column: 3;
    }

    .textimage.-fullwidth.-left .textimage__content {
        padding: 3rem 0 2rem 3rem;
    }

    .textimage.-fullwidth.-right .textimage__content {
        padding: 3rem 2rem 3rem 0;
    }

    .textimage__imagewrap {
        grid-column: span 3;
        min-height: 400px;
        padding-top: 0;
        border-top: none;
    }

    .textimage__textwrap {
        flex-flow: row;
        justify-content: space-between;
    }

    .textimage__additional {
        margin-top: 0;
        margin-left: 2rem;
    }

    .textimage.-fullwidth.-right .textimage__imagewrap {
        margin-top: -1px;
        margin-bottom: -1px;
    }

    .textimage.-fullwidth.-left .textimage__imagewrap {
        margin-top: -1px;
        margin-bottom: -1px;
    }

}

@media (min-width: 1580px) {
    .textimage.-fullwidth {
        grid-template-columns: 1fr 50px 1000px 440px 50px 1fr;
    }

}
