main > .contact_person_block,
.contact_person_block {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5rem var(--gap);
    grid-auto-flow: dense;
    padding: 0 calc(var(--padding) + var(--firstrow));
    /* overflow: hidden; */
}

.contact_person_block > .info,
.contact_person_block h2 {
    color: var(--headline-color);
}

.contact_person_block h2:first-child {
    margin-top: 0;
}

.contact_person_block > .info {
    grid-row-start: 1;
    grid-column-start: 1;
    grid-column-end: span 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding: 0 40% 0 30%;
    font-size: var(--mediumsize);
    font-weight: 700;
    position: relative;
}

.contact_person_block > .info:after {
    content: '';
    position: absolute;
    height: 9.5rem;
    width: 4.5rem;
    display: block;
    top: 100%;
    right: 50%;
    pointer-events: none;
    background-image: url(../../../img/contact-arrow.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.contact_person_block > .info strong {
    /* display: block; */
    font-size: var(--headlinesize);
}

.contact_person_block > .text,
.contact_person_block > .contact {
    padding: 2em var(--firstrow) 2em 0;
    position: relative;
}

.contact_person_block > .text:before {
    content: '';
    left: calc(0px - (var(--padding) + var(--column) + var(--gap)));
    width: 100vw;
    height: 100%;
    top: 0;
    bottom: 0;
    display: block;
    position: absolute;
    background-image: linear-gradient(90deg, #f2f2f2 0%, rgba(255,255,255,0) 66%);
    z-index: -1;
}

@media screen and (max-width: 1600px) {
    main > .contact_person_block,
    .contact_person_block {
        padding: 0 calc(var(--padding));
    }
}

@media screen and (max-width: 1380px) {
    .contact_person_block > .info {
        padding-left: 0;
    }
}

@media screen and (max-width: 1080px) {
    main > .contact_person_block,
    .contact_person_block {
       display: flex;
       flex-direction: column;
    }

    .contact_person_block > .info {
        padding: 0;
        display: block;
        padding-bottom: 2em;
    }

    .contact_person_block > .info strong {
        display: block;
    }

    .contact_person_block > .info br {
        display: none;
    }

    .contact_person_block > .info:after {
        right: auto;
        left: 0;
        bottom: -2em;
        top: auto;
    }
}