/* Raymond product image display + lightbox */
.product-detail-page{overflow:visible!important}
.product-detail-page .product-hero-button{
  position:relative;display:grid;place-items:center;width:100%;aspect-ratio:1/1;
  margin:0;padding:12px;border:1px solid rgba(17,24,39,.08);border-radius:22px;
  overflow:hidden;background:linear-gradient(145deg,#f8fafc,#eef2f7);
  cursor:zoom-in;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)
}
.product-detail-page .product-hero-button .hero-img{
  display:block!important;width:100%!important;height:100%!important;min-height:0!important;
  max-width:100%!important;max-height:none!important;margin:0!important;border-radius:16px!important;
  object-fit:contain!important;object-position:center!important;background:transparent!important
}
.product-detail-page .product-hero-zoom{
  position:absolute;left:12px;bottom:12px;width:38px;height:38px;display:grid;place-items:center;
  border-radius:13px;background:rgba(15,23,42,.82);color:#fff;font-size:24px;line-height:1;
  box-shadow:0 10px 24px rgba(15,23,42,.2);pointer-events:none
}
.product-detail-page .product-hero-video{
  display:block;width:100%;max-height:520px;border-radius:22px;background:#050816;object-fit:contain
}
.product-detail-page .product-gallery-strip{
  display:flex!important;gap:10px!important;overflow-x:auto!important;overflow-y:hidden!important;
  margin:14px 0!important;padding:2px 1px 8px!important;scroll-snap-type:x proximity;scrollbar-width:thin
}
.product-detail-page .product-gallery-item{
  position:relative;flex:0 0 96px;width:96px;height:96px;display:grid;place-items:center;
  margin:0;padding:6px;border:1px solid rgba(17,24,39,.1);border-radius:18px;overflow:hidden;
  background:#f8fafc;cursor:zoom-in;scroll-snap-align:start;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease
}
.product-detail-page .product-gallery-item:hover{
  transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 70%,var(--primary));
  box-shadow:0 10px 24px rgba(15,23,42,.1)
}
.product-detail-page .product-gallery-item img{
  display:block!important;width:100%!important;height:100%!important;min-width:0!important;
  max-width:100%!important;max-height:100%!important;margin:0!important;border:0!important;
  border-radius:12px!important;object-fit:contain!important;object-position:center!important;background:transparent!important
}
.product-lightbox[hidden]{display:none!important}
.product-lightbox{
  position:fixed;inset:0;z-index:1000;display:grid;grid-template-columns:54px minmax(0,1fr) 54px;
  align-items:center;gap:12px;padding:22px;background:rgba(2,6,23,.94);backdrop-filter:blur(12px)
}
.product-lightbox__figure{
  width:min(100%,1100px);height:min(88vh,850px);margin:0 auto;display:grid;
  grid-template-rows:minmax(0,1fr) auto;place-items:center;gap:10px;min-width:0
}
.product-lightbox__figure img{
  display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;
  object-fit:contain;object-position:center;border-radius:18px;background:#fff;
  box-shadow:0 28px 80px rgba(0,0,0,.35);touch-action:none
}
.product-lightbox__figure figcaption{min-height:24px;color:#fff;font-size:13px;text-align:center}
.product-lightbox__close,.product-lightbox__nav{
  border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.92);color:#111827;
  cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.22)
}
.product-lightbox__close{
  position:fixed;top:18px;right:18px;z-index:2;width:44px;height:44px;border-radius:15px;font-size:28px;line-height:1
}
.product-lightbox__nav{width:48px;height:64px;border-radius:16px;font-size:38px;line-height:1}
.product-lightbox__nav:disabled{opacity:.28;cursor:default}
body.product-lightbox-open{overflow:hidden!important}
@media(max-width:600px){
  .product-detail-page .product-hero-button{aspect-ratio:1/1;padding:8px}
  .product-detail-page .product-gallery-item{flex-basis:82px;width:82px;height:82px}
  .product-lightbox{grid-template-columns:38px minmax(0,1fr) 38px;gap:5px;padding:58px 7px 16px}
  .product-lightbox__figure{height:min(82vh,720px)}
  .product-lightbox__figure img{border-radius:12px}
  .product-lightbox__nav{width:36px;height:54px;border-radius:12px;font-size:30px}
  .product-lightbox__close{top:10px;right:10px;width:40px;height:40px}
}
@media(prefers-reduced-motion:reduce){.product-detail-page .product-gallery-item{transition:none}}

/* RAYMOND LIGHTBOX CENTER FIX V3 */
.product-lightbox{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  grid-template-columns:none!important;
  width:100vw!important;
  height:100vh!important;
  padding:60px 80px 24px!important;
  overflow:hidden!important;
}

.product-lightbox__figure{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(1100px,calc(100vw - 180px))!important;
  height:min(850px,calc(100vh - 100px))!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
}

.product-lightbox__figure img{
  display:block!important;
  width:100%!important;
  height:calc(100% - 34px)!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:calc(100vh - 135px)!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#ffffff!important;
}

.product-lightbox__figure figcaption{
  width:100%!important;
  min-height:26px!important;
  padding-top:8px!important;
  text-align:center!important;
  direction:rtl!important;
}

.product-lightbox__nav{
  position:fixed!important;
  top:50%!important;
  z-index:3!important;
  transform:translateY(-50%)!important;
}

.product-lightbox__nav--prev{
  right:18px!important;
  left:auto!important;
}

.product-lightbox__nav--next{
  left:18px!important;
  right:auto!important;
}

@media(max-width:600px){
  .product-lightbox{
    padding:58px 10px 18px!important;
  }

  .product-lightbox__figure{
    width:calc(100vw - 20px)!important;
    height:calc(100vh - 82px)!important;
  }

  .product-lightbox__figure img{
    height:calc(100% - 32px)!important;
    max-height:calc(100vh - 120px)!important;
  }

  .product-lightbox__nav--prev{
    right:7px!important;
  }

  .product-lightbox__nav--next{
    left:7px!important;
  }
}

