/* KlawoShop 0.6.21 — professional product price and accessible product gallery. */
.product-detail{align-items:start}
.product-detail .klw-gallery{min-width:0}
.product-detail .detail-visual{height:auto;min-height:0;aspect-ratio:1 / 1;overflow:hidden}
.klw-gallery-main{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:clamp(18px,3vw,45px);position:relative;cursor:zoom-in}
.klw-gallery-main img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;display:block;transition:transform .22s ease}
.klw-gallery-main:hover img{transform:scale(1.025)}
.klw-gallery-zoom{display:inline-flex;align-items:center;gap:6px;position:absolute;bottom:15px;right:16px;background:#ffffffed;color:#7b2853;border:1px solid #f1d7e2;border-radius:100px;padding:7px 12px;font-size:12px;font-weight:750;box-shadow:0 5px 15px #530d2a0c}
.klw-gallery-zoom span{font-size:22px;line-height:15px}
.klw-gallery-thumbs{display:flex;gap:10px;overflow-x:auto;padding:13px 3px 6px;scrollbar-width:thin}
.klw-gallery-thumb{flex:0 0 82px;width:82px;height:82px;display:grid;place-items:center;border:2px solid #eadde4;border-radius:10px;background:#fff;overflow:hidden;padding:5px;transition:border-color .15s,box-shadow .15s}
.klw-gallery-thumb img{width:100%;height:100%;object-fit:contain}
.klw-gallery-thumb:hover{border-color:#cb5586}
.klw-gallery-thumb.is-selected,.klw-gallery-thumb[aria-pressed="true"]{border-color:#c91668;box-shadow:0 0 0 2px #fae4ee}
.klw-product-price-block{margin:25px 0 18px;padding:5px 0 3px;display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 10px}
.klw-product-price-label{color:#755f6a;font-size:14px;font-weight:650;flex-basis:100%}
.klw-product-price{font-family:Inter,'Segoe UI',Arial,sans-serif;font-weight:830;font-size:clamp(34px,3.6vw,50px);line-height:1.08;letter-spacing:-.035em;color:#ac1256;white-space:nowrap;font-variant-numeric:tabular-nums}
.klw-product-price span{font-size:.54em;letter-spacing:0;font-weight:700}
.klw-product-price-tax{font-size:12px;color:#80717b;font-weight:600}
.klw-product-price-missing{font-size:19px;font-weight:750;color:#735864}
.klw-unavailable{font-size:13px;color:#7c6270;margin:15px 0}
/* KlawoShop 0.6.22 — gallery lightbox geometry correction. */
.klw-gallery-dialog{
  box-sizing:border-box;
  border:0;
  border-radius:18px;
  padding:0;
  width:min(960px,calc(100vw - 28px));
  height:min(760px,calc(100dvh - 28px));
  max-width:none;
  max-height:calc(100dvh - 28px);
  background:#fff;
  box-shadow:0 30px 85px #10051077;
  color:#49233b;
  overflow:hidden;
}
.klw-gallery-dialog::backdrop{background:rgba(20,8,19,.88)}
/* Explicit, bounded lightbox stage: tall photos cannot expand a grid track
   or fall beyond the lower edge of the dialog. */
.klw-gallery-dialog-inner{
  box-sizing:border-box;
  position:relative;
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  overflow:hidden;
  padding:0;
}
.klw-gallery-dialog-inner [data-gallery-full]{
  position:absolute;
  display:block;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:auto;
  height:auto;
  max-width:calc(100% - 124px);
  max-height:calc(100% - 90px);
  object-fit:contain;
}
.klw-gallery-close,.klw-gallery-arrow{
  box-sizing:border-box;
  border:1px solid #eedce6;
  background:#fff;
  color:#4e2340;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  box-shadow:0 3px 18px #240b2016;
  position:absolute;
  z-index:2;
}
.klw-gallery-close{width:40px;height:40px;top:10px;right:10px;font-size:28px;line-height:1}
.klw-gallery-arrow{
  height:43px;
  width:43px;
  top:50%;
  transform:translateY(-50%);
  font-size:0;/* Hide the font chevron: font metrics shifted its visual centre. */
  line-height:0;
}
/* Draw stable, geometrically centred chevrons, independently of the font. */
.klw-gallery-arrow::after{
  content:"";
  box-sizing:border-box;
  display:block;
  width:11px;
  height:11px;
  border-top:2px solid currentColor;
  border-right:2px solid currentColor;
}
.klw-gallery-prev{left:8px}
.klw-gallery-next{right:8px}
.klw-gallery-prev::after{transform:translateX(2px) rotate(-135deg)}
.klw-gallery-next::after{transform:translateX(-2px) rotate(45deg)}
.klw-gallery-arrow[hidden]{display:none}
.klw-gallery-close:hover,.klw-gallery-arrow:hover{background:#fff0f6;border-color:#dc93b4}
.klw-gallery-counter{
  position:absolute;
  bottom:11px;
  left:50%;
  transform:translateX(-50%);
  color:#6c5360;
  font-size:12px;
  font-variant-numeric:tabular-nums;
}
@media(max-width:700px){
  .product-detail .detail-visual{aspect-ratio:1/1}
  .klw-gallery-main{padding:16px}
  .klw-gallery-thumb{width:69px;height:69px;flex-basis:69px}
  .klw-gallery-dialog-inner [data-gallery-full]{
    max-width:calc(100% - 82px);
    max-height:calc(100% - 76px);
  }
  .klw-gallery-arrow{width:35px;height:35px}
  .klw-gallery-arrow::after{width:9px;height:9px}
  .klw-gallery-prev{left:3px}
  .klw-gallery-next{right:3px}
}
@media(prefers-reduced-motion:reduce){.klw-gallery-main img,.klw-gallery-thumb{transition:none}}
