/* Single product title sizing */
.single-product .product_title.entry-title {
    font-size: clamp(28px, 2.5vw, 45px);
    line-height: 1.05;
}

/* Product buttons, inquiry CTA and single product purchase row */
.woocommerce ul.products li.product a.button,
.woocommerce div.product form.cart button.single_add_to_cart_button,
.custom-detail-button,
.dwo-product-inquiry-button {
    display: inline-block !important;
    background: #1a1a1a !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 5px 10px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.7em !important;
    text-decoration: none !important;
    box-shadow: none !important;
    height: auto !important;
    min-height: 0 !important;
    transition: filter 0.2s ease, transform 0.2s ease !important;
    width: fit-content !important;
    filter: brightness(1);
}

/* Nezávazně poptat – bronzová */
.dwo-product-inquiry-button {
    background: #8B5E1A !important;
    color: #ffffff !important;
}

/* Hover – stejná intenzita změny pro všechna tlačítka */
.woocommerce ul.products li.product a.button:hover,
.woocommerce div.product form.cart button.single_add_to_cart_button:hover,
.custom-detail-button:hover,
.dwo-product-inquiry-button:hover {
    color: #ffffff !important;
    filter: brightness(1.18);
    transform: translateY(-1px);
}

/* Zrušit Divi/Woo ikony, šipky a pseudo-prvky */
.woocommerce ul.products li.product a.button::before,
.woocommerce ul.products li.product a.button::after,
.woocommerce div.product form.cart button.single_add_to_cart_button::before,
.woocommerce div.product form.cart button.single_add_to_cart_button::after,
.custom-detail-button::before,
.custom-detail-button::after,
.dwo-product-inquiry-button::before,
.dwo-product-inquiry-button::after {
    content: none !important;
    display: none !important;
}

/* Detail produktu – košík a poptávka vedle sebe */
.woocommerce div.product form.cart {
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
    margin-bottom: 0 !important;
    vertical-align: middle;
}

.woocommerce div.product form.cart .quantity {
    margin: 0 !important;
}

.woocommerce div.product form.cart .button {
    margin: 0 !important;
}

/* Detail produktu: množství + Přidat do košíku + Nezávazně poptat vedle sebe */
.single-product .summary.entry-summary form.cart {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    width: auto !important;
    margin: 0 12px 0 0 !important;
    padding: 0 !important;
    vertical-align: middle !important;
}

.single-product .summary.entry-summary form.cart .quantity {
    margin: 0 !important;
}

.single-product .summary.entry-summary form.cart .quantity input.qty {
    margin: 0 !important;
}

.single-product .summary.entry-summary form.cart button.single_add_to_cart_button {
    margin: 0 !important;
}

/* Poptávkové tlačítko vedle formuláře */
.single-product .summary.entry-summary .dwo-product-inquiry-single {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    vertical-align: middle !important;
}

.single-product .summary.entry-summary .dwo-product-inquiry-single .dwo-product-inquiry-button {
    margin: 0 !important;
    white-space: nowrap;
}

/* Kategorie pod tlačítky */
.single-product .summary.entry-summary .product_meta {
    display: block !important;
    margin-top: 14px !important;
}

/* Inquiry spacing and tax price notes */
.dwo-product-inquiry-single {
    margin-top: 12px;
}

.dwo-product-inquiry-loop {
    margin-top: 8px;
}

.dwo-product-inquiry-button {
    display: inline-block;
}

.dwo-price-excl small,
.dwo-price-incl {
    opacity: .75;
    font-size: .65em;
}

/* Product listing grid, card layout and CTA fallback */
.woocommerce ul.products,
.et_pb_shop ul.products {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  background: #fff;
  border-left: 1px solid #e5e7eb;
  border-top: 1px solid #e5e7eb;
}

.woocommerce ul.products li.product,
.et_pb_shop ul.products li.product {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 14px 16px 18px;
  margin: 0;
  background: #fff;
  border: none;
  border-right: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
  border-radius: 0;
  box-shadow: none;
  transition: none;
}

/* Bez hover efektu jako karta. */
.woocommerce ul.products li.product:hover,
.et_pb_shop ul.products li.product:hover {
  box-shadow: none;
  transform: none;
  border-color: #e5e7eb;
}

/* Obrázek produktu */
.woocommerce ul.products li.product img,
.et_pb_shop ul.products li.product img {
  margin: 0 0 12px;
}

/* Název produktu */
.woocommerce ul.products li.product h2,
.et_pb_shop ul.products li.product h2 {
  margin: 0 0 16px;
  padding-bottom: 0;
  line-height: 1.35;
  height: calc(1.35em * 2);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Krátký popis produktu */
.woocommerce ul.products li.product .woocommerce-loop-product__short-desc,
.et_pb_shop ul.products li.product .woocommerce-loop-product__short-desc {
  margin: 0 0 18px;
  font-size: 15px;
  line-height: 1.55;
  height: calc(1.55em * 3);
  color: #555;
  flex-grow: 1;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.woocommerce ul.products li.product .woocommerce-loop-product__short-desc p,
.et_pb_shop ul.products li.product .woocommerce-loop-product__short-desc p {
  margin: 0;
}

/* Tlačítko ve výpisu produktu */
.woocommerce ul.products li.product .button,
.et_pb_shop ul.products li.product .button {
  margin-top: auto;
  display: inline-block !important;
  width: fit-content !important;
  max-width: none !important;
  align-self: flex-start;

  background: #1a1a1a;
  color: #ffffff;
  border: none;
  padding: 5px 10px;
  font-weight: 600;
  font-size: 13px;
  line-height: 1.2;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.2s ease;
  cursor: pointer;
  box-shadow: none;
}

.woocommerce ul.products li.product .button:hover,
.et_pb_shop ul.products li.product .button:hover {
  background: #2a2a2a;
  color: #ffffff;
}

/* Woo block category names */
.wc-block-product-categories-list-item__name {
    font-weight: 600;
}

/* Product title, price and category list styles */
ul.products li.product h2.woocommerce-loop-product__title {
    color: #0059AD; /* sytá modrá */
    font-weight: bold;
}

body.woocommerce ul.products li.product span.price,
body.woocommerce-page ul.products li.product span.price {
    display: block;
    color: #E02B20 !important;
    font-weight: 700 !important;
    font-size: 23px !important;
    line-height: 1.25;
    min-height: 1.25em;
    margin-bottom: 16px;
}

.wc-block-product-categories-list-item-count {
    display: none !important;
}

.wc-block-product-categories-list-item a {
    font-size: 14px;
    text-decoration: none;
}

.wc-block-product-categories-list-item a:hover {
    text-decoration: underline;
}

/* Všechny kategorie */
.wc-block-product-categories-list-item__name::before {
    margin-right: 6px;
    vertical-align: middle;
}

/* Fixní výška pro krátký popis */
li.product > div[itemprop="description"] {
    margin-bottom: 2em;
    display: -webkit-box;
    -webkit-line-clamp: 4; /* max. 4 řádky */
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 6.8em; /* 4 řádky × 1.7em line-height */
	text-overflow: ellipsis;
}

/* Divi product image overlay reset */
/* Skryje modré plus a hover efekt na obrázku ve výpisu produktů */
.et_overlay,
.et_overlay:before {
    display: none !important;
}

/* Zruší modrý filtr / zesvětlení na hover */
.et_shop_image:hover img {
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
}

/* Single product gallery zoom/lightbox reset */
.woocommerce-product-gallery__trigger {
    display: none !important; /* Skryje ikonu lupy */
}

.woocommerce-product-gallery__image img {
    pointer-events: none !important; /* Zakáže akce na obrázku */
    cursor: default !important; /* Změní kurzor zpět na normální */
	transform: none !important; /* Zruší efekt zoomu */
    transition: none !important; /* Zruší přechod při hoveru */
}

.woocommerce-product-gallery__image:hover img {
    transform: none !important; /* Ujistí se, že při hoveru nedojde k zoomu */
}

/* Product detail tab columns */
.woocommerce-product-tabs-wrapper {
    display: flex;
    gap: 20px;
    margin-top: 40px;
    margin-bottom: 40px;
}

.woocommerce-product-tab {
    flex: 1;
}

.woocommerce-product-tab--description {
    padding-right: 10px;
}

.woocommerce-product-tab--additional_information {
    padding-left: 10px;
}

@media (max-width: 768px) {
    .woocommerce-product-tabs-wrapper {
        flex-direction: column;
    }

    .woocommerce-product-tab--description,
    .woocommerce-product-tab--additional_information {
        padding: 0;
        border: none;
    }
}

/* Woo description height and price-on-request note */
.et_pb_wc_description {
    min-height: 120px; /* Nastav minimální výšku */
    max-height: 120px; /* Nastav maximální výšku pro konzistenci */
    
}

.price-on-request-note {
  margin-top: 8px;
  margin-bottom: 18px;
  font-size: 14px;
  opacity: 0.85;
}

/* Recommended badge - Doporučujeme u produktu */

.woocommerce ul.products li.product .recommended-badge-loop {
  position: absolute;
  top: 24px;
  left: 5px;
  z-index: 50;

  background: #4fa356;
  color: #fff;
  padding: 5px 10px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  text-transform: uppercase;
  border-radius: 5px;

  pointer-events: none;
}

.recommended-badge-single {
  display: inline-block;
  margin-bottom: 12px;

  background: #4fa356;
  color: #fff;
  padding: 6px 12px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  text-transform: uppercase;
  border-radius: 5px;
}

/* hlavní odkaz v kartě */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
  display: block;
}

/* Tlačítko */
.woocommerce ul.products li.product .button {
  margin-top: auto;
}
