/* Small independent replacements for Shopify's JavaScript behavior. */
.usv-dropdown__trigger { line-height: normal; }
.usv-dropdown__menu, .usv-btn-dropdown__menu { visibility: hidden; }
.usv-dropdown.is-open .usv-dropdown__menu,
.usv-btn-dropdown.is-open .usv-btn-dropdown__menu {
  visibility: visible; opacity: 1; pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}
.usv-dropdown { z-index: 10; }
slideshow-component, slideshow-container { display: block; }
slideshow-container { position: relative; }
slideshow-slides { scroll-behavior: smooth; }
slideshow-arrows .slideshow-control[disabled] { opacity: 0 !important; pointer-events: none; }
slideshow-slides img { cursor: zoom-in; }
.usv-lightbox {
  position: fixed; inset: 0; margin: 0; padding: 24px 64px;
  width: 100vw; height: 100dvh; max-width: 100vw; max-height: 100dvh;
  border: 0; background: rgb(0 0 0 / 92%); color: white; overflow: hidden;
  z-index: 9999;
}
.usv-lightbox[open] { display: flex; align-items: center; justify-content: center; }
.usv-lightbox::backdrop { background: transparent; }
.usv-lightbox .usv-lightbox__image {
  width: auto; height: auto; max-width: 100%; max-height: calc(100dvh - 70px);
  object-fit: contain; border-radius: 10px;
}
.usv-lightbox button {
  position: absolute; border: 0; background: transparent; color: white;
  padding: 8px; cursor: pointer; width: 48px; height: 48px;
  display: grid; place-content: center; font: 44px/1 Arial, sans-serif;
}
.usv-lightbox__close { top: 16px; right: 18px; }
.usv-lightbox__previous { left: 8px; top: calc(50% - 24px); }
.usv-lightbox__next { right: 8px; top: calc(50% - 24px); }
.usv-lightbox__counter { position: absolute; bottom: 10px; left: 0; right: 0; text-align: center; font-size: 13px; }
body.lightbox-open { overflow: hidden; }
:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
@media (max-width: 640px) {
  .usv-lightbox { padding: 58px 12px; }
  .usv-lightbox .usv-lightbox__image { max-height: calc(100dvh - 120px); }
  .usv-lightbox__previous, .usv-lightbox__next { background: rgb(0 0 0 / 35%) !important; border-radius: 50%; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
}
