/*
 * ТОП-ПЕНОПЛАСТ — WooCommerce redesign v4
 * Shop / product categories / single product.
 * Visual-only overrides: no WooCommerce logic or form behaviour is changed.
 */

.woocommerce,
.woocommerce-page {
  --tp-shop-accent: #006eff;
  --tp-shop-accent-hover: #0057cc;
  --tp-shop-text: #181818;
  --tp-shop-muted: #7a7f89;
  --tp-shop-line: #e5e8ed;
  --tp-shop-surface: #f5f6f8;
  --tp-shop-white: #ffffff;
}

/* Base typography / links */
.woocommerce .wc-container,
.woocommerce-page .wc-container,
.woocommerce .catalog_wrappers,
.woocommerce-page .catalog_wrappers,
.woocommerce .single-product-wrapper,
.woocommerce-page .single-product-wrapper {
  font-family: "Golos Text", Arial, sans-serif;
  color: var(--tp-shop-text);
}

.woocommerce .wc-container a,
.woocommerce-page .wc-container a {
  text-decoration: none;
}

/* Breadcrumbs — remove the legacy green/cyan gradient */
.woocommerce .woocommerce-breadcrumb,
.woocommerce-page .woocommerce-breadcrumb {
  margin: 0;
  color: var(--tp-shop-accent) !important;
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
  font-family: "Golos Text", Arial, sans-serif;
  font-size: 14px;
  line-height: 20px;
}

.woocommerce .woocommerce-breadcrumb a,
.woocommerce-page .woocommerce-breadcrumb a,
.woocommerce .woocommerce-breadcrumb .separator,
.woocommerce-page .woocommerce-breadcrumb .separator {
  color: #7a7f89 !important;
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
}

.woocommerce .woocommerce-breadcrumb a:hover,
.woocommerce-page .woocommerce-breadcrumb a:hover {
  color: var(--tp-shop-accent) !important;
}

/* Main headings */
.woocommerce .wc-catalog-title,
.woocommerce .catalog_category__title h1,
.woocommerce .catalog-categories__title,
.woocommerce-page .wc-catalog-title,
.woocommerce-page .catalog_category__title h1,
.woocommerce-page .catalog-categories__title {
  margin: 0 !important;
  color: #000 !important;
  font-family: "Unbounded", sans-serif !important;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.18;
  letter-spacing: -0.02em;
  text-transform: none;
}

.woocommerce .catalog_wrappers,
.woocommerce-page .catalog_wrappers {
  margin-top: 44px;
}

/* Category chips */
.woocommerce .page-categories-badges,
.woocommerce-page .page-categories-badges {
  margin-top: 28px;
  gap: 10px;
}

.woocommerce .category-badge-wr,
.woocommerce-page .category-badge-wr {
  padding: 11px 16px;
  border: 1px solid var(--tp-shop-line);
  border-radius: 999px;
  background: var(--tp-shop-surface);
  transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}

.woocommerce .category-badge,
.woocommerce-page .category-badge {
  padding-left: 0;
  color: var(--tp-shop-text);
  font-family: "Golos Text", Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
}

.woocommerce .category-badge::before,
.woocommerce-page .category-badge::before {
  display: none;
}

.woocommerce .category-badge-wr:hover,
.woocommerce-page .category-badge-wr:hover {
  border-color: var(--tp-shop-accent);
  background: var(--tp-shop-accent) !important;
}

.woocommerce .category-badge-wr:hover .category-badge,
.woocommerce-page .category-badge-wr:hover .category-badge {
  color: #fff !important;
}

/* Catalogue layout / sidebar */
.woocommerce .catalog_wrapper,
.woocommerce-page .catalog_wrapper {
  margin-top: 36px;
  gap: 36px;
}

.woocommerce .catalog_sidebar__wr,
.woocommerce-page .catalog_sidebar__wr {
  width: 290px;
}

.woocommerce .catalog_sidebar #menu-menyu-v-sajdbare-wc li,
.woocommerce-page .catalog_sidebar #menu-menyu-v-sajdbare-wc li {
  padding: 10px 0;
}

.woocommerce .catalog_sidebar #menu-menyu-v-sajdbare-wc li a,
.woocommerce-page .catalog_sidebar #menu-menyu-v-sajdbare-wc li a {
  color: var(--tp-shop-text);
  font-family: "Golos Text", Arial, sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.35;
  transition: color .18s ease;
}

.woocommerce .catalog_sidebar #menu-menyu-v-sajdbare-wc li ul.sub-menu li a,
.woocommerce-page .catalog_sidebar #menu-menyu-v-sajdbare-wc li ul.sub-menu li a {
  color: var(--tp-shop-muted);
  font-size: 14px;
  font-weight: 500;
}

.woocommerce .catalog_sidebar #menu-menyu-v-sajdbare-wc li a:hover,
.woocommerce .catalog_sidebar #menu-menyu-v-sajdbare-wc li.active > a,
.woocommerce .catalog_sidebar #menu-menyu-v-sajdbare-wc li.menu-item-has-children.open > a,
.woocommerce-page .catalog_sidebar #menu-menyu-v-sajdbare-wc li a:hover,
.woocommerce-page .catalog_sidebar #menu-menyu-v-sajdbare-wc li.active > a,
.woocommerce-page .catalog_sidebar #menu-menyu-v-sajdbare-wc li.menu-item-has-children.open > a {
  color: var(--tp-shop-accent) !important;
}

.woocommerce .catalog_sidebar #menu-menyu-v-sajdbare-wc li.menu-item-has-children::before,
.woocommerce-page .catalog_sidebar #menu-menyu-v-sajdbare-wc li.menu-item-has-children::before {
  border-color: #9aa0aa;
}

.woocommerce .catalog_sidebar #menu-menyu-v-sajdbare-wc li.menu-item-has-children.open::before,
.woocommerce-page .catalog_sidebar #menu-menyu-v-sajdbare-wc li.menu-item-has-children.open::before {
  border-color: var(--tp-shop-accent);
}

/* Sorting */
.woocommerce .catalog_category__ordering,
.woocommerce-page .catalog_category__ordering,
.woocommerce .woocommerce-ordering,
.woocommerce-page .woocommerce-ordering,
.woocommerce .woocommerce-ordering select,
.woocommerce-page .woocommerce-ordering select {
  width: 100%;
  max-width: 360px;
  height: 48px;
}

.woocommerce .woocommerce-ordering,
.woocommerce-page .woocommerce-ordering {
  float: none;
  margin: 0;
}

.woocommerce .woocommerce-ordering select,
.woocommerce-page .woocommerce-ordering select {
  padding: 0 42px 0 16px;
  border: 1px solid var(--tp-shop-line);
  border-radius: 14px;
  background-color: #fff;
  color: var(--tp-shop-text);
  font-family: "Golos Text", Arial, sans-serif;
  font-size: 15px;
  font-weight: 500;
  outline: none;
}

.woocommerce .woocommerce-ordering select:focus,
.woocommerce-page .woocommerce-ordering select:focus {
  border-color: var(--tp-shop-accent);
}

/* Catalogue cards */
.woocommerce .products_wr,
.woocommerce-page .products_wr {
  margin-top: 28px;
}

.woocommerce ul.products.columns-3,
.woocommerce-page ul.products.columns-3 {
  gap: 24px;
}

.woocommerce ul.products li.product .product_wrapper,
.woocommerce-page ul.products li.product .product_wrapper {
  height: 100%;
  padding: 18px;
  box-sizing: border-box;
  border: 1px solid var(--tp-shop-line);
  border-radius: 20px;
  background: #fff;
  transition: border-color .18s ease, transform .18s ease;
}

.woocommerce ul.products li.product .product_wrapper:hover,
.woocommerce-page ul.products li.product .product_wrapper:hover {
  border-color: #ccd2da;
  transform: translateY(-2px);
}

.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img {
  width: 100%;
  aspect-ratio: 1 / 1;
  height: auto;
  margin: 0 0 18px;
  padding: 12px;
  box-sizing: border-box;
  border: 1px solid rgba(0,0,0,.04);
  border-radius: 18px;
  background: var(--tp-shop-surface);
  object-fit: contain;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
  margin: 0 !important;
  min-height: 52px;
  color: #000 !important;
  font-family: "Unbounded", sans-serif !important;
  font-size: 17px;
  font-weight: 600;
  line-height: 26px;
  text-transform: none;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title:hover,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title:hover {
  color: var(--tp-shop-accent) !important;
}

.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
  margin-top: 14px !important;
  color: #000 !important;
  font-family: "Unbounded", sans-serif !important;
  font-size: 21px !important;
  font-weight: 700 !important;
  line-height: 30px;
}

.woocommerce ul.products li.product .product-sku,
.woocommerce-page ul.products li.product .product-sku {
  margin-top: 8px;
  color: var(--tp-shop-muted);
  font-family: "Golos Text", Arial, sans-serif;
  font-size: 13px;
}

/* All catalogue / product primary buttons */
.woocommerce .btn-buy.btn,
.woocommerce-page .btn-buy.btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce-page a.button,
.woocommerce-page button.button,
.woocommerce-page input.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 14px 22px;
  box-sizing: border-box;
  border: 0 !important;
  border-radius: 14px !important;
  background: var(--tp-shop-accent) !important;
  background-image: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: "Golos Text", Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 20px !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: background-color .18s ease, transform .18s ease;
}

.woocommerce .btn-buy.btn:hover,
.woocommerce-page .btn-buy.btn:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce-page a.button:hover,
.woocommerce-page button.button:hover,
.woocommerce-page input.button:hover {
  background: var(--tp-shop-accent-hover) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.woocommerce ul.products li.product .btn-buy.btn,
.woocommerce-page ul.products li.product .btn-buy.btn {
  width: 100%;
  margin-top: 18px;
}

/* Load more */
.woocommerce .show-more,
.woocommerce .catalog .show-more.btn-border,
.woocommerce-page .show-more,
.woocommerce-page .catalog .show-more.btn-border {
  width: 100%;
  max-width: 280px;
  min-height: 56px;
  margin: 34px auto 0;
  padding: 16px 28px;
  border: 0 !important;
  border-radius: 14px !important;
  background: var(--tp-shop-accent) !important;
  background-image: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: "Golos Text", Arial, sans-serif !important;
  font-size: 16px;
  font-weight: 600;
}

.woocommerce .show-more::before,
.woocommerce .show-more::after,
.woocommerce-page .show-more::before,
.woocommerce-page .show-more::after {
  display: none !important;
}

.woocommerce .show-more:hover,
.woocommerce-page .show-more:hover {
  background: var(--tp-shop-accent-hover) !important;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul,
.woocommerce-page nav.woocommerce-pagination ul {
  gap: 10px;
}

.woocommerce nav.woocommerce-pagination ul li,
.woocommerce-page nav.woocommerce-pagination ul li {
  width: 42px;
  height: 42px;
  border: 0 !important;
  border-radius: 50%;
  background: var(--tp-shop-surface);
  overflow: hidden;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce-page nav.woocommerce-pagination ul li a,
.woocommerce-page nav.woocommerce-pagination ul li span {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  color: var(--tp-shop-text) !important;
  background: transparent !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
  font-family: "Golos Text", Arial, sans-serif;
  font-weight: 600;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce-page nav.woocommerce-pagination ul li a:hover,
.woocommerce-page nav.woocommerce-pagination ul li span.current {
  background: var(--tp-shop-accent) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Category cards under the shop */
.woocommerce .catalog-categories,
.woocommerce-page .catalog-categories {
  margin-top: 72px;
}

.woocommerce .catalog-categories__wrap,
.woocommerce-page .catalog-categories__wrap {
  margin-top: 30px;
}

.woocommerce .catalog-categories__wr,
.woocommerce-page .catalog-categories__wr {
  gap: 24px;
}

.woocommerce .catalog-categories__wr .cat-item,
.woocommerce-page .catalog-categories__wr .cat-item {
  width: calc(25% - 18px);
  min-width: 220px;
  padding: 14px;
  box-sizing: border-box;
  border: 1px solid var(--tp-shop-line);
  border-radius: 20px;
  background: #fff;
}

.woocommerce .catalog-categories__wr .cat-image,
.woocommerce-page .catalog-categories__wr .cat-image {
  width: 100%;
  height: 180px;
  overflow: hidden;
  border-radius: 16px;
  background: var(--tp-shop-surface);
}

.woocommerce .catalog-categories__wr .cat-image img,
.woocommerce-page .catalog-categories__wr .cat-image img {
  border-radius: 16px;
}

.woocommerce .catalog-categories__wr .cat-name,
.woocommerce-page .catalog-categories__wr .cat-name {
  margin-top: 16px;
  color: #000;
  font-family: "Unbounded", sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
}

.woocommerce .catalog-categories__wr .cat-item:hover .cat-name,
.woocommerce-page .catalog-categories__wr .cat-item:hover .cat-name {
  color: var(--tp-shop-accent);
}

/* ========================================================================
   SINGLE PRODUCT
   ======================================================================== */

.woocommerce .single-product-wrapper,
.woocommerce-page .single-product-wrapper {
  margin-top: 42px;
  padding-bottom: 80px;
}

.woocommerce .single-product-wr,
.woocommerce-page .single-product-wr {
  gap: 44px;
  align-items: flex-start;
}

.woocommerce .single-product-img__slider-card-for,
.woocommerce .single-product-img__slider-card-for-img,
.woocommerce .single-product-img__slider-card-for-img a,
.woocommerce-page .single-product-img__slider-card-for,
.woocommerce-page .single-product-img__slider-card-for-img,
.woocommerce-page .single-product-img__slider-card-for-img a {
  border-radius: 24px;
  background: var(--tp-shop-surface);
}

.woocommerce .single-product-img__slider-card-for img,
.woocommerce-page .single-product-img__slider-card-for img {
  padding: 18px;
  box-sizing: border-box;
  border: 1px solid rgba(0,0,0,.04);
  border-radius: 24px;
  background: var(--tp-shop-surface);
  object-fit: contain;
}

.woocommerce .slider-for .slick-arrow,
.woocommerce-page .slider-for .slick-arrow {
  width: 44px;
  height: 44px;
  border: 1px solid var(--tp-shop-line);
  background: #fff !important;
  box-shadow: none;
}

.woocommerce .slider-for .slick-prev:hover,
.woocommerce .slider-for .slick-prev:focus,
.woocommerce .slider-for .slick-next:hover,
.woocommerce .slider-for .slick-next:focus,
.woocommerce-page .slider-for .slick-prev:hover,
.woocommerce-page .slider-for .slick-prev:focus,
.woocommerce-page .slider-for .slick-next:hover,
.woocommerce-page .slider-for .slick-next:focus {
  border-color: var(--tp-shop-accent);
  background: var(--tp-shop-accent) !important;
  background-image: none !important;
}

.woocommerce .slider-nav,
.woocommerce-page .slider-nav {
  margin-top: 14px;
}

.woocommerce .single-product-img__slider-card-nav,
.woocommerce-page .single-product-img__slider-card-nav {
  overflow: hidden;
  padding: 3px;
  box-sizing: border-box;
  border: 2px solid transparent;
  border-radius: 12px;
  background: var(--tp-shop-surface);
}

.woocommerce .single-product-img__slider-card-nav img,
.woocommerce-page .single-product-img__slider-card-nav img {
  border-radius: 8px;
  object-fit: contain;
  background: var(--tp-shop-surface);
}

.woocommerce .slider-nav .slick-current .single-product-img__slider-card-nav,
.woocommerce-page .slider-nav .slick-current .single-product-img__slider-card-nav {
  padding: 3px;
  border: 2px solid var(--tp-shop-accent);
  background: #fff;
}

.woocommerce .slider-nav .slick-current .single-product-img__slider-card-nav img,
.woocommerce-page .slider-nav .slick-current .single-product-img__slider-card-nav img {
  opacity: 1;
}

.woocommerce div.product .product_title,
.woocommerce-page div.product .product_title {
  margin-top: 24px;
  color: #000;
  font-family: "Unbounded", sans-serif !important;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.22;
  letter-spacing: -0.02em;
}

.woocommerce .single-product-summary .product-sku,
.woocommerce-page .single-product-summary .product-sku {
  margin-top: 12px;
  color: var(--tp-shop-muted);
  font-family: "Golos Text", Arial, sans-serif;
  font-size: 14px;
  line-height: 20px;
}

.woocommerce .single-product-summary .product-sku button.copy-sku-btn,
.woocommerce-page .single-product-summary .product-sku button.copy-sku-btn {
  display: inline-flex;
  width: 30px;
  height: 30px;
  margin-left: 6px;
  padding: 0;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--tp-shop-line);
  border-radius: 8px;
  background: #fff;
  vertical-align: middle;
  cursor: pointer;
}

.woocommerce .single-product-summary .price,
.woocommerce-page .single-product-summary .price {
  margin-top: 30px;
  color: #000 !important;
  font-family: "Unbounded", sans-serif !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  line-height: 1.25;
  text-transform: none;
}

.woocommerce .single-product-summary .btn-buy,
.woocommerce-page .single-product-summary .btn-buy {
  width: 100%;
  max-width: 410px;
  min-height: 58px;
  margin-top: 22px;
  border-radius: 14px !important;
}

/* Product information tabs */
.woocommerce .single-product-tab,
.woocommerce-page .single-product-tab {
  margin-top: 48px;
}

.woocommerce .single-product-tab__nav,
.woocommerce-page .single-product-tab__nav {
  gap: 8px;
  border-bottom: 1px solid var(--tp-shop-line);
}

.woocommerce .single-product-tab__nav p,
.woocommerce-page .single-product-tab__nav p {
  width: auto;
  flex: 1 1 0;
  margin: 0 !important;
  padding: 12px 8px 14px;
  border: 0;
  border-bottom: 2px solid transparent;
  color: var(--tp-shop-muted);
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
  font-family: "Golos Text", Arial, sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 22px;
}

.woocommerce .single-product-tab__nav p:hover,
.woocommerce-page .single-product-tab__nav p:hover {
  color: var(--tp-shop-accent);
}

.woocommerce .single-product-tab__nav p.active,
.woocommerce-page .single-product-tab__nav p.active {
  border-bottom-color: var(--tp-shop-accent);
  border-image: none;
  color: var(--tp-shop-accent);
}

.woocommerce .single-product-tab__slider,
.woocommerce-page .single-product-tab__slider {
  padding-top: 24px;
  color: #3f444d;
  font-family: "Golos Text", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
}

.woocommerce .single-product-tab__slider h2,
.woocommerce .single-product-tab__slider h3,
.woocommerce .single-product-tab__slider h4,
.woocommerce-page .single-product-tab__slider h2,
.woocommerce-page .single-product-tab__slider h3,
.woocommerce-page .single-product-tab__slider h4 {
  color: #000;
  font-family: "Unbounded", sans-serif;
}

/* Related products */
.woocommerce .related,
.woocommerce-page .related {
  margin-top: 86px;
}

.woocommerce .related h2,
.woocommerce-page .related h2 {
  margin: 0 !important;
  color: #000;
  font-family: "Unbounded", sans-serif !important;
  font-size: 34px;
  font-weight: 700;
  line-height: 44px;
}

/* WooCommerce messages / validation */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error,
.woocommerce-page .woocommerce-message,
.woocommerce-page .woocommerce-info,
.woocommerce-page .woocommerce-error {
  border-top: 0;
  border-left: 4px solid var(--tp-shop-accent);
  border-radius: 14px;
  background: var(--tp-shop-surface);
  color: var(--tp-shop-text);
  font-family: "Golos Text", Arial, sans-serif;
}

.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before,
.woocommerce-page .woocommerce-message::before,
.woocommerce-page .woocommerce-info::before {
  color: var(--tp-shop-accent);
}

/* Mobile */
@media (max-width: 1023px) {
  .woocommerce .catalog_wrapper,
  .woocommerce-page .catalog_wrapper {
    margin-top: 24px;
    gap: 0;
  }

  .woocommerce .catalog_sidebar__btn-mb,
  .woocommerce-page .catalog_sidebar__btn-mb {
    width: 100%;
    max-width: 420px;
    height: 56px;
    padding: 16px 20px;
    border: 1px solid var(--tp-shop-line);
    border-radius: 14px;
    background: var(--tp-shop-surface);
    color: var(--tp-shop-text);
    font-family: "Golos Text", Arial, sans-serif;
    font-size: 17px;
    font-weight: 600;
  }

  .woocommerce .catalog_sidebar__wr,
  .woocommerce-page .catalog_sidebar__wr {
    max-width: 420px;
  }

  .woocommerce .catalog-categories__wr .cat-item,
  .woocommerce-page .catalog-categories__wr .cat-item {
    width: 260px;
  }

  .woocommerce .single-product-wr,
  .woocommerce-page .single-product-wr {
    gap: 26px;
  }
}

@media (max-width: 767px) {
  .woocommerce .wc-container,
  .woocommerce-page .wc-container {
    padding-left: 18px;
    padding-right: 18px;
  }

  .woocommerce .catalog_wrappers,
  .woocommerce-page .catalog_wrappers,
  .woocommerce .single-product-wrapper,
  .woocommerce-page .single-product-wrapper {
    margin-top: 28px;
  }

  .woocommerce .wc-catalog-title,
  .woocommerce .catalog_category__title h1,
  .woocommerce .catalog-categories__title,
  .woocommerce-page .wc-catalog-title,
  .woocommerce-page .catalog_category__title h1,
  .woocommerce-page .catalog-categories__title {
    font-size: 29px;
    line-height: 1.25;
  }

  .woocommerce ul.products.columns-3,
  .woocommerce-page ul.products.columns-3,
  .woocommerce .related .products,
  .woocommerce-page .related .products {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .woocommerce ul.products li.product .product_wrapper,
  .woocommerce-page ul.products li.product .product_wrapper {
    padding: 14px;
    border-radius: 18px;
  }

  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .woocommerce-page ul.products li.product .woocommerce-loop-product__title {
    min-height: 0;
    font-size: 16px;
    line-height: 24px;
  }

  .woocommerce .single-product-img,
  .woocommerce-page .single-product-img,
  .woocommerce .single-product-img__slider,
  .woocommerce-page .single-product-img__slider,
  .woocommerce .single-product-img__slider-card-for,
  .woocommerce-page .single-product-img__slider-card-for,
  .woocommerce .single-product-img__slider-card-for-img,
  .woocommerce-page .single-product-img__slider-card-for-img,
  .woocommerce .single-product-img__slider-card-for-img a,
  .woocommerce-page .single-product-img__slider-card-for-img a {
    width: 100% !important;
    max-width: 100% !important;
  }

  .woocommerce .single-product-img__slider-card-for,
  .woocommerce-page .single-product-img__slider-card-for,
  .woocommerce .single-product-img__slider-card-for-img,
  .woocommerce-page .single-product-img__slider-card-for-img,
  .woocommerce .single-product-img__slider-card-for-img a {
    height: auto !important;
    aspect-ratio: 1 / 1;
  }

  .woocommerce div.product .product_title,
  .woocommerce-page div.product .product_title {
    margin-top: 18px;
    font-size: 27px;
    line-height: 1.28;
  }

  .woocommerce .single-product-summary .price,
  .woocommerce-page .single-product-summary .price {
    margin-top: 22px;
    font-size: 27px !important;
  }

  .woocommerce .single-product-summary .btn-buy,
  .woocommerce-page .single-product-summary .btn-buy {
    max-width: none;
  }

  .woocommerce .single-product-tab,
  .woocommerce-page .single-product-tab {
    margin-top: 38px;
  }

  .woocommerce .single-product-tab-overflow,
  .woocommerce-page .single-product-tab-overflow {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .woocommerce .single-product-tab__nav,
  .woocommerce-page .single-product-tab__nav {
    min-width: 560px;
  }

  .woocommerce .related,
  .woocommerce-page .related {
    margin-top: 64px;
  }

  .woocommerce .related h2,
  .woocommerce-page .related h2 {
    font-size: 27px;
    line-height: 36px;
  }
}

/* ========================================================================
   v5 hotfix — header search on WooCommerce pages
   WooCommerce's generic button rules must never style the header search
   submit control. Keep the search icon inside the input, exactly as on the
   rest of the site.
   ======================================================================== */
body.woocommerce .site-header .site-header__search #searchsubmit.button,
body.woocommerce-page .site-header .site-header__search #searchsubmit.button,
body.woocommerce .site-header .header__search #searchsubmit.button,
body.woocommerce-page .site-header .header__search #searchsubmit.button {
  position: absolute !important;
  top: 50% !important;
  right: 16px !important;
  left: auto !important;
  display: block !important;
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateY(-50%) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  font-size: 0 !important;
  line-height: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

body.woocommerce .site-header .site-header__search #searchsubmit.button:hover,
body.woocommerce-page .site-header .site-header__search #searchsubmit.button:hover,
body.woocommerce .site-header .site-header__search #searchsubmit.button:focus,
body.woocommerce-page .site-header .site-header__search #searchsubmit.button:focus,
body.woocommerce .site-header .site-header__search #searchsubmit.button:active,
body.woocommerce-page .site-header .site-header__search #searchsubmit.button:active {
  background: transparent !important;
  background-color: transparent !important;
  transform: translateY(-50%) !important;
}

body.woocommerce .site-header .site-header__search #searchsubmit.button::after,
body.woocommerce-page .site-header .site-header__search #searchsubmit.button::after {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 18px !important;
  height: 18px !important;
  content: "" !important;
  background: url(../images/header-search-img.svg) no-repeat center / contain !important;
}

/* Dark header: white icon. Sticky/light header: normal dark icon. */
body.woocommerce .site-header:not(.is-sticky):not(.scrolled) .site-header__search #searchsubmit.button::after,
body.woocommerce-page .site-header:not(.is-sticky):not(.scrolled) .site-header__search #searchsubmit.button::after {
  filter: brightness(0) invert(1) !important;
  opacity: .85 !important;
}
body.woocommerce .site-header.is-sticky .site-header__search #searchsubmit.button::after,
body.woocommerce .site-header.scrolled .site-header__search #searchsubmit.button::after,
body.woocommerce-page .site-header.is-sticky .site-header__search #searchsubmit.button::after,
body.woocommerce-page .site-header.scrolled .site-header__search #searchsubmit.button::after {
  filter: none !important;
  opacity: .7 !important;
}

/* ========================================================================
   v9 — single product long-text layout
   Long product descriptions used to be rendered inside the narrow summary
   column. Tabs now sit below the gallery/summary row and use a readable,
   full-width article layout on every product page.
   ======================================================================== */
body.single-product .single-product-tab {
  width: 100%;
  max-width: 1180px;
  margin: 64px auto 0;
  box-sizing: border-box;
  clear: both;
}

body.single-product .single-product-tab__tabs-wr {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
}

body.single-product .single-product-tab__slider {
  width: 100%;
  max-width: 100%;
  padding-top: 34px;
  color: #30343b;
  font-family: "Golos Text", Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
  word-break: normal;
  overflow-wrap: break-word;
}

body.single-product .single-product-tab__slider > :first-child {
  margin-top: 0 !important;
}

body.single-product .single-product-tab__slider > :last-child {
  margin-bottom: 0 !important;
}

body.single-product .single-product-tab__slider p {
  max-width: none !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  color: inherit;
  font: inherit;
  line-height: inherit;
  text-align: left;
}

body.single-product .single-product-tab__slider h1,
body.single-product .single-product-tab__slider h2,
body.single-product .single-product-tab__slider h3,
body.single-product .single-product-tab__slider h4,
body.single-product .single-product-tab__slider h5,
body.single-product .single-product-tab__slider h6 {
  max-width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 0 !important;
  color: #000;
  font-family: "Unbounded", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em;
  text-transform: none;
  text-align: left;
  word-break: normal;
  overflow-wrap: break-word;
}

body.single-product .single-product-tab__slider h1 {
  margin-top: 44px !important;
  margin-bottom: 24px !important;
  font-size: 38px !important;
  line-height: 1.2 !important;
}

body.single-product .single-product-tab__slider h2 {
  margin-top: 42px !important;
  margin-bottom: 20px !important;
  font-size: 34px !important;
  line-height: 1.25 !important;
}

body.single-product .single-product-tab__slider h3 {
  margin-top: 34px !important;
  margin-bottom: 16px !important;
  font-size: 26px !important;
  line-height: 1.3 !important;
}

body.single-product .single-product-tab__slider h4,
body.single-product .single-product-tab__slider h5,
body.single-product .single-product-tab__slider h6 {
  margin-top: 28px !important;
  margin-bottom: 14px !important;
  font-size: 21px !important;
  line-height: 1.35 !important;
}

body.single-product .single-product-tab__slider ul,
body.single-product .single-product-tab__slider ol {
  margin: 0 0 22px 24px !important;
  padding: 0 !important;
}

body.single-product .single-product-tab__slider li {
  margin: 0 0 9px;
  padding: 0;
  line-height: 1.6;
}

body.single-product .single-product-tab__slider a {
  color: var(--tp-shop-accent);
  text-decoration: underline;
  text-underline-offset: 3px;
}

body.single-product .single-product-tab__slider img,
body.single-product .single-product-tab__slider video,
body.single-product .single-product-tab__slider iframe {
  max-width: 100%;
  height: auto;
}

body.single-product .single-product-tab__slider table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
}

body.single-product .single-product-tab__slider th,
body.single-product .single-product-tab__slider td {
  padding: 12px 14px;
  border: 1px solid var(--tp-shop-line);
  vertical-align: top;
}

@media (max-width: 1023px) {
  body.single-product .single-product-tab {
    max-width: 100%;
    margin-top: 48px;
  }

  body.single-product .single-product-tab__tabs-wr {
    max-width: 100%;
  }

  body.single-product .single-product-tab__slider {
    padding-top: 28px;
    font-size: 17px;
    line-height: 1.62;
  }
}

@media (max-width: 767px) {
  body.single-product .single-product-tab {
    margin-top: 38px;
  }

  body.single-product .single-product-tab__slider {
    padding-top: 24px;
    font-size: 16px;
    line-height: 1.6;
  }

  body.single-product .single-product-tab__slider h1 {
    margin-top: 34px !important;
    margin-bottom: 18px !important;
    font-size: 29px !important;
    line-height: 1.24 !important;
  }

  body.single-product .single-product-tab__slider h2 {
    margin-top: 32px !important;
    margin-bottom: 16px !important;
    font-size: 27px !important;
    line-height: 1.28 !important;
  }

  body.single-product .single-product-tab__slider h3 {
    margin-top: 28px !important;
    margin-bottom: 14px !important;
    font-size: 22px !important;
    line-height: 1.32 !important;
  }

  body.single-product .single-product-tab__slider h4,
  body.single-product .single-product-tab__slider h5,
  body.single-product .single-product-tab__slider h6 {
    margin-top: 24px !important;
    font-size: 18px !important;
  }

  body.single-product .single-product-tab__slider p {
    margin-bottom: 16px !important;
  }

  body.single-product .single-product-tab__slider table {
    min-width: 560px;
  }

  body.single-product .single-product-tab__slider table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
