/********************
	Part - layout
********************/
.wrapper__inner {
  display        : flex;
  flex-direction : column;
  padding-bottom : 20px;
}

/********************
	Part - left column
********************/
.left-column__wrapper {
  margin-bottom : 20px;
}

#left-column {
  position : -webkit-sticky;
  position : sticky;
  top      : 0;

}

/********************
	Part - main content
********************/
#content-wrapper {
  flex          : 1 0 0;
}

/********************
	Part - Listes produits header
********************/
#js-product-list-header {
  padding-bottom : 15px;
}

/********************
	Part - Listes produits
********************/
.products {
  display               : grid;
  grid-template-columns : repeat(auto-fill, minmax(400px, 1fr));
  grid-gap              : 20px;
  justify-content       : space-between;
}

/********************
	Part - Style général des back to top
********************/
.product-list__back-to-top {
  text-align : center;
  margin     : 1em 0 0;
}

.product-list__back-to-top .btn {
  border          : 1px solid var(--color-primary);
  color           : var(--color-primary);
  line-height     : 1;
  display         : inline-flex;
  align-items     : center;
  justify-content : center;
}

/********************
	Part - Style page not found
********************/
#products .page-not-found {
  display        : flex;
  flex-direction : column;
  align-items    : center;
  max-width: 1200px;
  margin: 0 auto;
}

/********************
	Part - Style pagination
********************/
.pagination {
  width : 100%
}

.pagination > div:first-child {
  line-height : 2.5rem
}

.pagination .page-list {
  background    : #fff;
  padding       : .375rem;
  margin-bottom : 0;
  box-shadow    : 2px 2px 4px 0 rgba(0, 0, 0, .2)
}

.pagination .page-list li {
  display : inline
}

.pagination a {
  color       : #000;
  font-weight : 600
}

.pagination a:not(.previous):not(.next) {
  letter-spacing : .125rem
}

.pagination .previous {
  float : left
}

.pagination .next {
  float : right
}

.pagination .disabled {
  color : var(--color-grey-font-default)
}

.pagination .current a {
  color           : #2fb5d2;
  text-decoration : none;
  font-size       : 1.25rem
}

/********************
	Part - Style module block categories
********************/
.block-categories {
  background    : #fff;
  padding       : 1.563rem 1.25rem;
  margin-bottom : 1.563rem
}

.block-categories .category-sub-menu {
  margin-top : .625rem
}

.block-categories .category-sub-menu .category-sub-link {
  font-size : .875rem
}

.block-categories .category-sub-menu li {
  position : relative
}

.block-categories .category-sub-menu li[data-depth="1"] {
  margin-bottom : .625rem
}

.block-categories .category-sub-menu li[data-depth="0"] > a {
  font-weight    : 600;
  border-bottom  : 1px solid rgba(0, 0, 0, .25);
  width          : 100%;
  display        : inline-block;
  margin         : .3125rem 0 0;
  padding-bottom : .1875rem
}

.block-categories .category-sub-menu li:not([data-depth="0"]):not([data-depth="1"]) {
  padding-left : .3125rem
}

.block-categories .category-sub-menu li:not([data-depth="0"]):not([data-depth="1"]):before {
  content      : "-";
  margin-right : .3125rem
}

.block-categories a {
  color : var(--color-black-default)
}

.block-categories .collapse-icons {
  position : absolute;
  right    : 0;
  top      : 0;
  padding  : 0;
  cursor   : pointer
}

.block-categories .collapse-icons[aria-expanded=true] .add {
  display : none
}

.block-categories .collapse-icons[aria-expanded=true] .remove {
  display : block
}

.block-categories .collapse-icons .add:hover, .block-categories .collapse-icons .remove:hover {
  color : #2fb5d2
}

.block-categories .collapse-icons .remove {
  display : none
}

.block-categories .arrows .arrow-down, .block-categories .arrows .arrow-right {
  font-size   : .875rem;
  cursor      : pointer;
  margin-left : 2px
}

.block-categories .arrows .arrow-down:hover, .block-categories .arrows .arrow-right:hover {
  color : #2fb5d2
}

.block-categories .arrows .arrow-down, .block-categories .arrows[aria-expanded=true] .arrow-right {
  display : none
}

.block-categories .arrows[aria-expanded=true] .arrow-down {
  display : inline-block
}

/********************
	Part - Style active filters
********************/
.active_filters {
  background    : #dededd;
  padding       : .625rem 1.875rem 0;
  margin-bottom : 1.25rem
}

.active_filters .active-filter-title {
  display      : inline;
  margin-right : .625rem;
  font-weight  : 600
}

.active_filters ul {
  display : inline
}

.active_filters .filter-block {
  box-shadow    : 2px 2px 8px 0 rgba(0, 0, 0, .2);
  color         : var(--color-black-default);
  margin-right  : .625rem;
  margin-bottom : .625rem;
  background    : #fff;
  padding       : .625rem;
  display       : inline-block;
  font-size     : .8125rem
}

.active_filters .filter-block .close {
  color       : var(--color-black-default);
  font-size   : .9375rem;
  opacity     : 1;
  margin-top  : .1875rem;
  margin-left : .3125rem
}
/********************
	Part - Style search filters
********************/
#search_filters,
#search_filters_brands,
#search_filters_suppliers {
  margin-bottom : 1.563rem;
  background    : #fff;
  padding       : 1.563rem 1.25rem
}

#search_filters .facet,
#search_filters_brands .facet,
#search_filters_suppliers .facet {
  padding-top : .625rem
}

#search_filters .facet .collapse,
#search_filters_brands .facet .collapse,
#search_filters_suppliers .facet .collapse {
  display : block
}

#search_filters .facet .facet-title,
#search_filters_brands .facet .facet-title,
#search_filters_suppliers .facet .facet-title {
  color : var(--color-grey-font-default)
}

#search_filters .facet .facet-label,
#search_filters_brands .facet .facet-label,
#search_filters_suppliers .facet .facet-label {
  margin-bottom : 0
}

#search_filters .facet .facet-label a,
#search_filters_brands .facet .facet-label a,
#search_filters_suppliers .facet .facet-label a {
  margin-top : .4375rem;
  color      : var(--color-black-default);
  display    : inline-block;
  font-size  : .9375rem
}

#search_filters_brands .facet,
#search_filters_suppliers .facet {
  padding-top : 0
}

#search_filters_brands .facet .facet-label,
#search_filters_suppliers .facet .facet-label {
  margin-bottom : .3125rem
}

@media (max-width : 991px) {
  #search_filters .facet .facet-label {
    text-align : left
  }
}
/********************
	Part - Style facets
********************/
.facets-title {
  color : var(--color-black-default)
}
.facet-dropdown {
  color         : var(--color-grey-font-default);
  padding-left  : 0;
  padding-right : 0;
  background    : var(--color-grey-default);
  border        : 3px solid transparent;
  box-sizing    : border-box;
  box-shadow    : 1px 1px 1px 1px var(--color-grey-default)
}

.facet-dropdown.open {
  border : 0
}

.facet-dropdown.open > .select-title {
  border     : 3px solid #2fb5d2;
  background : #f6f6f6
}

.facet-dropdown .select-title {
  display           : -webkit-inline-box;
  display           : -ms-inline-flexbox;
  display           : inline-flex;
  -webkit-box-align : center;
  -ms-flex-align    : center;
  align-items       : center;
  margin-left       : 0;
  width             : 100%;
  color             : var(--color-black-default);
  background        : var(--color-grey-default);
  padding           : .625rem .625rem .625rem 1.25rem;
  cursor            : pointer
}

.facet-dropdown .select-title > i {
  margin-left : auto
}

.facet-dropdown .select-list {
  display    : block;
  color      : var(--color-black-default);
  background : #f6f6f6;
  padding    : .625rem 1.25rem
}

.facet-dropdown .select-list:hover {
  background      : #2fb5d2;
  color           : #fff;
  text-decoration : none
}

.facet-dropdown .dropdown-menu {
  padding    : 0;
  margin-top : 3px;
  left       : auto;
  width      : 100%;
  background : #f6f6f6;
  border     : none;
  box-shadow : 1px 1px 1px 1px var(--color-grey-default)
}

.bg-single-line-category {
  position: absolute;
  top: 45px;
  left: 0;
  width: 100%;
}

.section_filter {
  display: flex;
  align-items: center;
  justify-content: center;
}

.products-selection {
  position: sticky;
  top: 0;
  z-index: 1;
}


/*************************
Part Pagination
**************************/

.products-loading-status {
  position: relative;
  background: #EFEFE7;
  width: 100%;
  max-width: 350px;
  height: 4px;
  margin: 1.5em auto;
  border-radius: 14px;
}

.products-loading-status__loaded-bar {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  height: 100%;
  background: var(--color-primary);
  border-radius: 14px;
}

.before-footer-category {
  position: relative;
}

.before-footer-category-container {
  position: absolute;
  top: 50%;
  left: 50px;
  background-color: transparent;
  transform: translateY(-50%);
  width: 45%;
}

body#category .accordion-header,body#category .accordion-content {
  background-color: unset;
}

body#category .accordion-header {
  font-weight: 600;
  font-size: 22px;
  border-top: 1px solid #CCD4DA;
}

body#category .accordion:last-child {
  border-bottom: 1px solid #CCD4DA;
}

body#category .part_inner img {
  height: unset;
}
