* {
  margin: 0px;
}

.body-container {
  display: flex;
  flex-direction: column;
  padding: 0 16% 6rem 16%;
  gap: 2rem;
}

hr {
  opacity: 20%;
  border: none; /* Remove the default border */
  border-top: 2px solid rgb(97, 97, 97); /* Set thickness, style, and color */
}

h1 {
  font-size: 3rem;
  color: #4c8863;
  margin: 5rem 0 .5rem 0;
}

.project-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1.5rem;
}

.horizontal-project-container {
  display: flex;
  gap: 2rem;
  border-radius: .5rem;
}

.horizontal-project-container img {
  border-radius: 2%;
  width: 31.5%;
}

@media (max-width:550px) {
  .horizontal-project-container {
    flex-direction: column;
  }

  .horizontal-project-container img {
    border-radius: 2%;
    width: 100%;
  }
}

.horizontal-project-container p {
  color: rgb(32, 32, 32);
}

.description-container {
  display: flex;
  flex-direction: column;
  gap: .3rem;
}

.vertical-project-container {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  padding-bottom: .5rem;
  border-radius: .5rem;
}

.vertical-project-container img,
.vertical-project-container video {
  border-radius: 5px;
}

.vertical-project-container h2 {
  font-size: 1.2rem;
}

/* may remove */
.square-image-container {
  width: auto;
  height: auto;
  aspect-ratio: 1 / 1;
}

.square-image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: .5rem;
}

/* ----- may remove */

.project-metadata {
  font-size: .8rem;
  color: rgb(143, 144, 150);
}