/* One restrained photographic treatment across place stories and previews.
   Original assets and playback stay untouched; preview-only crops are scoped below. */
main { --qc-photo-veil: rgba(221, 213, 201, .06); }

/* Figures already use a grid: row 1 holds the photo/video and its credit.
   Keep the veil out of the caption row. The hero uses this same colour
   beneath its existing readability gradient in each detail page. */
html body main.qc-place :is(.quiet-story, .opening, .after-opening-pair, .city-story, .grace-pair) figure::after {
  content: "";
  grid-area: 1 / 1;
  align-self: stretch;
  justify-self: stretch;
  min-width: 0;
  min-height: 0;
  z-index: 1;
  background: var(--qc-photo-veil);
  pointer-events: none;
}
html body main.qc-place > .hero::after { pointer-events: none; }

/* Preview wrappers contain only the media and its credit, never card copy.
   This also covers an inline video's poster and subsequent moving frames. */
html body main.qc-place .elsewhere__media::after,
html body main .places2-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: var(--qc-photo-veil);
  pointer-events: none;
}
html body main.qc-place .elsewhere__credit,
html body main .places2-card__credit { z-index: 2; }

/* St. Moritz previews: crop away the foreground rock, keeping the boat in
   the frame. The top-anchored zoom works in both wide and portrait cards.
   Do not apply this crop to the article hero that uses the same source. */
html body main :is(.elsewhere__media, .places2-card__media) > img[src$="StMoritz_Nimke_285.webp"] {
  object-position: 50% 50%;
  transform: scale(1.24);
  transform-origin: center top;
}

/* Small mobile previews need a tighter crop than the article hero. The boat
   stays centred while the pale foreground rock falls below the frame. */
@media (max-width: 980px), (hover: none) and (pointer: coarse) {
  html body main :is(.elsewhere__media, .places2-card__media) > img[src*="/st-moritz/web/st-moritz-285-"],
  html body main :is(.elsewhere__media, .places2-card__media) > img[src$="StMoritz_Nimke_285.webp"] {
    object-position: 48.5% 50% !important;
    transform: scale(1.92) !important;
    transform-origin: center center !important;
  }
}
