/* Global Styles */
.lh-filters {
  color: #231f20;
}

.lh-filters-subheading {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 700;
  color: #005faa;
}

.lh-filters-subheading {
  font-size: 20px;
  line-height: 120%; /* 24px */
  letter-spacing: 0.8px;
}

.lh-filters-heading {
  display: block !important;
}

.lh-filters-filter-count {
  color: #231f20;
  font-family: Montserrat !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 150% !important; /* 21px */
}

.filter-accordion-title {
  width: 100%;
  padding-bottom: 20px;
  padding-top: 24px;
}

/* Links Styles */
.lh-filters a,
.filter-section a {
  color: #231f20 !important;
  border: none;
  padding-left: 0;
  font-weight: 700;
  font-size: 16px;
  font-family: Montserrat;
  font-style: normal;
  line-height: 130%;
}

.lh-filters a {
  margin: 4px 0 4px 0;
}

.filter-section a:hover,
.filter-section a:focus {
  color: inherit;
  background-color: inherit;
}

/* Heading Styles */
.lh-filters h4 {
  font-size: 20px;
}

/* Icon Styles */
.lh-filters i,
.lh-filters-clear-btn i {
  line-height: inherit;
}

.lh-filters-clear-btn i {
  float: right;
}

/* Label Styles */
.lh-filters label {
  display: block;
  position: relative;
  cursor: pointer;
  font-size: 16px;
}

/* Button Styles */
.lh-filters-clear-btn {
  color: #231f20;
  border: 1px #dbdbdb;
  width: 100%;
  padding-left: 16px;
  padding-right: 16px;
  text-align: left;
  margin-top: 60px !important;
}

.filter-accordion-btn {
  border: 1px #dbdbdb;
  background-color: #f7f6f6;
  color: #231f20;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.8px;
  text-align: inherit !important;
  margin-bottom: 12px !important;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.filter-accordion-btn:hover {
  background-color: transparent;
  color: inherit;
}

/* Checkbox Styles */
.list-group-item .checkbox {
  padding-left: 34px;
  margin-bottom: 0;
  display: block;
  position: relative;
  cursor: pointer;
}

.list-group-item .checkbox input {
  width: 0;
  height: 0;
  display: none;
}

.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 24px;
  width: 24px;
  border: 1px solid #dbdbdb;
  background-color: #fff;
  font-family: "Font Awesome 6 Pro";
}

.checkbox:hover input ~ .checkmark,
.checkbox input:checked ~ .checkmark {
  border-color: #444444;
}

.checkmark:after {
  content: "\f00c";
  position: absolute;
  display: none;
}

.checkbox .checkmark:after {
  top: 1px;
  left: 5px;
  color: #005faa;
}

/* Toggle Styles */
.custom-toggle.collapsed .fa-chevron-up,
.custom-toggle .fa-chevron-down,
.custom-toggle-btn[aria-expanded="true"] .fa-chevron-down,
.custom-toggle-btn[aria-expanded="false"] .fa-chevron-up {
  display: none !important;
}

.custom-toggle.collapsed .fa-chevron-down,
.custom-toggle .fa-chevron-up,
.custom-toggle-btn[aria-expanded="false"] .fa-chevron-down,
.custom-toggle-btn[aria-expanded="true"] .fa-chevron-up {
  display: inline-block !important;
}

.filter-section input {
  display: none;
}

/* Media Queries */
@media (min-width: 1200px) {
  .filter-section .toggleable {
    display: block !important;
  }

  .filter-accordion-btn {
    display: none !important;
    margin-bottom: 20px;
  }
}

@media (max-width: 1199px) {
  .lh-filters-heading {
    display: none !important;
  }

  .lh-filters-clear-btn {
    margin-top: 10px !important;
    margin-bottom: 30px !important;
  }
}

/* Mobile Styles */
.filter-section .toggleable {
  display: none;
}

.filter-accordion-btn {
  display: inline-block;
  margin-bottom: 20px;
}

/* Dropdown Styles */
#dropdownsm a {
  padding: 8px 0;
}

.checkbox input:checked ~ .checkmark:after {
  display: block;
}
