/*
 * LIOVELA B2C V64 - MOBILE OVERFLOW / OWL / ETS BLOG FIX
 * Autor: Modyfikator stworzony przez gumis
 *
 * Cel:
 * - usunięcie poziomego scrolla na mobile PL/SK,
 * - przycięcie karuzel Owl/ETS Blog do viewportu,
 * - bez ruszania desktopu, logo, pozycji koszyka, lupy i quicknav.
 */

@media (max-width: 991px) {
  html,
  body {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body,
  #page,
  main,
  .page-wrapper,
  .main-wrapper,
  .columns-container,
  .container,
  .container-fluid,
  #wrapper,
  #content-wrapper,
  #content,
  .featured-products,
  .products-section-title,
  .homefeatured,
  .home_blog_post,
  .ets_blog,
  .ets_blog_home,
  .ets-blog-wrapper,
  .ets-blog-latest-post-wrapper,
  .ets_blog_ltr_mode {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /*
   * Najważniejsza poprawka:
   * Owl 1.x generuje .owl-wrapper o szerokości kilku tysięcy px.
   * Na mobile wrapper ma prawo być szeroki wewnątrz karuzeli,
   * ale jego rodzic musi ucinać overflow. Bez tego strona robi poziomy scroll.
   */
  .owl-carousel,
  .owl-carousel .owl-wrapper-outer,
  .owl-carousel .owl-stage-outer,
  .owl-wrapper-outer,
  .owl-stage-outer,
  .cp-carousel,
  .cp_product_slider,
  .cp-categoryproductsslider,
  .cp-products-slider,
  .ets-blog-latest-post-wrapper,
  .ets_blog_home .owl-carousel,
  .ets_blog .owl-carousel,
  .blog-carousel,
  .products.owl-carousel {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-stage,
  .owl-wrapper,
  .owl-stage {
    max-width: none !important;
    box-sizing: border-box !important;
  }

  .owl-carousel .owl-item,
  .owl-carousel .owl-item > *,
  .owl-carousel .item,
  .owl-carousel article,
  .ets_blog .owl-item,
  .ets_blog_home .owl-item,
  .ets-blog-latest-post-wrapper .owl-item,
  .ets-blog-latest-post-wrapper .item,
  .ets-blog-latest-post-wrapper article {
    box-sizing: border-box !important;
  }

  .ets_item_img,
  .ets_item_img picture,
  .ets_item_img img,
  .ets-blog-wrapper img,
  .ets_blog img,
  .ets_blog_home img,
  .blog_image img,
  .post-image img {
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  /*
   * Zabezpieczenie przed pojedynczymi elementami z fixed width/marginesem,
   * które potrafią dodać 50-90 px do scrollWidth na telefonach.
   */
  .row,
  [class*="col-"],
  .products,
  .product_list,
  .product-miniature,
  .thumbnail-container,
  .block,
  .block_content,
  .card,
  .js-product-list,
  .page-content,
  .cms-page,
  .footer-container,
  .footer-before,
  .footer-after {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  img,
  picture,
  video,
  iframe,
  table {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /*
   * Koszyk mobile: poprawa za małych celów dotykowych bez zmiany układu headera.
   */
  body#cart .bootstrap-touchspin .btn-touchspin,
  body#cart button.btn-touchspin,
  body#cart .cart-line-product-actions .remove-from-cart,
  body#cart a.remove-from-cart {
    min-width: 34px !important;
    min-height: 34px !important;
    line-height: 32px !important;
  }

  body#cart .product-line-grid,
  body#cart .cart-item,
  body#cart .cart-overview,
  body#cart .cart-grid,
  body#cart .cart-grid-body,
  body#cart .cart-grid-right,
  body#cart .cart-summary {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 480px) {
  .owl-carousel,
  .owl-wrapper-outer,
  .owl-stage-outer,
  .ets_blog,
  .ets_blog_home,
  .ets-blog-wrapper,
  .ets-blog-latest-post-wrapper {
    max-width: calc(100vw - 0px) !important;
  }

  .ets-blog-latest-post-wrapper .ets-blog-latest-post-content,
  .ets-blog-latest-post-wrapper .ets-blog-sidear-post-meta,
  .ets_blog .ets-blog-latest-post-content,
  .ets_blog .ets-blog-sidear-post-meta {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}