.productHero .animalHeroGallery {
  align-self: center;
  width: calc(100% - 32px);
  max-width: 700px;
  margin: 24px auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
}
.animalHeroGallery .mainShot img {
  display: block;
  width: 100%;
  height: clamp(230px, 32vw, 460px);
  object-fit: contain;
  background: #181917;
}
.animalHeroGallery .galleryThumbs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.animalHeroGallery .galleryThumbs img { display:block; width:100%; height:clamp(48px,7vw,84px); object-fit:contain; }
.animalHeroGallery .galleryThumbs span { display:block; padding:5px 2px; color:#f1e9d6; font-size:12px; }
.animalHeroGallery button[aria-pressed="true"], .animalHeroGallery button:focus-visible { outline:2px solid #e4ba66; outline-offset:1px; }
@media(max-width:920px) {
  .productHero:has(.animalHeroGallery) { display:flex; flex-direction:column; }
  .productHero .animalHeroGallery { order:-1; margin:14px auto 0; }
}

.animalHeroGallery .galleryColors { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.animalHeroGallery .galleryColors span { grid-column:1/-1; margin-bottom:4px; }
.animalHeroGallery .galleryColors button { display:flex; align-items:center; justify-content:center; gap:7px; min-height:46px; padding:8px 4px; }
.galleryColors [data-color]::before { content:''; width:16px; height:16px; border-radius:50%; border:1px solid #9d958a; background:var(--swatch); }
.galleryColors [data-color="Pink"] { --swatch:#ed9f88; }
.galleryColors [data-color="Grey"] { --swatch:#8b8c87; }
.galleryColors [data-color="White"] { --swatch:#fffaf1; }
