/*--------------------------------------------------------------
# JPV Portfolio — series & proportional equal-height rows
--------------------------------------------------------------*/
.portfolio-series {
  margin-bottom: 2rem;
}

.portfolio-series-title {
  margin: 2.5rem 0 2rem;
  text-align: center;
}

.portfolio-series:first-of-type .portfolio-series-title {
  margin-top: 0;
}

.portfolio-series-title .title-a {
  font-size: 1.4rem;
  font-weight: 600;
  text-transform: uppercase;
}

.portfolio-col {
  display: flex;
  margin-bottom: 3rem;
}

.portfolio-col > .portfolio-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  margin-bottom: 0;
}

.portfolio-img {
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--portfolio-row-img-height, auto);
  background-color: #f8f9fa;
}

.portfolio-img img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}

.portfolio-card .work-content {
  flex-shrink: 0;
  padding: 1rem 3% 1rem 4%;
}

/* Mobile: single column — natural image height, no letterbox bands */
@media (max-width: 767.98px) {
  .portfolio-row {
    --portfolio-row-img-height: auto;
  }

  .portfolio-img {
    display: block;
    height: auto;
    background-color: transparent;
  }

  .portfolio-img img {
    display: block;
    width: 100%;
    height: auto;
    max-height: none;
  }
}
