/* LIOVELA B2C V78B - mobile home slider/banner guard
 * Autor: Modyfikator stworzony przez gumis
 * Zakres: tylko strona glowna mobile: cp_imageslider/#carousel + nizsze banery CMS.
 * Nie rusza: produkt, koszyk, checkout, platnosci, header, jezyki, DB.
 */
@media (max-width: 767px) {
  body#index #carousel,
  body#index .cp_imageslider #carousel,
  body#index .cp-imageslider #carousel,
  body#index .homeslider-container #carousel {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    min-height: 0 !important;
    height: auto !important;
    box-sizing: border-box !important;
  }

  body#index #carousel .carousel-inner,
  body#index #carousel ul.carousel-inner {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  body#index #carousel li.carousel-item,
  body#index #carousel .carousel-item {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    box-sizing: border-box !important;
  }

  /* Nadpisanie starego V70: nie wolno chowac slajdu przejsciowego .next/.prev/.carousel-item-next/.carousel-item-prev,
     bo wtedy 2 i 3 zdjecie w sliderze mobile nie pojawia sie podczas zmiany. */
  body#index #carousel li.carousel-item.active,
  body#index #carousel .carousel-item.active,
  body#index #carousel li.carousel-item.next,
  body#index #carousel li.carousel-item.prev,
  body#index #carousel .carousel-item.next,
  body#index #carousel .carousel-item.prev,
  body#index #carousel li.carousel-item.carousel-item-next,
  body#index #carousel li.carousel-item.carousel-item-prev,
  body#index #carousel .carousel-item.carousel-item-next,
  body#index #carousel .carousel-item.carousel-item-prev {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  body#index #carousel li.carousel-item:not(.active):not(.next):not(.prev):not(.carousel-item-next):not(.carousel-item-prev),
  body#index #carousel .carousel-item:not(.active):not(.next):not(.prev):not(.carousel-item-next):not(.carousel-item-prev) {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  body#index #carousel figure,
  body#index #carousel .carousel-item > figure {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  body#index #carousel img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    object-fit: contain !important;
  }

  body#index #carousel figcaption.caption,
  body#index #carousel .caption {
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: auto !important;
    bottom: 14px !important;
    width: auto !important;
    max-width: calc(100% - 24px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    transform: none !important;
    z-index: 5 !important;
    box-sizing: border-box !important;
    pointer-events: none !important;
  }

  body#index #carousel .slide-text {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  body#index #carousel .slide-text > div,
  body#index #carousel .slide-text > div[style],
  body#index #carousel .slide-text div[style*="margin-top"] {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  body#index #carousel .slidertext1,
  body#index #carousel .slidertext1[style] {
    display: inline-block !important;
    max-width: 100% !important;
    padding: 6px 10px !important;
    line-height: 1.15 !important;
    font-size: 12px !important;
    white-space: normal !important;
  }

  body#index #carousel .slidertext1 span,
  body#index #carousel .slidertext1 span[style] {
    font-size: 12px !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }

  body#index #carousel .sliderbutton,
  body#index #carousel a.sliderbutton,
  body#index #carousel a.btn.sliderbutton,
  body#index #carousel .btn.btn-primary.sliderbutton {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: calc(100vw - 48px) !important;
    min-height: 34px !important;
    height: auto !important;
    padding: 8px 11px !important;
    margin: 0 !important;
    line-height: 1.15 !important;
    font-size: 11px !important;
    white-space: normal !important;
    overflow: visible !important;
    text-align: center !important;
    box-sizing: border-box !important;
    pointer-events: auto !important;
  }

  body#index #carousel .direction,
  body#index #carousel .carousel-control {
    z-index: 7 !important;
  }

  /* Nizsze banery CMS: przyciski nie moga uciekac za dol obrazka przez inline margin-top:170/200px. */
  body#index #cpcmsbanner1 .cms_content,
  body#index #cpcmsbanner2 .cms_content,
  body#index #cpcmsbanner3 .cms_content,
  body#index #cpcmsbanner4 .cms_content,
  body#index #cpcmsbanner5 .cms_content {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body#index #cpcmsbanner1 .cms_content img,
  body#index #cpcmsbanner2 .cms_content img,
  body#index #cpcmsbanner3 .cms_content img,
  body#index #cpcmsbanner4 .cms_content img,
  body#index #cpcmsbanner5 .cms_content img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }

  body#index #cpcmsbanner1 .cms-block,
  body#index #cpcmsbanner2 .cms-block,
  body#index #cpcmsbanner3 .cms-block,
  body#index #cpcmsbanner4 .cms-block,
  body#index #cpcmsbanner5 .cms-block {
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: 12px !important;
    bottom: 12px !important;
    width: auto !important;
    max-width: calc(100% - 24px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    gap: 7px !important;
    overflow: visible !important;
    transform: none !important;
    z-index: 4 !important;
    pointer-events: none !important;
    box-sizing: border-box !important;
  }

  body#index #cpcmsbanner1 .cms-block > div,
  body#index #cpcmsbanner2 .cms-block > div,
  body#index #cpcmsbanner3 .cms-block > div,
  body#index #cpcmsbanner4 .cms-block > div,
  body#index #cpcmsbanner5 .cms-block > div,
  body#index #cpcmsbanner1 .cms-block > div[style],
  body#index #cpcmsbanner2 .cms-block > div[style],
  body#index #cpcmsbanner3 .cms-block > div[style],
  body#index #cpcmsbanner4 .cms-block > div[style],
  body#index #cpcmsbanner5 .cms-block > div[style] {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  body#index #cpcmsbanner1 .offer-text1,
  body#index #cpcmsbanner2 .offer-text1,
  body#index #cpcmsbanner3 .offer-text1,
  body#index #cpcmsbanner4 .offer-text1,
  body#index #cpcmsbanner5 .offer-text1 {
    display: inline-block !important;
    max-width: 100% !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }

  body#index #cpcmsbanner1 .offer-text2,
  body#index #cpcmsbanner2 .offer-text2,
  body#index #cpcmsbanner3 .offer-text2,
  body#index #cpcmsbanner4 .offer-text2,
  body#index #cpcmsbanner5 .offer-text2 {
    display: block !important;
    max-width: 100% !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }

  body#index #cpcmsbanner1 .offer-button,
  body#index #cpcmsbanner2 .offer-button,
  body#index #cpcmsbanner3 .offer-button,
  body#index #cpcmsbanner4 .offer-button,
  body#index #cpcmsbanner5 .offer-button {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    overflow: visible !important;
    pointer-events: auto !important;
  }

  body#index #cpcmsbanner1 .offer-button a,
  body#index #cpcmsbanner2 .offer-button a,
  body#index #cpcmsbanner3 .offer-button a,
  body#index #cpcmsbanner4 .offer-button a,
  body#index #cpcmsbanner5 .offer-button a,
  body#index #cpcmsbanner1 .cms-block a.sliderbutton,
  body#index #cpcmsbanner2 .cms-block a.sliderbutton,
  body#index #cpcmsbanner3 .cms-block a.sliderbutton,
  body#index #cpcmsbanner4 .cms-block a.sliderbutton,
  body#index #cpcmsbanner5 .cms-block a.sliderbutton {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: calc(100vw - 48px) !important;
    min-height: 32px !important;
    height: auto !important;
    padding: 7px 10px !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
    white-space: normal !important;
    text-align: center !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }
}

@media (max-width: 380px) {
  body#index #carousel .slidertext1,
  body#index #carousel .slidertext1 span,
  body#index #carousel .sliderbutton,
  body#index #cpcmsbanner1 .offer-button a,
  body#index #cpcmsbanner2 .offer-button a,
  body#index #cpcmsbanner3 .offer-button a,
  body#index #cpcmsbanner4 .offer-button a,
  body#index #cpcmsbanner5 .offer-button a {
    font-size: 10px !important;
  }

  body#index #carousel figcaption.caption,
  body#index #carousel .caption {
    bottom: 10px !important;
  }
}