.person {
    display: flex;
    flex-flow: row;
    margin-bottom: var(--el-margin-bottom);
    margin-right: var(--body-margin);
}

.person__wrapper {
    display: flex;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    border: 2px solid var(--main-orange);
}

.person__image {
    width: 50vw;
    height: 46vw;
    object-fit: cover;
}

#person__overlay {
    position: absolute;
    width: clamp(23.125rem, -0.875rem + 40vw, 40rem);
    padding: 25px 25px 25px 25px;
}

.person__text {
    display: flex;
    flex-flow: column wrap;
    height: 100%;
    margin-left: 1.5625rem;
}

.person__text strong {
    color: var(--main-green);
}

.person__text h2 {
    height: 7vw;
}

.person__text .text__wrapper {
    display: flex;
    height: 34vw;
    align-items: flex-end;
}

.person__text .button__wrapper {
    display: flex;
    align-items: flex-end;
    height: 5.2vw;
}

@media (max-width: 1200px) {
    .person {
        flex-flow: column wrap;
    }

    .person__wrapper {
        order: 2;
        flex-flow: column wrap;
        margin-top: 25px;
    }

    .person__image {
        width: 100%;
        height: 65vh;
    }

    .person__text {
        margin-left: 0px;
    }

    .person__text h2 {
        margin-top: 0.625rem;
        height: 17vh;
    }
    
    .person__text .text__wrapper {
        align-items: flex-end;
        height: 25vh;
    }
    
    .person__text .button__wrapper {
        display: flex;
        align-items: flex-end;
        height: 7vh;
    }

    #person__overlay {
        width: 90%;
        padding: 10px 10px 10px 10px;
    }
}

@media (max-width: 370px) {
    .person__text h2 {
        height: 45vh;
    }
}