/* =========================================================
   Juicy Seed — vzhľad pre šablónu Shoptet Samba (template-14)
   Písma: Climate Crisis (nadpisy), Montserrat (text)
   Načítanie písiem je v kóde záhlavia (Google Fonts).
   ========================================================= */

:root {
  --js-ink: #090f10;
  --js-surface: #121417;
  --js-surface-2: #1b1d22;
  --js-line: #2c2f36;
  --js-line-2: #5a5e69;
  --js-text: #f5f2f4;
  --js-muted: #a9a4ae;
  --js-pink: #c11c71;
  --js-pink-500: #e5197f;
  --js-pink-300: #ff5aa8;
  --js-blue: #2b6bf0;
  --js-blue-600: #1f4fd1;
  --js-blue-300: #6c9bff;
  --js-blush: #f1dce7;
  --js-ok: #3ddc97;
  --js-ease: cubic-bezier(.2,.8,.2,1);
  --js-display: "Climate Crisis", "Montserrat", sans-serif;
  --js-sans: "Montserrat", system-ui, sans-serif;

  /* premenné samotnej šablóny Samba (v Sambe: primary = plocha hlavičky,
     secondary = odkazy a tlačidlá, tertiary-hover = farba textu) */
  --template-font: "Montserrat";
  --template-headings-font: "Montserrat";   /* Climate Crisis dávame len cielene na veľké nadpisy */
  --color-primary: #090f10;
  --color-primary-hover: #121417;
  --color-secondary: #c11c71;
  --color-secondary-hover: #e5197f;
  --color-tertiary: #1b1d22;
  --color-tertiary-hover: #f5f2f4;
  --color-header-background: #090f10;
  --color-primary-h: 189; --color-primary-s: 28%; --color-primary-l: 5%;
  --color-primary-hover-h: 216; --color-primary-hover-s: 12%; --color-primary-hover-l: 8%;
  --color-secondary-h: 329; --color-secondary-s: 75%; --color-secondary-l: 43%;
  --color-secondary-hover-h: 330; --color-secondary-hover-s: 80%; --color-secondary-hover-l: 50%;
  --color-tertiary-h: 223; --color-tertiary-s: 11%; --color-tertiary-l: 12%;
  --color-tertiary-hover-h: 320; --color-tertiary-hover-s: 13%; --color-tertiary-hover-l: 95%;

  /* tmavé dizajnové tokeny Samby */
  --colors-surface-primary: #090f10;
  --colors-surface-secondary: #1b1d22;
  --colors-surface-subtle: #1b1d22;
  --colors-surface-tertiary: #2c2f36;
  --colors-surface-quaternary: #5a5e69;
  --colors-surface-disabled: #2c2f36;
  --colors-surface-overlay: rgba(9,15,16,.7);
  --colors-surface-overlay-light: rgba(9,15,16,.7);
  --colors-surface-white: #121417;
  --colors-surface-rating: #ff5aa8;
  --colors-focus-primary: #6c9bff;
  --colors-focus-secondary: #090f10;
  --colors-foregrounds-headlines-primary: #f5f2f4;
  --colors-foregrounds-content-primary: #f5f2f4;
  --colors-foregrounds-content-primary-dark: #f5f2f4;
  --colors-foregrounds-content-secondary: #a9a4ae;
  --colors-foregrounds-content-tertiary: #a9a4ae;
  --colors-foregrounds-content-quaternary: #a9a4ae;
  --colors-foregrounds-content-inverted: #090f10;
  --colors-foregrounds-icons-primary: #a9a4ae;
  --colors-foregrounds-borders-primary: #5a5e69;
  --colors-foregrounds-borders-secondary: #2c2f36;
  --colors-foregrounds-borders-tertiary: #5a5e69;
  --colors-forms-background: #1b1d22;
  --colors-forms-border: #5a5e69;
  --colors-forms-activated: #e5197f;
  --colors-forms-disabled: #2c2f36;
  --colors-state-success: #3ddc97;
  --colors-forms-positive: #3ddc97;
  --selects-bg-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' fill='none' viewBox='0 0 36 36'%3E%3Cpath fill='%231b1d22' d='M0 0h46v46H0z'/%3E%3Cpath fill='%23a9a4ae' d='M18 21.8c-.21 0-.41-.08-.57-.23l-5-5a.803.803 0 0 1 0-1.13c.31-.31.82-.31 1.13 0L18 19.87l4.43-4.43c.31-.31.82-.31 1.13 0s.31.82 0 1.13l-5 5c-.15.15-.35.23-.56.23'/%3E%3C/svg%3E");
}

/* ---------- základ ---------- */
html, body,
.overall-wrapper,
#content-wrapper, .content-wrapper, .content-wrapper-in {
  background: var(--js-ink) !important;
  color: var(--js-text);
}
body, button, input, select, textarea {
  font-family: var(--js-sans) !important;
}
body { -webkit-font-smoothing: antialiased; }

a { color: var(--js-pink-300); transition: color .2s var(--js-ease); }
a:hover, a:focus { color: var(--js-text); }
:focus-visible { outline: 2px solid var(--js-blue-300) !important; outline-offset: 2px; }
::selection { background: var(--js-pink); color: var(--js-text); }

h1, .h1, h2, .h2, h3, .h3,
div.homepage-group-title, div.homepage-group-title.h4, .welcome .h1,
.p-detail-inner-header h1, .p-detail-inner-header-mobile .h1,
.category-title, .content h1 {
  font-family: var(--js-display) !important;
  font-weight: 400 !important;
  text-transform: uppercase;
  letter-spacing: 0;
  line-height: 1.12 !important;   /* mäkčene a dĺžne sa nesmú dotýkať */
  color: var(--js-text) !important;
  text-wrap: balance;
}
h4, .h4, h5, .h5, h6 {
  font-family: var(--js-sans) !important;
  font-weight: 800 !important;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--js-text) !important;
}
p, li, td, th, label, .p-desc { color: inherit; }
hr { border-color: var(--js-line); }

/* ---------- tlačidlá ---------- */
.btn, a.btn, button.btn {
  border-radius: 999px !important;
  font-family: var(--js-sans) !important;
  font-weight: 800 !important;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-size: 13px;
  transition: transform .2s var(--js-ease), background-color .2s ease, border-color .2s ease, box-shadow .2s ease !important;
}
.btn:hover { transform: translateY(-2px); }
.btn-primary, .btn-conversion, .btn-cart, .add-to-cart-button,
#continue-order-button, .next-step-forward {
  background: var(--js-pink) !important;
  border: 0 !important;
  color: var(--js-text) !important;
}
.btn-primary:hover, .btn-conversion:hover, .btn-cart:hover, .add-to-cart-button:hover,
#continue-order-button:hover, .next-step-forward:hover {
  background: var(--js-pink-500) !important;
  box-shadow: 0 0 24px rgba(229,25,127,.45);
  color: var(--js-text) !important;
}
.btn-secondary, .btn-default, .next-step-back, .btn:not(.btn-primary):not(.btn-conversion):not(.btn-cart):not(.add-to-cart-button):not(.btn-icon):not(.btn--link) {
  background: transparent !important;
  border: 1.5px solid var(--js-line-2) !important;
  color: var(--js-text) !important;
}
.btn-secondary:hover, .btn-default:hover, .next-step-back:hover {
  border-color: var(--js-text) !important;
}

/* ---------- formuláre ---------- */
.form-control, input[type="text"], input[type="email"], input[type="tel"], input[type="password"],
input[type="number"], input[type="search"], select, textarea {
  background: var(--js-surface-2) !important;
  border: 1.5px solid var(--js-line-2) !important;
  color: var(--js-text) !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}
.form-control:focus, input:focus, select:focus, textarea:focus { border-color: var(--js-pink-300) !important; }
::placeholder { color: var(--js-muted) !important; }
.box, .box-bg-default, .box-sm {
  background: var(--js-surface) !important;
  border: 1px solid var(--js-line) !important;
  color: var(--js-text);
}

/* ---------- hlavička ---------- */
#header, .header-top, .header-bottom, .header-top-wrapper, .header-bottom-wrapper {
  background: var(--js-ink) !important;
  border-color: var(--js-line) !important;
}
#header { border-bottom: 1px solid var(--js-line); }
#header .site-name a img { max-height: 56px !important; width: auto !important; height: auto !important; }
.navigation-buttons a, .navigation-buttons button, .navigation-buttons [class^="icon-"], .navigation-buttons i {
  color: var(--js-text) !important;
}
.navigation-buttons .cart-count {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: var(--js-text) !important;
}
.navigation-buttons .cart-count i {
  background: var(--js-pink) !important;
  color: var(--js-text) !important;
  font-style: normal;
  font-weight: 800;
}
#navigation, .navigation-in, .menu-helper { background: transparent !important; }
#navigation .menu-level-1 > li > a,
.menu-helper > span {
  color: var(--js-text) !important;
  background: transparent !important;
}
#navigation .menu-level-1 > li > a b,
.menu-helper > span {
  font-weight: 800 !important;
  font-size: 13px;
  letter-spacing: .12em;
  text-transform: uppercase;
}
#navigation .menu-level-1 > li > a:hover,
#navigation .menu-level-1 > li:hover > a { color: var(--js-pink-300) !important; }
.menu-level-2, .menu-helper .menu-level-1 {
  background: var(--js-surface) !important;
  border: 1px solid var(--js-line) !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.5) !important;
}
.menu-level-2 a, .menu-helper .menu-level-1 a { color: var(--js-text) !important; }
.menu-level-2 a:hover { color: var(--js-pink-300) !important; }

/* logo: Samba ho zmenší na max. 100 pt šírky */
/* object-fit: funguje pre orezané logo aj pre štvorcový súbor 1000 × 1000 so zvieraťom v strede */
#header .site-name a img, .site-name img { width: 190px !important; height: 72px !important; object-fit: cover; object-position: center; max-height: none !important; max-width: none !important; }

/* vyskakovacie okná (prihlásenie, košík, hľadanie) */
.popup-widget, .popup-widget-inner, .cart-widget-inner, .search-widget, .searchWhisperer {
  background: var(--js-surface) !important;
  color: var(--js-text) !important;
  border-color: var(--js-line) !important;
}

/* ---------- karusel a bannery ---------- */
.carousel-wrapper { background: var(--js-ink) !important; }
.carousel .item img, .banner-wrapper img { display: block; }
.extended-banner-texts {
  font-family: var(--js-sans);
  color: var(--js-text) !important;
}
.extended-banner-title {
  font-family: var(--js-display) !important;
  text-transform: uppercase;
  line-height: 1.12;
}
.carousel-control {
  color: var(--js-text) !important;
  opacity: .8;
}

/* pás výhod (benefit bannery) = náš pás dôvery */
.benefitBanner {
  background: transparent !important;
  border-top: 1px solid var(--js-line);
  border-bottom: 1px solid var(--js-line);
}
.benefitBanner__item { background: transparent !important; }
.benefitBanner__item + .benefitBanner__item { border-left: 1px solid var(--js-line); }
.benefitBanner__picture {
  width: 52px; height: 52px; flex: 0 0 52px;
  display: grid; place-items: center;
  border: 1.5px solid var(--js-pink);
  border-radius: 999px;
}
.benefitBanner__img { max-width: 26px; max-height: 26px; }
.benefitBanner__title { color: var(--js-text) !important; font-weight: 800; font-size: 15px; }
.benefitBanner__data { color: var(--js-muted) !important; font-size: 13px; }

/* ---------- nadpisy skupín na úvodnej stránke ---------- */
div.homepage-group-title.h4 {
  font-family: var(--js-display) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  font-size: clamp(28px, 3.4vw, 44px) !important;
  margin: 72px 0 28px !important;
  text-align: left !important;
}
.homepage-group-title::before, .homepage-group-title::after { display: none !important; }

/* ---------- karta produktu ---------- */
.products .product, .products .product .p {
  background: transparent !important;
  border: 0 !important;
}
.products .product .p {
  position: relative;
  display: flex; flex-direction: column;
  height: 100%;
  background: var(--js-surface) !important;
  border: 1px solid var(--js-line) !important;
  border-radius: 0 !important;
  overflow: hidden;
  transition: transform .3s var(--js-ease), box-shadow .3s ease, border-color .3s ease;
}
.products .product .p:hover {
  transform: translateY(-6px);
  border-color: transparent !important;
  box-shadow: 0 0 0 1px var(--js-pink-500), 0 16px 48px rgba(229,25,127,.3);
}
.products .product .p .image {
  display: block;
  background: var(--js-ink) !important;
  overflow: hidden;
}
.products .product .p .image img {
  transition: transform .5s var(--js-ease);
}
.products .product .p:hover .image img { transform: scale(1.06); }
.products .product .p-in { padding: 18px 20px 20px !important; background: transparent !important; text-align: left !important; }
.products .product .p-in *, .products .product .p-bottom > div { text-align: left !important; justify-content: flex-start; }
.products .product .p-code { display: none !important; }
.products .product .p-desc { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.products-block > div .p .p-in .p-in-in .name { height: auto !important; min-height: 52px; -webkit-line-clamp: 3 !important; letter-spacing: 0 !important; }
.products .product .name { display: block; }
.products .product .name, .products .product .name span {
  font-family: var(--js-display) !important;
  font-weight: 400 !important;
  text-transform: uppercase;
  font-size: 22px !important;
  line-height: 1.14 !important;
  color: var(--js-text) !important;
}
.products .product .name:hover span { color: var(--js-pink-300) !important; }
.products .product .p-desc { color: var(--js-muted) !important; font-size: 13px; }
.products .product .price-final strong,
.products .product .price-final {
  color: var(--js-text) !important;
  font-family: var(--js-sans) !important;
  font-weight: 800 !important;
  font-size: 18px;
}
.products .product .availability span { color: var(--js-muted) !important; }
.products .product .availability span:first-child { color: var(--js-ok) !important; font-weight: 600; }
.products .product .p-code { color: var(--js-muted) !important; }
.products .product .btn-cart {
  min-width: 44px; height: 44px;
}
.products .product .quantity { border-color: var(--js-line-2) !important; }

/* štítky (Tip, Novinka, Akcia) */
.flags .flag {
  border-radius: 999px !important;
  font-family: var(--js-sans) !important;
  font-weight: 800 !important;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-size: 11px !important;
  width: auto !important;
  min-width: 0 !important;
  padding: 6px 12px !important;
  line-height: 1 !important;
  background: var(--js-ink) !important;
  border: 1.5px solid var(--js-text);
  color: var(--js-text) !important;
}
.flags .flag-new { background: var(--js-blue) !important; border-color: var(--js-blue); }
.flags .flag-action, .flags .flag-discount { background: var(--js-pink) !important; border-color: var(--js-pink); }

/* posuvník produktov */
.product-slider-holder .slick-arrow, .product-slider-holder button {
  color: var(--js-text) !important;
}

/* ---------- detail produktu ---------- */
.type-detail .p-detail, .type-detail .p-detail-inner { background: transparent !important; }
.p-detail-inner-header h1, .p-detail-inner-header-mobile .h1 {
  font-size: clamp(26px, 2.8vw, 42px) !important;
  word-break: normal !important; overflow-wrap: normal !important; hyphens: manual;
}
.p-short-description { color: var(--js-text); font-size: 16px; line-height: 1.6; }
.p-image, .p-image-wrapper, #wrap, .p-main-image { background: var(--js-ink) !important; }
.p-thumbnails a, .p-thumbnails img { border-color: var(--js-line) !important; }
.p-price-wrapper .price-final, .p-price-wrapper .price-final strong {
  font-family: var(--js-sans) !important;
  font-weight: 800 !important;
  font-size: 32px !important;
  color: var(--js-text) !important;
}
.p-price-wrapper .price-measure, .detail-parameters, .detail-parameter { color: var(--js-muted) !important; }
.detail-parameter-availability .availability-label { color: var(--js-ok) !important; font-weight: 700; }

/* varianty (Espresso / Filter, gramáž) */
.p-variants-block, .variant-list, .hidden-split-parameter, .advanced-parameter {
  background: transparent !important;
  color: var(--js-text) !important;
}
.p-variants-block select, .parameter-dependent select { min-height: 48px; }
.advanced-parameter-inner {
  border: 1.5px solid var(--js-line-2) !important;
  background: transparent !important;
  color: var(--js-text) !important;
  border-radius: 0 !important;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.advanced-parameter-inner:hover { border-color: var(--js-pink-300) !important; }
.advanced-parameter input:checked + .advanced-parameter-inner,
.hidden-split-parameter input:checked + label,
.advanced-parameter-inner.yes-before {
  border-color: var(--js-pink-500) !important;
  box-shadow: 0 0 0 1px var(--js-pink-500), 0 0 24px rgba(229,25,127,.3);
}

/* množstvo + do košíka */
.quantity {
  border: 1.5px solid var(--js-line-2) !important;
  border-radius: 999px !important;
  background: transparent !important;
  overflow: hidden;
}
.quantity input.amount {
  background: transparent !important;
  border: 0 !important;
  color: var(--js-text) !important;
  font-weight: 800;
}
.quantity button, .quantity .increase, .quantity .decrease {
  background: transparent !important;
  color: var(--js-text) !important;
  border: 0 !important;
}
.p-to-cart-block .add-to-cart-button { min-height: 52px; padding-left: 28px; padding-right: 28px; }

/* záložky Popis / Diskusia */
.shp-tabs-wrapper, .p-detail-tabs-wrapper, .tab-content, .tab-pane {
  background: transparent !important;
  color: var(--js-text) !important;
  border-color: var(--js-line) !important;
}
.shp-tabs { border-bottom: 1px solid var(--js-line) !important; }
.shp-tab-link {
  color: var(--js-muted) !important;
  background: transparent !important;
  border: 0 !important;
  font-weight: 800 !important;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-size: 13px;
}
.shp-tab.active .shp-tab-link, .shp-tab-link:hover {
  color: var(--js-text) !important;
  box-shadow: inset 0 -3px 0 var(--js-pink-500);
}
.description-inner { font-size: 16px; line-height: 1.7; }
.link-icon { color: var(--js-muted) !important; }

/* ---------- košík a objednávka ---------- */
.cart-header .step {
  background: transparent !important;
  color: var(--js-muted) !important;
  border-color: var(--js-line) !important;
}
.cart-header .step.active, .cart-header .step.active span { color: var(--js-text) !important; }
ol.cart-header li.active strong, ol.cart-header li.active a { color: var(--js-text) !important; }
ol.cart-header li.active strong::before { background: var(--js-pink) !important; border-color: var(--js-pink) !important; color: var(--js-text) !important; border-radius: 999px !important; }
ol.cart-header li a::before, ol.cart-header li strong::before { border-radius: 999px !important; border-color: var(--js-line-2) !important; }
ol.cart-header li.completed a::before { background: rgba(61,220,151,.14) !important; border-color: var(--js-ok) !important; color: var(--js-ok) !important; }
ol.cart-header li span { font-weight: 700; }
.cart-table, .cart-table td, .cart-table th, .cart-table tr {
  background: transparent !important;
  color: var(--js-text) !important;
  border-color: var(--js-line) !important;
}
.cart-table .main-link {
  font-family: var(--js-sans) !important;
  color: var(--js-text) !important;
  font-weight: 800;
  font-size: 16px;
}
.cart-table .main-link:hover { color: var(--js-pink-300) !important; }
.cart-table .cart-p-image img { background: var(--js-ink); }
.cart-table .availability-label { color: var(--js-ok) !important; }
.cart-table .p-label, .cart-table .unit-value, .cart-table .availability-amount { color: var(--js-muted) !important; }
.cart-table .price-final { color: var(--js-text) !important; font-weight: 800; }
.remove-item { color: var(--js-muted) !important; background: transparent !important; }
.remove-item:hover { color: var(--js-pink-300) !important; }
.extras-wrapper, .extra { background: transparent !important; color: var(--js-text) !important; }
.extra.delivery strong { color: var(--js-ok) !important; }
.summary-wrapper .price-wrapper .price,
.summary-wrapper .price-primary { color: var(--js-text) !important; font-weight: 800; }
.summary-wrapper .price-wrapper .price { font-size: 26px; }
.ordering-process .co-box, .ordering-process .order-summary-inner, .ordering-process .radio-wrapper,
.ordering-process .shipping-billing-table, .ordering-process .payment-info {
  background: var(--js-surface) !important;
  color: var(--js-text) !important;
  border-color: var(--js-line) !important;
}
.ordering-process .radio-wrapper.active, .ordering-process .radio-wrapper:hover { border-color: var(--js-pink-500) !important; }

.next-step--cart { display: flex !important; flex-direction: column; gap: 10px; margin-top: 16px; }
.next-step--cart .btn { display: flex !important; align-items: center; justify-content: center; width: 100% !important; min-height: 52px; line-height: 1.2 !important; padding: 14px 20px !important; white-space: normal; float: none !important; margin: 0 !important; }
.next-step--cart .next-step-forward { order: -1; }
.summary-wrapper .price-wrapper { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; border: 0 !important; }

/* ---------- newsletter a pätička ---------- */
.footer-newsletter-full-width {
  background: var(--js-surface) !important;
  color: var(--js-text) !important;
  border-top: 1px solid var(--js-line);
}
.footer-newsletter-full-width .container-full-width, .footer-newsletter { background: transparent !important; color: var(--js-text) !important; }
.footer-newsletter > h2 { font-size: clamp(24px, 2.6vw, 34px) !important; }
.footer-newsletter fieldset h2 { font-family: var(--js-sans) !important; font-weight: 800 !important; font-size: 13px !important; letter-spacing: .1em; text-transform: uppercase; }
#footer, .footer, .footer-bottom-full-width, .footer-bottom, .footer-rows, .custom-footer {
  background: var(--js-ink) !important;
  color: var(--js-muted) !important;
  border-color: var(--js-line) !important;
}
#footer a { color: var(--js-text) !important; }
#footer a:hover { color: var(--js-pink-300) !important; }
.copyright strong { color: var(--js-text); }

/* uvítací text na úvodnej stránke */
.welcome-wrapper, .welcome { background: transparent !important; color: var(--js-text) !important; }

/* bočný panel (kategórie, top produkty) */
.sidebar, .sidebar .box, .sidebar-inner { background: transparent !important; border-color: var(--js-line) !important; }
.sidebar a { color: var(--js-text) !important; }
.sidebar a:hover, .sidebar .active > a, .sidebar a.active { color: var(--js-pink-300) !important; }
.sidebar h4, .sidebar .h4, .sidebar .topic, .sidebar h3, .sidebar .pageElement__heading, .sidebar .pageElement__heading span {
  font-family: var(--js-sans) !important; font-weight: 800 !important; font-size: 13px !important;
  letter-spacing: .14em; text-transform: uppercase; line-height: 1.4 !important;
}

/* tlačidlá v košíku majú text vo vnorenom span */
.next-step .btn span, .order-button-text, .continue-shopping { font: inherit !important; letter-spacing: inherit; text-transform: inherit; }

/* mobil: menšie názvy na kartách v dvoch stĺpcoch */
@media (max-width: 767px) {
  .products .product .name, .products .product .name span { font-size: 15px !important; white-space: normal !important; }
  .products .product .p-in { padding: 12px !important; }
  .products .product .p-desc { display: none; }
  .homepage-group-title { margin: 48px 0 20px !important; }
  #header .site-name a img, .site-name img { width: 130px !important; height: 50px !important; }
  .benefitBanner { display: grid !important; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0; }
  .benefitBanner .benefitBanner__item { flex-direction: column; text-align: center; padding: 16px 8px !important; margin: 0 !important; width: auto !important; }
  .benefitBanner__item + .benefitBanner__item { border-left: 0 !important; border-top: 0 !important; }
  .benefitBanner__item:nth-child(even) { border-left: 1px solid var(--js-line) !important; }
  .benefitBanner__item:nth-child(n+3) { border-top: 1px solid var(--js-line) !important; }
  .benefitBanner .benefitBanner__picture { width: 44px !important; height: 44px !important; flex: 0 0 44px !important; margin: 0 auto 8px !important; }
  .benefitBanner .benefitBanner__title { font-size: 13px !important; line-height: 1.3 !important; }
  .benefitBanner .benefitBanner__data { font-size: 12px !important; line-height: 1.4 !important; }
}

/* drobnosti */
.breadcrumbs, .breadcrumbs a, .navigation-home-icon { color: var(--js-muted) !important; background: transparent !important; }
.breadcrumbs a:hover { color: var(--js-text) !important; }
.messages .msg, .msg { border-radius: 0 !important; }
.stars .star, .stars-wrapper { color: var(--js-pink-300) !important; }
.pagination a, .pagination strong, .pagination span {
  background: transparent !important;
  color: var(--js-text) !important;
  border-color: var(--js-line-2) !important;
  border-radius: 999px !important;
}
.pagination .current, .pagination strong { background: var(--js-pink) !important; border-color: var(--js-pink) !important; }
.loader-overlay { background: rgba(9,15,16,.7) !important; }

/* šírka obsahu: Samba má na veľkých obrazovkách 1712 px, my držíme užší stĺpec */
@media (min-width: 1440px) {
  .container { width: 1320px; }
  .container-full-width { max-width: 1320px; }
}

/* ---------- Juicy Seed sekcie pridané skriptom (úvodná stránka) ---------- */
.jsx-wrap { max-width: 1184px; margin: 0 auto; padding: 0 16px; }
.jsx-eyebrow {
  margin: 0;
  font: 800 12px/16px var(--js-sans);
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--js-pink-300);
}
.jsx-h2 {
  margin: 0;
  font-family: var(--js-display);
  font-weight: 400;
  text-transform: uppercase;
  font-size: clamp(30px, 3.6vw, 44px);
  line-height: 1.12;
  color: var(--js-text);
  text-wrap: balance;
}
.jsx-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 52px; padding: 0 26px;
  border-radius: 999px;
  font: 800 13px/1 var(--js-sans);
  letter-spacing: .1em; text-transform: uppercase;
  text-decoration: none !important;
  transition: transform .2s var(--js-ease), background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.jsx-btn:hover { transform: translateY(-2px); }
.jsx-btn--primary { background: var(--js-pink); color: var(--js-text) !important; }
.jsx-btn--primary:hover { background: var(--js-pink-500); box-shadow: 0 0 24px rgba(229,25,127,.45); }
.jsx-btn--ghost { border: 1.5px solid var(--js-line-2); color: var(--js-text) !important; }
.jsx-btn--ghost:hover { border-color: var(--js-text); }

/* hero s líškou */
.jsx-hero { padding: 72px 0 56px; }
.jsx-hero__grid::before, .jsx-hero__grid::after { display: none !important; }
.jsx-hero__grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1.05fr);
  gap: 40px; align-items: center;
}
.jsx-hero__text { display: flex; flex-direction: column; gap: 24px; align-items: flex-start; }
.jsx-hero h1 {
  margin: 0;
  font-family: var(--js-display) !important;
  font-weight: 400 !important;
  text-transform: uppercase;
  font-size: clamp(44px, 6.4vw, 92px) !important;
  line-height: 1.08 !important;
  color: var(--js-text) !important;
}
.jsx-hero__lead { margin: 0; max-width: 500px; font-size: 18px; line-height: 1.6; color: var(--js-muted); }
.jsx-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.jsx-fox-stage { position: relative; display: flex; align-items: center; justify-content: center; min-height: 420px; }
.jsx-fox-glow {
  position: absolute; inset: 8% 4% 4% 4%;
  background: radial-gradient(closest-side at 32% 62%, rgba(229,25,127,.42), transparent 72%),
              radial-gradient(closest-side at 72% 58%, rgba(43,107,240,.38), transparent 72%);
  filter: blur(24px);
}
.jsx-fox {
  position: relative; width: 100%; max-width: 640px; height: auto; display: block;
  margin: 0 auto;
  filter: drop-shadow(0 30px 40px rgba(0,0,0,.55));
  animation: jsx-float 6s ease-in-out infinite;
}
@keyframes jsx-float { 0%,100% { transform: translateY(0) rotate(0); } 50% { transform: translateY(-10px) rotate(-1deg); } }

/* pás dôvery s logami platieb */
body.jsx-own-trust.type-index .benefit-banners-full-width { display: none !important; }
.jsx-trust .container::before, .jsx-trust .container::after { display: none; }
.jsx-trust__list {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr) minmax(0,1.35fr);
  border-top: 1px solid var(--js-line); border-bottom: 1px solid var(--js-line);
}
.jsx-trust__list li { display: flex; align-items: center; gap: 16px; padding: 24px 28px; margin: 0; }
.jsx-trust__list li:first-child { padding-left: 0; }
.jsx-trust__list li + li { border-left: 1px solid var(--js-line); }
.jsx-trust__list li > span:last-child { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.jsx-trust__list b { font: 700 15px/20px var(--js-sans); color: var(--js-text); }
.jsx-trust__list small { font: 500 13px/18px var(--js-sans); color: var(--js-muted); }
.jsx-trust__ico {
  flex: 0 0 48px; width: 48px; height: 48px; border-radius: 999px;
  display: grid; place-items: center;
  border: 1.5px solid var(--js-pink); color: var(--js-pink-300);
}
.jsx-pay { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin: 2px 0; color: var(--js-text); }
.jsx-pay__logo { display: inline-flex; opacity: .92; }
.jsx-pay__logo svg { display: block; height: 36px; width: auto; }

/* benefit bannery Shoptetu (napr. na detaile): ikony v jednej línii */
.benefitBanner .benefitBanner__item, .benefitBanner .benefitBanner__link { justify-content: flex-start !important; padding: 20px 8px; }
.benefitBanner .benefitBanner__picture { flex: 0 0 52px !important; height: 52px !important; margin: 0 0 12px !important; }
.benefitBanner .benefitBanner__title { font-size: 16px !important; line-height: 1.3 !important; }

/* spoločné bloky sekcií */
body.jsx { overflow-x: clip; }
.jsx-section { padding: 88px 0 0; }
.jsx-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 36px; }
.jsx-head > div { display: flex; flex-direction: column; gap: 16px; }
.jsx-band { position: relative; margin: 88px calc(50% - 50vw) 0; padding: 0 calc(50vw - 50%) 88px; }
.jsx-band > .jsx-section { padding-top: 88px; }
.jsx-band--surface { background: var(--js-surface); border-top: 1px solid var(--js-line); border-bottom: 1px solid var(--js-line); }
.jsx-band--blue { background: var(--js-blue); }
.jsx-band + .jsx-band { margin-top: 0; }
.jsx-label { font: 800 12px/16px var(--js-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--js-muted); }
.jsx-k-pink { color: var(--js-pink-300) !important; }
.jsx-k-blue { color: var(--js-blue-300) !important; }
.jsx-muted { color: var(--js-muted); margin: 0; }
.jsx-row { display: flex; flex-wrap: wrap; gap: 12px; }
.jsx-link { font-weight: 700; }
.jsx-btn--sm { min-height: 42px; padding: 0 18px; font-size: 12px; }
.jsx-btn--pink { background: var(--js-pink-300); color: var(--js-ink) !important; }
.jsx-btn--pink:hover { background: var(--js-blush); }
.jsx-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.jsx-chips span { padding: 7px 12px; border-radius: 999px; border: 1px solid var(--js-line-2); background: rgba(9,15,16,.6); font: 700 12px/1 var(--js-sans); letter-spacing: .06em; color: var(--js-text); }
.jsx-price { font: 800 22px/1 var(--js-sans); color: var(--js-text); }
.jsx-notes { font: 700 12px/18px var(--js-sans); letter-spacing: .08em; text-transform: uppercase; color: var(--js-pink-300); }
.jsx-origin { font: 500 13px/18px var(--js-sans); color: var(--js-muted); }
.jsx-stock { display: inline-flex; align-items: center; gap: 6px; font: 600 13px/18px var(--js-sans); color: var(--js-muted); }
.jsx-stock::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--js-ok); }
.jsx-roastb { display: inline-flex; align-items: center; padding: 6px 10px; border-radius: 999px; font: 800 11px/1 var(--js-sans); letter-spacing: .12em; text-transform: uppercase; color: var(--js-text); background: var(--js-pink); }
.jsx-roastb--filter { background: var(--js-blue); }
.jsx-group { display: flex; flex-direction: column; gap: 10px; padding-top: 16px; border-top: 1px solid var(--js-line); }
.jsx-meta { display: flex; flex-wrap: wrap; gap: 6px 16px; font: 600 12px/18px var(--js-sans); color: var(--js-muted); }
.jsx-grid3 { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px; }
.jsx-split { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 64px; align-items: center; }
.jsx-split--top { align-items: start; }

/* Chuť v číslach (labky) */
.jsx-meter { display: grid; grid-template-columns: max-content 1fr; gap: 8px 16px; align-items: center; }
.jsx-meter__label { font: 700 12px/16px var(--js-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--js-muted); }
.jsx-meter__row { display: flex; gap: 4px; }
.jsx-paw { color: var(--js-line); }
.jsx-paw.is-on { color: var(--js-blue-300); }

/* Horká, alebo ovocná */
.jsx-tiles { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 24px; }
.jsx-tile {
  position: relative; overflow: hidden;
  display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; gap: 16px;
  min-height: 440px; padding: 44px;
  color: var(--js-text) !important; text-decoration: none !important;
  transition: transform .3s var(--js-ease), box-shadow .3s ease;
}
.jsx-tile:hover { transform: translateY(-6px); }
.jsx-tile--pink { background: var(--js-pink); }
.jsx-tile--pink:hover { box-shadow: 0 0 0 1px var(--js-pink-500), 0 16px 48px rgba(229,25,127,.4); }
.jsx-tile--blue { background: var(--js-blue-600); }
.jsx-tile--blue:hover { box-shadow: 0 0 0 1px var(--js-blue), 0 16px 48px rgba(43,107,240,.4); }
.jsx-tile > *:not(.jsx-tracks) { position: relative; z-index: 1; }
.jsx-tracks { position: absolute; inset: 0; pointer-events: none; }
.jsx-track { position: absolute; width: 36px; height: 36px; color: rgba(255,255,255,.16); transition: color .3s ease; }
.jsx-tile:hover .jsx-track { color: rgba(255,255,255,.3); }
.jsx-tile__kicker { font: 800 12px/16px var(--js-sans); letter-spacing: .14em; text-transform: uppercase; opacity: .9; }
.jsx-tile__title { font-family: var(--js-display); text-transform: uppercase; font-size: clamp(38px, 4.4vw, 60px); line-height: 1.14; }
.jsx-tile__text { max-width: 420px; font-size: 16px; line-height: 26px; font-weight: 500; }
.jsx-tile__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.jsx-tile__chips span { padding: 7px 12px; border-radius: 999px; background: rgba(9,15,16,.28); font: 700 12px/1 var(--js-sans); letter-spacing: .06em; }
.jsx-tile__cta {
  display: inline-flex; align-items: center; gap: 10px; margin-top: 6px;
  padding: 12px 18px; border-radius: 999px;
  background: var(--js-blush); color: var(--js-ink);
  font: 800 12px/1 var(--js-sans); letter-spacing: .1em; text-transform: uppercase;
  transition: gap .2s ease;
}
.jsx-tile:hover .jsx-tile__cta { gap: 16px; }

@media (max-width: 960px) {
  .jsx-hero { padding: 32px 0 40px; }
  .jsx-hero__grid, .jsx-tiles { grid-template-columns: minmax(0,1fr); }
  .jsx-fox-stage { min-height: 0; order: -1; }
  .jsx-fox { width: 88%; margin: 0 auto; }
  .jsx-hero__text { align-items: center; text-align: center; }
  .jsx-hero__lead { margin: 0 auto; }
  .jsx-hero__actions { justify-content: center; }
  .jsx-tile { min-height: 380px; }
  .jsx-trust__list { grid-template-columns: minmax(0,1fr); }
  .jsx-trust__list li, .jsx-trust__list li:first-child { padding: 16px 0; }
  .jsx-trust__list li + li { border-left: 0; border-top: 1px solid var(--js-line); }
  .benefitBanner__item + .benefitBanner__item { border-left: 0; border-top: 1px solid var(--js-line); }
}
@media (max-width: 560px) {
  .jsx-tile { padding: 28px; }
}
@media (prefers-reduced-motion: reduce) {
  .jsx-fox { animation: none; }
  *, *::before, *::after { transition: none !important; }
}

/* sady */
.jsx-setcard { position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: flex-start; gap: 14px; padding: 0 40px 40px; background: var(--js-ink); border: 1px solid var(--js-line); transition: transform .3s var(--js-ease), box-shadow .3s ease, border-color .3s ease; }
.jsx-setcard > *:not(.jsx-setcard__media) { position: relative; z-index: 1; }
.jsx-setcard__media { position: relative; z-index: 0; align-self: stretch; margin: 0 -40px -96px; overflow: hidden; }
.jsx-setcard__media img { display: block; width: 100%; height: auto; transition: transform .7s var(--js-ease); }
.jsx-setcard__media::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(0deg, var(--js-ink) 0%, rgba(9,15,16,.85) 18%, rgba(9,15,16,0) 46%); }
.jsx-setcard--pink .jsx-setcard__media::after { background: linear-gradient(0deg, var(--js-ink) 0%, rgba(9,15,16,.85) 18%, rgba(9,15,16,0) 46%), radial-gradient(120% 50% at 0% 100%, rgba(193,28,113,.28), rgba(193,28,113,0) 70%); }
.jsx-setcard--blue .jsx-setcard__media::after { background: linear-gradient(0deg, var(--js-ink) 0%, rgba(9,15,16,.85) 18%, rgba(9,15,16,0) 46%), radial-gradient(120% 50% at 0% 100%, rgba(31,79,209,.3), rgba(31,79,209,0) 70%); }
.jsx-setcard:hover .jsx-setcard__media img { transform: scale(1.03); }
.jsx-setcard:hover { transform: translateY(-6px); border-color: transparent; }
.jsx-setcard--pink:hover { box-shadow: 0 0 0 1px var(--js-pink-500), 0 16px 48px rgba(229,25,127,.3); }
.jsx-setcard--blue:hover { box-shadow: 0 0 0 1px var(--js-blue), 0 16px 48px rgba(43,107,240,.3); }
.jsx-setcard__name { margin: 0; font-family: var(--js-display) !important; font-weight: 400 !important; text-transform: uppercase; font-size: clamp(28px, 3vw, 38px) !important; line-height: 1.12 !important; color: var(--js-text) !important; }
.jsx-setcard__foot { display: flex; align-items: center; gap: 18px; margin-top: 6px; }

/* tri výhody */
.jsx-adv { display: flex; flex-direction: column; gap: 16px; padding: 32px; background: var(--js-surface); border: 1px solid var(--js-line); }
.jsx-adv h3 { margin: 0; font-family: var(--js-display) !important; font-weight: 400 !important; text-transform: uppercase; font-size: 24px !important; line-height: 1.12 !important; }
.jsx-adv p { margin: 0; color: var(--js-muted); line-height: 1.6; }
.jsx-adv__icon { width: 56px; height: 56px; border-radius: 999px; display: grid; place-items: center; background: var(--js-pink); color: var(--js-text); }
.jsx-adv__icon.is-blue { background: var(--js-blue); }
.jsx-adv__icon.is-blush { background: var(--js-blush); color: var(--js-ink); }

/* príbeh s pražičkou */
.jsx-roaster-stage { position: relative; display: flex; justify-content: center; align-items: center; }
.jsx-roaster-glow { position: absolute; width: min(100%, 620px); aspect-ratio: 1; border-radius: 50%; background: radial-gradient(closest-side at 42% 50%, rgba(229,25,127,.42), transparent 72%), radial-gradient(closest-side at 62% 50%, rgba(43,107,240,.36), transparent 72%); filter: blur(24px); }
.jsx-roaster { position: relative; width: min(100%, 460px); height: auto; display: block; -webkit-mask-image: linear-gradient(180deg, #000 82%, transparent 100%); mask-image: linear-gradient(180deg, #000 82%, transparent 100%); transition: transform .6s var(--js-ease); }
.jsx-roaster-stage:hover .jsx-roaster { transform: translateY(-6px); }
.jsx-story { display: flex; flex-direction: column; gap: 22px; align-items: flex-start; }
.jsx-story__lead { margin: 0; font-size: 18px; line-height: 1.6; font-weight: 500; color: var(--js-text); }

/* B2B pás */
.jsx-b2bband { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 32px; }
.jsx-b2bband > div { display: flex; flex-direction: column; gap: 16px; max-width: 700px; flex: 1 1 420px; }
.jsx-b2bband .jsx-eyebrow { color: var(--js-blush); }
.jsx-b2bband p:not(.jsx-eyebrow) { margin: 0; font-size: 18px; line-height: 1.6; font-weight: 500; color: var(--js-text); }

/* karty káv zo Shoptetu */
.products .product .p .image { position: relative; }
.jsx-card .jsx-roastb { position: absolute; top: 12px; right: 12px; z-index: 2; }
.jsx-card__extra { display: flex; flex-direction: column; gap: 6px; margin: 6px 0 4px; }
.jsx-card--filter { box-shadow: inset 0 3px 0 var(--js-blue); }
.jsx-qv-hint {
  position: absolute; left: 50%; bottom: 14px; z-index: 2; transform: translate(-50%, 8px); opacity: 0;
  padding: 10px 16px; border: 0; border-radius: 999px; background: var(--js-blush); color: var(--js-ink);
  font: 800 11px/1 var(--js-sans); letter-spacing: .12em; text-transform: uppercase; cursor: pointer;
  transition: opacity .2s ease, transform .2s var(--js-ease);
}
.products .product .p:hover .jsx-qv-hint, .jsx-qv-hint:focus-visible { opacity: 1; transform: translate(-50%, 0); }
@media (hover: none) { .jsx-qv-hint { opacity: 1; transform: translate(-50%, 0); } }

/* modálne okno (rýchly náhľad, sada) */
html.jsx-lock { overflow: hidden; }
.jsx-modal { position: fixed; inset: 0; z-index: 10000; display: grid; place-items: center; padding: 16px; background: rgba(9,15,16,.78); backdrop-filter: blur(8px); animation: jsx-fade .2s ease; font-family: var(--js-sans); color: var(--js-text); }
.jsx-modal__panel { position: relative; box-sizing: border-box; width: min(1040px, 100%); max-height: calc(100vh - 32px); overflow: auto; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); background: var(--js-surface); border: 1px solid var(--js-line); box-shadow: 0 0 0 1px var(--js-pink-500), 0 24px 80px rgba(229,25,127,.25); animation: jsx-pop .28s var(--js-ease); }
.jsx-modal__close { position: absolute; top: 12px; right: 12px; z-index: 3; width: 44px; height: 44px; border-radius: 999px; border: 1.5px solid var(--js-line-2); background: var(--js-ink); color: var(--js-text); font-size: 22px; line-height: 1; cursor: pointer; }
.jsx-modal__close:hover { border-color: var(--js-text); }
@keyframes jsx-fade { from { opacity: 0; } }
@keyframes jsx-pop { from { opacity: 0; transform: translateY(12px) scale(.98); } }
.jsx-qv__media { background: var(--js-ink); min-height: 320px; display: flex; align-items: center; justify-content: center; }
.jsx-qv__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.jsx-ph { font-family: var(--js-display); text-transform: uppercase; font-size: 28px; color: var(--js-line-2); padding: 24px; text-align: center; }
.jsx-qv__body { display: flex; flex-direction: column; gap: 16px; padding: 32px; }
.jsx-qv__head { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding-right: 48px; }
.jsx-qv__title { margin: 0; font-family: var(--js-display) !important; font-weight: 400 !important; text-transform: uppercase; font-size: 40px !important; line-height: 1.1 !important; color: var(--js-text) !important; }
.jsx-qv__price { font: 800 26px/1 var(--js-sans); }
.jsx-qv__buy { display: flex; flex-wrap: wrap; gap: 12px; }
.jsx-qv__buy .jsx-btn { flex: 1 1 200px; }
.jsx-set { padding: 0; }
.jsx-set__media { position: relative; display: flex; align-items: center; background: var(--js-ink); min-height: 100%; }
.jsx-set__media img { width: 100%; height: auto; display: block; }
.jsx-set__badge { position: absolute; left: 20px; bottom: 20px; padding: 8px 14px; border-radius: 999px; background: var(--js-blush); color: var(--js-ink); font: 800 11px/1 var(--js-sans); letter-spacing: .14em; text-transform: uppercase; }
.jsx-set__body { display: flex; flex-direction: column; gap: 22px; padding: 36px 36px 32px; }
.jsx-set__title { display: flex; flex-direction: column; gap: 10px; padding-right: 52px; }
.jsx-set__title h3 { margin: 0; font-family: var(--js-display) !important; font-weight: 400 !important; text-transform: uppercase; font-size: clamp(28px, 3vw, 40px) !important; line-height: 1.1 !important; color: var(--js-text) !important; }
.jsx-set__names { font: 700 14px/20px var(--js-sans); }
.jsx-set__roasts { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.jsx-opt { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 12px 16px; border: 1.5px solid var(--js-line-2); background: transparent; color: var(--js-text); cursor: pointer; font-family: var(--js-sans); }
.jsx-opt b { font-size: 15px; font-weight: 800; letter-spacing: .06em; }
.jsx-opt span { font-size: 14px; font-weight: 600; color: var(--js-muted); }
.jsx-opt:hover { border-color: var(--js-pink-300); }
.jsx-opt[aria-pressed="true"] { border-color: var(--js-pink-500); box-shadow: 0 0 0 1px var(--js-pink-500), 0 0 24px rgba(229,25,127,.3); }
.jsx-opt.is-filter[aria-pressed="true"] { border-color: var(--js-blue); box-shadow: 0 0 0 1px var(--js-blue), 0 0 24px rgba(43,107,240,.3); }
.jsx-opt[disabled] { opacity: .4; cursor: not-allowed; box-shadow: none; }
.jsx-opt[disabled] b { text-decoration: line-through; }
.jsx-set__desc { margin: 0; font-size: 15px; line-height: 24px; font-weight: 500; }
.jsx-set__list { display: flex; flex-direction: column; gap: 8px; }
.jsx-set__row { display: grid; grid-template-columns: 56px minmax(0,1fr) auto; align-items: center; gap: 14px; width: 100%; padding: 8px 16px 8px 8px; background: var(--js-surface-2); border: 1px solid var(--js-line); color: var(--js-text); text-align: left; cursor: pointer; font-family: var(--js-sans); transition: border-color .2s ease, transform .2s var(--js-ease); }
.jsx-set__row:hover { border-color: var(--js-line-2); transform: translateX(3px); }
.jsx-set__row img { width: 56px; height: 56px; object-fit: cover; display: block; }
.jsx-set__row b { display: block; font-size: 15px; line-height: 20px; font-weight: 800; }
.jsx-set__row small { display: block; font-size: 12px; line-height: 18px; font-weight: 500; color: var(--js-muted); }
.jsx-set__row svg { color: var(--js-muted); }
.jsx-spec { margin: 0; border-top: 1px solid var(--js-line); }
.jsx-spec div { display: grid; grid-template-columns: 120px minmax(0,1fr); gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--js-line); font: 13px/20px var(--js-sans); }
.jsx-spec dt { color: var(--js-muted); font-weight: 500; }
.jsx-spec dd { margin: 0; font-weight: 700; }
.jsx-set__bar { grid-column: 1 / -1; position: sticky; bottom: 0; z-index: 2; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 36px; background: var(--js-surface); border-top: 1px solid var(--js-line); }
.jsx-set__price { font-family: var(--js-display); font-size: 30px; line-height: 1.1; }
.jsx-set__buy { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.jsx-qty { display: inline-flex; align-items: center; height: 48px; border: 1.5px solid var(--js-line-2); border-radius: 999px; }
.jsx-qty button { width: 44px; height: 44px; border: 0; border-radius: 999px; background: transparent; color: var(--js-text); font: 700 20px/1 var(--js-sans); cursor: pointer; }
.jsx-qty button:hover { background: var(--js-surface-2); }
.jsx-qty output { min-width: 28px; text-align: center; font: 800 15px/1 var(--js-sans); }

/* kategória: filter podľa chuti */
.jsx-filter { display: flex; flex-wrap: wrap; gap: 16px 32px; align-items: center; padding: 20px 0; margin-bottom: 24px; border-bottom: 1px solid var(--js-line); }
.jsx-filter__group { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.jsx-filter__group .jsx-label { margin-right: 6px; }
.jsx-chip { min-height: 40px; padding: 0 16px; border-radius: 999px; border: 1.5px solid var(--js-line-2); background: transparent; color: var(--js-text); font: 700 13px/1 var(--js-sans); cursor: pointer; transition: border-color .15s ease, background-color .15s ease; }
.jsx-chip:hover { border-color: var(--js-pink-300); }
.jsx-chip[aria-pressed="true"] { background: var(--js-pink); border-color: var(--js-pink); }
.product.jsx-hidden { display: none !important; }

/* detail kávy */
.jsx-detail__kicker { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 12px; }
.jsx-detail__taste { display: flex; flex-direction: column; gap: 14px; margin: 24px 0; padding: 20px 0; border-top: 1px solid var(--js-line); border-bottom: 1px solid var(--js-line); }
.jsx-detail__taste-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px; }
.jsx-detail__taste-head small { color: var(--js-muted); font-size: 13px; }
.jsx-detail__trust { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin-top: 16px; font: 600 13px/18px var(--js-sans); color: var(--js-muted); }
.jsx-detail__trust .jsx-pay__logo svg { height: 28px; }
.jsx-mini-ico { display: inline-grid; place-items: center; color: var(--js-pink-300); }
.jsx-facts { display: grid; grid-template-columns: max-content 1fr; gap: 0; margin: 0; border-top: 1px solid var(--js-line); }
.jsx-facts dt, .jsx-facts dd { margin: 0; padding: 14px 0; border-bottom: 1px solid var(--js-line); font: 15px/22px var(--js-sans); }
.jsx-facts dt { padding-right: 32px; color: var(--js-muted); font-weight: 500; }
.jsx-facts dd { font-weight: 700; }

/* pätička */
.jsx-footer { padding: 64px 0 32px; border-top: 1px solid var(--js-line); color: var(--js-text); }
.jsx-footer .container::before, .jsx-footer .container::after { display: none; }
.jsx-footer__cols { display: grid; grid-template-columns: 2fr 1fr 1fr 1.4fr; gap: 32px; }
.jsx-footer__cols > * { display: flex; flex-direction: column; gap: 10px; font: 600 14px/20px var(--js-sans); }
.jsx-footer__cols a { color: var(--js-text) !important; }
.jsx-footer__cols a:hover { color: var(--js-pink-300) !important; }
.jsx-footer__brand { gap: 20px !important; }
.jsx-footer__brand img { width: 220px; height: 84px; object-fit: cover; align-self: flex-start; }
.jsx-footer__brand .jsx-eyebrow { color: var(--js-pink-500); }
.jsx-footer__badges { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 24px; margin-top: 40px; padding-top: 24px; border-top: 1px solid var(--js-line); }
.jsx-footer__badges > div { display: flex; flex-direction: column; gap: 10px; }
.jsx-footer__badges small { color: var(--js-muted); font-size: 12px; }
.jsx-footer__badges .jsx-pay__logo svg { height: 32px; }
.jsx-badges { display: flex; flex-wrap: wrap; gap: 8px; }
.jsx-badges span { padding: 7px 12px; border: 1px solid var(--js-line-2); border-radius: 999px; font: 700 12px/1 var(--js-sans); color: var(--js-text); }

/* stránka Pre firmy */
.jsx-b2b { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 64px; align-items: start; padding: 48px 0 88px; }
.jsx-b2b__intro { display: flex; flex-direction: column; gap: 28px; }
.jsx-b2b h1 { margin: 0; font-family: var(--js-display) !important; font-weight: 400 !important; text-transform: uppercase; font-size: clamp(40px, 5vw, 64px) !important; line-height: 1.08 !important; }
.jsx-steps { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 20px; }
.jsx-steps li { display: flex; gap: 16px; align-items: flex-start; }
.jsx-steps li > span { flex: none; width: 36px; height: 36px; border-radius: 999px; display: grid; place-items: center; background: var(--js-pink); font-weight: 800; }
.jsx-steps b { display: block; }
.jsx-steps small { display: block; color: var(--js-muted); font-size: 14px; }
.jsx-b2b__card { display: flex; flex-direction: column; align-items: stretch; gap: 16px; padding: 40px; background: var(--js-surface); border: 1px solid var(--js-line); }
.jsx-b2b__person { display: flex; flex-direction: column; gap: 6px; margin-top: 12px; padding-top: 20px; border-top: 1px solid var(--js-line); }
body.jsx-b2b-page #content > :not(.jsx-b2b):not(.jsx-band) { display: none; }

@media (max-width: 960px) {
  .jsx-grid3, .jsx-split, .jsx-b2b { grid-template-columns: minmax(0,1fr); gap: 32px; }
  .jsx-section { padding-top: 64px; }
  .jsx-band { margin-top: 64px; padding-bottom: 64px; }
  .jsx-band > .jsx-section { padding-top: 64px; }
  .jsx-setcard { padding: 0 24px 28px; }
  .jsx-setcard__media { margin: 0 -24px -48px; }
  .jsx-roaster { width: min(62%, 260px); }
  .jsx-roaster-glow { width: min(80%, 340px); }
  .jsx-footer__cols { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .jsx-modal { align-items: end; padding: 0; }
  .jsx-modal__panel { grid-template-columns: minmax(0,1fr); max-height: 92vh; }
  .jsx-qv__media { min-height: 220px; max-height: 280px; overflow: hidden; }
  .jsx-qv__body, .jsx-set__body { padding: 24px 16px; }
  .jsx-qv__title { font-size: 30px !important; }
  .jsx-set__media { min-height: 0; }
  .jsx-set__bar { padding: 14px 16px; }
  .jsx-set__buy { width: 100%; }
  .jsx-set__buy .jsx-btn { flex: 1 1 auto; }
  .jsx-set__price { font-size: 26px; }
  .jsx-b2b__card { padding: 24px; }
}
@media (max-width: 560px) {
  .jsx-footer__cols { grid-template-columns: minmax(0,1fr); }
}

/* úvodná stránka: náš hero namiesto karuselu */
body.jsx-no-carousel .carousel-wrapper { display: none !important; }
#content .jsx-wrap { max-width: none; padding: 0; }

/* detail: blok „Odkiaľ je“ ostáva v stĺpci obsahu (vedľa je bočný panel) */
.jsx-detail__origin.jsx-band { margin: 48px 0 0; padding: 0 40px 40px; }
.jsx-detail__origin.jsx-band > .jsx-section { padding-top: 40px; }
@media (max-width: 760px) { .jsx-detail__origin.jsx-band { padding: 0 16px 32px; } .jsx-detail__origin.jsx-band > .jsx-section { padding-top: 32px; } }


/* písmo Climate Crisis bez umelého zhrubnutia (inak sa písmená prekrývajú) */
body, body * { font-synthesis: none; }
.products .product .name, .products .product .name *, .jsx-qv__title, .jsx-setcard__name, .jsx-adv h3,
h1, h2, h3, .h1, .h2, .h3, .homepage-group-title { font-weight: 400 !important; letter-spacing: 0 !important; }
.products .product .name, .products .product .name * { font-family: var(--js-display) !important; }

/* tlačidlá s e-mailom a telefónom bez verzálok */
.jsx-btn--plain { text-transform: none; letter-spacing: .02em; font-size: 14px; }

/* úvodná stránka: kým sa nenačíta skript, nezobrazujeme pôvodnú šablónu (poistka: po 1,5 s sa ukáže tak či tak) */
body.type-index:not(.jsx-keep-carousel) .carousel-wrapper { display: none !important; }
body.type-index .benefit-banners-full-width { display: none !important; }
body.type-index:not(.jsx-ready) #content-wrapper,
body.type-index:not(.jsx-ready) .footer-newsletter-full-width,
body.type-index:not(.jsx-ready) #footer { opacity: 0; animation: jsx-reveal .01s linear 1.5s forwards; }
body.type-index.jsx-ready #content-wrapper { animation: jsx-fade .25s ease; }
@keyframes jsx-reveal { to { opacity: 1; } }

/* okná Shoptetu (Opýtať sa, Podrobnosti hodnotenia, prihlásenie…) v tmavej farbe */
#colorbox, #cboxWrapper, #cboxContent, #cboxLoadedContent, .colorbox-html-content,
.dialog, .dialog__wrapper, .dialog__content, .ratingDialog, dialog, .content-modal, .new-gen-modal {
  background: var(--js-surface) !important;
  color: var(--js-text) !important;
}
#cboxContent, .dialog__wrapper { border: 1px solid var(--js-line) !important; }
#cboxLoadedContent *, .dialog__content *, .ratingDialog * { color: inherit; }
#cboxLoadedContent label, .dialog__content label, .ratingDialog label,
#cboxLoadedContent .required-asterisk, .dialog__content small { color: var(--js-muted) !important; }
#cboxLoadedContent a, .dialog__content a, .ratingDialog a { color: var(--js-pink-300) !important; }
#cboxLoadedContent h1, #cboxLoadedContent h2, #cboxLoadedContent .h1, #cboxLoadedContent .h2,
.dialog h1, .dialog h2, .dialog__heading, .ratingDialog h2, .ratingDialog .h2 {
  font-size: clamp(22px, 2.4vw, 30px) !important; line-height: 1.15 !important; color: var(--js-text) !important;
}
#cboxClose, .dialog__close { color: var(--js-text) !important; background: transparent !important; }
#cboxOverlay { background: rgba(9,15,16,.8) !important; }
.btn--link, a.btn--link, .js-ratingDialogTrigger {
  background: none !important; border: 0 !important; box-shadow: none !important;
  padding: 0 !important; min-height: 0 !important; transform: none !important;
  color: var(--js-pink-300) !important; text-transform: none !important; letter-spacing: 0 !important; font-weight: 600 !important;
}
.btn--link:hover, .js-ratingDialogTrigger:hover { color: var(--js-text) !important; }


/* ---------- verzia 5 ---------- */
/* výber hmotnosti */
select option, select optgroup { background: var(--js-surface-2) !important; color: var(--js-text) !important; }
.variant-list label, .variant-list .variant-label, .hidden-split-parameter label, .variant-name-wrapper, .variant-name {
  border: 0 !important; background: transparent !important; padding: 0 !important;
  font: 800 12px/16px var(--js-sans) !important; letter-spacing: .14em; text-transform: uppercase; color: var(--js-muted) !important;
}
.variant-list, .hidden-split-parameter { display: flex; flex-direction: column; gap: 10px; margin: 8px 0 16px; }
.variant-list select, .hidden-split-parameter select, .p-variants-block select { min-height: 52px; font-size: 16px !important; font-weight: 700 !important; padding: 0 16px !important; }
.jsx-sizes { display: flex; flex-wrap: wrap; gap: 10px; }
.jsx-size { min-width: 96px; align-items: center; padding: 14px 18px; }
.jsx-size { font: 800 15px/1 var(--js-sans); letter-spacing: .04em; }
select.jsx-select-hidden { position: absolute !important; width: 1px !important; height: 1px !important; min-height: 0 !important; opacity: 0; pointer-events: none; overflow: hidden; clip: rect(0 0 0 0); }
.detail-parameter-availability .availability-label { color: var(--js-ok) !important; }

/* bočný panel: bez zbytočných rámčekov */
.sidebar, .sidebar-inner, .sidebar .box, .sidebar .box-bg-default, .sidebar .box-bg-variant, .sidebar .box-sm {
  background: transparent !important; border: 0 !important; box-shadow: none !important; border-radius: 0 !important;
}
.sidebar-inner { margin-inline: 0 !important; padding: 0 !important; }
.sidebar .box { padding: 24px 0 0 !important; margin-top: 24px !important; border-top: 1px solid var(--js-line) !important; }
.sidebar .box:first-child { padding-top: 0 !important; margin-top: 0 !important; border-top: 0 !important; }
.sidebar .categories li a, .sidebar .box-categories a { border-radius: 999px !important; }
.sidebar .categories li.active > a, .sidebar .box-categories .active > a { background: rgba(193,28,113,.14) !important; }
.sidebar ol.top-products.unified li.display-image, .sidebar .top-products li { background: transparent !important; }
.sidebar .slider-wrapper, .sidebar .filter-section, .sidebar .param-filter-top, .sidebar .filters-unveil-button-wrapper, .sidebar .filter-total-wrapper {
  background: transparent !important; border: 0 !important;
}
.sidebar .unveil-button, .sidebar .filters-unveil-button-wrapper a, .sidebar .filters-unveil-button-wrapper button {
  background: transparent !important; border: 1.5px solid var(--js-line-2) !important; border-radius: 999px !important; color: var(--js-text) !important;
  font: 800 12px/1 var(--js-sans) !important; letter-spacing: .1em; padding: 12px 16px !important;
}

/* kategória: karty s veľkou fotkou */
.products .product .p .image { display: block !important; width: 100% !important; max-width: none !important; aspect-ratio: 4 / 3; overflow: hidden; }
.products .product .p .image img { width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; object-fit: cover; background: transparent !important; }
.products-page .product .name, .products-page .product .name span,
#products .product .name, #products .product .name span { font-size: 18px !important; line-height: 1.18 !important; }
.products .product .p-in { display: flex; flex-direction: column; gap: 6px; }
.products .product .prices .price-final, .products .product .price-final strong { font-family: var(--js-sans) !important; }

/* náhľad sady: cena v Montserrate, obrázok bez prázdneho miesta */
.jsx-set__price { font-family: var(--js-sans) !important; font-weight: 800 !important; letter-spacing: 0; }
.jsx-set__media { align-self: start; min-height: 0 !important; }
.jsx-set__media img { aspect-ratio: 1200 / 901; object-fit: cover; }
.jsx-qv__media img { object-position: center top; }

/* košík a objednávka: jednotné plochy a farby */
#checkoutSidebar .cart-content, .checkout-box, .checkout-box-wrapper, .ordering-process .co-box, .summary-wrapper, .sidebar-in-cart .cart-content {
  background: var(--js-surface) !important; border: 1px solid var(--js-line) !important; border-radius: 0 !important;
}
.summary-wrapper .box, .checkout-box-wrapper .box, .sidebar-in-cart .box, #checkoutSidebar .box,
.order-summary-inner, .order-summary-inner table, .order-summary-inner tr, .order-summary-inner td, .order-summary-inner th,
#checkoutSidebar table, #checkoutSidebar tr, #checkoutSidebar td, #checkoutSidebar th, #checkoutSidebar tbody,
.cart-summary, .extras-wrapper, .extras-col, .extras-wrap {
  background: transparent !important; border-color: var(--js-line) !important;
}
.summary-wrapper .box, .checkout-box-wrapper .box, .sidebar-in-cart .box { border: 0 !important; padding: 0 !important; }
.cart-summary h2, .checkout-box-wrapper h2, .order-summary-inner h2, .summary-wrapper h2 { color: var(--js-text) !important; }
.cart-table .p-name .main-link-variant, .cart-table .main-link-variant, #checkoutSidebar .main-link-variant,
.price-wrapper .price-secondary, .recapitulation-shipping-billing-info--withVat { color: var(--js-muted) !important; }
#checkoutSidebar a:not(.btn), .order-summary-inner a:not(.btn) { color: var(--js-text) !important; }
#checkoutSidebar a:not(.btn):hover { color: var(--js-pink-300) !important; }
ol.cart-header li a, ol.cart-header li strong { color: var(--js-muted) !important; }
ol.cart-header li.active a, ol.cart-header li.active strong { color: var(--js-text) !important; }
ol.cart-header li.completed a, ol.cart-header li.completed strong { color: var(--js-pink-300) !important; }
ol.cart-header li a::before, ol.cart-header li strong::before { background: transparent !important; border-color: var(--js-line-2) !important; color: var(--js-muted) !important; border-radius: 999px !important; }
ol.cart-header li.active strong::before, ol.cart-header li.active a::before { background: var(--js-pink) !important; border-color: var(--js-pink) !important; color: var(--js-text) !important; }
ol.cart-header li.completed a::before, ol.cart-header li.completed strong::before { background: transparent !important; border-color: var(--js-pink-300) !important; color: var(--js-pink-300) !important; }
.ordering-process .co-box h2, .ordering-process .co-box h3 { font-size: clamp(20px, 2vw, 26px) !important; }
@media (max-width: 760px) {
  .jsx-qv__media { height: 300px; }
  .jsx-qv__media img { object-fit: contain; object-position: center; }
}

/* ---------- verzia 6 ---------- */
/* hlavička na počítači: logo vľavo, ikony vpravo, menu kategórií pod nimi ako predtým */
@media (min-width: 992px) {
  #header .header-top .header-top-wrapper { justify-content: space-between !important; }
  #header .header-top .header-top-wrapper .site-name { order: -1; width: auto !important; max-width: none !important; margin: 0 auto 0 0 !important; text-align: left !important; border: 0 !important; }
}
/* mobilné menu: plná tmavá plocha */
@media (max-width: 991px) {
  #navigation, #navigation .navigation-in, .navigation-window-visible #navigation { background: var(--js-ink) !important; }
  #navigation .navigation-in > ul > li > a { background: transparent !important; }
  #navigation .menu-level-2 { background: var(--js-surface) !important; }
}

/* rýchly náhľad na mobile: malá ikona v rohu, nezakrýva fotku */
.jsx-qv-hint { display: inline-flex; align-items: center; gap: 8px; }
@media (hover: none), (max-width: 760px) {
  .jsx-qv-hint { left: auto; right: 8px; bottom: 8px; transform: none; opacity: 1; width: 36px; height: 36px; padding: 0; justify-content: center; border-radius: 999px; background: rgba(241,220,231,.92); }
  .jsx-qv-hint span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .products .product .p:hover .jsx-qv-hint { transform: none; }
}

/* detail kávy podľa vizuálu: bez bočného panelu, veľký názov, prepínač praženia, tri dôvery */
body.type-detail .sidebar { display: none !important; }
body.type-detail .content-wrapper-in > .content, body.type-detail #content { width: 100% !important; max-width: none !important; }
body.jsx-coffee-detail .stars-wrapper, body.jsx-coffee-detail .detail-parameter-product-code,
body.jsx-coffee-detail .benefit-banners-full-width { display: none !important; }
body.jsx-coffee-detail .p-detail-inner-header h1, body.jsx-coffee-detail .p-detail-inner-header-mobile .h1 { font-size: clamp(34px, 4.4vw, 64px) !important; line-height: 1.08 !important; margin: 4px 0 0 !important; }
.jsx-detail__kicker { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; margin-bottom: 14px; }
.jsx-roastb--outline { background: transparent !important; border: 1.5px solid var(--js-line-2); color: var(--js-pink-300) !important; }
.jsx-roastb--outline.jsx-roastb--filter { color: var(--js-blue-300) !important; }
.jsx-detail__after { display: flex; flex-direction: column; gap: 8px; margin: 14px 0 6px; }
.jsx-notes--lg { font-size: 14px; line-height: 20px; }
.jsx-detail__origin-line { font: 500 16px/24px var(--js-sans); color: var(--js-muted); }
body.jsx-coffee-detail .p-short-description { color: var(--js-muted); font-size: 15px; }
.jsx-detail__roast { display: flex; flex-direction: column; gap: 10px; margin: 20px 0 6px; }
.jsx-seg { display: inline-flex; align-self: flex-start; gap: 4px; padding: 4px; border: 1.5px solid var(--js-line-2); border-radius: 999px; }
.jsx-seg__item { display: inline-flex; align-items: center; min-height: 40px; padding: 0 20px; border-radius: 999px; font: 800 12px/1 var(--js-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--js-text) !important; text-decoration: none !important; }
a.jsx-seg__item:hover { background: var(--js-surface-2); }
.jsx-seg__item.is-on { background: var(--js-pink); }
.jsx-seg__item.is-on.is-filter { background: var(--js-blue); }
.jsx-seg__item.is-off { color: var(--js-muted) !important; text-decoration: line-through !important; }
.jsx-detail__trust { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); align-items: stretch; gap: 12px; margin-top: 20px; }
.jsx-detail__trust > div { height: auto !important; margin: 0 !important; align-self: stretch; }
.jsx-detail__trust > div { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px; background: var(--js-surface); border: 1px solid var(--js-line); }
.jsx-detail__trust b { font: 700 14px/18px var(--js-sans); color: var(--js-text); }
.jsx-detail__trust small { font: 500 12px/17px var(--js-sans); color: var(--js-muted); }
.jsx-detail__trust .jsx-pay { gap: 10px; margin-top: 4px; }
.jsx-detail__trust .jsx-pay__logo svg { height: 22px; }
.jsx-stamp { position: absolute; top: -18px; right: -18px; z-index: 3; width: 104px; height: 104px; display: grid; place-items: center; transition: transform .4s var(--js-ease); pointer-events: none; }
.jsx-stamp svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.jsx-stamp span { position: relative; font: 800 14px/1 var(--js-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--js-ink); transform: rotate(-14deg); }
.p-image { position: relative; overflow: visible !important; }
.p-image:hover .jsx-stamp { transform: rotate(24deg); }
.jsx-detail__origin .jsx-story { align-items: stretch; }
.jsx-detail__origin .jsx-meter { gap: 12px 20px; }
.jsx-detail__origin .jsx-meter__row { gap: 6px; }
@media (max-width: 760px) {
  .jsx-detail__trust { grid-template-columns: minmax(0,1fr); }
  .jsx-stamp { width: 76px; height: 76px; top: -8px; right: -4px; }
  .jsx-stamp span { font-size: 11px; }
  .jsx-detail__origin .jsx-meter svg { width: 26px; height: 26px; }
}


/* ---------- verzia 7 ---------- */
/* názov kávy na mobile sa nezarezáva */
@media (max-width: 767px) {
  .products .product .name, .products .product .name span { font-size: clamp(11px, 3.2vw, 15px) !important; line-height: 1.22 !important; overflow: visible !important; text-overflow: clip !important; }
  .products .product .p-in, .products .product .p-in-in { overflow: visible !important; }
  body.jsx-coffee-detail .p-detail-inner-header-mobile { padding-top: 20px; }
  .jsx-detail__kicker { justify-content: center; }
}
/* Najpredávanejšie v kategórii: malé ostré fotky, žiadne naťahovanie */
.products-top .product .p .image, .category-top .product .p .image, .top-products .product .p .image {
  aspect-ratio: auto !important; height: 180px; display: flex !important; align-items: center; justify-content: center;
}
.products-top .product .p .image img, .category-top .product .p .image img, .top-products .product .p .image img {
  width: auto !important; height: auto !important; max-width: 100% !important; max-height: 180px !important; object-fit: contain;
}
/* fotky káv v náhľade sady */
.jsx-set__row img { object-fit: cover; object-position: center 20%; }
.jsx-qv__media img { object-fit: contain; background: var(--js-ink); }

/* verzia 8: fotky produktov v náhľade sady */
.jsx-set__row img { object-fit: cover; object-position: center 45%; }
.jsx-modal .jsx-qv__media img { object-fit: cover; object-position: center; }
@media (max-width: 760px) { .jsx-modal .jsx-qv__media { height: 320px; } .jsx-modal .jsx-qv__media img { object-fit: cover; } }

/* ---------- verzia 9 ---------- */
/* hlavička na počítači: logo, menu a ikony v jednom riadku */
@media (min-width: 992px) {
  #header { position: relative; }
  #header .header-top { min-height: 104px; }
  #header .header-top .header-top-wrapper { min-height: 104px; }
  #header .header-bottom { position: absolute !important; top: 0; left: 0; right: 0; height: 104px; border: 0 !important; background: transparent !important; pointer-events: none; z-index: 5; }
  #header .header-bottom .header-bottom-wrapper { height: 100%; max-width: 1320px; margin: 0 auto; display: flex !important; align-items: center; justify-content: center; background: transparent !important; }
  #header .header-bottom #navigation { position: relative !important; width: auto !important; height: auto !important; overflow: visible !important; pointer-events: auto; background: transparent !important; }
  #header .header-bottom .navigation-in { position: static !important; width: auto !important; height: auto !important; background: transparent !important; }
  #header .header-bottom .navigation-in > ul.menu-level-1 { display: flex !important; flex-wrap: nowrap !important; justify-content: center; }
  #header .header-bottom .navigation-in > ul.navigationActions { display: none !important; }
  #header .header-bottom .navigation-in > ul > li > a { padding: 0 18px !important; line-height: 104px !important; height: 104px; }
  #header .navigation-in ul li.splitted { visibility: visible !important; }
  #header .menu-helper, #header .navigationActions, #header .navigation-close { display: none !important; }
  #header .navigation-in ul.menu-level-2 { top: 100% !important; }
}

/* Najpredávanejšie: malé kartičky vedľa seba v jednom riadku */
.products-top, .products-inline.products-top { display: grid !important; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; }
.products-top > div, .products-inline.products-top > div { width: auto !important; padding: 0 !important; margin: 0 !important; }
.products-top > div.inactive { display: none !important; }
.products-top .product .p, .products-inline.products-top > div .p {
  display: grid !important; grid-template-columns: 64px minmax(0,1fr); align-items: center; gap: 12px;
  height: auto !important; padding: 10px !important; background: var(--js-surface) !important; border: 1px solid var(--js-line) !important;
}
.products-top .product .p:hover { transform: translateY(-3px); }
.products-top .product .p .image, .products-inline.products-top > div .p .image {
  width: 64px !important; height: 64px !important; min-height: 0 !important; aspect-ratio: 1 !important; display: block !important; overflow: hidden;
}
.products-top .product .p .image img, .products-inline.products-top > div .p .image img { width: 64px !important; height: 64px !important; max-height: none !important; object-fit: cover !important; }
.products-top .product .p-in, .products-inline.products-top > div .p .p-in { width: auto !important; padding: 0 !important; gap: 2px; }
.products-top .product .name, .products-top .product .name span { font-size: 13px !important; line-height: 1.2 !important; }
.products-top .jsx-card__extra, .products-top .jsx-roastb, .products-top .jsx-qv-hint, .products-top .flags,
.products-top .p-desc, .products-top .p-tools, .products-top .ratings-wrapper { display: none !important; }
.products-top .availability, .products-top .availability span { font-size: 12px !important; }
.products-top .price-final, .products-top .price-final strong { font-size: 14px !important; }
@media (max-width: 960px) { .products-top, .products-inline.products-top { grid-template-columns: repeat(2, minmax(0,1fr)); } }

/* rozbalený filter v bočnom paneli: farba pozadia stránky */
#filters, .filters-wrapper, .filter-sections, .filter-section, .filter-section-parametric, .advanced-filters-wrapper,
.param-filter-top, .box-filters, .sidebar .filters, #category-filter-hover {
  background: var(--js-ink) !important; border-color: var(--js-line) !important; box-shadow: none !important;
}
.filter-section { border-top: 1px solid var(--js-line) !important; padding-top: 16px !important; }
.filter-count, .filter-section-count { background: var(--js-surface-2) !important; color: var(--js-muted) !important; border-radius: 999px; }
.filter-section input[type="checkbox"] { accent-color: var(--js-pink); }
#clear-filters a, #clear-filters { color: var(--js-pink-300) !important; background: transparent !important; }

/* radenie: Najlacnejšie / Najdrahšie / Najpredávanejšie / Abecedne */
.listSorting, .listSorting__controls, .category-header {
  background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 !important;
}
.listSorting__controls { display: flex !important; flex-wrap: wrap; gap: 8px; margin: 8px 0 4px; }
.listSorting__control {
  min-height: 40px; padding: 0 18px !important; border-radius: 999px !important;
  border: 1.5px solid var(--js-line-2) !important; background: transparent !important; color: var(--js-text) !important;
  font: 700 13px/1 var(--js-sans) !important; letter-spacing: .02em; box-shadow: none !important; transition: border-color .15s ease, background-color .15s ease;
}
.listSorting__control:hover { border-color: var(--js-pink-300) !important; }
.listSorting__control--current, .listSorting__control--current:hover { background: var(--js-pink) !important; border-color: var(--js-pink) !important; color: var(--js-text) !important; }

/* ---------- verzia 10 ---------- */
/* rýchly náhľad na karte: tmavé tlačidlo so svetlým textom */
.jsx-qv-hint, .products .product .p .jsx-qv-hint {
  background: rgba(9,15,16,.88) !important; color: var(--js-text) !important;
  border: 1.5px solid var(--js-pink-300) !important; box-shadow: 0 6px 20px rgba(0,0,0,.4);
}
.jsx-qv-hint:hover { background: var(--js-pink) !important; border-color: var(--js-pink) !important; }
.jsx-qv-hint svg { color: var(--js-pink-300); }
.jsx-qv-hint:hover svg { color: var(--js-text); }
@media (hover: none), (max-width: 760px) {
  .jsx-qv-hint, .products .product .p .jsx-qv-hint { background: rgba(9,15,16,.88) !important; }
}

/* menu: pri prejdení myšou na Káva nič nezmizne, podmenu sa otvorí pod položkou */
@media (min-width: 992px) {
  #header .navigation-in ul li.splitted,
  .submenu-visible #header .navigation-in ul li.splitted { display: block !important; visibility: visible !important; }
  .submenu-visible #header .navigation-in > ul.menu-level-1 { display: flex !important; }
  #header .navigation-in > ul > li { position: relative; }
  #header .navigation-in ul.menu-level-2 {
    left: 50% !important; transform: translateX(-50%); width: 280px !important; top: 100% !important; margin-top: -16px;
    padding: 8px !important; background: var(--js-surface) !important; border: 1px solid var(--js-line) !important;
    box-shadow: 0 20px 50px rgba(0,0,0,.5) !important; flex-direction: column; flex-wrap: nowrap !important;
  }
  #header .navigation-in ul.menu-level-2 > li { width: 100% !important; display: flex !important; align-items: center; gap: 10px; padding: 4px 8px; }
  #header .navigation-in ul.menu-level-2 > li > a.menu-image { width: 40px !important; flex: 0 0 40px; }
  #header .navigation-in ul.menu-level-2 > li > div { width: auto !important; }
  #header .navigation-in ul.menu-level-2 a { line-height: 1.3 !important; height: auto !important; }
}

/* kategória: tlačidlo Zobraziť viac produktov nižšie od kartičiek */
.toggle-top-products, .products-top-wrapper .btn, .products-top + .btn, .products-top ~ div .btn, .load-more-wrapper, .loadMore {
  margin-top: 28px !important;
}
.products-top-wrapper { padding-bottom: 8px; }

/* skryté kategórie (Restt) */
.sidebar li:has(> a[href*="/kava-restt/"]), #categories li:has(a[href*="/kava-restt/"]) { display: none !important; }
@media (min-width: 992px) {
  #header .navigation-in ul.menu-level-2 > li > a.menu-image { height: 40px !important; overflow: hidden; display: flex !important; align-items: center; justify-content: center; }
  #header .navigation-in ul.menu-level-2 > li > a.menu-image img { width: 36px !important; height: 36px !important; max-width: 36px !important; object-fit: contain; }
  #header .navigation-in ul.menu-level-2 > li > div a { font-size: 15px !important; font-weight: 600 !important; padding: 8px 0 !important; }
}
.jsx-qv-hint { white-space: nowrap; }

/* ---------- verzia 11: pohyb (GSAP, Lenis) ---------- */
html.jsx-lenis { scroll-behavior: auto !important; }
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
.lenis.lenis-stopped { overflow: hidden; }
.jsx-motion .jsx-modal, .jsx-motion .jsx-modal__panel, .jsx-no-anim, .jsx-no-anim .jsx-modal__panel { animation: none !important; }
.jsx-motion .jsx-fox { animation: none; }
.jsx-modal__panel { overscroll-behavior: contain; }

/* priebeh skrolovania */
.jsx-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 10001; pointer-events: none; background: linear-gradient(90deg, var(--js-pink-500), var(--js-blue)); }

/* bežiaci pás */
.jsx-mq { position: relative; overflow: hidden; padding: 28px 0; margin: 0; border-bottom: 1px solid var(--js-line); background: var(--js-ink); }
.jsx-mq__row { overflow: hidden; white-space: nowrap; }
.jsx-mq__row + .jsx-mq__row { margin-top: 6px; }
.jsx-mq__track { display: inline-flex; align-items: center; gap: 28px; padding-right: 28px; will-change: transform; }
.jsx-mq__track span { font-family: var(--js-display); text-transform: uppercase; font-size: clamp(30px, 4.4vw, 64px); line-height: 1.15; letter-spacing: 0; }
.jsx-mq__row--pink span { color: var(--js-pink-500); }
.jsx-mq__row--outline span { color: transparent; -webkit-text-stroke: 1.5px var(--js-blue-300); }
.jsx-mq__star { width: clamp(22px, 2.6vw, 36px); height: clamp(22px, 2.6vw, 36px); flex: none; color: var(--js-blush); }
.jsx-mq__row--outline .jsx-mq__star { color: var(--js-blue-300); }

/* 3D naklonenie a svetlo pod kurzorom */
.jsx-tilt { transform-style: preserve-3d; transition: box-shadow .3s ease, border-color .3s ease !important; will-change: transform; }
.jsx-tilt:hover { transform: none; }
.jsx-tilt::after { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none; opacity: 0; transition: opacity .3s ease;
  background: radial-gradient(420px circle at var(--mx, 50%) var(--my, 50%), rgba(255,255,255,.14), transparent 45%); }
.jsx-tilt:hover::after { opacity: 1; }
.jsx-spot { position: relative; }
.jsx-spot::before { content: ""; position: absolute; inset: 0; z-index: 3; pointer-events: none; opacity: 0; transition: opacity .3s ease;
  background: radial-gradient(260px circle at var(--mx, 50%) var(--my, 50%), rgba(229,25,127,.16), transparent 60%); }
.jsx-spot:hover::before { opacity: 1; }
.jsx-mag { will-change: transform; }
.jsx-motion .jsx-btn:hover { transform: none; }

/* iskry a let do košíka */
.jsx-spark { position: fixed; z-index: 10002; width: 10px; height: 3px; margin: -1.5px 0 0 -5px; border-radius: 3px; pointer-events: none; }
.jsx-fly { position: fixed; z-index: 10002; margin: 0; object-fit: cover; pointer-events: none; box-shadow: 0 10px 40px rgba(229,25,127,.5); border-radius: 6px; }

/* nadpisy rozdelené na slová nesmú orezať mäkčene */
.jsx-hero h1 .char, .jsx-h2 > div, .homepage-group-title > div { will-change: transform; }

@media (prefers-reduced-motion: reduce) {
  .jsx-mq, .jsx-progress { display: none !important; }
}

/* ---------- verzia 12 ---------- */
/* tlačidlá sa pri prejdení myšou nehýbu, mení sa len farba */
.btn:hover, .btn:focus, a.btn:hover, button.btn:hover, .jsx-btn:hover, .jsx-motion .jsx-btn:hover { transform: none !important; }

/* hero: jedno väčšie tlačidlo */
.jsx-hero__actions .jsx-btn--primary { min-height: 64px !important; padding: 0 44px !important; font-size: 16px !important; gap: 12px; }

/* skrytá kategória Restt všade (menu na mobile aj na počítači, bočný panel) */
li:has(> a[href*="/kava-restt/"]), li:has(> .topic > a[href*="/kava-restt/"]) { display: none !important; }

/* úspora pri väčšom balení */
.jsx-size { flex-direction: column; gap: 6px; }
.jsx-size small { font: 800 11px/1 var(--js-sans); letter-spacing: .06em; text-transform: uppercase; color: var(--js-ok); }
.jsx-size[aria-pressed="true"] small { color: var(--js-ok); }
.jsx-hero h1 { font-size: clamp(40px, 5.4vw, 80px) !important; overflow-wrap: normal !important; word-break: normal !important; hyphens: none !important; }
.jsx-hero h1 > div { white-space: nowrap; }
.jsx-size b { font: 800 16px/1.1 var(--js-sans) !important; letter-spacing: .02em; }
.jsx-size small { font-size: 11px !important; }
@media (max-width: 560px) { .jsx-hero h1 { font-size: clamp(34px, 10vw, 48px) !important; } }

/* =========================================================
   v13 — tlačidlá bez poskakovania, jednotné tlačidlá kariet, kontakt Pre firmy
   ========================================================= */
.btn, a.btn, button.btn, .jsx-btn {
  transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease !important;
  translate: none !important;
}
.btn:hover, .btn:focus, .btn:active, .jsx-btn:hover, .jsx-btn:focus, .jsx-btn:active,
.jsx-hero__actions .jsx-btn, .jsx-b2bband .jsx-btn { transform: none !important; }

/* tlačidlo karty (sety) = rovnaké ako tlačidlo pri kávach */
.jsx-btn--card {
  min-height: 44px !important; height: 44px; padding: 0 20px !important;
  font: 800 13px/16px var(--js-sans) !important; letter-spacing: .1em;
  border: 0 !important; outline: 0; gap: 8px; cursor: pointer;
  -webkit-appearance: none; appearance: none;
}
.jsx-btn--card:focus-visible { box-shadow: 0 0 0 3px var(--js-pink-300) !important; }
button.jsx-btn { border: 0; cursor: pointer; -webkit-appearance: none; appearance: none; }
.jsx-btn--ghost.jsx-btn--card { border: 1.5px solid var(--js-line-2) !important; background: transparent; }

/* Pre firmy — okno s kontaktom */
.jsx-contact-panel { max-width: 560px !important; }
.jsx-contact__title { margin: 4px 0 10px !important; }
.jsx-contact { display: grid; gap: 12px; margin-top: 22px; }
.jsx-contact__item {
  display: flex; flex-direction: column; gap: 4px; padding: 18px 20px;
  border: 1px solid var(--js-line-2); border-radius: 18px; background: rgba(255,255,255,.03);
  color: var(--js-text) !important; text-decoration: none !important;
  transition: border-color .2s ease, background-color .2s ease;
}
a.jsx-contact__item:hover { border-color: var(--js-pink-500); background: rgba(229,25,127,.08); }
.jsx-contact__k { font: 800 11px/1 var(--js-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--js-pink-300); }
.jsx-contact__item b { font: 800 19px/1.25 var(--js-sans); word-break: break-word; }
.jsx-contact__item small { color: var(--js-muted); font-size: 13px; }
.jsx-contact__acts { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px; }
.jsx-modal__panel.jsx-contact-panel { display: block !important; width: min(560px, 100%) !important; padding: 40px 40px 36px; }
.jsx-contact-panel .jsx-contact__title { font-size: clamp(30px, 4vw, 40px) !important; padding-right: 56px; }
.jsx-contact-panel .jsx-eyebrow { margin: 0; }
@media (max-width: 767px) { .jsx-modal__panel.jsx-contact-panel { padding: 28px 20px 24px; } }

/* v13.1 — kontakt: na mobile vyššie a kompaktnejšie, na počítači Gmail/Outlook */
.jsx-contact__hint { margin-top: 8px; }
.jsx-contact__acts .jsx-btn--card { flex: 0 0 auto; }
@media (max-width: 767px) {
  .jsx-modal:has(.jsx-contact-panel) { align-items: start; padding: 12px; overflow: auto; }
  .jsx-modal__panel.jsx-contact-panel {
    margin-top: max(12px, env(safe-area-inset-top)); max-height: none !important; overflow: visible;
    border-radius: 0; padding: 22px 18px 20px;
  }
  .jsx-contact-panel .jsx-contact__title { font-size: 30px !important; margin: 2px 0 6px !important; }
  .jsx-contact-panel > .jsx-muted { font-size: 14px; line-height: 1.45; margin: 0; }
  .jsx-contact { gap: 8px; margin-top: 14px; }
  .jsx-contact__item { padding: 13px 16px; border-radius: 14px; }
  .jsx-contact__item b { font-size: 17px; }
  .jsx-contact__acts { gap: 8px; margin-top: 8px; }
  .jsx-contact__acts .jsx-btn--card { min-height: 40px !important; height: 40px; padding: 0 14px !important; font-size: 11.5px !important; }
  .jsx-modal__panel.jsx-contact-panel .jsx-modal__close { top: 14px; right: 14px; }
}
@media (min-width: 768px) {
  .jsx-modal__panel.jsx-contact-panel { width: min(620px, 100%) !important; }
  .jsx-contact__acts { gap: 8px; flex-wrap: nowrap; }
  .jsx-contact__acts .jsx-btn--card { padding: 0 18px !important; }
}

/* =========================================================
   v16 — detail: košík bližšie k cene, doprava, Packeta
   ========================================================= */
body.jsx-coffee-detail .p-variants-block { margin-bottom: 18px !important; }
body.jsx-coffee-detail .p-variants-block .variant-list { margin-bottom: 0 !important; }
body.jsx-coffee-detail .p-price-wrapper, body.jsx-coffee-detail .p-final-price-wrapper { margin-bottom: 4px !important; }
body.jsx-coffee-detail .p-price-wrapper .price-final { padding-top: 0 !important; padding-bottom: 0 !important; }
body.jsx-coffee-detail #product-detail-form .detail-parameters { margin: 0 0 14px !important; }
body.jsx-coffee-detail #product-detail-form .detail-parameters .detail-parameter { margin: 0 !important; padding: 0 !important; }
body.jsx-coffee-detail .p-to-cart-block { margin-top: 0 !important; margin-bottom: 0 !important; }

.jsx-detail__trust { grid-template-columns: repeat(2, minmax(0,1fr)) !important; margin-top: 18px; }
.jsx-detail__trust .jsx-trust-free { border-color: rgba(52, 211, 153, .45); }
.jsx-detail__trust .jsx-trust-free b { color: var(--js-ok); }
.jsx-packeta { display: block; width: auto; height: 22px; margin-top: 6px; align-self: flex-start; flex: 0 0 auto; }
.jsx-footer__badges .jsx-packeta { height: 26px; margin: 0; }
@media (max-width: 767px) {
  .jsx-detail__trust { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 8px; }
  .jsx-detail__trust > div { padding: 12px; }
  .jsx-detail__trust b { font-size: 13px; line-height: 17px; }
  .jsx-packeta { height: 18px; }
}
@media (max-width: 359px) { .jsx-detail__trust { grid-template-columns: minmax(0,1fr) !important; } }

/* =========================================================
   v17 — logá vo farbách značiek, dôvery ako riadky, hmotnosti vedľa seba, hodnotenie
   ========================================================= */
.jsx-pay { gap: 8px !important; }
.jsx-pay__logo--color { opacity: 1 !important; border-radius: 4px; overflow: hidden; }
.jsx-pay__logo--color svg { height: 26px !important; width: auto; display: block; }
.jsx-footer__badges .jsx-pay__logo--color svg { height: 30px !important; }
.jsx-packeta-badge { display: inline-flex; align-items: center; flex: 0 0 auto; padding: 5px 9px; border-radius: 6px; background: #ba1b02; }
.jsx-packeta-badge .jsx-packeta { height: 18px !important; width: auto; margin: 0 !important; display: block; }
.jsx-footer__badges .jsx-packeta-badge { align-self: flex-start; padding: 6px 10px; }
.jsx-footer__badges .jsx-packeta-badge .jsx-packeta { height: 22px !important; }

/* dôvery pod košíkom: tenké riadky pod sebou */
.jsx-detail__trust { display: flex !important; flex-direction: column; gap: 6px !important; margin-top: 16px !important; }
.jsx-detail__trust > div {
  flex-direction: row !important; align-items: center; justify-content: space-between; flex-wrap: wrap;
  gap: 8px 14px !important; padding: 10px 14px !important; min-height: 0;
}
.jsx-trow__t { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.jsx-detail__trust b { font: 700 14px/19px var(--js-sans) !important; }
.jsx-detail__trust small { font: 500 12px/16px var(--js-sans) !important; }
.jsx-detail__trust .jsx-pay { margin: 0 !important; }
.jsx-detail__trust .jsx-pay__logo--color svg { height: 22px !important; }
.jsx-detail__trust .jsx-trust-free { background: rgba(61,220,151,.08); border-color: rgba(61,220,151,.4); }

/* hodnotenie pod názvom */
body.jsx-coffee-detail .p-detail-inner-header .stars-wrapper,
body.jsx-coffee-detail .p-detail-inner-header-mobile .stars-wrapper {
  display: flex !important; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 12px 0 0 !important;
  font: 600 13px/18px var(--js-sans); color: var(--js-muted) !important;
}
body.jsx-coffee-detail .stars-wrapper .stars { display: inline-flex; gap: 2px; }
body.jsx-coffee-detail .stars-wrapper .star { font-size: 16px; color: var(--js-pink-300) !important; }
body.jsx-coffee-detail .stars-wrapper .star-off { color: var(--js-line-2) !important; }
body.jsx-coffee-detail .stars-wrapper .stars-label { color: var(--js-muted) !important; }
body.jsx-coffee-detail .stars-wrapper .btn--link {
  padding: 0 !important; min-height: 0 !important; height: auto !important; border: 0 !important; background: none !important;
  font: 600 13px/18px var(--js-sans) !important; letter-spacing: 0 !important; text-transform: none !important;
  color: var(--js-pink-300) !important; text-decoration: underline !important; text-underline-offset: 3px;
}

@media (max-width: 767px) {
  /* hmotnosti vedľa seba */
  .jsx-sizes { display: grid !important; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 8px !important; width: 100%; }
  .jsx-sizes .jsx-size { width: auto !important; min-width: 0 !important; padding: 12px 4px !important; }
  .jsx-sizes .jsx-size b { font-size: 15px !important; }
  .jsx-sizes .jsx-size small { font-size: 10px !important; letter-spacing: .02em !important; white-space: nowrap; }
  .jsx-detail__trust > div { padding: 10px 12px !important; }
  .jsx-detail__trust b { font-size: 13px !important; line-height: 18px !important; }
}
body.jsx-coffee-detail .stars-wrapper .star::before { content: "\2605" !important; font-family: Arial, "Segoe UI Symbol", sans-serif !important; font-size: 17px; line-height: 1; }
body.jsx-coffee-detail .stars-wrapper .star { width: auto !important; height: auto !important; display: inline-block !important; }
body.jsx-coffee-detail .stars-wrapper .star-half { color: var(--js-pink-300) !important; opacity: .55; }
