/*
  IONTMAX product detail – cart/checkout tokens
  Safe overrides: does NOT replace Shoptet grid/columns
*/

body.type-detail,
body.in-detail,
body.type-product.type-detail {
  --ipp-max: var(--im-max, 1800px);
  --ipp-pad: clamp(16px, 4vw, 32px);
  --ipp-text: #111214;
  --ipp-muted: #6b7280;
  --ipp-line: #ececec;
  --ipp-soft: #f6f6f6;
  --ipp-card: #ffffff;
  --ipp-accent: #303233;
  --ipp-radius: 14px;
  --ipp-radius-sm: 12px;
  --ipp-gap: 48px;
  --ipp-gap-sm: 32px;
}

body.type-detail,
body.in-detail,
body.type-product.type-detail {
  --ipp-pdp-left-col: minmax(0, 1.05fr);
  --ipp-pdp-right-col: minmax(0, 0.95fr);
  --ipp-pdp-left-width: calc((100% - var(--ipp-gap)) * 1.05 / 2);
}

/* Page shell – white background */
body.type-detail,
body.in-detail {
  background: #fff !important;
}

body.type-detail #content-wrapper.content-wrapper,
body.in-detail #content-wrapper.content-wrapper,
body.type-detail .content-wrapper-in,
body.in-detail .content-wrapper-in {
  background: #fff !important;
}

body.type-detail .content-inner,
body.in-detail .content-inner {
  width: min(calc(100% - (var(--ipp-pad) * 2)), var(--ipp-max)) !important;
  max-width: var(--ipp-max) !important;
  margin: 0 auto !important;
  padding: 28px 0 52px !important;
}

body.type-detail #content.content,
body.in-detail #content.content {
  background: transparent !important;
}

/* ─── Vilgain PDP layout ─── */

body.type-detail .row.product-top,
body.in-detail .row.product-top,
body.type-product.type-detail .row.product-top {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: var(--ipp-gap-sm) !important;
  margin: 0 !important;
  padding: 0 var(--ipp-pad) !important;
  width: 100% !important;
}

body.type-detail .row.product-top::before,
body.type-detail .row.product-top::after,
body.in-detail .row.product-top::before,
body.in-detail .row.product-top::after {
  display: none !important;
  content: none !important;
}

body.type-detail .row.product-top > [class*="col-"],
body.in-detail .row.product-top > [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}

@media (min-width: 992px) {
  body.type-detail .row.product-top,
  body.in-detail .row.product-top {
    grid-template-columns: var(--ipp-pdp-left-col) var(--ipp-pdp-right-col) !important;
    gap: var(--ipp-gap) !important;
    align-items: start !important;
  }

  /* Shared col (fotka + buy box v jednom col-*) must span full product-top,
     otherwise the outer 2-col grid leaves an empty right track. */
  body.type-detail .row.product-top > [class*="col-"].ipp-pdp-shared-col,
  body.in-detail .row.product-top > [class*="col-"].ipp-pdp-shared-col,
  body.type-detail .row.product-top > [class*="col-"]:has(> .p-image-wrapper):has(> .p-info-wrapper),
  body.in-detail .row.product-top > [class*="col-"]:has(> .p-image-wrapper):has(> .p-info-wrapper) {
    display: grid !important;
    grid-column: 1 / -1 !important;
    grid-template-columns: var(--ipp-pdp-left-col) var(--ipp-pdp-right-col) !important;
    gap: var(--ipp-gap) !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.type-detail .row.product-top > [class*="col-"].ipp-pdp-shared-col > .p-image-wrapper,
  body.in-detail .row.product-top > [class*="col-"].ipp-pdp-shared-col > .p-image-wrapper {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  body.type-detail .row.product-top > [class*="col-"].ipp-pdp-shared-col > .p-info-wrapper,
  body.in-detail .row.product-top > [class*="col-"].ipp-pdp-shared-col > .p-info-wrapper {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  body.type-detail .row.product-top > [class*="col-"]:has(> .p-image-wrapper):has(> .p-info-wrapper) > .p-image-wrapper,
  body.in-detail .row.product-top > [class*="col-"]:has(> .p-image-wrapper):has(> .p-info-wrapper) > .p-image-wrapper {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.type-detail .row.product-top > [class*="col-"]:has(> .p-image-wrapper):has(> .p-info-wrapper) > .p-info-wrapper,
  body.in-detail .row.product-top > [class*="col-"]:has(> .p-image-wrapper):has(> .p-info-wrapper) > .p-info-wrapper {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.type-detail .p-info-wrapper,
  body.in-detail .p-info-wrapper {
    position: sticky !important;
    top: 96px !important;
    align-self: start !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail,
  body.ipp-pdp-desc-in-gallery.in-detail {
    --ipp-pdp-stack-gap: 18px;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-gallery.ipp-gallery--has-lifestyle-row,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-gallery.ipp-gallery--has-lifestyle-row {
    gap: var(--ipp-pdp-stack-gap) !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--ipp-pdp-stack-gap) !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 0 var(--ipp-pdp-stack-gap) !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot > .iontmax-product-content,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot > .iontmax-product-content,
  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot > .ipp,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot > .ipp {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--ipp-pdp-stack-gap) !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-product-nav-wrap,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-product-nav-wrap,
  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-section,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-section,
  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-rating-inline,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-rating-inline,
  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot #ipp-rating-content,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot #ipp-rating-content,
  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot #iontmax-rating-content,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot #iontmax-rating-content {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-product-content,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-product-content,
  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot .ipp,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot .ipp,
  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot .description-inner,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot .description-inner,
  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-product-nav-wrap,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-product-nav-wrap,
  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-section,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-section,
  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-rating-inline,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot .iontmax-rating-inline,
  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot #ipp-rating-content,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot #ipp-rating-content,
  body.ipp-pdp-desc-in-gallery.type-detail .p-image-wrapper .ipp-pdp-desc-slot #iontmax-rating-content,
  body.ipp-pdp-desc-in-gallery.in-detail .p-image-wrapper .ipp-pdp-desc-slot #iontmax-rating-content {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .p-detail-tabs-wrapper.ipp-pdp-desc-moved > .row > [class*="col-"]:first-child,
  body.ipp-pdp-desc-in-gallery.in-detail .p-detail-tabs-wrapper.ipp-pdp-desc-moved > .row > [class*="col-"]:first-child {
    display: none !important;
  }

  body.type-detail .p-detail-tabs-wrapper .ipp-pdp-supplementary-hidden,
  body.in-detail .p-detail-tabs-wrapper .ipp-pdp-supplementary-hidden,
  body.type-detail .p-detail-tabs-wrapper > .row > [class*="col-"]:last-child:not(:only-child),
  body.in-detail .p-detail-tabs-wrapper > .row > [class*="col-"]:last-child:not(:only-child) {
    display: none !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .p-detail-tabs-wrapper.ipp-pdp-desc-moved,
  body.ipp-pdp-desc-in-gallery.in-detail .p-detail-tabs-wrapper.ipp-pdp-desc-moved {
    display: none !important;
    pointer-events: none !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .p-detail-inner,
  body.ipp-pdp-desc-in-gallery.in-detail .p-detail-inner {
    display: grid !important;
    grid-template-columns: var(--ipp-pdp-left-col) var(--ipp-pdp-right-col) !important;
    gap: var(--ipp-pdp-stack-gap, 18px) var(--ipp-gap) !important;
    align-items: start !important;
    padding-bottom: var(--ipp-pdp-stack-gap) !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail #product-detail-form,
  body.ipp-pdp-desc-in-gallery.in-detail #product-detail-form {
    grid-column: 1 / -1 !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .ipp-pdp-rating-outside-host,
  body.ipp-pdp-desc-in-gallery.in-detail .ipp-pdp-rating-outside-host {
    display: none !important;
    pointer-events: none !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .ipp-inline-rating-form-host,
  body.ipp-pdp-desc-in-gallery.in-detail .ipp-inline-rating-form-host {
    display: none !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .ipp-pdp-desc-slot > .description-inner .extended-description,
  body.ipp-pdp-desc-in-gallery.in-detail .ipp-pdp-desc-slot > .description-inner .extended-description,
  body.ipp-pdp-desc-in-gallery.type-detail .ipp-pdp-desc-slot .ipp-pdp-supplementary-hidden,
  body.ipp-pdp-desc-in-gallery.in-detail .ipp-pdp-desc-slot .ipp-pdp-supplementary-hidden {
    display: none !important;
    pointer-events: none !important;
  }

  body.ipp-pdp-desc-in-gallery.type-detail .ipp-pdp-desc-slot > .description-inner:not(:has(.iontmax-product-content)):not(:has(.ipp)),
  body.ipp-pdp-desc-in-gallery.in-detail .ipp-pdp-desc-slot > .description-inner:not(:has(.iontmax-product-content)):not(:has(.ipp)) {
    display: none !important;
    pointer-events: none !important;
  }

  body.type-detail .ipp-gallery.ipp-gallery--has-lifestyle-row .ipp-gallery__thumbs-wrap,
  body.in-detail .ipp-gallery.ipp-gallery--has-lifestyle-row .ipp-gallery__thumbs-wrap,
  body.ipp-lifestyle-gallery-ready.type-detail .ipp-gallery.ipp-gallery--has-lifestyle-row .ipp-gallery__thumbs-wrap,
  body.ipp-lifestyle-gallery-ready.in-detail .ipp-gallery.ipp-gallery--has-lifestyle-row .ipp-gallery__thumbs-wrap {
    display: none !important;
  }
}

body.type-detail .p-image-wrapper,
body.in-detail .p-image-wrapper,
body.type-detail .p-info-wrapper,
body.in-detail .p-info-wrapper {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
}

body.type-detail .p-info-wrapper .p-detail-inner-header,
body.in-detail .p-info-wrapper .p-detail-inner-header {
  margin: 0 0 10px !important;
  padding: 0 !important;
}

body.type-detail .p-info-wrapper .p-detail-inner-header h1,
body.in-detail .p-info-wrapper .p-detail-inner-header h1 {
  margin: 0 !important;
  color: var(--ipp-text) !important;
  font-size: clamp(26px, 2.8vw, 36px) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.03em !important;
  text-transform: none !important;
}

body.type-detail .p-info-wrapper .ipp-vilgain-meta,
body.in-detail .p-info-wrapper .ipp-vilgain-meta,
body.type-detail .p-info-wrapper .p-detail-info,
body.in-detail .p-info-wrapper .p-detail-info {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px 14px !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  color: var(--ipp-muted) !important;
  font-size: 13px !important;
}

body.type-detail .p-info-wrapper .p-detail-info a,
body.in-detail .p-info-wrapper .p-detail-info a {
  color: var(--ipp-text) !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

body.type-detail .p-final-price-wrapper,
body.in-detail .p-final-price-wrapper {
  margin: 0 0 20px !important;
}

body.type-detail .detail-parameters,
body.in-detail .detail-parameters {
  margin: 0 0 20px !important;
}

body.type-detail .add-to-cart,
body.in-detail .add-to-cart {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin: 0 0 24px !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart,
body.ipp-checkout-split-ready.in-detail .add-to-cart {
  margin: 0 !important;
}

body.type-detail .add-to-cart .btn,
body.in-detail .add-to-cart .btn {
  width: 100% !important;
}

body.type-detail .p-short-description,
body.in-detail .p-short-description {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* ─── Buy box v1 (canvas) ─── */

body.ipp-buy-v1-ready.type-detail .ipp-buy-category,
body.ipp-buy-v1-ready.in-detail .ipp-buy-category {
  display: inline-block !important;
  margin: 0 0 8px !important;
  color: var(--ipp-muted) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

body.ipp-buy-v1-ready.type-detail a.ipp-buy-category:hover,
body.ipp-buy-v1-ready.in-detail a.ipp-buy-category:hover {
  color: var(--ipp-text) !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .p-detail-inner-header,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .p-detail-inner-header {
  margin: 0 0 0 !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .p-detail-inner-header h1,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .p-detail-inner-header h1 {
  margin: 0 !important;
  font-size: clamp(30px, 3.1vw, 36px) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.03em !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-vilgain-meta,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-vilgain-meta,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .p-detail-info,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .p-detail-info {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  margin: 10px 0 0 !important;
  padding: 0 0 18px !important;
  border-bottom: 1px solid var(--ipp-line) !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-flags-row,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-flags-row {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 5px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-flags-row::-webkit-scrollbar,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-flags-row::-webkit-scrollbar {
  display: none !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-flags-row .flags,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-flags-row .flags,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-flags-row .flags-default,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-flags-row .flags-default,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-flags-row .flags-extra,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-flags-row .flags-extra {
  display: flex !important;
  flex-wrap: nowrap !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  gap: 5px !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-vilgain-meta .flags,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-vilgain-meta .flags,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-vilgain-meta .flags-default,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-vilgain-meta .flags-default,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-vilgain-meta .flags-extra,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-vilgain-meta .flags-extra,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .p-detail-info .flags,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .p-detail-info .flags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-rating-row,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-rating-row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px 12px !important;
  width: 100% !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  color: var(--ipp-muted) !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-rating-row .stars-label,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-rating-row .stars-label,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-rating-row .show-stars,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-rating-row .show-stars,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-rating-row .rate-wrap,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-rating-row .rate-wrap,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .stars-label,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .stars-label,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .show-stars,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .show-stars,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .rate-wrap,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .rate-wrap {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
  color: var(--ipp-muted) !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-rating-row a[href*="rating"],
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-rating-row a[href*="rating"],
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .stars-label a[href*="rating"],
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .stars-label a[href*="rating"],
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .show-stars a[href*="rating"],
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .show-stars a[href*="rating"] {
  color: var(--ipp-muted) !important;
  text-decoration: none !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-rating-row .stars,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-rating-row .stars,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-rating-row .stars-wrapper,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-rating-row .stars-wrapper,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .stars,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .stars,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .stars-wrapper,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .stars-wrapper {
  filter: grayscale(1) !important;
  opacity: 0.45 !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .stars-label .rate-decimal,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .stars-label .rate-decimal,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .stars-label .rate-average span,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .stars-label .rate-average span,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-rating-row .stars-label span,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-rating-row .stars-label span {
  display: inline !important;
  font-size: inherit !important;
  line-height: inherit !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-flags-row .flag,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-flags-row .flag,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .ipp-buy-flags-row .flags .flag,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .ipp-buy-flags-row .flags .flag,
body.type-detail .p-info-wrapper .flags .flag,
body.in-detail .p-info-wrapper .flags .flag,
body.type-detail .p-info-wrapper .p-detail-info .flag,
body.in-detail .p-info-wrapper .p-detail-info .flag,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  position: static !important;
  float: none !important;
  width: max-content !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 5px 10px !important;
  border: 1px solid var(--ipp-line) !important;
  border-radius: 6px !important;
  background: var(--ipp-soft) !important;
  color: var(--ipp-muted) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  transform: none !important;
  inset: auto !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
}

body.type-detail .p-info-wrapper .flag::before,
body.in-detail .p-info-wrapper .flag::before,
body.type-detail .p-info-wrapper .flag::after,
body.in-detail .p-info-wrapper .flag::after,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag::before,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag::before,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag::after,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag::after {
  content: none !important;
  display: none !important;
}

body.type-detail .p-info-wrapper .flag > span,
body.in-detail .p-info-wrapper .flag > span,
body.type-detail .p-info-wrapper .flag > strong,
body.in-detail .p-info-wrapper .flag > strong,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag > span,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag > span,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag > strong,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag > strong {
  display: inline !important;
  position: static !important;
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  line-height: inherit !important;
}

body.type-detail .p-info-wrapper .flag-action,
body.in-detail .p-info-wrapper .flag-action,
body.type-detail .p-info-wrapper .flag-new,
body.in-detail .p-info-wrapper .flag-new,
body.type-detail .p-info-wrapper .flag-tip,
body.in-detail .p-info-wrapper .flag-tip,
body.type-detail .p-info-wrapper .flag-sale,
body.in-detail .p-info-wrapper .flag-sale,
body.type-detail .p-info-wrapper .flag-custom1,
body.in-detail .p-info-wrapper .flag-custom1,
body.type-detail .p-info-wrapper .flag-custom2,
body.in-detail .p-info-wrapper .flag-custom2,
body.type-detail .p-info-wrapper .flag-custom3,
body.in-detail .p-info-wrapper .flag-custom3,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag-action,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag-action,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag-new,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag-new,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag-tip,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag-tip,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag-sale,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag-sale,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag-custom1,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag-custom1,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag-custom2,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag-custom2,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag-custom3,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag-custom3 {
  background: var(--ipp-soft) !important;
  color: var(--ipp-muted) !important;
  border-color: var(--ipp-line) !important;
}

body.type-detail .p-info-wrapper .flag.flag-discount,
body.in-detail .p-info-wrapper .flag.flag-discount,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .flag.flag-discount,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .flag.flag-discount {
  display: none !important;
}

body.type-detail .ipp-buy-price-row,
body.in-detail .ipp-buy-price-row,
body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row {
  --ipp-buy-price-size: clamp(30px, 3vw, 34px);
  display: flex !important;
  flex-flow: column nowrap !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  margin: 12px 0 16px !important;
  width: 100% !important;
}

body.type-detail .ipp-buy-price-row .p-final-price-wrapper,
body.in-detail .ipp-buy-price-row .p-final-price-wrapper {
  margin: 0 !important;
}

body.type-detail .ipp-buy-price-row .p-final-price-wrapper,
body.in-detail .ipp-buy-price-row .p-final-price-wrapper,
body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .p-final-price-wrapper,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .p-final-price-wrapper {
  flex: 0 0 auto !important;
  margin: 0 !important;
  min-width: 0 !important;
  align-self: flex-start !important;
  justify-content: flex-start !important;
}

body.type-detail .ipp-buy-price-row .availability.ipp-buy-stock,
body.in-detail .ipp-buy-price-row .availability.ipp-buy-stock,
body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .availability.ipp-buy-stock,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .availability.ipp-buy-stock {
  flex: 0 0 auto !important;
  margin: 0 !important;
  align-self: flex-start !important;
}

body.type-detail .p-info-wrapper .price-additional,
body.in-detail .p-info-wrapper .price-additional,
body.type-detail .p-info-wrapper .ipp-buy-price-dph,
body.in-detail .p-info-wrapper .ipp-buy-price-dph,
body.type-detail .ipp-buy-price-row .ipp-buy-price-dph,
body.in-detail .ipp-buy-price-row .ipp-buy-price-dph,
body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .ipp-buy-price-dph,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .ipp-buy-price-dph,
body.type-detail .ipp-buy-price-row .price-additional,
body.in-detail .ipp-buy-price-row .price-additional,
body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .price-additional,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .price-additional,
body.type-detail .ipp-buy-price-row .p-final-price-wrapper .price-additional,
body.in-detail .ipp-buy-price-row .p-final-price-wrapper .price-additional,
body.type-detail .ipp-buy-price-row .p-final-price-wrapper .ipp-buy-price-dph,
body.in-detail .ipp-buy-price-row .p-final-price-wrapper .ipp-buy-price-dph,
body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .p-final-price-wrapper .price-additional,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .p-final-price-wrapper .price-additional {
  display: none !important;
}

@media (max-width: 767px) {
  body.type-detail .ipp-buy-price-row,
  body.in-detail .ipp-buy-price-row,
  body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row,
  body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row {
    margin: 12px 0 12px !important;
    gap: 8px !important;
  }

  body.type-detail .ipp-buy-price-row .availability.ipp-buy-stock,
  body.in-detail .ipp-buy-price-row .availability.ipp-buy-stock,
  body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .availability.ipp-buy-stock,
  body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .availability.ipp-buy-stock {
    margin: 0 !important;
    max-width: 100% !important;
  }
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .price-final,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .price-final {
  font-size: var(--ipp-buy-price-size, clamp(30px, 3vw, 34px)) !important;
  letter-spacing: -0.02em !important;
  line-height: 1 !important;
  height: auto !important;
  min-height: 0 !important;
  display: inline-flex !important;
  align-items: baseline !important;
  white-space: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ─── Sale discount: price row (standard + %) ─── */
body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .p-final-price-wrapper,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .p-final-price-wrapper,
body.type-detail .ipp-buy-price-row .p-final-price-wrapper,
body.in-detail .ipp-buy-price-row .p-final-price-wrapper {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 6px !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .price-standard,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .price-standard,
body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .price-save,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .price-save,
body.type-detail .p-final-price-wrapper .price-standard,
body.in-detail .p-final-price-wrapper .price-standard,
body.type-detail .p-final-price-wrapper .price-save,
body.in-detail .p-final-price-wrapper .price-save {
  display: inline-flex !important;
  align-items: center !important;
  visibility: visible !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .price-standard,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .price-standard,
body.type-detail .p-final-price-wrapper .price-standard,
body.in-detail .p-final-price-wrapper .price-standard {
  margin: 0 !important;
  padding: 0 !important;
  color: var(--ipp-muted) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  text-decoration: line-through !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .price-standard > span,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .price-standard > span,
body.type-detail .p-final-price-wrapper .price-standard > span,
body.in-detail .p-final-price-wrapper .price-standard > span {
  display: inline !important;
  text-decoration: line-through !important;
  color: inherit !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .price-save,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .price-save,
body.type-detail .p-final-price-wrapper .price-save,
body.in-detail .p-final-price-wrapper .price-save {
  margin: 0 0 0 8px !important;
  padding: 3px 8px !important;
  border: 0 !important;
  border-radius: 6px !important;
  background: var(--ipp-text) !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.01em !important;
  text-decoration: none !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .price-save > span,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .price-save > span,
body.type-detail .p-final-price-wrapper .price-save > span,
body.in-detail .p-final-price-wrapper .price-save > span {
  display: inline !important;
  color: inherit !important;
  text-decoration: none !important;
}

/* Keep standard + % on one line above final price */
body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .p-final-price-wrapper > .price-standard,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .p-final-price-wrapper > .price-standard,
body.type-detail .p-final-price-wrapper > .price-standard,
body.in-detail .p-final-price-wrapper > .price-standard {
  order: 1 !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .p-final-price-wrapper > .price-save,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .p-final-price-wrapper > .price-save,
body.type-detail .p-final-price-wrapper > .price-save,
body.in-detail .p-final-price-wrapper > .price-save {
  order: 1 !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .p-final-price-wrapper > .price-final,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .p-final-price-wrapper > .price-final,
body.type-detail .p-final-price-wrapper > .price-final,
body.in-detail .p-final-price-wrapper > .price-final {
  order: 2 !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .p-final-price-wrapper:has(> .price-standard),
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .p-final-price-wrapper:has(> .price-standard),
body.type-detail .p-final-price-wrapper:has(> .price-standard),
body.in-detail .p-final-price-wrapper:has(> .price-standard) {
  flex-flow: row wrap !important;
  align-items: baseline !important;
  column-gap: 0 !important;
  row-gap: 4px !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .p-final-price-wrapper:has(> .price-standard) > .price-final,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .p-final-price-wrapper:has(> .price-standard) > .price-final,
body.type-detail .p-final-price-wrapper:has(> .price-standard) > .price-final,
body.in-detail .p-final-price-wrapper:has(> .price-standard) > .price-final {
  flex: 0 0 100% !important;
  width: 100% !important;
}

/* ─── Sale discount badge on packshot (.flags-extra circle) ─── */
body.type-detail .p-image-wrapper .flags-extra,
body.in-detail .p-image-wrapper .flags-extra,
body.ipp-gallery-ready.type-detail .p-image-wrapper .flags-extra,
body.ipp-gallery-ready.in-detail .p-image-wrapper .flags-extra,
body.ipp-gallery-ready.type-detail .ipp-gallery__stage .flags-extra,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage .flags-extra,
body.ipp-gallery-ready.type-detail .p-image .flags-extra,
body.ipp-gallery-ready.in-detail .p-image .flags-extra {
  position: absolute !important;
  z-index: 6 !important;
  right: 12px !important;
  bottom: 12px !important;
  left: auto !important;
  top: auto !important;
  display: flex !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
}

body.type-detail .p-image-wrapper .flags-extra .flag,
body.in-detail .p-image-wrapper .flags-extra .flag,
body.ipp-gallery-ready.type-detail .p-image-wrapper .flags-extra .flag,
body.ipp-gallery-ready.in-detail .p-image-wrapper .flags-extra .flag,
body.ipp-gallery-ready.type-detail .ipp-gallery__stage .flags-extra .flag,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage .flags-extra .flag,
body.ipp-gallery-ready.type-detail .p-image .flags-extra .flag,
body.ipp-gallery-ready.in-detail .p-image .flags-extra .flag {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 2px !important;
  box-sizing: border-box !important;
  width: 88px !important;
  height: 88px !important;
  min-width: 88px !important;
  min-height: 88px !important;
  margin: 0 !important;
  padding: 8px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: var(--ipp-text, #111214) !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18) !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

body.type-detail .p-image-wrapper .flags-extra .flag .price-standard,
body.in-detail .p-image-wrapper .flags-extra .flag .price-standard,
body.ipp-gallery-ready.type-detail .p-image-wrapper .flags-extra .flag .price-standard,
body.ipp-gallery-ready.in-detail .p-image-wrapper .flags-extra .flag .price-standard {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.1 !important;
  text-decoration: line-through !important;
}

body.type-detail .p-image-wrapper .flags-extra .flag .price-standard > span,
body.in-detail .p-image-wrapper .flags-extra .flag .price-standard > span {
  display: inline !important;
  color: inherit !important;
  text-decoration: line-through !important;
}

body.type-detail .p-image-wrapper .flags-extra .flag .price-save,
body.in-detail .p-image-wrapper .flags-extra .flag .price-save,
body.ipp-gallery-ready.type-detail .p-image-wrapper .flags-extra .flag .price-save,
body.ipp-gallery-ready.in-detail .p-image-wrapper .flags-extra .flag .price-save {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: #ffffff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em !important;
  text-decoration: none !important;
}

body.type-detail .p-image-wrapper .flags-extra .flag .price-save > span,
body.in-detail .p-image-wrapper .flags-extra .flag .price-save > span {
  display: inline !important;
  color: inherit !important;
  text-decoration: none !important;
}

@media (max-width: 767px) {
  body.type-detail .p-image-wrapper .flags-extra .flag,
  body.in-detail .p-image-wrapper .flags-extra .flag {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
  }

  body.type-detail .p-image-wrapper .flags-extra .flag .price-save,
  body.in-detail .p-image-wrapper .flags-extra .flag .price-save {
    font-size: 15px !important;
  }

  body.type-detail .p-image-wrapper .flags-extra,
  body.in-detail .p-image-wrapper .flags-extra {
    right: 10px !important;
    bottom: 10px !important;
  }
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-stock,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock,
body.ipp-pdp-init.type-detail .ipp-buy-price-row > .availability.ipp-buy-stock,
body.ipp-pdp-init.in-detail .ipp-buy-price-row > .availability.ipp-buy-stock,
body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row > .availability.ipp-buy-stock,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row > .availability.ipp-buy-stock,
body.ipp-pdp-init.type-detail .availability.ipp-buy-stock,
body.ipp-pdp-init.in-detail .availability.ipp-buy-stock {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
  gap: 5px 6px !important;
  width: fit-content !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 2px 8px !important;
  border: 1px solid var(--ipp-line) !important;
  border-radius: 8px !important;
  background: var(--ipp-soft) !important;
  color: var(--ipp-text) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
  align-self: flex-start !important;
  visibility: visible !important;
  overflow: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  box-shadow: none !important;
  text-transform: none !important;
  white-space: nowrap !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-stock .availability-label,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock .availability-label,
body.ipp-pdp-init.type-detail .ipp-buy-price-row > .availability.ipp-buy-stock .availability-label,
body.ipp-pdp-init.in-detail .ipp-buy-price-row > .availability.ipp-buy-stock .availability-label,
body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row > .availability.ipp-buy-stock .availability-label,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row > .availability.ipp-buy-stock .availability-label,
body.ipp-pdp-init.type-detail .availability.ipp-buy-stock .availability-label,
body.ipp-pdp-init.in-detail .availability.ipp-buy-stock .availability-label {
  display: inline-flex !important;
  align-items: center !important;
  color: var(--ipp-text) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  padding: 0 !important;
  height: auto !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

@keyframes ipp-stock-dot-ring {
  0% {
    transform: scale(1);
    opacity: 0.45;
  }
  100% {
    transform: scale(2.6);
    opacity: 0;
  }
}

/* Real dot element: solid core + expanding ring (matches canvas preview). */
body.ipp-buy-v1-ready.type-detail .ipp-buy-stock__dot,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock__dot,
body.ipp-pdp-init.type-detail .ipp-buy-stock__dot,
body.ipp-pdp-init.in-detail .ipp-buy-stock__dot {
  position: relative !important;
  display: block !important;
  width: 6px !important;
  height: 6px !important;
  flex-shrink: 0 !important;
  align-self: center !important;
  margin: 0 !important;
  overflow: visible !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-stock__dot::before,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock__dot::before,
body.ipp-pdp-init.type-detail .ipp-buy-stock__dot::before,
body.ipp-pdp-init.in-detail .ipp-buy-stock__dot::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  border-radius: 50% !important;
  background: #2f9e44 !important;
  z-index: 1 !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-stock__dot::after,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock__dot::after,
body.ipp-pdp-init.type-detail .ipp-buy-stock__dot::after,
body.ipp-pdp-init.in-detail .ipp-buy-stock__dot::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 6px !important;
  height: 6px !important;
  margin: -3px 0 0 -3px !important;
  border-radius: 50% !important;
  background: #2f9e44 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  /* Do NOT use !important on transform/opacity — that blocks the animation. */
  transform: scale(1);
  opacity: 0.45;
  animation: ipp-stock-dot-ring 1.7s ease-out infinite;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-stock--unavailable .ipp-buy-stock__dot::after,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock--unavailable .ipp-buy-stock__dot::after,
body.ipp-buy-v1-ready.type-detail .ipp-buy-stock--watchdog .ipp-buy-stock__dot::after,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock--watchdog .ipp-buy-stock__dot::after {
  animation: none !important;
  opacity: 0 !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-stock--unavailable .ipp-buy-stock__dot::before,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock--unavailable .ipp-buy-stock__dot::before {
  background: #e03131 !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-stock--watchdog .ipp-buy-stock__dot::before,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock--watchdog .ipp-buy-stock__dot::before {
  background: #868e96 !important;
}

/* Legacy ::before on chip itself — hide once real dot exists. */
body.ipp-buy-v1-ready.type-detail .ipp-buy-stock:has(.ipp-buy-stock__dot)::before,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock:has(.ipp-buy-stock__dot)::before,
body.ipp-pdp-init.type-detail .ipp-buy-stock:has(.ipp-buy-stock__dot)::before,
body.ipp-pdp-init.in-detail .ipp-buy-stock:has(.ipp-buy-stock__dot)::before {
  content: none !important;
  display: none !important;
  animation: none !important;
  box-shadow: none !important;
}

@media (prefers-reduced-motion: reduce) {
  body.ipp-buy-v1-ready.type-detail .ipp-buy-stock__dot::after,
  body.ipp-buy-v1-ready.in-detail .ipp-buy-stock__dot::after,
  body.ipp-pdp-init.type-detail .ipp-buy-stock__dot::after,
  body.ipp-pdp-init.in-detail .ipp-buy-stock__dot::after {
    animation: none !important;
    opacity: 0 !important;
  }
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-stock__note,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock__note,
body.ipp-pdp-init.type-detail .ipp-buy-price-row > .availability.ipp-buy-stock .ipp-buy-stock__note,
body.ipp-pdp-init.in-detail .ipp-buy-price-row > .availability.ipp-buy-stock .ipp-buy-stock__note,
body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row > .availability.ipp-buy-stock .ipp-buy-stock__note,
body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row > .availability.ipp-buy-stock .ipp-buy-stock__note {
  display: inline-flex !important;
  align-items: center !important;
  color: var(--ipp-muted) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  padding: 0 !important;
  height: auto !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-stock.in-stock,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock.in-stock,
body.ipp-buy-v1-ready.type-detail .ipp-buy-stock.out-of-stock,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock.out-of-stock {
  background: var(--ipp-soft) !important;
  color: var(--ipp-text) !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-stock .availability-value.ipp-buy-stock__value--hidden,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock .availability-value.ipp-buy-stock__value--hidden {
  display: none !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-stock img,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock img,
body.ipp-buy-v1-ready.type-detail .ipp-buy-stock .icon,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock .icon {
  display: none !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-stock--unavailable .ipp-buy-stock__note,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock--unavailable .ipp-buy-stock__note,
body.ipp-buy-v1-ready.type-detail .ipp-buy-stock--watchdog .ipp-buy-stock__note,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock--watchdog .ipp-buy-stock__note {
  display: none !important;
}

body.ipp-pdp-init.type-detail .p-info-wrapper .availability,
body.ipp-pdp-init.in-detail .p-info-wrapper .availability,
body.ipp-pdp-init.type-detail .p-info-wrapper .p-availability,
body.ipp-pdp-init.in-detail .p-info-wrapper .p-availability,
body.ipp-pdp-init.type-detail .p-info-wrapper .order-availability,
body.ipp-pdp-init.in-detail .p-info-wrapper .order-availability,
body.ipp-pdp-init.type-detail .p-info-wrapper .detail-parameter-availability,
body.ipp-pdp-init.in-detail .p-info-wrapper .detail-parameter-availability,
body.ipp-pdp-init.type-detail .p-info-wrapper .availability-label,
body.ipp-pdp-init.in-detail .p-info-wrapper .availability-label,
body.ipp-pdp-init.type-detail .p-info-wrapper .availability-value,
body.ipp-pdp-init.in-detail .p-info-wrapper .availability-value,
body.ipp-pdp-init.type-detail .p-info-wrapper [data-micro="availability"],
body.ipp-pdp-init.in-detail .p-info-wrapper [data-micro="availability"],
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .availability,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .availability,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .p-availability,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .p-availability,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .order-availability,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .order-availability,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .detail-parameter-availability,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .detail-parameter-availability,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .availability-label,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .availability-label,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .availability-value,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .availability-value,
body.ipp-buy-v1-ready.type-detail .ipp-buy-stock-duplicate,
body.ipp-buy-v1-ready.in-detail .ipp-buy-stock-duplicate {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-footer .p-short-description a,
body.ipp-buy-v1-ready.in-detail .ipp-buy-footer .p-short-description a,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .p-short-description a,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .p-short-description a,
body.ipp-buy-v1-ready.type-detail .p-short-description .show-more,
body.ipp-buy-v1-ready.in-detail .p-short-description .show-more,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .show-detail,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .show-detail,
body.ipp-buy-v1-ready.type-detail .p-info-wrapper .toggle-description,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper .toggle-description,
body.ipp-buy-v1-ready.type-detail .ipp-buy-more,
body.ipp-buy-v1-ready.in-detail .ipp-buy-more {
  display: none !important;
}

body.ipp-buy-v1-ready.type-detail .detail-parameters,
body.ipp-buy-v1-ready.in-detail .detail-parameters {
  margin-top: 0 !important;
  margin-bottom: 24px !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-footer,
body.ipp-buy-v1-ready.in-detail .ipp-buy-footer {
  margin: 24px 0 0 !important;
  padding: 20px 0 0 !important;
  border-top: 1px solid var(--ipp-line) !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-about-label,
body.ipp-buy-v1-ready.in-detail .ipp-buy-about-label {
  margin: 0 0 10px !important;
  color: var(--ipp-muted) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-footer .p-short-description,
body.ipp-buy-v1-ready.in-detail .ipp-buy-footer .p-short-description {
  margin: 0 !important;
  max-width: 52ch !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  color: var(--ipp-text) !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-trust,
body.ipp-buy-v1-ready.in-detail .ipp-buy-trust {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)) !important;
  gap: 10px !important;
  margin: 16px 0 0 !important;
}

body.ipp-buy-v1-ready.type-detail .ipp-buy-trust__item,
body.ipp-buy-v1-ready.in-detail .ipp-buy-trust__item {
  padding: 10px 12px !important;
  border: 1px solid var(--ipp-line) !important;
  border-radius: var(--ipp-radius-sm) !important;
  background: var(--ipp-soft) !important;
  color: var(--ipp-muted) !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
}

body.ipp-buy-v1-ready.type-detail .p-info-wrapper > .p-short-description,
body.ipp-buy-v1-ready.in-detail .p-info-wrapper > .p-short-description {
  display: none !important;
}

body.type-detail .social-buttons-wrapper,
body.in-detail .social-buttons-wrapper {
  display: none !important;
}

body.type-detail .p-image:not(.ipp-gallery__stage),
body.in-detail .p-image:not(.ipp-gallery__stage) {
  margin: 0 !important;
  padding: clamp(16px, 3vw, 32px) !important;
  border-radius: 12px !important;
  background: #f8f8f8 !important;
}

body.type-detail .p-main-image img,
body.in-detail .p-main-image img {
  border-radius: 0 !important;
}

body.type-detail .benefitBanner.position--benefitProduct,
body.in-detail .benefitBanner.position--benefitProduct {
  margin: 32px 0 24px !important;
  padding: 20px var(--ipp-pad) !important;
  border: 0 !important;
  border-top: 1px solid var(--ipp-line) !important;
  border-bottom: 1px solid var(--ipp-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.type-detail .tab-pane,
body.in-detail .tab-pane {
  padding: 24px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.type-detail a:not(.btn):not(.ipp-nav a):not(.iontmax-product-detail-btn),
body.in-detail a:not(.btn):not(.ipp-nav a):not(.iontmax-product-detail-btn) {
  color: var(--ipp-text) !important;
}

body.type-detail a.iontmax-product-detail-btn,
body.in-detail a.iontmax-product-detail-btn,
body.type-detail .product.iontmax-product-card-v23 .p .iontmax-product-detail-btn,
body.in-detail .product.iontmax-product-card-v23 .p .iontmax-product-detail-btn {
  color: #ffffff !important;
}

/* ─── Product gallery (Vilgain + homepage carousel arrows) ─── */

body.ipp-gallery-ready.type-detail .ipp-gallery,
body.ipp-gallery-ready.in-detail .ipp-gallery {
  --ipp-gallery-arrow-size: 48px;
  --ipp-gallery-thumb-size: 72px;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__stage,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: clamp(20px, 4vw, 36px) !important;
  border-radius: 12px !important;
  background: #f5f5f5 !important;
  overflow: visible !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__stage .p-main-image,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage .p-main-image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  margin: 0 !important;
  pointer-events: auto !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__stage .p-main-image img,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage .p-main-image img {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: min(520px, 62vh) !important;
  margin: 0 auto !important;
  border-radius: 0 !important;
  object-fit: contain !important;
}

/* Homepage carousel arrow styling */
body.ipp-gallery-ready.type-detail .ipp-gallery__stage .ipp-gallery__arrow,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage .ipp-gallery__arrow {
  position: absolute !important;
  top: 50% !important;
  z-index: 4 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: var(--ipp-gallery-arrow-size) !important;
  height: var(--ipp-gallery-arrow-size) !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.84) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
  color: #202124 !important;
  cursor: pointer !important;
  transform: translateY(-50%) !important;
  transition:
    opacity 0.22s ease,
    visibility 0.22s ease,
    transform 0.22s ease,
    background 0.18s ease,
    color 0.18s ease,
    border-color 0.18s ease !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__stage .ipp-gallery__arrow:hover,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage .ipp-gallery__arrow:hover {
  border-color: #202124 !important;
  background: #202124 !important;
  color: #ffffff !important;
  transform: translateY(-50%) scale(1.04) !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__stage .ipp-gallery__arrow:disabled,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage .ipp-gallery__arrow:disabled {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  box-shadow: none !important;
  pointer-events: none !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__stage .ipp-gallery__arrow--prev:disabled,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage .ipp-gallery__arrow--prev:disabled {
  transform: translate(-8px, -50%) scale(0.92) !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__stage .ipp-gallery__arrow--next:disabled,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage .ipp-gallery__arrow--next:disabled {
  transform: translate(8px, -50%) scale(0.92) !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__stage .ipp-gallery__arrow svg,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage .ipp-gallery__arrow svg {
  width: 22px !important;
  height: 22px !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__stage .ipp-gallery__arrow--prev,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage .ipp-gallery__arrow--prev {
  left: 16px !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__stage .ipp-gallery__arrow--next,
body.ipp-gallery-ready.in-detail .ipp-gallery__stage .ipp-gallery__arrow--next {
  right: 16px !important;
}

/* Thumbnails row – pod hlavním obrázkem */
body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap.ipp-gallery--single-thumb,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap.ipp-gallery--single-thumb {
  justify-content: flex-start !important;
  gap: 0 !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap.ipp-gallery--single-thumb .p-thumbnails,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap.ipp-gallery--single-thumb .p-thumbnails {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap.ipp-gallery--single-thumb .ipp-gallery__thumb-nav,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap.ipp-gallery--single-thumb .ipp-gallery__thumb-nav,
body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap.ipp-gallery--single-thumb .thumbnail-prev,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap.ipp-gallery--single-thumb .thumbnail-prev,
body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap.ipp-gallery--single-thumb .thumbnail-next,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap.ipp-gallery--single-thumb .thumbnail-next {
  display: none !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap .p-thumbnails,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap .p-thumbnails {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap .p-thumbnails-inner,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap .p-thumbnails-inner {
  position: relative !important;
  left: auto !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap .p-thumbnails > div > div,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap .p-thumbnails > div > div {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  width: auto !important;
  height: auto !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap .p-thumbnail,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap .p-thumbnail {
  flex: 0 0 auto !important;
  float: none !important;
  margin: 0 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap .p-thumbnail img,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap .p-thumbnail img {
  display: block !important;
  width: var(--ipp-gallery-thumb-size) !important;
  height: var(--ipp-gallery-thumb-size) !important;
  object-fit: contain !important;
  border: 2px solid transparent !important;
  border-radius: 8px !important;
  background: #f5f5f5 !important;
  outline: none !important;
  box-shadow: none !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap .p-thumbnail.highlighted img,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap .p-thumbnail.highlighted img,
body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap .p-thumbnail:hover img,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap .p-thumbnail:hover img {
  border-color: var(--ipp-accent) !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap .p-thumbnail.highlighted::before,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap .p-thumbnail.highlighted::before,
body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap .p-thumbnail:hover::before,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap .p-thumbnail:hover::before {
  display: none !important;
  content: none !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap .cbox-gal,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap .cbox-gal {
  display: none !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap.ipp-gallery--no-stable-thumbs,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap.ipp-gallery--no-stable-thumbs,
body.ipp-gallery-ready.type-detail .ipp-gallery.ipp-gallery--no-stable-thumbs .ipp-gallery__thumbs-wrap,
body.ipp-gallery-ready.in-detail .ipp-gallery.ipp-gallery--no-stable-thumbs .ipp-gallery__thumbs-wrap {
  display: none !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery-thumb--hidden,
body.ipp-gallery-ready.in-detail .ipp-gallery-thumb--hidden {
  display: none !important;
}

/* ─── Lifestyle row (packshot + 2 fixed product photos) ─── */

body.ipp-gallery-ready.type-detail .ipp-gallery__lifestyle-row,
body.ipp-gallery-ready.in-detail .ipp-gallery__lifestyle-row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  contain: layout style paint;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__lifestyle-item,
body.ipp-gallery-ready.in-detail .ipp-gallery__lifestyle-item {
  display: block !important;
  position: relative !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 12px !important;
  background: #f5f5f5 !important;
  aspect-ratio: 1 / 1 !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__lifestyle-image,
body.ipp-gallery-ready.in-detail .ipp-gallery__lifestyle-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  backface-visibility: hidden !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery.ipp-gallery--lifestyle-single .ipp-gallery__lifestyle-row,
body.ipp-gallery-ready.in-detail .ipp-gallery.ipp-gallery--lifestyle-single .ipp-gallery__lifestyle-row {
  grid-template-columns: minmax(0, 1fr) !important;
}

/* Scroll šipky u miniatur – stejný styl jako carousel */
body.ipp-gallery-ready.type-detail .ipp-gallery__thumb-nav,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumb-nav {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  flex: 0 0 var(--ipp-gallery-arrow-size) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: var(--ipp-gallery-arrow-size) !important;
  height: var(--ipp-gallery-arrow-size) !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 255, 255, 0.84) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
  color: #202124 !important;
  text-decoration: none !important;
  cursor: pointer !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumb-nav::before,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumb-nav::before {
  content: "" !important;
  display: block !important;
  width: 22px !important;
  height: 22px !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 22px 22px !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumb-nav--prev::before,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumb-nav--prev::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23202124' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 18l-6-6 6-6'/%3E%3C/svg%3E") !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumb-nav--next::before,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumb-nav--next::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23202124' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E") !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumb-nav:hover,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumb-nav:hover {
  border-color: #202124 !important;
  background: #202124 !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumb-nav:hover::before,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumb-nav:hover::before {
  filter: brightness(0) invert(1) !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap .p-thumbnails:not(.overflow-prev) ~ .thumbnail-prev,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap .p-thumbnails:not(.overflow-prev) ~ .thumbnail-prev,
body.ipp-gallery-ready.type-detail .ipp-gallery__thumbs-wrap .p-thumbnails:not(.overflow-next) ~ .thumbnail-next,
body.ipp-gallery-ready.in-detail .ipp-gallery__thumbs-wrap .p-thumbnails:not(.overflow-next) ~ .thumbnail-next {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  box-shadow: none !important;
  pointer-events: none !important;
}

/* Zabránit konfliktu s homepage carousel CSS (starší JS mohlo přidávat tyto třídy) */
body.ipp-gallery-ready.type-detail .ipp-gallery .iontmax-banner-carousel__arrow,
body.ipp-gallery-ready.in-detail .ipp-gallery .iontmax-banner-carousel__arrow {
  left: auto !important;
  right: auto !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

body.ipp-gallery-ready.type-detail .ipp-gallery .iontmax-banner-carousel__arrow:disabled,
body.ipp-gallery-ready.in-detail .ipp-gallery .iontmax-banner-carousel__arrow:disabled {
  display: none !important;
  box-shadow: none !important;
}

@media (max-width: 767px) {
  body.ipp-gallery-ready.type-detail .ipp-gallery,
  body.ipp-gallery-ready.in-detail .ipp-gallery {
    --ipp-gallery-arrow-size: 40px;
    --ipp-gallery-thumb-size: 60px;
  }

  body.ipp-lifestyle-gallery-ready.type-detail .ipp-gallery.ipp-gallery--has-lifestyle-row,
  body.ipp-lifestyle-gallery-ready.in-detail .ipp-gallery.ipp-gallery--has-lifestyle-row {
    gap: 24px !important;
  }

  body.type-detail .p-thumbnails-wrapper,
  body.in-detail .p-thumbnails-wrapper,
  body.type-product.type-detail .p-thumbnails-wrapper {
    display: none !important;
  }

  body.ipp-gallery-ready.type-detail .ipp-gallery__stage .ipp-gallery__arrow--prev,
  body.ipp-gallery-ready.in-detail .ipp-gallery__stage .ipp-gallery__arrow--prev {
    left: 8px !important;
  }

  body.ipp-gallery-ready.type-detail .ipp-gallery__stage .ipp-gallery__arrow--next,
  body.ipp-gallery-ready.in-detail .ipp-gallery__stage .ipp-gallery__arrow--next {
    right: 8px !important;
  }
}

body.type-detail .p-image,
body.in-detail .p-image {
  margin-bottom: 0 !important;
}

/* Miniatury – Vilgain styl */
body.type-detail .p-thumbnails,
body.in-detail .p-thumbnails {
  margin-top: 12px !important;
}

body.type-detail .p-thumbnails > div > div,
body.in-detail .p-thumbnails > div > div {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

body.type-detail .p-thumbnails a,
body.in-detail .p-thumbnails a {
  float: none !important;
  margin: 0 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

body.type-detail .p-thumbnails a img,
body.in-detail .p-thumbnails a img {
  width: 64px !important;
  height: 64px !important;
  object-fit: contain !important;
  border: 2px solid transparent !important;
  border-radius: 8px !important;
  background: #f5f5f5 !important;
  outline: none !important;
}

body.type-detail .p-thumbnails a.highlighted img,
body.in-detail .p-thumbnails a.highlighted img,
body.type-detail .p-thumbnails a:hover img,
body.in-detail .p-thumbnails a:hover img {
  border-color: var(--ipp-accent) !important;
  box-shadow: none !important;
}

/* Miniatury – fallback bez vilgain třídy */
body.type-detail .p-thumbnails,
body.in-detail .p-thumbnails,
body.type-product .p-thumbnails {
  margin-top: 16px !important;
}

body.type-detail .p-thumbnails > div > div,
body.in-detail .p-thumbnails > div > div,
body.type-product .p-thumbnails > div > div {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  width: auto !important;
  height: auto !important;
}

body.type-detail .p-thumbnails a,
body.in-detail .p-thumbnails a,
body.type-product.type-detail .p-thumbnails a {
  float: none !important;
  margin: 0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
}

body.type-detail .p-thumbnails > div > div > a:not(:last-child),
body.in-detail .p-thumbnails > div > div > a:not(:last-child),
body.type-product.type-detail .p-thumbnails > div > div > a:not(:last-child) {
  margin-right: 10px !important;
}

body.type-detail .p-thumbnails a img,
body.in-detail .p-thumbnails a img {
  border: 1px solid var(--ipp-line) !important;
  border-radius: 10px !important;
  outline: none !important;
}

body.type-detail .p-thumbnails a.highlighted img,
body.in-detail .p-thumbnails a.highlighted img,
body.type-detail .p-thumbnails a:hover img,
body.in-detail .p-thumbnails a:hover img {
  border-color: var(--ipp-accent) !important;
  outline: none !important;
  box-shadow: none !important;
}

body.type-detail .p-thumbnail.highlighted::before,
body.in-detail .p-thumbnail.highlighted::before,
body.type-detail .p-thumbnail:hover::before,
body.in-detail .p-thumbnail:hover::before,
body.type-detail .show360image.highlighted::before,
body.in-detail .show360image.highlighted::before,
body.type-detail .show360image:hover::before,
body.in-detail .show360image:hover::before {
  display: none !important;
  content: none !important;
  background: transparent !important;
}

body.type-detail .p-main-image img,
body.in-detail .p-main-image img {
  border-radius: var(--ipp-radius-sm) !important;
}

body.type-detail .p-detail-info,
body.in-detail .p-detail-info {
  margin: 0 0 14px !important;
  color: var(--ipp-muted) !important;
  font-size: 13px !important;
}

body.type-detail .price-final,
body.in-detail .price-final {
  color: var(--ipp-text) !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}

body.type-detail .price-additional,
body.in-detail .price-additional {
  color: var(--ipp-muted) !important;
  font-size: 13px !important;
}

body.type-detail .detail-parameters select,
body.in-detail .detail-parameters select,
body.type-detail .p-info-wrapper .form-control,
body.in-detail .p-info-wrapper .form-control {
  min-height: 48px !important;
  border: 1px solid var(--ipp-line) !important;
  border-radius: var(--ipp-radius-sm) !important;
  box-shadow: none !important;
}

/* ─── Soft flavor picker (variant 05) ─── */

body.ipp-soft-picker-ready.type-detail .detail-parameters,
body.ipp-soft-picker-ready.in-detail .detail-parameters {
  margin: 0 0 24px !important;
}

body.ipp-soft-picker-ready.type-detail .detail-parameters tr:has(.ipp-soft-picker) + tr:has(.ipp-soft-picker),
body.ipp-soft-picker-ready.in-detail .detail-parameters tr:has(.ipp-soft-picker) + tr:has(.ipp-soft-picker) {
  margin-top: 20px !important;
}

body.ipp-soft-picker-ready.type-detail .detail-parameters .ipp-soft-picker + .ipp-soft-picker,
body.ipp-soft-picker-ready.in-detail .detail-parameters .ipp-soft-picker + .ipp-soft-picker {
  margin-top: 20px !important;
}

body.ipp-soft-picker-ready.type-detail .detail-parameters table,
body.ipp-soft-picker-ready.in-detail .detail-parameters table {
  width: 100% !important;
  border: 0 !important;
}

body.ipp-soft-picker-ready.type-detail .detail-parameters tr:has(.ipp-soft-picker),
body.ipp-soft-picker-ready.in-detail .detail-parameters tr:has(.ipp-soft-picker) {
  display: block !important;
}

body.ipp-soft-picker-ready.type-detail .detail-parameters tr:has(.ipp-soft-picker) th,
body.ipp-soft-picker-ready.in-detail .detail-parameters tr:has(.ipp-soft-picker) th {
  display: none !important;
}

body.ipp-soft-picker-ready.type-detail .detail-parameters tr:has(.ipp-soft-picker) td,
body.ipp-soft-picker-ready.in-detail .detail-parameters tr:has(.ipp-soft-picker) td {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
}

body.ipp-soft-picker-ready.type-detail .ipp-soft-picker__native,
body.ipp-soft-picker-ready.in-detail .ipp-soft-picker__native {
  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;
  opacity: 0 !important;
  pointer-events: none !important;
}

body.ipp-soft-picker-ready.type-detail .ipp-soft-picker,
body.ipp-soft-picker-ready.in-detail .ipp-soft-picker {
  margin: 0 !important;
}

body.ipp-soft-picker-ready.type-detail .ipp-soft-picker__label,
body.ipp-soft-picker-ready.in-detail .ipp-soft-picker__label {
  margin: 0 0 12px !important;
  color: var(--ipp-muted) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

body.ipp-soft-picker-ready.type-detail .ipp-soft-picker__options,
body.ipp-soft-picker-ready.in-detail .ipp-soft-picker__options {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 5px !important;
}

body.ipp-soft-picker-ready.type-detail .ipp-soft-picker__option,
body.ipp-soft-picker-ready.in-detail .ipp-soft-picker__option {
  margin: 0 !important;
  padding: 8px 12px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: var(--ipp-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  cursor: pointer !important;
  font-family: inherit !important;
  transition:
    background 0.15s ease,
    color 0.15s ease !important;
}

body.ipp-soft-picker-ready.type-detail .ipp-soft-picker__option:hover,
body.ipp-soft-picker-ready.in-detail .ipp-soft-picker__option:hover {
  color: var(--ipp-text) !important;
}

body.ipp-soft-picker-ready.type-detail .ipp-soft-picker__option.is-active,
body.ipp-soft-picker-ready.in-detail .ipp-soft-picker__option.is-active {
  background: var(--ipp-soft) !important;
  color: var(--ipp-text) !important;
  font-weight: 600 !important;
}

body.ipp-soft-picker-ready.type-detail .ipp-soft-picker__option:focus-visible,
body.ipp-soft-picker-ready.in-detail .ipp-soft-picker__option:focus-visible {
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(48, 50, 51, 0.12) !important;
}

body.type-detail .p-short-description,
body.in-detail .p-short-description {
  font-size: 15px !important;
  line-height: 1.6 !important;
}

/* CTA buttons – cart parity */
body.type-detail .add-to-cart .btn-conversion,
body.in-detail .add-to-cart .btn-conversion,
body.type-detail .add-to-cart .btn-primary,
body.in-detail .add-to-cart .btn-primary {
  min-height: 52px !important;
  border: 0 !important;
  border-radius: var(--ipp-radius-sm) !important;
  background: var(--ipp-accent) !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

body.type-detail .add-to-cart .btn-conversion:hover,
body.in-detail .add-to-cart .btn-conversion:hover,
body.type-detail .add-to-cart .btn-primary:hover,
body.in-detail .add-to-cart .btn-primary:hover {
  background: #1a1b1d !important;
}

body.type-detail .add-to-cart .btn-secondary,
body.in-detail .add-to-cart .btn-secondary,
body.type-detail .express-checkout-button,
body.in-detail .express-checkout-button {
  min-height: 52px !important;
  border: 1px solid var(--ipp-line) !important;
  border-radius: var(--ipp-radius-sm) !important;
  background: #fff !important;
  color: var(--ipp-text) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

body.type-detail .add-to-cart .quantity,
body.in-detail .add-to-cart .quantity {
  min-height: 48px !important;
  border: 1px solid var(--ipp-line) !important;
  border-radius: var(--ipp-radius-sm) !important;
}

/* Množstevní sleva – kill Shoptet teal outline */
body.type-detail .quantity-discounts,
body.in-detail .quantity-discounts {
  margin: 16px 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.type-detail .quantity-discounts__headline,
body.in-detail .quantity-discounts__headline {
  margin: 0 0 10px !important;
  color: var(--ipp-text) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: none !important;
}

body.type-detail .quantity-discounts__item,
body.in-detail .quantity-discounts__item {
  margin: 0 0 8px !important;
  padding: 12px 14px !important;
  border: 1px solid var(--ipp-line) !important;
  border-radius: var(--ipp-radius-sm) !important;
  background: #fff !important;
  outline: none !important;
  box-shadow: none !important;
}

body.type-detail .quantity-discounts__item--highlighted,
body.in-detail .quantity-discounts__item--highlighted,
body.type-detail .quantity-discounts__item:hover,
body.in-detail .quantity-discounts__item:hover,
body.type-detail .quantity-discounts__item:focus,
body.in-detail .quantity-discounts__item:focus,
body.type-detail .quantity-discounts__item:focus-within,
body.in-detail .quantity-discounts__item:focus-within {
  border-color: var(--ipp-accent) !important;
  background: var(--ipp-soft) !important;
  outline: none !important;
  outline-width: 0 !important;
  outline-style: none !important;
  box-shadow: none !important;
}

body.type-detail .quantity-discounts__save,
body.in-detail .quantity-discounts__save {
  margin-top: 0 !important;
  color: var(--ipp-muted) !important;
  font-size: 13px !important;
}

body.type-detail .ipp-qty-discount-footer,
body.in-detail .ipp-qty-discount-footer {
  margin-top: 10px !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 10px !important;
}

body.type-detail .ipp-qty-discount-total,
body.in-detail .ipp-qty-discount-total {
  margin-top: 0 !important;
  margin-left: auto !important;
  color: var(--ipp-text) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

body.type-detail .quantity-discounts__save,
body.in-detail .quantity-discounts__save {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  white-space: nowrap !important;
}

/* 03 · Single panel + desktop split (sleva vlevo, košík vpravo) */
body.ipp-checkout-split-ready.type-detail .ipp-checkout-row,
body.ipp-checkout-split-ready.in-detail .ipp-checkout-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(168px, 196px) !important;
  grid-template-rows: auto auto !important;
  gap: 10px 14px !important;
  align-items: start !important;
  margin: 16px 0 24px !important;
}

body.ipp-checkout-split-ready.type-detail .ipp-qty-discount-headline,
body.ipp-checkout-split-ready.in-detail .ipp-qty-discount-headline,
body.ipp-checkout-split-ready.type-detail .quantity-discounts__headline.ipp-qty-discount-headline,
body.ipp-checkout-split-ready.in-detail .quantity-discounts__headline.ipp-qty-discount-headline {
  grid-column: 1 !important;
  grid-row: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  color: var(--ipp-muted) !important;
}

body.ipp-checkout-split-ready.type-detail .quantity-discounts,
body.ipp-checkout-split-ready.in-detail .quantity-discounts {
  grid-column: 1 !important;
  grid-row: 2 !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--ipp-line) !important;
  border-radius: var(--ipp-radius-sm) !important;
  overflow: hidden !important;
  background: #fff !important;
  height: auto !important;
  min-height: 0 !important;
  align-self: start !important;
}

body.ipp-checkout-split-ready.type-detail .quantity-discounts__headline:not(.ipp-qty-discount-headline),
body.ipp-checkout-split-ready.in-detail .quantity-discounts__headline:not(.ipp-qty-discount-headline) {
  display: none !important;
}

body.ipp-checkout-split-ready.type-detail .quantity-discounts__item,
body.ipp-checkout-split-ready.in-detail .quantity-discounts__item {
  margin: 0 !important;
  padding: 10px 14px !important;
  border: 0 !important;
  border-top: 1px solid var(--ipp-line) !important;
  border-radius: 0 !important;
  background: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
}

body.ipp-checkout-split-ready.type-detail .quantity-discounts__item:first-child,
body.ipp-checkout-split-ready.in-detail .quantity-discounts__item:first-child {
  border-top: 0 !important;
}

body.ipp-checkout-split-ready.type-detail .quantity-discounts__item--highlighted,
body.ipp-checkout-split-ready.in-detail .quantity-discounts__item--highlighted,
body.ipp-checkout-split-ready.type-detail .quantity-discounts__item:hover,
body.ipp-checkout-split-ready.in-detail .quantity-discounts__item:hover,
body.ipp-checkout-split-ready.type-detail .quantity-discounts__item:focus,
body.ipp-checkout-split-ready.in-detail .quantity-discounts__item:focus,
body.ipp-checkout-split-ready.type-detail .quantity-discounts__item:focus-within,
body.ipp-checkout-split-ready.in-detail .quantity-discounts__item:focus-within {
  border-color: var(--ipp-line) !important;
  background: var(--ipp-soft) !important;
}

body.ipp-checkout-split-ready.type-detail .ipp-qty-discount-footer,
body.ipp-checkout-split-ready.in-detail .ipp-qty-discount-footer {
  margin: 0 !important;
  padding: 8px 14px !important;
  border-top: 1px solid var(--ipp-line) !important;
  background: var(--ipp-soft) !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 10px !important;
}

body.ipp-checkout-split-ready.type-detail .quantity-discounts__save,
body.ipp-checkout-split-ready.in-detail .quantity-discounts__save {
  display: block !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  text-align: left !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  color: var(--ipp-muted) !important;
  white-space: nowrap !important;
}

body.ipp-checkout-split-ready.type-detail .ipp-qty-discount-total,
body.ipp-checkout-split-ready.in-detail .ipp-qty-discount-total {
  flex: 0 0 auto !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  text-align: right !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  color: var(--ipp-text) !important;
  white-space: nowrap !important;
}

body.ipp-checkout-split-ready.type-detail .ipp-qty-discount-total__amount,
body.ipp-checkout-split-ready.in-detail .ipp-qty-discount-total__amount {
  font-weight: 700 !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart,
body.ipp-checkout-split-ready.in-detail .add-to-cart,
body.ipp-checkout-split-ready.type-detail .ipp-checkout-actions,
body.ipp-checkout-split-ready.in-detail .ipp-checkout-actions {
  grid-column: 2 !important;
  grid-row: 2 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  align-self: start !important;
  gap: 10px !important;
  height: auto !important;
  min-height: 0 !important;
  width: 100% !important;
  max-width: none !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity {
  width: 100% !important;
  max-width: none !important;
  min-height: 48px !important;
  margin: 0 !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) 44px !important;
  grid-template-rows: 48px !important;
  align-items: stretch !important;
  height: 48px !important;
  padding: 0 !important;
  position: relative !important;
  overflow: hidden !important;
  background: #fff !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity .decrease,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity .decrease,
body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity .increase,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity .increase {
  position: static !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  border: 0 !important;
  background: #fff !important;
  color: var(--ipp-text) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity .decrease,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity .decrease {
  grid-column: 1 !important;
  grid-row: 1 !important;
  border-right: 1px solid var(--ipp-line) !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity .increase,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity .increase {
  grid-column: 3 !important;
  grid-row: 1 !important;
  border-left: 1px solid var(--ipp-line) !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity .decrease::before,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity .decrease::before,
body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity .increase::before,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity .increase::before {
  display: none !important;
  content: none !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity .decrease__sign,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity .decrease__sign,
body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity .increase__sign,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity .increase__sign {
  display: block !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity label,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity label {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  height: 100% !important;
  min-height: 0 !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity input.amount,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity input.amount {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  text-align: center !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity .increase-tooltip,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity .increase-tooltip,
body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity .decrease-tooltip,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity .decrease-tooltip {
  display: none !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity .decrease:hover,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity .decrease:hover,
body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity .increase:hover,
body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity .increase:hover {
  background: var(--ipp-soft) !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart__buttons-wrapper,
body.ipp-checkout-split-ready.in-detail .add-to-cart__buttons-wrapper {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  grid-template-columns: none !important;
  position: relative !important;
  z-index: 2 !important;
  pointer-events: auto !important;
}

body.ipp-checkout-split-ready.type-detail .add-to-cart .btn,
body.ipp-checkout-split-ready.in-detail .add-to-cart .btn,
body.ipp-checkout-split-ready.type-detail .express-checkout-button,
body.ipp-checkout-split-ready.in-detail .express-checkout-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
  position: relative !important;
  z-index: 3 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}

@media (min-width: 768px) {
  body.type-detail .p-info-wrapper,
  body.in-detail .p-info-wrapper {
    z-index: 2 !important;
    pointer-events: auto !important;
    overflow: visible !important;
  }

  body.type-detail .p-info-wrapper .add-to-cart,
  body.in-detail .p-info-wrapper .add-to-cart,
  body.type-detail .p-info-wrapper .ipp-checkout-row,
  body.in-detail .p-info-wrapper .ipp-checkout-row {
    position: relative !important;
    z-index: 3 !important;
    pointer-events: auto !important;
  }
}

body.ipp-checkout-split-ready.type-detail .add-to-cart__quantity-label,
body.ipp-checkout-split-ready.in-detail .add-to-cart__quantity-label {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
}

@media (max-width: 767px) {
  body.ipp-checkout-split-ready.type-detail .ipp-checkout-row,
  body.ipp-checkout-split-ready.in-detail .ipp-checkout-row {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
    gap: 10px !important;
  }

  body.ipp-checkout-split-ready.type-detail .ipp-qty-discount-headline,
  body.ipp-checkout-split-ready.in-detail .ipp-qty-discount-headline {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  body.ipp-checkout-split-ready.type-detail .quantity-discounts,
  body.ipp-checkout-split-ready.in-detail .quantity-discounts {
    grid-column: 1 !important;
    grid-row: 2 !important;
    min-height: 0 !important;
    height: auto !important;
  }

  body.ipp-checkout-split-ready.type-detail .add-to-cart,
  body.ipp-checkout-split-ready.in-detail .add-to-cart {
    grid-column: 1 !important;
    grid-row: 3 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    gap: 8px !important;
    justify-content: stretch !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.ipp-checkout-split-ready.type-detail .add-to-cart .quantity,
  body.ipp-checkout-split-ready.in-detail .add-to-cart .quantity {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 48px !important;
  }

  /* Let buttons join the parent grid so CTAs can stack full width. */
  body.ipp-checkout-split-ready.type-detail .add-to-cart__buttons-wrapper,
  body.ipp-checkout-split-ready.in-detail .add-to-cart__buttons-wrapper {
    display: contents !important;
  }

  body.ipp-checkout-split-ready.type-detail .add-to-cart .btn-conversion,
  body.ipp-checkout-split-ready.in-detail .add-to-cart .btn-conversion,
  body.ipp-checkout-split-ready.type-detail .add-to-cart .btn-primary,
  body.ipp-checkout-split-ready.in-detail .add-to-cart .btn-primary {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-height: 48px !important;
  }

  body.ipp-checkout-split-ready.type-detail .add-to-cart .btn-secondary,
  body.ipp-checkout-split-ready.in-detail .add-to-cart .btn-secondary,
  body.ipp-checkout-split-ready.type-detail .express-checkout-button,
  body.ipp-checkout-split-ready.in-detail .express-checkout-button {
    grid-column: 1 !important;
    grid-row: 3 !important;
    width: 100% !important;
    min-height: 48px !important;
  }
}

/* Simple checkout — produkty bez množstevní slevy (FuelGel Ultra apod.) */
body.ipp-checkout-simple-ready.type-detail .add-to-cart,
body.ipp-checkout-simple-ready.in-detail .add-to-cart {
  display: grid !important;
  grid-template-columns: 132px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  gap: 10px !important;
  margin: 8px 0 24px !important;
  width: 100% !important;
  max-width: none !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart__quantity-label,
body.ipp-checkout-simple-ready.in-detail .add-to-cart__quantity-label {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 48px !important;
  margin: 0 !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart__buttons-wrapper,
body.ipp-checkout-simple-ready.in-detail .add-to-cart__buttons-wrapper {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  position: relative !important;
  z-index: 2 !important;
  pointer-events: auto !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .btn-conversion,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .btn-conversion,
body.ipp-checkout-simple-ready.type-detail .add-to-cart .btn-primary,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .btn-primary {
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .btn-secondary,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .btn-secondary,
body.ipp-checkout-simple-ready.type-detail .express-checkout-button,
body.ipp-checkout-simple-ready.in-detail .express-checkout-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  visibility: visible !important;
  opacity: 1 !important;
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
  pointer-events: auto !important;
}

/* When buttons live inside the flex wrapper, don't rely on grid placement alone. */
body.ipp-checkout-simple-ready.type-detail .add-to-cart__buttons-wrapper .express-checkout-button,
body.ipp-checkout-simple-ready.in-detail .add-to-cart__buttons-wrapper .express-checkout-button,
body.ipp-checkout-simple-ready.type-detail .add-to-cart__buttons-wrapper .btn-secondary,
body.ipp-checkout-simple-ready.in-detail .add-to-cart__buttons-wrapper .btn-secondary,
body.ipp-checkout-split-ready.type-detail .add-to-cart__buttons-wrapper .express-checkout-button,
body.ipp-checkout-split-ready.in-detail .add-to-cart__buttons-wrapper .express-checkout-button,
body.ipp-checkout-split-ready.type-detail .add-to-cart__buttons-wrapper .btn-secondary,
body.ipp-checkout-split-ready.in-detail .add-to-cart__buttons-wrapper .btn-secondary {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
  flex: 0 0 auto !important;
  pointer-events: auto !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) 44px !important;
  grid-template-rows: 48px !important;
  align-items: stretch !important;
  height: 48px !important;
  padding: 0 !important;
  position: relative !important;
  overflow: hidden !important;
  background: #fff !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity .decrease,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity .decrease,
body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity .increase,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity .increase {
  position: static !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  border: 0 !important;
  background: #fff !important;
  color: var(--ipp-text) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity .decrease,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity .decrease {
  grid-column: 1 !important;
  grid-row: 1 !important;
  border-right: 1px solid var(--ipp-line) !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity .increase,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity .increase {
  grid-column: 3 !important;
  grid-row: 1 !important;
  border-left: 1px solid var(--ipp-line) !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity .decrease::before,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity .decrease::before,
body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity .increase::before,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity .increase::before {
  display: none !important;
  content: none !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity .decrease__sign,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity .decrease__sign,
body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity .increase__sign,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity .increase__sign {
  display: block !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity label,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity label {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  height: 100% !important;
  min-height: 0 !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity input.amount,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity input.amount {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  text-align: center !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity .increase-tooltip,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity .increase-tooltip,
body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity .decrease-tooltip,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity .decrease-tooltip {
  display: none !important;
}

body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity .decrease:hover,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity .decrease:hover,
body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity .increase:hover,
body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity .increase:hover {
  background: var(--ipp-soft) !important;
}

@media (max-width: 767px) {
  body.ipp-checkout-simple-ready.type-detail .add-to-cart,
  body.ipp-checkout-simple-ready.in-detail .add-to-cart {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    gap: 8px !important;
    margin: 8px 0 16px !important;
  }

  body.ipp-checkout-simple-ready.type-detail .add-to-cart .quantity,
  body.ipp-checkout-simple-ready.in-detail .add-to-cart .quantity {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 48px !important;
  }

  body.ipp-checkout-simple-ready.type-detail .add-to-cart__buttons-wrapper,
  body.ipp-checkout-simple-ready.in-detail .add-to-cart__buttons-wrapper {
    display: contents !important;
  }

  body.ipp-checkout-simple-ready.type-detail .add-to-cart .btn-conversion,
  body.ipp-checkout-simple-ready.in-detail .add-to-cart .btn-conversion,
  body.ipp-checkout-simple-ready.type-detail .add-to-cart .btn-primary,
  body.ipp-checkout-simple-ready.in-detail .add-to-cart .btn-primary {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-height: 48px !important;
  }

  body.ipp-checkout-simple-ready.type-detail .add-to-cart .btn-secondary,
  body.ipp-checkout-simple-ready.in-detail .add-to-cart .btn-secondary,
  body.ipp-checkout-simple-ready.type-detail .express-checkout-button,
  body.ipp-checkout-simple-ready.in-detail .express-checkout-button {
    grid-column: 1 !important;
    grid-row: 3 !important;
    width: 100% !important;
    min-height: 48px !important;
  }
}

/* No blue Bootstrap/Shoptet focus rings */
body.type-detail .form-control:focus,
body.in-detail .form-control:focus,
body.type-detail select:focus,
body.in-detail select:focus,
body.type-detail .quantity input:focus,
body.in-detail .quantity input:focus {
  border-color: var(--ipp-accent) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(48, 50, 51, 0.12) !important;
}

/* Tabs – cart step underline */
body.type-detail .shp-tabs-row.responsive-nav,
body.in-detail .shp-tabs-row.responsive-nav,
body.type-detail .shp-tabs-holder,
body.in-detail .shp-tabs-holder {
  margin: 0 0 16px !important;
  padding: 0 var(--ipp-pad) !important;
  border: 0 !important;
  background: transparent !important;
}

body.type-detail #p-detail-tabs,
body.in-detail #p-detail-tabs {
  display: flex !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.type-detail #p-detail-tabs > li,
body.in-detail #p-detail-tabs > li {
  flex: 1 1 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.type-detail #p-detail-tabs > li > a,
body.in-detail #p-detail-tabs > li > a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 52px !important;
  padding: 12px 16px !important;
  border: 0 !important;
  border-bottom: 2px solid var(--ipp-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--ipp-muted) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

body.type-detail #p-detail-tabs > li.active > a,
body.in-detail #p-detail-tabs > li.active > a {
  color: var(--ipp-text) !important;
  border-bottom-color: var(--ipp-accent) !important;
}

/* Description card */
body.type-detail .p-detail-tabs-wrapper,
body.in-detail .p-detail-tabs-wrapper {
  padding: 0 var(--ipp-pad) !important;
}

body.type-detail .p-detail-tabs-wrapper .ipp-pdp-supplementary-hidden,
body.in-detail .p-detail-tabs-wrapper .ipp-pdp-supplementary-hidden,
body.type-detail .p-detail-tabs-wrapper > .row > [class*="col-"]:last-child:not(:only-child),
body.in-detail .p-detail-tabs-wrapper > .row > [class*="col-"]:last-child:not(:only-child),
body.ipp-pdp-desc-in-gallery.type-detail .p-detail-tabs-wrapper.ipp-pdp-desc-moved,
body.ipp-pdp-desc-in-gallery.in-detail .p-detail-tabs-wrapper.ipp-pdp-desc-moved {
  display: none !important;
  pointer-events: none !important;
}

body.type-detail .tab-pane,
body.in-detail .tab-pane {
  padding: clamp(14px, 3vw, 24px) !important;
  border: 1px solid var(--ipp-line) !important;
  border-radius: var(--ipp-radius) !important;
  background: var(--ipp-card) !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
}

body.type-detail .description-inner .basic-description > h3,
body.in-detail .description-inner .basic-description > h3 {
  margin: 0 0 18px !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  text-transform: none !important;
}

/* Canva PNG cards in long description — naming: pdp-card-*, pdp-hero-* */
body.type-detail .description-inner .basic-description.ipp-pdp-desc,
body.in-detail .description-inner .basic-description.ipp-pdp-desc {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: clamp(12px, 2.5vw, 20px) !important;
  max-width: 100% !important;
}

body.type-detail .description-inner .basic-description.ipp-pdp-desc > p:empty,
body.in-detail .description-inner .basic-description.ipp-pdp-desc > p:empty {
  display: none !important;
}

body.type-detail .description-inner .basic-description .ipp-pdp-img-wrap,
body.in-detail .description-inner .basic-description .ipp-pdp-img-wrap,
body.type-detail .description-inner .basic-description p:has(> img[src*="pdp-card-"]),
body.in-detail .description-inner .basic-description p:has(> img[src*="pdp-card-"]),
body.type-detail .description-inner .basic-description p:has(> img[src*="pdp-hero-"]),
body.in-detail .description-inner .basic-description p:has(> img[src*="pdp-hero-"]),
body.type-detail .description-inner .basic-description p:has(> img.ipp-pdp-img),
body.in-detail .description-inner .basic-description p:has(> img.ipp-pdp-img) {
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

body.type-detail .description-inner .basic-description img.ipp-pdp-img,
body.in-detail .description-inner .basic-description img.ipp-pdp-img,
body.type-detail .description-inner .basic-description img[src*="pdp-card-"],
body.in-detail .description-inner .basic-description img[src*="pdp-card-"],
body.type-detail .description-inner .basic-description img[src*="pdp-hero-"],
body.in-detail .description-inner .basic-description img[src*="pdp-hero-"] {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 auto !important;
  border: 0 !important;
  border-radius: var(--ipp-radius) !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06) !important;
}

body.type-detail .description-inner .basic-description img.ipp-pdp-img--hero,
body.in-detail .description-inner .basic-description img.ipp-pdp-img--hero,
body.type-detail .description-inner .basic-description img[src*="pdp-hero-"],
body.in-detail .description-inner .basic-description img[src*="pdp-hero-"] {
  border-radius: clamp(12px, 2vw, 18px) !important;
  box-shadow: none !important;
}

body.type-detail .description-inner .basic-description img.ipp-pdp-img--card,
body.in-detail .description-inner .basic-description img.ipp-pdp-img--card,
body.type-detail .description-inner .basic-description img[src*="pdp-card-"],
body.in-detail .description-inner .basic-description img[src*="pdp-card-"] {
  border-radius: clamp(14px, 2.5vw, 20px) !important;
}

@media (max-width: 767px) {
  body.type-detail .description-inner .basic-description.ipp-pdp-desc,
  body.in-detail .description-inner .basic-description.ipp-pdp-desc {
    gap: 12px !important;
  }

  body.type-detail .tab-pane,
  body.in-detail .tab-pane {
    padding-left: clamp(10px, 2.5vw, 16px) !important;
    padding-right: clamp(10px, 2.5vw, 16px) !important;
  }

  /* Long description — same width as buy box (Koupit nyní) */
  body.type-detail .p-detail-tabs-wrapper,
  body.in-detail .p-detail-tabs-wrapper {
    padding-left: var(--ipp-pad) !important;
    padding-right: var(--ipp-pad) !important;
  }

  body.type-detail .p-detail-tabs-wrapper > .row,
  body.in-detail .p-detail-tabs-wrapper > .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.type-detail .p-detail-tabs-wrapper .row > [class*="col-"],
  body.in-detail .p-detail-tabs-wrapper .row > [class*="col-"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.type-detail .p-detail-tabs-wrapper .description-inner,
  body.in-detail .p-detail-tabs-wrapper .description-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.type-detail .p-detail-tabs-wrapper .tab-pane,
  body.in-detail .p-detail-tabs-wrapper .tab-pane,
  body.type-detail .p-detail-tabs-wrapper .tab-pane,
  body.in-detail .p-detail-tabs-wrapper .tab-pane {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.ipp-product-content-ready.type-detail .iontmax-product-content,
  body.ipp-product-content-ready.in-detail .iontmax-product-content,
  body.ipp-product-content-ready.type-detail .ipp,
  body.ipp-product-content-ready.in-detail .ipp {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Hide native tabs when custom product content is present */
body.type-detail:has(.ipp) .shp-tabs-row.responsive-nav,
body.type-detail:has(.iontmax-product-content) .shp-tabs-row.responsive-nav,
body.type-detail:has(.ipp) .shp-tabs-holder,
body.type-detail:has(.iontmax-product-content) .shp-tabs-holder,
body.type-detail:has(.ipp) #p-detail-tabs,
body.type-detail:has(.iontmax-product-content) #p-detail-tabs,
body.in-detail:has(.ipp) .shp-tabs-row.responsive-nav,
body.in-detail:has(.iontmax-product-content) .shp-tabs-row.responsive-nav,
body.in-detail:has(.ipp) .shp-tabs-holder,
body.in-detail:has(.iontmax-product-content) .shp-tabs-holder,
body.in-detail:has(.ipp) #p-detail-tabs,
body.in-detail:has(.iontmax-product-content) #p-detail-tabs {
  display: none !important;
}

body.type-detail:has(.ipp) .description-inner .basic-description > h3,
body.type-detail:has(.iontmax-product-content) .description-inner .basic-description > h3,
body.in-detail:has(.ipp) .description-inner .basic-description > h3,
body.in-detail:has(.iontmax-product-content) .description-inner .basic-description > h3 {
  display: none !important;
}

body.type-detail .basic-description > p:has(> script[src*="iontmax-product-detail"]),
body.in-detail .basic-description > p:has(> script[src*="iontmax-product-detail"]) {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html:has(.ipp),
html:has(.iontmax-product-content) {
  scroll-behavior: smooth;
}

/* ─── Custom .ipp content ─── */

.ipp {
  width: 100%;
  color: var(--ipp-text);
  font-size: 15px;
  line-height: 1.65;
}

.ipp-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 16px;
  padding: 20px;
  border: 1px solid var(--ipp-line);
  border-radius: var(--ipp-radius);
  background: var(--ipp-card);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.ipp-trust__title {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
}

.ipp-trust__text {
  font-size: 12px;
  color: var(--ipp-muted);
  line-height: 1.4;
}

.ipp-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 16px;
}

.ipp-badge {
  padding: 6px 10px;
  border-radius: 4px;
  background: var(--ipp-soft);
  border: 1px solid var(--ipp-line);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.ipp-nav-wrap {
  position: sticky;
  top: 76px;
  z-index: 20;
  margin: 0 0 16px;
  background: #fff;
}

.ipp-nav {
  display: flex;
  gap: 0;
  overflow-x: auto;
  margin: 0;
  padding: 0;
}

.ipp-nav a {
  flex: 1 1 0;
  min-width: max-content;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 12px 16px;
  border-bottom: 2px solid var(--ipp-line);
  color: var(--ipp-muted);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
}

.ipp-nav a.is-active {
  color: var(--ipp-text);
  border-bottom-color: var(--ipp-accent);
}

.ipp-section {
  margin: 0 0 16px;
  padding: clamp(14px, 3vw, 24px);
  border: 1px solid var(--ipp-line);
  border-radius: var(--ipp-radius);
  background: var(--ipp-card);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  scroll-margin-top: 130px;
}

.ipp-section__title {
  margin: 0 0 18px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

.ipp-section h3 {
  margin: 20px 0 10px;
  font-size: 16px;
  font-weight: 700;
}

.ipp-features {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}

.ipp-feature {
  padding: 16px;
  border: 1px solid var(--ipp-line);
  border-radius: var(--ipp-radius-sm);
  background: var(--ipp-soft);
}

.ipp-feature__title {
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 700;
}

.ipp-feature__text {
  margin: 0;
  font-size: 14px;
}

.ipp-ingredient {
  padding: 16px 0;
  border-bottom: 1px solid var(--ipp-line);
}

.ipp-ingredient:last-child {
  border-bottom: 0;
}

.ipp-ingredient__name {
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 700;
}

.ipp-ingredient__text {
  margin: 0 0 10px;
  font-size: 14px;
}

.ipp-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.ipp-tag {
  padding: 5px 9px;
  border-radius: 4px;
  background: var(--ipp-soft);
  border: 1px solid var(--ipp-line);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
}

.ipp-composition {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid var(--ipp-line);
  border-radius: var(--ipp-radius-sm);
  background: var(--ipp-soft);
  font-size: 14px;
}

.ipp-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
  border: 1px solid var(--ipp-line);
}

.ipp-table th,
.ipp-table td {
  padding: 11px 12px;
  border: 1px solid var(--ipp-line);
  text-align: left;
}

.ipp-table th {
  background: var(--ipp-soft);
  font-weight: 700;
}

.ipp-params {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ipp-params li {
  display: grid;
  grid-template-columns: minmax(140px, 220px) 1fr;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid var(--ipp-line);
  font-size: 14px;
}

.ipp-params li:last-child {
  border-bottom: 0;
}

.ipp-params strong {
  color: var(--ipp-muted);
  font-weight: 600;
}

/* Rich media blocks – Vilgain / Brainmarket / Aktin style */

/* Barevná story karta (jako Aktin) */
.ipp-story-card {
  position: relative;
  margin: 20px 0;
  padding: clamp(24px, 4vw, 36px);
  border-radius: var(--ipp-radius);
  overflow: hidden;
  color: #fff;
  text-align: center;
}

.ipp-story-card--mint {
  background: linear-gradient(165deg, #7ec8c8 0%, #6ab5b8 55%, #5aa8ab 100%);
}

.ipp-story-card--blue {
  background: linear-gradient(165deg, #6b9fd4 0%, #5a8fc4 55%, #4a7fb4 100%);
}

.ipp-story-card--coral {
  background: linear-gradient(165deg, #e8a598 0%, #d89285 55%, #c88073 100%);
}

.ipp-story-card--dark {
  background: linear-gradient(165deg, #3d4248 0%, #303233 100%);
}

.ipp-story-card--photo {
  background-color: #6ab5b8;
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
}

.ipp-story-card--photo::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(106, 181, 184, 0.92) 0%, rgba(106, 181, 184, 0.78) 55%, rgba(90, 168, 171, 0.55) 100%);
  pointer-events: none;
}

.ipp-story-card > * {
  position: relative;
  z-index: 1;
}

.ipp-story-card__title {
  margin: 0 0 14px;
  font-size: clamp(20px, 2.4vw, 26px);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: #fff;
}

.ipp-story-card__text {
  margin: 0 auto 22px;
  max-width: 640px;
  font-size: clamp(14px, 1.6vw, 16px);
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.95);
}

.ipp-story-card__text strong {
  font-weight: 700;
  color: #fff;
}

.ipp-story-card__icons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px 28px;
  max-width: 720px;
  margin: 0 auto;
}

.ipp-story-card__icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  flex: 1 1 140px;
  max-width: 220px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
  color: #fff;
}

.ipp-story-card__icon img,
.ipp-story-card__icon svg {
  display: block;
  width: 48px;
  height: 48px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.ipp-media {
  display: block;
  width: 100%;
  margin: 20px 0;
  border-radius: var(--ipp-radius-sm);
  overflow: hidden;
}

.ipp-media img {
  display: block;
  width: 100%;
  height: auto;
  border: 0;
}

.ipp-media--hero img {
  border-radius: var(--ipp-radius-sm);
}

.ipp-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 20px;
  align-items: center;
  margin: 24px 0;
}

.ipp-split__media img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--ipp-radius-sm);
}

.ipp-split__title {
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

.ipp-split__text {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: #333;
}

.ipp-icon-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 24px 0;
}

.ipp-icon-card {
  padding: 16px;
  border: 1px solid var(--ipp-line);
  border-radius: var(--ipp-radius-sm);
  background: var(--ipp-soft);
  text-align: center;
}

.ipp-icon-card img {
  display: block;
  width: 56px;
  height: 56px;
  margin: 0 auto 12px;
  object-fit: contain;
}

.ipp-icon-card__title {
  margin: 0 0 6px;
  font-size: 14px;
  font-weight: 700;
}

.ipp-icon-card__text {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: #333;
}

.ipp-gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 20px 0;
}

.ipp-gallery img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--ipp-radius-sm);
}

.ipp-rating-content:empty::before {
  content: "Zatím nejsou k dispozici žádná hodnocení.";
  display: block;
  padding: 16px;
  border: 1px solid var(--ipp-line);
  border-radius: var(--ipp-radius-sm);
  background: var(--ipp-soft);
  font-size: 14px;
}

.ipp-rating-content .tab-pane,
.ipp-rating-content .fade,
.ipp-rating-content .hidden {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

@media (max-width: 991px) {
  .ipp-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  body.type-detail .p-detail-inner-header,
  body.in-detail .p-detail-inner-header,
  body.type-detail .product-top,
  body.in-detail .product-top,
  body.type-detail .p-detail-tabs-wrapper,
  body.in-detail .p-detail-tabs-wrapper {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .ipp-nav-wrap {
    top: 64px;
  }

  .ipp-params li {
    grid-template-columns: 1fr;
  }

  .ipp-split {
    grid-template-columns: 1fr;
  }

  .ipp-icon-grid {
    grid-template-columns: 1fr;
  }

  .ipp-story-card__icons {
    flex-direction: column;
    align-items: center;
  }

  .ipp-story-card__icon {
    max-width: 280px;
  }

  .ipp-gallery {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 480px) {
  .ipp-trust {
    grid-template-columns: 1fr;
  }
}

/* ─── Mobile PDP stack: category → title → flags → rating → gallery (CSS order) ─── */
@media (max-width: 767px) {
  body.type-detail .breadcrumbs,
  body.in-detail .breadcrumbs {
    margin-bottom: 6px !important;
    padding-top: 8px !important;
    padding-bottom: 4px !important;
  }

  body.type-detail .breadcrumbs-wrapper,
  body.in-detail .breadcrumbs-wrapper,
  body.type-detail .breadcrumbs-wrapper.container,
  body.in-detail .breadcrumbs-wrapper.container {
    margin-bottom: 0 !important;
  }

  body.type-detail .content-inner,
  body.in-detail .content-inner {
    padding: 8px 0 40px !important;
  }

  body.type-detail .row.product-top,
  body.in-detail .row.product-top,
  body.type-product.type-detail .row.product-top {
    gap: 20px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body.type-detail .row.product-top > .ipp-pdp-empty-col,
  body.in-detail .row.product-top > .ipp-pdp-empty-col {
    display: none !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper {
    position: static !important;
    top: auto !important;
    display: flex !important;
    flex-direction: column !important;
    visibility: visible !important;
    width: 100% !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .ipp-buy-category,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .ipp-buy-category {
    order: 1 !important;
    display: inline-block !important;
    margin: 0 0 10px !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .p-detail-inner-header,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .p-detail-inner-header,
  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .ipp-vilgain-header,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .ipp-vilgain-header {
    order: 2 !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .p-detail-inner-header h1,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .p-detail-inner-header h1 {
    font-size: clamp(26px, 7vw, 32px) !important;
    line-height: 1.14 !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .ipp-vilgain-meta,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .ipp-vilgain-meta,
  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .p-detail-info,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .p-detail-info {
    display: contents !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper .ipp-buy-flags-row,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper .ipp-buy-flags-row {
    order: 3 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 5px !important;
    width: 100% !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper .ipp-buy-flags-row::-webkit-scrollbar,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper .ipp-buy-flags-row::-webkit-scrollbar {
    display: none !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper .ipp-buy-rating-row,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper .ipp-buy-rating-row {
    order: 4 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 0 0 14px !important;
    padding: 0 0 14px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--ipp-line) !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .p-image-wrapper,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .p-image-wrapper,
  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .ipp-pdp-mobile-gallery,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .ipp-pdp-mobile-gallery {
    order: 5 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .p-image-wrapper.ipp-gallery,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .p-image-wrapper.ipp-gallery,
  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .ipp-pdp-mobile-gallery.ipp-gallery,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .ipp-pdp-mobile-gallery.ipp-gallery {
    display: flex !important;
    flex-direction: column !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .p-image-wrapper.ipp-gallery.ipp-gallery--has-lifestyle-row,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .p-image-wrapper.ipp-gallery.ipp-gallery--has-lifestyle-row,
  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .ipp-pdp-mobile-gallery.ipp-gallery.ipp-gallery--has-lifestyle-row,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .ipp-pdp-mobile-gallery.ipp-gallery.ipp-gallery--has-lifestyle-row {
    gap: var(--ipp-pdp-stack-gap, 18px) !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .ipp-pdp-mobile-gallery .p-image,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .ipp-pdp-mobile-gallery .p-image {
    padding: clamp(12px, 3vw, 20px) !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .ipp-buy-price-row,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .ipp-buy-price-row,
  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .p-final-price-wrapper,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .p-final-price-wrapper {
    order: 6 !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .detail-parameters,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .detail-parameters {
    order: 7 !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .ipp-checkout-row,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .ipp-checkout-row {
    order: 8 !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .add-to-cart,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .add-to-cart {
    order: 9 !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .ipp-buy-footer,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .ipp-buy-footer {
    order: 11 !important;
    margin-top: 20px !important;
    padding-top: 16px !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper > .ipp-mobile-product-content-host,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper > .ipp-mobile-product-content-host {
    order: 10 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: var(--ipp-pdp-stack-gap, 18px) !important;
    width: 100% !important;
    margin: 16px 0 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .ipp-mobile-product-content-host > .iontmax-product-content,
  body.ipp-mobile-pdp-ready.in-detail .ipp-mobile-product-content-host > .iontmax-product-content,
  body.ipp-mobile-pdp-ready.type-detail .ipp-mobile-product-content-host > .ipp,
  body.ipp-mobile-pdp-ready.in-detail .ipp-mobile-product-content-host > .ipp {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--ipp-pdp-stack-gap, 18px) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .ipp-mobile-product-content-host .iontmax-product-nav-wrap,
  body.ipp-mobile-pdp-ready.in-detail .ipp-mobile-product-content-host .iontmax-product-nav-wrap,
  body.ipp-mobile-pdp-ready.type-detail .ipp-mobile-product-content-host .ipp-nav-wrap,
  body.ipp-mobile-pdp-ready.in-detail .ipp-mobile-product-content-host .ipp-nav-wrap {
    margin: 0 !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .ipp-mobile-product-content-host .iontmax-section,
  body.ipp-mobile-pdp-ready.in-detail .ipp-mobile-product-content-host .iontmax-section,
  body.ipp-mobile-pdp-ready.type-detail .ipp-mobile-product-content-host .iontmax-rating-inline,
  body.ipp-mobile-pdp-ready.in-detail .ipp-mobile-product-content-host .iontmax-rating-inline {
    margin-bottom: 0 !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-info-wrapper:has(.ipp-mobile-product-content-host .iontmax-section) > .ipp-buy-footer,
  body.ipp-mobile-pdp-ready.in-detail .p-info-wrapper:has(.ipp-mobile-product-content-host .iontmax-section) > .ipp-buy-footer {
    display: none !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .p-image-wrapper .ipp-pdp-desc-slot:empty,
  body.ipp-mobile-pdp-ready.in-detail .p-image-wrapper .ipp-pdp-desc-slot:empty {
    display: none !important;
  }

  body.ipp-mobile-pdp-ready.type-detail .ipp-buy-footer .p-short-description,
  body.ipp-mobile-pdp-ready.in-detail .ipp-buy-footer .p-short-description {
    display: block !important;
    max-width: none !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
  }
}

/* ─── Desktop restore after mobile PDP ─── */
@media (min-width: 768px) {
  body.type-detail .row.product-top > .ipp-pdp-empty-col,
  body.in-detail .row.product-top > .ipp-pdp-empty-col {
    display: block !important;
  }

  body:not(.ipp-mobile-pdp-ready).type-detail .p-info-wrapper,
  body:not(.ipp-mobile-pdp-ready).in-detail .p-info-wrapper {
    display: block !important;
  }

  body:not(.ipp-mobile-pdp-ready).type-detail .p-info-wrapper > *,
  body:not(.ipp-mobile-pdp-ready).in-detail .p-info-wrapper > * {
    order: unset !important;
  }

  body:not(.ipp-mobile-pdp-ready).type-detail .p-info-wrapper .ipp-vilgain-meta,
  body:not(.ipp-mobile-pdp-ready).in-detail .p-info-wrapper .ipp-vilgain-meta,
  body:not(.ipp-mobile-pdp-ready).type-detail .p-info-wrapper .p-detail-info,
  body:not(.ipp-mobile-pdp-ready).in-detail .p-info-wrapper .p-detail-info {
    display: flex !important;
  }
}

/* ─── Mobile buy box polish (v50) ─── */
@media (max-width: 767px) {
  body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row,
  body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row {
    margin: 12px 0 12px !important;
    gap: 8px !important;
  }

  body.ipp-buy-v1-ready.type-detail .ipp-buy-price-row .availability.ipp-buy-stock,
  body.ipp-buy-v1-ready.in-detail .ipp-buy-price-row .availability.ipp-buy-stock {
    margin: 0 !important;
    max-width: 100% !important;
  }

  body.ipp-buy-v1-ready.type-detail .detail-parameters,
  body.ipp-buy-v1-ready.in-detail .detail-parameters,
  body.ipp-soft-picker-ready.type-detail .detail-parameters,
  body.ipp-soft-picker-ready.in-detail .detail-parameters {
    margin: 0 0 12px !important;
  }

  body.ipp-soft-picker-ready.type-detail .detail-parameters tr:has(.ipp-soft-picker) + tr:has(.ipp-soft-picker),
  body.ipp-soft-picker-ready.in-detail .detail-parameters tr:has(.ipp-soft-picker) + tr:has(.ipp-soft-picker),
  body.ipp-soft-picker-ready.type-detail .detail-parameters .ipp-soft-picker + .ipp-soft-picker,
  body.ipp-soft-picker-ready.in-detail .detail-parameters .ipp-soft-picker + .ipp-soft-picker {
    margin-top: 12px !important;
  }

  body.ipp-soft-picker-ready.type-detail .ipp-soft-picker__label,
  body.ipp-soft-picker-ready.in-detail .ipp-soft-picker__label {
    margin: 0 0 6px !important;
  }

  body.ipp-soft-picker-ready.type-detail .ipp-soft-picker__options,
  body.ipp-soft-picker-ready.in-detail .ipp-soft-picker__options {
    gap: 4px !important;
    padding: 4px !important;
    border: 1px solid var(--ipp-line) !important;
    border-radius: var(--ipp-radius-sm) !important;
    background: #fff !important;
  }

  body.ipp-soft-picker-ready.type-detail .ipp-soft-picker__option,
  body.ipp-soft-picker-ready.in-detail .ipp-soft-picker__option {
    flex: 1 1 auto !important;
    min-height: 44px !important;
    padding: 10px 12px !important;
    border-radius: 6px !important;
  }

  body.ipp-soft-picker-ready.type-detail .ipp-soft-picker--single,
  body.ipp-soft-picker-ready.in-detail .ipp-soft-picker--single {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: center !important;
  }

  body.ipp-soft-picker-ready.type-detail .ipp-soft-picker--single .ipp-soft-picker__label,
  body.ipp-soft-picker-ready.in-detail .ipp-soft-picker--single .ipp-soft-picker__label {
    margin: 0 !important;
    white-space: nowrap !important;
  }

  body.ipp-soft-picker-ready.type-detail .ipp-soft-picker--single .ipp-soft-picker__options,
  body.ipp-soft-picker-ready.in-detail .ipp-soft-picker--single .ipp-soft-picker__options {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body.ipp-soft-picker-ready.type-detail .ipp-soft-picker--single .ipp-soft-picker__option,
  body.ipp-soft-picker-ready.in-detail .ipp-soft-picker--single .ipp-soft-picker__option {
    width: 100% !important;
    min-height: 44px !important;
    padding: 10px 14px !important;
    border: 1px solid var(--ipp-line) !important;
    border-radius: var(--ipp-radius-sm) !important;
    background: var(--ipp-soft) !important;
    color: var(--ipp-text) !important;
    font-weight: 600 !important;
    text-align: left !important;
    cursor: default !important;
    pointer-events: none !important;
  }

  body.ipp-checkout-split-ready.type-detail .ipp-checkout-row,
  body.ipp-checkout-split-ready.in-detail .ipp-checkout-row {
    margin: 10px 0 16px !important;
    gap: 8px !important;
  }

  body.type-detail .add-to-cart .btn-secondary,
  body.in-detail .add-to-cart .btn-secondary,
  body.type-detail .express-checkout-button,
  body.in-detail .express-checkout-button {
    border: 1.5px solid #cfcfcf !important;
    background: var(--ipp-soft) !important;
    color: var(--ipp-text) !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.6) !important;
  }

  body.type-detail .add-to-cart .btn-secondary:hover,
  body.in-detail .add-to-cart .btn-secondary:hover,
  body.type-detail .express-checkout-button:hover,
  body.in-detail .express-checkout-button:hover {
    border-color: var(--ipp-accent) !important;
    background: #fff !important;
  }

  body.ipp-checkout-split-ready.type-detail .add-to-cart .btn-secondary,
  body.ipp-checkout-split-ready.in-detail .add-to-cart .btn-secondary,
  body.ipp-checkout-split-ready.type-detail .express-checkout-button,
  body.ipp-checkout-split-ready.in-detail .express-checkout-button,
  body.ipp-checkout-simple-ready.type-detail .add-to-cart .btn-secondary,
  body.ipp-checkout-simple-ready.in-detail .add-to-cart .btn-secondary,
  body.ipp-checkout-simple-ready.type-detail .express-checkout-button,
  body.ipp-checkout-simple-ready.in-detail .express-checkout-button {
    margin: 0 !important;
  }
}

/* ─── Shoptet long description: .iontmax-product-content (FuelGel apod.) ─── */

.iontmax-product-content {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  color: var(--ipp-text);
  font-size: 15px;
  line-height: 1.65;
  text-align: left;
  box-sizing: border-box;
}

.iontmax-product-nav-wrap {
  width: 100%;
  margin: 16px 0 24px;
  padding: 0;
  box-sizing: border-box;
  background: transparent;
  border: 0;
  border-radius: 0;
}

.iontmax-product-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 8px;
  width: 100%;
  margin: 0;
  padding: 0;
}

.iontmax-product-nav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 20px;
  border: 1px solid var(--ipp-line);
  border-radius: 10px;
  background: #ececee;
  color: var(--ipp-text);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
  cursor: pointer;
  box-sizing: border-box;
}

.iontmax-product-nav a:hover,
.iontmax-product-nav a:focus-visible {
  background: #e2e2e5;
  border-color: #d4d4d8;
  color: var(--ipp-text);
  text-decoration: none;
  transform: translateY(-1px);
  outline: none;
}

.iontmax-product-nav a.is-active {
  background: #ffffff;
  border-color: var(--ipp-accent);
  box-shadow: 0 1px 2px rgba(17, 18, 20, 0.06);
}

.iontmax-product-nav a::after {
  content: "↓";
  display: inline-block;
  margin-left: 8px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
}

.iontmax-section,
.iontmax-rating-inline {
  width: 100%;
  margin: 0 0 18px;
  padding: clamp(18px, 3vw, 24px);
  box-sizing: border-box;
  scroll-margin-top: 100px;
  background: var(--ipp-card);
  border: 1px solid var(--ipp-line);
  border-radius: var(--ipp-radius);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

#ipp-pdp-rating-outside-host > #ipp-rating-content,
#ipp-pdp-rating-outside-host > #iontmax-rating-content {
  width: 100%;
  margin: 0 0 18px;
  padding: clamp(18px, 3vw, 24px);
  box-sizing: border-box;
  scroll-margin-top: 100px;
  background: var(--ipp-card);
  border: 1px solid var(--ipp-line);
  border-radius: var(--ipp-radius);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.iontmax-rating-inline > .iontmax-rating-content,
.iontmax-rating-inline > .ipp-rating-content,
.iontmax-rating-inline > #ipp-rating-content,
.iontmax-rating-inline > #iontmax-rating-content,
#ipp-rating-content > .iontmax-rating-content,
#ipp-rating-content > .ipp-rating-content,
#iontmax-rating-content > .iontmax-rating-content,
#iontmax-rating-content > .ipp-rating-content {
  width: 100%;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  border-radius: 0;
}

.iontmax-section h2,
.iontmax-rating-content > h2,
.iontmax-rating-content > .active > h2 {
  margin: 0 0 16px;
  padding: 0 0 12px;
  border-bottom: 1px solid var(--ipp-line);
  color: var(--ipp-text);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 800;
  line-height: 1.2;
}

.iontmax-section ul {
  margin: 0;
  padding: 0 0 0 20px;
  list-style-position: outside;
}

.iontmax-section li {
  margin: 0 0 10px;
  padding-left: 3px;
}

.iontmax-section li:last-child {
  margin-bottom: 0;
}

.iontmax-section li strong {
  font-weight: 700;
  color: var(--ipp-text);
}

.iontmax-ingredient-list {
  width: 100%;
  margin: 0;
  padding: 0;
  line-height: 1.45;
}

.iontmax-ingredient-item {
  width: 100%;
  padding: 16px 0;
  border-bottom: 1px solid var(--ipp-line);
  box-sizing: border-box;
}

.iontmax-ingredient-item:first-child {
  padding-top: 0;
}

.iontmax-ingredient-item:last-child {
  border-bottom: 0;
}

.iontmax-ingredient-name {
  margin-bottom: 6px;
  color: var(--ipp-text);
  font-size: 16px;
  font-weight: 800;
}

.iontmax-ingredient-text {
  margin-bottom: 10px;
  color: #333;
  font-size: 14px;
}

.iontmax-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.iontmax-tag {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  white-space: nowrap;
}

.iontmax-tag img {
  display: inline-block;
  width: 14px;
  height: 14px;
}

.iontmax-tag-natural {
  background: #eaf7ea;
  color: #1f6b2a;
}

.iontmax-tag-energy {
  background: #fff4e5;
  color: #9a5a00;
}

.iontmax-tag-quality {
  background: #eef2ff;
  color: #244c9a;
}

.iontmax-tag-electrolytes {
  background: #e8f4fb;
  color: #2a6f94;
}

.iontmax-composition {
  margin-top: 18px;
  padding: 14px 16px;
  border: 1px solid var(--ipp-line);
  border-radius: var(--ipp-radius-sm);
  background: var(--ipp-soft);
  font-size: 14px;
  text-align: left;
}

.iontmax-table-wrap {
  width: 100%;
  overflow-x: auto;
  margin: 0;
  padding: 0;
}

.iontmax-nutrition-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  font-size: 13px;
  border: 1px solid #cfcfcf;
}

.iontmax-nutrition-table th {
  padding: 11px 12px;
  border: 1px solid #cfcfcf;
  background: var(--ipp-soft);
  color: var(--ipp-text);
  font-size: 13px;
  font-weight: 800;
  text-align: left;
  vertical-align: top;
}

.iontmax-nutrition-table td {
  padding: 11px 12px;
  border: 1px solid #dedede;
  color: var(--ipp-text);
  font-size: 13px;
  vertical-align: top;
}

.iontmax-nutrition-table tbody tr:nth-child(even) td {
  background: #f6f6f7;
}

.iontmax-nutrition-table td:first-child {
  font-weight: 800;
}

.iontmax-rating-content {
  width: 100%;
  max-width: 100%;
}

.iontmax-rating-content:empty::before {
  content: "Zatím nejsou k dispozici žádná hodnocení.";
  display: block;
  padding: 14px 16px;
  border: 1px solid var(--ipp-line);
  border-radius: var(--ipp-radius-sm);
  background: var(--ipp-soft);
  font-size: 14px;
  color: var(--ipp-muted);
}

.iontmax-rating-content .tab-pane,
.iontmax-rating-content .fade,
.iontmax-rating-content .hidden {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.ipp-product-content-ready.type-detail .p-detail-tabs-wrapper .tab-content > .tab-pane:not(#description),
body.ipp-product-content-ready.in-detail .p-detail-tabs-wrapper .tab-content > .tab-pane:not(#description) {
  display: none !important;
}

body.ipp-product-content-ready.type-detail #description.tab-pane,
body.ipp-product-content-ready.in-detail #description.tab-pane {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

@media (max-width: 768px) {
  .iontmax-product-nav-wrap {
    margin: 12px 0 20px;
    padding: 0;
    border: 0;
    background: transparent;
    border-radius: 0;
  }

  .iontmax-product-nav {
    justify-content: flex-start;
    gap: 8px;
  }

  .iontmax-product-nav a {
    flex: 1 1 calc(50% - 8px);
    min-width: calc(50% - 8px);
    min-height: 44px;
    padding: 0 12px;
    font-size: 13px;
  }

  .iontmax-section,
  .iontmax-rating-inline {
    margin-bottom: 16px;
    padding: 18px;
    border-radius: var(--ipp-radius-sm);
    scroll-margin-top: 88px;
  }

  .iontmax-section h2,
  .iontmax-rating-content > h2,
  .iontmax-rating-content > .active > h2 {
    margin-bottom: 14px;
    padding-bottom: 10px;
    font-size: 24px;
  }

  .iontmax-ingredient-name {
    font-size: 15px;
  }

  .iontmax-ingredient-text {
    font-size: 13px;
  }

  .iontmax-nutrition-table {
    min-width: 520px;
    font-size: 11.5px;
  }

  .iontmax-nutrition-table th,
  .iontmax-nutrition-table td {
    padding: 8px 9px;
    font-size: 11.5px;
  }
}

@media (max-width: 420px) {
  .iontmax-product-nav a {
    flex: 1 1 100%;
    min-width: 100%;
  }

  .iontmax-section,
  .iontmax-rating-inline {
    padding: 16px;
  }

  .iontmax-section h2,
  .iontmax-rating-content > h2,
  .iontmax-rating-content > .active > h2 {
    font-size: 22px;
  }
}

/* ─── Product ratings (iontmax + ipp description blocks) ─── */

.iontmax-rating-content,
.ipp-rating-content {
  --ipp-rating-star-on: #f5a623;
  --ipp-rating-star-off: #d1d5db;
  --ipp-rating-track: #ececec;
  --ipp-rating-fill: #303233;
}

.iontmax-rating-content .rate-wrapper,
.ipp-rating-content .rate-wrapper {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

.iontmax-rating-content .rate-wrap,
.ipp-rating-content .rate-wrap {
  display: grid !important;
  grid-template-columns: minmax(0, 220px) minmax(0, 1fr) !important;
  gap: 24px 32px !important;
  align-items: start !important;
  margin: 0 0 20px !important;
}

.iontmax-rating-content .rate-average-wrap,
.ipp-rating-content .rate-average-wrap {
  width: 100% !important;
  margin: 0 !important;
}

.iontmax-rating-content .rate-average-inner,
.ipp-rating-content .rate-average-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 8px !important;
  margin: 0 !important;
}

.iontmax-rating-content .rate-average,
.ipp-rating-content .rate-average {
  color: var(--ipp-text) !important;
  font-size: clamp(42px, 5vw, 52px) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: -0.03em !important;
}

.iontmax-rating-content .rate-star-wrap,
.ipp-rating-content .rate-star-wrap {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 6px !important;
  margin: 0 !important;
}

.iontmax-rating-content .stars-label,
.ipp-rating-content .stars-label,
.iontmax-rating-content .starsLabel--productDetail,
.ipp-rating-content .starsLabel--productDetail {
  color: var(--ipp-muted) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
}

.iontmax-rating-content .stars,
.ipp-rating-content .stars {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  margin: 0 !important;
  height: auto !important;
}

.iontmax-rating-content .star::before,
.ipp-rating-content .star::before {
  font-size: 18px !important;
  line-height: 1 !important;
}

.iontmax-rating-content .star.star-on::before,
.ipp-rating-content .star.star-on::before {
  color: var(--ipp-rating-star-on) !important;
}

.iontmax-rating-content .star.star-off::before,
.ipp-rating-content .star.star-off::before {
  color: var(--ipp-rating-star-off) !important;
}

.iontmax-rating-content .votes,
.ipp-rating-content .votes {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 !important;
}

.iontmax-rating-content .rate-list,
.ipp-rating-content .rate-list {
  display: grid !important;
  grid-template-columns: 36px minmax(0, 1fr) 32px !important;
  gap: 10px !important;
  align-items: center !important;
  margin: 0 !important;
}

.iontmax-rating-content .rate-list .rate-star,
.ipp-rating-content .rate-list .rate-star {
  grid-column: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  margin: 0 !important;
}

.iontmax-rating-content .rate-list .rate-value,
.ipp-rating-content .rate-list .rate-value {
  min-width: 10px !important;
  color: var(--ipp-muted) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

.iontmax-rating-content .rate-list .rate-star .star::before,
.ipp-rating-content .rate-list .rate-star .star::before {
  font-size: 13px !important;
}

.iontmax-rating-content .rate-block,
.ipp-rating-content .rate-block {
  grid-column: 2 !important;
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  overflow: hidden !important;
}

.iontmax-rating-content .rate-bar,
.ipp-rating-content .rate-bar {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 8px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(
    to right,
    var(--ipp-rating-fill) 0,
    var(--ipp-rating-fill) var(--rate-bar-width, 0%),
    var(--ipp-rating-track) var(--rate-bar-width, 0%),
    var(--ipp-rating-track) 100%
  ) !important;
  animation: none !important;
}

.iontmax-rating-content .rate-count,
.ipp-rating-content .rate-count {
  grid-column: 3 !important;
  position: static !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  min-width: 0 !important;
  color: var(--ipp-muted) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-align: right !important;
  visibility: visible !important;
  opacity: 1 !important;
  animation: none !important;
}

.iontmax-rating-content .rate-count.active,
.ipp-rating-content .rate-count.active {
  color: var(--ipp-text) !important;
}

.iontmax-rating-content .add-comment,
.ipp-rating-content .add-comment {
  display: block !important;
  margin: 0 0 20px !important;
}

.iontmax-rating-content .add-comment .btn,
.ipp-rating-content .add-comment .btn,
.iontmax-rating-content .vote-form .btn-primary,
.ipp-rating-content .vote-form .btn-primary {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  padding: 0 20px !important;
  border: 1px solid var(--ipp-accent) !important;
  border-radius: 10px !important;
  background: var(--ipp-accent) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

.iontmax-rating-content .add-comment .btn:hover,
.ipp-rating-content .add-comment .btn:hover,
.iontmax-rating-content .vote-form .btn-primary:hover,
.ipp-rating-content .vote-form .btn-primary:hover {
  background: #1a1b1d !important;
  border-color: #1a1b1d !important;
  color: #ffffff !important;
}

.iontmax-rating-content .vote-form,
.ipp-rating-content .vote-form {
  margin: 0 0 24px !important;
  padding: 18px !important;
  border: 1px solid var(--ipp-line) !important;
  border-radius: var(--ipp-radius-sm) !important;
  background: var(--ipp-soft) !important;
}

.iontmax-rating-content .vote-form.js-hidden,
.ipp-rating-content .vote-form.js-hidden {
  display: none !important;
}

.iontmax-rating-content .vote-form h3,
.ipp-rating-content .vote-form h3 {
  margin: 0 0 16px !important;
  color: var(--ipp-text) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

.iontmax-rating-content .vote-form .form-group,
.ipp-rating-content .vote-form .form-group {
  margin-bottom: 14px !important;
}

.iontmax-rating-content .vote-form label:not(.rating-star),
.ipp-rating-content .vote-form label:not(.rating-star),
.iontmax-rating-content .vote-form .rating-stars-description,
.ipp-rating-content .vote-form .rating-stars-description {
  display: block !important;
  margin: 0 0 6px !important;
  color: var(--ipp-text) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

.iontmax-rating-content .vote-form .form-control,
.ipp-rating-content .vote-form .form-control,
.iontmax-rating-content .vote-form textarea.form-control,
.ipp-rating-content .vote-form textarea.form-control {
  width: 100% !important;
  min-height: 44px !important;
  padding: 10px 14px !important;
  border: 1px solid var(--ipp-line) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  color: var(--ipp-text) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  box-shadow: none !important;
}

.iontmax-rating-content .vote-form textarea.form-control,
.ipp-rating-content .vote-form textarea.form-control {
  min-height: 120px !important;
  resize: vertical !important;
}

.iontmax-rating-content .vote-form .form-control:focus,
.ipp-rating-content .vote-form .form-control:focus {
  border-color: var(--ipp-accent) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(48, 50, 51, 0.12) !important;
}

.iontmax-rating-content .rating-stars-wrapper,
.ipp-rating-content .rating-stars-wrapper {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px !important;
  margin-top: 4px !important;
  position: relative !important;
  z-index: 2 !important;
  pointer-events: auto !important;
}

.iontmax-rating-content .vote-form .rating-star,
.ipp-rating-content .vote-form .rating-star {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  width: 36px !important;
  height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  z-index: 1 !important;
}

.iontmax-rating-content .vote-form .rating-star::before,
.ipp-rating-content .vote-form .rating-star::before {
  color: var(--ipp-rating-star-off) !important;
  font-size: 24px !important;
  line-height: 1 !important;
  pointer-events: none !important;
  position: relative !important;
  z-index: 0 !important;
}

.iontmax-rating-content .vote-form .rating-star.full::before,
.ipp-rating-content .vote-form .rating-star.full::before,
.iontmax-rating-content .vote-form .rating-star:has(input:checked)::before,
.ipp-rating-content .vote-form .rating-star:has(input:checked)::before {
  color: var(--ipp-rating-star-on) !important;
}

.iontmax-rating-content .vote-form .rating-star input,
.ipp-rating-content .vote-form .rating-star input {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  border: 0 !important;
  background: transparent !important;
  clip: auto !important;
  overflow: visible !important;
  white-space: normal !important;
}

.iontmax-rating-content .consents label,
.ipp-rating-content .consents label {
  color: var(--ipp-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
}

.iontmax-rating-content .consents a,
.ipp-rating-content .consents a {
  color: var(--ipp-text) !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

.iontmax-rating-content .ratingsList,
.ipp-rating-content .ratingsList,
.iontmax-rating-content .votes-wrap,
.ipp-rating-content .votes-wrap {
  margin: 0 !important;
  padding: 20px 0 0 !important;
  border-top: 1px solid var(--ipp-line) !important;
}

.iontmax-rating-content .vote-wrap,
.ipp-rating-content .vote-wrap {
  margin: 0 !important;
  padding: 18px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ipp-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

.iontmax-rating-content .vote-wrap:last-child,
.ipp-rating-content .vote-wrap:last-child {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.iontmax-rating-content .vote-header,
.ipp-rating-content .vote-header {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 0 12px !important;
}

.iontmax-rating-content .vote-pic,
.ipp-rating-content .vote-pic {
  flex: 0 0 48px !important;
  width: 48px !important;
  height: 48px !important;
}

.iontmax-rating-content .vote-pic img,
.ipp-rating-content .vote-pic img {
  display: block !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 999px !important;
  object-fit: cover !important;
}

.iontmax-rating-content .vote-initials,
.ipp-rating-content .vote-initials {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 999px !important;
  background: var(--avatar-bg, var(--ipp-accent)) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

.iontmax-rating-content .vote-summary,
.ipp-rating-content .vote-summary {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 4px !important;
  min-width: 0 !important;
}

.iontmax-rating-content .vote-name,
.ipp-rating-content .vote-name {
  color: var(--ipp-text) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

.iontmax-rating-content .vote-rating,
.ipp-rating-content .vote-rating {
  display: inline-flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
}

.iontmax-rating-content .vote-delimeter,
.ipp-rating-content .vote-delimeter {
  color: var(--ipp-line) !important;
}

.iontmax-rating-content .vote-time,
.ipp-rating-content .vote-time {
  color: var(--ipp-muted) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}

.iontmax-rating-content .vote-content,
.ipp-rating-content .vote-content {
  margin: 0 !important;
  padding: 0 0 0 60px !important;
  color: #333 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

@media (max-width: 768px) {
  .iontmax-rating-content .rate-wrap,
  .ipp-rating-content .rate-wrap {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .iontmax-rating-content .rate-average-inner,
  .ipp-rating-content .rate-average-inner {
    align-items: center !important;
    text-align: center !important;
  }

  .iontmax-rating-content .rate-star-wrap,
  .ipp-rating-content .rate-star-wrap {
    align-items: center !important;
  }

  .iontmax-rating-content .add-comment .btn,
  .ipp-rating-content .add-comment .btn {
    width: 100% !important;
  }

  .iontmax-rating-content .vote-content,
  .ipp-rating-content .vote-content {
    padding-left: 0 !important;
  }
}
