/* Homepage product masks and responsive presentation, shared with inner pages. */
body.home-page .production-page-products.home-products {
 width:100%; max-width:none; margin:0;
 padding-top:var(--home-gap-xl); padding-bottom:0;
}
body.home-page .business-page-products.home-products {
 width:100%; max-width:none; margin:0;
 padding-top:120px; padding-bottom:0;
}
@media (max-width:720px) {
 body.home-page .production-page-products.home-products { padding-top:80px !important; }
 body.home-page .business-page-products.home-products { padding-top:40px !important; }
 .business-page .home-product-card .home-product-card-content > div:first-child,
 .business-page .home-product-card .home-product-card-sizes,
 .business-page .home-product-card .home-product-card-description,
 .production-page .home-product-card .home-product-card-content > div:first-child,
 .production-page .home-product-card .home-product-card-sizes,
 .production-page .home-product-card .home-product-card-description {
  transform:none !important; transition:none !important;
 }
}
.solutions-page .solutions-products.home-products {
 width:100%; max-width:none; margin:60px 0 0 !important;
 padding:0 !important;
}
.solutions-page .solutions-products .home-product-cards { margin-top:0; }
@media (max-width:720px) {
 .solutions-page .home-product-card .home-product-card-content > div:first-child,
 .solutions-page .home-product-card .home-product-card-sizes,
 .solutions-page .home-product-card .home-product-card-description {
  transform:none !important; transition:none !important;
 }
}
      .home-products > svg {
        position: absolute;
        width: 0;
        height: 0;
      }

      @media (min-width: 721px) {
        .home-products {
          margin-top: 80px;
        }
      }

      .home-products-head {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
      }

      .home-products-head .home-products-title,
      .home-products-description {
        width: 100%;
        margin: 0;
        color: #0c0c0c;
      }

      .home-products .home-product-cards {
        margin-top: 40px;
      }

      .home-product-card {
        border-radius: 32px;
      }

      .home-product-card::after {
        display: none;
      }

      @media (min-width: 721px) {
        .home-product-card-description {
          width: clamp(250px, 36vw, 520px);
          transform: translateY(-50%);
          transition:
            opacity 320ms ease,
            transform 560ms cubic-bezier(0.22, 1, 0.36, 1);
          will-change: opacity, transform;
        }

        .home-product-card:hover .home-product-card-description {
          transform: translateY(-50%);
        }

        .home-product-card-shopper:hover .home-product-card-description,
        .home-product-card-thermobag:hover .home-product-card-description {
          transform: translate(20px, -50%);
        }
      }

      .home-product-card-package {
        clip-path: url(#product-package-clip);
      }

      .home-product-card-shopper {
        z-index: 2;
        width: calc(100% + 60px);
        margin-left: -30px;
        clip-path: url(#product-shopper-clip);
      }

      .home-product-card-shopper .home-product-card-content > div:first-child,
      .home-product-card-shopper .home-product-card-sizes {
        transition: transform 560ms cubic-bezier(0.22, 1, 0.36, 1);
      }

      .home-product-card-shopper .home-product-card-sizes {
        transform: translateX(20px);
      }

      .home-product-card-shopper:hover .home-product-card-content > div:first-child {
        transform: translateX(25px);
      }

      .home-product-card-shopper:hover .home-product-card-sizes {
        transform: translateX(0);
      }

      .home-products:has(.home-product-card-package:hover)
        .home-product-card-shopper
        .home-product-card-content
        > div:first-child {
        transform: translateX(30px);
      }

      .home-products:has(.home-product-card-package:hover) .home-product-card-shopper .home-product-card-sizes {
        transform: translateX(-10px);
      }

      .home-product-card-thermobag {
        clip-path: url(#product-thermobag-clip);
      }

      .home-product-card-thermobag .home-product-card-content > div:first-child,
      .home-product-card-thermobag .home-product-card-sizes {
        transition: transform 560ms cubic-bezier(0.22, 1, 0.36, 1);
      }

      .home-product-card-thermobag .home-product-card-content > div:first-child {
        transform: translateX(30px);
      }

      .home-product-card-thermobag:hover .home-product-card-content > div:first-child {
        transform: translateX(0);
      }

      .home-product-card-thermobag:hover .home-product-card-sizes {
        transform: translateX(30px);
      }

      .home-products:has(.home-product-card-shopper:hover)
        .home-product-card-thermobag
        .home-product-card-content
        > div:first-child {
        transform: translateX(0);
      }

      .home-products:has(.home-product-card-shopper:hover) .home-product-card-thermobag .home-product-card-sizes {
        transform: translateX(30px);
      }

      .home-products {
        width: min(1520px, calc(100% - 80px));
        margin-right: auto;
        margin-left: auto;
        padding-right: 0;
        padding-left: 0;
      }

      @media (min-width: 1181px) {

        .home-products {
          padding-right: 0;
          padding-left: 0;
        }

        .home-products {
          padding-top: 0;
          padding-bottom: 0;
        }

        .home-products {
          margin-top: 180px;
        }
      }

      @media (max-width: 720px) {

        .home-products {
          overflow: visible;
        }

        .home-product-cards {
          width: 100vw;
          margin-right: calc(50% - 50vw);
          margin-left: calc(50% - 50vw);
          padding-right: 0;
          padding-left: 0;
          scroll-padding-left: 0;
        }

        .home-product-card {
          clip-path: none;
        }

        .home-product-card-shopper {
          width: 240px;
          margin-left: 0;
        }

        .home-products-head {
          grid-template-columns: 1fr;
          gap: 20px;
        }

        .home-products {
          box-sizing: border-box;
          width: 100%;
          margin-right: auto;
          margin-left: auto;
          padding-right: 12px;
          padding-left: 12px;
        }

        /* У карточек остаются прозрачные внешние поля 12 px. Сам скролл
           расширен на эти поля, поэтому следующий элемент не режется
           внутренней границей секции справа. */
        .home-products .home-product-cards {
          box-sizing: border-box;
          width: calc(100% + 24px) !important;
          max-width: none;
          margin-right: -12px !important;
          margin-left: -12px !important;
          padding-right: 12px !important;
          padding-left: 12px !important;
          scroll-padding-left: 12px;
        }

        .home-products {
          margin-top: 0 !important;
          padding-top: 0 !important;
          padding-bottom: 0 !important;
        }

        .home-product-card {
          border-radius: 20px !important;
        }

        .home-products {
          min-width: 0;
          max-width: 100%;
          padding-right: 12px !important;
          padding-left: 12px !important;
        }
      }
    
