/* ------ 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: .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;
}


input,
.site textarea,
select {
	border: 1px solid black !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;
}