
/* START PAGE STYLE */

div.profile-showroom {

    width: 100%;
    display: flex;
    align-items: flex-start;
    flex-direction: row-reverse;
    column-gap: 3rem;

    table.cv {
        td {
            font-weight: normal; /* For some reason otherwise everything else is bold? */
        }
        tr td:first-child {
            font-weight: bold;
            text-align: right;
            font-family: 'Courier New', Courier, monospace; 
        }
        tr td:nth-child(2) {
            text-align: left;
            padding-left: 0.5rem;
        }
    }
    hr {
        margin: 1.5rem 0 1.5rem 0;
    }
    .image {
        flex: 1;
        text-align: right;
        img {
            height: 16.5rem;
            padding: 0; /* Override .box */
        }
    }
}

:root {
    --box-image-container-width: 25%;
}

div.box-image-container {
    overflow: hidden;

    .box-image {
        width: var(--box-image-container-width);
        height: 100%;
        position: absolute;
        top: 0;
        bottom: 0;
        object-fit: cover;
        /* Pos. specific */
        left: 0;
    }
    div {
        /* Pos. specific */
        padding-left: var(--box-image-container-width);
    }
}
div.box-image-container-right {
    .box-image {
        left: auto;
        right: 0;
    }
    div {
        padding-left: 0%;
        padding-right: var(--box-image-container-width);
    }
}

/* Anchors do not work corrently with a fixed header, so we need a small offset */
a.offset-anchor {
    display: block;
    position: relative;
    top: -9.375rem;
    visibility: hidden;
}

/* Below 675px */
@media only screen and (max-width: 42.19em) {
    div.profile-showroom {
        display: block;
        flex-direction: row;

        table.cv {
            td {
                display: block;
            }
            tr:not(:first-child) {
                td:first-child {
                    margin-top: 1rem;
                }
            }
            tr td:first-child {
                text-align: left;
            }
        }
        .image {
            text-align: center;
            margin-bottom: 1rem;
        }
    }
}

/* Below 600px */
@media only screen and (max-width: 37.5em) {
    :root {
        --box-image-container-width: 10rem;
    }

    div.box-image-container {
        overflow: hidden;

        .box-image {
            width: 100%;
            height: var(--box-image-container-width);
            position: absolute;
            top: 0;
            object-fit: cover;
            /* Pos. specific */
            left: 0;
        }
        div {
            /* Pos. specific */
            padding-left: 0;
            margin-top: var(--box-image-container-width);
        }
    }
    div.box-image-container-right {
        .box-image {
            left: 0;
            right: 0;
        }
        div {
            padding-left: 0;
            padding-right: 0;
        }
    }
}

/* END PAGE STYLE */
