.project-row {
  margin-bottom: 80px;
  background: #ffffff;
  padding: 30px;
  box-shadow: 0 15px 45px rgba(15, 45, 80, 0.08);
}

.project-visual {
  overflow: hidden;
  box-shadow: 0 15px 40px rgba(0,0,0,0.08);
}

.project-visual img {
  width: 100%;
  object-fit: cover;
  transition: 0.3s;
}

.thumbs {
  display: flex;
  gap: 10px;
  margin-top: 15px;
}

.thumbs img {
  width: 90px;
  height: 60px;
  object-fit: cover;
  border-radius: 10px;
  cursor: pointer;
  opacity: 0.5;
  border: 2px solid transparent;
  transition: 0.2s;
}

.thumbs img.active,
.thumbs img:hover {
  opacity: 1;
  border-color: #0d6efd;
  transform: translateY(-2px);
}

.project-label {
  display: inline-block;
  padding: 6px 12px;
  border-radius: 999px;
  background: #e8f1ff;
  color: #0d6efd;
  font-weight: 700;
  margin-bottom: 10px;
}

.project-label.blue {
  background: #0d6efd;
  color: white;
}

.project-label.dark {
  background: #102033;
  color: white;
}

.project-row h2 {
  font-weight: 800;
  margin-bottom: 10px;
}

.project-row p {
  color: #6c757d;
  margin-bottom: 20px;
}

.features {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.features span {
  background: #f1f5f9;
  padding: 8px 12px;
  border-radius: 10px;
  font-size: 0.85rem;
  font-weight: 600;
}

@media (max-width: 768px) {
  .project-visual img {
    height: 220px;
  }
}