/* stylelint-disable-next-line wrap-rem-on-px/wrap-rem-on-px */
/* stylelint-disable wrap-rem-on-px/wrap-rem-on-px */
/* stylelint-enable wrap-rem-on-px/wrap-rem-on-px */
/*
USAGE:
font-size: fluid(12, 62); : from rem(12)@380px to  rem(62)@1440px
gap: fluid(10, 33, 992);  : from rem(10)@991px to  rem(33)@1440px
margin-right: fluid(32, 65, 320, 2560);  : from rem(32)@320px to  rem(65)@2560px
*/
/*
AUTOFILL

USAGE:
@include mixin.autofill(background-color, text-color);
@include mixin.autofill;

Note: Call this mixin in the wrapper or container to where you intend to manipulate the
      default chrome autofill styles for input, textarea and select elements.
*/
/* stylelint-disable */
/* stylelint-enable */
/* Font */
/* GFIP color palette */
:root {
  --dark-green: #005600;
  --teal-green: #0f7557;
  --forest-green-60: rgba(39, 84, 28, 0.6);
  --green: #239600;
  --light-green: #5edc38;
  --lime-green: #97d83e;
  --light-green-bg: #dffcd6;
  --mint-green: #80DCC1;
  --bright-green: #009A00;
  --pastel-green: #0F7557;
  --yellow: #e9fa4c;
  --lime-yellow: #e6f410;
  --gold: #a1b500;
  --light-yellow-bg: #faffd4;
  --dark-blue: #1b5ea3;
  --medium-blue: #3b5faf;
  --blue: #04b7d9;
  --light-blue: #7df5f5;
  --powder-blue: #ADF4FF;
  --resource-blue: #7de5f5;
  --resource-yellow: #f1fc88;
  --resource-blue-tag: #adf4ff;
  --resource-green-tag: #a3ff87;
  --violet: #5578c4;
  --orange: #f2542d;
  --black: #000;
  --black-transparent: rgba(0, 0, 0, 0);
  --white: #fff;
  --white-70: rgba(255, 255, 255, 0.7);
  --red: #FC0404;
}

.gfip.listing-filter .listing-filter__overlay {
  position: fixed;
  inset: 0;
  z-index: 40;
  background-color: rgba(0, 0, 0, 0.4);
  mix-blend-mode: multiply;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.gfip.listing-filter .listing-filter__overlay.is-visible {
  opacity: 1;
  pointer-events: auto;
}
.gfip.listing-filter .listing-filter__drawer {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 50;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 37.1875rem;
  height: 100%;
  background-color: var(--green);
  transform: translateX(100%);
  transition: transform 0.3s ease;
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__drawer {
    max-width: 41.3194444444vw;
  }
}
.gfip.listing-filter .listing-filter__drawer.is-open {
  transform: translateX(0);
}
.gfip.listing-filter .listing-filter__form {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.gfip.listing-filter .listing-filter__top {
  display: flex;
  justify-content: flex-end;
  padding: 1.25rem;
}
@media screen and (min-width:991px) {
  .gfip.listing-filter .listing-filter__top {
    padding: 2.25rem 2.5rem 0;
  }
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__top {
    padding: 2.5vw 2.7777777778vw 0;
  }
}
.gfip.listing-filter .listing-filter__close {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  padding: 1rem;
  border: none;
  border-radius: 3.125rem;
  background-color: var(--light-green);
  color: var(--dark-green);
  cursor: pointer;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1;
}
@media screen and (min-width:1700px) {
  .gfip.listing-filter .listing-filter__close {
    font-size: 1.1111111111vw;
  }
}
@media screen and (min-width:991px) {
  .gfip.listing-filter .listing-filter__close {
    min-height: 3.75rem;
    padding: 1rem 2.375rem;
  }
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__close {
    min-height: 4.1666666667vw;
    gap: 0.6944444444vw;
    padding: 1.1111111111vw 2.7777777778vw;
    border-radius: 3.4722222222vw;
  }
}
.gfip.listing-filter .listing-filter__close span {
  display: none;
}
@media screen and (min-width:991px) {
  .gfip.listing-filter .listing-filter__close span {
    display: inline;
  }
}
.gfip.listing-filter .listing-filter__close svg {
  display: block;
  flex-shrink: 0;
}
.gfip.listing-filter .listing-filter__body,
.gfip.listing-filter .listing-filter__accordion-panel {
  scrollbar-color: var(--light-green) transparent;
  scrollbar-width: thin;
}
.gfip.listing-filter .listing-filter__body::-webkit-scrollbar,
.gfip.listing-filter .listing-filter__accordion-panel::-webkit-scrollbar {
  width: 0.375rem;
}
.gfip.listing-filter .listing-filter__body::-webkit-scrollbar-track,
.gfip.listing-filter .listing-filter__accordion-panel::-webkit-scrollbar-track {
  border-radius: 1.25rem;
  margin-right: 0.375rem;
  background: transparent;
}
.gfip.listing-filter .listing-filter__body::-webkit-scrollbar-thumb,
.gfip.listing-filter .listing-filter__accordion-panel::-webkit-scrollbar-thumb {
  height: 7rem;
  border-radius: 1.25rem;
  background-color: var(--light-green);
}
.gfip.listing-filter .listing-filter__body {
  flex: 1;
  overflow: auto;
  padding: 1.625rem 1.25rem;
}
@media screen and (min-width:991px) {
  .gfip.listing-filter .listing-filter__body {
    padding: 2.5rem 4.75rem 2.5rem 4.9375rem;
  }
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__body {
    padding: 2.7777777778vw;
  }
}
.gfip.listing-filter .listing-filter__label {
  margin: 0;
  color: var(--yellow);
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.29;
}
@media screen and (min-width:1700px) {
  .gfip.listing-filter .listing-filter__label {
    font-size: 0.9722222222vw;
  }
}
.gfip.listing-filter .listing-filter__label {
  font-weight: 600;
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__label {
    margin-bottom: 2.0833333333vw;
  }
}
.gfip.listing-filter .listing-filter__accordion {
  border-bottom: 0.0625rem solid var(--white);
}
.gfip.listing-filter .listing-filter__accordion + .gfip.listing-filter .listing-filter__accordion {
  margin-top: 1.25rem;
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__accordion + .gfip.listing-filter .listing-filter__accordion {
    margin-top: 1.3888888889vw;
  }
}
.gfip.listing-filter .listing-filter__accordion-trigger {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.3125rem 0 0.5rem;
  border: none;
  background: transparent;
  color: var(--white);
  text-align: left;
  cursor: pointer;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: clamp(1.375rem, 0.19268vw + 1.326589375rem, 1.5rem);
  font-style: normal;
  font-weight: 500;
  letter-spacing: normal;
  line-height: 1.36;
}
@media screen and (min-width:1199px) {
  .gfip.listing-filter .listing-filter__accordion-trigger {
    line-height: 1.25;
  }
}
@media screen and (min-width:1700px) {
  .gfip.listing-filter .listing-filter__accordion-trigger {
    font-size: 1.6666666667vw;
  }
}
@media screen and (min-width:991px) {
  .gfip.listing-filter .listing-filter__accordion-trigger {
    padding-top: 1.9375rem;
  }
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__accordion-trigger {
    gap: 1.1111111111vw;
    padding: 0.8333333333vw 0;
  }
}
.gfip.listing-filter .listing-filter__accordion-title {
  flex: 1;
  min-width: 0;
}
.gfip.listing-filter .listing-filter__accordion-selected {
  flex-shrink: 0;
  color: var(--yellow);
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.29;
}
@media screen and (min-width:1700px) {
  .gfip.listing-filter .listing-filter__accordion-selected {
    font-size: 0.9722222222vw;
  }
}
.gfip.listing-filter .listing-filter__accordion-selected {
  font-weight: 600;
}
.gfip.listing-filter .listing-filter__accordion-icon {
  display: flex;
  width: 2.875rem;
  height: 2.875rem;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border: 0.0625rem solid var(--white);
  border-radius: 50%;
  transition: transform 0.2s ease;
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__accordion-icon {
    width: 3.1944444444vw;
    height: 3.1944444444vw;
  }
}
.gfip.listing-filter .listing-filter__accordion-icon svg {
  display: block;
}
.gfip.listing-filter .listing-filter__accordion.is-open .listing-filter__accordion-icon {
  transform: rotate(180deg);
}
.gfip.listing-filter .listing-filter__accordion-panel {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  max-height: 0;
  margin: 0;
  overflow: hidden;
  padding-right: 0.5rem;
  opacity: 0;
  transition: max-height 0.3s ease, opacity 0.3s ease, margin 0.3s ease;
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__accordion-panel {
    gap: 1.3888888889vw;
    padding-right: 0.5555555556vw;
  }
}
.gfip.listing-filter .listing-filter__accordion-panel[hidden] {
  display: none;
}
.gfip.listing-filter .listing-filter__accordion.is-open .listing-filter__accordion-panel {
  max-height: 20rem;
  margin: 1rem 0 1.5rem;
  overflow: auto;
  opacity: 1;
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__accordion.is-open .listing-filter__accordion-panel {
    max-height: 22.2222222222vw;
    margin: 1.1111111111vw 0 1.6666666667vw;
  }
}
.gfip.listing-filter .listing-filter__check {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  color: var(--white);
  cursor: pointer;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.38;
}
@media screen and (min-width:1700px) {
  .gfip.listing-filter .listing-filter__check {
    font-size: 1.1111111111vw;
  }
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__check {
    gap: 1.3888888889vw;
  }
}
.gfip.listing-filter .listing-filter__check input {
  width: 1.375rem;
  height: 1.375rem;
  min-height: unset;
  flex-shrink: 0;
  padding: 0;
  appearance: none;
  border: 0.125rem solid var(--light-green);
  border-radius: 0.25rem;
  background: var(--white);
  cursor: pointer;
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__check input {
    width: 1.5277777778vw;
    height: 1.5277777778vw;
    border-width: 0.1388888889vw;
    border-radius: 0.2777777778vw;
  }
}
.gfip.listing-filter .listing-filter__check input:checked {
  border-color: var(--light-green);
  background-color: var(--light-green);
}
.gfip.listing-filter .listing-filter__check-box {
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
}
.gfip.listing-filter .listing-filter__check-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease-in-out;
}
.gfip.listing-filter .listing-filter__check-box input:checked + .listing-filter__check-icon {
  opacity: 1;
}
.gfip.listing-filter .listing-filter__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: 1.25rem;
  background-color: var(--dark-green);
}
@media screen and (min-width:991px) {
  .gfip.listing-filter .listing-filter__footer {
    padding: 2.0625rem 4.75rem;
  }
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__footer {
    gap: 1.3888888889vw;
    padding: 2.2222222222vw 2.7777777778vw;
  }
}
.gfip.listing-filter .listing-filter__clear {
  border: none;
  background: transparent;
  color: var(--light-green-bg);
  text-decoration: underline;
  cursor: pointer;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1;
}
@media screen and (min-width:1700px) {
  .gfip.listing-filter .listing-filter__clear {
    font-size: 1.1111111111vw;
  }
}
.gfip.listing-filter .listing-filter__apply {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.9375rem 1.75rem;
  border: none;
  border-radius: 3.125rem;
  background-color: var(--light-green);
  color: var(--dark-green);
  cursor: pointer;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1;
}
@media screen and (min-width:1700px) {
  .gfip.listing-filter .listing-filter__apply {
    font-size: 1.1111111111vw;
  }
}
@media screen and (min-width:991px) {
  .gfip.listing-filter .listing-filter__apply {
    padding: 1.375rem 2.5rem;
  }
}
@media screen and (min-width:2000px) {
  .gfip.listing-filter .listing-filter__apply {
    padding: 1.5277777778vw 2.7777777778vw;
    border-radius: 3.4722222222vw;
  }
}
.gfip.listing-filter .listing-filter__apply:hover {
  background-color: var(--green);
  color: var(--white);
}

body.is-listing-filter-open {
  overflow: hidden;
}

/*# sourceMappingURL=listing-filter.css.map */
