/* Grid přes celý seznam, ale jen tam, kde se zobrazují kategorie */
.woocommerce .products.columns-4 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--gap-desktop);
}

.woocommerce .products.columns-4::before {
  content: none;
  display: none;
}

.products.columns-4.produkty-zapujcit {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--gap-desktop);
  margin: 0;
}

.products.columns-4.produkty-zapujcit::before {
  content: none;
  display: none;
}

.woocommerce .products li.product .astra-shop-thumbnail-wrap a::before, 
.woocommerce-js .products li.product .astra-shop-thumbnail-wrap a::before {
    content: '';
    position: absolute;
    right: 0;
    bottom: 0;
    height: 22px;
    width: 22px;
    
    background-color: #008C9D;

    -webkit-mask-image: url("data:image/svg+xml;utf8,<svg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M5.50004 17.4166L17.4167 5.49996M17.4167 5.49996V16.94M17.4167 5.49996H5.97671' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");
    mask-image: url("data:image/svg+xml;utf8,<svg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M5.50004 17.4166L17.4167 5.49996M17.4167 5.49996V16.94M17.4167 5.49996H5.97671' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");
    
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    
    background-image: none; 

    transform: rotate(0deg);
    transition: transform 0.3s ease-in-out, background-color 0.3s ease-in-out;
}

.woocommerce .products li.product:hover .astra-shop-thumbnail-wrap a::before,
.woocommerce-js .products li.product:hover .astra-shop-thumbnail-wrap a::before {
    background-color: #57fff8;
    transform: rotate(45deg);
}

.woocommerce .products.categories {
  padding-bottom: 32px;
  margin-bottom: 0;
}

.woocommerce-js ul.products.columns-4 li {
  /*max-width: calc(var(--global-max-width) / 4 - var(--gap-desktop) / 3);*/
}

.woocommerce ul.products li.product:hover, 
.woocommerce-page ul.products li.product:hover {
  box-shadow: none;
}

.woocommerce-js ul.products li.product a img {
  height: 266px;       /* Vynutí přesnou výšku rámečku */
  width: 100%;         /* Šířka se přizpůsobí sloupci (cca 254px) */
  object-fit: contain; /* Klíčová vlastnost: zachová poměr stran a přidá "volné místo" okolo */
  object-position: center center; /* Vycentruje obrázek horizontálně i vertikálně */
  margin: 0 auto;
}

.woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce-js ul.products li.product .astra-shop-thumbnail-wrap {
  transition: var(--box-transition);
}

.woocommerce ul.products li.product:hover .astra-shop-thumbnail-wrap,
.woocommerce-js ul.products li.product:hover .astra-shop-thumbnail-wrap {
  /* Zdvojený rámeček fix: thumbnail-wrap je zaoblený box (radius 16 / padding 16)
     uvnitř karty; vlastní hover stín + posun kolem obrázku vypadal jako druhá karta.
     Hover stín patří jen CELÉ kartě (li.product.type-product:hover @227). */
  transform: none;
  box-shadow: none;
}

.woocommerce-js .astra-shop-thumbnail-wrap a {
  position: relative;
}

.woocommerce ul.products li.product, 
.woocommerce-page ul.products li.product {
  padding: 0;
  margin: 0;
  width: inherit;
}

/* Kartička pouze pro subkategorii (neovlivní .type-product) */
.woocommerce ul.products li.product.product-category {
  list-style: none;
  background: var(--tile-bg);
  border: 1px solid var(--tile-border);
  border-radius: var(--tile-radius);
  margin: 0;
  padding: 0; /* vynulujeme a řešíme uvnitř odkazu */
  text-align: left;
  display: flex;
}

/* Reset šířky karty v gridu pro flex grid */
.woocommerce-page.columns-4 ul.products li.product, .woocommerce.columns-4 ul.products li.product {
  width: 100%;
}

/* Klikací plocha jako flex řádek: ikona vlevo, text vpravo */
.woocommerce ul.products li.product.product-category > a {
  display: flex;
  align-items: center;
  gap: var(--tile-gap);
  padding: 8px;
  width: 100%;
  height: 100%;
  text-decoration: none !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

/* Ikona/obrázek subkategorie */
.woocommerce ul.products li.product.product-category a > img,
.woocommerce ul.products li.product.product-category a > svg {
  width: 76px;
  height: 76px;
  object-fit: contain;
  flex: 0 0 76px;
  margin: 0 !important;
  filter: drop-shadow(0 1px 1px rgba(0,0,0,.04));
}

/* Titulek subkategorie */
.woocommerce .woocommerce-loop-category__title {
  margin: 0;
  padding: 0;
  color: var(--title-color);
  font-size: var(--title-size);
  line-height: 1.25;
  font-weight: 600;
}

.woocommerce ul.products li.product .woocommerce-loop-category__title {
  position: initial;
  text-align: left;
}

/* Skryj počet produktů v návrhu (odstraní šedý badge) */
.woocommerce .woocommerce-loop-category__title .count,
.woocommerce .woocommerce-loop-category__title mark.count {
  display: none !important;
}

/* Hover/focus efekty */
.woocommerce ul.products li.product.product-category:hover > a,
.woocommerce ul.products li.product.product-category:focus-within > a {
  transform: translateY(-2px);
  box-shadow: var(--tile-shadow-hover);
  border-color: rgba(255, 102, 0, .25); /* jemný akcent; upravte na brand */
}

/* Jemná aktivní odezva při kliku */
.woocommerce ul.products li.product.product-category > a:active {
  transform: translateY(0);
  box-shadow: var(--tile-shadow);
}

.astra-shop-thumbnail-wrap {
  padding: var(--padding-16);
  background: white;
  border-radius: var(--radius-m);
}

.astra-shop-thumbnail-wrap img {
  max-height: 266px;
}

.astra-shop-thumbnail-wrap .astra-shop-thumbnail-wrap {
  height: 266px;
}

.astra-shop-thumbnail-wrap::after {
  
}

.woocommerce-page.rel-up-columns-4 div.product .related.products ul.products li.product {
  width: auto;
}

.related.products .astra-shop-summary-wrap .button.product_type_simple {
  display: none;
}


/* ===========================================================================
   PRODUKTOVÉ KARTY + RELATED — přesunuto z audit-fixes #24/#25 (konsolidace #6 2026-09-07)
   Card styling (bílá/border/radius/shadow), H1 nadpis archivu, related carousel karty+titulek.
   =========================================================================== */
/* #24 — Produkty: H1 nadpis "Produkty" má font-weight 400 místo 700
   Figma: font-weight 700 | Dev: font-weight 400
   Závažnost: Nízká */
.woocommerce-page .page-title,
.woocommerce-page h1.entry-title,
.woocommerce-page .ast-archive-title {
    font-weight: 700 !important;
}

/* #25 — Produkty: produktové karty bez card stylingu
   Figma: bílé bg, 1px border, radius 16px, shadow, teal šipka
   Dev: bg transparent, border none, radius 0
   Závažnost: Vysoká */
.woocommerce ul.products li.product.type-product {
    background: var(--tile-bg, #fff);
    border: 1px solid var(--tile-border, #EEF0F3);
    border-radius: var(--tile-radius, 16px);
    transition: box-shadow 0.2s ease;
    overflow: hidden;
}

.woocommerce ul.products li.product.type-product:hover {
    /* Figma Shadow/Elevation-1 (stejná jako Card/Blog hover) */
    box-shadow: 0px 16px 20px 0px rgba(0, 0, 0, 0.08);
}

/* #25 (rozšíření) — Podobné produkty v karuselu: stejné card stylování
   DOM: .related.products > .related-products-carousel.owl-carousel > li.type-product
   (bez ul.products wrapperu) → původní selektor s ul.products na tyto neplatil.
   Závažnost: Vysoká */
.related-products-carousel li.product.type-product,
.related.products .owl-carousel li.type-product {
    background: var(--tile-bg, #fff);
    border: 1px solid var(--tile-border, #EEF0F3);
    border-radius: var(--tile-radius, 16px);
    transition: box-shadow 0.2s ease;
    overflow: hidden;
}

.related-products-carousel li.product.type-product:hover,
.related.products .owl-carousel li.type-product:hover {
    /* Figma Shadow/Elevation-1 */
    box-shadow: 0px 16px 20px 0px rgba(0, 0, 0, 0.08);
}

/* #25 (rozšíření) — Detail produktu: desktop related carousel používá stejnou
   typografii titulku jako Card/Product ve Figmě. Astra default zde dával
   24px/700, takže texty byly příliš dominantní a lámaly karty jinak. */
body.single-product .related-products-carousel li.product .woocommerce-loop-product__title,
body.single-product .related.products .owl-carousel li.product .woocommerce-loop-product__title {
    height: 71px !important;
    margin: 0 !important;
    overflow: hidden !important;
    color: #022930 !important;
    font-size: 16px !important;
    font-weight: 450 !important;
    line-height: 1.6 !important;
}
/* --- Responsivita --- */
@media (max-width: 1200px) {
  .woocommerce .products.columns-4 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 900px) {
  .woocommerce .products.columns-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :root { --title-size: 20px; }
}
@media (max-width: 560px) {
  .woocommerce .products.columns-4 {
    grid-template-columns: 1fr;
  }
  .woocommerce ul.products li.product.product-category a > img {
    width: 64px; height: 64px; flex-basis: 64px;
  }
}

/* --- Bezpečnostní výjimky: nezasahovat do běžných produktů --- */
/* Ujistíme se, že defaultní karty produktů zůstávají vertikální */
.woocommerce ul.products li.product.type-product .woocommerce-LoopProduct-link {
    display: flex;
    min-height: 254px;
    align-items: center;
    justify-content: center;
}

/* schová fallback stránkování, pokud by ho téma přesto vykreslilo */
.woocommerce nav.woocommerce-pagination { display: none; }

#wc-load-more {
  height: 48;
  min-height: 48px;
  padding-top: var(--padding-12);
  padding-right: var(--padding-24);
  padding-bottom: var(--padding-12);
  padding-left: var(--padding-24);

  gap: 8;
  opacity: 1;
  border-radius: var(--radius-s);
  background: var(--button-primary-primary-default, #00DFEA);
  color: var(--text-positive-primary, #022930);

  font-family: Plus Jakarta Sans;
  font-weight: 600;
  font-style: SemiBold;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 0%;
  text-align: center;
}

#wc-load-more.is-loading { opacity:.7; pointer-events:none; }

.ast-single-product-thumbnails.slider-disabled .flex-direction-nav {
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: space-between;
  
  position: absolute;
  width: 100%;
  top: calc(50% - 20px);
  pointer-events: none; /* celý obal nebere události */
}

.woocommerce-product-gallery .flex-direction-nav .flex-prev, 
.woocommerce-product-gallery .flex-direction-nav .flex-next {
  width: 40px;
  height: 40px;

  position: relative;
  /*top: calc(50% - 20px);*/
  transform: initial;

  display: block;
  box-shadow: none;
  border-radius: var(--radius-s);
  border: 1px solid var(--button-secondary-secondary-bglight-default, #008C9D52);
  background-image: url("data:image/svg+xml;utf8,<svg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M7.5 5L12.5 10L7.5 15' stroke='%23022930' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat: no-repeat;
  background-size: 20px 20px;
  background-position: 50% 50%;
  pointer-events: auto; /* jen samotné šipky zůstanou klikatelné */
}

.ast-single-product-thumbnails .flex-direction-nav .flex-prev {
  left: -20px;
  top: -23px;
}

.ast-single-product-thumbnails .flex-direction-nav .flex-next {
  right: -20px;
  top: -23px;
}

.ast-single-product-thumbnails .flex-direction-nav .flex-prev:after,
.ast-single-product-thumbnails .flex-direction-nav .flex-next:after {
  content: initial;
}

.woocommerce-product-gallery .flex-direction-nav .flex-prev, 
#ast-vertical-navigation-prev {
  transform: rotate(180deg);
}

.woocommerce-product-gallery-thumbnails__wrapper {

}

.woocommerce-product-gallery img {
}

.ast-woocommerce-product-gallery__image {
  padding: 8px;
  background-color: #fff;
  border-radius: var(--radius-m);
}

.ast-woocommerce-product-gallery__image.flex-active-slide,
.ast-woocommerce-product-gallery__image.flex-active-slide img {
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  display: block;
}

.ast-woocommerce-product-gallery__image.flex-active-slide:after {
  border-radius: var(--radius-m);
  border: 1px solid var(--chips-categories-stroke-selected, #00DFEA);
}

.ast-single-product-thumbnails .flex-direction-nav {
  position: absolute;
  z-index: 1000;
  top: 0;
  width: 100%;
  height: 88px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  pointer-events: none;
}

.woocommerce-error, .woocommerce-info, .woocommerce-message {
  border: 0;
  border-radius: var(--radius-xs);
  margin: 0;
}

.woocommerce-error {
  border: 1px solid var(--error, #AF0009)
}
.woocommerce-error::before {
  color: var(--error, #AF0009)
}

.woocommerce-info {
  border: 1px solid var(--warning, #E98A00)
}
.woocommerce-info::before {
  color: var(--warning, #E98A00)
}

.woocommerce-message {
  border: 1px solid var(--button-primary-primary-hover, #57FFF8)
}
.woocommerce-message::before {
  color: var(--button-primary-primary-hover, #57FFF8)
}

/* ===========================================================================
   SUBKATEGORIE CHIPY (archiv) + PRODUCT GALLERY (single) — přesunuto z audit-fixes
   #26/#27 (konsolidace #6 2026-09-07).
   =========================================================================== */
/* #26 — Produkty: subkategorie jako horizontální card chipy místo velkých karet
   Figma node 1534:20849 (Chip/Product & category):
     - chip 298×72px, grid 4 sloupce, gap 16px
     - bg white, border-radius 12px (--radius-s), padding 8px 12px 8px 8px
     - image 56×56, border-radius 8px (--radius-xs), object-fit cover
     - text 16px / weight 450 / line-height 1.6, ellipsis nowrap, color #022930
   Dev (gamin2): PHP renderer vytváří správný DOM
     <div class="subcategory-chips">
       <a class="subcategory-chip">
         <div class="chip-image-wrap"><img class="chip-image"/></div>
         <span class="chip-name">…</span>
       </a>
     </div>
   ale CSS pro tyto třídy chyběl — chipy padaly na default <a>/<div>
   (stackované linky s velkými obrázky nahoře).
   Závažnost: Vysoká */
.subcategory-chips {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin: 32px 0;
    padding: 0;
    list-style: none;
}

.subcategory-chip {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 8px 12px 8px 8px;
    background: var(--chips-categories-fill-white, #ffffff);
    border-radius: var(--radius-s, 12px);
    overflow: hidden;
    height: 72px;
    box-sizing: border-box;
    text-decoration: none !important;
    transition: box-shadow 0.2s ease;
    cursor: pointer;
    /* Figma: Size=Large, Color=Green, State=Default — žádný border, žádný shadow */
}

.subcategory-chip:hover {
    /* Figma: Size=Large, Color=Green, State=Hovered — Shadow/Elevation-1 */
    box-shadow: 0px 16px 20px 0px rgba(0, 0, 0, 0.08);
}

.subcategory-chip .chip-image-wrap {
    width: 56px;
    height: 56px;
    border-radius: var(--radius-xs, 8px);
    overflow: hidden;
    flex-shrink: 0;
    background: transparent;
}

.subcategory-chip .chip-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    max-width: 100%;
    max-height: 100%;
    margin: 0;
}

.subcategory-chip .chip-name {
    flex: 1 1 0;
    min-width: 0;
    font-size: 16px;
    font-weight: 450;
    line-height: 1.6;
    color: var(--text-positive-primary, #022930);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Tablet: 2 sloupce (minmax(0,1fr) = i po přesunu z audit-fixes; brání blowoutu) */
@media (max-width: 921.98px) {
    .subcategory-chips {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile: 1 sloupec */
@media (max-width: 480px) {
    .subcategory-chips {
        grid-template-columns: 1fr;
    }
}

/* #27 — Detail: galerie bez border-radius
   Figma: border-radius 16px, overflow hidden | Dev: 0
   Závažnost: Střední
   POZN: overflow:hidden NESMÍ být na .woocommerce-product-gallery — FlexSlider
   umísťuje .flex-prev na left:-20px a .flex-next přesahuje pravý okraj o ~20px.
   Overflow na wrapperu by je oříznul. Radius+clip dáme jen na .flex-viewport
   (samotný slide kontejner), šipky tak zůstanou viditelné mimo jeho okraje. */
.woocommerce-product-gallery {
    border-radius: var(--radius-m, 16px);
    /* overflow: visible — záměrně bez clip, aby šipky karuselu nebyly oříznuty */
}

.woocommerce-product-gallery .flex-viewport {
    border-radius: var(--radius-m, 16px);
    overflow: hidden;
}

/* ===========================================================================
   SINGLE PRODUCT + ARCHIV — TABLET (768–921.98) layout
   Přesunuto z audit-fixes (konsolidace #6 2026-09-07). Celý @media blok = woo.
   =========================================================================== */
@media (min-width: 768px) and (max-width: 921.98px) {
    body.tax-product_cat .site-content > .ast-container,
    body.post-type-archive-product .site-content > .ast-container,
    body.single-product .site-content > .ast-container {
        display: block !important;
        max-width: none !important;
        padding-right: 32px !important;
        padding-left: 32px !important;
    }

    body.tax-product_cat #primary,
    body.post-type-archive-product #primary,
    body.single-product #primary,
    body.tax-product_cat .ast-woocommerce-container,
    body.post-type-archive-product .ast-woocommerce-container,
    body.single-product .ast-woocommerce-container {
        width: 100% !important;
        max-width: 704px !important;
        margin-right: auto !important;
        margin-left: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    body.tax-product_cat ul.products,
    body.post-type-archive-product ul.products {
        display: grid !important;
        grid-template-columns: repeat(2, 286px) !important;
        gap: 32px !important;
        justify-content: start !important;
        width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    body.tax-product_cat ul.products li.product.type-product,
    body.post-type-archive-product ul.products li.product.type-product,
    body.single-product .related-products-carousel li.product,
    body.single-product .related.products li.product {
        width: 286px !important;
        min-width: 286px !important;
        max-width: 286px !important;
        min-height: 377px !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    body.tax-product_cat ul.products li.product.type-product .astra-shop-thumbnail-wrap,
    body.post-type-archive-product ul.products li.product.type-product .astra-shop-thumbnail-wrap,
    body.single-product .related-products-carousel li.product .astra-shop-thumbnail-wrap,
    body.single-product .related.products li.product .astra-shop-thumbnail-wrap {
        width: 286px !important;
        height: 298px !important;
        padding: 16px !important;
        overflow: hidden !important;
        border-radius: 16px !important;
    }

    body.tax-product_cat ul.products li.product.type-product .woocommerce-LoopProduct-link,
    body.post-type-archive-product ul.products li.product.type-product .woocommerce-LoopProduct-link,
    body.single-product .related-products-carousel li.product .woocommerce-LoopProduct-link,
    body.single-product .related.products li.product .woocommerce-LoopProduct-link {
        min-height: 266px !important;
    }

    body.tax-product_cat ul.products li.product.type-product a img,
    body.post-type-archive-product ul.products li.product.type-product a img,
    body.single-product .related-products-carousel li.product a img,
    body.single-product .related.products li.product a img {
        width: 254px !important;
        height: 266px !important;
        object-fit: contain !important;
    }

    body.tax-product_cat ul.products li.product.type-product .astra-shop-summary-wrap,
    body.post-type-archive-product ul.products li.product.type-product .astra-shop-summary-wrap,
    body.single-product .related-products-carousel li.product .astra-shop-summary-wrap,
    body.single-product .related.products li.product .astra-shop-summary-wrap {
        width: 286px !important;
        padding: 8px !important;
    }

    body.tax-product_cat ul.products li.product.type-product .woocommerce-loop-product__title,
    body.post-type-archive-product ul.products li.product.type-product .woocommerce-loop-product__title,
    body.single-product .related-products-carousel li.product .woocommerce-loop-product__title,
    body.single-product .related.products li.product .woocommerce-loop-product__title {
        height: 71px !important;
        margin: 0 !important;
        overflow: hidden !important;
        color: #022930 !important;
        font-size: 16px !important;
        font-weight: 450 !important;
        line-height: 1.6 !important;
    }

    body.single-product div.product {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 704px !important;
        margin: 0 !important;
    }

    body.single-product div.product .summary.entry-summary {
        display: contents !important;
        float: none !important;
        width: auto !important;
    }

    body.single-product div.product .product_title {
        order: 1 !important;
        width: 100% !important;
        margin: 0 0 24px !important;
        color: #022930 !important;
        font-size: 32px !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.01em !important;
    }

    body.single-product div.product .woocommerce-product-gallery,
    body.single-product div.product div.images {
        order: 2 !important;
        display: flex !important;
        flex-direction: column !important;
        float: none !important;
        width: 100% !important;
        max-width: 704px !important;
        margin: 0 0 32px !important;
    }

    body.single-product div.product .woocommerce-product-gallery__wrapper,
    body.single-product div.product .woocommerce-product-gallery__image,
    body.single-product div.product .woocommerce-product-gallery__image a {
        width: 100% !important;
        height: 420px !important;
        overflow: hidden !important;
        background: #fff !important;
        border-radius: 16px !important;
    }

    body.single-product div.product .woocommerce-product-gallery__image img,
    body.single-product div.product div.images img {
        width: 100% !important;
        height: 420px !important;
        object-fit: contain !important;
    }

    body.single-product div.product .woocommerce-product-gallery > .flex-viewport {
        order: 1 !important;
        width: 100% !important;
        height: 420px !important;
        margin-bottom: 24px !important;
        overflow: hidden !important;
        background: #fff !important;
        border-radius: 16px !important;
    }

    body.single-product div.product .woocommerce-product-gallery > .flex-viewport .woocommerce-product-gallery__wrapper,
    body.single-product div.product .woocommerce-product-gallery > .flex-viewport .woocommerce-product-gallery__image,
    body.single-product div.product .woocommerce-product-gallery > .flex-viewport .woocommerce-product-gallery__image a {
        height: 420px !important;
    }

    body.single-product div.product .ast-single-product-thumbnails {
        order: 2 !important;
        width: 100% !important;
        height: 88px !important;
        margin-top: 0 !important;
        overflow: hidden !important;
    }

    body.single-product div.product .ast-single-product-thumbnails .flex-viewport,
    body.single-product div.product .ast-single-product-thumbnails .woocommerce-product-gallery-thumbnails__wrapper {
        height: 88px !important;
    }

    body.single-product div.product .ast-single-product-thumbnails .woocommerce-product-gallery-thumbnails__wrapper {
        display: flex !important;
        gap: 16px !important;
        width: max-content !important;
    }

    body.single-product div.product .ast-single-product-thumbnails .ast-woocommerce-product-gallery__image {
        flex: 0 0 88px !important;
        width: 88px !important;
        height: 88px !important;
        padding: 8px !important;
        overflow: hidden !important;
        background: #fff !important;
        border-radius: 16px !important;
    }

    body.single-product div.product .ast-single-product-thumbnails .ast-woocommerce-product-gallery__image img {
        width: 72px !important;
        height: 72px !important;
        object-fit: contain !important;
    }

    body.single-product div.product .woocommerce-product-details__short-description,
    body.single-product div.product .summary.entry-summary > p,
    body.single-product div.product .product-additional-info,
    body.single-product div.product .single_add_to_cart_button,
    body.single-product div.product .mam-zajem-button {
        order: 3 !important;
    }

    body.single-product div.product .mam-zajem-button {
        width: min(344px, 100%) !important;
        min-height: 48px !important;
        margin: 0 0 32px !important;
    }

    body.single-product div.product .product-additional-info {
        width: 100% !important;
        margin-top: 0 !important;
    }

    body.single-product div.product .product-additional-info details.section {
        width: 100% !important;
        min-height: 64px !important;
        margin: 0 !important;
        border-top: 1px solid #e2e2e5 !important;
    }

    body.single-product div.product .product-additional-info details.section:last-child {
        border-bottom: 1px solid #e2e2e5 !important;
    }

    body.single-product div.product .product-additional-info details.section > summary {
        min-height: 64px !important;
        padding: 20px 32px 20px 0 !important;
        color: #022930 !important;
        font-size: 16px !important;
        font-weight: 650 !important;
        line-height: 24px !important;
    }

    body.single-product .related.products {
        max-width: 704px !important;
        margin: 64px 0 0 !important;
        overflow: hidden !important;
    }

    body.single-product .related.products > h2 {
        margin: 0 0 48px !important;
        color: #022930 !important;
        font-size: 32px !important;
        line-height: 1.2 !important;
        letter-spacing: -0.01em !important;
    }
}

/* ===========================================================================
   RELATED CAROUSEL — DESKTOP (≥922) title/link override (z audit #23). #6 2026-09-07.
   =========================================================================== */
/* ===========================================================================
   23. PRODUCT DETAIL — desktop related carousel title final override
   WooCommerce rule ".woocommerce .related.products h2" also targets the H2
   inside each product card. Keep the section heading untouched, but force card
   titles back to Figma Card/Product typography on desktop too.
   ========================================================================== */
@media (min-width: 922px) {
    body.single-product .related.products .related-products-carousel li.product .astra-shop-summary-wrap {
        width: 100% !important;
        padding: 8px 16px 16px !important;
    }

    body.single-product .related.products .related-products-carousel .ast-loop-product__link,
    body.single-product .related.products .related-products-carousel .ast-loop-product__link:hover,
    body.single-product .related.products .related-products-carousel .ast-loop-product__link:focus,
    body.single-product .related.products .related-products-carousel .ast-loop-product__link:active {
        text-decoration: none !important;
    }

    body.single-product.woocommerce .related.products .related-products-carousel h2.woocommerce-loop-product__title,
    body.single-product.woocommerce-js .related.products .related-products-carousel h2.woocommerce-loop-product__title,
    body.single-product .related.products .related-products-carousel .ast-loop-product__link > h2.woocommerce-loop-product__title {
        height: 71px !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        color: #022930 !important;
        font-size: 16px !important;
        font-weight: 450 !important;
        line-height: 1.6 !important;
        letter-spacing: 0 !important;
        text-decoration: none !important;
    }

    body.single-product.woocommerce .related.products .related-products-carousel .ast-loop-product__link:hover > h2.woocommerce-loop-product__title,
    body.single-product.woocommerce-js .related.products .related-products-carousel .ast-loop-product__link:hover > h2.woocommerce-loop-product__title {
        color: #022930 !important;
        text-decoration: none !important;
    }
}
