/* ------ Styling for listing gallery & lightbox ------ */
.apfl-gallery {
  position: relative;
}

.apfl-gallery .mySlides {
  display: none;
  width: 100%;
}

.apfl-gallery .mySlides img {
  max-height: 450px !important;
  width: 100%;
}

.apfl-gallery .cursor {
  cursor: pointer;
}

.apfl-gallery .prev,
.apfl-gallery .next {
  cursor: pointer;
  position: absolute;
  top: 40%;
  width: auto;
  padding: 25px 15px;
  margin-top: -50px;
  color: white;
  font-weight: bold;
  font-size: 20px;
  border-radius: 0 3px 3px 0;
  user-select: none;
  -webkit-user-select: none;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.apfl-gallery .next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

.apfl-gallery .prev:hover,
.apfl-gallery .next:hover {
  background: rgba(255, 255, 255, 0.5);
  color: #444;
  text-decoration: none;
}

.apfl-gallery .arrow-icon {
  width: 24px;
  height: 24px;
}

.apfl-gallery .numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}

.apfl-gallery .caption-container {
  text-align: center;
  background-color: #222;
  padding: 2px 16px;
  color: white;
}

.apfl-gallery .row {
  display: block;
}

.apfl-gallery .row:after {
  content: "";
  display: table;
  clear: both;
}

.apfl-gallery #image-prvw .demo {
  opacity: 0.6;
  height: 100px;
  width: 95%;
  margin: auto;
}

.apfl-gallery .active,
.apfl-gallery .demo:hover {
  opacity: 1;
}

.apfl-gallery .imgcolumn {
  float: left;
  width: 20%;
  margin: auto;
}

.listing-sec #apfl-vdo {
  margin-top: 2em;
  overflow: auto;
  display: flex;
  justify-content: center;
}

.mySlides {
  position: relative;
}

/* .apfl-gallery .mySlides img, */
.apfl-gallery .mySlides .gallery__video-label,
.close_apfl_pp {
  cursor: pointer;
}

.apfl_full_pp {
  position: fixed;
  width: 100%;
  height: 100%;
  background: #000;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 999999;
  margin: auto;
  text-align: center;
}

.apfl_full_pp .apfl_vid_container {
  width: 950px;
  height: 530px;
  top: 0;
  bottom: 0;
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
}

.apfl_full_pp .afpl_pp_slide {
  visibility: hidden;
  transition: all 0.3s;
  opacity: 0;
  max-width: 100%;
}

.apfl_full_pp .afpl_pp_slide.current {
  visibility: visible;
  opacity: 1;
}

.apfl_full_pp img,
.apfl_full_pp iframe {
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  max-width: 100%;
  max-height: 100%;
}

.apfl-yt-frame {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  width: 90% !important;
  height: 100% !important;
}

.apfl_full_pp #pp_prev,
.apfl_full_pp #pp_next {
  color: #fff;
  font-size: 70px;
  position: absolute;
  top: 0;
  bottom: 0;
  height: 70px;
  line-height: 1;
  margin: auto;
  cursor: pointer;
}

.apfl_full_pp #pp_prev {
  left: 7px;
}

.apfl_full_pp #pp_next {
  right: 7px;
}

.close_apfl_pp {
  position: absolute;
  right: 20px;
  color: #fff;
  top: 10px;
  font-weight: bold;
  font-size: 25px;
}

span.gallery__video-label {
  top: 49%;
  position: absolute;
  background: #3d3d3d;
  border-radius: 5px;
  padding: 5px 10px;
  left: 50%;
  color: #fff;
}

/* ------ General ------ */
.apfl-hidden {
  display: none !important;
}

.apfl-no-visibility {
  visibility: hidden;
}

.apfl-loading {
  text-align: center;
}

.apfl-loading img {
  width: 50px;
}

/* ------ All Listings page ------ */
#apfl-listings-container.main-listings-page .all-listings {
  padding: 1% 0;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  width: 100%;
}

.main-listings-page .listing-item {
  position: relative;
  transition: 0.3s;
  width: 32.333%;
  float: left;
  margin: 0.5%;
  float: none;
  display: flex;
  flex-direction: column;
}

.main-listings-page .listing-item .list-img {
  cursor: pointer;
  position: relative;
}

.main-listings-page .listing-item .list-img img {
  width: 100%;
  height: 275px;
  display: block;
}

.listing-filters {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.listing-filters form {
  display: flex;
  justify-content: center;
  align-items: normal;
  gap: 5px;
  flex-flow: wrap;
}

.listing-filters select,
.listing-filters input[type="date"],
.listing-filters input[type="text"],
.listing-filters input[type="search"] {
  width: auto;
  padding: 3px 25px 3px 3px;
}

.listing-filters input[type="text"]::placeholder {
  color: #000;
  opacity: 1;
}

.listing-filters input[type="text"]::-ms-input-placeholder {
  opacity: 1;
  color: #000;
}

.listing-filters {
  padding: 40px 0;
  text-align: center;
}

.listing-filters .apfl_page_hdng {
  color: #fff;
  font-size: 40px;
  margin-top: 0;
  margin-bottom: 2rem;
  text-transform: uppercase;
  letter-spacing: 5px;
  line-height: 3rem;
}

.listing-filters .apfl_page_hdng h1,
.listing-filters .apfl_page_hdng h2,
.listing-filters .apfl_page_hdng h3,
.listing-filters .apfl_page_hdng h4,
.listing-filters .apfl_page_hdng h5,
.listing-filters .apfl_page_hdng h6,
.listing-filters .apfl_page_hdng p {
  color: #fff;
}

.main-listings-page .listing-filters select,
.listing-filters input[type="text"] {
  padding: 2px 25px 3px 10px;
  font-size: 16px;
}

.main-listings-page .listing-filters form select,
.main-listings-page .listing-filters input[type="submit"],
.listing-filters input[type="text"] {
  border: none;
  border-radius: 4px;
}

.listing-filters input[type="submit"] {
  min-width: 135px;
  background: #ff6600;
  color: #fff;
  padding: 7px 30px !important;
  font-size: 18px;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 0 10px;
  line-height: 1;
  text-decoration: none;
}

.listing-items-grp {
  clear: both;
  display: flex;
  width: 100%;
}

.main-listings-page .listing-item span.rent-price,
.main-listings-page .listing-item span.rent-price-off,
.main-listings-page .listing-item span.lstng-avail,
.main-listings-page .listing-item span.lstng-avail-off {
  color: #fff;
  padding: 5px 10px;
  letter-spacing: 1px;
  position: absolute;
  left: 0px;
  font-size: 18px;
  bottom: 0px;
}

.main-listings-page .listing-item span.rent-price-off,
.main-listings-page .listing-item span.lstng-avail-off {
  position: relative;
}

.main-listings-page .listing-item span.lstng-avail,
.main-listings-page .listing-item span.lstng-avail-off {
  left: auto;
  right: 0px;
}

.main-listings-page .listing-item span.lstng-avail-off {
  float: right;
}

.details {
  padding: 15px;
  background: rgba(89, 143, 205, 0.1);
  margin-top: -7px;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.all-listings .lstng_ttl,
.all-listings .details p {
  margin: 0;
}

.main-listings-page .listing-item img.bedimg,
.main-listings-page .listing-item img.bathimg {
  width: 16px;
  height: auto;
  margin: 0 5px;
  display: inline;
}

.main-listings-page .listing-item .btns {
  display: flex;
  flex-wrap: wrap;
  margin-top: auto;
}

.main-listings-page .listing-item .btns a {
  color: #fff;
  background: rgb(89, 143, 205);
  padding: 5px 10px;
  margin-right: 5px;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: 0.3s;
  text-decoration: none;
  display: inline-block;
  margin-bottom: 10px;
  box-sizing: border-box;
  width: 48%;
  text-align: center;
  margin: 10px 1% 0;
}

.main-listings-page .listing-item .btns a:hover {
  background: #444;
}

.main-listings-page .listing-item .btns .schedule_btn {
  width: 100%;
}

.listing-item:hover {
  box-shadow: 0px 0px 10px 0px #444;
}

.listing-item:hover .details {
  background: #fff;
}

.mm-prop-popup {
  display: flex;
}

.mm-prop-popup .map-popup-thumbnail {
  margin-right: 15px;
}

h3.map-popup-rent,
.map-popup-specs {
  margin-bottom: 5px;
  margin-top: 0;
}

.mm-prop-popup .map-popup-info a {
  color: #fff;
  background: rgb(89, 143, 205);
  padding: 7px 20px;
  margin-right: 5px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* ------ SINGLE LISTING PAGE ------ */
.apfl-sl-wrapper .listing-sec {
  display: flex;
}

.apfl-column {
  float: left;
  margin: 0 1% 40px;
  padding: 0 1%;
  box-sizing: border-box;
}

.apfl-two-fifth {
  width: 38%;
}

.apfl-three-fifth {
  width: 58%;
}

.apfl-prmry-btn {
  color: #fff;
  background: rgb(89, 143, 205);
  padding: 7px 20px;
  letter-spacing: 1px;
  transition: 0.3s;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  font-weight: 600;
}

.arrow-left-icon {
  width: 24px;
  height: 24px;
  fill: #ffffff;
}

.apfl-sl-wrapper {
  display: inline-block;
}

.apfl_back_to_all {
  padding: 20px;
}

.apfl_back_to_all .apfl-prmry-btn {
  margin-left: 1%;
}

.apfl-sl-wrapper .sl-btns {
  text-decoration: none;
  display: block;
  width: fit-content;
  margin-bottom: 10px;
  margin-left: auto;
}

/* ------ Listing details ------ */
.lst-dtls {
  display: flex;
  border-bottom: 1px solid #ccc;
  margin-bottom: 25px;
}

.lst-dtls .details-left {
  width: 60%;
}

.lst-dtls .details-right {
  width: 40%;
  text-align: right;
}

.address-hdng,
.rent-hdng,
.apfl-half h3 {
  margin-top: 0 !important;
}

.address-hdng a {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  /* optional */
  gap: 8px;
  /* spacing between icon and text, adjust if you want */
  line-height: 1;
  color: inherit;
  /* keeps link color same as text */
}

.address-hdng a .map-marker-icon {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
  /* don't shrink the SVG */
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.address-hdng {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 0 !important;
}

.apfl-half {
  width: 50%;
  float: left;
}

.sl-btns {
  color: #fff;
  background: rgb(89, 143, 205);
  padding: 7px 20px;
  margin-right: 5px;
  text-transform: capitalize;
  letter-spacing: 1px;
  transition: 0.3s;
}

.sl-btns:hover {
  text-decoration: none;
  background: #444;
}

.bathimg,
.bedimg,
.petimg,
.nopetimg,
.areaimg {
  width: 16px;
  height: auto;
  margin: 0 5px;
  display: inline;
}

.details-right .rent-hdng {
  margin-bottom: 1rem;
  padding: 0.5rem 0;
  text-align: right;
  border: none;
  font-weight: bold;
  font-size: 24px;
  line-height: 1;
}

.call-top {
  color: rgb(89, 143, 205);
  text-decoration: none;
}

.call-top .call-now {
  display: inline-block;
  width: 34px;
  height: 34px;
  vertical-align: middle;
  /* margin-right: 6px; */
}

.details-right .rent-hdng .price-tag {
  display: inline-block;
  width: 24px;
  height: 24px;
  vertical-align: bottom;
  /* margin-right: 5px; */
}

.close-icon {
  width: 34px;
  height: 34px;
  cursor: pointer;
  vertical-align: middle;
}

#pp_prev,
#pp_next {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
}

#pp_prev svg,
#pp_next svg {
  width: 34px;
  height: 34px;
}

.details-right #avail-txt {
  color: #3bb54a;
}

img.avail-now {
  display: inline;
  width: 18px;
  margin-right: 5px;
  margin-bottom: -2px;
}

.extra-half {
  margin-bottom: 25px;
}

.apfl-half.apply-sec {
  text-align: right;
  margin: 25px 0;
}

/* Share buttons on single listing */
.apfl-share-buttons-wrapper {
  display: flex;
  margin-right: 5px;
  margin-bottom: 10px;
  gap: 10px;
  justify-content: end;
}

.apfl-share-buttons-wrapper i {
  font-size: 20px;
}

/* Responsiveness */
@media only screen and (max-width: 1348px) {
  .listing-filters form {
    flex-flow: wrap;
    align-items: center;
  }

  .listing-filters select {
    margin-bottom: 15px;
  }
}

@media only screen and (max-width: 853px) and (min-width: 768px) {
  .main-listings-page .listing-item .btns a {
    display: inline-block;
    margin-bottom: 10px;
  }
}

@media only screen and (max-width: 767px) {
  .listing-items-grp {
    flex-direction: column;
  }

  .apfl-sl-wrapper .listing-sec {
    display: block;
  }

  .listing-filters h2 {
    font-size: 20px;
    letter-spacing: 1px;
  }

  .listing-filters input[type="submit"] {
    padding: 5px 30px;
    font-size: 16px;
    margin: 0 10px;
  }

  .main-listings-page .all-listings {
    padding: 1em 0;
  }

  .main-listings-page .listing-item {
    width: 100%;
    margin-bottom: 1em;
  }

  /* Single listing */
  .apfl-two-fifth,
  .apfl-three-fifth {
    width: 100%;
    padding: 0 1em;
  }

  .apfl_back_to_all {
    padding: 20px 0;
  }

  .apfl-sl-wrapper .apfl-column {
    padding: 0 !important;
  }

  .lst-dtls {
    display: block;
  }

  .lst-dtls .details-left,
  .lst-dtls .details-right {
    width: 100%;
  }

  .lst-dtls .details-right,
  .details-right .rent-hdng {
    text-align: left;
    font-weight: normal;
    font-size: 1rem;
  }

  .apfl-half {
    width: 100%;
    float: none;
  }

  .apfl-half.apply-sec {
    text-align: left;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .apfl-sl-wrapper .sl-btns {
    width: 75%;
    text-align: center;
    margin-left: initial;
  }

  .listing-filters form {
    margin: 0 0.5em;
    gap: 0;
  }

  .apfl-eagle-template .listing-filters select,
  .apfl-eagle-template .listing-filters input[type="date"],
  .apfl-eagle-template .listing-filters input[type="text"],
  .apfl-eagle-template .listing-filters input[type="search"] {
    width: 48%;
    margin: 1%;
    font-size: 16px;
    flex: 48%;
  }

  .main-listings-page .all-listings {
    padding: 1em 0 !important;
  }

  .listing-filters select,
  .listing-filters input[type="submit"] {
    width: 48%;
    margin: 1%;
    min-width: auto;
  }

  .listing-filters input[type="text"],
  .listing-filters input[type="date"] {
    width: 98%;
    margin: 1%;
  }

  .main-listings-page .all-listings {
    overflow-y: unset !important;
  }
}

/* ------ Other styles (from customizer) ------ */
@media only screen and (min-width: 768px) {
  .main-listings-page .all-listings {
    margin: auto;
  }

  #apfl-listings-container.main-listings-page .listing-item {
    width: 32.333%;
  }
}

@media only screen and (max-width: 1200px) and (min-width: 768px) {
}

.main-listings-page .listing-filters {
  background-color: #598fcd !important;
}

.main-listings-page .listing-filters .apfl_page_sub_hdng {
  font-size: 50px;
  font-weight: 400;
  color: #fff;
  line-height: 1;
  text-transform: uppercase;
  text-align: center;
  padding-top: 0px;
  padding-bottom: 0px;
  padding-left: 0px;
  padding-right: 0px;
}

.listing-filters input[type="submit"] {
  color: #ffffff;
}

.listing-filters input[type="submit"] {
  background: #ff6600;
}

.main-listings-page .listing-item span.rent-price,
.main-listings-page .listing-item span.rent-price-off {
  color: #ffffff;
}

.main-listings-page .listing-item span.lstng-avail,
.main-listings-page .listing-item span.lstng-avail-off {
  color: #ffffff;
}

.main-listings-page .listing-item span.lstng-avail,
.main-listings-page .listing-item span.lstng-avail-off {
  background: #ff6600;
}

.main-listings-page .listing-item .btns .more_detail_btn {
  color: #ffffff;
}

.main-listings-page .listing-item .btns .more_detail_btn {
  background: #598fcd;
}

.main-listings-page .listing-item .btns .more_detail_btn:hover {
  color: #ffffff;
}

.main-listings-page .listing-item .btns .more_detail_btn:hover {
  background: #444444;
}

.main-listings-page .listing-item .btns .apply_btn {
  color: #ffffff;
}

.main-listings-page .listing-item .btns .apply_btn {
  background: #598fcd;
}

.main-listings-page .listing-item .btns .apply_btn:hover {
  color: #ffffff;
}

.main-listings-page .listing-item .btns .apply_btn:hover {
  background: #444444;
}

.main-listings-page .listing-item .btns .schedule_btn {
  color: #ffffff;
}

.main-listings-page .listing-item .btns .schedule_btn {
  background: #598fcd;
}

.main-listings-page .listing-item .btns .schedule_btn:hover {
  color: #ffffff;
}

.main-listings-page .listing-item .btns .schedule_btn:hover {
  background: #444444;
}

.details-right .rent-hdng {
  color: #000;
}

.apfl-sl-wrapper #applyBtn {
  color: #ffffff;
  background-color: #598fcd;
}

.apfl-sl-wrapper #applyBtn:hover {
  color: #ffffff;
  background-color: #444444;
}

.apfl-sl-wrapper #contactBtn {
  color: #e2e2e2;
  background-color: #598fcd;
}

.apfl-sl-wrapper #contactBtn:hover {
  color: #ffffff;
  background-color: #444444;
}

.apfl-sl-wrapper #schshowingBtn {
  color: #ffffff;
  background-color: #598fcd;
}

.apfl-sl-wrapper #schshowingBtn:hover {
  color: #ffffff;
  background-color: #444444;
}
