@import url("https://fonts.googleapis.com/css?family=Mulish:300,regular,600,700,800&display=swap");
@import url("https://fonts.googleapis.com/css?family=Roboto:regular&display=swap");
@font-face {
  font-family: "icons";
  src: url("../fonts/icons.woff2") format("woff2"), url("../fonts/icons.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
[class*=_icon-]::before {
  display: inline-block;
  font-family: "icons";
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

*,
*::before,
*::after {
  padding: 0;
  margin: 0;
  border: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*::before,
*::after {
  display: inline-block;
}

a {
  text-decoration: none;
  color: inherit;
  display: inline-block;
}

li {
  list-style: none;
}

img {
  vertical-align: top;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: inherit;
  font-size: inherit;
}

html,
body {
  line-height: 1;
  height: 100%;
}

/* FORM */
input,
button,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
  background-color: transparent;
}

input,
textarea {
  width: 100%;
}

button,
select,
option {
  cursor: pointer;
}

input[type=text],
input[type=email],
input[type=tel],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.category {
  overflow: hidden;
}
@media (min-width: 90em) {
  .category {
    padding-top: 9.75rem;
  }
}
@media (min-width: 20em) and (max-width: 90em) {
  @supports (padding-top: clamp( 7.5rem , 6.8571428571rem  +  3.2142857143vw , 9.75rem )) {
    .category {
      padding-top: clamp( 7.5rem , 6.8571428571rem  +  3.2142857143vw , 9.75rem );
    }
  }
  @supports not (padding-top: clamp( 7.5rem , 6.8571428571rem  +  3.2142857143vw , 9.75rem )) {
    .category {
      padding-top: calc(7.5rem + 2.25 * (100vw - 20rem) / 70);
    }
  }
}
@media (max-width: 20em) {
  .category {
    padding-top: 7.5rem;
  }
}
@media (min-width: 90em) {
  .category__title:not(:last-child) {
    margin-bottom: 2.8125rem;
  }
}
@media (min-width: 20em) and (max-width: 90em) {
  @supports (margin-bottom: clamp( 1.875rem , 1.6071428571rem  +  1.3392857143vw , 2.8125rem )) {
    .category__title:not(:last-child) {
      margin-bottom: clamp( 1.875rem , 1.6071428571rem  +  1.3392857143vw , 2.8125rem );
    }
  }
  @supports not (margin-bottom: clamp( 1.875rem , 1.6071428571rem  +  1.3392857143vw , 2.8125rem )) {
    .category__title:not(:last-child) {
      margin-bottom: calc(1.875rem + 0.9375 * (100vw - 20rem) / 70);
    }
  }
}
@media (max-width: 20em) {
  .category__title:not(:last-child) {
    margin-bottom: 1.875rem;
  }
}
.category__wrap {
  position: relative;
}
.title-category {
  text-transform: uppercase;
  font-weight: 800;
  line-height: 1.125rem;
  letter-spacing: 0.1875rem;
}
@media (min-width: 90em) {
  .title-category {
    font-size: 1.875rem;
  }
}
@media (min-width: 20em) and (max-width: 90em) {
  @supports (font-size: clamp( 1.25rem , 1.0714285714rem  +  0.8928571429vw , 1.875rem )) {
    .title-category {
      font-size: clamp( 1.25rem , 1.0714285714rem  +  0.8928571429vw , 1.875rem );
    }
  }
  @supports not (font-size: clamp( 1.25rem , 1.0714285714rem  +  0.8928571429vw , 1.875rem )) {
    .title-category {
      font-size: calc(1.25rem + 0.625 * (100vw - 20rem) / 70);
    }
  }
}
@media (max-width: 20em) {
  .title-category {
    font-size: 1.25rem;
  }
}

.sidebar {
  padding: 0.3125rem;
  padding-right: 0.625rem;
  width: 18.8125rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background-color: #fff;
  position: absolute;
  top: 1rem;
  left: 0;
  z-index: 50;
  overflow-y: auto;
  pointer-events: all;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-transform: translateX(-150%);
      -ms-transform: translateX(-150%);
          transform: translateX(-150%);
  pointer-events: all;
}
.sidebar.visible {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}
@media (min-width: 61.99875em) {
  .sidebar {
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
  }
}
@media (max-width: 61.99875em) {
  .sidebar {
    -webkit-transform: translateX(-150%);
        -ms-transform: translateX(-150%);
            transform: translateX(-150%);
    -webkit-box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
            box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
    opacity: 0;
  }
}
.sidebar__close-btn img {
  width: 1.25rem;
  height: 1.25rem;
}
@media (min-width: 61.99875em) {
  .sidebar__close-btn {
    display: none;
  }
}
.sidebar__close-btn:not(:last-child) {
  margin-bottom: 1.25rem;
}

.filter-icon {
  padding-top: 0.625rem;
  z-index: 20;
}
.filter-icon img {
  width: 1.5625rem;
  height: 1.5625rem;
}
@media (min-width: 61.99875em) {
  .filter-icon {
    display: none;
  }
}

@media (min-width: 90em) {
  .item-sidebar {
    padding-bottom: 4rem;
  }
}
@media (min-width: 20em) and (max-width: 90em) {
  @supports (padding-bottom: clamp( 1.875rem , 1.2678571429rem  +  3.0357142857vw , 4rem )) {
    .item-sidebar {
      padding-bottom: clamp( 1.875rem , 1.2678571429rem  +  3.0357142857vw , 4rem );
    }
  }
  @supports not (padding-bottom: clamp( 1.875rem , 1.2678571429rem  +  3.0357142857vw , 4rem )) {
    .item-sidebar {
      padding-bottom: calc(1.875rem + 2.125 * (100vw - 20rem) / 70);
    }
  }
}
@media (max-width: 20em) {
  .item-sidebar {
    padding-bottom: 1.875rem;
  }
}
.item-sidebar__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 0.0625rem solid rgba(0, 0, 0, 0.5);
}
.item-sidebar__clear-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.9375rem;
}
.item-sidebar__clear-btn span {
  color: #c4c4c4;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
.item-sidebar__clear-btn svg {
  will-change: transform;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
@media (any-hover: hover) {
  .item-sidebar__clear-btn:hover span {
    color: #575454;
  }
  .item-sidebar__clear-btn:hover svg {
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.item-sidebar__list {
  padding-top: 2rem;
}
.item-sidebar__item:not(:last-child) {
  margin-bottom: 1rem;
}
@media (any-hover: hover) {
  .item-sidebar__item:hover .item-sidebar__link {
    color: #ed165f;
  }
}
.item-sidebar__link {
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
  font-weight: 600;
  line-height: 1.125rem;
}
.item-sidebar__link.active {
  color: #ed165f;
}
.item-sidebar__subtitle {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.125rem;
  padding-bottom: 1rem;
  text-transform: uppercase;
}
.item-collection.visible {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.custom-select {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  cursor: pointer;
  justify-self: flex-end;
  margin-bottom: 1rem;
}
@media (min-width: 90em) {
  .custom-select {
    margin-right: 1.75rem;
  }
}
@media (min-width: 20em) and (max-width: 90em) {
  @supports (margin-right: clamp( 0.0000000625rem , -0.4999999196rem  +  2.4999999107vw , 1.75rem )) {
    .custom-select {
      margin-right: clamp( 0.0000000625rem , -0.4999999196rem  +  2.4999999107vw , 1.75rem );
    }
  }
  @supports not (margin-right: clamp( 0.0000000625rem , -0.4999999196rem  +  2.4999999107vw , 1.75rem )) {
    .custom-select {
      margin-right: calc(0.0000000625rem + 1.7499999375 * (100vw - 20rem) / 70);
    }
  }
}
@media (max-width: 20em) {
  .custom-select {
    margin-right: 0.0000000625rem;
  }
}

.custom-select__trigger {
  border: 0.0625rem solid #000;
  padding: 0.5625rem 1rem;
  font-size: 0.875rem;
  font-weight: 600;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}

.custom-select__options {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background-color: #fff;
  border-left: 0.0625rem solid #000;
  border-right: 0.0625rem solid #000;
  border-bottom: 0.0625rem solid #000;
  overflow-y: auto;
  display: none;
  z-index: 10;
}

.custom-select__option {
  font-size: 0.875rem;
  font-weight: 600;
  padding: 0.5625rem 1rem;
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
}

.custom-select__option:hover {
  background-color: #ed165f;
  color: #fff;
  font-weight: 800;
}

.custom-select.open .custom-select__options {
  display: block;
}

.size {
  padding-top: 2rem;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
@media (min-width: 90em) {
  .size {
    gap: 1rem;
  }
}
@media (min-width: 20em) and (max-width: 90em) {
  @supports (gap: clamp( 0.3125rem , 0.1160714286rem  +  0.9821428571vw , 1rem )) {
    .size {
      gap: clamp( 0.3125rem , 0.1160714286rem  +  0.9821428571vw , 1rem );
    }
  }
  @supports not (gap: clamp( 0.3125rem , 0.1160714286rem  +  0.9821428571vw , 1rem )) {
    .size {
      gap: calc(0.3125rem + 0.6875 * (100vw - 20rem) / 70);
    }
  }
}
@media (max-width: 20em) {
  .size {
    gap: 0.3125rem;
  }
}
.size__item {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  width: 100%;
  padding: 0.4375rem;
  border-radius: 0.125rem;
  border: 0.0625rem solid rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}
.size__item.active {
  background-color: #ed165f;
  color: #fff;
}
@media (any-hover: hover) {
  .size__item:hover {
    background-color: #ed165f;
    color: #fff;
  }
}

.color {
  padding-top: 2rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: 0.625rem;
     -moz-column-gap: 0.625rem;
          column-gap: 0.625rem;
  row-gap: 1rem;
}
.color__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4375rem;
}
@media (any-hover: hover) {
  .color__item:hover .color__color {
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.color__color {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 0.125rem;
  will-change: transform;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.color__color.active {
  border: 0.0625rem solid #000000;
}
.color__name {
  font-size: 0.875rem;
  line-height: 1.125rem;
}
.color__name.active {
  font-weight: 800;
}

.price {
  padding-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
.price:not(:last-child) {
  margin-bottom: 1rem;
}

.checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.375rem;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.125rem;
  position: relative;
  cursor: pointer;
}
@media (any-hover: hover) {
  .checkbox:hover .checkbox__box {
    background-color: #dbd5d5;
  }
}
.checkbox input {
  display: none;
}
.checkbox__box {
  width: 1.6875rem;
  height: 1.6875rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border: 0.5px solid #000;
  background-color: white;
  -webkit-transition: background-color 0.3s, border-color 0.3s;
  transition: background-color 0.3s, border-color 0.3s;
  position: relative;
}
.checkbox__box::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.625rem;
  height: 0.375rem;
  border: 0.125rem solid white;
  border-top: none;
  border-right: none;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
      -ms-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.checkbox input:checked + .checkbox__box {
  background-color: #ed165f;
  border-color: #ed165f;
}

.checkbox input:checked + .checkbox__box::after {
  opacity: 1;
}

.custom-range {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.3125rem;
}
.custom-range span {
  font-size: 0.875rem;
  font-weight: 600;
}
.custom-range input {
  max-width: 3.8125rem;
  border: 0.5px solid #000;
  padding: 0.3125rem 0.5rem;
}
.custom-range input::-webkit-input-placeholder {
  font-size: 0.875rem;
  font-weight: 600;
}
.custom-range input::-moz-placeholder {
  font-size: 0.875rem;
  font-weight: 600;
}
.custom-range input:-ms-input-placeholder {
  font-size: 0.875rem;
  font-weight: 600;
}
.custom-range input::-ms-input-placeholder {
  font-size: 0.875rem;
  font-weight: 600;
}
.custom-range input::placeholder {
  font-size: 0.875rem;
  font-weight: 600;
}
.custom-range__button {
  padding: 0.5625rem 0.875rem;
  border-radius: 0.125rem;
  background-color: #ed165f;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 600;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}
@media (any-hover: hover) {
  .custom-range__button:hover {
    background-color: #a91245;
  }
}