* {
  box-sizing: border-box; }

body {
  font-family: 'Raleway', sans-serif;
  font-weight: 300;
  color: #80774c; }

h1,
h2,
h3,
h4 {
  font-family: 'Julius Sans One', sans-serif;
  margin: 0; }

img {
  max-width: 100%; }

p { 
  margin: 0; }

a.github-link {
  font-weight: 400;
  color: #008a45;
  text-decoration: none; }

a.github-link:hover {
  background-color: #efebdc; }

.header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  border-bottom: 4px solid #529671;
  margin-bottom: 20px; 
  padding: 20px; }

.logo-image {
  width: 192px;
  height: 120px;
  border-radius: 0%; }

.name-title {
  text-transform: uppercase; }

.name {
  margin: 0;
  line-height: 1.4; }

.title {
  line-height: 1.2; }

.top {
  margin-bottom: 30px; }

.projects-container {
  margin-bottom: 10px; }

.projects-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column wrap;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap; }

.projects-title {
  padding-bottom: 10px; }

.project-card {
  border: 1px solid #c0c0c0;
  box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.12);
  max-width: 380px;
  min-height: 360px;
  text-align: center;
  margin: 0 auto; }

.project-name {
  font-size: 22px;
  padding: 10px 0; }

.project-img {
  max-width: 100%;
  margin: 0;
  border: 5px solid #529671  }

.project-description {
  font-size: 17px;
  padding: 0 10px;
  line-height: 1.4; }

.project-link {
  font-size: 17px;
  padding: 20px 0; }

.footer {
  border-top: 1px solid #bbb;
  padding: 6px 0 20px;
  text-align: center; }

/**************************************************
 * Viewport - 1 Column
 **************************************************/
@media screen and (max-width: 599px) {
  .header {
    text-align: center; }
  .logo {
    padding-bottom: 10px; }
  .name {
    font-size: 38px; }
  .title {
    font-size: 18px; }
  .top {
    margin-bottom: 20px; }
  .projects-container {
    padding: 0 16px; }
  .project {
    padding-bottom: 10px; }
  .projects-title {
    font-size: 22px; }
  .project-card {
    min-height: 200px; }
  .project-link {
    font-size: 17px; } }

@media screen and (min-width: 480px) and (max-width: 599px) {
  .project {
    padding-bottom: 16px; }
  .projects-title {
    font-size: 26px; } }

/**************************************************
 * Viewport 600px - 2 Columns
 **************************************************/
@media screen and (min-width: 600px) {
  .header {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 10px 20px; }
  .name-title {
    text-align: right; }
  .name {
    font-size: 40px; }
  .title {
    font-size: 18px; }
  .projects-container {
    padding: 0 20px; }
  .projects-list {
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .projects-title {
    font-size: 28px; }
  .project {
    width: -webkit-calc(50%);
    width: calc(50%); } }

@media screen and (min-width: 600px) and (max-width: 739px) {
  .project {
    padding-bottom: 10px; }
  .project:nth-child(odd) {
    padding-right: 5px; }
  .project:nth-child(even) {
    padding-left: 5px; }
  .project-card {
    min-height: 340px; } }

@media screen and (min-width: 740px) and (max-width: 869px) {
  .project {
    padding-bottom: 16px; }
  .project:nth-child(odd) {
    padding-right: 8px; }
  .project:nth-child(even) {
    padding-left: 8px; }
  .project-card {
    min-height: 350px; }
  .project-description,
  .project-link {
    font-size: 18px; } }

/**************************************************
 * Viewport 870px - 3 Columns
 **************************************************/
@media screen and (min-width: 870px) {
  .name {
    font-size: 44px; }
  .project {
    width: -webkit-calc(33.3333% - 10px);
    width: calc(33.3333% - 10px);
    padding-bottom: 16px; }
  .projects-title {
    font-size: 32px; } }

/**************************************************
 * Viewport 1100px - 3 Columns and Fixed width
 **************************************************/
@media screen and (min-width: 1100px) {
  .container {
    width: 1100px;
    margin: 0 auto; }
  .header {
    padding: 20px; }
  .name {
    font-size: 50px; }
  .title {
    font-size: 20px; }
  .projects-container {
    width: 1100px;
    padding-bottom: 10px; }
  .project {
    width: -webkit-calc(33.3333% - 16px);
    width: calc(33.3333% - 16px); }
  .projects-title {
    font-size: 36px; }
  .project-card {
    min-height: 370px; }
  .project-name {
    font-size: 24px; }
  .project-description,
  .project-link {
    font-size: 18px; } }