.header-container {
    display: flex;
    flex-direction: row;
    width: 100%;
    --photo-height: 239px;
}

.header-container > table > tbody > tr:last-child > td {
    height: var(--photo-height);
}

@supports (-webkit-touch-callout: none) {
    @media screen and (orientation:landscape) {
        .header-container {
            width: calc(100% - 2 * var(--border-width));
        }
    }
    @media screen and (orientation:portrait) {
        .header-container {
            width: calc(100% - 2 * var(--desktop-padding));
        }
    }
}

.profile-photo {
    height: var(--photo-height);
    width: calc(var(--photo-height) * 180 / 239);
    display: flex;
}

.introduction-centered {
    --padding: max(var(--target-padding), 3px);
    display: flex;
    flex-direction: column;
    width: min-content;
    height: calc(100% + var(--target-padding) * -2);
    margin: auto;
    justify-content: center;
    padding: var(--padding);
}

.text-window-height {
    height: calc(var(--photo-height) - var(--border-width) * 2);
}

.introduction-text {
    display: flex;
    flex-direction: column;
    gap: calc(var(--inline-picture-size) * 3 / 7);
    padding-top: var(--initial-target-padding);
    padding-bottom: var(--initial-target-padding);
    padding-left: 0;
    padding-right: 0;
}

div[class^="contacts-mobile"] {
    display: flex;
    width: max-content;
    height: var(--inline-picture-size);
    align-items: center;
}

div[class^="contacts-mobile"] > *:not(img) {
    margin-top: calc(var(--inline-picture-size) * 0.1);
}

h1 {
    font-size: calc(var(--font-size) * 2);
}

@media (min-width: 730px) {
    div[class^="contacts-mobile"] {
        display: none;
    }
}


@media (max-width: 430px) {
    .header-container {
        --photo-height: max(calc(239px - (430px - 100vw) * 1.5), 170px);
    }
}

@media (max-width: 366px) {
    .contacts-mobile-prefix {
        display: none;
    }
}
