.inksub-gallery{position:relative;width:100%;box-sizing:border-box;-webkit-tap-highlight-color:transparent}.inksub-gallery *{box-sizing:border-box}.inksub-gallery button{-webkit-appearance:none;appearance:none;font:inherit}.inksub-gallery-shell{display:flex;align-items:center;gap:8px}.inksub-gallery-viewport{overflow:hidden;flex:1;padding:10px 2px 18px;touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}.inksub-gallery-track{display:flex;align-items:center;gap:var(--inksub-gap);transition:transform .45s cubic-bezier(.22,.61,.36,1);will-change:transform;transform:translate3d(0,0,0)}.inksub-gallery-slide{flex:0 0 calc((100% - (var(--inksub-desktop) - 1)*var(--inksub-gap))/var(--inksub-desktop));display:flex;align-items:center;justify-content:center;border:0!important;outline:0!important;padding:0!important;margin:0;background:transparent!important;box-shadow:none!important;cursor:pointer;-webkit-tap-highlight-color:transparent}.inksub-gallery-slide:focus,.inksub-gallery-slide:active{border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important}.inksub-gallery-slide:focus-visible{opacity:.86}.inksub-gallery-slide img{display:block;width:100%;height:auto;object-fit:contain;border-radius:var(--inksub-radius);box-shadow:var(--inksub-shadow);transition:opacity .18s ease,transform .18s ease}.inksub-gallery-slide:hover img{opacity:.96}.inksub-gallery-size-small .inksub-gallery-slide img{max-width:220px;max-height:170px}.inksub-gallery-size-medium .inksub-gallery-slide img{max-width:360px;max-height:280px}.inksub-gallery-size-large .inksub-gallery-slide img{max-width:620px;max-height:460px}.inksub-gallery-size-full .inksub-gallery-slide img{max-width:100%;max-height:none}.inksub-gallery-arrow,.inksub-lightbox-nav{display:grid;place-items:center;border:0!important;outline:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0;color:#50565d;cursor:pointer;line-height:1;-webkit-tap-highlight-color:transparent;transition:color .18s ease,opacity .18s ease,transform .18s ease}.inksub-gallery-arrow{width:30px;height:48px;flex:0 0 30px}.inksub-gallery-arrow svg{display:block;width:22px;height:22px}.inksub-gallery-arrow:hover:not(:disabled){color:#111;transform:scale(1.05)}.inksub-gallery-arrow:focus,.inksub-gallery-arrow:active,.inksub-lightbox-nav:focus,.inksub-lightbox-nav:active{border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important}.inksub-gallery-arrow:focus-visible,.inksub-lightbox-nav:focus-visible{opacity:.62}.inksub-gallery-arrow:disabled{opacity:.18;cursor:default;transform:none}.inksub-gallery-dots{display:flex;justify-content:center;gap:7px;margin-top:4px}.inksub-gallery-dot{width:7px;height:7px;padding:0;border:0!important;outline:0!important;border-radius:50%;background:#c7cbd0;box-shadow:none!important;cursor:pointer;-webkit-tap-highlight-color:transparent}.inksub-gallery-dot.is-active{background:#444}.inksub-gallery-dot:focus,.inksub-gallery-dot:active{outline:0!important;box-shadow:none!important}.inksub-lightbox[hidden]{display:none!important}.inksub-lightbox{position:fixed;inset:0;z-index:999999;background:rgba(0,0,0,.92);display:grid;grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;padding:28px}.inksub-lightbox-stage{margin:0;max-height:92vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-width:0}.inksub-lightbox-image{display:block;max-width:min(1200px,100%);max-height:76vh;width:auto;height:auto;object-fit:contain;border-radius:var(--inksub-radius);box-shadow:0 16px 50px rgba(0,0,0,.45)}.inksub-lightbox-caption{color:#fff;text-align:center;min-height:20px}.inksub-lightbox-close{position:absolute;top:14px;right:18px;width:38px;height:38px;border:0!important;outline:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#fff;font-size:32px;font-weight:300;line-height:1;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}.inksub-lightbox-close:focus,.inksub-lightbox-close:active{outline:0!important;box-shadow:none!important;background:transparent!important}.inksub-lightbox-close:focus-visible{opacity:.62}.inksub-lightbox-nav{width:44px;height:64px;color:#fff}.inksub-lightbox-nav svg{width:28px;height:28px}.inksub-lightbox-nav:hover{color:#fff;opacity:.72;transform:scale(1.04)}.inksub-lightbox-thumbs{display:flex;gap:8px;max-width:min(980px,90vw);overflow:auto;padding:4px}.inksub-lightbox-thumb{width:72px;height:54px;flex:0 0 auto;border:1px solid transparent!important;border-radius:8px;padding:0;overflow:hidden;background:none!important;box-shadow:none!important;cursor:pointer;-webkit-tap-highlight-color:transparent}.inksub-lightbox-thumb img{width:100%;height:100%;object-fit:cover;display:block}.inksub-lightbox-thumb.is-active{border-color:rgba(255,255,255,.9)!important}.inksub-lightbox-thumb:focus,.inksub-lightbox-thumb:active{outline:0!important;box-shadow:none!important}
@media(max-width:900px){.inksub-gallery-slide{flex-basis:calc((100% - (var(--inksub-tablet) - 1)*var(--inksub-gap))/var(--inksub-tablet))}.inksub-gallery-size-small .inksub-gallery-slide img{max-width:200px;max-height:155px}.inksub-gallery-size-medium .inksub-gallery-slide img{max-width:320px;max-height:245px}.inksub-gallery-size-large .inksub-gallery-slide img{max-width:520px;max-height:390px}.inksub-lightbox{grid-template-columns:44px minmax(0,1fr) 44px;padding:18px 10px}.inksub-lightbox-nav{width:38px;height:56px}}
@media(max-width:600px){.inksub-gallery-shell{gap:2px}.inksub-gallery-slide{flex-basis:calc((100% - (var(--inksub-mobile) - 1)*var(--inksub-gap))/var(--inksub-mobile))}.inksub-gallery-arrow{width:26px;height:42px;flex-basis:26px}.inksub-gallery-arrow svg{width:19px;height:19px}.inksub-gallery-size-small .inksub-gallery-slide img{max-width:180px;max-height:140px}.inksub-gallery-size-medium .inksub-gallery-slide img{max-width:290px;max-height:220px}.inksub-gallery-size-large .inksub-gallery-slide img{max-width:100%;max-height:330px}.inksub-lightbox{grid-template-columns:34px minmax(0,1fr) 34px;padding:10px 4px}.inksub-lightbox-image{max-height:72vh}.inksub-lightbox-nav{width:30px;height:50px}.inksub-lightbox-nav svg{width:22px;height:22px}.inksub-lightbox-thumb{width:58px;height:44px}.inksub-lightbox-close{top:6px;right:8px}}

@media(prefers-reduced-motion:reduce){.inksub-gallery-track{transition:none}.inksub-gallery-slide img,.inksub-gallery-arrow,.inksub-lightbox-nav{transition:none}}

.inksub-gallery.is-dragging .inksub-gallery-viewport{cursor:grabbing}.inksub-gallery.is-dragging .inksub-gallery-track{transition:none!important}.inksub-gallery.is-dragging .inksub-gallery-slide{cursor:grabbing}.inksub-gallery-front-image{-webkit-user-drag:none;user-select:none;-webkit-user-select:none;pointer-events:none}

/* v1.4.3 — Portal Lightbox: isolated from WooCommerce/theme product-image CSS */
.inksub-lightbox[hidden]{display:none!important}
.inksub-lightbox.inksub-lightbox-portal{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  z-index:2147483000!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:rgba(0,0,0,.92)!important;
  overflow:hidden!important;
  display:block!important;
  transform:none!important;
  opacity:1!important;
  visibility:visible!important;
  box-sizing:border-box!important;
}
.inksub-lightbox.inksub-lightbox-portal *{box-sizing:border-box}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-stage{
  position:static!important;
  display:block!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  float:none!important;
  clear:both!important;
  overflow:visible!important;
  transform:none!important;
}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-image{
  position:absolute!important;
  left:50%!important;
  top:48%!important;
  right:auto!important;
  bottom:auto!important;
  display:block!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  max-width:min(1200px,calc(100vw - 180px))!important;
  max-height:72vh!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  border:0!important;
  border-radius:var(--inksub-radius,0px)!important;
  box-shadow:0 16px 50px rgba(0,0,0,.45)!important;
  clip-path:none!important;
  float:none!important;
  clear:both!important;
  opacity:1!important;
  visibility:visible!important;
  transform:translate(-50%,-50%)!important;
  transform-origin:center center!important;
  z-index:2!important;
}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-image.is-load-error{display:none!important}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-caption{
  position:absolute!important;
  left:50%!important;
  bottom:86px!important;
  width:min(900px,calc(100vw - 120px))!important;
  margin:0!important;
  padding:0!important;
  color:#fff!important;
  text-align:center!important;
  transform:translateX(-50%)!important;
  z-index:3!important;
}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-thumbs{
  position:absolute!important;
  left:50%!important;
  bottom:16px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  width:auto!important;
  max-width:min(980px,calc(100vw - 120px))!important;
  height:auto!important;
  margin:0!important;
  padding:4px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  float:none!important;
  clear:both!important;
  transform:translateX(-50%)!important;
  z-index:4!important;
}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-thumb{
  position:relative!important;
  display:block!important;
  width:72px!important;
  height:54px!important;
  min-width:72px!important;
  max-width:72px!important;
  min-height:54px!important;
  max-height:54px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid transparent!important;
  border-radius:8px!important;
  overflow:hidden!important;
  background:transparent!important;
  transform:none!important;
  float:none!important;
  z-index:auto!important;
}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-thumb img{
  position:static!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  object-fit:cover!important;
  transform:none!important;
  opacity:1!important;
  visibility:visible!important;
}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-thumb.is-active{border-color:rgba(255,255,255,.95)!important}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-nav{
  position:absolute!important;
  top:50%!important;
  width:48px!important;
  height:72px!important;
  margin:0!important;
  padding:0!important;
  color:#fff!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  transform:translateY(-50%)!important;
  z-index:5!important;
}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-nav.is-prev{left:18px!important;right:auto!important}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-nav.is-next{right:18px!important;left:auto!important}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-nav:hover{transform:translateY(-50%) scale(1.04)!important}
.inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-close{
  position:absolute!important;
  top:12px!important;
  right:16px!important;
  left:auto!important;
  bottom:auto!important;
  width:42px!important;
  height:42px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#fff!important;
  font-size:34px!important;
  line-height:42px!important;
  text-align:center!important;
  transform:none!important;
  z-index:6!important;
}
@media(max-width:600px){
  .inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-image{
    top:46%!important;
    max-width:calc(100vw - 72px)!important;
    max-height:68vh!important;
  }
  .inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-nav{width:34px!important;height:56px!important}
  .inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-nav.is-prev{left:2px!important}
  .inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-nav.is-next{right:2px!important}
  .inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-thumbs{bottom:8px!important;max-width:calc(100vw - 16px)!important;gap:6px!important}
  .inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-thumb{width:58px!important;height:44px!important;min-width:58px!important;max-width:58px!important;min-height:44px!important;max-height:44px!important}
  .inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-caption{bottom:62px!important;width:calc(100vw - 40px)!important}
  .inksub-lightbox.inksub-lightbox-portal .inksub-lightbox-close{top:4px!important;right:4px!important}
}

/* v1.4.4 — Critical hidden-state fix.
   v1.4.3's portal display:block!important rule came after the generic [hidden]
   rule with equal specificity, so the lightbox was forced visible on page load
   and could not be closed. Keep this rule LAST so the native hidden state wins. */
.inksub-lightbox.inksub-lightbox-portal[hidden]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.inksub-lightbox.inksub-lightbox-portal:not([hidden]){
  display:block!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
