 body {
   font-family: Arial, Helvetica, sans-serif;
   background-image: url(https://png.pngtree.com/thumb_back/fh260/back_pic/00/15/30/4656e81f6dc57c5.jpg);
   background-repeat: no-repeat;
   background-size: 1600px 1000px;
   width: 100vw;
   height: 100vh;
 }

 .logo {
   width: 150px;
   height: 100px;
   margin: 3% 10%;
 }

 header {
   display: grid;
   grid-template-columns: 40% 60%;
   width: 100%;
 }

 main {
   height: auto;
   width: 100%;
   display: grid;
   grid-template-columns: 30% 40% 30%;
 }

 nav > a {
   margin: 2% 1% 3%;
   height: 10%;
   width: 15%;
   color: white;
   font-family: Arial, Helvetica, sans-serif;
   font-size: 20px;
   border-radius: 25px;
   background: transparent;
   padding: 20px;
   text-align: center;
   border: 2px solid white;
 }

 .has-border {
   border-radius: 25px;
   border: 2px solid #0795C3;
   background: none;
   padding: 20px;
   color: blue;
 }

 nav {
   display: flex;
   justify-content: flex-end;
   width: 100%;
   padding-right: 2%;
 }

 #profile-pic {
   width: 300px;
   height: 300px;
   border-radius: 50%;
   margin: 15% auto;
   grid-column: 2/3;
 }

 #portfolio {
    color: blue;
  }

 h1 {
   color:blue;
   grid-column: 2/3;
   margin: 3% auto;
   border-bottom: 2px solid #1940A9;;
 }

 h2 {
   grid-column: 2/3;
   margin: 3% auto;
   font-style: italic;
 }

 .small-text {
   grid-column: 2/3;
   color: blue;
   font-size: 10px;
   margin: 3% auto;
 }

 button {
   grid-column: 2/3;
   margin: 3% auto;
   width: 70%;
   height: 15%;
   font-family: Arial, Helvetica, sans-serif;
   font-size: 20px;
   border-radius: 25px;
   background: transparent;
   padding: 20px;
   padding-bottom: 5%;
   text-align: center;
   color: white;
   letter-spacing: 16px;
   font-style: italic;
 }

 /* Small and up (Landscape Phones) */
@media (min-width: 274px) {
  nav > a {
    margin: 2% 1% 3%;
    height: 6%;
    width: 15%;
    color: white;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 10px;
    border-radius: 25px;
    background: transparent;
    padding: 10px;
    text-align: center;
    border: 2px solid white;
  }

  button {
    grid-column: 2/3;
    margin: 3% auto;
    width: 70%;
    height: 100%;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 20px;
    border-radius: 25px;
    background: transparent;
    padding: 8px;
    padding-bottom: 5%;
    text-align: center;
    color: white;
    letter-spacing: 2px;
    font-style: italic;
  }
}

/* Medium and up (Tablets) */
@media (min-width: 768px) {
  nav > a {
    margin: 2% 1% 3%;
    height: 8%;
    width: 15%;
    color: white;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 15px;
    border-radius: 25px;
    background: transparent;
    padding: 15px;
    text-align: center;
    border: 2px solid white;
  }
  button {
    grid-column: 2/3;
    margin: 3% auto;
    width: 70%;
    height: 50%;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 20px;
    border-radius: 25px;
    background: transparent;
    padding: 15px;
    padding-bottom: 5%;
    text-align: center;
    color: white;
    letter-spacing: 16px;
    font-style: italic;
  }
}