.ProductGallery {
  position: -webkit-sticky;
  position: sticky;
  top: calc(var(--tg-header-height, 0px) * var(--use-sticky-header, 0) + var(--tg-other-sticky-elements-height, 0px));
}

.Modal--zoomModal {
  --tg-component-modal-background: none;
}
.Modal--zoomModal .Modal__Body {
  padding: 0;
}
.Modal--zoomModal .Modal__Content {
  border: none;
}
.Modal--zoomModal .Modal__Dialog {
  max-width: 100%;
  padding: 1rem;
}
@media screen and (min-width: 1008px) {
  .Modal--zoomModal .Modal__Dialog {
    margin: 2rem;
  }
}
.Modal--zoomModal .Modal__Dialog .ButtonClose {
  position: fixed;
  background-color: #fff;
  border-radius: 200px;
  opacity: 1;
  top: 0.5rem;
  right: 0.5rem;
}
@media screen and (max-width: 640px) {
  .Modal--zoomModal .Modal__Dialog .ProductGallery__Inner {
    max-height: 90vh;
  }
}

.ProductGallery--zoomModal .ProductGallery__Inner {
  overflow: auto;
}
.ProductGallery--zoomModal .ProductGallery__Inner .Product__MediaWrapper {
  border: none;
}
.ProductGallery--zoomModal .ProductGallery__Inner .Product__MediaWrapper:not(:first-child) {
  margin-top: 1rem;
}
@media screen and (max-width: 640px) {
  .ProductGallery--zoomModal .ProductGallery__Inner .Product__MediaWrapper {
    display: none;
  }
  .ProductGallery--zoomModal .ProductGallery__Inner .Product__MediaWrapper.Active {
    margin-top: 0;
    display: block;
    margin-bottom: 0;
  }
}

.ProductGallery__Inner {
  -webkit-margin-end: -1px;
          margin-inline-end: -1px;
  margin-bottom: -1px;
}
.ProductGallery__Inner .Product__MediaWrapper {
  -webkit-border-end: 1px solid var(--tg-sys-color-outline);
          border-inline-end: 1px solid var(--tg-sys-color-outline);
  border-bottom: 1px solid var(--tg-sys-color-outline);
}
.ProductGallery__Inner .Product__MediaWrapper .Product__Media {
  padding: 0;
}

.Product__ActionList {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: -1;
  visibility: visible;
  opacity: 0;
  transition: visibility 0.2s ease-in-out, opacity 0.2s ease-in-out;
}

.MediaModalOpener .Product__ActionList {
  width: auto;
}
@media screen and (min-width: 1008px) {
  .MediaModalOpener:hover .Product__ActionList, .MediaModalOpener:focus .Product__ActionList {
    opacity: 1;
    z-index: 1;
  }
}
@media screen and (max-width: 1007px) {
  .MediaModalOpener .Product__ActionList {
    opacity: 1;
    z-index: 1;
  }
}

.Product__ActionItem {
  display: block;
  position: relative;
}
.Product__ActionItem .Button {
  border-radius: 300px;
  width: 3rem;
  height: 3rem;
  border-color: var(--tg-sys-color-outline);
}