.availability {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  max-width: 140px;
  margin: .75rem 0;
}
.availability i {
  display: block;
  flex: 0 0 1rem;
  margin-right: .275rem;
  opacity: .75;
}
.availability span {
  font-size: .875rem;
  line-height: 100%;
}
.availability.availability-0 {
  color: #000;
}
.availability.availability-1 {
  color: #15ae5d;
}



.block.catalog-block {
  border-radius: .5rem .5rem 0 0;
  background: #F4F1F1CC;
  overflow: hidden;
}
.block.catalog-block .block-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  text-align: left;
  background: #E4E2E2B2;
  padding: .875rem 1.5rem;
}
.block.catalog-block .block-header .logo {
  display: block;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  margin: 0 1rem 0 0;
}
.block.catalog-block .block-header .logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.block.catalog-block .block-header span {
  flex: 1;
}
.block.catalog-block .block-header #products_list_form {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
}
.block.catalog-block .block-header #products_list_form label {
  font-size: .875rem;
  font-weight: 400;
  line-height: 100%;
  text-transform: initial;
  color: #666;
  transition: .2s ease-in-out;
  cursor: pointer;
}
.block.catalog-block .block-header #products_list_form label:hover {
  color: var(--color-text-blue);
}
.block.catalog-block .block-header #products_list_form label span {
  margin-left: .25rem;
}
.block.catalog-block .block-header #products_list_form input {
  display: none;
}
.block.catalog-block .block-header #products_list_form input:checked + label {
  color: var(--color-text-blue);
}
.block.catalog-block .block-header #products_list_form .catalog-types {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
}
.block.catalog-block .block-header #products_list_form .catalog-type {
  margin-left: .875rem;
}

.catalog-block .help {
  margin: 2rem 0 0;
  font-size: .875rem;
  line-height:  120%;
}
.catalog-block .help a {
  color: var(--color-text-primary);
}

#mxcpr {
  display: none !important;  
}

.block.catalog-block .categories-items {
  padding: 0 1.5rem 1.5rem;
}
.categories-items {}
.categories-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  height: 100%;
  padding: 2rem;
  background: rgba(255,255,255,.5);
  border-radius: .5rem .5rem 0 0;
  transition: .2s ease-in-out;
}
.categories-item:hover {
  background: rgba(255,255,255,1);
  box-shadow: .25rem .25rem .5rem rgba(0,0,0,.25);
}
.endcategory .categories-item {
  background: transparent;
  border: 1px solid #107BB166;
  border-radius: 0;
}
.endcategory .categories-item:hover {
  background: rgba(255,255,255,1);
  border-color: #107BB1;
  box-shadow: initial;
}
.categories-item .logo {
  width: 100%;
  height: 62px;
}
.categories-item .image {
  width: 180px;
  height: 180px;
  margin: 0 auto 1rem;
  opacity: .8;
  transition: .2s ease-in-out;
}
.categories-item:hover .image {
  opacity: 1;
}
.categories-item .logo.noimage,
.categories-item .image.noimage {
  filter: grayscale(1);
  opacity: .15;
}
.categories-item .logo img,
.categories-item .image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.categories-item .logo img {
  object-position: center left;
}
.categories-item .childs {
  flex: 1;
  margin: 1rem 0;
  padding: 0;
  list-style: none;
}
.categories-item .childs li {
  margin: 0;
}
.categories-item .childs li a {
  display: block;
  font-size: .875rem;
  line-height: 200%;
  color: var(--link-color);
  text-decoration: none;
  transition: .2s ease-in-out;
}
.categories-item .childs li a:hover {
  color: var(--link-hover-color);
}
.categories-item .name {
  display: block;
  width: 100%;
  text-align: center;
  font-size: 1rem;
  line-height: 120%;
  text-decoration: none;
  color: var(--color-text-primary);
}
.categories-item .showmore {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  text-decoration: none;
  font-size: .875rem;
  line-height: 100%;
  color: var(--link-hover-color);
  transition: .2s ease-in-out;
}
.categories-item .showmore span {
  display: inline-block;
  width: 0;
  overflow: hidden;
  transition: .2s ease-in-out;
}
.categories-item:hover .showmore span {
  width: initial;
  margin-right: .275rem;
}
.categories-item .showmore:hover {
  color: var(--link-hover-color);
}
.categories-item .showmore i {
  font-size: 1rem;
}


.productcard {
  position: relative;
  padding: 1rem;
  background: #FAF8F8;
  border: 1px solid #107BB166;
  transition: .2s ease-in-out;
}
.productcard:hover {
  background: #FFFFFF;
  border-color: #107BB1;
}
.productcard .title {
  display: block;
  margin: 0 0 .5rem;
  width: 100%;
  max-width: 230px;
  font-size: 1.125rem;
  line-height: 120%;
  font-weight: 500;
  color: var(--color-text-primary);
  text-decoration: none;
}
.productcard .code,
.productcard .manufacturer {
  display: block;
  margin: 0 0 .5rem;
  width: 100%;
  max-width: 230px;
  font-size: .875rem;
  line-height: 140%;
  font-weight: 400;
}
.productcard .code a,
.productcard .manufacturer a {
  display: block;
  text-decoration: none;
  color: var(--color-text-primaty);
  font-weight: 700;
}
.productcard .buttons {
  margin-top: 2rem;
}
.productcard .buttons .availability {
  display: block;
  margin: 0 0 .5rem;
  font-size: .875rem;
  line-height: 150%;
}
.productcard .buttons .availability i {
  margin-right: .25rem;
}
.productcard .buttons .availability .available {
  color: #15ae5d;
}
.productcard .buttons .btn {
  display: block;
  margin: 0;
  margin-top: .5rem;
  padding: 0;
  text-decoration: none;
  border: 0;
  text-transform: initial;
}
.productcard .buttons .btn.ask {
  font-weight: 400;
  color: var(--color-text-primary);
  opacity: .875;
  transition: .2s ease-in-out;
}
.productcard .buttons .btn.ask:hover {
  color: #C21F13;
}
.productcard .buttons .btn.buy {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  font-size: 1rem;
  line-height: 150%;
}
.productcard .image {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  display: block;
  width: 100px;
  height: 160px;
  mix-blend-mode: multiply;
  background-blend-mode: multiply;
}
.productcard .image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: bottom right;
  mix-blend-mode: multiply;
  background-blend-mode: multiply;
}

.list_product .row {
  align-items: stretch;
}

.product.product-griditem {
  height: 100%;
  padding: 1.25rem;
  background: #FAF8F8;
  border: 1px solid #107BB166;
  transition: .2s ease-in-out;
  position: relative;
  z-index: 1;
}
.product.product-griditem:hover {
  background: rgba(255,255,255,1);
  border-color: #107BB1;
}
.product.product-griditem .name {
  display: block;
  width: 100%;
  max-width: 240px;
  min-height: 2.75rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 120%;
  text-decoration: none;
  color: var(--color-text-primary);
  border: 0;
}
.product.product-griditem .ean {
  display: block;
  width: 100%;
  max-width: 140px;
  margin: .5rem 0 2.75rem;
  text-decoration: none;
  color: var(--color-text-primary);
  font-size: .875rem;
  line-height: 150%;
  border: 0;
}
.product.product-griditem .ean span {
  display: block;
  font-weight: 700;
}

.product.product-griditem .price,
.product.product-griditem .price .ask {
  display: block;
  width: 100%;
  max-width: 140px;
  padding: 0;
  margin: .75rem 0;
  text-decoration: none;
  font-size: .875rem;
  line-height: 120%;
  background: transparent;
  border: 0;
  outline: none;
  color: #000;
  text-align: left;
  transition: .2s ease-in-out;
}
.product.product-griditem .price .current {
  font-size: 1.25rem;
}
.product.product-griditem .price .ask:hover {
  font-weight: 500;
}
.product.product-griditem .cart {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  max-width: 140px;
  padding: 0;
  margin: .75rem 0 0;
  text-decoration: none;
  font-size: .875rem;
  font-weight: 600;
  line-height: 120%;
  background: transparent;
  border: 0;
  outline: none;
  color: var(--color-text-blue);
  transition: .2s ease-in-out;
}
.product.product-griditem .cart:hover {
  color: var(--color-text-blue2);
}
.product.product-griditem .cart svg {
  margin-right: .275rem;
}
.product.product-griditem .wishlist {
  position: absolute;
  right: .75rem;
  top: .75rem;
  display: inline-block;
  border: 0;
  background: transparent;
  transition: .2s ease-in-out;
  opacity: .75;
  outline: none;
}
.product.product-griditem .wishlist.active,
.product.product-griditem .wishlist:hover {
  color: #c21f13;
}
.product.product-griditem .wishlist:hover {
  opacity: 1;
}
.product.product-griditem .image {
  position: absolute;
  right: .75rem;
  bottom: .75rem;
  display: block;
  width: 160px;
  height: 160px;
  max-height: calc(100% - 1.5rem);
  z-index: -1;
  mix-blend-mode: multiply;
  border: 0;
}
.product.product-griditem .image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  user-select: none;
  pointer-events: none;
}
.product.product-griditem .image.noimage {
  opacity: .05;
  filter: grayscale(1);
}
.product.product-griditem .image.noimage img {
  object-fit: contain;
}

.product.product-listitem {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  padding: 1rem 1.5rem;
  border-bottom: 1px solid #14151566;
}
.product.product-listitem .image {
  flex: 0 0 70px;
  width: 70px;
  height: 70px;
  margin-right: 1rem;
  background: white;
  padding: .25rem;
}
.product.product-listitem .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  user-select: none;
  pointer-events: none;
  mix-blend-mode: multiply;
}
.product.product-listitem .image.noimage {
  opacity: .05;
  filter: grayscale(1);
}
.product.product-listitem .image.noimage img {
  object-fit: contain;
}
.product.product-listitem .info {
  flex: 1;
  margin: 0 1rem;
}
.product.product-listitem .name {
  display: block;
  font-size: .875rem;
  font-weight: 600;
  line-height: 120%;
  text-decoration: none;
  color: var(--color-text-primary);
}
.product.product-listitem .ean {
  display: block;
  flex: 0 0 200px;
  margin: 0 1rem;
  text-decoration: none;
  color: var(--color-text-primary);
  font-size: .875rem;
  line-height: 150%;
}
.product.product-listitem .ean span {
  font-weight: 700;
}
.product.product-listitem .availability {
  flex: 0 0 100px;
  margin: 0 1rem;
  max-width: initial;
}
.product.product-listitem .price,
.product.product-listitem .price .ask {
  display: block;
  flex: 0 0 140px;
  width: 100%;
  padding: 0;
  margin: 0 1rem;
  text-decoration: none;
  font-size: .875rem;
  line-height: 120%;
  background: transparent;
  border: 0;
  outline: none;
  color: #c21f13;
  text-align: left;
  transition: .2s ease-in-out;
}
.product.product-listitem .price .current {
  font-size: 1.25rem;
}
.product.product-listitem .price .ask {
  padding: 0;
  margin: 0;
}
.product.product-listitem .price .ask:hover {
  font-weight: 500;
}
.product.product-listitem .cart {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: .875rem 1.5rem;
  flex: 0 0 200px;
  text-decoration: none;
  font-size: 1rem;
  font-weight: 600;
  line-height: 120%;
  background: var(--color-blue);
  border: 0;
  outline: none;
  color: white;
  transition: .2s ease-in-out;
  border-radius: .5rem;
}
.product.product-listitem .cart:hover {
  background: var(--color-blue2);
}
.product.product-listitem .cart svg {
  margin-right: .5rem;
  width: 16px;
  height: 15px;
}

.jshop_pagination {
  margin: 2rem 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.jshop_pagination .pagination {
  margin: 0 auto;
  text-align: center;
}
.jshop_pagination > .pagination {
  display: block !important;
}
.jshop_pagination ul {
  margin: 0 !important;
  padding: 0 !important;
}
.jshop_pagination .pagination_result_counter {
  font-size: .75rem;
  line-height: 100%;
  margin: .5rem 0 0;
}
.jshop_pagination .page-link {
  display: block;
  width: 1.75rem;
  height: 1.75rem;
  padding: 0;
  font-size: .875rem;
  line-height: 1.75rem;
  font-weight: 500;
  text-align: center;
  background: transparent;
  color: var(--color-text-primary);
  transition: .2s ease-in-out;
  border: 1px solid transparent;
  border-radius: 0 !important;
  box-shadow: initial !important;
  outline: none;
}
.jshop_pagination .page-link:hover {
  color: var(--color-blue);
  border-color: var(--color-blue);
}
.jshop_pagination .page-item.active .page-link {
  background: var(--color-blue);
  color: white;
}
.jshop_pagination .page-item.disabled {
  opacity: .25;
}
.jshop_pagination .btn-sm {
  font-size: .875rem;
  line-height: 120%;
  padding: .75rem 1rem;
}

.productfull .product {
  margin: 2rem 0;
}
.productfull .product .row {
  align-items: stretch;
}
.productfull .product .images,
.productfull .product .info {
  height: 100%;
}
.productfull .product .images {
  background: white;
  padding: 2rem;
  background: #f3f3f3;
}
.productfull .product .images a {
  display: block;
}
.productfull .product .images img {
  mix-blend-mode: multiply;
}
.productfull .product .images .main-image {
  width: 420px;
  max-width: 100%;
  height: 420px;
}
.productfull .product .images .main-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.productfull .product .images .main-image.noimage {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.productfull .product .images .main-image.noimage img {
  width: initial;
  height: initial;
  opacity: .15;
  filter: grayscale(1);
}
.productfull .product .info {
  background: #EBE9E9;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}
.productfull .product .info .top {
  width: 100%;
  padding: 2rem;
  flex: 1;
}
.productfull .product .info h1 {
  margin: 0 0 1rem;
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 130%;
}
.productfull .product .availability {
  font-size: 1.25rem;
  margin: 1rem 0 1rem;
}
.productfull .product .availability i {
  flex: 0 0 20px;
  margin-right: .5rem;
}
.productfull .product .availability span {
  font-size: 1rem;
  line-height: 1rem;
}
.productfull .controls {
  margin: 1rem 0;
}
.productfull .controls .wishlist {
  padding: 0;
  background: transparent;
  outline: none;
  border: 0;
  color: var(--color-red);
  transition: .2s ease-in-out;
}
.productfull .controls .wishlist i {
  display: inline-block;
  width: 20px;
  text-align: center;
  margin-right: .5rem;
}
.productfull .controls .wishlist:hover {
  color: var(--color-red2);
}
.productfull .product .ean,
.productfull .product .manufacturer {
  font-size: 1rem;
  line-height: 130%;
  margin: 0 0 1.5rem;
}
.productfull .product .ean span,
.productfull .product .manufacturer span {
  display: block;
  font-weight: 600;
}
.productfull .product .manufacturer .logo {
  width: 140px;
  height: 50px;
}
.productfull .product .manufacturer .logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: top left;
}
.productfull .product .consultation {}
.productfull .product .consultation button {
  padding: 0;
  margin: 0;
  background: transparent;
  color: var(--color-text-primary);
  font-size: .875rem;
  line-height: 120%;
  outline-color: none;
  box-shadow: initial !important;
  border: 0;
  text-decoration: underline;
}
.productfull .product .consultation button:hover {
  color: var(--color-text-blue);
}
.productfull .product table {
  margin: 2rem 0 0;
  border-color: #ccc;
}
.productfull .product table tr {
  vertical-align: middle;
}
.productfull .product table th {
  background: #eee;
  font-size: .875rem;
  line-height: 120%;
  text-align: center;
}
.productfull .product table th:first-of-type {
  text-align: left;
}
.productfull .product table td {
  font-size: .875rem;
  padding: .25rem;
  min-width: 100px;
}
.productfull .product table td.name {
  font-size: .875rem;
  line-height: 120%;
}
.productfull .product table td.price {
  width: 100px;
  white-space: nowrap;
  text-align: center;
  line-height: 120%;
  font-weight: 600;
}
.productfull .product table td.price button {
  font-size: .875rem;
  line-height: 120%;
  border: 0;
  outline: none;
  background: transparent;
  color: var(--color-text-primary);
  text-decoration: underline;
  transition: .2s ease-in-out;
}
.productfull .product table td.price button:hover {
  color: var(--color-text-blue);
}
.productfull .product table td.availability {
  width: 85px;
  display: table-cell;
  font-size: .875rem;
  line-height: 130%;
  text-align: center;
}
.productfull .product table .btn.btn-sm {
  display: block;
  width: 100%;
  font-size: .75rem;
  line-height: 100%;
  text-transform: initial;
  padding: .5rem .75rem;
  border-radius: 0;
  white-space: nowrap;
}
.productfull .product .bottom {
  width: 100%;
  background: #dedede;
  padding: 1.5rem 2rem;
}
.productfull .product .advantages-items {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  margin: 0 -1rem;
}
.productfull .product .advantages-item {
  padding: 0;
  flex: 0 0 calc((100% / 3) - 2rem);
  margin: 0 1rem;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  font-size: 1rem;
  font-weight: 500;
}
.productfull .product .advantages-item .icon {
  width: 2rem;
  height: 2rem;
  flex: 0 0 2rem;
  margin: 0;
  margin-right: .75rem;
}
.productfull .product .advantages-item .icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.productfull .help {
  margin: 2rem 0 0;
  font-size:  .875rem;
  line-height:  130%;
}
.productfull .help a {
  color: var(--color-text-primary);
}

.productfull .tabs {
  margin: 1rem 0;
}
.productfull .tabs .nav-tabs {
  flex-wrap: nowrap;
}
.productfull .tabs .nav-link {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  flex: 100%;
  background: transparent;
  border: 0;
  border-bottom: 5px solid transparent;
  color: var(--color-text-primary);
  font-size: 1rem;
  line-height: 1.5rem;
}
.productfull .tabs .nav-link i {
  display: inline-block;
  font-size: ;
  margin-right: .5rem;
  opacity: .75;
  font-size: 1.5rem;
  line-height: 100%;
}
.productfull .tabs .nav-link:hover,
.productfull .tabs .nav-link.active {
  border-bottom: 5px solid var(--color-blue);
}
.productfull .tabs .tab-content {
  padding: 1rem;
  background: #eee;
}
.productfull .tabs .empty {
  margin: 0;
  text-align: center;
  font-weight: 500;
}

.variants .quantity {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: nowrap;
  min-width: 100px;
}
.quantity button {
  flex: 0 0 28px;
  width: 30px;
  height: 30px;
  background: #ccc;
  border: 0;
  outline: none;
  cursor: pointer;
  transition: .2s ease-in-out;
  line-height: 100%;
}
.quantity button svg,
.quantity button i {
  pointer-events: none;
}
.quantity button:hover {
  background: var(--color-blue);
  color: white;
}
.quantity input {
  display: block;
  height: 30px;
  width: 100%;
  flex: 0 0 40px;
  max-width: 40px;
  font-size: 14px;
  line-height: 28px;
  text-align: center;
  border: 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  box-shadow: none !important;
  outline: 0 !important;
}