.project-index {
  padding-top: 6.5rem;
}

.project-grid {
  grid-column: 1 / 5;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: var(--grid-gap);
  row-gap: calc(var(--grid-gap) + 1.15em);
  align-items: start;
}

.project-card {
  display: block;
  margin-bottom: 0.6em;
}

.project-card:hover,
.project-card:focus-visible {
  filter: none;
}

.project-title {
  box-sizing: content-box;
  margin: 0 0 0.45rem;
  font-family: "__jpba_text", Arial, sans-serif;
  font-size: inherit;
  line-height: 1.15;
  font-weight: 400;
}

.project-card img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  background: #f2f2f2;
  cursor: none;
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
}

.project-credits {
  margin-top: 0.15rem;
  filter: none;
  white-space: pre-line;
}

@media (max-width: 900px) {
  .project-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 620px) {
  .project-index {
    padding-top: 10rem;
  }

  .project-grid {
    grid-template-columns: 1fr;
  }
}

/* 2026-05-06 one-column project index: content starts one line below site title */
@media (max-width: 620px) {
  .project-index {
    padding-top: calc(var(--page-pad) + 3.45em);
  }
}

.project-card video {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  background: #f2f2f2;
  cursor: none;
}


/* 2026-06 Anpassung: Projektübersicht ohne Links auf Titel/Fotos. */
.project-card {
  cursor: default;
}

.project-card img,
.project-card video {
  pointer-events: none;
}

/* 2026-06 mobile/tablet: no custom cursor. */
@media (max-width: 1020px), (hover: none), (pointer: coarse) {
  .cursor-circle {
    display: none !important;
  }

  .home-slideshow,
  .project-card img,
  .project-card video,
  .detail-slideshow {
    cursor: auto !important;
  }
}
