@font-face {
    font-family: Sohne Leicht;
    src: url(soehne-leicht.woff2);
}

body {
  background-color: #1E1E1E;
  color: #FBFBFB;
  margin: 0px;
  padding: 40px;
  width: 100vw;
  height: 100vh;
	font-family: Sohne Leicht;
	font-size: 28px;
	line-height: 1.25;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  display: grid;
  top: 0px;
  left: 0px;
}

a {
  text-decoration: none;
  color: #FBFBFB;
  border-bottom: 1px solid hsla(0, 0%, 98%, 0.5);
  transition: border-bottom 0.5s;
}

a:hover {
  border-bottom: 1px solid #FBFBFB;
}

.header {
  color:hsla(0, 0%, 98%, 0.5);
}

.about {
 grid-column: 1 / span 2;
 grid-row: 1;
}

.projects {
 grid-column: 1;
 grid-row: 2;
 align-self: end;
}

.contact {
 grid-column: 2;
 grid-row: 2;
 align-self: end;
 margin-left: auto;
}

.item {
  padding-left: 16px;
}

@media screen and (min-width: 400px) and (max-width: 700px) {
 
 body {
	font-size: 24px;
  grid-template-columns: 1fr;
  grid-template-rows: 70% 15% 15%;
  padding: 24px;
}

.contact {
    grid-column: 1;
    grid-row: 3;
    margin-left: 0px;
    align-self: end;
  }

  .item {
  padding-right: 16px;
  padding-left: 0px;
  }
}

@media screen and (max-width: 500px) {
 
 body {
	font-size: 20px;
  grid-template-columns: 1fr;
  grid-template-rows: 70% 15% 15%;
  padding: 24px;
}

.contact {
    grid-column: 1;
    grid-row: 3;
    margin-left: 0px;
    align-self: end;
  }

  .item {
  padding-right: 16px;
  padding-left: 0px;
  }
}