/* Use the supplied HGA PNG unchanged; the mark follows every photo container. */
:is(.property-card-image, .detail-gallery-item, .gallery-photo-frame,
    .category-card, .visual-frame, .about-image, .agent-photo,
    .blog-feature-image, .article-cover, .photo-tour-stage,
    .tour .stage, .photo-tour-scenes button, .tour .nav button,
    .scene-photo) { position: relative; }

:where(.property-card-image, .detail-gallery-item, .gallery-photo-frame,
    .hero-media, .category-card, .visual-frame, .about-image, .agent-photo,
    .blog-feature-image, .article-cover, .photo-tour-stage,
    .tour .stage, .photo-tour-scenes button, .tour .nav button,
    .scene-photo):where(:has(> img:not([src*="hga-logo"]), > video))::before {
  content: "";
  position: absolute;
  z-index: 3;
  right: 12px;
  bottom: 12px;
  width: clamp(65px, 23%, 112px);
  aspect-ratio: 599 / 603;
  background: url("assets/hga-watermark-original.png") center / contain no-repeat;
  filter: drop-shadow(0 1px 3px rgba(0, 20, 46, .85));
  opacity: .88;
  pointer-events: none;
}

:is(.category-card, .visual-frame, .about-image, .photo-tour-stage, .tour .stage)::before {
  top: 16px;
  bottom: auto;
}
.hero-media::before { bottom: 100px; right: 5vw; width: 130px; }
.detail-gallery-item::before { right: 14px; bottom: 18px; }
.detail-gallery-all { z-index: 4; }
.detail-gallery:has(.detail-gallery-all) .detail-gallery-item:nth-child(3)::before { bottom: 72px; }
.gallery-photo-frame { display: inline-flex; align-items: center; justify-content: center; width: fit-content; max-width: 100%; min-width: 0; }
.property-gallery-viewer figure { align-content: center; }
.property-gallery-viewer .gallery-photo-frame img { display: block; width: auto; height: auto; max-width: 100%; max-height: calc(100dvh - 150px); }
.gallery-photo-frame::before { width: clamp(72px, 17%, 140px); right: 18px; bottom: 18px; }
:is(.photo-tour-scenes button, .tour .nav button)::before { top: 9px; bottom: auto; right: 9px; width: 36px; }
.scene-photo { width: 150px; height: 100px; overflow: hidden; }
.scene-photo img { width: 100%; height: 100%; object-fit: cover; }
.scene-photo::before { width: 40px; right: 4px; bottom: 4px; }
/* Villa Thea is temporarily exempt at the user's explicit request. */
a[href*="uid=J16OKB8OQS"] .property-card-image::before,
[data-property-uid="J16OKB8OQS"] :is(.detail-gallery-item, .gallery-photo-frame)::before {
  content: none;
  background-image: none;
}
@media (max-width: 900px) { .scene-photo { width: 120px; } }
@media (max-width: 620px) {
  .hero-media::before { width: 90px; bottom: 90px; right: 18px; }
  .detail-gallery-item::before { width: 58px; right: 8px; bottom: 8px; }
  .gallery-photo-frame::before { width: 65px; right: 8px; bottom: 8px; }
  .scene-photo { grid-column: 2; width: 100%; height: 170px; }
}
