.block-branch-locator .map-container,
.block-branch-locator #google-map {
  min-height: 500px;
}

.block-branch-locator .table-container .locator-table-header-text,
.block-branch-locator .locator-map-header-text {
  font-style: normal;
  /* font-weight: 700; */
  font-size: 30px;
  line-height: 48px;
  color: #3BBBEE;
}

.block-branch-locator .table-container .locator-map-header-text {
  font-size: 28px;
}

.block-branch-locator .row-data-text:hover {
  text-decoration: underline;
}

.block-branch-locator .table-container .table-content-container {
  overflow: auto;
}

.block-branch-locator .table-container .table-content-container table {
  width: 100%;
  border-collapse: separate;
  border-radius: 10px;
  border: 0;
}

.block-branch-locator .bottom-left-border {
  border-bottom-left-radius: 10px;
}

.block-branch-locator .table-container table tbody tr:last-child th:first-child.province-column {
  border-bottom-left-radius: 10px;
}

.block-branch-locator .table-container table tbody tr:last-child td:last-child {
  border-bottom-right-radius: 10px;
}

.block-branch-locator .table-container table thead tr:first-child th:nth-child(1) {
  border-top-left-radius: 10px;
}

.block-branch-locator .table-container table thead tr:first-child th:last-child {
  border-top-right-radius: 10px;
}

.block-branch-locator .table-container .table-content-container thead tr {
  background: #3BBBEE;
  font-style: normal;
  /* font-weight: 700; */
  font-size: 18px;
  line-height: 18px;
  text-align: left;
  color: #FFFFFF;
}

.block-branch-locator .table-container .table-content-container thead tr th {
  font-weight: normal;
}

.kh .block-branch-locator .table-container .table-content-container thead tr {
  font-size: 14px;
  line-height: 18px;
}

.block-branch-locator .table-container .table-content-container thead th {
  padding: 15px 20px;
}

.block-branch-locator .table-container .table-content-container .top-left-corner {
  border-radius: 10px 0px 0px 0px;
}

.block-branch-locator .table-container .table-content-container .top-right-corner {
  border-radius: 0px 10px 0px 0px;
}

.block-branch-locator .table-container .table-content-container td,
.block-branch-locator .table-container .table-content-container tbody th {
  font-style: normal;
  font-weight: normal;
  font-size: 14px;
  line-height: 18px;
  text-align: left;
  color: #5E5E5E;
  padding: 15px 20px;
  border: 1px solid #D0D0D0;
}

.kh .block-branch-locator .table-container .table-content-container td,
.kh .block-branch-locator .table-container .table-content-container tbody th {
  font-size: 14px;
  line-height: 18px;
}

.block-branch-locator .table-container .table-content-container tbody tr:nth-child(odd) td,
.block-branch-locator .table-container .table-content-container tbody tr:nth-child(odd) th {
  background: #eaeaea;
}

.block-branch-locator .table-container .table-content-container tbody tr:nth-child(even) td,
.block-branch-locator .table-container .table-content-container tbody tr:nth-child(even) th {
  background: #DFDFDF;
}

.block-branch-locator .filter-container .reset-button,
.block-branch-locator .filter-container .search-button {
  background: linear-gradient(180deg, #3BBBEE 0%, #3BBBEE 100%);
  border-radius: 50px;
  font-style: normal;
  font-size: 14px;
  line-height: 18px;
  text-align: center;
  text-transform: uppercase;
  color: #FFFFFF;
  cursor: pointer;
  padding: 15px 20px;
  width: 140px;
}

.kh .block-branch-locator .filter-container .reset-button,
.kh .block-branch-locator .filter-container .search-button {
  font-size: 14px;
  line-height: 18px;
}

.block-branch-locator .button-container {
  max-width: fit-content;
  margin: 0 5px;
}

.block-branch-locator .filter-container label {
  top: -3px;
  position: inherit;
  cursor: pointer;
}

.block-branch-locator .filter-container .checkbox-container {
  top: 5px;
  max-width: fit-content;
  margin: 0 5px;
}

.block-branch-locator .filter-container input[type=checkbox] {
  padding: 0.5em;
  -webkit-appearance: none;
  border: 0.1em solid #3BBBEE;
  border-radius: 2px;
  cursor: pointer;
}

.block-branch-locator .filter-container input[type=checkbox]:checked {
  position: relative;
  display: inline-block;
  width: 10px;
  height: 10px;
}

.block-branch-locator .filter-container input[type=checkbox]:checked::before {
  position: absolute;
  left: -5px;
  top: 50%;
  height: 50%;
  width: 2px;
  background-color: #3BBBEE;
  content: "";
  transform: translateX(10px) rotate(-45deg);
  transform-origin: left bottom;
}

.block-branch-locator .filter-container input[type=checkbox]:checked::after {
  position: absolute;
  left: -5px;
  bottom: 0;
  height: 2px;
  width: 100%;
  background-color: #3BBBEE;
  content: "";
  transform: translateX(10px) rotate(-45deg);
  transform-origin: left bottom;
}

.block-branch-locator .filter-container .select2,
.block-branch-locator .filter-container .province-select,
.block-branch-locator .filter-container .search-input {
  width: 100%;
  border: 1px solid #3BBBEE;
  border-radius: 10px;
  font-style: normal;
  font-weight: 300;
  font-size: 14px;
  line-height: 18px;
  color: #3BBBEE;
  padding: 15px 20px;
  height: 50px;
}

.kh .block-branch-locator .filter-container .select2,
.kh .block-branch-locator .filter-container .province-select,
.kh .block-branch-locator .filter-container .search-input {
  font-size: 14px;
  line-height: 18px;
}

.block-branch-locator .select2-container--default .select2-selection--single {
  border: none;
}

.block-branch-locator .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #3BBBEE;
  position: relative;
  top: -4px;
}

.block-branch-locator .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 25%;
  right: 20px;
  width: 20px;
}

.block-branch-locator .select2-container--default .select2-selection__arrow b {
  border-color: #3BBBEE transparent transparent transparent !important;
}

.block-branch-locator .select2-container--default.select2-container--open .select2-selection__arrow b {
  border-color: transparent transparent #3BBBEE transparent !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #3BBBEE !important;
  color: #fff !important;
}

.select2-container--default .select2-results__option:hover {
  background-color: #3BBBEE !important;
  color: #fff !important;
}

.block-branch-locator .map-popup-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.block-branch-locator .image-container {
  width: 100%;
  height: 100%;
}

.block-branch-locator .map-popup-content-header {
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 24px;
  color: #3BBBEE;
}

.kh .block-branch-locator .map-popup-content-header {
  font-size: 20px;
  line-height: 24px;
}

.block-branch-locator .map-popup-content-address,
.block-branch-locator .map-popup-content-contact {
  font-style: normal;
  font-weight: 300;
  font-size: 14px;
  line-height: 18px;
  color: #5E5E5E;
}

.kh .block-branch-locator .map-popup-content-address,
.kh .block-branch-locator .map-popup-content-contact {
  font-size: 14px;
  line-height: 18px;
}

.block-branch-locator .map-popup-content-link {
  text-decoration: none;
}

.block-branch-locator .map-popup-content-button {
  background: linear-gradient(180deg, #3BBBEE 0%, #3BBBEE 100%);
  border-radius: 30px;
  font-style: normal;
  font-weight: 700;
  font-size: 14px;
  line-height: 18px;
  color: #FFFFFF;
  padding: 10px 20px;
  width: fit-content;
  border: none;
}

.block-branch-locator #loading-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;
}

.block-branch-locator #loading-indicator {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50px;
  height: 50px;
  border: 4px solid #f3f3f3;
  border-top: 4px solid #3BBBEE;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  z-index: 10000;
}

@keyframes spin {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }

  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

body.loading {
  overflow: hidden;
}

body.loading #loading-overlay,
body.loading #loading-indicator {
  display: block;
}

.kh .block-branch-locator .map-popup-content-button {
  font-size: 14px;
  line-height: 18px;
}


@media screen and (max-width: 576px) {
  .block-branch-locator .map-popup-content-header {
    font-size: 18px;
    line-height: 22px;
  }

  .kh .block-branch-locator .map-popup-content-header {
    font-size: 18px;
    line-height: 22px;
  }

  .block-branch-locator .table-container .locator-table-header-text,
  .block-branch-locator .locator-map-header-text {
    font-size: 25px;
    line-height: 20px;
  }

  .kh .block-branch-locator .table-container .locator-table-header-text,
  .kh .block-branch-locator .locator-map-header-text {
    font-size: 25px;
    line-height: 20px;
  }

  .block-branch-locator .table-container .locator-map-header-text {
    font-size: 22px;
  }
}

@media screen and (max-width: 768px) {
  .block-branch-locator .filter-container .checkbox-container {
    max-width: 100%;
  }
}
