/* === Product list viewport and listing controls === */
.ListView {
  width:1560px;
  max-width:1560px;
  margin-top:5px;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
}
.ListView .viewport {
  margin-left:2px;
  margin-right:2px;
  position:relative;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
}
#products-results {
  scroll-margin-top:calc(var(--sam-header-space, var(--mobile-header-space, 0px)) + 12px);
}
.product_list_sort_bar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 16px 0;
  padding:5px 5px;
  border:1px solid #e4e4e4;
  border-radius:10px;
  box-shadow:0 4px 14px rgba(0,0,0,0.035);
  box-sizing:border-box;
}
.product_list_sort_control {
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  flex:0 0 auto;
}
.product_list_sort_bar_compact {
  justify-content:flex-end;
}
.product_list_sort_control span {
  color:#666666;
  font-size:12px;
  font-weight:bold;
  line-height:1.2;
}
.product_list_sort_control select {
  min-width:230px;
  max-width:100%;
  height:30px;
  padding:0 25px 0 10px;
  border:1px solid #d6d6d6;
  border-radius:8px;
  background:#ffffff;
  color:#222222;
  font:13px Arial, sans-serif;
  line-height:36px;
  box-sizing:border-box;
}
.product_list_sort_control select:focus,
.product_list_sort_control select:active,
.product_list_sort_control select:focus-visible {
  border-color:#d6d6d6;
  box-shadow:none;
  outline:0;
}
@media (min-width:901px) {
  #products-results {
    scroll-margin-top:var(--products-sidebar-sticky-top);
  }
}
.ListView .PaginatorComponent {
  padding:5px;
}
.ListView .PaginatorTopComponent {
  display: none;
  border:0px;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
}
.ListView .PaginatorTopComponent .next_page {
  margin-left:10px;
}
.ListView .PaginatorBottomComponent {
  background-image:;
  background-color:#;
  border:0px;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
}
.category_heading {
  margin:0px 0px 15px 0px;
  padding:5px 10px 10px 10px;
  color:#222222;
  font-size:22px;
  font-weight:700;
  line-height:1.5;
}
.category_intro {
  margin:14px 0 24px 2px;
  padding:0;
  color:#333333;
  font-size:14px;
  line-height:1.5;
  max-width:1548px;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
}
.category_intro .category_intro_content {
  border-bottom:1px solid #d8d8d8;
  position:relative;
  overflow:hidden;
  padding:10px 10px 10px 10px;
}
.category_intro.collapsed .category_intro_content {
  max-height:200px;
}
.category_intro.collapsed .category_intro_content:after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:42px;
  background:linear-gradient(to bottom, rgba(255,255,255,0), #ffffff);
}
.category_intro.expanded .category_intro_content {
  max-height:none;
}
.category_intro H1,
.category_intro H2,
.category_intro H3 {
  margin:0 0 12px 0;
  padding:0;
  color:#222222;
  font-size:18px;
  line-height:1.5;
}
.category_intro P {
  margin:0 0 12px 0;
}
.category_intro .category_intro_toggle {
  display:block;
  margin:10px auto 0 auto;
  color:#2b78a0;
  font-size:16px;
  font-weight:700;
  text-align:center;
  text-decoration:none;
  text-transform:lowercase;
  cursor:pointer;
}

/* === Product cards and product-list item visuals === */
.ProductItem {
  min-height:450px;
  display:inline-block;
  position:relative;
  vertical-align:top;
  margin-left:5px;
  margin-right:5px;
  text-decoration:none;
  border-bottom:1px solid #ffffff00;
}
.ProductItem:hover {
  border-bottom:1px solid #bbbbbb;
}
.ProductItem .product_card_link {
  display:block;
  color:inherit;
  text-decoration:none;
  -webkit-tap-highlight-color:transparent;
}
.ProductItem .product_card_link:active,
.ProductItem .product_card_link:focus,
.ProductItem .product_card_link:hover {
  color:inherit;
  text-decoration:none;
}
.ProductItem .product_card_buy,
.ProductItem .product_card_buy:active,
.ProductItem .product_card_buy:focus {
  -webkit-tap-highlight-color:transparent;
  outline:0;
}
.ProductItemSeparator {
  display:block;
  border-bottom:1px solid #bbbbbb;
  height:1px;
  line-height:1px;
}
.ProductItem .Image {
  display:block;
  border:1px solid #bbbbbb;
  position:relative;
  background-color:#ffffff;
}
.ProductItem .Image IMG {
  display:block;
  z-index:1;
}
.ProductItem .Image .discount_ribbon {
  position:absolute;
  top:8px;
  left:8px;
  z-index:6;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  min-height:28px;
  padding:5px 9px;
  border:1px solid rgba(255,255,255,0.28);
  border-radius:999px;
  background:#252525;
  color:#ffffff;
  font-size:16px;
  font-weight:800;
  line-height:1;
  letter-spacing:0.01em;
  text-align:center;
  box-sizing:border-box;
  box-shadow:0 6px 14px rgba(0,0,0,0.22), inset 3px 0 0 #e3262e;
}
.ProductItem .Image .discount_ribbon .value {
  display:block;
  color:inherit;
  font-size:inherit;
  font-weight:inherit;
  line-height:inherit;
  margin:0;
}
.ProductItem .product_name {
  position:relative;
}
.ProductItem .product_name .product_card_brand_badge {
  position:absolute;
  left:50%;
  top:0px;
  z-index:2;
  display:block;
  max-width:78%;
  padding:0;
  border:0;
  background:transparent;
  color:#202020;
  font-size:16px;
  font-weight:800;
  line-height:1.1;
  letter-spacing:0.08em;
  text-align:center;
  text-transform:uppercase;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  box-sizing:border-box;
  box-shadow:none;
  transform:translateX(-50%);
  pointer-events:none;
}
.ProductItem .product_name .product_card_name_text {
  display:block;
}


.ProductItem .Image .by-order-ribbon {
  position:absolute;
  left:0px;
  top:0px;
  z-index:5;
  display:block;
  margin-left:-7px;
  margin-top:-7px;
}
.ProductItem .Image .free-delivery-ribbon {
  position:absolute;
  left:0px;
  top:0px;
  z-index:5;
  display:block;
  margin-left:-7px;
  margin-top:-7px;
}
.ProductItem .Image .new-product-ribbon {
  position:absolute;
  left:0px;
  top:0px;
  z-index:5;
  display:block;
  margin-left:-7px;
  margin-top:-7px;
}
.ProductItem.outofstock .Image .coming-soon-ribbon {
  position:absolute;
  left:0px;
  top:0px;
  z-index:5;
  display:block;
  margin-left:-7px;
  margin-top:-7px;
}
.ProductItem .summary {
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  text-align:right;
  margin:5px;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
}
.ProductItem .product_name {
  width:302px;
  max-width:302px;
  text-align:center;
  color:#000000;
  display:flex;
  align-items: center;
  justify-content: center;
  font-size:20px;
  min-height:110px;
}
.ProductItem .summary .sell_price {
  display:block;
  color:#000000;
  font-size:20px;
  font-weight:700;
  text-align:right;
  margin-right:13px;
}
.ProductItem .summary .regular_price {
  display:block;
  color:#aa0000;
  font-size:20px;
  text-decoration:line-through;
  font-weight:bold;
  text-align:right;
  margin-right:13px;
}
.ProductItem .summary .price_panel {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  margin-top:auto;
  min-height:52px;
  width:100%;
  box-sizing:border-box;
}
.ProductItem .summary .product_item_prices {
  display:flex;
  order:1;
  flex:0 0 auto;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  text-align:left;
  margin-left:0;
  margin-right:auto;
}
.ProductItem .summary .icon_cart {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:80px;
  height:30px;
  padding:0 16px;
  border-radius:10px;
  background:#e3262e;
  color:#ffffff;
  font-size:14px;
  font-weight:700;
  line-height:34px;
  text-decoration:none;
  text-transform:none;
  box-sizing:border-box;
  box-shadow:0 6px 14px rgba(227,38,46,0.18);
  cursor:pointer;
}
.ProductItem .summary .icon_cart:after {
  content:"\041a\0443\043f\0438";
  text-transform:none;
}
.ProductItem .summary .icon_cart:hover {
  background:#c91f27;
}
.ProductItem .summary .product_code {
  display:flex;
  order:2;
  flex:1 1 auto;
  align-items:flex-start;
  justify-content:flex-end;
  min-width:0;
  padding-left:5px;
  padding-right:5px;
  box-sizing:border-box;
}

.section.news .list {
  margin-bottom:4px;
  padding:10px;
  background-color:#3a3a3a;
  border-bottom-left-radius:10px;
  border-bottom-right-radius:10px;
}
.section.news .item {
  display:table;
  text-decoration:none;
}
.section.news .item .cell {
  display:table-cell;
  vertical-align:top;
  padding-bottom:10px;
}
.section.news .item .cell.details {
  padding-left:10px;
}
.section.news .item .cell.details .title {
  color:#d7d7d7;
  display:block;
  text-decoration:none;
  font-size:14px;
}
.section.news .item .cell.details .date {
  color:#ffffff;
  display:block;
  text-decoration:none;
}
.section.new-products .list {
  margin-bottom:4px;
  padding:10px;
  background-color:#3a3a3a;
  border-bottom-left-radius:10px;
  border-bottom-right-radius:10px;
}
.section.new-products .item {
  display:table;
  text-decoration:none;
}
.section.new-products .item .cell {
  display:table-cell;
  vertical-align:top;
  padding-bottom:10px;
}
.section.new-products .item .cell.details {
  padding-left:10px;
}
.section.new-products .item .cell.details .title {
  color:#d7d7d7;
  display:block;
  text-decoration:none;
  font-size:14px;
}
.section.new-products .item .cell.details .date {
  color:#ffffff;
  display:block;
  text-decoration:none;
}
.section.promo-products .list {
  margin-bottom:4px;
  padding:10px;
  background-color:#3a3a3a;
  border-bottom-left-radius:10px;
  border-bottom-right-radius:10px;
}
.section.promo-products .item {
  display:table;
  text-decoration:none;
}
.section.promo-products .item .cell {
  display:table-cell;
  vertical-align:top;
  padding-bottom:10px;
}
.section.promo-products .item .cell.details {
  padding-left:10px;
}
.section.promo-products .item .cell.details .title {
  color:#d7d7d7;
  display:block;
  text-decoration:none;
  font-size:14px;
}
.section.promo-products .item .cell.details .date {
  color:#ffffff;
  display:block;
  text-decoration:none;
}

@media (max-width:900px) {
  body.content.index .column.left {
    display:none;
  }

  body.content.index .main .full {
    padding-left:12px;
    padding-right:12px;
  }

  body.content.index .products_wrap,
body.content.index .products_wrap .column.DynamicPagesBean {
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    padding: 0px 5px;
  }
}


/* Product-card/listing polish. */
body.products,
body.products .products_wrap,
body.products .column.products_list {
  background-color: #ffffff;
}
body.products .ProductItem {
  padding: 10px 10px 12px 10px;
  background-color: #ffffff;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.10);
  box-sizing: border-box;
  transition: box-shadow 160ms ease-out, background-color 160ms ease-out, border-color 160ms ease-out;
}

body.products .ProductItem:hover {
  background-color: #ffffff;
  border-color: #d3d3d3;
  box-shadow: 0 4px 12px rgba(0,0,0,0.14);
}

body.products .ProductItem .Image {
  border: 0;
  border-radius: 8px;
  overflow: visible;
}
@media (min-width:901px) {
  body.products .ProductItem .product_name {
    margin-top: 5px;
    margin-bottom: 5px;
    font-size:16px;
    font-weight:500;
  }
}

@media (max-width:900px) {
  body.products .ProductItem .product_name {
    font-size:16px;
    font-weight:500;
  }
}

body.products .ProductItem .summary {
  margin-top: 0;
}


/* Climate product-card highlights: compact spec chips below product name. */
body.products .ProductItem .product_card_highlights {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:7px;
  width:auto;
  max-width:none;
  margin:0 0 25px 0;
  padding:0;
  box-sizing:border-box;
}
body.products .ProductItem .product_card_highlight {
  display:flex;
  align-items:center;
  min-width:0;
  min-height:42px;
  padding:8px 8px;
  border:1px solid #dddddd;
  border-radius:10px;
  background:linear-gradient(180deg, #ffffff 0%, #f7f7f7 100%);
  color:#222222;
  box-sizing:border-box;
}
body.products .ProductItem .product_card_highlight_icon {
  display:inline-flex;
  flex:0 0 26px;
  width:26px;
  height:26px;
  align-items:center;
  justify-content:center;
  margin-right:10px;
  color:var(--chip-icon-color, #202020);
  font-family:"Font Awesome 5 Free";
  font-size:22px;
  font-weight:900;
  line-height:1;
}
body.products .ProductItem .product_card_highlight_snowflake .product_card_highlight_icon:before {
  content:"\f2dc";
}
body.products .ProductItem .product_card_highlight_fire .product_card_highlight_icon:before {
  content:"\f06d";
}
body.products .ProductItem .product_card_highlight_leaf .product_card_highlight_icon:before {
  content:"\f06c";
}
body.products .ProductItem .product_card_highlight_area .product_card_highlight_icon:before {
  content:"\f065";
}
body.products .ProductItem .product_card_highlight_text {
  display:block;
  min-width:0;
  text-align:left;
}
body.products .ProductItem .product_card_highlight_label {
  display:block;
  color:#777777;
  font-size:11px;
  font-weight:700;
  line-height:1.05;
  letter-spacing:0.02em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.products .ProductItem .product_card_highlight_value {
  display:block;
  margin-top:2px;
  color:#151515;
  font-size:13px;
  font-weight:700;
  line-height:1.25;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.products a.ProductItem,
body.products a.ProductItem:visited,
body.products a.ProductItem:hover,
body.products a.ProductItem:active {
  color: inherit;
  text-decoration: none;
}

body.products a.ProductItem {
  cursor: pointer;
}


/* === Products listing page: subcategories and list column === */
body.products .column.products_list {
  width:1560px;
  max-width:1560px;
  vertical-align:top;
  box-sizing:border-box;
  -moz-box-sizing:border-box;
}
body.products .column.products_list .subcategories {
  display:block;
  margin-left:-7px;
  margin-right:-7px;
  margin-top:15px;
  margin-bottom:5px;
  text-align:center;
}
body.products .column.products_list .subcategories A {
  display:inline-block;
  margin-left:7px;
  margin-right:7px;
  margin-bottom:5px;
}
body.products .column.products_list .subcategories A IMG {
  display:block;
}

