/* Site 01 gallery: one bounded image frame, separate thumbnail navigation. */
body.starline-site01.single-product div.product .sl01-hero > .woocommerce-product-gallery {
 --sl01-gallery-edge:360px;
 min-width:0!important; width:100%!important; max-width:100%!important;
 padding:0!important; border:0!important; background:transparent!important;
 border-radius:0!important; box-shadow:none!important; position:relative!important;
 isolation:isolate; align-self:start;
}
body.starline-site01.single-product .sl01-hero .woocommerce-product-gallery .flex-viewport {
 height:var(--sl01-gallery-edge)!important; max-width:100%!important;
 overflow:hidden!important; border:1px solid #eaf0f3; border-radius:22px!important;
 background:#f5f8fa!important; isolation:isolate;
}
body.starline-site01.single-product .sl01-hero .woocommerce-product-gallery__image {
 position:relative!important; height:var(--sl01-gallery-edge)!important;
 overflow:hidden!important; background:#f5f8fa!important; isolation:isolate;
}
body.starline-site01.single-product .sl01-hero .woocommerce-product-gallery__image > a {
 display:block!important; box-sizing:border-box!important; height:100%!important;
 padding:16px!important; background:#f5f8fa!important;
}
body.starline-site01.single-product .sl01-hero .woocommerce-product-gallery__image img:not(.zoomImg) {
 display:block!important; width:100%!important; height:100%!important;
 max-height:100%!important; max-width:100%!important; margin:0!important;
 object-fit:contain!important; object-position:center!important; border-radius:0!important;
}
body.starline-site01.single-product .sl01-hero .woocommerce-product-gallery__image img.zoomImg {
 max-width:none!important; max-height:none!important; border-radius:0!important;
 pointer-events:none!important; /* native zoom owns inline dimensions and offsets */
}
body.starline-site01.single-product .sl01-hero .flex-control-thumbs {
 position:relative!important; top:auto!important; left:auto!important;
 display:flex!important; flex-wrap:nowrap!important; justify-content:flex-start!important;
 width:100%!important; max-width:100%!important; max-height:none!important;
 margin:12px 0 0!important; padding:3px!important; gap:8px!important;
 overflow-x:auto!important; overflow-y:hidden!important; scroll-behavior:smooth;
}
body.starline-site01.single-product .sl01-hero .flex-control-thumbs li {
 flex:0 0 62px!important; width:62px!important; height:62px!important;
 margin:0!important; float:none!important;
}
body.starline-site01.single-product .sl01-hero .flex-control-thumbs img {
 width:62px!important; height:62px!important; padding:4px!important;
 border:1px solid #dce6ed!important; border-radius:13px!important;
 object-fit:contain!important; background:#fff!important; box-shadow:none!important;
}
body.starline-site01.single-product .sl01-hero .flex-control-thumbs img.flex-active {
 border:2px solid #167489!important; opacity:1!important;
}
body.starline-site01.single-product .sl01-hero .woocommerce-product-gallery__trigger { top:12px!important; right:12px!important; z-index:5!important; }
@media(min-width:1100px) {
 body.starline-site01.single-product div.product .sl01-hero > .woocommerce-product-gallery { padding-left:78px!important; }
 body.starline-site01.single-product .sl01-hero .flex-control-thumbs {
  position:absolute!important; top:10px!important; left:0!important;
  flex-direction:column!important; width:68px!important; max-width:68px!important;
  max-height:calc(var(--sl01-gallery-edge) - 20px)!important;
  margin:0!important; overflow-y:auto!important; overflow-x:hidden!important;
 }
}
body.starline-site01 .pswp__bg { background:#0e1221!important; }
@media(prefers-reduced-motion:reduce) {
 body.starline-site01 .flex-control-thumbs { scroll-behavior:auto!important; }
}
body.starline-site01 .sl01-gallery-nav { position:absolute; left:0; right:0; top:calc(var(--sl01-gallery-edge) / 2 - 20px); display:flex; justify-content:space-between; padding:0 10px; pointer-events:none; z-index:6; }
body.starline-site01 .sl01-gallery-nav button { pointer-events:auto; width:40px; height:40px; padding:0; border:1px solid #dce6ed; border-radius:50%; background:white; color:#37506b; font:28px/1 Arial,sans-serif; box-shadow:0 2px 5px #17233512; cursor:pointer; }
body.starline-site01 .woocommerce-product-gallery .flex-direction-nav { display:none!important; }
@media(min-width:1100px){body.starline-site01 .sl01-gallery-nav { left:78px; }}
html.sl01-dialog-open { overflow:hidden!important; }
body.starline-site01 dialog.sl01-image-dialog { position:fixed; inset:0; width:100vw; height:100dvh; max-width:none; max-height:none; margin:0; padding:0; border:0; background:#0e1221; color:white; overflow:hidden; }
body.starline-site01 .sl01-image-dialog::backdrop { background:#0e1221; }
body.starline-site01 .sl01-image-dialog [data-count] { position:absolute; top:24px; left:24px; font-size:13px; z-index:2; }
body.starline-site01 .sl01-dialog-tools { position:absolute; top:14px; right:16px; display:flex; gap:8px; z-index:3; }
body.starline-site01 .sl01-image-dialog button { width:44px; height:44px; padding:0; border:0; border-radius:50%; background:#ffffff16; color:white; font:28px/1 Arial,sans-serif; cursor:pointer; }
body.starline-site01 .sl01-image-dialog button:focus-visible { outline:2px solid white; outline-offset:3px; }
body.starline-site01 .sl01-image-dialog [data-dir] { position:absolute; top:calc(50% - 22px); z-index:3; }
body.starline-site01 .sl01-image-dialog [data-dir="-1"] { left:12px; }
body.starline-site01 .sl01-image-dialog [data-dir="1"] { right:12px; }
body.starline-site01 .sl01-image-dialog [hidden] { display:none!important; }
body.starline-site01 .sl01-dialog-stage { position:absolute; inset:74px 70px 28px; overflow:auto; display:flex; align-items:center; justify-content:center; }
body.starline-site01 .sl01-dialog-stage img { display:block; width:100%!important; height:100%!important; max-width:100%!important; max-height:100%!important; object-fit:contain!important; margin:0!important; }
body.starline-site01 .sl01-dialog-zoom .sl01-dialog-stage { display:block; }
body.starline-site01 .sl01-dialog-zoom .sl01-dialog-stage img { width:200%!important; height:200%!important; max-width:none!important; max-height:none!important; }
@media(max-width:767px){body.starline-site01 .sl01-dialog-stage { inset:72px 24px 28px; }body.starline-site01 .sl01-image-dialog [data-dir] { width:34px; height:34px; }body.starline-site01 .sl01-image-dialog [data-dir="-1"] { left:4px; }body.starline-site01 .sl01-image-dialog [data-dir="1"] { right:4px; }}
