/*! Mitochondriak® – zlúčené CSS e-shopu EN (repo Mitochondriak-Eshopy-CSS-JS, priečinok css/).
 * NEUPRAVUJTE tento súbor – vzniká automaticky. Upravte zdrojový súbor v css/ na GitHube, web sa aktualizuje sám.
 * Obsah (poradie = poradie v súbore):
 *   01-tlacidla-pulz.css                       Pulzujúce tlačidlá .buttonPULSEred / .buttonPULSEblack / .buttonPULSEwhite (+ .button-icon).
 *   02-podkategorie-v-kategorii.css            Bloky podkategórií vložené do inej kategórie (.JL_subcategory_banner…).
 *   03-banner-pomocnik-v-kategorii.css         Vzhľad banneru „Pomocník s výberom“ v kategórii (.product-category-page_product-banner…). HTML banneru je v JS súbore JL_banner-v-kategorie_product-guide-<JAZYK>.js.
 *   04-kontajnery-produktu.css                 Dvojstĺpcové kontajnery v popise produktu (.container_product_page, sivá verzia _grey, tlačidlá, slider obrázkov).
 *   05-popup.css                               Vlastný PopUp (.popup-overlay_JL…), napr. tabuľka veľkostí topánok.
 *   06-vlastnosti-slider.css                   Slider vlastností pre dotykové obrazovky (.vlastnosti-slider-wrapper…).
 *   07-tabulka-porovnania-generacii.css        Responzívna tabuľka porovnania generácií produktov so šípkami (#tabulka-porovnanie-generacie-root).
 *   08-responzivne-kontajnery-a-bannery.css    Najväčší súbor: globálne rozmery, responzívne kontajnery, bannery kategórií a pomocníka, tlačidlá .buttonblack/.buttonCATEGORYblack, breadcrumb.
 *   09-nadhlavicka-slider.css                  Lišta správ nad hlavičkou so šípkami a krížikom (.site-msg, .slider-nav).
 *   10-hero-stvorica-mobil.css                 Mobilný/tabletový pás 4 dlaždíc (.jl-hero-quad), na počítači skrytý.
 *   11-express-checkout.css                    Expresné platobné tlačidlá vedľa „Do košíka“ (počítač vedľa seba, mobil pod sebou).
 *   12-bannery-konkurencne-vyhody.css          Pás konkurenčných výhod pod hlavným karuselom (.benefitBanner, slider na mobile).
 *   13-certifikaty-widget.css                  Widget certifikátov (#jl-certificates-widget, .jl-cert-…). JS widgetu je vložený priamo na stránkach certifikátov.
 *   16-recenzie-en.css                         Slider recenzií v angličtine (.custom-en-reviews…).
 *   17-dm-flex-en.css                          Stĺpce .dm-flex (COM verzia).
 *   18-ikonky-popup-en.css                     Ikonky v popise ako banner (COM verzia súboru 14).
 */

/* =====================================================================
   01 · tlacidla-pulz
   Čo robí:  Pulzujúce tlačidlá .buttonPULSEred / .buttonPULSEblack / .buttonPULSEwhite (+ .button-icon).
   Kde:      Tlačidlá v banneroch a popisoch (titulka, kategórie, produkty).
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/JL_buttonPULSEred_black_white.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */

/* Základný štýl pre tlačidlá s pulz efektom */

.button-icon {
  width: 24px;
  height: 24px;
  margin-right: 10px;
}

.buttonPULSEred .button-icon,
.buttonPULSEblack .button-icon,
.buttonPULSEwhite .button-icon {
  height: 28px;
  width: auto;
  margin-right: 8px;
  vertical-align: middle;
}

.buttonPULSEred,
.buttonPULSEblack,
.buttonPULSEwhite {
  box-sizing: border-box;
  padding: 12px 5vw;
  font-size: 16px;
  border-radius: 32px;
  transition: 0.4s ease;
  cursor: pointer;
  display: inline-block;
  min-width: 120px;
  max-width: 100%;
  text-align: center;
  white-space: nowrap;
  z-index: 1;
  text-decoration: none !important;
}

@media (max-width: 960px) and (min-width: 768px) {
  .buttonPULSEred,
  .buttonPULSEwhite,
  .buttonPULSEblack {
    padding: 10px 8vw;
    font-size: 14px !important;
  }
}

@media (max-width: 767px) {
  .buttonPULSEred,
  .buttonPULSEwhite,
  .buttonPULSEblack {
    font-size: 12px !important;
  }
}

.buttonPULSEred {
  background-color: #f80120;
  color: white !important;
  border: 2px solid transparent;
  box-shadow: 0 0 0 rgba(248, 1, 32, 0.6);
  animation: pulseRed 2s infinite;
  text-decoration: none !important;
}

.buttonPULSEblack {
  background-color: black !important;
  color: white !important;
  border: 2px solid transparent;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0.6);
  animation: pulseBlack 2s infinite;
  text-decoration: none !important;
}

.buttonPULSEwhite {
  background-color: white !important;
  color: black !important;
  border: 2px solid transparent;
  box-shadow: 0 0 0 rgba(255, 255, 255, 0.6);
  animation: pulseWhite 2s infinite;
  text-decoration: none !important;
}

.buttonPULSEred:hover {
  background-color: #bb0101;
}

.buttonPULSEblack:hover {
  background-color: grey !important;
  color: white !important;
}

.buttonPULSEwhite:hover {
  background-color: black !important;
  color: white !important;
}

@keyframes pulseRed {
  0% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(248, 1, 32, 0.6);
  }
  70% {
    transform: scale(1.03);
    box-shadow: 0 0 0 10px rgba(248, 1, 32, 0);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(248, 1, 32, 0);
  }
}

@keyframes pulseBlack {
  0% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.6);
  }
  70% {
    transform: scale(1.03);
    box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  }
}

@keyframes pulseWhite {
  0% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.6);
  }
  70% {
    transform: scale(1.03);
    box-shadow: 0 0 0 10px rgba(255, 255, 255, 0);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}

/* =====================================================================
   02 · podkategorie-v-kategorii
   Čo robí:  Bloky podkategórií vložené do inej kategórie (.JL_subcategory_banner…).
   Kde:      Kategórie, kde je vložený banner/HTML s podkategóriami.
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/JL_subcategory_zobrazenie_v_kategorie.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */

/* ............................................................................. */

/* ..... MOJ CSS kod pre zobrazenie volitelne subkategorii v shoptete v inej kategorii  ......  */

/* ............................................................................. */

/* Odstup celého bloku bannerov zhora a zdola */
.JL_subcategory_banner-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 40px;
  margin-bottom: 40px;
}

/* Banner s horizontálnym layoutom vždy */
.JL_subcategory_banner {
  flex: 1 1 350px;
  min-width: 290px;
  max-width: 100%;
  background: #fff;
  border: 1px solid #ececec;
  border-radius: 14px;
  box-shadow: 0 2px 6px 0 rgba(30,31,33,0.07);
  transition: box-shadow 0.2s, transform 0.2s;
  overflow: hidden;
  min-height: 110px;
  max-height: 110px;
  display: flex;
  /* Ak by boli viaceré bannery vedľa seba, použije sa aj gap z row */
}

/* Klikateľný celý banner */
.JL_subcategory_banner-link {
  display: flex;
  flex: 1;
  align-items: stretch;
  text-decoration: none !important;
  color: inherit;
  cursor: pointer;
  /* Zabezpečí, že klik je naozaj na celý obsah bannera */
  width: 100%;
  height: 100%;
}
.JL_subcategory_banner-link:visited,
.JL_subcategory_banner-link:active,
.JL_subcategory_banner-link:focus {
  text-decoration: none !important;
  color: inherit;
}

/* Zvýraznenie na hover */
.JL_subcategory_banner-link:hover {
  box-shadow: 0 6px 18px 0 rgba(30,31,33,0.13);
  transform: translateY(-2px) scale(1.02);
  color: #b50021;
}

.JL_subcategory_banner-image {
  max-height: 110px;
  min-width: 75px;
  min-height: 75px;
  object-fit: cover;
  background: #f7f7f7;
  border-radius: 0;
  flex-shrink: 0;
  align-self: center;
  transition: width 0.2s, height 0.2s;
}

.JL_subcategory_banner-content {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 18px 18px 18px 22px;
  min-width: 0;
  transition: padding 0.2s;
}

.JL_subcategory_banner-title {
  font-size: 16px;
  font-weight: 600;
  margin: 0 0 0px 0;
  color: #171717;
  transition: font-size 0.2s;
  line-height: 1.5;
}

.JL_subcategory_banner-desc {
  font-size: 16px;
  font-weight: 900;
  color: #565b5e;
  margin: 0;
  line-height: 1.5;
  transition: font-size 0.2s;
}
  
.JL_subcategory_banner-title,
.JL_subcategory_banner-desc {
white-space: normal;
word-break: break-word;
overflow: hidden;
text-overflow: ellipsis;
}

.JL_subcategory_banner-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  min-width: 44px;
  font-size: 26px;
  color: #ef3340;
  transition: color 0.2s;
  margin-left: auto;
  background: none;
  border: none;
  cursor: pointer;
}
.JL_subcategory_banner-link:hover .JL_subcategory_banner-arrow {
  color: #b50021;
}

/* Odstráni podčiarknutie aj keď je vnútri linku čokoľvek */
.JL_subcategory_banner-link *,
.JL_subcategory_banner-link {
  text-decoration: none !important;
}



/* HORIZONTÁLNE USPORIADANIE NA MOBILOCH AJ DESKTOPE */
@media (max-width: 900px) {
  .JL_subcategory_banner-row {
    flex-direction: column;
    gap: 14px;
  }
  .JL_subcategory_banner {
    min-height: 0;
    max-height: 100px;
    width: 100%;
    max-width: 100%;
    padding-bottom: 0;
  }
  .JL_subcategory_banner-link {
    display: flex;
    flex-direction: row;
    align-items: center;
  }
  .JL_subcategory_banner-image {
    height: 100%;
    border-radius: 0px;
    flex: 0 0 auto;
    align-items: center;

  }
  .JL_subcategory_banner-content {
    flex: 1 1 0;
    min-width: 0;
    padding: 6px 8px 6px 8px;
  }
  .JL_subcategory_banner-title {
    font-size: 16px;
    white-space: normal;
    word-break: break-word;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .JL_subcategory_banner-desc {
    font-size: 16px;
    white-space: normal;
    word-break: break-word;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .JL_subcategory_banner-arrow {
    font-size: 22px;
    width: 28px;
    min-width: 28px;
    flex: 0 0 auto;
    margin-left: 0;
    align-items: center;
    justify-content: center;
  }
}


@media (max-width: 500px) {
  .JL_subcategory_banner-desc {
    font-size: 14px;
  }

  .JL_subcategory_banner-title {
    font-size: 14px;
  }
}

/* =====================================================================
   03 · banner-pomocnik-v-kategorii
   Čo robí:  Vzhľad banneru „Pomocník s výberom“ v kategórii (.product-category-page_product-banner…). HTML banneru je v JS súbore JL_banner-v-kategorie_product-guide-<JAZYK>.js.
   Kde:      Stránky kategórií.
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/JL_banner-v-kategorie_product-guide.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */

/* ..... ZACIATOK = môj CSS style pre Banner PRODUCT_GUIDE na KATEGORII v SHOPTET-E ......  */

/* ..... UPOZORNENIE: Samotný HTML pre tento BANNER je uložený v JS a treba ho prepisovať TAM !!!  ......  */
/* ................................................................................ */


.product-category-page_product-banner {
    box-sizing: border-box;
    padding: 10px;
    height: 95vh; /* fixná výška na desktop */
    max-width: 100%;
    overflow: hidden;       
    position: relative;
    display: flex;
    flex-direction: column;
}

.product-category-page_product-banner_image-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 25px;
    overflow: hidden;       /* dôležité, aby sa nič nepretieklo */
    box-shadow: 0 2px 10px rgba(0,0,0,0.08);
}

.product-category-page_product-banner_overlay {
    position: absolute;
    bottom: 0;
    left: 0 ;
    width: 100%;
    padding: 40px 15px;
    box-sizing: border-box;
    color: white;
    border-radius: 25px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    text-align: center;
    overflow: hidden;
    z-index: 10;
    max-width: 100%;
    max-height: 100%;
}

.product-category-page_product-banner_overlay h4 {
    font-size: 3rem;
    margin-bottom: 10px;
    color: white;
}

.product-category-page_product-banner_overlay p {
    font-size: 1.5rem;
    margin-bottom: 15px;
    color: #f0f0f0;
    padding: 0 15px;
}

/* Responzívnosť */
@media (max-width: 960px) and (min-width: 768px) {
    .product-category-page_product-banner {
        height: auto; /* prispôsobenie výšky obsahu */
        min-height: 60vh; /* minimálna výška pre mobil */
        max-height: 85vh;    /* nikdy viac ako 80% výšky okna */
        padding: 8px;
    }
    .product-category-page_product-banner_image-wrapper,
    .product-category-page_product-banner_overlay {
    border-radius: 20px;
    }
}

@media (max-width: 767px) {
    .product-category-page_product-banner {
        height: auto; /* prispôsobenie výšky obsahu */
        min-height: 60vh; /* minimálna výška pre mobil */
        max-height: 80vh;    /* nikdy viac ako 80% výšky okna */
        padding: 8px;
    }
    .product-category-page_product-banner_image-wrapper,
    .product-category-page_product-banner_overlay {
    border-radius: 15px;
    }
    .product-category-page_product-banner_overlay h4 {
        font-size: 1.5rem;
    }
    
    .product-category-page_product-banner_overlay p {
        font-size: 1rem;
        padding: 0 10px;
    }
}

/* =====================================================================
   04 · kontajnery-produktu
   Čo robí:  Dvojstĺpcové kontajnery v popise produktu (.container_product_page, sivá verzia _grey, tlačidlá, slider obrázkov).
   Kde:      Popisy produktov.
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/JL_container_product_page.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Oprava 25. 10. 2026: zmazaný zdvojený, neuzavretý začiatok bloku @media (max-width: 700px). Vzhľad ostal presne ako predtým:
             pravidlá, ktoré pre chybu platili iba na mobile do 700 px, sú teraz takto aj napísané (tabletový blok nikdy neplatil – odstránený).
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */


/* .............................................................................. */

/* ...... moj 2xCONTAINER pre PRODUCT_PAGE + PRODUCT_PAGE_GREY  ......  */

/* .............................................................................. */


/* === CONTAINER FOR PRODUCT PAGE === */

.container_product_page,
.container_product_page_grey {
  width: 100% !important;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: 15px;
  padding-right: 15px;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}

.container_product_page_grey {
  background-color: rgba(0, 0, 0, 0.03);
}



/* === LAYOUT === */
.center_row_product_page,
.left_column_product_page,
.right_column_product_page {
  width: 100%;
  box-sizing: border-box;
}

.center_row_product_page {
  text-align: center;
  padding: 20px 10px;
}

.columns_wrapper_product_page {
  display: flex;
  flex-wrap: nowrap;
  gap: 30px;
  margin-top: 20px;
  align-items: stretch;
}

.left_column_product_page,
.right_column_product_page {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
  text-align: left;
}

.left_column_product_page img,
.right_column_product_page img {
  width: 100%;
  height: auto;
  object-fit: cover;
  max-height: 80vh;
}

/* === TEXT ELEMENTS === */
.center_row_product_page h1,
.left_column_product_page h1,
.right_column_product_page h1 {
  font-size: 16pt;
  color: black;
  margin: 0 0 4px 0; /* hore 0, dole 5px */
}

.center_row_product_page p,
.left_column_product_page p,
.right_column_product_page p {
  font-size: 12pt;
  color: black;
  margin: 0 0 0px 0; /* tretie cislo je odsadenie nadol */
}

/* === BUTTONS === */
.button-row_product_page {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-top: 20px;
}

.buttonred_product_page,
.buttonblack_product_page {
  padding: 12px 32px;
  font-size: 14px;
  border-radius: 32px;
  text-decoration: none !important;
  cursor: pointer;
  transition: 0.4s ease;
  display: inline-block;
  border: 2px solid transparent;
  white-space: nowrap;
}

.buttonred_product_page {
  background-color: #f80120;
  color: white !important;
}

.buttonred_product_page:hover {
  background-color: #bb0101;
}

.buttonblack_product_page {
  background-color: black;
  color: white !important;
}

.buttonblack_product_page:hover {
  background-color: gray;
  color: white !important;
}

/* === SLIDER FOR IMAGES === */
.image-slider_product_page {
  display: flex;
  overflow-x: auto;
  gap: 16px;
  scroll-snap-type: x mandatory;
  padding-bottom: 10px;
}

.image-slider_product_page img {
  flex: 0 0 auto;
  width: calc(50% - 12px);
  scroll-snap-align: start;
  border-radius: 8px;
  object-fit: cover;
  height: auto;
  max-height: 80vh;
}

/* SKRÝVANIE SCROLLBARU sipiek pre 1 a 2 obrázky */
.image-slider_product_page.img-count-1,
.image-slider_product_page.img-count-2 {
  overflow-x: hidden;
}


/* === Vycentrovanie vertikalne na stred OBSAH v STLPCOCH vedla seba === */

@media (min-width: 951px) {
  .columns_wrapper_product_page {
    align-items: center;
  }
}





/* === ZOBRAZENIE SLIDERU na velkej obrazovke NTB viac ako 950px, kedy dava 2 vedla seba a slider ako 2 a pol obrazka === */

@media (min-width: 951px) {
  .image-slider_product_page img:only-child {
    width: 100% !important;
    max-height: 80vh;
  }  

  .image-slider_product_page.img-count-1 img {
    width: 100% !important;
    max-height: 80vh;

  }
  .image-slider_product_page.img-count-3 img,
  .image-slider_product_page.img-count-4 img,
  .image-slider_product_page.img-count-more img,
  .image-slider_product_page[class*="img-count-"]:not(.img-count-1):not(.img-count-2) img {
    width: 66.66%;
    max-height: 50vh;
  }
}


/* === ZOBRAZENIE SLIDERU na velkej obrazovke, kedy dava 2 vedla seba a slider ako 2 a pol obrazka === */

@media (max-width: 950px) {
  .columns_wrapper_product_page {
    flex-direction: column;
  }

  .image-slider_product_page img {
    width: 100%;
  }

  .image-slider_product_page.img-count-2 img {
    width: 50%;
  }
  
  .image-slider_product_page[class*="img-count-"]:not(.img-count-1):not(.img-count-2) img {
    width: 66.66%;
    max-height: 80vh;
  }
}


/* === ZOBRAZENIE SLIDERU na TABLETE, kedy dava 2 vedla seba a slider ako 2 a pol obrazka === */

@media (max-width: 950px) and (min-width: 701px) {
  .image-slider_product_page.img-count-3 img,
  .image-slider_product_page.img-count-4 img,
  .image-slider_product_page.img-count-more img,
  .image-slider_product_page[class*="img-count-"]:not(.img-count-1):not(.img-count-2) img {
    width: calc(33.33%);
    max-height: 80vh;
  }
}


/* === ZOBRAZENIE SLIDERU na malej obrazovke, kedy dava 2 vedla seba a slider ako 1 a pol obrazka === */

@media (max-width: 700px) {
  .image-slider_product_page.img-count-1 img {
    width: 100%;
  }

  .image-slider_product_page.img-count-2 img {
    width: 50%;
  }

  .image-slider_product_page[class*="img-count-"]:not(.img-count-1):not(.img-count-2) img {
    width: 66.66%;
  }
}


/* (25. 10. 2026) Tu bol blok pre tablet 701–960 px (menšie písmo 16/12 px, menšie tlačidlá). Pre chybu v zátvorkách nikdy neplatil
   a na tablete by texty zmenšil na 12 px, preto je odstránený – vzhľad ostáva ako doteraz. */

/* === NADPISY, TEXTY, tlacidla,... na mobile pod 700px === */

@media (max-width: 700px) {
  .center_row_product_page h1,
  .left_column_product_page h1,
  .right_column_product_page h1 {
    font-size: 15px !important;
  }

  .center_row_product_page p,
  .left_column_product_page p,
  .right_column_product_page p {
    font-size: 12px !important;
  }

  .buttonred_product_page,
  .buttonblack_product_page {
    font-size: 14px;
    padding: 10px 24px;
  }

  .button-row_product_page {
    justify-content: center;
    gap: 12px;
  }
  
}


/* === VERTICAL SPACING BETWEEN ELEMENTS === (platí iba na mobile do 700 px, ako doteraz) */
@media (max-width: 700px) {
  .left_column_product_page > *:not(:last-child),
  .right_column_product_page > *:not(:last-child) {
    margin-bottom: 5px;
  }
}




/* === rusi "padding" v nadradenych elementoch shoptet temy, ale iba tam, kde je na stranke pouzity moj container.  === */
/* === Ku kodu je pouzity aj funkcny javascript, ktory moj container vyhladava === */


@media (max-width: 700px) { /* pôvodne 767 px, ale pre chybu v zátvorkách platilo iba do 700 px – ponechané ako doteraz */
  .container_product_page-no-padding {
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  .container_product_page,
  .container_product_page_grey {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 5% !important;
    padding-right: 5% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }
}

/* =====================================================================
   05 · popup
   Čo robí:  Vlastný PopUp (.popup-overlay_JL…), napr. tabuľka veľkostí topánok.
   Kde:      Produkty s PopUp-om (barefoot obuv a pod.).
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/JL_popup.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */


/* ............................................................................. */

/* ..... MOJ PopUp_JL, ktory pouzivame napr. na EASYLIGHT.SK - na VELKOST TOPANOK  ......  */

/* ............................................................................. */



/* === ŠTÝL PRE HLAVNÉ TLAČIDLO, ak treba, ALE MOZEM POUZIVAT ROVNAKE AKO VYSSIE napr. "buttonCATEGORYred" === */

.popup-button_JL {
  background-color: #f80120;
  color: white;
  padding: 12px 28px;
  font-size: 14px;
  border: none;
  border-radius: 32px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.popup-button_JL:hover {
  background-color: #bb0101;
}


/* === POPUP OVERLAY === */
.popup-overlay_JL {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 99999 !important;
  overflow: auto;
}

/* === POPUP OKNO === */
.popup-content_JL {
  background-color: #f9f9f9;
  border-radius: 30px;
  padding: 24px;
  max-width: 800px;
  width: 90%;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  text-align: center;
  position: relative;

  max-height: 90vh;
  overflow-y: auto;
}

/* === TLAČIDLO NA ZATVORENIE === */
.popup-close_JL {
  position: absolute;
  top: 12px;
  right: 16px;
  background: none;
  border: none;
  font-size: 24px;
  cursor: pointer;
}

/* === OBRÁZKY === */
.popup-images_JL {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  margin-top: 20px;
}

.popup-images_JL img {
  width: 100%;
  max-width: 48%;
  border-radius: 0px;
}

/* === AK JE VIAC AKO 2 OBRÁZKY === */
.popup-images_JL.more-than-two img {
  max-width: 100%;
}

/* === DVE TLAČIDLÁ V POPUPE === */
.button-row_center_popup_JL {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 20px;
  justify-content: center;
}

.buttonred_popup_JL,
.buttonblack_popup_JL {
  background-color: transparent;
  color: inherit !important;
  border-radius: 32px;
  padding: 12px 32px;
  font-size: 14px;
  text-decoration: none !important;
  cursor: pointer;
  transition: 0.4s ease;
  border: 2px solid transparent;
  display: inline-block;
}

.buttonred_popup_JL {
  background-color: #f80120;
  color: white !important;
}

.buttonred_popup_JL:hover {
  background-color: #bb0101;
}

.buttonblack_popup_JL {
  background-color: black;
  color: white !important;
}

.buttonblack_popup_JL:hover {
  background-color: gray !important;
  color: white !important;
}

/* === RESPONZÍVNE === */
@media (max-width: 600px) {
  .popup-images_JL {
    flex-direction: column;
  }

  .popup-images_JL img {
    max-width: 100%;
  }

  .popup-images_JL.more-than-two {
    flex-direction: column;
  }

  .button-row_center_popup_JL {
    justify-content: center;
    gap: 12px;
  }

  .button-row_center_popup_JL a {
    padding: 10px 8vw;
    font-size: 14px;
  }
}

/* =====================================================================
   06 · vlastnosti-slider
   Čo robí:  Slider vlastností pre dotykové obrazovky (.vlastnosti-slider-wrapper…).
   Kde:      Popisy produktov.
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/JL_vlastnosti-slider-wrapper.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */

/* ... ↓↓ ZACIATOK = môj CSS style pre "VLASTNOSTI-SLIDER" pre touch screen ↓↓ ...  */
/* ................................................................................ */
/* ................................................................................ */



.vlastnosti-slider-wrapper {
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  width: 100%;
}


/* Default (pre desktop) — zarovnanie vľavo stĺpcov */

.vlastnosti-slider-wrapper .vlastnosti-slider-track {
  display: flex;
  gap: 20px;
  padding: 20px;
  scroll-snap-align: start;
  transition: scroll 0.3s ease-in-out;
  justify-content: flex-start;
}

/* === Desktop ≥ 950px === */
/* Ak sú 3 alebo menej stĺpcov → centrovať */

@media (min-width: 950px) {
  .vlastnosti-slider-wrapper .vlastnosti-slider-track:not(:has(> .vlastnosti-slider-wrapper-column:nth-child(4))) {
    justify-content: center;
  }
}

/* === Tablet: 700px – 949px === */
/* Ak sú 2 alebo menej stĺpcov → centrovať */

@media (max-width: 949px) and (min-width: 700px) {
  .vlastnosti-slider-wrapper .vlastnosti-slider-track:not(:has(> .vlastnosti-slider-wrapper-column:nth-child(3))) {
    justify-content: center;
  }
}

/* === Mobil: ≤ 699px === */
/* Ak je iba 1 stĺpec → centrovať */

@media (max-width: 699px) {
  .vlastnosti-slider-wrapper .vlastnosti-slider-track:not(:has(> .vlastnosti-slider-wrapper-column:nth-child(2))) {
    justify-content: center;
  }
}


.vlastnosti-slider-wrapper-column {
  scroll-snap-align: start;
  flex-shrink: 0;
  border: 1px solid #ccc;
  border-radius: 15px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  background-color: #fff;
  display: flex;
  flex-direction: column;
}

/* Obrázok s pomerom strán 3:2 */
.vlastnosti-slider-image-container {
  position: relative;
  width: 100%;
  padding-top: 66.6667%;
  overflow: hidden;
}

.vlastnosti-slider-image-container img {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vlastnosti-slider-overlay-content {
  background-color: #f4f4f4;
  padding: 15px;
  text-align: center;
  flex-grow: 1;
}

.vlastnosti-slider-overlay-content h1 {
  font-size: 16px !important;
  margin-bottom: 10px !important;
}

.vlastnosti-slider-overlay-content p {
  font-size: 12px !important;
}

/* Responzívne šírky stĺpcov (slider ukazuje 3 + 0.5, 2 + 0.5, 1 + 0.5) */
@media (min-width: 950px) {
  .vlastnosti-slider-wrapper-column {
    width: calc((100% - 40px) / 3.5);
  }
}

@media (max-width: 949px) and (min-width: 700px) {
  .vlastnosti-slider-wrapper-column {
    width: calc((100% - 20px) / 2.5);
  }
}

@media (max-width: 699px) {
  .vlastnosti-slider-wrapper-column {
    width: calc(100% / 1.5);
  }
}

/* Text respozívne */
@media (max-width: 750px) {
  .vlastnosti-slider-overlay-content h1 {
    font-size: 15px;
  }
  .vlastnosti-slider-overlay-content p {
    font-size: 12px;
  }
}



/* ................................................................................ */
/* .....↑↑ KONIEC  = TU KONČÍ môj CSS style pre "VLASTNOSTI-SLIDER" pre touch screen ↑↑ .....  */
/* ................................................................................ */

/* =====================================================================
   07 · tabulka-porovnania-generacii
   Čo robí:  Responzívna tabuľka porovnania generácií produktov so šípkami (#tabulka-porovnanie-generacie-root).
   Kde:      Produkty a stránky s porovnaním generácií.
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/tabulka-porovnanie-generacie-produkty.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */

/* CSS pre tabulku na porovnanie generacii - responzivna so sliderom
   v2: skratene class nazvy (tpg-*) + kazdy selektor zvazany pod
   #tabulka-porovnanie-generacie-root, takze sa nemoze biT s inymi
   triedami na webe ani keby nahodou rovnaky nazov niekde existoval. */

#tabulka-porovnanie-generacie-root .tpg-wrap {
  max-width: 100%;
  margin: 0 auto;
  padding: 20px;
  position: relative;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.2);
}

/* NOT scoped under the root id on purpose: this exact class name is reused
   as a shared heading style on other pages outside this widget (confirmed
   via a full-repo scan - 113 occurrences across 43 other pages), so it must
   stay global and keep its original unrenamed class name. */
.tabulka-porovnanie-generacie-title {
  display: inline-block;
  padding-right: 18px;
  border-bottom: 3px solid #ff0000;
  border-right: 5px solid #ff4d4d;
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 24px;
  text-align: center;
}

#tabulka-porovnanie-generacie-root .tpg-tog {
  display: flex;
  justify-content: center;
  gap: 14px;
  margin: 24px 0 18px 0;
  flex-wrap: wrap;
}

#tabulka-porovnanie-generacie-root .tpg-tog button {
  padding: 10px 26px;
  font-size: 1.7rem;
  background: #d6d6d6;
  color: black;
  border: none;
  border-radius: 30px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  cursor: pointer;
  transition: background 0.18s, color 0.18s, box-shadow 0.18s;
  font-weight: 500;
  outline: none;
  margin-bottom: 0;
}

#tabulka-porovnanie-generacie-root .tpg-tog button.active,
#tabulka-porovnanie-generacie-root .tpg-tog button:active {
  background: red;
  color: #fff;
  box-shadow: 0 4px 16px rgba(37,99,235,0.13);
}

@media (max-width: 700px) {
  #tabulka-porovnanie-generacie-root .tpg-tog {
    flex-direction: column;
    align-items: center;
    gap: 8px;
  }
  #tabulka-porovnanie-generacie-root .tpg-tog button {
    font-size: 1.2rem;
    width: 95%;
    max-width: 330px;
    margin-bottom: 5px;
  }
}

/* Sipky na kraji obrazovky */
#tabulka-porovnanie-generacie-root .tpg-arrow {
  position: absolute;
  z-index: 9999;
  background: black;
  color: #fff;
  border: none;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  box-shadow: 0 2px 12px rgba(0,0,0,0.08);
  cursor: pointer;
  transition: background 0.22s, box-shadow 0.2s, transform 0.22s, opacity 0.18s;
  opacity: 0.95;
  animation: tabulka-pulse 1.15s infinite;
  user-select: none;
  padding-left: 10px;
  padding-right: 10px;
}

#tabulka-porovnanie-generacie-root .tpg-arrow-l { left: 20px; }
#tabulka-porovnanie-generacie-root .tpg-arrow-r { right: 20px; }

@keyframes tabulka-pulse {
  0% { box-shadow: 0 0 0 0 #2563eb44; transform: translateY(-50%) scale(1);}
  60% { box-shadow: 0 0 0 14px #2563eb11; transform: translateY(-50%) scale(1.07);}
  100% { box-shadow: 0 0 0 0 #2563eb00; transform: translateY(-50%) scale(1);}
}

@media (max-width: 600px) {
  #tabulka-porovnanie-generacie-root .tpg-arrow {
    width: 30px;
    height: 30px;
    font-size: 1.3rem;
    padding-left: 6px;
    padding-right: 6px;
  }
  #tabulka-porovnanie-generacie-root .tpg-arrow-l { left: 10px; right: auto; }
  #tabulka-porovnanie-generacie-root .tpg-arrow-r { right: 10px; left: auto; }
}

/* --- HLAVNA GRID TABLE --- */
#tabulka-porovnanie-generacie-root .tpg-slider {
  display: grid;
  grid-auto-flow: row;
  gap: 0px;
  overflow-x: auto;
  scroll-behavior: smooth;
  padding-bottom: 16px;
  transition: opacity 0.2s;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  pointer-events: none;
  z-index: 1;
  min-width: 0;
  /* grid-template-columns nastavuje JS! */
}

#tabulka-porovnanie-generacie-root .tpg-slider.active {
  opacity: 1;
  visibility: visible;
  position: relative;
  pointer-events: auto;
  z-index: 2;
}

/* Skryvanie riadkov nad VISIBLE_ROWS uz NIE JE o vyske v pixeloch vobec -
   rewrite-table.js pri generovani stranky spocita, kolko bunkovych divov
   tvori jeden riadok pre kazdy tab (pocet stlpcov = data), a vlozi
   priamo do HTML <style> blok s :nth-child(n+X){display:none} pre kazdy
   tab osobitne. Tento pocet je z podstaty rovnaky na kazdej sirke
   obrazovky (menia sa len px na stlpec, nikdy pocet bunkoviek v riadku),
   takze skryte riadky su BUD cele v DOM ako display:none (nulova vyska,
   nulova moznost "vykuknut" spod fade efektu), ALEBO su cele viditelne -
   ziadny medzistav, ziadne merania, ziadny beh JS, ziadna zavislost od
   nacitania obrazkov/animacie. Fade tu preto moze byt cisto kozmeticky:
   prekryva spodnych ~70px uz aj tak viditelneho posledneho riadku, aby
   vyzeral "odrezany", ale za nim uz v DOM fyzicky nic dalsie nie je. */
#tabulka-porovnanie-generacie-root .tpg-fade {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 70px;
  background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1) 85%);
  pointer-events: none;
  z-index: 3;
  transition: opacity 0.2s;
}

#tabulka-porovnanie-generacie-root.tpg-expanded .tpg-fade {
  opacity: 0;
  pointer-events: none;
}

#tabulka-porovnanie-generacie-root .tpg-more-wrap {
  display: flex;
  justify-content: center;
  margin-top: 18px;
  position: relative;
  z-index: 4;
}

#tabulka-porovnanie-generacie-root .tpg-more-btn {
  padding: 12px 34px;
  font-size: 1.3rem;
  font-weight: 600;
  background: red;
  color: #fff;
  border: none;
  border-radius: 30px;
  cursor: pointer;
  box-shadow: 0 2px 10px rgba(0,0,0,0.15);
  transition: background 0.18s, box-shadow 0.18s;
}

#tabulka-porovnanie-generacie-root .tpg-more-btn:hover {
  background: #c00000;
}

@media (max-width: 600px) {
  #tabulka-porovnanie-generacie-root .tpg-more-btn {
    width: 95%;
    max-width: 330px;
    font-size: 1.15rem;
    padding: 12px 20px;
  }
}

/* Dynamicka bunka v gride */
#tabulka-porovnanie-generacie-root .tpg-b {
  min-width: 0 !important;
  min-height: 0;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  word-break: break-word;
  overflow-wrap: break-word;
  width: 100%;
}

#tabulka-porovnanie-generacie-root .tpg-v {
  padding: 12px 10px;
  background: #fff;
  border-bottom: 2px solid #e5e7eb;
  border-left: 1px solid #e5e7eb;
  border-right: 1px solid #e5e7eb;
  font-size: 1.3rem;
  text-align: center;
  min-height: 42px;
  width: 100%;
  box-sizing: border-box;
  word-break: break-word;
  overflow-wrap: break-word;
  min-width: 0;
}

#tabulka-porovnanie-generacie-root .tpg-v:last-child {
  border-radius: 0 0 0px 0px;
  border-bottom: 2px solid #e5e7eb;
}

#tabulka-porovnanie-generacie-root .tpg-v p {
  margin: 0;
  font-size: 1.3rem;
  color: #444;
  width: 100%;
  min-width: 0;
  white-space: normal;
  word-break: break-word;
  overflow-wrap: break-word;
  text-align: center;
}

/* Produkt */
#tabulka-porovnanie-generacie-root .tpg-p {
  background: white;
  border: 1px solid;
  border-color: #a3c4f3;
  border-radius: 0px;
  border-bottom: 2px solid #a3c4f3;
  text-align: center;
  padding: 10px 10px 10px 10px;
  min-width: 0;
}

#tabulka-porovnanie-generacie-root .tpg-p h3 {
  margin: 0 0 8px 0;
  font-size: 1.4rem;
  min-width: 0;
}

#tabulka-porovnanie-generacie-root .tpg-img {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 8px;
  min-width: 0;
}

#tabulka-porovnanie-generacie-root .tpg-img img {
  max-height: 100px;
  width: auto;
  max-width: 100%;
  border-radius: 12px;
  box-shadow: 0 1px 8px rgba(0,0,0,0.00);
  object-fit: contain;
  min-width: 0;
}

#tabulka-porovnanie-generacie-root .tpg-p p {
  margin: 0;
  font-size: 1.3rem;
  color: #333;
  min-width: 0;
  white-space: normal;
  word-break: break-word;
  overflow-wrap: break-word;
  width: 100%;
  text-align: center;
}

@media (max-width: 700px) {
  #tabulka-porovnanie-generacie-root .tpg-p h3 {
    margin: 0 0 8px 0;
    font-size: 1.2rem;
    min-width: 0;
  }

  #tabulka-porovnanie-generacie-root .tpg-p p {
    font-size: 1.1rem;
    margin-bottom: 5px;
  }

  #tabulka-porovnanie-generacie-root .tpg-v {
    font-size: 1.2rem;
  }

  #tabulka-porovnanie-generacie-root .tpg-v p {
    font-size: 1.2rem;
  }
}

/* =====================================================================
   08 · responzivne-kontajnery-a-bannery
   Čo robí:  Najväčší súbor: globálne rozmery, responzívne kontajnery, bannery kategórií a pomocníka, tlačidlá .buttonblack/.buttonCATEGORYblack, breadcrumb.
   Kde:      Celý web (kategórie, produkty, bannery, titulka).
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/JL_Responsive_containers_and_banners.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */





/* === GLOBÁLNE NASTAVENIE PRE ROZMEROVANIE === */


*, *::before, *::after {
  box-sizing: border-box;
}




/* ..................................................................................................... */
/* ..................................................................................................... */

/* TLACIDLA STARE, ktore uz nepouzivam, no BOLI pOUZIVANE NA easylight.sk   */

/* ..................................................................................................... */
/* ..................................................................................................... */




/* tlačidlo zaoblené priehľadné na NTB väčšie */

.button_JL_NTB_transparent {
  background-color: transparent;
  color: white;
  border: 2px solid #555555;
border-radius: 32px; 
  padding: 12px 32px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 16px;
  margin: 4px 2px;
  transition-duration: 0.4s;
  cursor: pointer;
}


.button_JL_NTB_transparent:hover {
  background-color: #555555;
  color: white;
}


/* tlačidlo zaoblené priehľadné na MOBIL menšie */

.button_JL_mobil_transparent {   background-color: rgb(0 0 0 / 10%);
  color: #555555;
  border: 2px solid #555555;
  border-radius: 18px; 
  padding: 8px 16px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 14px;
  margin: 4px 2px;
  transition-duration: 0.4s;
  cursor: pointer;
}

.button_JL_mobil_transparen:hover {
  background-color: #555555;
  color: white;
}



.button_JL_blog_red { /* tlačidlo zaoblené ČERVENÉ na BLOG  */
  background-color: #f80120;
  color: #ffffff;
  border: none;
  border-radius: 32px; 
  padding: 12px 32px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 15px;
  margin: 4px 2px;
  transition-duration: 0.4s;
  cursor: pointer;
}

.button_JL_blog_red:hover {
  background-color: #bb0101;
  color: #ffffff;
}

.button_JL_blog_black { /* tlačidlo zaoblené ČIERNE s BIELYM hover na BLOG  */
  background-color: black;
  color: white;
  border: none;
  border-radius: 32px; 
  padding: 12px 32px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 15px;
  margin: 4px 2px;
  transition-duration: 0.4s;
  cursor: pointer;
}

.button_JL_blog_black:hover {
  background-color: #d8d5d9;
  color: black;
}

.button_JL_blog_black:hover {
  background-color: #d8d5d9;
  color: black;
}


/* Odstraňujem z tlačidla podčiarknutie  */

.button_JL_blog_black a:link {
  text-decoration: none;
}

.button_JL_blog_black a:visited {
  text-decoration: none;
}

.button_JL_blog_black a:hover {
  text-decoration: none;
}

.button_JL_blog_black a:active {
  text-decoration: underline;
}


.button_JL_blog_red a:link {
  text-decoration: none;
}

.button_JL_blog_red a:visited {
  text-decoration: none;
}

.button_JL_blog_red a:hover {
  text-decoration: none;
}

.button_JL_blog_red a:active {
  text-decoration: underline;
}



/*Maximálna šírka TEXTU (doprava/platba) v kontajner - šírka mobil MAX. 300 px*/
p.ex150 {
  max-width: 150px;
}

/*Maximálna šírka TEXTU (doprava/platba) v kontajner - šírka mobil MAX. 300 px*/
p.ex300 {
  max-width: 300px;
}

/*Maximálna šírka TEXTU (doprava/platba) v kontajner*/
p.ex75 {
  max-width: 75px;
}


/* TU KONCI CSS pre STARE TLACIDLA    */

/* ..................................................................................................... */
/* ..................................................................................................... */
/* ..................................................................................................... */

    

/* ..................................................................................................... */

/* ODTIAĽTO idú BANNERY s BORDER alebo ROUND_BORDER, ktore su PREDURCENE S OBRAZKOM DNU - "WARRANTY" alebo "SKIPPAY"    */

/* ..................................................................................................... */




.container_JL_responsive_skippay {
  width: 85%;
  min-height: 250px;
  height: 250px;
  background-image: url('https://www.mitochondriak.com/user/documents/upload/Bannery_contajner/Cotainer_skip_the_pay.jpg');
  background-size: cover;
  border: 1px transparent;
  border-radius: 25px;
  text-align: center;
  position: relative;
}


.container_JL_responsive_skippay .buttonNTBred {
      background-color: #f80120;
      color: white;
      border: 2px solid transparent;
      border-radius: 32px; 
      padding: 12px 32px;
      font-size: 16px;
      cursor: pointer;
      text-decoration: none;
      transition: 0.4s ease;
    }

.container_JL_responsive_skippay .buttonNTBred:hover {
      background-color: #bb0101;
    }

    @media (max-width: 600px) {
      .container_JL_responsive_skippay h1 {
        font-size: 15pt;
      }

      .container_JL_responsive_skippay p {
        font-size: 11pt;
      }

      .container_JL_responsive_skippay .buttonNTBred {
        padding: 10px 24px;
        font-size: 14px;
      }
    }


.container_JL_responsive_warranty {
  width: 85%;
  max-width: 900px;
  min-height: 260px;
  height: 260px;
  background-image: url('https://www.mitochondriak.com/user/documents/upload/Bannery_contajner/Contajner_responsive.jpg');
  background-size: cover;
  border: 1px transparent;
  border-radius: 25px;
  text-align: center;
  position: relative;
}

.container_JL_responsive_warranty .buttonNTBred {
      background-color: #f80120;
      color: white;
      border: 2px solid transparent;
      border-radius: 32px; 
      padding: 12px 32px;
      font-size: 16px;
      cursor: pointer;
      text-decoration: none;
      transition: 0.4s ease;
    }

.container_JL_responsive_warranty .buttonNTBred:hover {
      background-color: #bb0101;
    }

    @media (max-width: 600px) {
      .container_JL_responsive_warranty h1 {
        font-size: 15pt;
      }

      .container_JL_responsive_warranty p {
        font-size: 11pt;
      }

      .container_JL_responsive_warranty .buttonNTBred {
        padding: 10px 24px;
        font-size: 14px;
      }
    }




/* Zarovnanie TEXTU ZHORA a ZĽAVA (10percent ZHORA aj ZLAVA) */

.text_hore {  
  position: absolute;
  top: 10%;
  left: 10%;
  right: 10%;

}



/* ..................................................................................................... */

/* !!! TOTO je CSS pre container na 100% ŠÍRKY OBRAZOVKY !!! ktory som pouzival na EASYLIGHT DAVNEJSIE   */

/* ..................................................................................................... */




.container_JL {
  position: relative;
  width: 100%;
}

.container_JL img {
  width: 100%;
  max-height: 30%;
}


/* CSS TEXT v CONTAINERY, ktorý ide z hora a v strede a pod tým nadpisi a text*/

.center_text_hore {  
  margin: 0;
  position: absolute;
  top: 20%;
  left: 50%;
  transform: translate(-50%, -40%);
  -ms-transform: translate(-70%, -50%);
}


.container_JL h1 {
    text-align: center;
}

.container_JL h2 {
    text-align: center;
}

.container_JL h3 {
    text-align: center;
}

.container_JL h4 {
    text-align: center;
}

.container_JL h5 {
    text-align: center;
}

.container_JL h6 {
    text-align: center;
}

.container_JL p {
  text-align: center;
}


/* ODTIALTO idú TLAČIDLA v CONTAJNERY*/


/* CSS pre biele tlačidlo s black hover STRED v bannery */
.container_JL .btn_biele_stred { 
  position: absolute;
  top: 80%;
  left: 50%;
  transform: translate(-45%, -50%);
  -ms-transform: translate(-70%, -50%);
  background-color: #ffffff;
  color: black;
  font-size: 14px;
  padding: 12px 24px;
  border: none;
  cursor: pointer;
  border-radius: 30px;
  text-align: center;
}
.container_JL .btn_biele_stred:hover {
  background-color: black;
  color: white;
}


.container_JL .btn_container_biele_vlavo {
  position: absolute;
  top: 80%;
  left: 20%;
  transform: translate(-45%, -50%);
  -ms-transform: translate(-70%, -50%);
  background-color: #ffffff;
  color: black;
  font-size: 14px;
  padding: 12px 24px;
  border: none;
  cursor: pointer;
  border-radius: 30px;
  text-align: center;
}
.container_JL .btn_container_biele_vlavo:hover {
  background-color: black;
  color: white;
}

.container_JL .btn_container_biele_vpravo {
  position: absolute;
  top: 80%;
  left: 80%;
  transform: translate(-45%, -50%);
  -ms-transform: translate(-5%, -50%);
  background-color: white;
  color: black;
  font-size: 14px;
  padding: 12px 24px;
  border: none;
  cursor: pointer;
  border-radius: 30px;
  text-align: center;
}
.container_JL .btn_container_biele_vpravo:hover {
  background-color: black;
  color: white;
}

/* ..................................................................................................... */
/* ..................................................................................................... */
/* ..................................................................................................... */





/* ..................................................................................................... */

/* CSS pre container-bannery kde je tlačidlo alebo text dnu a je na 100% ŠÍRKY OBRAZOVKY    */

/* ..................................................................................................... */



.container_JL_100 {
  position: relative;
  display: flex;
  width: 100%;
}

.container_JL_100 img {
  position: relative;
  max-width: 100%;
  min-height: 300px;
}


/* CSS TEXT v CONTAINERY, ktorý ide z hora a v strede a pod tým nadpisi a text*/

.center_text_hore {  
  margin: 0;
  position: absolute;
  top: 20%;
  left: 50%;
  transform: translate(-50%, -40%);
  -ms-transform: translate(-70%, -50%);
}


.container_JL_100 h1 {
    text-align: center;
}

.container_JL_100 h2 {
    text-align: center;
}

.container_JL_100 h3 {
    text-align: center;
}

.container_JL_100 h4 {
    text-align: center;
}

.container_JL_100 h5 {
    text-align: center;
}

.container_JL_100 h6 {
    text-align: center;
}

.container_JL_100 p {
  text-align: center;
}


/* ODTIALTO idú TLAČIDLA v CONTAJNERY*/


/* CSS pre biele tlačidlo s black hover STRED v bannery */
.container_JL_100 .btn_biele_stred { 
  position: absolute;
  top: 80%;
  left: 50%;
  transform: translate(-45%, -50%);
  -ms-transform: translate(-70%, -50%);
  background-color: #ffffff;
  color: black;
  font-size: 14px;
  padding: 12px 24px;
  border: none;
  cursor: pointer;
  border-radius: 30px;
  text-align: center;
}
.container_JL_100 .btn_biele_stred:hover {
  background-color: black;
  color: white;
}


/* CSS pre biele tlačidlo s black hover VĽAVO v bannery */
.container_JL_100 .btn_biele_vlavo { 
  position: absolute;
  top: 80%;
  left: 20%;
  transform: translate(-45%, -50%);
  -ms-transform: translate(-70%, -50%);
  background-color: #ffffff;
  color: black;
  font-size: 14px;
  padding: 12px 24px;
  border: none;
  cursor: pointer;
  border-radius: 30px;
  text-align: center;
}
.container_JL_100 .btn_biele_vlavo:hover {
  background-color: black;
  color: white;
}

/* CSS pre biele tlačidlo s black hover VPRAVO v bannery */
.container_JL_100 .btn_biele_vpravo {
  position: absolute;
  top: 80%;
  left: 80%;
  transform: translate(-45%, -50%);
  -ms-transform: translate(-5%, -50%);
  background-color: white;
  color: black;
  font-size: 14px;
  padding: 12px 24px;
  border: none;
  cursor: pointer;
  border-radius: 30px;
  text-align: center;
}
.container_JL_100 .btn_biele_vpravo:hover {
  background-color: black;
  color: white;
}


/* ..................................................................................................... */
/* CSS pre container-bannery kde je tlačidlo alebo text dnu a je na 50% ŠÍRKY OBRAZOVKY    */
/* ..................................................................................................... */


.container_JL_50 {
  position: relative;
  max-width: 50%;
}

.container_JL_50 img {
  max-width: 100%;
  max-height: 30%;
}


/* CSS pre biele tlačidlo s black hover STRED v bannery */
.container_JL_50 .btn_biele_stred { 
  position: absolute;
  top: 80%;
  left: 50%;
  transform: translate(-45%, -50%);
  -ms-transform: translate(-70%, -50%);
  background-color: #ffffff;
  color: black;
  font-size: 14px;
  padding: 12px 24px;
  border: none;
  cursor: pointer;
  border-radius: 30px;
  text-align: center;
}
.container_JL_50 .btn_biele_stred:hover {
  background-color: black;
  color: white;
}


/* CSS pre biele tlačidlo s black hover VĽAVO v bannery */
.container_JL_50 .btn_biele_vlavo { 
  position: absolute;
  top: 80%;
  left: 20%;
  transform: translate(-45%, -50%);
  -ms-transform: translate(-70%, -50%);
  background-color: #ffffff;
  color: black;
  font-size: 14px;
  padding: 12px 24px;
  border: none;
  cursor: pointer;
  border-radius: 30px;
  text-align: center;
}
.container_JL_50 .btn_biele_vlavo:hover {
  background-color: black;
  color: white;
}

/* CSS pre biele tlačidlo s black hover VPRAVO v bannery */
.container_JL_50 .btn_biele_vpravo {
  position: absolute;
  top: 80%;
  left: 80%;
  transform: translate(-45%, -50%);
  -ms-transform: translate(-5%, -50%);
  background-color: white;
  color: black;
  font-size: 14px;
  padding: 12px 24px;
  border: none;
  cursor: pointer;
  border-radius: 30px;
  text-align: center;
}
.container_JL_50 .btn_biele_vpravo:hover {
  background-color: black;
  color: white;
}



/* ..................................................................................................... */
/* CSS pre container-bannery kde je tlačidlo alebo text dnu a je na 33% ŠÍRKY OBRAZOVKY    */
/* ..................................................................................................... */


.container_JL_33 {
  position: relative;
  max-width: 33%;
}

.container_JL_33 img {
  max-width: 100%;
  max-height: 30%;
}


/* CSS pre biele tlačidlo s black hover STRED v bannery */
.container_JL_33 .btn_biele_stred { 
  position: absolute;
  top: 80%;
  left: 50%;
  transform: translate(-45%, -50%);
  -ms-transform: translate(-70%, -50%);
  background-color: #ffffff;
  color: black;
  font-size: 14px;
  padding: 12px 24px;
  border: none;
  cursor: pointer;
  border-radius: 30px;
  text-align: center;
}
.container_JL_33 .btn_biele_stred:hover {
  background-color: black;
  color: white;
}


/* CSS pre biele tlačidlo s black hover VĽAVO v bannery */
.container_JL_33 .btn_biele_vlavo { 
  position: absolute;
  top: 80%;
  left: 20%;
  transform: translate(-45%, -50%);
  -ms-transform: translate(-70%, -50%);
  background-color: #ffffff;
  color: black;
  font-size: 14px;
  padding: 12px 24px;
  border: none;
  cursor: pointer;
  border-radius: 30px;
  text-align: center;
}
.container_JL_33 .btn_biele_vlavo:hover {
  background-color: black;
  color: white;
}

/* CSS pre biele tlačidlo s black hover VPRAVO v bannery */
.container_JL_33 .btn_biele_vpravo {
  position: absolute;
  top: 80%;
  left: 80%;
  transform: translate(-45%, -50%);
  -ms-transform: translate(-5%, -50%);
  background-color: white;
  color: black;
  font-size: 14px;
  padding: 12px 24px;
  border: none;
  cursor: pointer;
  border-radius: 30px;
  text-align: center;
}
.container_JL_33 .btn_biele_vpravo:hover {
  background-color: black;
  color: white;
}




/* CSS pre ČERVENÉ a TRANSPARENT TLAČIDLÁ HLAVNÉ zaoblené */
.buttonNTBtransparent { /* tlačidlo zaoblené priehľadné na NTB väčšie */
  background-color: white;
  color: black;
  border: 2px solid white;
  border-radius: 32px; 
  padding: 12px 32px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 16px;
  margin: 4px 2px;
  transition-duration: 0.4s;
  cursor: pointer;
}

.buttonNTBtransparent:hover {
  background-color: #000000;
  color: white;
  border: 2px solid black;
}

.buttonNTBred { /* tlačidlo zaoblené ČERVENÉ na NTB väčšie */
  background-color: #f80120;
  color: white;
  border: 2px solid transparent;
  border-radius: 32px; 
  padding: 12px 32px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 16px;
  margin: 4px 2px;
  transition-duration: 0.4s;
  cursor: pointer;
}


.buttonNTBred:hover {
  background-color: #bb0101;
  color: white;
}


.buttonMOBILtransparent {
background-color: white; /* tlačidlo zaoblené priehľadné na MOBIL menšie */
  color: black;
  border: 2px solid white;
  border-radius: 18px; 
  padding: 8px 16px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 14px;
  margin: 4px 2px;
  transition-duration: 0.4s;
  cursor: pointer;
}

.buttonMOBILtransparent:hover {
  background-color: #555555;
  color: white;
}

.buttonMOBILred { /* tlačidlo zaoblené ČERVENÉ na MOBIL menšie */
  background-color: #f80120;
  color: #ffffff;
  border: 2px solid #f80120;
  border-radius: 18px; 
  padding: 8px 16px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 14px;
  margin: 4px 2px;
  transition-duration: 0.4s;
  cursor: pointer;
}

.buttonMOBILred:hover {
  background-color: #bb0101;
  border: 2px solid #bb0101;
  color: #ffffff;
}

.buttonMOBILblack { /* tlačidlo zaoblené ČIERNE na MOBIL menšie */
  background-color: black;
  color: white;
  border: 2px solid black;
  border-radius: 18px; 
  padding: 8px 16px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 14px;
  margin: 4px 2px;
  transition-duration: 0.4s;
  cursor: pointer;
}

.buttonMOBILblack:hover {
  background-color: gray;
  border: 2px solid gray;
  color: #ffffff;
}



/* ZAROVNANIE zľava a zdola pre tlačidlá napríklad */
.bottomleft {
  position: absolute;
  bottom: 15%;
  left: 10%;
}


/* Zarovnanie ZHORA a ZĽAVA (10percent ZHORA aj ZLAVA) */

.bottom_up {  
  position: absolute;
  top: 10%;
  left: 10%;

}


/* ..................................................................................................... */

/* KONIEC - Contajnerov JL alebo JL_100 a na !!! oboch eshopoch easylichg.sk aj mitochondriak.com treba VYUZIVAT UZ CONTAINER_JL !!!   */

/* ..................................................................................................... */



/* RESPONZIVNY BANNER, BEZ ZAOBLENIA ROHOV, do ktoreho vieme dat obrazok, nadpis, text aj tlacidla a meni sa na obrazovkach */


.responsive-banner_full {
  position: relative;
  margin: auto;
  width: 100%;
  max-width: 100%;
  min-height: 150px;   /* Minimum height for short content */
  max-height: 100%;
  height: auto;        /* Let height grow with content */
  overflow: hidden;
  border-radius: 0px;
  display: flex;
  flex-direction: column;
}

/* === IMAGE === */
.responsive-banner_full img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

/* === OVERLAY === */
.responsive-banner_full .overlay-content {
  position: relative;
  min-height: 150px;
  z-index: 2;
  padding: 40px 10%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;

}

    .responsive-banner_full h1 {
      font-size: 18pt;
      color: black;
      margin: 0;
    }

    .responsive-banner_full p {
      font-size: 14pt;
      color: black;
      margin: 10px 0;
    }

    .responsive-banner_full .buttonred {
      background-color: #f80120;
      color: white !important;
      border: 2px solid transparent;
      border-radius: 32px; 
      padding: 12px 32px;
      font-size: 16px;
      cursor: pointer;
      text-decoration: none !important;
      transition: 0.4s ease;
    }

    .responsive-banner_full .buttonred:hover {
      background-color: #bb0101;
    }

    .responsive-banner_full .buttonblack {
      background-color: black;
      color: white !important;
      border: 2px solid transparent;
      border-radius: 32px; 
      padding: 12px 32px;
      font-size: 16px;
      cursor: pointer;
      text-decoration: none !important;
      transition: 0.4s ease;
    }

    .responsive-banner_full .buttonblack:hover {
      background-color: gray !important;
      color: #ffffff !important;
    }



    @media (max-width: 600px) {
      .responsive-banner_full h1 {
        font-size: 16pt;
      }

      .responsive-banner_full p {
        font-size: 12pt;
      }

      .responsive-banner_full .buttonred {
        padding: 10px 24px;
        font-size: 14px;
      }

      .responsive-banner_full .buttonblack {
        padding: 10px 24px;
        font-size: 14px;
      }
    }


/* Wrapper around buttons to align them in a row- CSS nastavenie pre tlacidla, aby boli vedla seba a v strede*/

.responsive-banner_full .button-row {
  display: flex;
  gap: 16px; /* spacing between buttons */
  flex-wrap: wrap; /* optional: stack on very small screens */
  justify-content: center; /* center them horizontally */
  margin-top: 15px;
}



/* RESPONZIVNY BANNER, !!!ZAOBLENE ROHY!!!, do ktoreho vieme dat obrazok, nadpis, text aj tlacidla a meni sa na obrazovkach */


.responsive-banner_full_round {
  position: relative;
  margin: auto;
  width: 100%;
  max-width: 100%;
  min-height: 150px;   /* Minimum height for short content */
  max-height: 100%;
  height: auto;        /* Let height grow with content */
  overflow: hidden;
  border-radius: 30px;
  display: flex;
  flex-direction: column;
}

/* === IMAGE === */
.responsive-banner_full_round img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

/* === OVERLAY === */
.responsive-banner_full_round .overlay-content {
  position: relative;
  min-height: 150px;
  z-index: 2;
  padding: 40px 10%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;

}



/* === TEXT === */
.responsive-banner_full_round h1 {
  font-size: 18pt;
  color: black;
  margin: 0;
}

.responsive-banner_full_round p {
  font-size: 12pt;
  color: black;
  margin: 10px 0;
}

/* === BUTTONS === */
.responsive-banner_full_round .button-row_center {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 15px;
}

.responsive-banner_full_round .buttonred,
.responsive-banner_full_round .buttonblack {
  border-radius: 32px;
  padding: 12px 32px;
  font-size: 16px;
  cursor: pointer;
  text-decoration: none !important;
  transition: 0.4s ease;
  display: inline-block;
  text-align: center;
  border: 2px solid transparent;
}

.buttonred {
  background-color: #f80120;
  color: white !important;
}

.buttonred:hover {
  background-color: #bb0101;
}

.buttonblack {
  background-color: black !important;
  color: white !important;
}

.buttonblack:hover {
  background-color: gray !important;
  color: #ffffff !important;
}

/* === RESPONSIVE === */
@media (max-width: 600px) {
  .responsive-banner_full_round h1 {
    font-size: 16pt;
  }

  .responsive-banner_full_round p {
    font-size: 11pt;
  }

  .responsive-banner_full_round .buttonred,
  .responsive-banner_full_round .buttonblack {
    padding: 10px 24px;
    font-size: 13px;
  }

  .responsive-banner_full_round .banner-icon {
    width: 30px;
    margin-bottom: 10px;
  }
}





/* Wrapper around buttons to align them in a row- CSS nastavenie pre tlacidla, aby boli vedla seba a v strede*/

.responsive-banner_full_round .button-row_center {
  display: flex;
  gap: 16px; /* spacing between buttons */
  flex-wrap: wrap; /* optional: stack on very small screens */
  justify-content: center; /* center them horizontally */
  margin-top: 15px;
}



/* .......................................................................................................... */

/* Toto je tip containera, ktory prepise temu a spravi ho siroky na celu obrazovku   */

/* .......................................................................................................... */

.fullscreen-override_container {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  position: relative;
  left: 0;
  right: 0;
  max-width: none;
  border-radius: 0; /* optional: remove radius to flush edges */
}



/* .......................................................................................................... */

/* ODTIALTO IDE RESPONZIVNY BANNER, KTORY je na mobile POD SEBA a na NTB VEDLA SEBA   */

/* .......................................................................................................... */


  /* === BANNER CONTAINER === */
    .responsive-banner_split {
      position: relative;
      width: 100%;
      min-height: 400px;
      background-image: url('https://www.mitochondriak.com/user/documents/upload/Bannery_contajner/About_us.jpg');
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      border-radius: 0px;
      display: flex;
      align-items: stretch;
    }

    /* === LOGO IN TOP-LEFT CORNER === */
    .banner-logo {
      position: absolute;
      top: 20px;
      left: 20px;
      height: 40px;
      z-index: 5;
      pointer-events: none;
    }

    @media (max-width: 768px) {
      .banner-logo {
        top: 15px;
        left: 15px;
        height: 30px;
      }
    }

    /* === OVERLAY CONTENT === */
    .responsive-banner_split .overlay-content {
      background: rgba(0, 0, 0, 0.4);
      padding: 20px 10%;
      display: flex;
      flex-direction: row;
      justify-content: space-between;
      align-items: center;
      gap: 30px;
      width: 100%;
      flex-wrap: wrap;
      color: white;
      border-radius: 0px;
    }

    /* === COLUMNS === */
    .responsive-banner_split .column {
      flex: 1;
    }

    .responsive-banner_split .left h1 {
      font-size: 22pt;
      margin: 0;
      color: white;
    }

    .responsive-banner_split .right p {
      font-size: 14pt;
      margin: 0 0 12px 0;
      color: white;
    }

    /* === BUTTON ROW === */
    .responsive-banner_split .button-row {
      display: flex;
      gap: 16px;
      flex-wrap: wrap;
    }

    /* === BUTTON STYLES === */
    .buttonred,
    .buttonwhite,
    .buttonblack {
  box-sizing: border-box;
  padding: 12px 5vw; /* Responsive horizontal padding */
  font-size: 16px;
  border-radius: 32px;
  text-decoration: none !important;
  transition: 0.4s ease;
  cursor: pointer;
  display: inline-block;
  min-width: 120px;
  max-width: 100%;
  text-align: center;
  white-space: nowrap;
}

/* Red button */
.buttonred {
  background-color: #f80120;
  color: white !important;
  border: 2px solid transparent;
}

.buttonred:hover {
  background-color: #bb0101;
}

/* White button */
.buttonwhite {
  background-color: white !important;
  color: black !important;
  border: 2px solid transparent;
}

.buttonwhite:hover {
  background-color: black !important;
  color: white !important;
}

/* White black */
.buttonblack {
  background-color: black !important;
  color: white !important;
  border: 2px solid transparent;
}

.buttonblack:hover {
  background-color: grey !important;
  color: white !important;
}



@media (max-width: 600px) {
  .buttonred,
  .buttonwhite {
    padding: 10px 8vw;
    font-size: 14px;
  }
}

    /* === MOBILE RESPONSIVE === */
    @media (max-width: 768px) {
      .responsive-banner_split .overlay-content {
        flex-direction: column;
        text-align: center;
        padding: 30px 5%;
      }

      .responsive-banner_split .left,
      .responsive-banner_split .right {
        width: 100%;
      }

      .responsive-banner_split .left h1 {
        font-size: 18pt;
      }

      .responsive-banner_split .right p {
        font-size: 12pt;
      }

      .buttonred,
      .buttonwhite,
      .buttonblack {
        font-size: 14px;
        padding: 10px 24px;
      }

      .button-row {
        justify-content: center;
      }
    }


/* .......................................................................................................... */

/* KONIEC - RESPONZIVNY BANNER, KTORY je na mobile POD SEBA a na NTB VEDLA SEBA   */

/* ODTIALTO IDE - RESPONZIVNY BANNER PRE CATEGORY, KTORY je na mobile POD SEBA a na NTB VEDLA SEBA, a je na celu sirku OBRAZOVKY 100vW   */

/* .......................................................................................................... */




/* === SCHOVAM na SHOPTET-e NADPIS KATEGORIE  === */
.category-header,
.breadcrumb,
.page-heading,
.category-title {
  display: none !important;
}


.responsive-banner_split_category_textvlavo {
  position: relative;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  overflow: hidden;
  display: block;
  border-radius: 0 !important;
}

/* === IMAGE === */
.image-wrapper_category_textvlavo {
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: 0 !important;
}

.banner-image_category_textvlavo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 0 !important;
}

/* === OVERLAY CONTENT === */
.overlay-content_category_textvlavo {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  padding: 40px 10%;
  flex-wrap: wrap;
  color: black;
  background: none;
}

/* === COLUMNS === */
.overlay-content_category_textvlavo .column_category_textvlavo {
  flex: 1;
}

.overlay-content_category_textvlavo .left {
  flex-basis: 70%;
  max-width: 70%;
  text-align: left;
}

.overlay-content_category_textvlavo .left h1,
.overlay-content_category_textvlavo .left h2,
.overlay-content_category_textvlavo .left p {
  color: black;
  margin: 0 0 15px 0;
}

.overlay-content_category_textvlavo .left h1 {
  font-size: 20pt;
}

.overlay-content_category_textvlavo .left h2 {
  font-size: 18pt;
}

.overlay-content_category_textvlavo .left p {
  font-size: 12pt;
  max-width: 600px;
}

/* === BUTTONS === */
.button-row_category_textvlavo {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}


/* === IKONKA ZOBRAZENA V TLACIDLACH === */

.buttonCATEGORYred .button-icon {
  height: 28px;
  width: auto;
  margin-right: 8px;
  vertical-align: middle;
}

.buttonCATEGORYwhite .button-icon {
  height: 28px;
  width: auto;
  margin-right: 8px;
  vertical-align: middle;
}

.buttonCATEGORYblack .button-icon {
  height: 28px;
  width: auto;
  margin-right: 8px;
  vertical-align: middle;
}



.buttonCATEGORYred,
.buttonCATEGORYwhite,
.buttonCATEGORYblack {
  box-sizing: border-box;
  padding: 12px 5vw;
  font-size: 16px;
  border-radius: 32px;
  text-decoration: none !important;
  transition: 0.4s ease;
  cursor: pointer;
  display: inline-block;
  min-width: 120px;
  max-width: 100%;
  text-align: center;
  white-space: nowrap;
}

.buttonCATEGORYred {
  background-color: #f80120;
  color: white !important;
  border: 2px solid transparent;
}

.buttonCATEGORYred:hover {
  background-color: #bb0101;
}

.buttonCATEGORYwhite {
  background-color: white !important;
  color: black !important;
  border: 2px solid transparent;
}

.buttonCATEGORYwhite:hover {
  background-color: black !important;
  color: white !important;
}

.buttonCATEGORYblack {
  background-color: black !important;
  color: white !important;
  border: 2px solid transparent;
}

.buttonCATEGORYblack:hover {
  background-color: grey !important;
  color: white !important;
}



/* === RESPONSIVE MOBILE === */
@media (max-width: 960px) and (min-width: 768px) {
  .overlay-content_category_textvlavo {
    flex-direction: column_category_textvlavo;
    text-align: left; /* ✅ ALIGNED LEFT ON MOBILE */
    align-items: flex-start;
    padding: 20px 5%;
  }

  .overlay-content_category_textvlavo .left {
    flex-basis: 100%;
    max-width: 100%;
    text-align: left;
  }

  .overlay-content_category_textvlavo .left h1 {
    font-size: 16pt;
  }

  .overlay-content_category_textvlavo .left h2 {
    font-size: 15pt;
  }

  .overlay-content_category_textvlavo .left p {
    font-size: 11pt;
  }

  .buttonCATEGORYred,
  .buttonCATEGORYwhite,
  .buttonCATEGORYblack {
    padding: 10px 8vw;
    font-size: 14px !important;
  }

  .button-row_category_textvlavo {
    justify-content: flex-start;
  }
}

@media (max-width: 767px) {
  .buttonCATEGORYred,
  .buttonCATEGORYwhite,
  .buttonCATEGORYblack {
    font-size: 12px !important;
  }

  .overlay-content_category_textvlavo .left {
    flex-basis: 100%;
    max-width: 100%;
    text-align: left;
  }

  .overlay-content_category_textvlavo .left h1 {
    font-size: 15pt;
  }

  .overlay-content_category_textvlavo .left h2 {
    font-size: 15pt;
  }

  .overlay-content_category_textvlavo .left p {
    font-size: 11pt;
  }
}



/* ..................................................................................................... */
/* ..................................................................................................... */

/* KONIEC - RESPONZIVNY BANNER pre CATEGORY na eshope   */

/* ZACIATOK ODTIALTO - pre RESPONZIVNY BANNER  pre PRODUCT GUIDE zlozeny z dvoch obrazkov a responzivny  */

/* ..................................................................................................... */
/* ..................................................................................................... */



/* === RESPONZÍVNY BANNER PRE PRODUCT GUIDE === */

/* === Pouzivame aktuálne pri Banner "floor stand a Maxi" === */


.responsive-banner_product_guide {
  position: relative;
  width: 100%;
  max-width: 100%;
  height: auto;
  max-height: 70vh;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: stretch;
  border-radius: 0;
}

.banner-inner_product_guide {
  display: flex;
  width: 100%;
  position: relative;
  flex-direction: row;
  height: auto;
}

/* === OBRÁZKY === */
.img_ntb_product_guide,
.img_mobile_product_guide {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: none;
}

.img_ntb_product_guide {
  display: block;
}

@media (max-width: 550px) {
  .img_ntb_product_guide {
    display: none;
  }
  .img_mobile_product_guide {
    display: block;
  }
}

/* === OVERLAY CONTENT === */
.overlay-content_product_guide {
  position: relative;
  z-index: 2;
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 15px 2%;
  box-sizing: border-box;
  height: 100%;
}


/* === COLUMNS === */
.column-left_product_guide {
  flex: 1;
}

.column-left_product_guide .banner-icon {
  display: block;
  height: auto;
  max-height: 300px;
  width: auto !important;
  max-width: 100%;
  margin-bottom: 20px;
  object-fit: contain;
}


.column-right_product_guide {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 10px;
}

.column-right_product_guide h1 {
  font-size: 15pt;
  color: black;
  margin: 0;
}

.column-right_product_guide p {
  font-size: 12pt;
  color: black;
  margin: 10px 0;
}

/* === BUTTONS === */
.button-row_product_guide {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 10px;
}

.buttonred_product_guide,
.buttonblack_product_guide {
  background-color: transparent;
  color: inherit !important;
  border-radius: 32px;
  padding: 12px 32px;
  font-size: 14px;
  text-decoration: none !important;
  cursor: pointer;
  transition: 0.4s ease;
  border: 2px solid transparent;
  display: inline-block;
}

.buttonred_product_guide {
  background-color: #f80120;
  color: white !important;
}

.buttonred_product_guide:hover {
  background-color: #bb0101;
}

.buttonblack_product_guide {
  background-color: black;
  color: white !important;
}

.buttonblack_product_guide:hover {
  background-color: gray !important;
  color: white !important;
}


/* === RESPONSIVE: MEDZI TABLET a MOBILE === */

@media (max-width: 960px) and (min-width: 551px) {
  .column-right_product_guide h1 {
    font-size: 13pt;
  }
  .column-right_product_guide p {
   font-size: 11pt;
  }
}


/* === RESPONSIVE: MOBILE === */
@media (max-width: 550px) {

.column-left_product_guide {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

  .column-left_product_guide .banner-icon {
    max-height: 120px;
    margin-bottom: 12px;
  }

  .responsive-banner_product_guide {
    aspect-ratio: auto;
    max-height: 80vh;
  }

  .overlay-content_product_guide {
    flex-direction: column;
    padding: 20px 8% 24px 8%;
    text-align: center;
    gap: 10px;
    height: 100%;
    justify-content: flex-end;
  }

  .column-left_product_guide,
  .column-right_product_guide {
    width: 100%;
  }

  .column-right_product_guide {
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
  }

  .column-right_product_guide h1 {
    font-size: 13pt;
  }

  .column-right_product_guide p {
    font-size: 11pt;
    margin: 5px 0;
  }

  .buttonred_product_guide,
  .buttonblack_product_guide {
    font-size: 12px;
    padding: 10px 24px;
  }

  .button-row_product_guide {
    justify-content: center;
  }
}


/* ..................................................................................................... */
/* ..................................................................................................... */

/* KONIEC - RESPONZIVNY BANNER pre PRODUCT GUIDE zlozeny z dvoch obrazkov a responzivny   */

/* ODTIALTO IDU ZAROVNANIA PRE TLACIDLA   */


/* ..................................................................................................... */
/* ..................................................................................................... */




.button-row_center,
.button-row_left,
.button-row_right {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 10px;
}

.button-row_center {
  justify-content: center !important;
}

.button-row_left {
  justify-content: flex-start !important;
}

.button-row_right {
  justify-content: flex-end !important;
}


@media (max-width: 768px) {
  .button-row_center,
  .button-row_left,
  .button-row_right {
    justify-content: center;
    gap: 12px;
  }

  .button-row_center a,
  .button-row_left a,
  .button-row_right a {
    padding: 10px 8vw;
    font-size: 14px;
  }
}


/* .............................................................................. */

/* ...... TU KONCI ZAROVNANIA PRE TLACIDLA ......  */

/* ........................................................................... */

/* =====================================================================
   09 · nadhlavicka-slider
   Čo robí:  Lišta správ nad hlavičkou so šípkami a krížikom (.site-msg, .slider-nav).
   Kde:      Každá stránka (nad hlavičkou).
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/Nadhlavicka-slider.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */

/* =========================
   JL Nadhlavicka-slider
   ========================= */

.site-msg.information {
  position: relative;
  overflow: hidden;
  padding: 0;
  max-width: 100%;
  width: 100%;
  left: 0;
  bottom: 0;
  background-color: var(--farba-pozadia-infobaru);
}

.site-msg-custom,
.site-msg {
  min-height: 0px;
  color: var(--farba-pisma-infobaru);
}

.site-msg.information .container {
  width: 100%;
  position: relative;
  padding: 10px 34px 10px 10px !important; /* malé odsadenie + priestor pre krížik */
}

.site-msg-custom,
.site-msg,
.site-msg-custom.information,
.site-msg.information {
  border-radius: 0;
}

.site-msg-custom.information .text::before,
.site-msg.information .text::before {
  content: " ";
}

.site-msg-custom.information .text a,
.site-msg.information .text a {
  color: var(--farba-pisma-infobaru);
  text-decoration: underline;
}

/* Krížik - viditeľný */
.site-msg .close {
  display: block;
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  width: 26px;
  height: 26px;
  cursor: pointer;
  opacity: 0.9;
}

.site-msg .close::before,
.site-msg .close::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 14px;
  height: 2px;
  background: var(--farba-pisma-infobaru);
  transform-origin: center;
}
.site-msg .close::before { transform: translate(-50%, -50%) rotate(45deg); }
.site-msg .close::after  { transform: translate(-50%, -50%) rotate(-45deg); }

/* Text oblasť */
.site-msg .text {
  position: relative;
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
  line-height: 1.2;
  font-size: 16px; /* 🔴 DESKTOP / NTB */
}

/* Slider pás (JS ho vytvorí a vloží) */
.site-msg .announcement-slider {
  display: flex;
  width: 100%;
  transition: transform 450ms ease;
  will-change: transform;
}

.site-msg .announcement-slide {
  flex: 0 0 100%;
  width: 100%;
  text-align: center;
  padding: 0; /* nech to nie je vysoké */
  min-height: 0px;
}



.site-msg .announcement-slide a {
  display: inline;
  white-space: nowrap;
}

/* Navigačné šípky - nechávame vypnuté (čistý look) */
.slider-nav,
.slider-prev,
.slider-next {
  display: none !important;
}

@media (max-width: 767px) {
  .site-msg.information {
    min-height: 0px;
  }

  .site-msg.information .container {
    padding: 10px 20px 10px 2px !important; /* stále malé, ale nie na tesno, druhe cislo je odsadenie zlava a 4. cislo odsadenie zprava */
  }

  .site-msg .text {
    font-size: 12px; /* 🔴 MOBILE */
    line-height: 1.25;
    white-space: normal;     /* 🔧 dôležité: na mobile povol zalomenie */

  }

  /* 🔧 dôležité: link nech sa môže zalomiť */
  .site-msg .announcement-slide a {
    display: inline;
    white-space: nowrap;
  }

  /* poistka proti presvitaniu */
  .site-msg .announcement-slide {
    overflow: hidden;
  }

  .site-msg-custom.information.chat-visible,
  .site-msg.information.chat-visible {
    max-width: 100%;
  }
}

/* ........................................................... */
/* FIX: odstráni roztiahnutie výšky infobaru na tomto eshope */
.site-msg.information .text,
.site-msg-custom.information .text {
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* voliteľné: zjednoť ľavé/pravé odsadenie, aby nebolo obrovské */
.site-msg.information .text,
.site-msg-custom.information .text {
  padding-left: 12px !important;
  padding-right: 12px !important; /* nech ostane miesto na krížik */
}

/* =====================================================================
   10 · hero-stvorica-mobil
   Čo robí:  Mobilný/tabletový pás 4 dlaždíc (.jl-hero-quad), na počítači skrytý.
   Kde:      Titulka na mobile a tablete (ak je banner s .jl-hero-quad zapnutý).
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/JL_4_video_corousel_homepage.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */

/* ================= JL HERO – MOBILE/TABLET môj banner-corrousel ================= */

/* mimo mobilu/tabletu skryť (desktop vieme pridať neskôr) */
.jl-hero-quad { display: none; }

/* ------- ZÁKLAD do ~1024px ------- */
@media (max-width: 1024px) {

  .jl-hero-quad {
    display: block;
    position: relative;
    width: 100%;
    padding: 16px 16px 20px 16px; /* T R B L */
    box-sizing: border-box;
    z-index: 2;
  }

  /* pás s dlaždicami (default – mobil PORTRÉT: 1 + 15%) */
  .jl-hero-quad .jl-hero-quad-inner{
    --edge: 22px;
    --gap: 10px;
    --cols: 1.15;   /* 1 + 15% */
    --tile-w: calc(
      (100% - (2 * var(--edge)) - ((var(--cols) - 1) * var(--gap)))
      / var(--cols)
    );

    display: flex;
    gap: var(--gap);
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    align-items: stretch;
    box-sizing: border-box;
    padding: 0 var(--edge);

    animation: jl-hero-nudge 1200ms ease 600ms 1 both;
  }

  @media (prefers-reduced-motion: reduce) {
    .jl-hero-quad .jl-hero-quad-inner { animation: none !important; }
  }

  @keyframes jl-hero-nudge {
    0%   { transform: translateX(0); }
    25%  { transform: translateX(-3%); }
    60%  { transform: translateX(0); }
    85%  { transform: translateX(-1.5%); }
    100% { transform: translateX(0); }
  }

  /* scrollbar hint */
  .jl-hero-quad .jl-hero-quad-inner::-webkit-scrollbar{ height: 6px; }
  .jl-hero-quad .jl-hero-quad-inner::-webkit-scrollbar-track{ background: transparent; }
  .jl-hero-quad .jl-hero-quad-inner::-webkit-scrollbar-thumb{
    background: rgba(255,255,255,.45);
    border-radius: 999px;
  }

  /* jedna karta – NOVÝ POMER 3:4 */
  .jl-hero-quad .jl-hero-tile{
    position: relative;
    flex: 0 0 var(--tile-w) !important;
    width: var(--tile-w) !important;
  }

  .jl-hero-quad .jl-hero-tile{
    aspect-ratio: 3 / 4; /* ← UPRAVENÉ Z 9/16 */
    border-radius: 16px;
    overflow: hidden;
    background: #000;
    color: #fff;
    text-decoration: none;
    scroll-snap-align: start;
    box-sizing: border-box;
  }

  .jl-hero-media{ position: absolute; inset: 0; z-index: 0; }

  .jl-hero-img,
  .jl-hero-video,
  .jl-hero-tile img,
  .jl-hero-tile video{
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
    max-width: none !important;
    max-height: none !important;
  }

  .jl-hero-overlay{
    position: absolute; inset: 0;
    background: rgba(0,0,0,0.10);
    z-index: 1;
  }

  .jl-hero-text{
    position: absolute;
    left: 50%; top: 10px;
    transform: translateX(-50%);
    width: 90%;
    z-index: 2;
    text-align: center;
  }

  .jl-hero-text h2,
  .jl-hero-text p{
    margin: 0 0 4px;
    color: #fff !important;
    text-shadow: 0 2px 4px rgba(0,0,0,.9);
  }

  .jl-hero-text h2{ font-size: 16px; font-weight: 700; }
  .jl-hero-text p{  font-size: 13px; font-weight: 400; }

  .jl-hero-btn{
    position: absolute;
    left: 50%; bottom: 10px;
    transform: translateX(-50%);
    display: block;
    width: 80%;
    padding: 12px 0;
    border-radius: 999px;
    background: #ff2a2a;
    color: #fff;
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    z-index: 3;
    box-shadow: 0 6px 14px rgba(0,0,0,.45), inset 0 -2px 0 rgba(0,0,0,.15);
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
  }

  .jl-hero-tile:hover .jl-hero-btn{
    transform: translateX(-50%) translateY(-2px);
    box-shadow: 0 10px 18px rgba(0,0,0,.55), inset 0 -2px 0 rgba(0,0,0,.18);
    background: #ff3b30;
  }

  .jl-hero-tile.jl-xmas{ background:#000; }

  .jl-xmas-img{
    position: absolute !important; inset: 0 !important;
    width: 100% !important; height: 100% !important; object-fit: cover !important;
    z-index: 0; transform-origin: center;
    animation: jl-x-ken 12s ease-in-out infinite alternate;
    filter: saturate(1.05) contrast(1.05);
  }

  @keyframes jl-x-ken{
    0%   { transform: scale(1.02) translate3d(0,0,0); }
    100% { transform: scale(1.08) translate3d(0,-3%,0); }
  }
}

/* ------- LANDSCAPE + TABLET ------- */
@media (max-width: 1024px) and (orientation: landscape) {
  .jl-hero-quad .jl-hero-quad-inner{ --cols: 2.5 !important; }
  .jl-hero-quad .jl-hero-tile{
    flex-basis: var(--tile-w) !important;
    width: var(--tile-w) !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .jl-hero-quad .jl-hero-quad-inner{ --cols: 2.5 !important; }
  .jl-hero-quad .jl-hero-tile{
    flex-basis: var(--tile-w) !important;
    width: var(--tile-w) !important;
  }
}

/* ------- PORTRÉT – TVRDÝ OVERRIDE ------- */
@media (max-width: 575px) and (orientation: portrait) {
  .jl-hero-quad .jl-hero-quad-inner{ --cols: 1.15 !important; }

  /* fallback – 1 + 15% */
  .jl-hero-quad .jl-hero-tile{
    flex: 0 0 86.9565% !important;
    width: 86.9565% !important;
  }
}

/* =====================================================================
   11 · express-checkout
   Čo robí:  Expresné platobné tlačidlá vedľa „Do košíka“ (počítač vedľa seba, mobil pod sebou).
   Kde:      Detail produktu.
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/JL_Express_Checkout_Button.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */

/* =========================
   Express checkout button - styling + layout
   ========================= */
.add-to-cart__buttons-wrapper.el-has-express{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}

/* desktop vedľa seba, mobile pod seba */
@media (max-width: 767px){
  .add-to-cart__buttons-wrapper.el-has-express{
    flex-direction:column;
    align-items:stretch;
  }
  .add-to-cart__buttons-wrapper.el-has-express > .btn{
    width:100%;
  }
}

/* EXPRESS button - NECHÁVAME natívne radius/height/font, len prefarbíme */
button.btn.btn-secondary.express-checkout-button.js-express-checkout-open{
  background:#111 !important;
  border-color:#111 !important;
  color:#fff !important;

  /* nič nemeníme na padding/radius, aby ostal identický ako predtým */
}

/* hover: šedý */
button.btn.btn-secondary.express-checkout-button.js-express-checkout-open:hover,
button.btn.btn-secondary.express-checkout-button.js-express-checkout-open:focus{
  background:#5b5b5b !important;
  border-color:#5b5b5b !important;
  color:#fff !important;
}

/* ikonka vpravo - ako košík na hlavnom CTA */
button.btn.btn-secondary.express-checkout-button.js-express-checkout-open{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}
button.btn.btn-secondary.express-checkout-button.js-express-checkout-open .el-express-icn{
  order:2;               /* doprava */
  margin:0;
  vertical-align: -1px;
}

/* =====================================================================
   12 · bannery-konkurencne-vyhody
   Čo robí:  Pás konkurenčných výhod pod hlavným karuselom (.benefitBanner, slider na mobile).
   Kde:      Titulka.
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/JL_Bannery_konkurencne_vyhody.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */

/* =========================
   Benefit bannery - slider (Konkurenčné výhody)
   Cieľ:
   - Shoptet natívny layout vo vnútri bannera (ikonka/text nech rieši Shoptet)
   - my riešime len: slider pás + šírky položiek + typografia
   - bez šípok
   ========================= */

/* 1) Premenné + typografia */
.benefitBanner.position--benefitHomepage{
  --bb-gap: 6px;   /* medzera medzi položkami (ak chceš, daj 6-12px) */
  --bb-cols: 5;     /* desktop/NTB */
  --bb-pad-y: 0px;  /* nevnucujeme padding - nech je natívny */
  --bb-pad-x: 0px;

  /* NTB */
  --bb-title-size: 15px;
  --bb-text-size: 12px;
}

/* Tablet/laptop */
@media (max-width: 1024px){
  .benefitBanner.position--benefitHomepage{
    --bb-cols: 3;
    --bb-title-size: 14px;
    --bb-text-size: 12px;
  }
}

/* Mobil */
@media (max-width: 640px){
  .benefitBanner.position--benefitHomepage{
    --bb-cols: 2;
    --bb-gap: 1px !important; /* Medzera medzi bunkami */

    --bb-title-size: 12px;
    --bb-text-size: 11px;
  }
}

/* Nadpis a text - len veľkosť + weight (bez layout zásahov) */
.benefitBanner.position--benefitHomepage .benefitBanner__title{
  font-weight: 800;
  font-size: var(--bb-title-size);
}
.benefitBanner.position--benefitHomepage .benefitBanner__data{
  font-size: var(--bb-text-size);
}

/* 2) Slider pás - len scroll mechanika */
.benefitBanner.position--benefitHomepage{
  display: flex;
  flex-wrap: nowrap;
  gap: var(--bb-gap);

  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;

  scroll-snap-type: x mandatory;
  scroll-padding-left: var(--bb-pad-x);

  /* nič nenútime na padding/margin, nech ostane natív */
}

/* Nechávam natívny  scrollbar (môžeš zmazať, len ho robím tenkým) */

.benefitBanner.position--benefitHomepage{ scrollbar-width: thin; }



/* 3) Položka - šírka podľa effective počtu */
.benefitBanner.position--benefitHomepage .benefitBanner__item{
  flex: 0 0 calc(
    (100% - (var(--bb-cols-effective, var(--bb-cols)) - 1) * var(--bb-gap))
    / var(--bb-cols-effective, var(--bb-cols))
  );
  scroll-snap-align: start;

  /* žiadne margin/padding prepisy - natív */
}

/* Na tablete/mobile spravime zobrazenie 3 bannerov + 20% z dalsieho */
@media (max-width: 1024px){
  .benefitBanner.position--benefitHomepage .benefitBanner__item{
    flex: 0 0 calc(
      (82% - (var(--bb-cols-effective, var(--bb-cols)) - 1) * var(--bb-gap))
      / var(--bb-cols-effective, var(--bb-cols))
    );
  }
}


/* 4) Wrapper - nech existuje pre prípad, že ho Shoptet už má */
.bbSliderWrap{
  position: relative;
}

/* 5) Šípky úplne vypnúť (aj keby niekde ostali zo starej verzie) */
.bbNavBtn{
  display: none !important;
}

/* Fade okraje vypnúť (tie boli len kvôli šípkam) */
.bbSliderWrap::before,
.bbSliderWrap::after{
  display: none !important;
}

/* =====================================================================
   13 · certifikaty-widget
   Čo robí:  Widget certifikátov (#jl-certificates-widget, .jl-cert-…). JS widgetu je vložený priamo na stránkach certifikátov.
   Kde:      Stránky Certifikácia / Certifikace / Certyfikacja / Certificate.
   Trhy:     všetky Shoptet e-shopy
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/JL-certificates-widget.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */

#jl-certificates-widget {
  --jl-bg: #ffffff;
  --jl-text: #111111;
  --jl-muted: #666666;
  --jl-border: #e5e5e5;
  --jl-soft: #f7f7f7;
  --jl-accent: #111111;
  --jl-accent-text: #ffffff;
  --jl-radius: 14px;
  --jl-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);

  font-family: inherit;
  color: var(--jl-text);
  max-width: 920px;
  margin: 0 auto;
}

.jl-cert-wrap {
  background: var(--jl-bg);
  border: 1px solid var(--jl-border);
  border-radius: 20px;
  padding: 22px;
  box-shadow: var(--jl-shadow);
}

.jl-cert-head {
  margin-bottom: 18px;
}

.jl-cert-title {
  margin: 0 0 8px;
  font-size: 30px;
  line-height: 1.15;
  font-weight: 700;
  color: var(--jl-text);
}

.jl-cert-subtitle {
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
  color: var(--jl-muted);
}

.jl-cert-controls {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.jl-cert-group-label {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 600;
  color: var(--jl-text);
}

.jl-lang-top {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 8px;
}

.jl-lang-switch {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.jl-lang-switch--subtle {
  gap: 6px;
}

.jl-lang-btn {
  appearance: none;
  border: 1px solid var(--jl-border);
  background: #fff;
  color: var(--jl-text);
  border-radius: 999px;
  padding: 10px 14px;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  transition: all 0.2s ease;
  min-height: 42px;
}

.jl-lang-btn:hover {
  border-color: #cfcfcf;
  transform: translateY(-1px);
}

.jl-lang-btn.is-active {
  background: var(--jl-accent);
  color: var(--jl-accent-text);
  border-color: var(--jl-accent);
}

.jl-lang-btn--subtle {
  min-height: 30px;
  padding: 6px 10px;
  font-size: 12px;
  border-radius: 999px;
  background: transparent;
  color: var(--jl-muted);
  border: 1px solid transparent;
}

.jl-lang-btn--subtle:hover {
  background: var(--jl-soft);
  border-color: var(--jl-border);
  transform: none;
}

.jl-lang-btn--subtle.is-active {
  background: var(--jl-soft);
  color: var(--jl-text);
  border-color: var(--jl-border);
}

.jl-lang-select-wrap {
  display: none;
}

.jl-lang-select {
  min-height: 32px;
  height: 32px;
  padding: 0 28px 0 10px;
  font-size: 12px;
  line-height: 1;
  border: 1px solid var(--jl-border);
  border-radius: 999px;
  background: #fff;
  color: var(--jl-muted);
  max-width: 78px;
  width: 78px;
  box-sizing: border-box;
}

.jl-select-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

.jl-select-row--tight {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: end;
}

.jl-select {
  width: 100%;
  min-height: 48px;
  border: 1px solid var(--jl-border);
  border-radius: 12px;
  background: #fff;
  color: var(--jl-text);
  font-size: 15px;
  padding: 0 14px;
  box-sizing: border-box;
}

.jl-open-btn {
  appearance: none;
  border: 0;
  min-height: 48px;
  border-radius: 12px;
  background: var(--jl-accent);
  color: var(--jl-accent-text);
  font-size: 15px;
  font-weight: 600;
  padding: 0 18px;
  cursor: pointer;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.jl-open-btn:hover {
  opacity: 0.92;
  transform: translateY(-1px);
}

.jl-open-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
}

.jl-open-btn--tight {
  min-width: 118px;
  padding: 0 14px;
}

.jl-cert-message {
  margin-top: 14px;
  min-height: 22px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--jl-muted);
}

.jl-cert-message.is-error {
  color: #b42318;
}

.jl-cert-message.is-info {
  color: #555;
}

@media (min-width: 720px) {
  .jl-select-row {
    grid-template-columns: 1fr auto;
    align-items: end;
  }

  .jl-open-btn {
    min-width: 140px;
  }
}

@media (max-width: 719px) {
  .jl-lang-switch--subtle {
    display: none;
  }

  .jl-lang-select-wrap {
    display: block;
  }

  .jl-lang-top {
    justify-content: flex-end;
    margin-bottom: 6px;
  }

  .jl-select-row--tight {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .jl-open-btn--tight {
    width: 100%;
    min-width: 0;
  }

  .jl-lang-select {
    width: 78px;
    max-width: 78px;
  }
}

@media (max-width: 479px) {
  .jl-cert-wrap {
    padding: 16px;
    border-radius: 16px;
  }

  .jl-cert-title {
    font-size: 24px;
  }
}

/* =====================================================================
   16 · recenzie-en
   Čo robí:  Slider recenzií v angličtine (.custom-en-reviews…).
   Kde:      COM.
   Trhy:     EN
   Pôvodne:  /user/documents/upload/Gaelta/review-css1.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */


.review-block {
  padding: 1rem;
  border-radius: 8px;
  font-size: 16px;
  line-height: 1.5;
  margin: 10px 20px;
}
.stars {
  color: #f4b400;
  font-size: 18px;
}
.review-source {
  font-size: 0.9rem;
  color: #777;
  margin-top: 0.3rem;
}
.custom-review-slider {
  border-radius: 20px;
  border: 2px solid var(--color-tertiary);
  background: white;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.08);
}

/* Tvoje šípky */
.swiper-arrow-content {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 35px;
  width: 35px;
  background-color: white;
  border-radius: 100%;
  cursor: pointer;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.09);
  transition: background-color 250ms ease-out;
}
@media (min-width: 768px) {
  .swiper-arrow-content {
    height: 50px;
    width: 50px;
  }
}
.swiper-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}

.stars {
  display: inline-block;
  font-size: 18px;
  color: #f0b820;
  width: auto;
}

.stars .star.star-on::before,
.stars .star.star-half::before {
  color: #f0b820;
  content: '\e91f';
  font-family: 'apollo' !important; 
}

.swiper-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}

.swiper-arrow-prev {
  left: -5px;
}

.swiper-arrow-next {
  right: -5px;
}
.custom-en-reviews {
  max-width: 1000px;
  margin: 40px auto;
  padding: 20px;
  border-radius: 10px;
}

.custom-en-reviews h2.store-rating-title {
  font-size: 1.8em;
  text-align: center;
  margin-bottom: 10px;
}

.custom-en-reviews h2.store-rating-title a {
  text-decoration: none;
  color: #000;
}

.custom-en-reviews .rate-average-inner {
  text-align: center;
  margin-bottom: 30px;
}

.custom-en-reviews .rate-average-inner .rate-average {
  font-size: 2em;
  font-weight: bold;
  margin-right: 10px;
}

.custom-en-reviews .rate-star-wrap .stars-label {
  color: #555;
  font-size: 0.9em;
}

.custom-en-reviews .stars .star::before {
  font-family: 'apollo' !important;
  content: '\e91f';
  color: #f0b820;
  font-size: 18px;
  margin-right: 2px;
}

.custom-en-reviews .reviews-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  margin: 20px;
}

@media (min-width: 768px) {
  .custom-en-reviews .reviews-grid {
    grid-template-columns: 1fr 1fr;
  }
}

.custom-en-reviews .review-item {
  padding: 20px;
  border: 1px solid #ddd;
  border-radius: 8px;
  background: #fff;
}

.custom-en-reviews .review-item strong {
  font-size: 1.1em;
}

.custom-en-reviews .review-item .review-source {
  font-size: 0.9em;
  color: #666;
}

/* Button izolovaný pre tento blok */
.custom-en-reviews .shop-stat-all {
  text-align: center;
  margin-top: 30px;
}

.custom-en-reviews .shop-stat-all a {
  padding: 10px 20px;
  transition: 300ms;
  background-color: var(--color-secondary);
  color: #fff;
  border-color: var(--color-secondary);
  min-height: 50px;
  display: flex !important;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  width: fit-content;
  margin: auto;
  text-decoration: none;
  font-size: 16px;
}

@media (min-width: 768px) {
  .custom-en-reviews .btn.btn-conversion,
  .custom-en-reviews a.btn.btn-conversion {
    font-size: 18px;
    min-height: 50px;
    padding: 10px 20px;
  }
}

@media (min-width: 370px) {
  .custom-en-reviews .btn.btn-conversion,
  .custom-en-reviews a.btn.btn-conversion {
    font-size: 18px;
  }
}

@media (min-width: 1440px) {
    .rate-star-wrap .stars {
        height: 20px;
    }
}

.rating-more-btn {
    bottom: -20px;

}

/* =====================================================================
   17 · dm-flex-en
   Čo robí:  Stĺpce .dm-flex (COM verzia).
   Kde:      COM – popisy produktov.
   Trhy:     EN
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/dm_flex.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */


/* Nastavenie dm.flex */

.dm-flex {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    max-width: 100%;
    margin: 15px 0;
    align-items: center;
}

.dm-flex img {
    margin: auto;
    display: block;
}

.dm-flex .obrazek {
    text-align: center;
}

@media (min-width: 700px) {
    .dm-flex>div:nth-child(odd) {
        padding-right: 15px;
    }

    .dm-flex>div:nth-child(even) {
        padding-left: 15px;
    }


    .dm-flex .fl50 {
        width: calc(100% / 2);
    }

    .dm-flex .fl75 {
        width: calc(100% / 4 * 3);
    }
   .dm-flex .fl60 {
        width: calc(100% / 10 * 6);
    }
   .dm-flex .fl40 {
        width: calc(100% / 10 * 4);
    }
   .dm-flex .fl33 {
        width: calc(100% / 100 * 33);
    }
   .dm-flex .fl30 {
        width: calc(100% / 100 * 30);
    }

   .dm-flex .fl28 {
        width: calc(100% / 100 * 28);
    }

   .dm-flex .fl25 {
        width: calc(100% / 4);
    }
   .dm-flex .fl20 {
        width: calc(100% / 5);
    }

    .dm-flex>div {
        margin: 10px 0;
    }

    .ikonka {
        width: calc(100% / 6);
    }

    .p-short-description .ikonka {
        width: calc(100% / 4);
    }
    
    .threeicons .ikonka {
        width: calc(100% / 3);
    }

    .fouricons .ikonka {
        width: calc(100% / 4);
    }

    .fouricons .ikonka:nth-child(4n) {
        padding-right: 0;
        width: calc(100% / 4 - 10px);
    }

    .fouricons .ikonka:nth-child(4n+1) {
        padding-left: 0;
        width: calc(100% / 4 - 10px);
    }
}

.dm-flex .fl100 {
    width: 100%;
    padding: 0 !important;
}

@media (max-width: 992px) {
    .threeicons .ikonka {
        width: calc(100% / 1);
        padding-left: 0;
        padding-right: 0;
    }

    .fouricons .ikonka {
        width: calc(100% / 2);
    }

    .fouricons .ikonka:nth-child(odd) {
        padding-left: 0;
    }

    .fouricons .ikonka:nth-child(even) {
        padding-right: 0;
    }

    .dm-flex>div {
        width: 100%;
        padding: 20px 0;
        margin: 0;
    }

    .dm-flex>div.obrazek {
        order: -10;
    }

    .ikonka {
        width: calc(100% / 3);
    }
}

.dm-flex h1,
.dm-flex h2,
.dm-flex h3,
.dm-flex h4,
.dm-flex h5,
.dm-flex h6 {
    margin-top: 0 !important;
}

/* =====================================================================
   18 · ikonky-popup-en
   Čo robí:  Ikonky v popise ako banner (COM verzia súboru 14).
   Kde:      COM – popisy produktov.
   Trhy:     EN
   Pôvodne:  /user/documents/upload/JL_HTML_upravy/Ikonky_popup.css (Shoptet, Editor HTML kódu – hlavička; presunuté sem 25. 10. 2026)
   Úprava:   zmeňte tento súbor na GitHube → web sa do ~5 min aktualizuje sám (bez ?v=).
   ===================================================================== */


/* Nastavenie pre IKONKY v PopUp ako banner */

.dm-flex {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    margin: 15px 0;
    align-items: center;
}

.dm-flex img {
    margin: auto;
    display: block;
}

.dm-flex .obrazek {
    text-align: center;
}

@media (min-width: 992px) {
    .dm-flex>div:nth-child(odd) {
        padding-right: 15px;
    }

    .dm-flex>div:nth-child(even) {
        padding-left: 15px;
    }

    .dm-flex .fl50 {
        width: calc(100% / 2);
    }

    .dm-flex .fl25 {
        width: calc(100% / 4);
    }

    .dm-flex .fl75 {
        width: calc(100% / 4 * 3);
    }

    .dm-flex>div {
        margin: 10px 0;
    }

    .ikonka {
        width: calc(100% / 6);
    }

    .p-short-description .ikonka {
        width: calc(100% / 4);
    }
    
    .threeicons .ikonka {
        width: calc(100% / 3);
    }

    .fouricons .ikonka {
        width: calc(100% / 4);
    }

    .fouricons .ikonka:nth-child(4n) {
        padding-right: 0;
        width: calc(100% / 4 - 10px);
    }

    .fouricons .ikonka:nth-child(4n+1) {
        padding-left: 0;
        width: calc(100% / 4 - 10px);
    }
}

.dm-flex .fl100 {
    width: 100%;
    padding: 0 !important;
}

@media (max-width: 992px) {
    .threeicons .ikonka {
        width: calc(100% / 1);
        padding-left: 0;
        padding-right: 0;
    }

    .fouricons .ikonka {
        width: calc(100% / 2);
    }

    .fouricons .ikonka:nth-child(odd) {
        padding-left: 0;
    }

    .fouricons .ikonka:nth-child(even) {
        padding-right: 0;
    }

    .dm-flex>div {
        width: 100%;
        padding: 20px 0;
        margin: 0;
    }

    .dm-flex>div.obrazek {
        order: -10;
    }

    .ikonka {
        width: calc(100% / 3);
    }
}

.dm-flex h1,
.dm-flex h2,
.dm-flex h3,
.dm-flex h4,
.dm-flex h5,
.dm-flex h6 {
    margin-top: 0 !important;
}

.ikonky {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    text-align: center;
    width: 100%;
}

.ikonka {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0 10px 10px 10px;
}

.ikonky img {
    height: 50px;
    object-fit: contain;
    margin-bottom: 10px;
}

.basic-description {
    padding: 0;
    width: 100%;
}

.extended-description>p {
    display: none !important;
}

.extended-description {
    width: fit-content;
    max-width: 100%;
}

aside .box-filters {
    display: none;
}

@media (max-width: 768px) {
    .type-detail .p-data-wrapper,
    .type-detail .pr-action {
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
    }

    .type-detail .p-short-description,
    .type-detail .detail-parameters  {
        order: -10;
        margin-top: 22px;
        margin-bottom: 0;
    }

    .type-detail .p-to-cart-block,
    .type-detail .pr-action {
        order: -20;
    }
    
    .type-detail .p-to-cart-block {
        margin-top: 10px;
    }
}

@media (min-width: 768px) {
    .submenu-visible .navigation-in>ul>li.ext.exp>ul,
    #navigation .menu-level-2>li {
        align-items: flex-start;
    }
}

.type-category .category-top {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
}

.type-category .category-top>h4 {
    order: 10;
}

#productsTop {
    order: 10;
}

#content .filters-wrapper > div:first-of-type, #footer .filters-wrapper > div:first-of-type {
    text-align: center;
}

.dm-flex.ico {
    align-items: unset;
}

.ikonka>span:nth-child(1) {
    margin-bottom: 10px;
}

.threeicons img,
.fouricons img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    overflow: hidden;
    aspect-ratio: 1/1;
}
