.spot-featured-photo { margin: 0 0 1rem; width: 100%; min-width: 0; }
.spot-featured-photo[hidden] { display: none; }
.spot-featured-photo img { display: block; width: 100%; height: auto; max-height: 300px; aspect-ratio: 16/9; object-fit: cover; border-radius: 12px; }
.spot-featured-photo .spot-photo-caption { display: block; margin-top: .35rem; font-size: .7rem; opacity: .65; }
.spot-featured-photo .spot-photo-caption[hidden] { display: none; }
.spot-featured-photo-compact { width: 88px; flex: 0 0 88px; margin: 0 .75rem 0 0; }
.spot-featured-photo-compact img { height: 66px; aspect-ratio: 4/3; border-radius: 8px; }
.spot-featured-photo-compact .spot-photo-caption { font-size: .6rem; }
