/* ===== WORK / PORTFOLIO PAGE ===== */
.portfolio {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
  gap: var(--space-xl);
}
.case {
  display: flex; flex-direction: column; gap: var(--space-md);
}
/* Whole card is a link to the case study */
.case-link { color: inherit; }
.case__media {
  width: 100%; aspect-ratio: 1760 / 957; border-radius: var(--radius-lg); overflow: hidden;
  border: 1px solid var(--border-light);
}
.case__media img {
  width: 100%; height: 100%; object-fit: cover; object-position: top center;
  display: block; transition: transform var(--dur-base) var(--ease);
}
.case-link:hover .case__media img { transform: scale(1.03); }
.case__more { margin-top: var(--space-2xs); }
.case-link:hover .case__more .link { color: var(--accent); border-bottom-color: var(--accent); }
.case__head {
  display: flex; justify-content: space-between; align-items: flex-start;
  gap: var(--space-sm); flex-wrap: wrap;
}
.case__tags { display: flex; gap: var(--space-xs); flex-wrap: wrap; }
.case__result {
  display: flex; gap: var(--space-lg); margin-top: var(--space-2xs);
}
.case__stat { display: flex; flex-direction: column; }
.case__stat-num {
  font-family: var(--font-display); font-weight: 800;
  font-size: var(--fs-700); color: var(--accent); line-height: 1;
}

@media (max-width: 47.9375rem) {
  .portfolio { grid-template-columns: 1fr; gap: var(--space-2xl); }
}
