body {
    background: white;
    color: black;
    font-family: 'Quattrocento', serif;
    font-weight: normal;
    margin: 0px;
}

.a11y {
    border: none;
    display: block;
    height: 0;
    overflow: hidden;
    position: absolute;
    width: 0
}

div {
   /*border: red 1px solid;*/
}

a {
    text-decoration: none;
    color: #414476;
}

a:hover {
    text-decoration: none;
    color: #7aa325;
}

.maxwidth {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

#intro {
    width: 100%;
    background-color: black;
    height: 700px;
}

#intro-content {
    vertical-align: middle;
    margin-top: 80px;
    z-index: 2;
    position: absolute;
    clear: right;
}

#intro-text p {
    font-size: 2.5em;
    line-height: 1.9em;
}

#intro .boxed-txt {
    z-index: 2;
    background-color: white;
    color: black;
    padding: 5px;
    padding-left: 20px;
    padding-right: 20px;
    border-radius: 5px;
}

.intro-hi {
    font-size: 2em;
}

.hi-period {
    color: #543966;
}

.intro-comma {
    display: none;
}

#img-hero {
    z-index: 1;
    position: absolute;
    right: 0;
    margin-top: 40px;
}

.boxed-txt {
    z-index: 2;
    background-color: black;
    color: white;
    padding: 5px;
    padding-left: 10px;
    padding-right: 5px;
}

.nowrapper {
    white-space: nowrap;
}

.elevator {
    margin-left: 0px;;
}

#about p {
    font-size: 1.5em;
    line-height: 1.5em;
    margin-left: 15px;
    margin-right: 15px;
}

#portfolio h1, #contact-area h1, #about h1 {
    margin-top: 50px;
    font-weight: bold;
    font-size: 4em;
    text-align: center;
    margin-bottom: 25px;
    font-family: 'Raleway', sans-serif;
}

#portfolio h1{
    margin-bottom: 100px;
}

.portfolio-content {
    overflow: hidden;
    margin-bottom: 100px;
}

.portfolio-desc {
    float: left;
    width: 300px;
    padding-left: 30px;
    padding-right: 30px;
}

.portfolio-desc .title {
    font-weight: bold;
    font-size: 2em;
    margin-bottom: 10px;
    margin-top: 0px;
}

.portfolio-desc p {
    font-family: 'Raleway', sans-serif;
    margin-left: 5px;
    padding-right: 10px;
}

.portfolio-desc .link-list {
    font-family: 'Raleway', sans-serif;
}

.portfolio-image {
    float: left;
    width: 500px;
}

.portfolio-image img {
    width: 99%;
    margin-left: 5px;
    margin-right: 5px;
}

.portfolio-img-link img:last-child {
    display:none;
    -webkit-transition: display 2s; /* Safari */
    transition: display 2s;
}

.portfolio-img-link img:first-child {
    -webkit-transition: display 2s; /* Safari */
    transition: display 2s;
}

.portfolio-img-link:hover img:first-child {
    display:none;
    -webkit-transition: display 2s; /* Safari */
    transition: display 2s;
}

.portfolio-img-link:hover img:last-child {
    display:inline-block;
    -webkit-transition: display 2s; /* Safari */
    transition: display 2s;
}

.portfolio-separator {
    display: none;
}

#writings-area p {
    font-family: 'Raleway', sans-serif;
    margin-left: 5px;
    padding-right: 10px;
}

#writings-area h2 a {
    text-decoration: none;
    color: #414476;
}

.link-list li {
    list-style: none;
    margin-bottom: 10px;
    margin-left: -15px;
}

.link-list a {
    padding-left: 25px;
}

.link_github {
    background: transparent url('img/icon_github.svg') no-repeat center left;
}

.link_demo {
    background: transparent url('img/icon_pointer.svg') no-repeat center left;
}

.link_website {
    background: transparent url('img/icon_link.svg') no-repeat center left;
}

#contact-area {
    margin-top: 80px;
    margin-bottom: 80px;
}

#contact-area h2 {
    font-weight: bold;
    font-size: 2em;
}

#contact-list {
    width: 60%;
}

#contact-list dl dt {
    font-family: 'Raleway', sans-serif;
    color: #272727; 
    margin-bottom: 5px;   
}

#contact-list dl dd {
    font-family: 'Raleway', sans-serif;
    margin-left: 5px;
    margin-bottom: 20px;
}

#contact-list img {
    vertical-align: middle;
    margin-right: 8px;
}
.page-footer {
    background-color: black;
    color: white;
    padding: 20px;
}

/* ------------------------
    ------  TABLET -------
*/
@media (max-width: 1000px) {
    .nowrapper {
        white-space: inherit;
    }
    #intro {
        height: inherit;
        background-color: black;
        margin-top: -40px;
    }
    
    #intro-content {
        float: left;
        margin-left: 10px;
        margin-right: 10px;
        vertical-align: middle;
        margin-top: 0px;
        position: relative;
    }

    #intro-text p {
        font-size: 1.8em;
        line-height: 2em;
        margin-right: 10px;
    }
    
    #intro .boxed-txt {
        z-index: 2;
    }

    .elevator {
        margin-left: 0px;
    }
    
    .tagline {
        margin-top: 20px;
    }
    
    #img-hero {
        position: relative;
    }    

    #img-hero img {
        width: 80%;
    }
    
    #about {
        margin-left: 15px;
        margin-right: 15px;
    }
    
    #writings-area {
        margin-left: 30px;
        margin-right: 30px;
    }
    
    /* Portfolio overrides - specifically adds the separator and some spacing */
    .portfolio-image {
        float: initial;
        width: 80%;
        margin-left: auto;
        margin-right: auto;
        margin-top: 15px;
    }
    
    .portfolio-desc {
        float: initial;
        width: 55%;
        margin-top: 25px;
        padding-left: 30px;
        padding-right: 30px;
        margin-left: auto;
        margin-right: auto;
    }

    .portfolio-desc .title {
        font-weight: bold;
        font-size: 2em;
        margin-bottom: 10px;
    }

    .portfolio-separator {
        display: inherit;
        border: 0;
        height: 1px;
        background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0));
    }
}

@media (min-width: 400px) and (max-width: 700px) {
    #intro-text p {
        font-size: 1.3em;
        line-height: 1.5em;
    }
}
/* ------------------------
    ------  PHONE -------
*/
@media (max-width: 500px) {
    .nowrapper {
        white-space: inherit;
    }
    
    #intro-content {
        margin-left: 10px;
        margin-right: 10px;
        vertical-align: middle;
        margin-top: 40px;
    }
    
    #intro-text p {
        font-size: 1.6em;
        line-height: 1.6em;
        margin-right: 10px;
    }
    
    #intro .boxed-txt {
        z-index: 2;
        background-color: white;
        color: black;
        padding: 5px;
        border-radius: 0px;
    }

    #intro-hi .boxed-txt {
        padding: 5px;
        padding-left: 20px;
        padding-right: 20px;
        border-radius: 30px;
    }
    
    /* portfolio overrides */
    .portfolio-image {
        width: 95%;
    }
    
    .portfolio-desc {
        width: 90%;
    }

    .portfolio-separator {
        display: inherit;
        border: 0;
        height: 1px;
        background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0));
    }
    
    #contact-list {
        width: 90%;
    }

}

