.harlem-page .page-content {
  background-image: url('/assets/images/icons/HarlemBackground.png');
  background-size: 110% 100%;
  background-position: top center;
  background-repeat: no-repeat;
  min-height: 100vh;
}

.harlem-page .page-content,
.harlem-page .page-content * {
  color: #ffffff;
  text-align: left;
}

/* Container setup */
.portfolio-layout {
  display: flex;
  flex-wrap: wrap;
  gap: 16px; 
}

/* Base styles for the boxes */
.portfolio-box {
  background-color: transparent;
  padding: 20px;
  box-sizing: border-box; /* Crucial so padding doesn't alter the flex percentages */
  border-radius: 8px; /* Optional: softer corners */
}

/* Desktop Layout (Offset Rows) */
.portfolio-layout .box-1 {
  flex: 0 0 calc(40% - 8px);
}
.portfolio-layout .box-2 {
  flex: 0 0 calc(60% - 8px);
}
.portfolio-layout .box-3 {
  flex: 0 0 calc(60% - 8px);
}
.portfolio-layout .box-4 {
  flex: 0 0 calc(40% - 8px);
}

/* Mobile Layout (Stacked) */
@media (max-width: 768px) {
  .portfolio-layout .box-1,
  .portfolio-layout .box-2,
  .portfolio-layout .box-3,
  .portfolio-layout .box-4 {
    flex: 0 0 100%;
  }
}

/* Makes images scale down to fit inside their flex boxes */
.portfolio-box img {
  max-width: 100%;
  height: auto;
  display: block; /* Removes the tiny default gap below images */
}

.portfolio-page-title {
  text-align: left;
  margin-left: 2rem;
  font-size: 2rem;
  color: #ffffff;
}