/* Webshop V774 - mobile scroll performance.
   Keep the visual design but remove mobile repaint hotspots and allow the
   browser to skip painting far-off product cards. */
@media (max-width:980px), (pointer:coarse) {
  html,body{
    scroll-behavior:auto!important;
    overscroll-behavior-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }

  /* background-attachment:fixed is a major source of scroll jank on iOS/Android,
     especially when the admin selected a large image or GIF. */
  body.has-site-background-v717,
  body.webshop-v300.has-site-background-v717,
  body.webshop-v301.has-site-background-v717,
  body.webshop-v400.has-site-background-v717{
    background-attachment:scroll!important;
    background-position:center top!important;
  }

  /* No glass repaint while the viewport moves. */
  body .header,
  body .topbar,
  body .desktop-nav,
  body .bottom-nav,
  body .side-card,
  body .card,
  body .settings-card,
  body .product,
  body .history-card,
  body .coupon,
  body .coupon-clean-card,
  body .coupon-clean-card-v131,
  body .mobile-menu-drawer-v301,
  body .mobile-menu-backdrop-v301,
  body .modal,
  body .overlay{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }

  /* Keep cards painted while scrolling: content-visibility:auto can flash
     blank on fast upward scroll in mobile Chrome/LINE WebView. */
  #productGrid>.product,
  #memberRewardGridV74>.product,
  .public-products>.public-product{
    content-visibility:visible!important;
    contain:none!important;
    contain-intrinsic-size:none!important;
    animation:none!important;
    transition:none!important;
    will-change:auto!important;
  }

  #productGrid>.product *,
  #memberRewardGridV74>.product *,
  .public-products>.public-product *{
    animation:none!important;
  }

  #productGrid .product-image-v316,
  #productGrid>.product img,
  #memberRewardGridV74>.product img,
  .public-products>.public-product img,
  .banner-main img,
  .banner-slide img{
    transform:none!important;
    transition:none!important;
    will-change:auto!important;
  }

  /* Heavy wide shadows repaint while scrolling. Keep a small static shadow so
     the design still feels the same. */
  body.webshop-v301 #productGrid>.product,
  body.webshop-v400 #productGrid>.product,
  body.webshop-v301 .history-card,
  body.webshop-v400 .history-card,
  body.webshop-v301 .coupon-clean-card-v131,
  body.webshop-v400 .coupon-clean-card-v131{
    box-shadow:0 1px 5px rgba(15,23,42,.055)!important;
  }

  body .banner-main,
  body .public-banner-main{
    box-shadow:0 2px 10px rgba(15,23,42,.06)!important;
  }

  body .bottom-nav,
  body .header{
    will-change:auto!important;
    -webkit-transform:translateZ(0);
    transform:translateZ(0);
  }

  .category-tabs-v198,
  .banner-track-v152,
  .home-discount-list-v405{
    scroll-behavior:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
}

@media (max-width:600px) {
  #productGrid>.product,
  #memberRewardGridV74>.product{
    contain-intrinsic-size:none!important;
  }
}
