.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --hn-peach:#FFE9E1; --hn-ivory:#FFFBF5; --hn-rose:#E3B0A3; --hn-pale:#FCD9CE; --hn-accent:#C27559; --hn-green:#01372F; --hn-gray:#323232; --hn-black:#000000; --hn-white:#FFFFFF; --hn-font-display:DM Serif Display; --hn-font-body:Inter; }
/* Start custom CSS *//* ===== E-shop (WooCommerce archív produktov) v štýle Helpnisi ===== */
body.woocommerce-shop .site-main,
body.tax-product_cat .site-main,
body.tax-product_tag .site-main {
  box-sizing: border-box; width: 100%; max-width: calc(1140px + 6rem); margin-inline: auto;
  padding: 3.25rem 3rem 5rem;
  font-family: Inter, sans-serif; color: #323232;
}
@media (max-width: 767px) {
  body.woocommerce-shop .site-main, body.tax-product_cat .site-main, body.tax-product_tag .site-main { padding: 2.25rem 1.25rem 3.5rem; }
}

/* omrvinky */
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-breadcrumb {
  font-family: Inter, sans-serif; font-size: 0.8rem; letter-spacing: 0.08em; text-transform: uppercase;
  color: #323232; margin: 0 0 1.25rem;
}
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-breadcrumb a { color: #C27559; text-decoration: none; transition: color 0.25s ease; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-breadcrumb a:hover { color: #01372F; }

/* nadpis */
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-products-header { margin: 0 0 2rem; padding-bottom: 1.75rem; border-bottom: 1px solid rgba(194, 117, 89, 0.18); }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-products-header__title {
  font-family: "DM Serif Display", serif; font-weight: 400; font-size: 3.24rem; line-height: 1.2; color: #000000; margin: 0;
}
@media (max-width: 767px) {
  :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-products-header__title { font-size: 2.25rem; }
}
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .term-description { margin-top: 0.75rem; max-width: 40rem; line-height: 1.5; }

/* počet výsledkov */
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-result-count { font-size: 0.9rem; color: #323232; margin: 0.6rem 0 2rem; }

/* zoradenie – vlastný vzhľad rozbaľovacej ponuky (Chrome/Edge; iné prehliadače ukážu systémovú ponuku v farbách webu) */
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering { margin: 0 0 2rem; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select {
  font-family: Inter, sans-serif; font-size: 0.92rem; font-weight: 500; color: #01372F;
  min-width: 16rem; padding: 0.6rem 1.15rem; border-radius: 9999px;
  border: 1px solid #F3C3B5; background-color: #FFFBF5;
  transition: border-color 0.25s ease, background-color 0.25s ease; cursor: pointer;
}
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select:hover,
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select:focus { border-color: #E3B0A3; outline: none; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select option { font-family: Inter, sans-serif; color: #01372F; background-color: #FFFBF5; }
@supports (appearance: base-select) {
  :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select,
  :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select::picker(select) { appearance: base-select; }
  :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select { display: inline-flex; align-items: center; justify-content: space-between; gap: 0.75rem; }
  :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select::picker-icon { color: #C27559; font-size: 0.8rem; transition: rotate 0.3s ease; }
  :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select:open::picker-icon { rotate: 180deg; }
  :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select::picker(select) {
    margin-top: 0.45rem; padding: 0.4rem; border: 1px solid rgba(194, 117, 89, 0.22); border-radius: 1rem; background-color: #FFFBF5;
    box-shadow: 0 1px 2px rgba(194, 117, 89, 0.05), 0 8px 22px -6px rgba(194, 117, 89, 0.16), 0 22px 48px -14px rgba(194, 117, 89, 0.18);
  }
  :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select option {
    padding: 0.6rem 0.9rem; border-radius: 0.65rem; background-color: transparent; color: #01372F; font-weight: 400; cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
  }
  :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select option::checkmark { display: none; }
  :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select option:hover,
  :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select option:focus-visible { background-color: #FFE9E1; outline: none; }
  :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-ordering select option:checked { background-color: rgba(252, 217, 206, 0.55); color: #C27559; font-weight: 500; }
}

/* mriežka produktov */
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products {
  display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; align-items: stretch;
  margin: 0; padding: 0; clear: both;
}
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products::before,
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products::after { display: none !important; }
@media (max-width: 1024px) { :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { :is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products { grid-template-columns: minmax(0, 1fr); } }

/* karta produktu: jemné broskyňové pozadie bez obrysu, sotva badateľný hover */
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product {
  position: relative; box-sizing: border-box;
  width: auto !important; float: none !important; margin: 0 !important;
  display: flex; flex-direction: column;
  padding: 0.6rem 0.6rem 1.4rem; border-radius: 0.75rem;
  background-color: #FFF3EE; border: 0;
  transition: transform 0.6s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.6s cubic-bezier(0.22, 0.61, 0.36, 1);
}
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product:hover {
  transform: scale(1.004);
  box-shadow: 0 1px 2px rgba(194, 117, 89, 0.04), 0 6px 18px -4px rgba(194, 117, 89, 0.09), 0 18px 44px -12px rgba(194, 117, 89, 0.12);
}
/* odkaz s fotkou, názvom a cenou sa roztiahne, aby tlačidlo bolo vždy na spodku karty – aj keď cena chýba */
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product a.woocommerce-loop-product__link { display: flex; flex-direction: column; flex: 1 1 auto; text-decoration: none; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product a img {
  width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 8px; margin: 0 0 1.25rem;
}
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product .woocommerce-loop-product__title {
  font-family: "DM Serif Display", serif; font-weight: 400; font-size: 1.5rem; line-height: 1.2; color: #000000;
  padding: 0 1.15rem; margin: 0 0 0.5rem;
}
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product .price {
  font-family: Inter, sans-serif; font-size: 1.05rem; font-weight: 600; color: #C27559;
  padding: 0 1.15rem; margin: 0;
}
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product .price del { color: #323232; opacity: 0.6; font-weight: 400; margin-inline-end: 0.4rem; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product .price ins { text-decoration: none; }

/* tlačidlo v karte */
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product .button,
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product .added_to_cart {
  align-self: flex-start; flex: 0 0 auto; margin: 1.25rem 1.15rem 0;
  font-family: Inter, sans-serif; font-weight: 500; font-size: 0.95rem; line-height: 1.3; white-space: nowrap;
  color: #FFFFFF; background-color: #01372F; border: 0; border-radius: 9999px;
  padding: 0.55rem 1.4rem; text-decoration: none;
  box-shadow: 0 8px 18px -8px rgba(1, 55, 47, 0.4);
  transition: background-color 0.25s ease, box-shadow 0.25s ease;
}
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product .button:hover,
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product .added_to_cart:hover { background-color: #C27559; color: #FFFFFF; box-shadow: 0 8px 18px -8px rgba(194, 117, 89, 0.5); }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product .added_to_cart { background-color: transparent; color: #01372F; border: 1px solid #01372F; box-shadow: none; margin-top: 0.6rem; }

/* štítok zľavy */
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) ul.products li.product .onsale {
  position: absolute; top: 1.2rem; left: 1.2rem; right: auto; margin: 0; min-height: 0; min-width: 0;
  font-family: Inter, sans-serif; font-size: 0.75rem; font-weight: 500; letter-spacing: 0.06em; text-transform: uppercase; line-height: 1.2;
  color: #C27559; background-color: #FFFFFF; border: 1px solid #F3C3B5; border-radius: 9999px; padding: 0.3rem 0.8rem;
}

/* stránkovanie */
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-pagination { margin-top: 3rem; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-pagination ul.page-numbers { border: 0; display: flex; justify-content: center; gap: 0.4rem; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-pagination ul.page-numbers li { border: 0; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-pagination ul.page-numbers li :is(a, span) {
  font-family: Inter, sans-serif; font-size: 0.95rem; color: #01372F; min-width: 2.4rem; padding: 0.55rem 0.8rem;
  border-radius: 9999px; border: 1px solid #F3C3B5; background-color: transparent; transition: background-color 0.25s ease;
}
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-pagination ul.page-numbers li a:hover { background-color: #FFE9E1; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag) .woocommerce-pagination ul.page-numbers li span.current { background-color: #01372F; border-color: #01372F; color: #FFFFFF; }

/* ==== Helpnisi: produktova stranka (WooCommerce single product) ==== */
body.single-product { background-color: #FFFBF5; }
body.single-product .site-main { box-sizing: border-box; width: 100%; max-width: calc(1140px + 6rem); margin-inline: auto; padding: 2.5rem 3rem 5rem; font-family: Inter, sans-serif; color: #323232; }
@media (max-width: 767px) { body.single-product .site-main { padding: 1.5rem 1.25rem 3.5rem; } }

/* Breadcrumb */
body.single-product .woocommerce-breadcrumb { font-family: Inter, sans-serif; font-size: 0.8rem; letter-spacing: 0.08em; text-transform: uppercase; color: #323232; margin: 0 0 1.75rem; }
body.single-product .woocommerce-breadcrumb a { color: #C27559; text-decoration: none; transition: color 0.25s; }
body.single-product .woocommerce-breadcrumb a:hover { color: #01372F; }

/* Layout */
body.single-product div.product { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 3.5rem; row-gap: 0; align-items: start; }
body.single-product div.product::before, body.single-product div.product::after { display: none !important; }
body.single-product div.product > .woocommerce-product-gallery, body.single-product div.product > .summary { float: none !important; width: 100% !important; margin: 0 !important; }
body.single-product div.product > .summary { padding-block: 0.5rem; }
body.single-product div.product > .woocommerce-tabs, body.single-product div.product > section, body.single-product div.product > .related, body.single-product div.product > .upsells { grid-column: 1 / -1; }
@media (max-width: 900px) {
  body.single-product div.product { grid-template-columns: minmax(0, 1fr); row-gap: 1.75rem; }
  body.single-product div.product > .summary { padding-block: 0; }
}

/* Zlava (odznak) */
body.single-product div.product > span.onsale { position: absolute; top: 1.2rem; left: 1.2rem; right: auto; z-index: 3; margin: 0; min-height: 0; min-width: 0; font-family: Inter, sans-serif; font-size: 0.75rem; font-weight: 500; letter-spacing: 0.06em; text-transform: uppercase; line-height: 1.2; color: #C27559; background-color: #FFFFFF; border: 1px solid #F3C3B5; border-radius: 9999px; padding: 0.35rem 0.9rem; }

/* Galeria */
body.single-product div.product .woocommerce-product-gallery { box-sizing: border-box; padding: 0.6rem; border-radius: 0.75rem; background-color: #FFF3EE; }
body.single-product div.product .woocommerce-product-gallery .flex-viewport, body.single-product div.product .woocommerce-product-gallery__wrapper { border-radius: 8px; overflow: hidden; }
body.single-product div.product .woocommerce-product-gallery__image img { display: block; width: 100%; height: auto; border-radius: 8px; }
body.single-product div.product .woocommerce-product-gallery__trigger { top: 1.2rem; right: 1.2rem; width: 2.5rem; height: 2.5rem; background-color: #FFFFFF; border: 1px solid #F3C3B5; box-shadow: none; }
body.single-product div.product .flex-control-thumbs { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.6rem; margin: 0.6rem 0 0; padding: 0; overflow: visible; }
body.single-product div.product .flex-control-thumbs li { width: auto !important; float: none !important; margin: 0 !important; list-style: none; }
body.single-product div.product .flex-control-thumbs li img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 8px; opacity: 0.55; cursor: pointer; transition: opacity 0.25s; }
body.single-product div.product .flex-control-thumbs li img.flex-active, body.single-product div.product .flex-control-thumbs li img:hover { opacity: 1; }

/* Nazov, hodnotenie, cena */
body.single-product div.product .product_title { font-family: "DM Serif Display", serif; font-weight: 400; font-size: 2.75rem; line-height: 1.15; color: #000000; margin: 0 0 0.9rem; }
@media (max-width: 767px) { body.single-product div.product .product_title { font-size: 2.1rem; } }
body.single-product div.product .woocommerce-product-rating { display: flex; align-items: center; flex-wrap: wrap; gap: 0.6rem; margin: 0 0 1rem; line-height: 1; }
body.single-product div.product .star-rating { float: none; margin: 0; color: #C27559; }
body.single-product div.product .star-rating::before { color: #F3C3B5; }
body.single-product div.product .woocommerce-review-link { font-size: 0.9rem; color: #323232; text-decoration: underline; text-underline-offset: 3px; }
body.single-product div.product .woocommerce-review-link:hover { color: #C27559; }
body.single-product div.product p.price, body.single-product div.product span.price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.3rem 0.7rem; font-family: Inter, sans-serif; font-size: 1.75rem; font-weight: 600; line-height: 1.2; color: #C27559; margin: 0 0 1.25rem; }
body.single-product div.product p.price:empty { display: none; }
body.single-product div.product .price del { font-size: 1.15rem; font-weight: 400; color: #323232; opacity: 0.6; }
body.single-product div.product .price ins { text-decoration: none; font-weight: 600; }
body.single-product div.product .price .woocommerce-price-suffix, body.single-product div.product .price small { font-size: 0.85rem; font-weight: 400; color: #323232; }

/* Kratky popis (benefity) */
body.single-product div.product .woocommerce-product-details__short-description { font-size: 1.0625rem; line-height: 1.55; color: #323232; margin: 0 0 1.5rem; }
body.single-product div.product .woocommerce-product-details__short-description p { margin: 0 0 0.75rem; }
body.single-product div.product .woocommerce-product-details__short-description > :last-child { margin-bottom: 0; }
body.single-product div.product .woocommerce-product-details__short-description ul { list-style: none; display: grid; gap: 0.45rem; margin: 0 0 0.75rem; padding: 0; }
body.single-product div.product .woocommerce-product-details__short-description ul li { position: relative; padding-left: 1.7rem; }
body.single-product div.product .woocommerce-product-details__short-description ul li::before { content: "\2713"; position: absolute; left: 0; top: 0; font-weight: 600; color: #C27559; }

/* Dostupnost */
body.single-product div.product .summary .stock { display: inline-flex; align-items: center; gap: 0.5rem; font-family: Inter, sans-serif; font-size: 0.875rem; font-weight: 500; line-height: 1.3; margin: 0 0 1rem; padding: 0.35rem 0.9rem; border-radius: 9999px; color: #01372F; background-color: rgba(1, 55, 47, 0.08); }
body.single-product div.product .summary .stock::before { content: ""; width: 0.5rem; height: 0.5rem; border-radius: 9999px; background-color: currentColor; flex: 0 0 auto; }
body.single-product div.product .summary .stock.out-of-stock { color: #A8432B; background-color: rgba(194, 117, 89, 0.14); }
body.single-product div.product .summary .stock.available-on-backorder { color: #8A5A00; background-color: #FFF1D6; }

/* Nakupny blok (CTA) */
body.single-product div.product form.cart { display: flex; flex-wrap: wrap; align-items: stretch; gap: 0.75rem; margin: 0 0 1.5rem; padding: 1.25rem; border-radius: 0.75rem; background-color: #FFF3EE; }
body.single-product div.product form.cart::before, body.single-product div.product form.cart::after { display: none !important; }
body.single-product div.product form.cart .stock { flex: 0 0 auto; align-self: flex-start; margin: 0; }
body.single-product div.product form.cart div.quantity { float: none !important; margin: 0 !important; flex: 0 0 auto; display: flex; }
body.single-product div.product form.cart .quantity .qty { box-sizing: border-box; width: 4.75rem; min-height: 3.1rem; height: 100%; text-align: center; font-family: Inter, sans-serif; font-size: 1rem; font-weight: 500; color: #01372F; padding: 0 0.5rem; border: 1px solid #F3C3B5; border-radius: 9999px; background-color: #FFFBF5; transition: border-color 0.25s; }
body.single-product div.product form.cart .quantity .qty:focus { border-color: #C27559; outline: none; }
body.single-product div.product form.cart .single_add_to_cart_button { float: none !important; flex: 1 1 12rem; display: inline-flex; align-items: center; justify-content: center; gap: 0.6rem; min-height: 3.1rem; margin: 0; font-family: Inter, sans-serif; font-weight: 500; font-size: 1.0625rem; line-height: 1.3; color: #FFFFFF; background-color: #01372F; border: 0; border-radius: 9999px; padding: 0.8rem 1.8rem; box-shadow: 0 10px 24px -8px rgba(1, 55, 47, 0.45); cursor: pointer; opacity: 1; transition: background-color 0.25s, box-shadow 0.25s; }
body.single-product div.product form.cart .single_add_to_cart_button::before { content: ""; width: 1.15em; height: 1.15em; flex: 0 0 auto; background-color: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E") center / contain no-repeat; }
body.single-product div.product form.cart .single_add_to_cart_button:hover { background-color: #C27559; color: #FFFFFF; box-shadow: 0 10px 24px -8px rgba(194, 117, 89, 0.55); }
body.single-product div.product form.cart .single_add_to_cart_button:focus-visible { outline: 2px solid #C27559; outline-offset: 3px; }
body.single-product div.product form.cart .single_add_to_cart_button.disabled, body.single-product div.product form.cart .single_add_to_cart_button:disabled { background-color: #01372F; opacity: 0.45; cursor: not-allowed; box-shadow: none; }

@media (max-width: 767px) { body.single-product div.product form.cart { padding: 1rem; } body.single-product div.product form.cart .quantity .qty { width: 4rem; } body.single-product div.product form.cart .single_add_to_cart_button { flex: 1 1 8rem; padding-inline: 1rem; } }

/* Varianty */
body.single-product div.product form.cart table.variations { width: 100%; flex: 1 1 100%; margin: 0; border: 0; border-collapse: collapse; }
body.single-product div.product form.cart table.variations tbody { display: grid; gap: 0.9rem; }
body.single-product div.product form.cart table.variations tr { display: flex; flex-direction: column; gap: 0.4rem; background: none; }
body.single-product div.product form.cart table.variations th, body.single-product div.product form.cart table.variations td { display: block; padding: 0; border: 0; background: none !important; text-align: left; line-height: 1.3; }
body.single-product div.product form.cart table.variations label { font-family: Inter, sans-serif; font-size: 0.8rem; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; color: #323232; }
body.single-product div.product form.cart table.variations select { box-sizing: border-box; width: 100%; max-width: 100%; min-height: 3.1rem; margin: 0; font-family: Inter, sans-serif; font-size: 0.95rem; font-weight: 500; color: #01372F; padding: 0.6rem 1.15rem; border: 1px solid #F3C3B5; border-radius: 9999px; background-color: #FFFBF5; cursor: pointer; transition: border-color 0.25s; }
body.single-product div.product form.cart table.variations select:hover, body.single-product div.product form.cart table.variations select:focus { border-color: #C27559; outline: none; }
body.single-product div.product form.cart .reset_variations { display: inline-block; margin-top: 0.5rem; font-size: 0.85rem; color: #C27559; text-decoration: underline; text-underline-offset: 3px; }
body.single-product div.product form.cart .single_variation_wrap { flex: 1 1 100%; }
body.single-product div.product form.cart .woocommerce-variation-description p { margin: 0 0 0.6rem; font-size: 0.95rem; line-height: 1.5; }
body.single-product div.product form.cart .woocommerce-variation-price { margin: 0 0 0.75rem; }
body.single-product div.product form.cart .woocommerce-variation-price .price { margin: 0; font-size: 1.5rem; }
body.single-product div.product form.cart .woocommerce-variation-availability .stock { margin: 0 0 0.75rem; }
body.single-product div.product form.cart .woocommerce-variation-add-to-cart { display: flex; flex-wrap: wrap; align-items: stretch; gap: 0.75rem; }

/* Zoskupene produkty */
body.single-product div.product form.cart table.group_table { width: 100%; flex: 1 1 100%; margin: 0 0 0.25rem; border: 0; border-collapse: collapse; }
body.single-product div.product form.cart table.group_table td { padding: 0.7rem 0.4rem; border: 0; border-bottom: 1px solid rgba(194, 117, 89, 0.18); background: none !important; vertical-align: middle; font-size: 0.95rem; }
body.single-product div.product form.cart table.group_table tr:last-child td { border-bottom: 0; }
body.single-product div.product form.cart table.group_table a { color: #01372F; text-decoration: none; font-weight: 500; }
body.single-product div.product form.cart table.group_table .price { display: inline; margin: 0; font-size: 1rem; }

/* Meta (SKU, kategorie, znacky) */
body.single-product div.product .product_meta { display: flex; flex-direction: column; gap: 0.3rem; padding-top: 1.25rem; border-top: 1px solid rgba(194, 117, 89, 0.18); font-size: 0.85rem; line-height: 1.5; color: #323232; }
body.single-product div.product .product_meta a { color: #C27559; text-decoration: none; }
body.single-product div.product .product_meta a:hover { color: #01372F; }

/* Zalozky: popis, parametre, recenzie */
body.single-product div.product .woocommerce-tabs { margin: 4rem 0 0; padding: 0; }
@media (max-width: 900px) { body.single-product div.product .woocommerce-tabs { margin-top: 1.5rem; } }
body.single-product div.product .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0 0 2rem; padding: 0; border: 0; overflow: visible; }
body.single-product div.product .woocommerce-tabs ul.tabs::before, body.single-product div.product .woocommerce-tabs ul.tabs::after, body.single-product div.product .woocommerce-tabs ul.tabs li::before, body.single-product div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }
body.single-product div.product .woocommerce-tabs ul.tabs li { margin: 0; padding: 0; border: 1px solid #F3C3B5; border-radius: 9999px; background-color: transparent; transition: background-color 0.25s, border-color 0.25s; }
body.single-product div.product .woocommerce-tabs ul.tabs li a { display: block; padding: 0.55rem 1.3rem; font-family: Inter, sans-serif; font-size: 0.95rem; font-weight: 500; color: #01372F; text-decoration: none; }
body.single-product div.product .woocommerce-tabs ul.tabs li:hover { background-color: #FFE9E1; }
body.single-product div.product .woocommerce-tabs ul.tabs li.active { background-color: #01372F; border-color: #01372F; }
body.single-product div.product .woocommerce-tabs ul.tabs li.active a { color: #FFFFFF; }
body.single-product div.product .woocommerce-tabs .panel { max-width: 46rem; margin: 0; padding: 0; font-size: 1.0625rem; line-height: 1.6; color: #323232; }
body.single-product div.product .woocommerce-tabs .panel h2 { font-family: "DM Serif Display", serif; font-weight: 400; font-size: 2rem; line-height: 1.2; color: #000000; margin: 0 0 1rem; }
body.single-product div.product .woocommerce-tabs .panel h3 { font-family: "DM Serif Display", serif; font-weight: 400; font-size: 1.5rem; line-height: 1.25; color: #000000; margin: 1.75rem 0 0.75rem; }
body.single-product div.product .woocommerce-tabs .panel p { margin: 0 0 1rem; }
body.single-product div.product .woocommerce-tabs .panel ul, body.single-product div.product .woocommerce-tabs .panel ol { margin: 0 0 1rem; padding-left: 1.25rem; }
body.single-product div.product .woocommerce-tabs .panel li { margin-bottom: 0.4rem; }
body.single-product div.product .woocommerce-tabs .panel a { color: #C27559; }
body.single-product div.product .woocommerce-tabs .panel img { border-radius: 0.75rem; height: auto; max-width: 100%; }

/* Tabulka parametrov */
body.single-product div.product table.shop_attributes { width: 100%; margin: 0; border: 0; border-collapse: collapse; font-size: 1rem; }
body.single-product div.product table.shop_attributes th, body.single-product div.product table.shop_attributes td { padding: 0.8rem 1rem; border: 0; border-bottom: 1px solid rgba(194, 117, 89, 0.14); background: transparent; font-style: normal; text-align: left; vertical-align: top; }
body.single-product div.product table.shop_attributes th { width: 35%; font-weight: 600; color: #000000; }
body.single-product div.product table.shop_attributes tr:nth-child(even) th, body.single-product div.product table.shop_attributes tr:nth-child(even) td { background-color: #FFF3EE; }
body.single-product div.product table.shop_attributes td p { margin: 0; padding: 0; }

/* Recenzie */
body.single-product #reviews #comments ol.commentlist { display: grid; gap: 1rem; margin: 0 0 2rem; padding: 0; }
body.single-product #reviews #comments ol.commentlist li { margin: 0; list-style: none; }
body.single-product #reviews #comments ol.commentlist li .comment_container { padding: 1.25rem; border-radius: 0.75rem; background-color: #FFF3EE; }
body.single-product #reviews #comments ol.commentlist li img.avatar { position: static; float: left; width: 2.75rem; height: 2.75rem; margin: 0 1rem 0 0; padding: 0; border: 0; border-radius: 9999px; background: none; }
body.single-product #reviews #comments ol.commentlist li .comment-text { margin: 0 0 0 3.75rem; padding: 0; border: 0; border-radius: 0; }
body.single-product #reviews #comments ol.commentlist li .comment-text p.meta { font-size: 0.9rem; margin: 0 0 0.5rem; color: #323232; }
body.single-product #reviews #comments ol.commentlist li .comment-text .description p { margin: 0; }
body.single-product #reviews .woocommerce-noreviews { margin: 0 0 1.5rem; }
body.single-product #review_form_wrapper { padding: 1.5rem; border-radius: 0.75rem; background-color: #FFF3EE; }
body.single-product #review_form .comment-reply-title { display: block; font-family: "DM Serif Display", serif; font-size: 1.5rem; line-height: 1.25; color: #000000; margin: 0 0 0.75rem; }
body.single-product #review_form .comment-form { display: grid; gap: 0.9rem; }
body.single-product #review_form .comment-form p { margin: 0; }
body.single-product #review_form .comment-form label { display: block; font-size: 0.9rem; font-weight: 500; margin-bottom: 0.35rem; }
body.single-product #review_form p.stars a { color: #C27559; }
body.single-product #review_form .comment-form textarea, body.single-product #review_form .comment-form input[type="text"], body.single-product #review_form .comment-form input[type="email"] { box-sizing: border-box; width: 100%; font-family: Inter, sans-serif; font-size: 1rem; color: #323232; padding: 0.8rem 1rem; border: 1px solid #F3C3B5; border-radius: 0.75rem; background-color: #FFFBF5; }
body.single-product #review_form .comment-form textarea:focus, body.single-product #review_form .comment-form input:focus { border-color: #C27559; outline: none; }
body.single-product #review_form .comment-form .comment-form-cookies-consent label { display: inline; font-weight: 400; }
body.single-product #review_form #respond input#submit { font-family: Inter, sans-serif; font-weight: 500; font-size: 1rem; color: #FFFFFF; background-color: #01372F; border: 0; border-radius: 9999px; padding: 0.7rem 1.6rem; cursor: pointer; transition: background-color 0.25s; }
body.single-product #review_form #respond input#submit:hover { background-color: #C27559; }

/* Suvisiace produkty / upsell */
body.single-product div.product > .related, body.single-product div.product > .upsells { margin-top: 4.5rem; padding-top: 3rem; border-top: 1px solid rgba(194, 117, 89, 0.18); }
body.single-product div.product > .related > h2, body.single-product div.product > .upsells > h2 { font-family: "DM Serif Display", serif; font-weight: 400; font-size: 2.25rem; line-height: 1.2; color: #000000; margin: 0 0 2rem; }
@media (max-width: 767px) { body.single-product div.product > .related, body.single-product div.product > .upsells { margin-top: 3rem; padding-top: 2.25rem; } body.single-product div.product > .related > h2, body.single-product div.product > .upsells > h2 { font-size: 1.85rem; } }
body.single-product ul.products { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; align-items: stretch; margin: 0; padding: 0; clear: both; }
body.single-product ul.products::before, body.single-product ul.products::after { display: none !important; }
@media (max-width: 1024px) { body.single-product ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { body.single-product ul.products { grid-template-columns: minmax(0, 1fr); } }
body.single-product ul.products li.product { position: relative; box-sizing: border-box; display: flex; flex-direction: column; width: auto !important; float: none !important; margin: 0 !important; padding: 0.6rem 0.6rem 1.4rem; border: 0; border-radius: 0.75rem; background-color: #FFF3EE; transition: transform 0.6s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.6s cubic-bezier(0.22, 0.61, 0.36, 1); }
body.single-product ul.products li.product:hover { transform: scale(1.004); box-shadow: 0 1px 2px rgba(194, 117, 89, 0.04), 0 6px 18px -4px rgba(194, 117, 89, 0.09), 0 18px 44px -12px rgba(194, 117, 89, 0.12); }
body.single-product ul.products li.product a.woocommerce-loop-product__link { display: flex; flex-direction: column; flex: 1 1 auto; text-decoration: none; }
body.single-product ul.products li.product a img { width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 8px; margin: 0 0 1.25rem; }
body.single-product ul.products li.product .woocommerce-loop-product__title { font-family: "DM Serif Display", serif; font-weight: 400; font-size: 1.5rem; line-height: 1.2; color: #000000; padding: 0 1.15rem; margin: 0 0 0.5rem; }
body.single-product ul.products li.product .star-rating { margin: 0 1.15rem 0.5rem; }
body.single-product ul.products li.product .price { display: block; font-family: Inter, sans-serif; font-size: 1.05rem; font-weight: 600; color: #C27559; padding: 0 1.15rem; margin: 0; }
body.single-product ul.products li.product .price del { font-size: inherit; color: #323232; opacity: 0.6; font-weight: 400; margin-inline-end: 0.4rem; }
body.single-product ul.products li.product .price ins { text-decoration: none; }
body.single-product ul.products li.product .button, body.single-product ul.products li.product .added_to_cart { align-self: flex-start; flex: 0 0 auto; margin: 1.25rem 1.15rem 0; font-family: Inter, sans-serif; font-weight: 500; font-size: 0.95rem; line-height: 1.3; white-space: nowrap; color: #FFFFFF; background-color: #01372F; border: 0; border-radius: 9999px; padding: 0.55rem 1.4rem; text-decoration: none; box-shadow: 0 8px 18px -8px rgba(1, 55, 47, 0.4); transition: background-color 0.25s, box-shadow 0.25s; }
body.single-product ul.products li.product .button:hover, body.single-product ul.products li.product .added_to_cart:hover { background-color: #C27559; color: #FFFFFF; box-shadow: 0 8px 18px -8px rgba(194, 117, 89, 0.5); }
body.single-product ul.products li.product .added_to_cart { background-color: transparent; color: #01372F; border: 1px solid #01372F; box-shadow: none; margin-top: 0.6rem; }
body.single-product ul.products li.product .onsale { position: absolute; top: 1.2rem; left: 1.2rem; right: auto; margin: 0; min-height: 0; min-width: 0; font-family: Inter, sans-serif; font-size: 0.75rem; font-weight: 500; letter-spacing: 0.06em; text-transform: uppercase; line-height: 1.2; color: #C27559; background-color: #FFFFFF; border: 1px solid #F3C3B5; border-radius: 9999px; padding: 0.3rem 0.8rem; }

/* Oznamy (pridane do kosika, chyby) */
body.single-product .woocommerce-message, body.single-product .woocommerce-info, body.single-product .woocommerce-error { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.75rem 1.25rem; margin: 0 0 1.75rem; padding: 1rem 1.25rem 1rem 3.1rem; font-family: Inter, sans-serif; font-size: 0.95rem; line-height: 1.5; color: #01372F; background-color: #FFF3EE; border: 1px solid #F3C3B5; border-radius: 0.75rem; list-style: none; }
body.single-product .woocommerce-message::before, body.single-product .woocommerce-info::before { color: #01372F; top: 1.05rem; left: 1.15rem; }
body.single-product .woocommerce-error { color: #A8432B; border-color: #E3B0A3; }
body.single-product .woocommerce-error::before { color: #A8432B; top: 1.05rem; left: 1.15rem; }
body.single-product .woocommerce-message::after, body.single-product .woocommerce-info::after, body.single-product .woocommerce-error::after { display: none; }
body.single-product .woocommerce-message .button, body.single-product .woocommerce-info .button { order: 2; float: none; margin: 0; font-family: Inter, sans-serif; font-weight: 500; font-size: 0.9rem; line-height: 1.3; color: #FFFFFF; background-color: #01372F; border: 0; border-radius: 9999px; padding: 0.5rem 1.25rem; text-decoration: none; white-space: nowrap; transition: background-color 0.25s; }
body.single-product .woocommerce-message .button:hover, body.single-product .woocommerce-info .button:hover { background-color: #C27559; color: #FFFFFF; }

/* ==== Helpnisi: kosik v hlavicke + stav po pridani do kosika ==== */
.hn-header-cart { flex: 0 0 auto; align-self: center; width: auto; }
.hn-header-cart .elementor-menu-cart__toggle .elementor-button { position: relative; display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 2.5rem; height: 2.5rem; padding: 0; border: 1px solid #F3C3B5; border-radius: 9999px; background-color: rgba(255, 255, 255, 0.5); color: #01372F; fill: #01372F; box-shadow: none; transition: background-color 0.25s, border-color 0.25s, color 0.25s; }
.hn-header-cart .elementor-menu-cart__toggle .elementor-button:hover, .hn-header-cart .elementor-menu-cart__toggle .elementor-button:focus-visible { background-color: #FFFFFF; border-color: #C27559; color: #C27559; }
.hn-header-cart .elementor-menu-cart__toggle .elementor-button-text { display: none; }
.hn-header-cart .elementor-menu-cart__toggle .elementor-button-icon { position: static; display: flex; align-items: center; justify-content: center; font-size: 1.1rem; line-height: 1; color: inherit; }
.hn-header-cart .elementor-menu-cart__toggle .elementor-button-icon-qty[data-counter] { position: absolute; top: -0.35rem; right: -0.35rem; left: auto; inset-inline-end: -0.35rem; box-sizing: border-box; min-width: 1.2rem; height: 1.2rem; padding: 0 0.3rem; border: 2px solid #FFF1EB; border-radius: 9999px; background-color: #C27559; color: #FFFFFF; font-family: Inter, sans-serif; font-size: 0.65rem; font-weight: 600; line-height: calc(1.2rem - 4px); text-align: center; }
@media (max-width: 767px) { .hn-header-cart .elementor-menu-cart__toggle .elementor-button { width: 2.35rem; height: 2.35rem; } }

/* Bocny kosik */
.hn-header-cart .elementor-menu-cart__container { left: auto !important; right: 0 !important; width: 22rem; max-width: calc(100vw - 1.5rem); background: none; }
@media (max-width: 767px) { .hn-header-cart, .hn-header-cart .elementor-menu-cart__wrapper, .hn-header-cart .elementor-menu-cart__toggle_wrapper { position: static; } .hn-header-cart .elementor-menu-cart__container { top: 100%; left: 0.75rem !important; right: 0.75rem !important; width: auto; max-width: none; } }
.hn-header-cart .elementor-menu-cart__toggle .elementor-button-icon svg { width: 1.2rem; height: 1.2rem; fill: currentColor; }
.hn-header-cart .elementor-menu-cart__main { box-sizing: border-box; width: 100%; margin-top: 0.85rem; padding: 1.1rem 1.25rem 1.25rem; border: 1px solid #F3C3B5; border-radius: 0.75rem; background-color: #FFFBF5; font-family: Inter, sans-serif; color: #323232; box-shadow: 0 1px 2px rgba(194, 117, 89, 0.05), 0 8px 22px -6px rgba(194, 117, 89, 0.16), 0 22px 48px -14px rgba(194, 117, 89, 0.18); }
.hn-header-cart .elementor-menu-cart__close-button { margin: 0 0 1rem auto; color: #01372F; }
.hn-header-cart .elementor-menu-cart__close-button::before, .hn-header-cart .elementor-menu-cart__close-button::after { background-color: #01372F; }
.hn-header-cart .elementor-menu-cart__products { border: 0; }
.hn-header-cart .elementor-menu-cart__product { padding: 1rem 0; border-bottom: 1px solid rgba(194, 117, 89, 0.18); }
.hn-header-cart .elementor-menu-cart__product-image img { border-radius: 8px; }
.hn-header-cart .elementor-menu-cart__product-name a { font-family: "DM Serif Display", serif; font-size: 1.15rem; line-height: 1.25; color: #000000; text-decoration: none; }
.hn-header-cart .elementor-menu-cart__product-price { font-size: 0.9rem; font-weight: 500; color: #C27559; }
.hn-header-cart .elementor-menu-cart__product-remove { border-color: #F3C3B5; color: #C27559; }
.hn-header-cart .elementor-menu-cart__product-remove::before, .hn-header-cart .elementor-menu-cart__product-remove::after { background-color: #C27559; }
.hn-header-cart .elementor-menu-cart__subtotal { padding: 1.25rem 0; border: 0; font-size: 1rem; color: #000000; }
.hn-header-cart .elementor-menu-cart__footer-buttons { display: grid; grid-template-columns: 1fr; gap: 0.6rem; }
.hn-header-cart .elementor-menu-cart__footer-buttons .elementor-button { display: flex; align-items: center; justify-content: center; min-height: 3rem; padding: 0.7rem 1.25rem; border-radius: 9999px; font-family: Inter, sans-serif; font-size: 1rem; font-weight: 500; text-transform: none; text-decoration: none; transition: background-color 0.25s, color 0.25s; }
.hn-header-cart .elementor-menu-cart__footer-buttons .elementor-button--checkout { order: 1; background-color: #01372F; color: #FFFFFF; border: 0; box-shadow: 0 10px 24px -8px rgba(1, 55, 47, 0.45); }
.hn-header-cart .elementor-menu-cart__footer-buttons .elementor-button--checkout:hover { background-color: #C27559; }
.hn-header-cart .elementor-menu-cart__footer-buttons .elementor-button--view-cart { order: 2; background-color: transparent; color: #01372F; border: 1px solid #01372F; }
.hn-header-cart .elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover { background-color: #FFE9E1; }
.hn-header-cart .woocommerce-mini-cart__empty-message { padding: 2rem 0; font-size: 1rem; color: #323232; text-align: center; }

/* Karta produktu po pridani do kosika */
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag, body.single-product) ul.products li.product a.button.added { margin: 1.25rem 1.15rem 0; padding: 0; font-size: 0; line-height: 1; color: #01372F; background: none; box-shadow: none; pointer-events: none; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag, body.single-product) ul.products li.product a.button.added::before { content: "\2713\00a0 Pridané do košíka"; font-family: Inter, sans-serif; font-size: 0.9rem; font-weight: 500; line-height: 1.3; color: #01372F; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag, body.single-product) ul.products li.product a.button.added::after { display: none; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag, body.single-product) ul.products li.product a.added_to_cart { margin: 0.75rem 1.15rem 0; background-color: #01372F; color: #FFFFFF; border: 0; box-shadow: 0 8px 18px -8px rgba(1, 55, 47, 0.4); }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag, body.single-product) ul.products li.product a.added_to_cart::after { content: "\00a0\2192"; }
:is(body.woocommerce-shop, body.tax-product_cat, body.tax-product_tag, body.single-product) ul.products li.product a.added_to_cart:hover { background-color: #C27559; color: #FFFFFF; }

/* ==== Helpnisi: upravy 2 (produkt bez recenzii, ruzovy panel, mini kosik) ==== */
/* Recenzie skryte */
body.single-product #tab-title-reviews, body.single-product #tab-reviews, body.single-product #reviews, body.single-product div.product .woocommerce-product-rating, body.single-product ul.products li.product .star-rating { display: none !important; }
body.single-product div.product .woocommerce-tabs ul.tabs:not(:has(li:not(.reviews_tab) ~ li:not(.reviews_tab))) { display: none; }

/* Fotka na cistom pozadi, prava strana v ruzovom paneli */
body.single-product div.product { align-items: stretch; }
body.single-product div.product .woocommerce-product-gallery { padding: 0; background-color: transparent; border-radius: 0; align-self: start; }
body.single-product div.product .woocommerce-product-gallery .flex-viewport, body.single-product div.product .woocommerce-product-gallery__wrapper, body.single-product div.product .woocommerce-product-gallery__image img { border-radius: 0.75rem; }
body.single-product div.product .woocommerce-product-gallery__trigger { top: 0.9rem; right: 0.9rem; }
body.single-product div.product > span.onsale { top: 0.9rem; left: 0.9rem; }
body.single-product div.product > .summary { box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; padding: 2.5rem; border-radius: 0.75rem; background-color: #FFF3EE; }
body.single-product div.product form.cart { padding: 0; background-color: transparent; border-radius: 0; }
body.single-product div.product .product_meta { border-top-color: rgba(194, 117, 89, 0.22); }
@media (max-width: 900px) { body.single-product div.product > .summary { padding: 1.5rem 1.25rem; } }
@media (max-width: 767px) { body.single-product div.product form.cart { padding: 0; } }

/* Ikona kosika: pocet kusov */
.hn-header-cart.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter] { left: auto; text-align: center; top: -0.45rem; right: -0.45rem; inset-inline-end: -0.45rem; min-width: 1.35rem; height: 1.35rem; padding: 0 0.35rem; border: 2px solid #FFF1EB; background-color: #01372F; color: #FFFFFF; font-size: 0.72rem; font-weight: 600; line-height: calc(1.35rem - 4px); letter-spacing: 0; box-shadow: 0 2px 6px -1px rgba(1, 55, 47, 0.35); }
.hn-header-cart .elementor-menu-cart__toggle .elementor-button:hover, .hn-header-cart .elementor-menu-cart__toggle .elementor-button:focus-visible { background-color: #FFFFFF; border-color: #01372F; color: #01372F; }

/* Mini kosik: umiestnenie a obsah */
.hn-header-cart .elementor-menu-cart__container { width: 24rem; }
.hn-header-cart .elementor-menu-cart__main { position: relative; margin-top: 1.35rem; padding: 1.25rem 1.5rem 1.5rem; border-color: rgba(194, 117, 89, 0.28); }
.hn-header-cart .elementor-menu-cart__main::before { content: "Váš košík"; display: block; margin: 0 0 0.5rem; padding: 0 2.5rem 0.9rem 0; border-bottom: 1px solid rgba(194, 117, 89, 0.18); font-family: "DM Serif Display", serif; font-size: 1.4rem; line-height: 1.2; color: #000000; }
.hn-header-cart .elementor-menu-cart__close-button { position: absolute; top: 1.2rem; right: 1.35rem; margin: 0; width: 1.5rem; height: 1.5rem; opacity: 0.75; transition: opacity 0.2s; }
.hn-header-cart .elementor-menu-cart__close-button:hover { opacity: 1; }
.hn-header-cart .elementor-menu-cart__product { padding: 0.9rem 0; }
.hn-header-cart .elementor-menu-cart__product-name a { font-size: 1.1rem; }
.hn-header-cart .elementor-menu-cart__product-name a:hover { color: #01372F; text-decoration: underline; text-underline-offset: 3px; }
.hn-header-cart .elementor-menu-cart__product-price { font-size: 0.9rem; font-weight: 500; color: #323232; }
.hn-header-cart .elementor-menu-cart__product-price .amount { font-weight: 600; color: #000000; }
.hn-header-cart .elementor-menu-cart__product-remove { border-color: #E3B0A3; transition: background-color 0.2s, border-color 0.2s; }
.hn-header-cart .elementor-menu-cart__product-remove::before, .hn-header-cart .elementor-menu-cart__product-remove::after { background-color: #01372F; }
.hn-header-cart .elementor-menu-cart__product-remove:hover { background-color: #FFE9E1; border-color: #01372F; }
.hn-header-cart .elementor-menu-cart__subtotal { display: flex; align-items: baseline; justify-content: space-between; padding: 1rem 0 1.1rem; font-size: 1rem; text-align: left; color: #323232; }
.hn-header-cart .elementor-menu-cart__subtotal strong { font-weight: 500; }
.hn-header-cart .elementor-menu-cart__subtotal .amount { font-size: 1.2rem; font-weight: 600; color: #000000; }
.hn-header-cart .elementor-menu-cart__footer-buttons .elementor-button { transition: background-color 0.2s, color 0.2s, box-shadow 0.2s, transform 0.2s; }
.hn-header-cart .elementor-menu-cart__footer-buttons .elementor-button--checkout:hover, .hn-header-cart .elementor-menu-cart__footer-buttons .elementor-button--checkout:focus-visible { background-color: #012621; color: #FFFFFF; box-shadow: 0 12px 26px -8px rgba(1, 55, 47, 0.6); transform: translateY(-1px); }
.hn-header-cart .elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover, .hn-header-cart .elementor-menu-cart__footer-buttons .elementor-button--view-cart:focus-visible { background-color: #01372F; color: #FFFFFF; }
.hn-header-cart .elementor-menu-cart__footer-buttons .elementor-button:focus-visible { outline: 2px solid #C27559; outline-offset: 2px; }
@media (max-width: 767px) { .hn-header-cart .elementor-menu-cart__container { width: auto; } .hn-header-cart .elementor-menu-cart__main { margin-top: 0.6rem; padding: 1.1rem 1.15rem 1.25rem; } }

/* Popis produktu na celu sirku */
body.single-product div.product .woocommerce-tabs .panel { max-width: none; width: 100%; }

/* ==== Helpnisi: upravy 3 (galeria gap, panel hore, AJAX kosik) ==== */
body.single-product.woocommerce div.product div.images .flex-control-thumbs { margin: 0.9rem 0 0 !important; gap: 0.75rem; }
body.single-product div.product { align-items: start; }
body.single-product div.product > .summary { align-self: start; justify-content: flex-start; min-height: 360px; }
@media (max-width: 900px) { body.single-product div.product > .summary { min-height: 0; } }
.hn-ajax-cart-script { display: none !important; }
body.single-product div.product form.cart .single_add_to_cart_button.hn-loading { opacity: 0.65; pointer-events: none; cursor: progress; }
body.single-product div.product form.cart .single_add_to_cart_button.hn-added::before { -webkit-mask: none; mask: none; background: none; content: "\2713"; width: auto; height: auto; font-weight: 600; line-height: 1; }

/* ==== Helpnisi: paticka - hover odkazov ==== */
.elementor[data-elementor-type="footer"] a, .elementor[data-elementor-type="footer"] a .elementor-icon-list-text { transition: color 0.25s; }
.elementor[data-elementor-type="footer"] a:hover, .elementor[data-elementor-type="footer"] a:focus-visible, .elementor[data-elementor-type="footer"] .elementor-icon-list-item a:hover .elementor-icon-list-text { color: #C27559; }

/* ==== Helpnisi: upravy 4 (nadpis suvisiacich produktov, sirka tlacidla) ==== */
body.single-product div.product > .related > h2 { font-size: 0; line-height: 0; }
body.single-product div.product > .related > h2::before { content: "Zákazníčky tiež nakúpili"; font-size: 2.25rem; line-height: 1.2; }
@media (max-width: 767px) { body.single-product div.product > .related > h2 { font-size: 0; } body.single-product div.product > .related > h2::before { font-size: 1.85rem; } }
body.single-product div.product form.cart .single_add_to_cart_button { flex: 0 0 auto; }
@media (max-width: 767px) { body.single-product div.product form.cart .single_add_to_cart_button { flex: 0 0 auto; padding-inline: 1.5rem; } }/* End custom CSS */