/* One photo grid and centered lightbox for rescue and Adoption details. */
[data-photo-gallery] { min-width: 0; }
[data-photo-gallery] .rescue-gallery-photo { min-width: 44px; min-height: 44px; cursor: pointer; }
[data-photo-gallery] .rescue-gallery-photo img,
.v3-experience [data-photo-gallery] .rescue-gallery-photo img.sample-demo-photo { object-fit: contain; transform: none; background: #f3f5f9; }
[data-photo-gallery] .rescue-gallery-photo:focus-visible { outline: 3px solid #b9470b; outline-offset: 3px; }
[data-photo-gallery] .rescue-lightbox-backdrop { z-index: 1300; background: #111b34aa; backdrop-filter: blur(6px); }
.v3-experience .rescue-lightbox.paw-gallery,
.rescue-lightbox.paw-gallery { --gallery-stage-height: min(62dvh,42rem); display: grid; grid-template-rows: auto minmax(0,1fr) auto; width: min(1100px,100%); max-height: calc(100dvh - 2rem); padding: 1rem; border: 1px solid #ffffff4d; border-radius: .75rem; background: #151d30; color: white; overflow: hidden; }
.paw-gallery-toolbar { display: flex; justify-content: flex-end; align-items: center; padding-bottom: .6rem; }
.paw-gallery button { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; width: 44px; height: 44px; padding: .5rem; border: 1px solid #d7ddea; border-radius: 50%; color: #202944; background: #fff; font: inherit; font-size: .8rem; font-weight: 750; cursor: pointer; touch-action: manipulation; }
.paw-gallery button:hover { background: #fff0e6; border-color: #b9470b; }
.paw-gallery button:disabled { opacity: .4; cursor: default; }
.paw-gallery button:focus-visible { outline: 3px solid #f59658; outline-offset: 2px; }
.paw-gallery button svg { width: 22px; height: 22px; flex: 0 0 22px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; pointer-events: none; }
.v3-experience .paw-gallery .paw-gallery-close, .paw-gallery .paw-gallery-close { position: static; width: 44px; height: 44px; flex: 0 0 44px; }
.v3-experience .paw-gallery-stage,
.paw-gallery-stage { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: var(--gallery-stage-height); min-height: 0; overflow: hidden; touch-action: pan-y pinch-zoom; }
.v3-experience .paw-gallery-stage > img,
.paw-gallery-stage > img { display: block; width: auto; height: auto; max-width: 100%; max-height: var(--gallery-stage-height); object-fit: contain; user-select: none; -webkit-user-select: none; }
.paw-gallery-message { position: absolute; padding: .75rem; max-width: 90%; border-radius: .6rem; background: #fff; color: #334675; text-align: center; font-size: .8rem; }
.paw-gallery-message button { width: auto; border-radius: .55rem; }
.paw-gallery .rescue-lightbox-control { top: calc(50% + 1rem); transform: translateY(-50%); }
.paw-gallery .rescue-lightbox-count { margin: .6rem 0 0; padding: 0; color: #fff; text-align: center; font-size: .85rem; }
@media (max-height: 500px) { .rescue-lightbox.paw-gallery { --gallery-stage-height: calc(100dvh - 10rem); } }
@media (max-width: 600px) {
    [data-photo-gallery] .rescue-lightbox-backdrop { padding: .5rem; }
    .v3-experience .rescue-lightbox.paw-gallery, .rescue-lightbox.paw-gallery { padding: .65rem; max-height: calc(100dvh - 1rem); }
}
