body {
    overflow-x: hidden;
    overflow-y: hidden;
    width: 100%;
    height: 100%;
    font-family: 'Source Sans Pro', sans-serif;
    letter-spacing: 1px;
    line-height: 3vh;
}

.container {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    grid-template-rows: 1fr;
    grid-auto-columns: 1fr 1fr 1fr;
    gap: 0px 0px;
    grid-auto-flow: row;
    justify-content: start;
    justify-items: stretch;
    align-items: stretch;
    grid-template-areas:
        "contact_grp intro_grp";
    
    height:auto;
    padding-top:10vh;
    padding-left:10vw;
    padding-right:10vw;
}

    .contact_grp {
        grid-area: contact_grp;
        
        font-size: var(--fontsize-Dcontent);
        position: relative;
    }
        .bottom_text {
            position: absolute;
            bottom: -12vh;
        }

    .intro_grp {
        display: grid;
        grid-template-columns: 0.3fr 1fr;
        grid-template-rows: 1fr;
        gap: 0px 0px;
        grid-auto-flow: row;
        grid-template-areas:
            "intro_portrait intro_info";
        
        grid-area: intro_grp;
    }

        .intro_portrait {
            grid-area: intro_portrait;
            padding: 0vw;
        }

        .intro_info {
            display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: .12fr 1fr;
            gap: 0px 0px;
            grid-auto-flow: row;
            grid-template-areas:
                "intro_name"
                "intro_text";
            grid-area: intro_info;
            margin-left:1vw;
        }

            .intro_name {
                display: grid;
                grid-template-columns: 1fr;
                grid-template-rows: 1fr .15fr;
                gap: 0px 0px;
                grid-auto-flow: row;
                grid-template-areas:
                    "intro_name_1"
                    "intro_name_2";
                grid-area: intro_name;
                margin-left:1vw;
            }
                .intro_name_1 {
                    grid-area: intro_name_1;
                    text-align: left;

                }
                .intro_name_1 img {
                    width: 100%;
                }

            .intro_text {
                grid-area: intro_text;
                padding:1vw;
                font-size: var(--fontsize-Dcontent);
            }







.full_bg {
    height: 100vh;
    width: 100vw;
    position: fixed;
    z-index: -99;
    background: url(../resources/background/background_01.jpg) no-repeat center center fixed; 
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.full_bg img{
    position: fixed;
    top: 00vh;
    max-width: 100%;
    height:auto;
    z-index: -99;
    pointer-events: none;
    user-select: none;
}


.portrait_img {
    display: block;
    width: 100%;
    height: auto;
    pointer-events: none;
    user-select: none;
}

.line_spacer
{
    height:1.5vh;
}