:root{
  --sopdp-ink:#111111;
  --sopdp-muted:rgba(17,17,17,.62);
  --sopdp-faint:rgba(17,17,17,.34);
  --sopdp-line:rgba(17,17,17,.22);
  --sopdp-soft-line:rgba(17,17,17,.10);
  --sopdp-paper:#ffffff;
  --sopdp-gallery-bg:#ffffff;
  --sopdp-panel-bg:#ffffff;
  --sopdp-ease:cubic-bezier(.2,.72,.24,1);
  --sopdp-stage-height:max(640px,calc(100svh - 70px));
  --sopdp-panel-width:clamp(310px,25vw,378px);
}

.sopdp,.sopdp *,
.ecpdp-related,.ecpdp-related *{box-sizing:border-box}
.sopdp,
.ecpdp-related{
  color:var(--sopdp-ink);
  font-family:Inter,Arial,sans-serif!important;
  font-style:normal!important;
}
.sopdp{width:100%;max-width:none;margin:0;padding:0;background:#fff}
.sopdp p,.sopdp figure,.sopdp h1,.sopdp h2,.sopdp h3{margin:0}
.sopdp button,.sopdp select,.sopdp a{font:inherit}
.sopdp button,.sopdp select{appearance:none;-webkit-appearance:none;border-radius:0}
.sopdp button{cursor:pointer}
.sopdp ::selection{background:#111;color:#fff}
.sopdp [class*="cfvsw-"],
.sopdp .woo-variation-swatches{display:none!important}
.sopdp-host{overflow:visible!important}
.sopdp-screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Full-viewport product stage. JS calculates the exact breakout width inside Elementor columns. */
.sopdp--experience{position:relative;z-index:1;overflow:visible}
.sopdp--experience[data-sopdp-fullbleed="1"]{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw)}
.sopdp-stage{
  position:relative;
  width:100%;
  height:var(--sopdp-stage-height);
  min-height:min(640px,100svh);
  overflow:hidden;
  isolation:isolate;
  background:var(--sopdp-gallery-bg);
}

/* The mobile gallery is a separate implementation, not a responsive mutation of desktop. */
.sopdp-mobile-gallery{display:none}
.sopdp-mobile-gallery__item,
.sopdp-mobile-gallery__pagination,
.sopdp-mobile-gallery__dot{-webkit-tap-highlight-color:transparent}

/* Gallery lives underneath the product panel. */
.sopdp-gallery{
  position:absolute;
  z-index:1;
  inset:0;
  width:100%;
  height:100%;
  min-width:0;
  background:var(--sopdp-gallery-bg);
  outline:0;
}
.sopdp-gallery:focus-visible{outline:1px solid var(--sopdp-ink);outline-offset:-1px}
.sopdp-gallery__viewport{
  width:100%;
  height:100%;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-x:contain;
  scroll-snap-type:none;
  scroll-behavior:smooth;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x pan-y;
  cursor:grab;
}
.sopdp-gallery__viewport::-webkit-scrollbar{display:none}
.sopdp-gallery__viewport.is-dragging{cursor:grabbing;scroll-behavior:auto;scroll-snap-type:none;user-select:none}
.sopdp-gallery__track{display:flex;width:max-content;min-width:100%;height:100%;align-items:stretch}
.sopdp-gallery__slide{
  position:relative;
  display:grid;
  flex:0 0 33.333333vw;
  width:33.333333vw;
  height:100%;
  min-width:280px;
  place-items:center;
  margin:0;
  padding:0;
  overflow:hidden;
  border:0;
  border-right:0;
  outline:0;
  background:var(--sopdp-gallery-bg)!important;
  color:inherit;
  line-height:0;
  scroll-snap-align:start;
  scroll-snap-stop:always;
  cursor:zoom-in;
}
/*
 * Sparse desktop galleries keep the same editorial column scale as a normal
 * three-image view. A single image must never be stretched to 100vw merely
 * because there is nothing beside it. One or two images are centered inside
 * the canvas and retain the regular one-third viewport width. The data-count
 * attribute is also updated when a colour gallery changes, so this adapts
 * automatically without a second JavaScript layout path.
 */
@media (min-width:1024px){
  .sopdp-gallery[data-count="1"] .sopdp-gallery__track,
  .sopdp-gallery[data-count="2"] .sopdp-gallery__track{
    width:100%;
    min-width:100%;
    justify-content:center;
  }
  .sopdp-gallery[data-count="1"] .sopdp-gallery__slide,
  .sopdp-gallery[data-count="2"] .sopdp-gallery__slide{
    flex:0 0 33.333333vw;
    width:33.333333vw;
    max-width:33.333333vw;
  }
  .sopdp-gallery[data-count="1"] .sopdp-gallery__viewport,
  .sopdp-gallery[data-count="2"] .sopdp-gallery__viewport{
    cursor:default;
  }
}
.sopdp-gallery__slide:focus-visible{outline:1px solid var(--sopdp-ink);outline-offset:-1px}
.sopdp-gallery__slide img{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  margin:0;
  padding:clamp(18px,2vw,34px) 0;
  border:0;
  background:transparent;
  box-shadow:none;
  object-fit:contain;
  object-position:center;
  user-select:none;
  -webkit-user-drag:none;
}

.sopdp-gallery--single-page .sopdp-gallery__desktop-ui{display:none}
.sopdp-gallery__desktop-ui{visibility:hidden}
.sopdp-gallery--ui-ready .sopdp-gallery__desktop-ui{visibility:visible}

.sopdp-gallery__desktop-ui{
  position:absolute;
  z-index:4;
  left:50%;
  bottom:14px;
  display:flex;
  align-items:center;
  gap:12px;
  min-height:32px;
  padding:0 8px;
  color:var(--sopdp-ink);
  border:1px solid rgba(17,17,17,.10);
  background:#fff;
  transform:translateX(-50%);
}
.sopdp-gallery__nav{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  margin:0;
  padding:0;
  border:0;
  background:transparent!important;
  color:var(--sopdp-ink)!important;
}
.sopdp-gallery__nav::before{
  width:7px;
  height:7px;
  border-top:1px solid currentColor;
  border-right:1px solid currentColor;
  content:"";
  transform:rotate(-135deg);
}
.sopdp-gallery__nav--next::before{transform:rotate(45deg)}
.sopdp-gallery__nav:disabled{cursor:default;opacity:.2}
.sopdp-gallery__nav:focus-visible{outline:1px solid var(--sopdp-ink);outline-offset:-2px}
.sopdp-gallery__count{
  min-width:44px;
  color:var(--sopdp-ink);
  font-size:9px;
  font-weight:600;
  line-height:1;
  letter-spacing:.08em;
  text-align:center;
}
.sopdp-gallery__progress{position:relative;width:92px;height:1px;overflow:hidden;background:rgba(17,17,17,.22)}
.sopdp-gallery__progress span{position:absolute;top:0;left:0;width:100%;height:100%;background:#111;transform:scaleX(0);transform-origin:left center;transition:transform .18s linear}
.sopdp-gallery__dots{display:none}

/* Floating product information. No rounded cards, no theatrical shadows. */
.sopdp-panel{
  position:absolute;
  z-index:3;
  top:clamp(18px,3.2vh,36px);
  right:clamp(14px,2vw,32px);
  width:var(--sopdp-panel-width);
  max-height:calc(var(--sopdp-stage-height) - clamp(36px,6.4vh,72px));
  overflow:hidden;
  border:1px solid rgba(17,17,17,.13);
  background:var(--sopdp-panel-bg)!important;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.sopdp-panel__scroll{
  width:100%;
  max-height:inherit;
  overflow:auto;
  padding:20px 18px 18px;
  scrollbar-width:none;
  overscroll-behavior:contain;
}
.sopdp-panel__scroll::-webkit-scrollbar{display:none}
.sopdp-panel--standalone{position:relative;top:auto;right:auto;width:100%;max-height:none;background:#fff!important;backdrop-filter:none;-webkit-backdrop-filter:none}
.sopdp--standalone{max-width:480px}

.sopdp-form{width:100%;min-width:0;margin:0;padding:0;background:transparent!important}
.sopdp-form script{display:none!important}
.sopdp-identity{display:grid;gap:5px;margin:0 0 18px;padding:0;background:transparent}
.sopdp-identity__brand{
  display:block;
  color:var(--sopdp-ink);
  font-size:10px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.sopdp-identity__name{
  display:block;
  color:var(--sopdp-ink);
  font-size:13px;
  font-weight:400;
  line-height:1.35;
  letter-spacing:0;
  text-transform:none;
}
.sopdp-identity__price,
.sopdp-identity__price .price,
.sopdp-identity__price .woocommerce-Price-amount,
.sopdp-identity__price bdi{
  color:var(--sopdp-ink)!important;
  font:inherit!important;
}
.sopdp-identity__price{font-size:10px!important;font-weight:500!important;line-height:1.3!important;letter-spacing:.01em!important}
.sopdp-identity__price del{margin-right:7px;color:var(--sopdp-muted)!important;font-weight:400!important;opacity:1}
.sopdp-identity__price ins{color:var(--sopdp-ink)!important;text-decoration:none}

.sopdp-controls{display:grid;gap:12px;margin:0 0 12px;padding:0}
.sopdp-control{min-width:0}
.sopdp-field-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 6px;color:var(--sopdp-muted);font-size:8px;font-weight:600;line-height:1.2;letter-spacing:.08em;text-transform:uppercase}
.sopdp-field-head label{font:inherit;color:inherit}
.sopdp-size-guide{
  margin:0;
  padding:0;
  border:0;
  color:var(--sopdp-ink)!important;
  background:transparent!important;
  font-size:8px!important;
  font-weight:600!important;
  line-height:1.2!important;
  letter-spacing:.06em!important;
  text-decoration:underline;
  text-decoration-color:var(--sopdp-faint);
  text-underline-offset:3px;
  text-transform:uppercase;
  white-space:nowrap;
}
.sopdp-select-wrap{position:relative;width:100%}
.sopdp-select-wrap::after{position:absolute;top:50%;right:13px;width:6px;height:6px;border-right:1px solid var(--sopdp-ink);border-bottom:1px solid var(--sopdp-ink);content:"";pointer-events:none;transform:translateY(-68%) rotate(45deg)}
.sopdp-select{
  display:block!important;
  width:100%!important;
  min-height:42px!important;
  margin:0!important;
  padding:0 36px 0 12px!important;
  border:1px solid var(--sopdp-line)!important;
  border-radius:0!important;
  color:var(--sopdp-ink)!important;
  background:#fff!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:9px!important;
  font-weight:500!important;
  line-height:1!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  box-shadow:none!important;
  outline:none!important;
  transition:border-color .18s var(--sopdp-ease),background-color .18s var(--sopdp-ease)!important;
}
.sopdp-select:hover,.sopdp-select:focus{border-color:var(--sopdp-ink)!important;background:#fff!important}
.sopdp-select option{color:#111;background:#fff;text-transform:none}
.sopdp-select option:disabled{color:#8c8c8c}

.sopdp-message{min-height:0;margin:0;color:var(--sopdp-muted);font-size:9px;line-height:1.35;letter-spacing:.01em}
.sopdp-message:empty{display:none}
.sopdp-message.is-error{margin:0 0 10px;color:#a32118}
.sopdp-message.is-success{margin:0 0 10px;color:#111}
.sopdp-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(86px,.38fr);gap:6px;width:100%;margin:0;padding:0}
.sopdp-actions--solo{grid-template-columns:1fr}
.sopdp-add,.sopdp-wishlist__button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:42px!important;
  margin:0!important;
  padding:0 10px!important;
  border-radius:0!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:8px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.06em!important;
  text-align:center!important;
  text-transform:uppercase!important;
  box-shadow:none!important;
  outline:none!important;
  transition:background-color .18s var(--sopdp-ease),color .18s var(--sopdp-ease),border-color .18s var(--sopdp-ease),opacity .18s var(--sopdp-ease)!important;
}
.sopdp-add{border:1px solid #111!important;background:#111!important;color:#fff!important}
.sopdp-add:hover:not(:disabled),.sopdp-add:focus-visible:not(:disabled){border-color:#2b2b2b!important;background:#2b2b2b!important;color:#fff!important}
.sopdp-add:disabled,.sopdp-add[aria-disabled="true"]{cursor:not-allowed!important;border-color:var(--sopdp-faint)!important;background:transparent!important;color:var(--sopdp-muted)!important;opacity:1!important}
.sopdp-add.is-loading{cursor:wait!important}
.sopdp-wishlist{width:100%;margin:0;padding:0}
.sopdp-wishlist__button.dalya-wl-btn{border:1px solid var(--sopdp-line)!important;background:transparent!important;color:var(--sopdp-ink)!important}
.sopdp-wishlist__button.dalya-wl-btn:hover,.sopdp-wishlist__button.dalya-wl-btn:focus-visible,.sopdp-wishlist__button.dalya-wl-btn.is-active{border-color:#111!important;background:#111!important;color:#fff!important}
.sopdp-wishlist__button .dalya-wl-svg{display:none!important}

.sopdp-information{margin-top:18px;border-top:1px solid var(--sopdp-soft-line)}
.sopdp-information--standalone{margin-top:0}
.sopdp-accordion{margin:0;padding:0;border-bottom:1px solid var(--sopdp-soft-line)}
.sopdp-accordion__trigger{
  position:relative;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:100%!important;
  min-height:38px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--sopdp-ink)!important;
  box-shadow:none!important;
  font:inherit!important;
  font-size:8px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.07em!important;
  text-align:left!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}
.sopdp-accordion__trigger:hover,.sopdp-accordion__trigger:focus,.sopdp-accordion__trigger:active{background:transparent!important;color:var(--sopdp-ink)!important;box-shadow:none!important;transform:none!important}
.sopdp-accordion__trigger:focus-visible{outline:1px solid #111!important;outline-offset:3px!important}
.sopdp-accordion__label{display:block;min-width:0}
.sopdp-accordion__icon{position:relative;display:block;flex:0 0 10px;width:10px;height:10px;margin-left:14px}
.sopdp-accordion__icon::before,.sopdp-accordion__icon::after{position:absolute;top:50%;left:50%;width:8px;height:1px;background:#111;content:"";transform:translate(-50%,-50%);transform-origin:center;transition:transform .32s var(--sopdp-ease),opacity .22s ease}
.sopdp-accordion__icon::after{transform:translate(-50%,-50%) rotate(90deg)}
.sopdp-accordion.is-open .sopdp-accordion__icon::after{transform:translate(-50%,-50%) rotate(0);opacity:0}
.sopdp-accordion__panel{
  display:grid;
  grid-template-rows:0fr;
  opacity:0;
  visibility:hidden;
  transition:grid-template-rows .42s var(--sopdp-ease),opacity .26s ease,visibility 0s linear .42s;
}
.sopdp-accordion.is-open .sopdp-accordion__panel{
  grid-template-rows:1fr;
  opacity:1;
  visibility:visible;
  transition:grid-template-rows .42s var(--sopdp-ease),opacity .3s ease,visibility 0s linear 0s;
}
.sopdp-accordion__clip{min-height:0;overflow:hidden}
.sopdp-description{
  padding:3px 0 15px;
  color:rgba(17,17,17,.82);
  font-size:9px;
  font-weight:400;
  line-height:1.55;
  letter-spacing:0;
  transform:translateY(-5px);
  transition:transform .42s var(--sopdp-ease);
}
.sopdp-accordion.is-open .sopdp-description{transform:translateY(0)}
.sopdp-description p{margin:0 0 9px}
.sopdp-description p:last-child{margin-bottom:0}
.sopdp-description ul,.sopdp-description ol{margin:0 0 10px;padding:0 0 0 15px}
.sopdp-description li{margin:0 0 2px}
.sopdp-description strong,.sopdp-description b{font-weight:600}
.sopdp-description a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.sopdp-description img{display:block;max-width:100%;height:auto;margin:10px 0;background:transparent}
.sopdp-description img.sopdp-image-broken{display:none!important}
.sopdp-description--standalone{font-size:11px;line-height:1.62}

/* Fullscreen image viewer. */
body.sopdp-viewer-open{overflow:hidden!important}
.sopdp-viewer{position:fixed;z-index:999999;inset:0;display:none;isolation:isolate;background:#fff!important;color:#111;font-family:Inter,Arial,sans-serif}
.sopdp-viewer.is-open{display:block}
.sopdp-viewer,.sopdp-viewer *,.sopdp-viewer *::before,.sopdp-viewer *::after{box-sizing:border-box;background-image:none!important;box-shadow:none!important}
.sopdp-viewer__top{position:absolute;z-index:3;top:0;right:0;left:0;display:flex;align-items:center;justify-content:space-between;padding:17px 20px;pointer-events:none}
.sopdp-viewer__close,.sopdp-viewer__count{pointer-events:auto;font-family:Inter,Arial,sans-serif!important;font-size:9px!important;font-weight:600!important;line-height:1!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.sopdp-viewer__close{min-height:30px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#111!important;cursor:pointer}
.sopdp-viewer__close:focus-visible{outline:1px solid #111!important;outline-offset:4px!important}
.sopdp-viewer__count{color:rgba(17,17,17,.62)!important}
.sopdp-viewer__track{display:flex;overflow:auto hidden;width:100%;height:100%;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior:contain;scroll-behavior:smooth;background:#fff!important;touch-action:pan-x pan-y}
.sopdp-viewer__track::-webkit-scrollbar{display:none}
.sopdp-viewer__item{display:grid;flex:0 0 100%;place-items:center;min-width:0;min-height:100%;margin:0!important;padding:62px 8vw 22px!important;overflow:auto;scroll-snap-align:start;scroll-snap-stop:always;background:#fff!important}
.sopdp-viewer__item img{display:block;max-width:100%;max-height:calc(100svh - 84px);width:auto;height:auto;object-fit:contain;background:transparent!important;transition:transform .22s var(--sopdp-ease);transform-origin:center;user-select:none;-webkit-user-drag:none}
.sopdp-viewer__item img.is-zoomed{transform:scale(1.8);cursor:zoom-out}
.sopdp-viewer__nav{position:absolute;z-index:2;top:50%;width:44px!important;height:68px!important;margin-top:-34px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#111!important;font-size:0!important;cursor:pointer}
.sopdp-viewer__nav::before{position:absolute;top:50%;left:50%;width:10px;height:10px;border-top:1px solid currentColor;border-right:1px solid currentColor;content:"";transform:translate(-50%,-50%) rotate(-135deg)}
.sopdp-viewer__nav--prev{left:16px}.sopdp-viewer__nav--next{right:16px}.sopdp-viewer__nav--next::before{transform:translate(-50%,-50%) rotate(45deg)}
.sopdp-viewer__nav:disabled{opacity:.18;cursor:default}

/* Minimal product rail shared by related products and New Arrivals. */
.ecpdp-related{
  width:100%;
  max-width:none;
  margin:72px 0 0;
  padding:0;
  overflow:hidden;
  color:#111;
  background:#fff;
  font-family:Inter,Arial,sans-serif!important;
}
.ecpdp-related__inner{width:100%;max-width:none;margin:0;padding:0;background:#fff}
.ecpdp-related__eyebrow{
  margin:0 0 20px;
  color:#111;
  font-size:10px;
  font-weight:500;
  letter-spacing:.045em;
  line-height:1.2;
  text-transform:uppercase;
}
.ecpdp-related__viewport{
  width:100%;
  overflow:hidden;
  background:#fff;
  touch-action:pan-y;
  cursor:grab;
}
.ecpdp-related__viewport.is-dragging{cursor:grabbing}
.ecpdp-related__rail{
  display:flex;
  align-items:flex-start;
  gap:clamp(18px,2.2vw,34px);
  width:max-content;
  background:#fff;
  will-change:transform;
}
.ecpdp-related__card{
  flex:0 0 clamp(190px,18.5vw,294px);
  min-width:0;
  margin:0;
  padding:0;
  background:#fff;
}
.ecpdp-related__link{
  position:relative;
  z-index:2;
  display:block;
  color:#111!important;
  background:#fff;
  text-decoration:none!important;
  cursor:pointer;
  pointer-events:auto;
  -webkit-tap-highlight-color:transparent;
}
.ecpdp-related__link:focus-visible{outline:1px solid #111;outline-offset:4px}
.ecpdp-related__media{
  position:relative;
  display:grid;
  width:100%;
  aspect-ratio:3/4;
  place-items:center;
  overflow:hidden;
  background:#fff!important;
}
.ecpdp-related__img{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  margin:0;
  border:0;
  background:#fff!important;
  box-shadow:none!important;
  object-fit:contain;
  object-position:center;
  transition:transform .38s var(--sopdp-ease),opacity .24s var(--sopdp-ease);
  user-select:none;
  -webkit-user-drag:none;
}
.ecpdp-related__link:hover .ecpdp-related__img{transform:scale(1.012);opacity:.94}
.ecpdp-related__meta{
  display:grid;
  gap:3px;
  margin-top:10px;
  color:#111;
  font-size:9px;
  line-height:1.35;
  letter-spacing:0;
  text-transform:none;
}
.ecpdp-related__brand{
  color:#111;
  font-size:8.5px;
  font-weight:600;
  letter-spacing:.045em;
  line-height:1.25;
  text-transform:uppercase;
}
.ecpdp-related__name{
  overflow:hidden;
  color:#111;
  font-size:9.5px;
  font-weight:400;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ecpdp-related__price,
.ecpdp-related__price .price,
.ecpdp-related__price .woocommerce-Price-amount,
.ecpdp-related__price bdi{
  color:var(--sopdp-muted)!important;
  font:inherit!important;
}
.ecpdp-related__price{font-size:9px;line-height:1.35}
.ecpdp-related__price del{margin-right:5px;opacity:.62}
.ecpdp-related__price ins{color:#111!important;text-decoration:none}

@media (min-width:1024px) and (max-width:1279px){
  :root{--sopdp-panel-width:clamp(292px,28vw,330px)}
  .sopdp-stage{min-height:min(600px,100svh)}
  .sopdp-panel__scroll{padding:17px 15px 16px}
  .sopdp-gallery__slide{flex-basis:34vw;width:34vw;min-width:270px}
  .sopdp-gallery[data-count="1"] .sopdp-gallery__slide,
  .sopdp-gallery[data-count="2"] .sopdp-gallery__slide{
    flex-basis:34vw;
    width:34vw;
    max-width:34vw;
  }
}

@media (max-width:1023px){
  :root{--sopdp-stage-height:auto}
  .sopdp-stage{height:auto;min-height:0;overflow:visible;background:#fff}

  /* Desktop gallery is fully removed from the mobile rendering path. */
  .sopdp-gallery--desktop{display:none!important}

  /* Original v5.3.1 mobile gallery: native momentum + CSS scroll snap only. */
  .sopdp-mobile-gallery{
    position:relative;
    display:block;
    width:100%;
    min-width:0;
    margin:0;
    padding:0;
    background:#fff;
    overflow-anchor:none;
  }
  .sopdp-mobile-gallery__stack{
    display:flex;
    flex-direction:row;
    align-items:stretch;
    gap:0;
    width:100%;
    min-width:0;
    margin:0;
    padding:0;
    overflow-x:auto;
    overflow-y:hidden;
    overflow-anchor:none;
    overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-x pan-y;
    background:#fff;
  }
  .sopdp-mobile-gallery__stack::-webkit-scrollbar{display:none}
  .sopdp-mobile-gallery__item{
    position:relative;
    display:block;
    flex:0 0 100%;
    width:100%;
    min-width:100%;
    aspect-ratio:3/4;
    margin:0;
    padding:0;
    overflow:hidden;
    border:0;
    border-radius:0;
    outline:0;
    background:#fff!important;
    color:inherit;
    line-height:0;
    text-align:inherit;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    cursor:zoom-in;
    appearance:none;
    -webkit-appearance:none;
    box-shadow:none!important;
  }
  .sopdp-mobile-gallery__item:focus-visible{outline:1px solid var(--sopdp-ink);outline-offset:-1px}
  .sopdp-mobile-gallery__item img{
    display:block;
    width:100%;
    height:100%;
    max-width:none;
    max-height:none;
    margin:0;
    padding:0;
    border:0;
    background:#fff;
    box-shadow:none;
    object-fit:contain;
    object-position:center;
    user-select:none;
    -webkit-user-drag:none;
  }
  .sopdp-mobile-gallery__pagination{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:2px;
    min-height:14px;
    margin:2px 0 0;
    padding:0;
    background:#fff!important;
    line-height:0;
  }
  .sopdp-mobile-gallery__pagination[hidden]{display:none!important}
  .sopdp-mobile-gallery__dot{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:12px!important;
    height:12px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#111!important;
    appearance:none!important;
    -webkit-appearance:none!important;
    box-shadow:none!important;
  }
  .sopdp-mobile-gallery__dot::before{
    display:block;
    width:3px;
    height:3px;
    border-radius:999px;
    background:rgba(17,17,17,.35);
    content:"";
    transition:width .2s var(--sopdp-ease),height .2s var(--sopdp-ease),background-color .2s var(--sopdp-ease);
  }
  .sopdp-mobile-gallery__dot.is-active::before{width:11px;height:1.5px;border-radius:0;background:#111}
  .sopdp-mobile-gallery__dot:hover::before,
  .sopdp-mobile-gallery__dot:focus-visible::before{background:#111}
  .sopdp-mobile-gallery__dot:focus-visible{outline:1px solid #111!important;outline-offset:-1px!important}
  .sopdp-mobile-gallery__count{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
  }

  .sopdp-panel{position:relative;top:auto;right:auto;width:100%;max-height:none;overflow:visible;border:0;border-top:1px solid var(--sopdp-soft-line);background:#fff!important;backdrop-filter:none;-webkit-backdrop-filter:none}
  .sopdp-panel__scroll{max-height:none;overflow:visible;padding:20px 16px 22px}
  .sopdp-identity{gap:5px;margin-bottom:20px}
  .sopdp-identity__brand{font-size:9px}
  .sopdp-identity__name{font-size:12px}
  .sopdp-identity__price{font-size:11px!important}
  .sopdp-controls{gap:14px;margin-bottom:14px}
  .sopdp-field-head{font-size:8px;margin-bottom:7px}
  .sopdp-select{min-height:48px!important;font-size:9px!important}
  .sopdp-actions{grid-template-columns:1fr 1fr;gap:6px}
  .sopdp-actions--solo{grid-template-columns:1fr}
  .sopdp-add,.sopdp-wishlist__button{min-height:50px!important;font-size:8.5px!important}
  .sopdp-information{margin-top:20px}
  .sopdp-accordion__trigger{min-height:44px!important;font-size:8.5px!important}
  .sopdp-description{padding-bottom:18px;font-size:10px;line-height:1.58}

  .sopdp-viewer__top{padding:14px}
  .sopdp-viewer__item{padding:52px 0 14px!important}
  .sopdp-viewer__item img{max-width:100%;max-height:calc(100svh - 70px)}
  .sopdp-viewer__nav{display:none}

  .ecpdp-related{margin-top:52px}.ecpdp-related__eyebrow{margin-bottom:16px}.ecpdp-related__rail{gap:10px}.ecpdp-related__card{flex-basis:calc(50vw - 22px)}.ecpdp-related__meta{margin-top:8px}
}

@media (prefers-reduced-motion:reduce){
  .sopdp *,.ecpdp-related__rail{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}
}
