/* FLEX AND GRID */
.gwr {
  margin: 0 auto;
  width: 90%;
  max-width: 1200px;
}

.gwr-xl {
  margin: 0 auto;
  width: 100%;
  max-width: 1350px;
  display: block;
}

.gwr-l {
  margin-left: var(--gwr-s);
  width: 95%;
  max-width: calc(1200px + var(--gwr-s));
}
@media screen and (max-width: 1300px) {
  .gwr-l {
    margin-left: 5%;
  }
}

.gwr-r {
  margin-right: var(--gwr-s);
  width: 95%;
  max-width: calc(1200px + var(--gwr-s));
}
@media screen and (max-width: 1300px) {
  .gwr-r {
    margin-right: 5%;
  }
}

.gwr-nav-home {
  margin-left: var(--gwr-s);
  width: 95%;
  max-width: calc(1200px + var(--gwr-s));
}
@media screen and (max-width: 1300px) {
  .gwr-nav-home {
    margin-left: 5%;
  }
}
@media screen and (max-width: 950px) {
  .gwr-nav-home {
    margin: 0 auto;
    width: 90%;
    max-width: 1200px;
  }
}

.f {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.f-c {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.f-jc {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.f-jcfe {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.f-jcfa {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-start;
}

.f-ww {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.f-ac {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.f-jcsb {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.f-fdc {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.f-afs {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.f-afe {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.f-jcsa {
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.f-1 {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.g {
  display: grid;
}

/* PAGES */
.page__container {
  position: relative;
  display: flex;
  flex-direction: column;
  padding-block: var(--gap-sm) var(--gap-3xl);
}
.page__container .page__description {
  max-width: 650px;
}
.page__container .page__products {
  display: flex;
  gap: var(--gap-sm);
  min-height: 500px;
}
@media screen and (max-width: 1150px) {
  .page__container .page__products {
    flex-direction: column;
    gap: var(--gap-sm);
  }
}
.page__container .page__products .page__filters {
  max-width: 300px;
  height: fit-content;
  max-height: 95vh;
  position: sticky;
  display: flex;
  flex-direction: column;
  gap: var(--gap-xs);
  padding: var(--gap-rg) var(--gap-sm);
}
.page__container .page__products .page__filters .page__filters--section {
  overflow-y: auto;
  height: fit-content;
  -ms-overflow-style: none; /* IE y Edge */
  scrollbar-width: none; /* Firefox */
}
.page__container .page__products .page__filters .page__filters--section::-webkit-scrollbar {
  display: none;
}
.page__container .page__products .page__filters .page__filters--reset {
  border-top: 1px solid var(--clr-white-terciary);
  padding-block: var(--gap-sm);
}
.page__container .page__products .page__filters .page__filters--dropdown {
  max-width: unset;
  margin: 0;
}
.page__container .page__products .page__filters > div {
  padding-inline: var(--gap-3xs);
}
@media screen and (max-width: 1150px) {
  .page__container .page__products .page__filters {
    visibility: hidden;
    opacity: 0;
    width: 100%;
    height: 100%;
    position: fixed;
    bottom: 0;
    transform: translateY(100%);
    box-shadow: 0px -390px 50px rgba(0, 0, 0, 0.4);
    z-index: 1000000;
  }
}
.page__container .page__products .page__filters.mobile-menu {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
  max-width: unset;
  height: max-content;
  top: unset;
  left: 0;
  right: 0;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  padding-bottom: var(--gap-xl);
  transition: all 0.7s ease;
}
@media screen and (min-width: 1150px) {
  .page__container .page__products .h-section > div:has(.btn--settings),
  .page__container .page__products .v-section > div:has(.btn--settings) {
    display: none;
  }
}
.page__container .page__products .btn--settings, .page__container .page__products .page__filters--close {
  display: none;
}
@media screen and (max-width: 1150px) {
  .page__container .page__products .btn--settings, .page__container .page__products .page__filters--close {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: var(--gap-3xs);
    margin-left: auto;
    cursor: pointer;
  }
}
.page__container .page__entries {
  gap: var(--gap-xl);
}
.page__container .page__no-results {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--gap-sm);
  padding-block: var(--gap-xl);
  text-align: center;
}
.page__container .page__no-results img {
  width: 70px;
}
.page__container .page__no-results p {
  max-width: 600px;
  color: var(--clr-main-primary);
}

.page__filter--search {
  position: relative;
  margin-bottom: var(--gap-rg);
}
.page__filter--search::before {
  content: "";
  background-image: url(/assets/icons/icon-search-e5494ad905a85f4005cd685ca9c1cad45a8d259da8cdaf226c4bb0b929738cec.svg);
  background-size: cover;
  width: 13px;
  height: 13px;
  position: absolute;
  top: 50%;
  left: 17px;
  transform: translateY(-50%);
}
.page__filter--search input {
  padding: var(--gap-xs) var(--gap-xs) var(--gap-xs) var(--gap-lg);
  width: 100%;
}

.page__pagination {
  display: flex;
  align-items: center;
  gap: var(--gap-2xs);
  justify-content: flex-end;
}
.page__pagination button {
  padding: var(--gap-3xs) var(--gap-2xs);
  border-radius: 50%;
  background-color: var(--clr-gray-primary);
  color: var(--clr-gray-terciary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--fs-title-h5);
  width: 35px;
  height: 35px;
  transition: all 0.3s ease;
}
.page__pagination button:not(.active):hover {
  background-color: var(--clr-gray-secondary);
}
.page__pagination button:not(#prevPage):not(#nextPage) {
  padding-bottom: 9px;
}
.page__pagination button.active:hover {
  background-color: var(--clr-main-primary);
}
.page__pagination button img {
  width: 70%;
}
.page__pagination button.active {
  background-color: var(--clr-main-primary);
  color: var(--clr-white-primary);
}

.page__banner {
  padding-block: var(--gap-2xl);
}
.page__banner img {
  width: 100%;
}

#noResultsMessage.hidden {
  display: none;
}

.page__toast {
  max-width: 350px;
  width: 100%;
  position: fixed;
  top: -100px;
  left: 50%;
  transform: translateX(-50%);
  padding: var(--gap-xs);
  background-color: var(--clr-white-primary);
  text-align: center;
  border-radius: var(--gap-4xs);
  visibility: hidden;
  box-shadow: var(--ds-card-primary);
  opacity: 0;
  z-index: 1000000;
  transition: all 0.5s ease;
}
.page__toast .success {
  color: var(--clr-main-primary) !important;
}
.page__toast .error, .page__toast .file-error {
  color: var(--clr-semantic-error) !important;
}
.page__toast.show {
  visibility: visible;
  opacity: 1;
  top: var(--gap-3xl);
}
@media screen and (min-width: 1150px) {
  .page__toast.show {
    top: 180px;
  }
}
