.page-template-template-hotels .pgz-hotels-filters {

  width: var(--pgz-sidebar-width);
  min-height: 41.75rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--pgz-gap-24);
  padding: var(--pgz-padding-20);
  background-color: var(--pgz-color-white);
  border-radius: var(--pgz-radius-19);
  box-shadow: var(--pgz-shadow-card);
}


.page-template-template-hotels .pgz-hotels-filters__head {

  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 14.5625rem;
}


.page-template-template-hotels .pgz-hotels-filters__title {

  margin: 0;
  font-size: var(--pgz-text-md);
  font-weight: var(--pgz-weight-bold);
  line-height: 1.656875rem;
  color: var(--pgz-color-black);
}


.page-template-template-hotels .pgz-hotels-filters__reset {

  padding: 0;
  border: none;
  background: none;
  font-family: inherit;
  font-size: 0.8284025rem;
  font-weight: var(--pgz-weight-semibold);
  line-height: 1.183125rem;
  color: var(--pgz-color-primary);
  cursor: pointer;
}


.page-template-template-hotels .pgz-hotels-filters__reset:hover,
.page-template-template-hotels .pgz-hotels-filters__reset:focus-visible {

  text-decoration: underline;
  outline: none;
}


.page-template-template-hotels .pgz-hotels-filters__form {

  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--pgz-gap-24);
  width: 14.5625rem;
  margin: 0;
  padding: 0;
  border: none;
}


.page-template-template-hotels .pgz-hotels-filters__section {

  margin: 0;
  padding: 0;
  border: none;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.71005925rem;
}


.page-template-template-hotels .pgz-hotels-filters__section-title {

  margin: 0 0 0.71005925rem;
  padding: 0;
  font-size: var(--pgz-text-base);
  font-weight: var(--pgz-weight-semibold);
  line-height: var(--pgz-leading-140);
  color: var(--pgz-color-black);
}


.page-template-template-hotels .pgz-hotels-filters__list {

  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.47337275rem;
}


.page-template-template-hotels .pgz-hotels-filters__item {

  margin: 0;
}


.page-template-template-hotels .pgz-hotels-filters__radio-label,
.page-template-template-hotels .pgz-hotels-filters__check-label {

  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.71005925rem;
  cursor: pointer;
}


.page-template-template-hotels .pgz-hotels-filters__radio,
.page-template-template-hotels .pgz-hotels-filters__check,
.page-template-template-hotels .pgz-hotels-filters__chip-input {

  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}


.page-template-template-hotels .pgz-hotels-filters__radio-ui,
.page-template-template-hotels .pgz-hotels-filters__check-ui {

  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  border: 1px solid var(--pgz-color-black);
  border-radius: 0.591716625rem;
  background-color: var(--pgz-color-white);
}


.page-template-template-hotels .pgz-hotels-filters__check-ui {

  border-radius: var(--pgz-radius-8);
}


.page-template-template-hotels .pgz-hotels-filters__radio:focus-visible + .pgz-hotels-filters__radio-ui,
.page-template-template-hotels .pgz-hotels-filters__check:focus-visible + .pgz-hotels-filters__check-ui {

  outline: 2px solid var(--pgz-color-primary);
  outline-offset: 2px;
}


.page-template-template-hotels .pgz-hotels-filters__radio:checked + .pgz-hotels-filters__radio-ui,
.page-template-template-hotels .pgz-hotels-filters__check:checked + .pgz-hotels-filters__check-ui {

  background-color: var(--pgz-color-black);
  box-shadow: inset 0 0 0 3px var(--pgz-color-white);
}


.page-template-template-hotels .pgz-hotels-filters__label-text {

  font-size: var(--pgz-text-base-sm);
  font-weight: var(--pgz-weight-regular);
  line-height: var(--pgz-leading-150);
  color: var(--pgz-color-text-gray);
}



.page-template-template-hotels .pgz-hotels-filters__range-wrap {

  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--pgz-gap-10);
  width: 100%;
}


.page-template-template-hotels .pgz-hotels-filters__range-label {

  font-size: var(--pgz-text-base-sm);
  font-weight: var(--pgz-weight-regular);
  line-height: var(--pgz-leading-150);
  color: var(--pgz-color-text-gray);
  flex-shrink: 0;
}


.page-template-template-hotels .pgz-hotels-filters__range-track {

  flex: 0 0 8.5625rem;
  width: 8.5625rem;
  height: 0.25rem;
  background-color: var(--pgz-color-off-white);
  border-radius: var(--pgz-radius-full);
  position: relative;
}


.page-template-template-hotels .pgz-hotels-filters__range {

  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  height: 0.25rem;
  margin: 0;
  appearance: none;
  background: transparent;
  cursor: pointer;
}


.page-template-template-hotels .pgz-hotels-filters__range::-webkit-slider-runnable-track {

  height: 0.25rem;
  background: linear-gradient(
    to right,
    var(--pgz-color-navy) 0%,
    var(--pgz-color-navy) 50%,
    var(--pgz-color-off-white) 50%,
    var(--pgz-color-off-white) 100%
  );
  border-radius: var(--pgz-radius-full);
}


.page-template-template-hotels .pgz-hotels-filters__range::-moz-range-track {

  height: 0.25rem;
  background: var(--pgz-color-off-white);
  border-radius: var(--pgz-radius-full);
}


.page-template-template-hotels .pgz-hotels-filters__range::-webkit-slider-thumb,
.page-template-template-hotels .pgz-hotels-filters__range::-moz-range-thumb {

  appearance: none;
  width: 0;
  height: 0;
  border: none;
}



.page-template-template-hotels .pgz-hotels-filters__chips {

  position: relative;
  width: 100%;
  height: 5.125rem;
}


.page-template-template-hotels .pgz-hotels-filters__chip {

  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: var(--pgz-padding-chip);
  border: 1px solid var(--pgz-color-cream);
  border-radius: var(--pgz-radius-8);
  background-color: var(--pgz-color-white);
  cursor: pointer;
}


.page-template-template-hotels .pgz-hotels-filters__chip:nth-child(1) {

  left: 0;
  top: 0;
  width: 7.0625rem;
}


.page-template-template-hotels .pgz-hotels-filters__chip:nth-child(2) {

  left: 7.4375rem;
  top: 0;
  width: 7.125rem;
}


.page-template-template-hotels .pgz-hotels-filters__chip:nth-child(3) {

  left: 0;
  top: 2.875rem;
  width: 7.125rem;
}


.page-template-template-hotels .pgz-hotels-filters__chip:nth-child(4) {

  left: 7.4375rem;
  top: 2.875rem;
  width: 7.125rem;
}


.page-template-template-hotels .pgz-hotels-filters__chip-text {

  font-size: var(--pgz-text-base-sm);
  font-weight: var(--pgz-weight-regular);
  line-height: var(--pgz-leading-150);
  color: var(--pgz-color-text-gray);
  text-align: center;
}


.page-template-template-hotels .pgz-hotels-filters__chip:has(.pgz-hotels-filters__chip-input:checked) {

  background-color: var(--pgz-color-navy);
  border-color: var(--pgz-color-navy);
}


.page-template-template-hotels .pgz-hotels-filters__chip-input:checked + .pgz-hotels-filters__chip-text {

  color: var(--pgz-color-white);
}


.page-template-template-hotels .pgz-hotels-filters__chip:has(.pgz-hotels-filters__chip-input:focus-visible) {

  outline: 2px solid var(--pgz-color-primary);
  outline-offset: 2px;
}


@media (max-width: 767px) {

  .page-template-template-hotels .pgz-hotels-filters,
.page-template-template-hotels-php .pgz-hotels-filters {

    position: fixed;
    top: 0;
    left: 0;
    z-index: 210;
    width: min(17.5rem, 88vw);
    max-width: none;
    height: 100%;
    max-height: 100dvh;
    margin: 0;
    border-radius: 0;
    box-shadow: var(--pgz-shadow-card);
    transform: translateX(-100%);
    transition: transform 0.25s ease;
  }


  .page-template-template-hotels div.pgz-hotels-page.is-filters-open .pgz-hotels-filters,
.page-template-template-hotels-php div.pgz-hotels-page.is-filters-open .pgz-hotels-filters {

    transform: translateX(0);
  }


  .page-template-template-hotels .pgz-hotels-filters__close,
.page-template-template-hotels-php .pgz-hotels-filters__close {

    display: flex;
  }

}

