body {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

header {
    border-bottom: solid 4px;
    border-bottom-color: #37A777;
}

h1, h2 {
    color: #444545;
    font-weight: bold;
    font-style: italic;
}

h1 {
    font-size: 2em;
    text-transform: uppercase;
}

h2 {
    font-size: 1.3em;
    margin-top: 0;
}

.headerfirst h1 {
    margin: 15px 15px 0 15px;
}

.headersecond h1 {
    margin: 0 0 15px 15px;
}

.contact-icons {
    margin: 0 15px 15px 0;
    float: right;
}

.contact-icons a {
    text-decoration: none;
    color: #37A777;
    margin: 5px;
}

.portfolio {
    background: linear-gradient(115deg, transparent 50%, rgba(255, 255, 255, .8) 30%) 0 0,
    linear-gradient(245deg, transparent 50%, rgba(255, 255, 255, .8) 30%) 0 0,
    linear-gradient(115deg, transparent 50%, rgba(255, 255, 255, .8) 30%) 7px -15px,
    linear-gradient(245deg, transparent 50%, rgba(255, 255, 255, .8) 30%) 7px -15px,
    #37A777;
    background-size: 15px 30px
}

.portfolio p {
    color: #555;
}

.portfolio a {
    text-decoration: none;
    color: #444545;
    box-shadow: inset 0 -2px 0 0 #37A777;
}

.portfolio a:hover {
    transition: background-color .3s;
    background-color: #37A777;
}

.tags {
    font-family: "Lucida Console", Monaco, monospace;
    color: #444;
}

.align-left {
    float: left;
}

.align-right {
    float: right;
}

/*** Masonry Grid System ***/
.grid {
    width: 100%;
    padding: 20px 0 20px 0;
}

.grid-item {
    float: left;
    background-color: white;
    border: 5px solid #fff;
    box-shadow: 0 0 15px 0 #444545;
}

@media (max-width: 768px) {
    /* 1 grid column */
    .grid-item {
        width: 98%;
        margin: 1%;
    }
}

@media (min-width: 768px) and (max-width: 1100px) {
    /* 2 grid column */
    .grid-item {
        width: 48%;
        margin: 1%;
    }
}

@media (min-width: 1101px) {
    /* 3 column */
    .grid-item {
        width: 31%;
        margin: 1%;
    }
}

.grid-item-image {
    display: block;
    width: 100%;
    height: auto;
}

.grid-item-text {
    padding: 20px;
}
