@keyframes fibofilters-skel-shimmer {
  0% {
    background-position: -200% 0;
  }
  to {
    background-position: 200% 0;
  }
}

@keyframes fibofilters-fadein {
  to {
    opacity: 1;
  }
}

.fibofilters-skeleton {
  animation: fibofilters-fadein 1.5s linear forwards;
  animation-delay: 0.3s;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  opacity: 0;
}

.fibofilters-skeleton--vertical {
  max-width: 280px;
}

.fibofilters-skeleton--horizontal .fibofilters-skel-btn,
.fibofilters-skeleton--mobile .fibofilters-skel-btn {
  margin-bottom: 8px;
}

/* Each skeleton element needs positioning context */
.fibofilters-skel {
  position: relative;
  overflow: hidden;
  background: #e0e0e0;
}

.fibofilters-skel-btn {
  border-radius: 6px;
  flex: 0 0 auto;
  height: 38px;
  margin-right: 1rem;
  width: 7rem;
  position: relative;
  overflow: hidden;
  background: #e0e0e0; /* Make sure this is visible */
}

.fibofilters-skel::after,
.fibofilters-skel-btn::after {
  animation: fibofilters-skel-shimmer 1.4s ease-in-out infinite;
  background-image: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.5) 45%,
    transparent 60%
  );
  background-size: 200% 100%;
  content: "";
  inset: 0;
  position: absolute;
}

@media (prefers-reduced-motion: reduce) {
  .fibofilters-skel::after,
  .fibofilters-skel-btn::after {
    animation: none;
  }
}

.fibofilters-product-placeholder {
  position: relative
}

li.fibofilters-product-placeholder {
  list-style: none
}

.fibofilters-product-placeholder img {
  margin: 0 auto
}

.fibofilters-product-placeholder:before {
  bottom: 5%;
  content: "";
  display: block;
  height: 4px;
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  width: 50%;
  z-index: 1;
  --fiboFiltersPlaceholderL: no-repeat linear-gradient(#aaa 0 0);
  animation: fiboFiltersPlaceholderFrames 3s infinite;
  background: var(--fiboFiltersPlaceholderL), var(--fiboFiltersPlaceholderL), #eee;
  background-size: 58% 100%
}

@keyframes fiboFiltersPlaceholderFrames {
  0% {
    background-position: -150% 0, -150% 0
  }

  66% {
    background-position: 250% 0, -150% 0
  }

  to {
    background-position: 250% 0, 250% 0
  }
}

.fibofilters-applied-filters-container {
  padding: 0;
  width: 100%
}

.fibofilters-applied-filters-container *,
.fibofilters-applied-filters-container :after,
.fibofilters-applied-filters-container :before {
  box-sizing: border-box
}

.fibofilters-applied-filters-container:empty {
  display: none
}

.fibofilters-applied-filters-container {
  clear: both
}

.fibofilters-applied-filters {
  padding-bottom: 20px
}

.fibofilters-applied-filters .fibofilters-applied-filter, .fibofilters-button.fibofilters-filter-button {
    align-items: center;
    background-color: var(--bg-card);
    border-radius: 0.45em;
    box-shadow: inset 0 0 0 1px var(--shadow-primary);
    color: var(--text-body);
    cursor: default;
    display: inline-flex;
    flex-flow: row-reverse;
    font-size: 1em;
    font-weight: 400;
    justify-content: space-between;
    line-height: 1.25em;
    margin: 0 8px 8px 0;
    padding: 8px 12px;
    transition: box-shadow 0.2s;
    opacity: 0.9;
    border: 1px solid var(--border-primary);
}

.fibofilters-applied-filters .fibofilters-applied-filter span {
  transition: -webkit-text-decoration 0.2s;
  transition: text-decoration 0.2s;
  transition: text-decoration 0.2s, -webkit-text-decoration 0.2s;
}

.fibofilters-applied-filters .fibofilters-applied-filter strong {
  font-weight: 600;
}

.fibofilters-applied-filters .fibofilters-applied-filter--outlined {
  box-shadow: inset 0 0 0 2px #363636;
}

.fibofilters-applied-filters .fibofilters-applied-filter--clear-all {
  cursor: pointer;
}

.fibofilters-applied-filters .fibofilters-applied-filter--clear-all:focus,
.fibofilters-applied-filters .fibofilters-applied-filter--clear-all:hover {
  box-shadow: inset 0 0 0 2px #363636;
  outline: none;
}

.fibofilters-applied-filters .fibofilters-applied-filter-icon {
  background-color: transparent;
  cursor: pointer;
  line-height: 1;
  margin-left: 1.05em;
  padding: 0;
  position: relative;
}

.fibofilters-applied-filters .fibofilters-applied-filter-icon:before {
  background-color: var(--secondary);
  border-radius: 100%;
  content: "" !important;
  height: 1.7em;
  left: 50%;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.2s;
  width: 1.7em;
  z-index: 0;
}

.fibofilters-applied-filters .fibofilters-applied-filter-icon:focus,
.fibofilters-applied-filters .fibofilters-applied-filter-icon:hover {
  outline: none;
}

.fibofilters-applied-filters .fibofilters-applied-filter-icon:focus:before,
.fibofilters-applied-filters .fibofilters-applied-filter-icon:hover:before {
  opacity: 0.3;
}

.fibofilters-applied-filters .fibofilters-applied-filter-icon:focus + span,
.fibofilters-applied-filters .fibofilters-applied-filter-icon:hover + span {
  text-decoration: line-through;
}

.fibofilters-vertical-filters-container .fibofilters-block:first-child {
  padding-top: 0;
}

.fibofilters-block {
  border-bottom: 1px solid #f2f2f2;
  font-size: 14px;
  padding: 15px 0;
}

@media (min-width: 768px) {
  .fibofilters-block {
    font-size: 15px;
  }
}

.fibofilters-block:last-of-type {
  border: none;
}

.fibofilters-block--collapsible .fibofilters-block__headline {
  cursor: pointer;
}

.fibofilters-block .fibofilters-block__items-list-wrapper--has-scrollbar {
  padding-right: 0.6em;
}

.fibofilters-block ul.fibofilters-block__items-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.fibofilters-block ul.fibofilters-block__items-list--hidden {
  display: none;
}

.fibofilters-block
  ul.fibofilters-block__items-list
  ul.fibofilters-block__items-list {
  margin-left: 20px;
  margin-top: 0.5em;
}

.fibofilters-block__headline .fibofilters-block__headline-box-inner {
  align-items: center;
  color: var(--text-body);
  display: flex;
  font-size: 18px;
  font-weight: 600;
  gap: 3px;
  line-height: 23px;
  margin: 0;
  padding: 0;
}

@media (min-width: 768px) {
  .fibofilters-block__headline .fibofilters-block__headline-box-inner {
    font-size: 1.33em;
    line-height: 1.33em;
  }
}

.fibofilters-block__headline p,
.fibofilters-block__headline span {
  color: var(--text-muted);
  font-size: 1em;
  font-weight: 400;
  line-height: 1.25em;
}

.fibofilters-block__headline p {
  margin-bottom: 0.85em;
}

.fibofilters-block__headline-box {
  align-items: center;
  display: flex;
  flex-flow: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  width: 100%;
}

.fibofilters-block__headline-box-icon {
  display: block;
  height: 18px;
  margin-left: 10px;
  width: 18px;
}

.fibofilters-block__chevron-btn {
  background-color: transparent;
  border: none;
  border-radius: 100%;
  box-shadow: none;
  margin-left: auto;
  outline: none;
  padding: 0;
  position: relative;
}

.fibofilters-block__chevron-btn:focus,
.fibofilters-block__chevron-btn:hover {
  background: none;
  outline: none;
}

.fibofilters-block__chevron-btn-icon {
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(0);
}

.fibofilters-block__breadcrumbs {
  display: block;
  font-size: 0.9em;
  margin-bottom: 0.8em;
  margin-top: 0.5em;
}

.fibofilters-block__breadcrumbs a {
  border-radius: 2px;
  color: var(--fibofilters--colors--link) !important;
  font-weight: 400 !important;
  text-decoration: none !important;
}

.fibofilters-block__content {
  opacity: 1;
  transition: all 0.5s;
}

.fibofilters-block__content-inner {
  padding: 0.9em 0 0;
}

.fibofilters-block .amount {
  color: inherit;
  font-weight: inherit;
}

.fibofilters-button {
  cursor: pointer;
  display: inline-block;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.fibofilters-button svg,
.fibofilters-button--disabled {
  pointer-events: none;
}

.fibofilters-item {
  list-style: none;
  margin: 0;
  padding: 0 0 0.5em;
  position: relative;
  text-align: left;
}

.fibofilters-item:last-of-type {
  padding-bottom: 0;
}

.fibofilters-item__interactive {
  align-items: center;
  cursor: pointer !important;
  display: flex;
  justify-content: flex-start;
}

.fibofilters-item__interactive:focus {
  outline: none;
}

.widget-area .widget a.fibofilters-item__interactive,
a.fibofilters-item__interactive {
  font-weight: 400;
  text-decoration: none;
}

.fibofilters-item__control {
  background: var(--bg-body-alt);
  border: 0.125em solid #bbb;
  cursor: pointer;
  height: 1.25em;
  margin-right: 0.6em;
  position: relative;
  transition: background 0.3s;
  width: 1.25em;
}

.fibofilters-item__control:after,
.fibofilters-item__control:before {
  content: "";
  left: 0;
  position: absolute;
  top: 0;
}
.fibofilters-item
  img.fibofilters-item__label_image.fibofilters-item__label_image--before-label,
.fibofilters-item__label_image.fibofilters-item__label_image--before-label {
  margin-right: 0.3em;
}
.fibofilters-item
  img.fibofilters-item__label_image.fibofilters-item__label_image--after-label,
.fibofilters-item__label_image.fibofilters-item__label_image--after-label {
  margin-left: 0.3em;
}

.fibofilters-item__label {
  color: var(--text-body);
  opacity: 0.9;
  line-height: 1.5em;
}

.fibofilters-item__counter {
  color: var(--text-muted);
  margin-left: auto;
  padding-left: 0.3em;
  white-space: nowrap;
}

.fibofilters-item.fibofilters-selected
  > .fibofilters-collapser-container
  > .fibofilters-item__interactive
  > .fibofilters-item__control,
.fibofilters-item.fibofilters-selected
  > .fibofilters-item__interactive
  > .fibofilters-item__control {
  background: var(--secondary);
  border: none;
}

.fibofilters-item.fibofilters-selected a.fibofilters-item__interactive,
.fibofilters-item.fibofilters-selected
  > .fibofilters-collapser-container
  > a.fibofilters-item__interactive
  .fibofilters-item__label
  span,
.fibofilters-item.fibofilters-selected
  > a.fibofilters-item__interactive
  .fibofilters-item__label
  span,
.widget-area
  .widget
  .fibofilters-item.fibofilters-selected
  a.fibofilters-item__interactive {
  font-weight: 600;
}

.fibofilters-item.fibofilters-disabled {
  opacity: 0.4;
}

.fibofilters-item.fibofilters-disabled .fibofilters-disabled {
  opacity: 1;
}
.fibofilters-item.fibofilters-always-selected
  > div
  .fibofilters-item__interactive {
  cursor: default !important;
}

.fibofilters-item.fibofilters-always-selected
  > div
  .fibofilters-item__interactive
  .fibofilters-item__control {
  cursor: default;
  opacity: 0.4;
}

.fibofilters-item--checkbox .fibofilters-collapser-container {
  display: flex;
}

.fibofilters-item--checkbox
  .fibofilters-collapser-container
  .fibofilters-collapser {
  height: 22px;
  width: 20px;
}

.fibofilters-item--checkbox
  .fibofilters-collapser-container
  .fibofilters-collapser
  .fibofilters-button {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  width: 100%;
}

.fibofilters-item--checkbox
  .fibofilters-collapser-container
  .fibofilters-collapser
  .fibofilters-button
  svg {
  transform: rotate(90deg);
}

.fibofilters-item--checkbox
  .fibofilters-collapser-container
  .fibofilters-collapser--open
  .fibofilters-button
  svg {
  transform: rotate(180deg);
}

.fibofilters-item--checkbox
  .fibofilters-collapser-container
  .fibofilters-item__interactive {
  width: 100%;
}

.fibofilters-item--checkbox
  .fibofilters-item__interactive:hover
  > .fibofilters-item__control {
  box-shadow: inset 0 0 0 2px var(--border-primary);
}

.fibofilters-item--checkbox .fibofilters-item__control {
  border: 2px solid var(--border-primary);
  border-radius: 0.175em;
  height: 20px;
  min-width: 20px;
  position: relative;
  transition: box-shadow 0.2s, background-color 0.2s;
  width: 20px;
}

.fibofilters-item--checkbox .fibofilters-item__control svg {
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.fibofilters-popover .fibofilters-block--buttons {
  max-width: 300px;
}

.fibofilters-block--buttons .fibofilters-block__items-list {
  display: flex;
  flex-wrap: wrap;
  grid-row-gap: 10px;
  grid-column-gap: 7px;
}

.fibofilters-block--buttons .fibofilters-item--more-less {
  margin-top: 0.4em;
}

.fibofilters-item {
  caret-color: transparent;
}

.fibofilters-item--button {
  border-radius: 0.25em;
  box-shadow: inset 0 0 0 1px var(--border-primary);
  padding: 0;
  transition: box-shadow 0.2s, background-color 0.2s, opacity 0.2s;
}

.fibofilters-item--button .fibofilters-item__label {
  padding: 3px 7px;
}

.fibofilters-item--button .fibofilters-item__counter {
  margin-left: -2px;
  padding-left: 0;
  padding-right: 7px;
}

.fibofilters-item--button:hover {
  box-shadow: inset 0 0 0 2px var(--border-primary);
}

.fibofilters-item--button.fibofilters-selected {
  background-color: var(--secondary);
  box-shadow: none;
}

.fibofilters-item--button.fibofilters-selected:hover {
  opacity: 0.9;
}

.fibofilters-item--button.fibofilters-selected .fibofilters-item__counter,
.fibofilters-item--button.fibofilters-selected .fibofilters-item__label span {
  color: #fff;
}

.fibofilters-item--color {
  padding: 0;
}

.fibofilters-item--color > .fibofilters-item__interactive-wrapper {
  border-radius: 100%;
  box-shadow: 2px 2px 5px hsla(0, 0%, 50%, 0.6);
  transition: transform 0.1s ease-in-out;
}

.fibofilters-item--color .fibofilters-item__color {
  border-radius: 100%;
  box-shadow: 0 0 1px hsla(0, 0%, 50%, 0.2);
  height: 30px;
  padding: 1px;
  width: 30px;
}

.fibofilters-item--color .fibofilters-item__color-inner {
  align-items: center;
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 18px;
  display: flex;
  height: 100%;
  justify-content: center;
}

.fibofilters-item--color:hover > .fibofilters-item__interactive-wrapper {
  transform: scale(1.1);
}
.fibofilters-vertical-filters-container {
  padding: 0;
  width: 100%;
}

.fibofilters-vertical-filters-container *,
.fibofilters-vertical-filters-container :after,
.fibofilters-vertical-filters-container :before {
  box-sizing: border-box;
}
.fibofilters-item--more-less {
  color: var(--fibofilters--colors--link) !important;
  width: 100%;
}

.fibofilters-item .fibofilters-item--more-less {
  padding-left: 1.2em;
}
.fibofilters-items-search {
  align-items: center;
  border-radius: 0.45em;
  box-shadow: inset 0 0 0 1px var(--border-primary);
  display: flex;
  justify-content: space-between;
  margin-bottom: 1em;
  transition: all 0.2s;
}
.fibofilters-items-search input[type="search"] {
  background: none;
  border: none;
  box-shadow: none;
  color: var(--text-muted);
  cursor: text;
  font-size: max(16px, 100%);
  height: 35px;
  padding: 7px 44px 7px 9px;
  position: relative;
  width: 100%;
}

@media (min-width: 768px) {
  .fibofilters-items-search input[type="search"] {
    height: 40px;
    padding: 9px 44px 9px 9px;
  }
}
.fibofilters-items-search__controls {
  align-items: center;
  display: flex;
  justify-content: space-between;
  position: relative;
}
.fibofilters-block--collapsed .fibofilters-block__content {
    max-height: 0;
    opacity: 0;
    pointer-events: none;
    transition: all .25s
}

.fibofilters-block--collapsed .fibofilters-block__chevron-btn .fibofilters-block__chevron-btn-icon {
    transform: translateY(-50%) rotate(180deg)
}




.fibofilters-mobile-overlay {
	padding: 0;
	width: 100%
}

.fibofilters-mobile-overlay *,
.fibofilters-mobile-overlay :after,
.fibofilters-mobile-overlay :before {
	box-sizing: border-box
}

.fibofilters-mobile-overlay:empty {
	display: none
}

.fibofilters-mobile-overlay {
	background-color: var(--bg-card);
	bottom: 0;
	display: flex;
	flex-direction: column;
	left: 0;
	max-width: 100%;
	overflow-y: auto;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 100001
}

.fibofilters-mobile-overlay .fibofilters-block:last-of-type {
	border-bottom: 1px solid #f2f2f2;
	margin-bottom: 34px
}

.fibofilters-mobile-overlay__footer,
.fibofilters-mobile-overlay__header {
	background-color: var(--bg-body);
	left: 0;
	position: fixed;
	right: 0;
	z-index: 10
}

.fibofilters-mobile-overlay__header {
	align-items: center;
	display: flex;
	justify-content: flex-start;
	padding: 12px 10px 16px;
	top: 0
}

.fibofilters-mobile-overlay__header-title {
	color: var(--text-muted);
	font-size: 18px;
	line-height: 23px;
	margin: 0 8px
}

.fibofilters-mobile-overlay__header-tooltip-icon {
	display: block;
	height: 18px;
	width: 18px
}

.fibofilters-mobile-overlay__header-clear,
.fibofilters-mobile-overlay__header-close {
	background-color: var(--bg-card);
   border-radius: 4px;
   color: var(--text-muted);
   font-size: 15px;
   font-weight: 400;
   line-height: 19px;
   margin: 0;
   padding: 8px;
}

.fibofilters-mobile-overlay__header-clear:hover,
.fibofilters-mobile-overlay__header-close:hover {
	background-color: #fff
}

.fibofilters-mobile-overlay__header-clear:focus,
.fibofilters-mobile-overlay__header-close:focus {
	outline-color: var(--fibofilters--colors--base);
	outline-style: dotted;
	outline-width: 2px
}

.fibofilters-mobile-overlay__header-clear {
	margin-left: auto
}

.fibofilters-mobile-overlay__header-clear:before {
	color: #d9d9d9;
	content: "|";
	display: inline-block;
	font-size: 15px;
	line-height: 19px;
	margin: 0 6px 0 auto
}

.fibofilters-mobile-overlay__content {
	margin-bottom: 66px;
	margin-top: 58px;
	padding-left: 18px;
	padding-right: 18px
}

.fibofilters-mobile-overlay__footer {
	bottom: 0;
	padding: 16px 18px
}

.fibofilters-mobile-overlay__footer .fibofilters-button {
	background-color: #363636;
	border: 1px solid #161616;
	border-radius: 6px;
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	line-height: 18px;
	padding: 8px 12px;
	text-align: center;
	transition: background-color .3s;
	width: 100%
}

.fibofilters-mobile-overlay__footer .fibofilters-button:hover {
	background-color: #030303;
	border: 1px solid #161616;
	color: #fff
}

.fibofilters-mobile-overlay__footer .fibofilters-button:focus {
	outline-color: var(--fibofilters--colors--base);
	outline-style: dotted;
	outline-width: 2px
}

.fibofilters-mobile-filters-container {
	padding: 0;
	width: 100%
}

.fibofilters-mobile-filters-container *,
.fibofilters-mobile-filters-container :after,
.fibofilters-mobile-filters-container :before {
	box-sizing: border-box
}

.fibofilters-mobile-filters-container:empty {
	display: none
}

.fibofilters-mobile-filters-container .fibofilters-mobile-filters {
	padding-bottom: 20px
}

.fibofilters-mobile-filters-container .fibofilters-mobile-filters .fibofilters-custom-html {
	display: inline-block
}

.fibofilters-mobile-filters-container .fibofilters-filter-button {
	margin-bottom: 8px
}




.fibofilters-filter-button.fibofilters-button--has-icon svg {
	margin-bottom: -2px;
	margin-left: 6px;
	transform: scale(1.2)
}

.fibofilters-item--link .fibofilters-collapser-container .fibofilters-collapser .fibofilters-button {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	width: 100%
}

.fibofilters-item--link .fibofilters-collapser-container .fibofilters-collapser .fibofilters-button svg {
	transform: rotate(90deg)
}

.fibofilters-item--link .fibofilters-collapser-container .fibofilters-collapser--open .fibofilters-button svg {
	transform: rotate(180deg)
}

fibofilters-button {
	cursor: pointer;
	display: inline-block;
	position: relative;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none
}

.fibofilters-button svg,
.fibofilters-button--disabled {
	pointer-events: none
}

.fibofilters-mobile-filters {
    display: flex;
    align-items: center;
}