.contact-page > * {grid-column: 1/-1;}
@media only screen and (min-width: 768px) {
    .contact_p-contacts {grid-column: -7/-1;}
}

/* 
CONTACTS
*/
.contact_p-contacts li:not(:last-of-type) {margin-bottom: 1em;}
.contact_p-contacts-location span {display: block;}
.contact_p-contacts-phone a {display: inline;}

/* 
PICTURE
*/
.contact_p-picture {margin-top: 10rem;}

.contact_p-picture img {
    width: 100%;
    aspect-ratio: 2/3;
    object-fit: cover;
}

@media only screen and (min-width: 768px) {
    .contact_p-picture {
        position: fixed;
        left: 0;
        bottom: 0;
        width: calc(calc(100vw - 15rem) / 12 * 5 + 6rem);
        margin-top: 0;
    }
}

@media only screen and (min-width: 1024px) {
    .contact_p-picture {
        height: calc(calc(100 * var(--vh)) - 15rem);
        width: auto;
        aspect-ratio: 2/3;
    }

    .contact_p-contacts {
        grid-column: -6/-2;
    }

    body.os-win .contact_p-contacts {
        margin-left: -.75rem;
    }
}