/*
	Website for Landor

	Author: Damian Heini, VIZUAL <dh@vizual.ch>

	Products filter view
*/
#viz-product-filter-container {
  margin-bottom: 2rem;
  font-family: 'Albert Sans', sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #fff;
  line-height: 1.125em;
}
#viz-product-filter-container .viz-tabpanel-container ul.viz-tabpanel-navi {
  display: flex;
  column-gap: 1.25rem;
  margin-bottom: 0;
  padding: 0;
  list-style: none;
}
#viz-product-filter-container .viz-tabpanel-container ul.viz-tabpanel-navi li.viz-tab-navi-item {
  position: relative;
  flex: 1 1 calc(33.33% - 1.25rem);
  height: 4.75rem;
  padding: 0 0.5rem 0 0.75rem;
  background-color: #88b444;
  font-size: 1.25rem;
  box-sizing: border-box;
  border-radius: 0.25rem;
  box-shadow: 0px 0px 5px 0px rgba(50,50,50,0.75);
}
#viz-product-filter-container .viz-tabpanel-container ul.viz-tabpanel-navi li.viz-tab-navi-item.active {
  height: 6rem;
}
#viz-product-filter-container .viz-tabpanel-container ul.viz-tabpanel-navi li.viz-tab-navi-item.active a .viz-tab-navi-item-indicator {
  opacity: 0;
}
#viz-product-filter-container .viz-tabpanel-container ul.viz-tabpanel-navi li.viz-tab-navi-item a {
  display: block;
  margin: 0;
  color: #fff;
  font-size: clamp(1rem, 3.5vw, 1.626rem);
  line-height: 1.25em;
  padding: 0.5em 1.25em 0.5em 0;
}
#viz-product-filter-container .viz-tabpanel-container ul.viz-tabpanel-navi li.viz-tab-navi-item a span {
  display: block;
  margin: 0;
  padding: 0;
}
#viz-product-filter-container .viz-tabpanel-container ul.viz-tabpanel-navi li.viz-tab-navi-item a .viz-tab-navi-item-indicator {
  position: absolute;
  display: inline-block;
  bottom: 0.5rem;
  right: 0.5rem;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background-color: #76b6d8;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 68%;
  background-image: url("../Images/plus-indicator.svg");
  transition: opacity 200ms ease;
}
#viz-product-filter-container .viz-tabpanel-content {
  margin-top: -2px;
  background-color: #88b444;
  box-shadow: 0px 0px 5px 0px rgba(50,50,50,0.75);
}
#viz-product-filter-container .viz-tabpanel-content .viz-info-panel-box {
  position: relative;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity 500ms ease 100ms;
  background-color: #88b444;
}
#viz-product-filter-container .viz-tabpanel-content .viz-info-panel-box.active {
  height: auto;
  width: auto;
  overflow: visible;
  opacity: 1;
}
#viz-product-filter-container .viz-tabpanel-content .viz-info-panel-box .viz-info-panel-box-content {
  padding: 1rem;
}
#viz-product-filter-container .viz-tabpanel-content .viz-info-panel-box .viz-multi-column-container {
  display: flex;
  flex-direction: column;
}
#viz-product-filter-container .viz-tabpanel-content .viz-info-panel-box .viz-multi-column-container .viz-multi-column {
  padding: 0;
}
#viz-product-filter-container .viz-tabpanel-content .viz-info-panel-box .viz-multi-column-container .viz-multi-column.col-1 {
  flex: 1 1 auto;
}
#viz-product-filter-container .viz-tabpanel-content .viz-info-panel-box .viz-multi-column-container .viz-multi-column.col-2 {
  flex: 1 1 auto;
}
.viz-filter-item {
  position: relative;
  border: none;
  border-radius: 0.25rem;
  transition: color 300ms ease, transform 300ms ease;
  overflow: hidden;
}
.viz-filter-item input[type=checkbox] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
.viz-filter-item .viz-filter-item-label {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  cursor: pointer;
  background-color: #4c7729;
}
.viz-filter-item span {
  display: block;
  text-align: center;
  color: #88b444;
  transition: color 300ms;
}
.viz-filter-item .item-label {
  padding: 0 0 0.25rem 0;
  font-size: 2rem;
  line-height: 1em;
}
.viz-filter-item .item-name {
  font-size: 0.8rem;
}
.viz-filter-item.active {
  box-shadow: 0px 0px 5px 0px rgba(50,50,50,0.75);
  transform: scale(1.05);
}
.viz-filter-item.active span {
  color: #fff;
}
.viz-filter-item:hover {
  box-shadow: 0px 0px 5px 0px rgba(50,50,50,0.75);
  transform: scale(1.05);
}
form.viz-products-search-form button {
  color: #fff;
  background-color: #88b444;
  border: 2px solid #4c7729;
}
form.viz-products-search-form button:hover {
  color: #fff;
  background-color: #4c7729;
}
#viz-products-filter-form-ingredients {
  position: relative;
  margin-bottom: 1rem;
}
#viz-products-filter-form-ingredients .viz-filter-item {
  width: 8.75rem;
  height: auto;
  margin: 0 0 0.5rem 0;
}
#viz-products-filter-form-ingredients .viz-filter-item.viz-product-filter-solidity-item .item-label,
#viz-products-filter-form-ingredients .viz-filter-item.viz-product-filter-bio-item .item-label {
  padding: 0.75rem 1rem 1rem 1rem;
  font-size: 1.25rem;
}
#viz-products-filter-form-ingredients fieldset legend {
  display: block;
  margin-bottom: 0.75rem;
}
#viz-products-filter-form-ingredients fieldset legend.viz-container-description {
  text-align: center;
  font-size: 1rem;
}
#viz-products-filter-form-ingredients .viz-form-button-wrapper {
  display: flex;
  justify-content: center;
}
#viz-products-filter-form-ingredients .viz-product-filter-ingredients {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin-left: -1rem;
}
#viz-products-filter-form-ingredients .viz-product-filter-ingredients .viz-filter-item {
  flex: 0 1 5.75rem;
  width: 5.75rem;
  height: 5.25rem;
  margin: 0 0 1rem 1rem;
}
#viz-products-filter-form-ingredients .viz-product-filter-composition {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
#viz-products-filter-form-ingredients .viz-product-filter-composition .viz-filter-item {
  margin: 0 0 1rem 1rem;
}
#viz-products-filter-form-ingredients .viz-product-filter-additional {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
#viz-products-filter-form-ingredients .viz-product-filter-additional .viz-filter-item.viz-product-filter-bio-item {
  width: auto;
}
#viz-products-filter-form-ingredients .viz-product-filter-additional .viz-filter-item.viz-product-filter-bio-item.active label svg path {
  fill: #fff;
}
#viz-products-filter-form-ingredients .viz-product-filter-additional .viz-filter-item.viz-product-filter-bio-item label {
  flex-direction: row;
}
#viz-products-filter-form-ingredients .viz-product-filter-additional .viz-filter-item.viz-product-filter-bio-item label svg {
  width: 3.5rem;
  height: auto;
  margin: 0 0 0 1rem;
}
#viz-products-filter-form-ingredients .viz-product-filter-additional .viz-filter-item.viz-product-filter-bio-item label svg path {
  fill: #88b444;
  transition: fill 300ms ease;
}
.viz-filter-category-links ul {
  margin: 0 0 0.75rem 0;
  padding: 0;
  column-count: 3;
  column-gap: 2em;
  list-style: none;
  line-height: 2em;
  font-size: 1.1rem;
  font-weight: 600;
}
.viz-filter-category-links ul li {
  display: inline-block;
  width: 100%;
  margin: 0 0 -1px 0;
  padding: 0;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}
.viz-filter-category-links ul li a {
  display: block;
  color: #4c7729;
  line-height: 1.25em;
  padding: 0.5em 0;
}
.viz-filter-category-links ul li a:hover,
.viz-filter-category-links ul li a.active {
  color: $naviTextColorActive;
  border-bottom-color: $naviTextColorActive;
}
.viz-products-freetext-search-form input.viz-form-field-full-width {
  max-width: 100%;
}
.viz-products-freetext-search-form input.viz-form-field-searchterm {
  margin-top: 0.5rem;
  margin-bottom: 1rem;
  line-height: 1.75em;
  border-radius: 0.25rem;
}
@media screen and (max-width: 660px) {
  #viz-product-filter-container .viz-tabpanel-container ul.viz-tabpanel-navi {
    column-gap: 0.9rem;
  }
  #viz-product-filter-container .viz-tabpanel-container ul.viz-tabpanel-navi li.viz-tab-navi-item {
    flex: 1 1 calc(33.33% - 0.9rem);
    padding: 0 0.5rem 0 0.5rem;
  }
  #viz-product-filter-container .viz-tabpanel-container ul.viz-tabpanel-navi li.viz-tab-navi-item a {
    padding: 0.25em 1em 0.5em 0;
  }
  .viz-filter-category-links ul {
    column-count: 2;
  }
  .viz-filter-category-links ul li {
    flex: 1 1 50%;
  }
  .viz-filter-category-links ul li a {
    line-height: 1.25em;
    padding: 0.5em 0;
  }
}
