/* MW Produktgalerie – Slider + Lightbox */
.mw-pg{--mw-pg-radius:8px;--mw-pg-slide-bg:#f5f5f5;--mw-pg-ui:#111;--mw-pg-line:#d9d9d9;--mw-pg-thumb:80px;--mw-pg-thumb-gap:10px;--mw-pg-img-pad:0%;--mw-pg-lb-bg:#fff;--mw-pg-lb-text:#111;position:relative;width:100%;min-width:0}
.mw-pg,.mw-pg *{box-sizing:border-box}
.mw-pg .mw-pg__viewport{position:relative;overflow:hidden;border-radius:var(--mw-pg-radius);transition:height .3s ease}
.mw-pg .mw-pg__track{display:flex;align-items:flex-start;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.mw-pg .mw-pg__track::-webkit-scrollbar{display:none}
.mw-pg .mw-pg__track.is-dragging{scroll-snap-type:none;scroll-behavior:auto;cursor:grabbing;user-select:none}
.mw-pg .mw-pg__slide{position:relative;flex:0 0 100%;width:100%;margin:0;scroll-snap-align:start;scroll-snap-stop:always;background:var(--mw-pg-slide-bg);outline:none}
.mw-pg .mw-pg__slide:focus-visible{box-shadow:inset 0 0 0 2px var(--mw-pg-ui)}
.mw-pg .mw-pg__slide[data-mw-lightbox-open]{cursor:zoom-in}
.mw-pg .mw-pg__media{position:relative;width:100%;aspect-ratio:var(--mw-pg-ratio,1)}
.mw-pg .mw-pg__media img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none;margin:0;padding:var(--mw-pg-img-pad);border-radius:0;object-fit:contain;pointer-events:none;-webkit-user-drag:none}
.mw-pg.mw-pg--fit .mw-pg__media img{object-fit:cover}
.mw-pg.mw-pg--natural .mw-pg__media{aspect-ratio:auto}
.mw-pg.mw-pg--natural .mw-pg__media img{position:static;display:block;height:auto!important}
.mw-pg .mw-pg__zoom{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.9);color:var(--mw-pg-ui);opacity:0;transition:opacity .2s ease;pointer-events:none}
.mw-pg .mw-pg__zoom svg{width:16px;height:16px}
.mw-pg .mw-pg__slide:hover .mw-pg__zoom,.mw-pg .mw-pg__slide:focus-visible .mw-pg__zoom{opacity:1}
@media (hover:none){.mw-pg .mw-pg__zoom{opacity:1}}
.mw-pg .mw-pg__arrow{position:absolute;top:50%;z-index:2;display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin:-20px 0 0;padding:0;border:1px solid var(--mw-pg-line);border-radius:50%;background:#fff;color:var(--mw-pg-ui);cursor:pointer;opacity:0;transition:opacity .2s ease,transform .2s ease;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.mw-pg .mw-pg__arrow svg{width:9px;height:13px}
.mw-pg .mw-pg__arrow--prev{left:12px}
.mw-pg .mw-pg__arrow--next{right:12px}
.mw-pg .mw-pg__arrow--next svg{transform:rotate(180deg)}
.mw-pg .mw-pg__viewport:hover .mw-pg__arrow,.mw-pg .mw-pg__arrow:focus-visible{opacity:1}
.mw-pg .mw-pg__arrow:disabled{opacity:0!important;pointer-events:none}
.mw-pg .mw-pg__arrow:focus-visible{outline:2px solid var(--mw-pg-ui);outline-offset:2px}
@media (hover:none){.mw-pg .mw-pg__arrow{opacity:1}}
.mw-pg .mw-pg__thumbs{display:flex;gap:var(--mw-pg-thumb-gap);margin-top:var(--mw-pg-thumb-gap);overflow-x:auto;scrollbar-width:none;padding:2px}
.mw-pg .mw-pg__thumbs::-webkit-scrollbar{display:none}
.mw-pg .mw-pg__thumb{flex:0 0 var(--mw-pg-thumb);width:var(--mw-pg-thumb);height:var(--mw-pg-thumb);margin:0;padding:0;overflow:hidden;border:1px solid var(--mw-pg-line);border-radius:calc(var(--mw-pg-radius) * .6);background:var(--mw-pg-slide-bg);cursor:pointer;opacity:.6;transition:opacity .15s linear,border-color .15s linear}
.mw-pg .mw-pg__thumb:hover{opacity:.9}
.mw-pg .mw-pg__thumb[aria-current="true"]{opacity:1;border:2px solid var(--mw-pg-ui)}
.mw-pg .mw-pg__thumb:focus-visible{outline:2px solid var(--mw-pg-ui);outline-offset:2px}
.mw-pg .mw-pg__thumb img{display:block;width:100%!important;height:100%!important;max-width:none;object-fit:cover;border-radius:0;margin:0}
.mw-pg .mw-pg__dots{display:flex;justify-content:center;gap:8px;margin-top:14px}
.mw-pg .mw-pg__dot{width:8px;height:8px;margin:0;padding:0;border:0;border-radius:50%;background:var(--mw-pg-line);cursor:pointer;transition:background .15s linear,transform .15s ease}
.mw-pg .mw-pg__dot[aria-current="true"]{background:var(--mw-pg-ui);transform:scale(1.25)}
.mw-pg .mw-pg__counter{margin-top:12px;text-align:center;font-size:14px;color:var(--mw-pg-ui);font-variant-numeric:tabular-nums}
.mw-pg .mw-pg__empty{padding:40px 20px;border:1px dashed var(--mw-pg-line);border-radius:var(--mw-pg-radius);text-align:center;font-size:14px;color:#777}

/* Lightbox */
html.mw-pg-lightbox-open{overflow:hidden}
.mw-pgl__dialog{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;overflow:hidden;background:var(--mw-pg-lb-bg,#fff);color:var(--mw-pg-lb-text,#111);font-family:inherit}
.mw-pgl__dialog[open]{display:block;animation:mwPglReveal .18s ease-out}
.mw-pgl__dialog::backdrop{background:rgba(0,0,0,.72)}
.mw-pgl__layout{position:absolute;inset:0;display:grid;grid-template-rows:3.75rem minmax(0,1fr) auto;overflow:hidden}
.mw-pgl__toolbar{position:relative;z-index:4;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(127,127,127,.25)}
.mw-pgl__counter{font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}
.mw-pgl__control{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin:0;padding:0;border:1px solid rgba(127,127,127,.35);border-radius:50%;background:var(--mw-pg-lb-bg,#fff);color:var(--mw-pg-lb-text,#111);cursor:pointer;transition:opacity .15s linear}
.mw-pgl__control svg{width:14px;height:14px;pointer-events:none}
.mw-pgl__control:focus-visible,.mw-pgl__thumb:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.mw-pgl__control:disabled{opacity:.25;cursor:default}
.mw-pgl__close{position:absolute;top:.5rem;right:.75rem}
.mw-pgl__stage-row{position:relative;min-width:0;min-height:0;overflow:hidden}
.mw-pgl__stage{position:relative;width:100%;height:100%;overflow:hidden;touch-action:none;cursor:zoom-in;user-select:none}
.mw-pgl__stage.is-zoomed{cursor:grab}
.mw-pgl__stage.is-dragging{cursor:grabbing}
.mw-pgl__image{display:block;position:absolute;top:50%;left:50%;max-width:none!important;max-height:none;opacity:0;transform-origin:center center;will-change:transform;pointer-events:none;transition:opacity .12s linear}
.mw-pgl__stage.is-ready .mw-pgl__image{opacity:1}
.mw-pgl__loader{position:absolute;top:calc(50% - .75rem);left:calc(50% - .75rem);width:1.5rem;height:1.5rem;border:2px solid transparent;border-left-color:currentColor;border-radius:50%;opacity:0;animation:mwPglSpin .8s linear infinite;transition:opacity .1s linear}
.mw-pgl__stage.is-loading .mw-pgl__loader{opacity:.75}
.mw-pgl__nav{position:absolute;z-index:3;top:50%;transform:translateY(-50%)}
.mw-pgl__prev{left:1rem}
.mw-pgl__next{right:1rem}
.mw-pgl__next svg{transform:rotate(180deg)}
.mw-pgl__thumb-nav{position:relative;z-index:4;border-top:1px solid rgba(127,127,127,.25)}
.mw-pgl__thumbs{display:flex;gap:.625rem;align-items:center;padding:.75rem max(.75rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom)) max(.75rem,env(safe-area-inset-left));overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}
.mw-pgl__thumb{appearance:none;flex:0 0 4.5rem;width:4.5rem;height:4.5rem;margin:0;padding:.1875rem;overflow:hidden;border:1px solid rgba(127,127,127,.35);border-radius:6px;background:transparent;cursor:pointer;opacity:.65;transition:opacity .15s linear}
.mw-pgl__thumb[aria-current="true"]{border:2px solid currentColor;opacity:1}
.mw-pgl__thumb img{display:block;width:100%!important;height:100%!important;object-fit:contain;margin:0}
@keyframes mwPglReveal{from{opacity:0}to{opacity:1}}
@keyframes mwPglSpin{to{transform:rotate(360deg)}}
@media screen and (max-width:767px){
.mw-pgl__dialog{width:100vw;height:100dvh}
.mw-pgl__layout{grid-template-rows:3.25rem minmax(0,1fr) auto}
.mw-pgl__close{top:.25rem;right:.5rem}
.mw-pgl__control{width:2.5rem;height:2.5rem}
.mw-pgl__prev{left:.5rem}
.mw-pgl__next{right:.5rem}
.mw-pgl__thumb{flex-basis:3.5rem;width:3.5rem;height:3.5rem}
.mw-pgl__thumbs{gap:.5rem;padding-top:.5rem}
}
@media (prefers-reduced-motion:reduce){
.mw-pg .mw-pg__track{scroll-behavior:auto}
.mw-pg .mw-pg__viewport,.mw-pgl__image,.mw-pgl__control,.mw-pgl__thumb{transition:none}
.mw-pgl__dialog[open]{animation:none}
}

/* ==================================================================
   Button-Reset: schützt alle Galerie-Buttons vor globalen
   Elementor-/Theme-Button-Styles (Farbe, Padding, Radius, Hover …)
   ================================================================== */
.mw-pg button,.mw-pg button:hover,.mw-pg button:focus,.mw-pg button:active,
.mw-pgl__dialog button,.mw-pgl__dialog button:hover,.mw-pgl__dialog button:focus,.mw-pgl__dialog button:active{
  -webkit-appearance:none!important;appearance:none!important;
  margin:0!important;padding:0!important;
  min-width:0!important;min-height:0!important;max-width:none!important;
  box-shadow:none!important;text-shadow:none!important;
  font-size:0!important;line-height:1!important;letter-spacing:0!important;text-transform:none!important;text-decoration:none!important;
  background-image:none!important;
  transition:opacity .15s linear,border-color .15s linear!important;
}
.mw-pg button svg,.mw-pgl__dialog button svg{display:block!important;flex:0 0 auto!important;pointer-events:none!important}

/* Lightbox: Schliessen / Pfeile */
.mw-pgl__dialog button.mw-pgl__control,
.mw-pgl__dialog button.mw-pgl__control:hover,
.mw-pgl__dialog button.mw-pgl__control:focus,
.mw-pgl__dialog button.mw-pgl__control:active{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:2.75rem!important;height:2.75rem!important;
  border:1px solid rgba(127,127,127,.35)!important;border-radius:50%!important;
  background:var(--mw-pg-lb-bg,#fff)!important;color:var(--mw-pg-lb-text,#111)!important;
}
.mw-pgl__dialog button.mw-pgl__control svg{width:14px!important;height:14px!important;color:var(--mw-pg-lb-text,#111)!important}
.mw-pgl__dialog button.mw-pgl__control:hover{border-color:var(--mw-pg-lb-text,#111)!important}
.mw-pgl__dialog button.mw-pgl__control:disabled{opacity:.25!important;cursor:default!important;border-color:rgba(127,127,127,.35)!important}
.mw-pgl__dialog button.mw-pgl__close{position:absolute!important;top:.5rem!important;right:.75rem!important;left:auto!important}
.mw-pgl__dialog button.mw-pgl__nav,
.mw-pgl__dialog button.mw-pgl__nav:hover,
.mw-pgl__dialog button.mw-pgl__nav:focus,
.mw-pgl__dialog button.mw-pgl__nav:active{position:absolute!important;top:50%!important;transform:translateY(-50%)!important}
.mw-pgl__dialog button.mw-pgl__prev{left:1rem!important;right:auto!important}
.mw-pgl__dialog button.mw-pgl__next{right:1rem!important;left:auto!important}
.mw-pgl__dialog button.mw-pgl__next svg{transform:rotate(180deg)!important}

/* Lightbox: Thumbnails */
.mw-pgl__dialog button.mw-pgl__thumb,
.mw-pgl__dialog button.mw-pgl__thumb:hover,
.mw-pgl__dialog button.mw-pgl__thumb:focus,
.mw-pgl__dialog button.mw-pgl__thumb:active{
  display:block!important;flex:0 0 4.5rem!important;width:4.5rem!important;height:4.5rem!important;
  padding:.1875rem!important;overflow:hidden!important;
  border:1px solid rgba(127,127,127,.35)!important;border-radius:6px!important;
  background:transparent!important;color:var(--mw-pg-lb-text,#111)!important;opacity:.65!important;
}
.mw-pgl__dialog button.mw-pgl__thumb:hover{opacity:.9!important}
.mw-pgl__dialog button.mw-pgl__thumb[aria-current="true"]{border:2px solid var(--mw-pg-lb-text,#111)!important;opacity:1!important}
.mw-pgl__dialog button.mw-pgl__thumb img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;margin:0!important;border-radius:0!important}

/* Galerie: Pfeile */
.mw-pg button.mw-pg__arrow,
.mw-pg button.mw-pg__arrow:hover,
.mw-pg button.mw-pg__arrow:focus,
.mw-pg button.mw-pg__arrow:active{
  position:absolute!important;top:50%!important;margin-top:-20px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:40px!important;height:40px!important;
  border:1px solid var(--mw-pg-line)!important;border-radius:50%!important;
  background:#fff!important;color:var(--mw-pg-ui)!important;
  box-shadow:0 2px 8px rgba(0,0,0,.06)!important;transform:none!important;
}
.mw-pg button.mw-pg__arrow svg{width:9px!important;height:13px!important}
.mw-pg button.mw-pg__arrow--prev{left:12px!important;right:auto!important}
.mw-pg button.mw-pg__arrow--next{right:12px!important;left:auto!important}
.mw-pg button.mw-pg__arrow--next svg{transform:rotate(180deg)!important}
.mw-pg button.mw-pg__arrow:disabled{opacity:0!important;pointer-events:none!important}

/* Galerie: Thumbnails */
.mw-pg button.mw-pg__thumb,
.mw-pg button.mw-pg__thumb:hover,
.mw-pg button.mw-pg__thumb:focus,
.mw-pg button.mw-pg__thumb:active{
  display:block!important;flex:0 0 var(--mw-pg-thumb)!important;width:var(--mw-pg-thumb)!important;height:var(--mw-pg-thumb)!important;
  overflow:hidden!important;border:1px solid var(--mw-pg-line)!important;border-radius:calc(var(--mw-pg-radius) * .6)!important;
  background:var(--mw-pg-slide-bg)!important;color:var(--mw-pg-ui)!important;opacity:.6!important;
}
.mw-pg button.mw-pg__thumb:hover{opacity:.9!important}
.mw-pg button.mw-pg__thumb[aria-current="true"]{border:2px solid var(--mw-pg-ui)!important;opacity:1!important}

/* Galerie: Punkte */
.mw-pg button.mw-pg__dot,
.mw-pg button.mw-pg__dot:hover,
.mw-pg button.mw-pg__dot:focus,
.mw-pg button.mw-pg__dot:active{
  display:block!important;width:8px!important;height:8px!important;
  border:0!important;border-radius:50%!important;background:var(--mw-pg-line)!important;transform:none!important;
}
.mw-pg button.mw-pg__dot[aria-current="true"]{background:var(--mw-pg-ui)!important;transform:scale(1.25)!important}

@media screen and (max-width:767px){
  .mw-pgl__dialog button.mw-pgl__control,.mw-pgl__dialog button.mw-pgl__control:hover,.mw-pgl__dialog button.mw-pgl__control:focus{width:2.5rem!important;height:2.5rem!important}
  .mw-pgl__dialog button.mw-pgl__close{top:.25rem!important;right:.5rem!important}
  .mw-pgl__dialog button.mw-pgl__prev{left:.5rem!important}
  .mw-pgl__dialog button.mw-pgl__next{right:.5rem!important}
  .mw-pgl__dialog button.mw-pgl__thumb,.mw-pgl__dialog button.mw-pgl__thumb:hover,.mw-pgl__dialog button.mw-pgl__thumb:focus{flex-basis:3.5rem!important;width:3.5rem!important;height:3.5rem!important}
}
