.field--name-field-media-author,
.field--name-field-media-description {
  font-size: 0.75rem;
  line-height: 1.5;
}

.card.node .media--type-image {
  position: relative;
}
.card.node .field--name-field-media-author {
  position: absolute;
  bottom: 0px;
  background-color: #adadad;
  padding-inline: 2px;
}


.field--name-field-media-image:has(+ .field--name-field-media-description) {
  margin-block-end: 0;
}
.field--name-field-media-image:has(+ .field--name-field-media-author) {
    margin-block-end: 0;
}

.photoswipe-gallery {
  --grid-gap: var(--sp);
  & .field__items {
    grid-row-gap: var(--grid-gap);
  }

  & .field__item {
    grid-column: span 3;
    margin-block-end: 0;
  }
}

