/* Keep the brighter cover artwork clear; shade only the area supporting text. */
.project-card .card-visual > img {
  opacity: 1;
}
.project-card .card-expanded .card-visual > img {
  animation-name: project-image-reveal-vivid;
}
.project-card .card-visual::after {
  background: linear-gradient(0deg, #101b28e8, #101b2899 20%, #101b2826 40%, transparent 58%);
}
.project-card .card-title > span {
  color: #edf6ff;
  text-shadow: 0 1px 5px #061322;
}
.project-card .card-title h3 {
  color: #fff;
  text-shadow: 0 2px 8px #07111fd9;
}
.project-card .card-top .small-pill {
  color: #fff;
  background: linear-gradient(130deg, #ffffff20, #ffffff06), #183047b8;
  border-color: #ffffff59;
  box-shadow: inset 0 1px 0 #ffffff30;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
.project-card .card-index {
  color: #fff;
  background: #1830478c;
  border-color: #ffffff69;
}
.project-photo::after {
  background: linear-gradient(transparent 72%, #0b1b2b99);
}
.project-photo .image-caption {
  color: #fff;
  text-shadow: 0 1px 5px #0b1b2b;
}
@keyframes project-image-reveal-vivid {
  from { opacity: 0; transform: scale(1.055); }
  to { opacity: 1; transform: scale(1); }
}
