/* Gallery navigation sits beside the photograph. Touch layouts retain swipe,
   dots and thumbnails without overlay arrows. Native gallery state is unchanged. */
@media (min-width:640px) {
    main [data-product-detail] [data-gallery] > [aria-roledescription="carousel"] { overflow:visible; }
    main [data-product-detail] [data-gallery-prev],
    main [data-product-detail] [data-gallery-next] { width:44px; height:44px; border:1px solid #e7e7e7; background:#fff; box-shadow:0 2px 8px #00000005; }
    main [data-product-detail] [data-gallery-prev] { inset-inline-start:-48px; inset-inline-end:auto; }
    main [data-product-detail] [data-gallery-next] { inset-inline-end:-48px; inset-inline-start:auto; }
}
@media (min-width:640px) and (max-width:1279px) {
    main [data-product-detail] [data-gallery] > [aria-roledescription="carousel"] { margin-inline:48px; }
}
@media (max-width:639px) {
    main [data-product-detail] .vo-product-layout { grid-template-columns:minmax(0,1fr); }
    main [data-product-detail] [data-gallery] { min-width:0; width:100%; }
    main [data-product-detail] [data-gallery-track] { width:100%; }
    :is(main [data-product-detail],.vo-quick-view) :is([data-gallery-prev],[data-gallery-next]) { display:none !important; }
    main [data-product-detail] [data-gallery-thumbs]:not([style*="display:none"]):not([style*="display: none"]) { display:flex; gap:8px; overflow-x:auto; overscroll-behavior-inline:contain; scroll-snap-type:x proximity; padding:2px 1px 5px; margin-top:10px; scrollbar-width:none; -ms-overflow-style:none; }
    main [data-product-detail] [data-gallery-thumbs]::-webkit-scrollbar { display:none; }
    main [data-product-detail] [data-gallery-thumbs] > li { flex:0 0 64px; min-width:0; scroll-snap-align:start; }
    main [data-product-detail] [data-gallery-thumb] { height:64px; aspect-ratio:1; border-radius:8px; border:1px solid #e8e8e8; background:#f6f6f6; }
    main [data-product-detail] [data-gallery-thumb][aria-current="true"] { border-color:#252525; }
    main [data-product-detail] [data-gallery-thumb] img { object-fit:contain; }
}