/********************
	Part - layout
********************/

#wrapper {
  background: #fff !important;
}

.wrapper__inner {
  display: grid;
  grid-template-columns: 1fr;
  grid-column-gap: 20px;
  max-width: 100%;
}

.pagenotfound #content-wrapper {
  grid-column: 2/4;
}

/********************
	Part - top header
********************/

#product-list-header {
  grid-column: 1/-1;
  grid-row: 1;
}



/********************
	Part - main content
********************/
#content-wrapper {
  grid-column: 3/4;
  grid-row: 2/3;
  flex: 1 0 0;
}

/********************
	Part - Listes produits header
********************/

#js-product-list-header {
  grid-column: 1/-1;
  padding-bottom: 15px;
}

/********************
	Part - Listes produits
********************/

.products {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(calc(125px + (225 - 125) * ((100vw - 320px) / (1920 - 320))), 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;
}

.pagenotfound .wrapper__inner {
  padding: calc(40px + (80 - 40) * ((100vw - 320px) / (1920 - 320))) 0;
}

.page-not-found__img img {
  max-width: 200px;
}

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

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

.pagination .page-list {
  display: flex;
  justify-content: center;
  background: #fff;
  padding: .375rem;
  margin-bottom: 0;
}

.pagination .page-list li {
  display: inline;
  padding: 0.25em;
}

.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: var(--color-primary);
  text-decoration: none;
  transition: all 0.35s ease-in-out;
}

.pagination a {
  transition: all 0.35s ease-in-out;
}

.pagination a:hover {
  color: var(--color-primary);
}

/********************
	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)
}

/********************
	Part - FAQ
********************/

.category-faq-container {
  border: 1px solid var(--color-primary);
  border-radius: 5px;
  padding: 1em;
  margin-top: 2em;
}

.category-faq-text-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: var(--color-primary);
}

.category-faq-text {
  display: block;
  margin-bottom: 0.5em;
}
