* {
    box-sizing: border-box;
}

body {
    color: #777777;
    font-family: 'Helvetica Neue', Helvetica, 'Arial', sans-serif;
    background-image: url("../images/frenchstucco.png")
}

h1, section, p, footer {
   margin: 1em;
}

.article, #articleheader, aside {
    margin: 0em 1em;
}

a {
    text-decoration: none;
    color: #63E4DD;
}

a:visited {
    color: #1C403E;
}

a:hover {
    text-decoration: underline;
}

h1, h2, h3, h4, h5, h6 {
    font-family: Georgia, 'Times New Roman', Times, serif;
    color: #4aaaa5;
}

h1 {
    font-size: 150%;
    font-weight: bold;
    letter-spacing: 1px;
}

#topcontainer {
    display: flex;
    justify-content: center;
    background-color: white;
}

header {
    background-color: #4aaaa5;
    width: 40%;
    float: left;
}

nav {
    background-color: white;
    min-width: 20%;
    float: right;
}

header h1 {
    color: white;
    margin: 0px;
}

header, nav {
    height: 95px;
    text-align: center;
    line-height: 95px;
    margin: 0px; 
    /* width: 100%; */
    float: left;
}

#topcontiner {
    max-width: 960px;
    display: flex;
    justify-content: center;
    background-color: white;
}

.container {
    width: 960px;
    margin: auto;
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;

}

nav a {
    padding-right: 0.75em;
    padding-left: 0.75em;
}

h1#myname {
    padding-right: 0.5em;
    padding-left: 0.5em;
}

.sidebyside {
    display: flex;
    align-items: flex-start;
}

#articlecontainer {
    width: 650px;
}

aside {
    width: 270px;
    height: 270px;
    /* margin: 10px; */
}
aside, #articlecontainer {
    padding: 0.3em;
    margin: 0.5em 0em;
    background-color: #ffffff;
    border: 1px solid #dddddd;
    overflow: auto;

}

#facephoto {
    float: left;
    border: solid black 1px;
    margin: 0em 1em 0em 0em;

}

footer {
    background-color: #666666;
    color: #cccccc;
    margin: 0px auto;
    padding: 1.5em;
    text-align: center;
}

footer>p {
    margin: 0px;
}

#facephoto {
    float: left;
    border: solid black 1px;
    margin: 0em 1em 0em 0em;
}

#bottomcontainer {
    position: fixed;
    width: 100%;
    bottom: 0;
    border-top: 5px solid #4aaaa5;
    padding: 0px;
}


input, textarea {
    width: 90%;
}

.portfolioimage {
    border: solid 1px black;
}

#portfoliocontainer {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.portfolioimagebox {
    margin: 1em;
    /* padding: 1em; */
}

.portfolioimagebox h2 {
    background-color: #4aaaa5;
    font-size: 120%;
    color: white;
    padding: .25em;
    text-align: center;
    position: relative;
    bottom: 25%;
    border: solid 1px black;
    line-height: 1.75em;
}

/* New Media Query stuff  */

@media screen and (max-width: 980px) {
    header {
        width: 40%;
        float: left;
    }
    nav {
        min-width: 20%;
        float: right;
    }

    #articlecontainer {
        width: 450px;
    }

    aside {
        width: 250px;
    }

    .container {
        width: 750px;
    }

}



@media screen and (max-width: 768px) {
    .article { 
        width: 100%;
    }
    .sidebyside {
        display: initial;
    }
    #articlecontainer, aside {
        width: 100%; max-width: 100%; float: none;
    }
    #bottomcontainer {
        position: initial;
    }

    .article {
        margin: auto;
    }
}

@media screen and (max-width: 640px) {
    #topcontainer {
        width: 100%;
        display: initial;
    }
    header {
        width: 100%;
        max-width: 100%;
        float: none;
    }
    nav {
        width: 100%;
        min-width: 100%;
        float: none;
        height: 75px;
        line-height: 65px;
    }
    nav a {
        padding-right: 5%;
        padding-left: 5%;
    }

    #facephoto {
        float: none;
        display: block;
        margin: auto;
        margin-bottom: 0.5em;
    }

    #facephoto::after {
        content: "";
        clear: both;
        display: table;
    }

    .container {
        width: 100%;
    }
    
    aside {
        margin: auto;
    }
    .portfolioimage, .portfolioimagebox h2 {
        margin-left: 0px;
        margin-right: 0px;
    } 

}
