#projects {
   display: flex;
   position: relative;
   flex-direction: row;
   flex-wrap: wrap;
   padding: var(--space-md) 0 var(--space-xs) 0;
   width: 100%;
   height: 100%;
}

.project {
   position: relative;
   flex: 0 1 100%;
   max-width: 100%;
}

.project .link {
   display: inline-flex;
   position: absolute;
   top: 0;
   left: 0;
   justify-content: flex-start;
   align-items: flex-end;
   z-index: 2;
   width: 100%;
   height: 100%;
   color: white;
}

.project .link > span {
   display: block;
   display: none;
   margin: var(--space-xs);
   border-radius: var(--space-sm);
   background: rgba(34, 34, 34, 0.75);
   padding: 0.25em var(--space-xs);
}

@media (min-width: 640px) {
   #projects {
      padding: var(--space-lg);
      padding-bottom: var(--space-xs);
   }
}

@media (min-width: 768px) {
   .project {
      flex: 0 1 50%;
      max-width: 50%;
   }
}

@media (min-width: 1280px) {
   .project {
      flex: 0 1 calc(100% / 3);
      max-width: calc(100% / 3);
   }
}
