@font-face {
	font-family: 'icomoon';
	src:  url('../fonts/icomoon.eot?ze0o2');
	src:  url('../fonts/icomoon.eot?ze0o2#iefix') format('embedded-opentype'),
	  url('../fonts/icomoon.ttf?ze0o2') format('truetype'),
	  url('../fonts/icomoon.woff?ze0o2') format('woff'),
	  url('../fonts/icomoon.svg?ze0o2#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

[class^="icon-"], [class*=" icon-"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'icomoon' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
  
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
  }
.icon-fav-f:before {
  content: "\e91f";
}
.icon-fav:before {
  content: "\e921";
}
.icon-not-favorited:before {
	content: "\e92a";
}
.icon-is-favorited:before {
	content: "\e919";
}
.icon-star-h:before {
	content: "\e92a";
}
.icon-star:before {
	content: "\e919";
}
.icon-trash-2:before {
  content: "\e91e";
}
.icon-pin1:before {
  content: "\e91a";
}
.icon-phone:before {
  content: "\e91b";
}
.icon-email:before {
  content: "\e91c";
}
.icon-id:before {
  content: "\e91d";
}
  .icon-euro:before {
	content: "\e917";
  }
.icon-profile:before {
	content: "\e913";
  }
  .icon-pref:before {
	content: "\e915";
  }
  .icon-out:before {
	content: "\e916";
  }
  .icon-size-2:before {
	content: "\e911";
  }
  .icon-instagram:before {
	content: "\e90c";
  }
  .icon-facebook:before {
	content: "\e910";
  }
  .icon-build:before {
	content: "\e907";
  }
  .icon-pin:before {
	content: "\e908";
  }
  .icon-build1:before {
	content: "\e909";
  }
  .icon-online:before {
	content: "\e90a";
  }
  .icon-chat:before {
	content: "\e90b";
  }
  .icon-angle-up:before {
	content: "\e90d";
  }
  .icon-floorplan:before {
	content: "\e903";
  }
  .icon-brochure:before {
	content: "\e906";
  }
.icon-calendar:before {
  content: "\e901";
}
  .icon-size:before {
	content: "\e93b";
  }

  .icon-arrow-right:before {
	content: "\e90e";
  }
  .icon-arrow-down:before {
	content: "\e90f";
  }
.icon-arrow-up:before {
  content: "\e900";
}
  .icon-angle-down:before {
	content: "\e902";
  }
	.icon-search:before {
	content: "\e904";
	}
	.icon-check_circle:before {
	content: "\e912";
	}
	.icon-home:before {
	content: "\e918";
	}
	.icon-star1:before {
	content: "\f005";
	}
	.icon-star-o:before {
	content: "\f006";
	}
  .icon-bath:before {
	content: "\e93f";
  }
.icon-bathtub:before {
  content: "\e93f";
}
.icon-s15:before {
  content: "\e93f";
}
  .icon-bed:before {
	content: "\e940";
  }
.icon-hotel:before {
  content: "\e940";
}
  .icon-pricelist:before {
	content: "\e905";
  }

:root {
	--white: #fff;
	--black: #000;
	--bgColor: #F8FAFC;
	--primary: #3E66FB;
	--secondary: #5F6079;
	--active: #7AC272;
	--success: #15CF00;
	--success-2: #6BC754;
	--gray-1: #F3F3F3;
	--gray-2: #DEDEDE;
	--gray-3: #F8FAFC;
	--gray-4: #EFF3FF;
	--gray-5: #F0F0F0;
	--map-hover: #DDE4FF;
}
* {
	box-sizing: border-box;
}
[v-cloak] {
	display: none;
}
html {
    scroll-behavior: smooth;
}
html,
body {
	height: 100%;
}
body {
	margin: 0;
	min-width: 320px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background-color: var(--bgColor);
	font-family: "Poppins", sans-serif;
}
body.nav-active {
	overflow: hidden;
}
body:not(.logged-in) .hide-not-logged-in {
	display: none !important;
}
body:not(.logged-in) .advanced-filters {
	pointer-events: none;
	user-select: none;
}
body:not(.logged-in) .advanced-filters::after {
	content: '';
}
body:not(.logged-in) .star-link.fav-btn {
	display: none;
}
body.logged-in .star-link.signup-btn {
	display: none;
}
body.logged-in .advanced-filters .signup-btn {
	display: none;
}
body.logged-in .hide-logged-in {
	display: none !important;
}
body.logged-in .cta-block {
	display: none !important;
}
body.logged-in .hidden-not-logged-in:after {
	content: none !important;
}
body.logged-in .hidden-not-logged-in .btn {
	display: none !important;
}
body.modal-open {
	overflow: hidden;
}
#app {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
img {
	max-width: 100%;
	height: auto;
}
img.lazy {
	opacity: 0;
	transition: opacity 0.3s ease;
}
img.lazy.loaded {
	opacity: 1;
}
a {
	text-decoration: none;
	transition: color .3s;
}
a:hover {
	text-decoration: none;
}
h1,h2,h3,h4,h5,h6 {
	margin: 0 0 20px;
}
h1,.h1 {
	font-size: 30px;
	font-weight: 600;
}
h2,.h2 {
	font-size: 22px;
}
h3,.h3 {
	font-size: 18px;
}
p {
	margin: 0 0 15px;
}
.uppercase {
	text-transform: uppercase;
}
.pt-0 {
	padding-top: 0 !important;
}
.w-100 {
	width: 100%;
}
.d-flex {
	display: flex;
}
.justify-between {
	justify-content: space-between;
}
.flex-column {
	flex-direction: column;
}
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.position-relative {
	position: relative;
}
#header {
	padding: 22px 0;
	position: relative;
	z-index: 99;
}
#header .container-full {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.btn {
	cursor: pointer;
	display: inline-block;
	vertical-align: middle;
	padding: 7px 10px;
	background-color: var(--primary);
	color: var(--white);
	border-radius: 10px;
	transition: .3s color, .3s border-color, .3s background-color;
	text-transform: capitalize;
	border: 1px solid var(--primary);
	text-align: center;
	font-family: "Poppins", sans-serif;
}
.btn-secondary {
	background-color: var(--gray-5);
	color: var(--black);
	border-color: var(--gray-5);
}
.btn-secondary-outline {
	background-color: transparent;
	border-color: var(--gray-2);
	color: var(--black);
}
.btn-danger-outline {
	background-color: transparent;
	border-color: transparent;
	color: #D80027;
	padding: 7px 0;
}
.btn.loading:after {
	pointer-events: none;
	top: 0;
	left: 0;
	width: 40px;
	height: 40px;
}
.btn:hover {
	background-color: var(--white);
	color: var(--primary);
}
.btn-success {
	background-color: var(--success);
	color: var(--white);
	border-color: var(--success);
}
.btn-success:hover {
	background-color: var(--white);
	color: var(--success);
}
.btn-lg {
	width: 100%;
	padding: 12px 10px;
	font-weight: 600;
}
.btn.disabled {
	pointer-events: none;
	opacity: .5;
}
.close-icon {
	width: 10px;
	height: 10px;
	position: relative;
	display: inline-block;
	vertical-align: middle;
}
.close-icon::after,
.close-icon::before {
	content: '';
	width: 2px;
	height: 10px;
	background-color: var(--black);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
}
.close-icon::before {
	width: 10px;
	height: 2px;
}

.loading {
	position: relative;
	pointer-events: none;
}
.loading:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(250, 253, 251, 0.7);
	z-index: 10;
	pointer-events: none;
}
.loading:after {
	content: '';
	position: absolute;
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
	width: 50px;
	height: 50px;
	z-index: 11;
	background-color: #333;
	border-radius: 100%;
	-webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
	animation: sk-scaleout 1.0s infinite ease-in-out;
}
.nav-opener {
	display: none;
}
.filter-opener {
	display: none;
	font-size: 14px;
	align-items: center;
	justify-content: center;
	gap: 5px;
	color: var(--primary);
	margin: 0 0 20px;
}
.filter-opener i {
	font-size: 6px;
}
.logo a {
	font-size: 0;
	display: block;
}
.menu {
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
	align-items: center;
	gap: 10px;
}
.menu a:not(.btn) {
	color: var(--black);
}
.menu a:not(.btn):hover {
	color: var(--primary)
}
.container {
	padding: 0 15px;
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
}
.container-full {
	padding: 0 15px;
	width: 100%;
}
.container-xs {
	padding: 0 15px;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}
.container-sm {
	padding: 0 15px;
	width: 100%;
	max-width: 1146px;
	margin: 0 auto;
}
.dev-item {
	background-color: var(--white);
	border-radius: 30px;
	color: var(--black);
	margin-bottom: 15px;
	display: flex;
	flex-direction: column;
}
.empty-dev {
	padding: 20px;
	text-align: center;
	grid-column: 1 / -1;
}
.dev-item .location {
	text-transform: capitalize;
}
.star-link {
	color: var(--white) !important;
	top: 15px;
	right: 28px;
	position: absolute;
	line-height: 1;
	font-size: 20px;
	z-index: 1;
}
.star-link:hover {
	color: var(--primary) !important;
}
.star-link i.hidden {
	display: none;
}
.dev-item .item-top {
	position: relative;
	border-radius: 30px 30px 3px 3px;
	overflow: hidden;
}
.dev-item .item-top::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(to bottom, rgba(0,0,0,0.3), rgba(0,0,0,0));
	pointer-events: none;
}
.dev-item .price {
	display: block;
	font-weight: 400;
	margin-bottom: 10px;
}
.dev-details .price {
	display: flex;
	flex-direction: column;
	font-size: 25px;
	gap: 10px;
	flex-shrink: 0;
	text-align: center;
}
.dev-details .price .currency {
	min-height: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
}
.dev-details .price .currency i {
	font-style: normal;
	font-weight: 400;
}
.dev-details .price span {
	font-weight: 400;
	font-size: 14px;
}
.dev-details .title-holder {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 15px;
}
.dev-details .location {
	font-weight: 400;
}
.dev-item svg {
	width: 100%;
	height: auto;
}
.units {
	position: absolute;
	top: 15px;
	left: 15px;
	background-color: rgba(0, 0, 0, .3);
	border-radius: 10px;
	color: var(--white);
	font-size: 16px;
	padding: 5px 10px;
	z-index: 10;
	display: block;
}
.dev-item h3 {
	margin-bottom: 5px;
	font-weight: 600;
	width: 100%;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	word-break: break-word;
}

.dev-item .item-body {
	color: inherit;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 15px 20px;
	flex-grow: 1;
}

.dev-item .item-body a {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 10px;
}

.dev-item .item-body .dev-item-info {
	display: grid;
	grid-template-rows: auto auto;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}

.dev-item .details-info {
	align-self: flex-start;
	justify-content: flex-end;
}

.dev-item .details-info li {
	justify-content: flex-end;
}

.dev-details .details-info {
	margin-bottom: 0;
	gap: 10px;
	position: relative;
	flex-shrink: 0;
}

.dev-details .details-info li {
	flex-direction: column;
	gap: 10px;
}

.dev-details .details-info .img-holder {
	min-height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.dev-details .details-info i {
	font-size: 25px;
}

.details-info {
	padding: 0;
	margin: 0 0 5px;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	line-height: 1;
}

.details-info li {
	display: flex;
	align-items: center;
	gap: 8px;
}

.filter-block {
	position: relative;
}

.filter-block .label .input {
	height: 41px;
	border-radius: 17px;
	border: 2px solid var(--gray-2);
	background-color: var(--gray-3);
	box-shadow: none;
	color: var(--black);
	max-width: 157px;
	margin: 0 auto;
	display: block;
}

.filter-block .label .input::placeholder {
	color: var(--black);
}

.filter-block .reset-btn {
	position: absolute;
	top: 0;
	right: 0;
	color: var(--active);
	font-weight: 600;
}

#map-modal .map-filter {
	display: block !important;
}

#map-modal .modal-body {
	max-width: 1024px;
	padding: 20px 10px;
}

.map-filter {
	text-align: center;
	position: relative;
}

.search-map-box .map-btn {
	display: none;
}

.map-filter path:not(.area),
.map-filter g:not(.area) {
	pointer-events: none;
}

.map-filter .area {
	cursor: pointer;
	transition: .3s fill;
}

.map-filter .active .area {
	fill: var(--map-hover);
}

.map-filter .active .area.area-light {
	fill: #6372ab;
}

.map-filter .drop-holder {
	border-radius: 10px;
	background-color: var(--gray-4);
	padding: 10px;
	box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .25);
	position: fixed;
	margin: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 10px;
	text-align: left;
	display: none;
	pointer-events: none;
	transform: translateX(100%);
	z-index: 100;
	width: 180px;
}

.results-nav {
	display: flex;
	flex-direction: column;
	gap: 5px;
	padding: 20px 0;
}

.results-nav .title {
	font-weight: 400;
}

.results-nav .title span {
	font-weight: 600;
}

.view-switch {
	display: flex;
	align-items: center;
	gap: 10px;
}

.view-switch .btn {
	border-radius: 2em;
	border-color: var(--gray-2);
	background-color: var(--gray-3);
	color: var(--black);
	padding: 4px 9px;
	flex-grow: 1;
}

.view-switch .btn:hover {
	background-color: var(--primary);
	color: var(--white);
}

.view-switch .btn.active {
	background-color: var(--primary);
	color: var(--white);
	pointer-events: none;
}

.dev-item .carousel .slide {
	aspect-ratio: 3 / 2;
	height: auto;
}

.dev-item .carousel {
	border-radius: 30px 30px 3px 3px;
	overflow: hidden;
}

.dev-item .carousel a {
	display: block;
	background-color: #000;
	width: 100%;
	height: 100%;
}

.dev-item .carousel img {
	left: 0;
	object-fit: cover;
	position: absolute;
	top: 0;
	border-radius: 30px 30px 3px 3px;
	height: 100%;
	width: 100%;
}

.dev-item .carousel .splide__arrow--prev.disabled {
	display: none;
}

.filter-block .label {
	display: block;
	font-weight: 600;
	color: var(--secondary);
	margin-bottom: 15px;
}

.slider-filter {
	border-radius: 17px;
	background-color: var(--gray-4);
	padding: 10px;
	margin-bottom: 30px;
}

.pips {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	text-align: center;
	text-transform: capitalize;
	font-weight: 500;
	font-size: 12px;
	margin-bottom: 7px;
}

.pips span:first-of-type {
	text-align: left;
}

.pips span:last-of-type {
	text-align: right;
}

.checkbox-filter {
	padding: 0 0 10px;
	margin-bottom: 20px;
}

.checkbox-filter .custom-checkbox.hidden-option {
	display: none;
}

.checkbox-filter .show-more {
	padding: 10px 0;
	text-align: center;
	width: 100%;
	font-weight: 500;
}

.checkbox-filter .show-more a {
	color: var(--primary)
}

.slider-filter .value-box {
	border-radius: 17px;
	background-color: var(--white);
	padding: 7px 14px;
	text-transform: capitalize;
}

.slider-filter.build .value-box {
	min-height: 77px;
}

.slider-filter .subtitle {
	display: block;
	color: var(--secondary);
}

.slider-filter .slider-values {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	font-weight: 700;
}

.slider-filter .slider {
	margin-bottom: 15px;
	padding: 0 10px;
	max-width: 98%;
}

.noUi-target {
	background-color: var(--white);
	border: none;
	box-shadow: none;
	border-radius: 3px;
	height: 5px;
}

.noUi-connect {
	background-color: var(--primary);
}

.noUi-handle {
	width: 23px !important;
	height: 23px !important;
	border-radius: 50%;
	background-color: var(--white);
	box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .25);
	top: -9px !important;
	border: none;
	cursor: pointer;
}

.noUi-handle::before,
.noUi-handle::after {
	content: none;
}

.custom-radio {
	display: flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	text-transform: capitalize;
	position: relative;
}

.custom-radio input[type="radio"],
.custom-radio input[type="checkbox"] {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 0;
}

.custom-radio .fake-input {
	border-radius: 3px;
	border: 1px solid var(--gray-2);
	background-color: var(--white);
	transition: .3s border-color, .3s background-color;
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}

.custom-radio input[type="radio"]:checked + .fake-input,
.custom-radio input[type="checkbox"]:checked + .fake-input {
	border-color: var(--primary);
	background-color: var(--primary);
}

.custom-checkbox {
	position: relative;
}

.custom-checkbox .fake-input {
	border-radius: 2em;
	background-color: var(--gray-3);
	border: 1px solid var(--gray-2);
	padding: 4px 13px;
	display: block;
	cursor: pointer;
	transition: .3s border-color, .3s background-color, .3s color;
}

.custom-checkbox input[type="checkbox"] {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 0;
}

.custom-checkbox input[type="checkbox"]:checked + .fake-input {
	background-color: var(--primary);
	color: var(--white);
	border-color: var(--primary);
}

.checkbox-filter .checkbox-holder {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.gallery {
	position: relative;
	border-radius: 10px;
	overflow: hidden;
}
.gallery::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(to bottom, rgba(0,0,0,0.3), rgba(0,0,0,0));
}
.gallery .slide {
	aspect-ratio: 3 / 2;
	height: auto;
}

.gallery .slide .a {
	display: block;
	background-color: #000;
	width: 100%;
	height: 100%;
}

.gallery .slide img {
	left: 0;
	object-fit: cover;
	position: absolute;
	top: 0;
	height: 100%;
	width: 100%;
}

.gallery .splide__slide.loaded {
	opacity: 1;
}

.map-block {
	border-radius: 12px;
	overflow: hidden;
}

.map-block.advanced-filters .btn {
	top: 50%;
	transform: translate(-50%, -50%);
}

.map-block.advanced-filters:after {
	background-color: rgba(248, 250, 252, 0.5);
}

.map-block #map {
	height: 100%;
}

.property-section {
	margin-bottom: 11px;
}

.property-section .container-full {
	margin-bottom: 19px;
}

.property-section .star-link {
	font-size: 24px;
}

.dev-details {
	border-radius: 17px;
	background-color: var(--white);
	padding: 10px;
	margin-bottom: 11px;
	display: flex;
	gap: 15px 50px;
	flex-direction: column;
}

.dev-details.flex-row {
	flex-direction: row;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.dev-details h1 {
	margin-bottom: 0;
	width: 100%;
}

.building-block {
	pointer-events: none;
	display: flex;
	flex-direction: column;
	padding: 20px;
}

.building-block .building-lifecycle {
	display: flex;
	flex-direction: row-reverse;
	font-size: 12px;
	justify-content: space-around;
	list-style: none;
	margin: 0 0 15px;
	overflow: hidden;
	padding: 15px 10px;
	position: relative;
	width: 100%;
	font-weight: 600;
}

.building-block .building-lifecycle::before {
	content: "";
	background: #EFF3FF;
	border-radius: 6px;
	height: 4px;
	left: 0;
	position: absolute;
	right: 0;
	top: 16px;
}

.building-block .building-lifecycle li {
	position: relative;
}

.building-block .building-lifecycle li::after,
.building-block .building-lifecycle li::before {
	content: "";
	border-radius: 6px;
	height: 4px;
	left: 50%;
	position: absolute;
	right: -90%;
	top: 0;
}

.building-block .building-lifecycle li::before {
	left: -90%;
	right: 50%;
}

.building-block .building-lifecycle a {
	color: #e3e3e3;
	display: block;
	font-size: 10px;
	padding-top: 25px;
	position: relative;
	text-transform: capitalize;
	z-index: 2;
}

.building-block .building-lifecycle a::before {
	content: "";
	background: #EFF3FF;
	border: 2px solid #EFF3FF;
	border-radius: 50%;
	height: 23px;
	width: 23px;
	left: 50%;
	position: absolute;
	top: -10px;
	transform: translateX(-50%);
	box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .15);
}

.building-block .building-lifecycle li.active a,
.building-block .building-lifecycle li.active ~ li a {
	color: #000;
}

.building-block .building-lifecycle li.active a::before {
	background-color: #000;
	border: 2px solid #EFF3FF;
}

.building-block .result-holder {
	align-items: center;
	color: #000;
	display: flex;
	flex-direction: column;
	font-size: 14px;
	text-align: center;
}

.building-block .result-holder i {
	font-size: 20px;
	margin-bottom: 9px;
}

.building-block .result-holder .text-holder {
	display: flex;
	flex-direction: column;
}

.building-block .result-holder .date {
	font-weight: 600;
}

.hidden-info {
	padding: 0;
	margin: 0 0 15px;
	list-style: none;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 15px;
	color: var(--secondary);
	font-size: 12px;
	font-weight: 700;
}

.hidden-info li {
	position: relative;
	display: flex;
	align-items: center;
	gap: 15px;
}

.hidden-info li::after {
	content: '';
	width: 5px;
	height: 5px;
	background-color: var(--secondary);
	border-radius: 50%;
	display: block;
}

.hidden-info li:last-child::after {
	content: none;
}

.amenities-holder {
	position: relative;
	overflow: hidden;
	width: 100%;
}

.amenities-holder .nav-btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background-color: rgba(169, 169, 169, 0.26);
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--white);
	width: 66px;
	height: 72px;
	padding: 5px;
	font-size: 26px;
}

.amenities-holder .nav-btn.disabled {
	display: none !important;
}

.amenities-holder .nav-prev {
	left: 10px;
}

.amenities-holder .nav-prev i {
	display: block;
	transform: rotate(180deg);
}

.amenities-holder .nav-next {
	right: 10px;
}

.amenities-holder .scroll-box {
	overflow: hidden;
}

.amenities {
	padding: 0;
	margin: 0;
	list-style: none;
	gap: 30px;
	display: inline-flex;
	text-align: center;
}

.amenities li {
	min-width: 78px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.amenities .title {
	display: block;
	font-weight: 400;
	white-space: nowrap;
}

.amenities .img-holder {
	min-height: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.details-block {
	line-height: 2;
	border-radius: 17px;
	background-color: var(--white);
	padding: 15px 20px;
	margin-bottom: 40px;
}

.details-block .container {
	max-width: 1270px;
}

.details-block h2 {
	font-weight: 600;
	margin-bottom: 10px;
}

.docs-block {
	padding: 20px 15px 10px;
	text-align: center;
	line-height: 2;
	background-color: var(--gray-4);
	border-radius: 10px;
	margin-bottom: 20px;
}

.docs-block .advanced-filters::after {
	background-color: rgba(239, 243, 255, .5);
}

.docs-block h3 {
	margin-bottom: 10px;
}

.docs-holder {
	background-color: rgba(239, 243, 255, .3);
	border-radius: 25px;
	padding: 20px;
	position: relative;
}

.docs-holder.disabled {
	opacity: 0.5;
	pointer-events: none;
}

.docs-holder.advanced-filters .btn {
	min-width: 282px;
}

.docs-holder .download-btn {
	border-radius: 17px;
	background-color: var(--gray-3);
	padding: 20px;
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, .25);
	color: var(--black);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 20px;
	transition: .3s background-color, .3s color;
	font-weight: 700;
	margin-bottom: 15px;
}

.docs-holder .download-btn:hover {
	background-color: var(--primary);
	color: var(--white);
}

.docs-holder .download-btn i {
	font-size: 30px;
}

.contact-block {
	text-align: center;
	padding: 40px 0;
}

.contact-block h3 {
	margin-bottom: 30px;
}

.contact-block form:not([class]) {
	max-width: 400px;
	margin: 0 auto;
}

.contact-block .form-holder {
	text-align: left;
}

.contact-block .text-block {
	padding: 0 0 35px;
	max-width: 680px;
	margin: 0 auto;
}

.contact-block .text-block p {
	margin: 0;
}

.contact-btn {
	position: relative;
	cursor: pointer;
	margin-bottom: 15px;
	display: flex;
}

.contact-btn input[type="radio"] {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 0;
}

.contact-btn input[type="radio"]:checked + .fake-label {
	background-color: var(--primary);
	color: var(--white);
	border-color: var(--primary);
}

.contact-btn .fake-label {
	border-radius: 17px;
	border: 2px solid var(--black);
	color: var(--black);
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	gap: 10px;
	font-weight: 600;
	padding: 10px;
	transition: .3s background-color, .3s color, .3s border-color;
	width: 100%;
}

.contact-btn:hover .fake-label {
	background-color: var(--primary);
	color: var(--white);
	border-color: var(--primary);
}

.contact-btn i {
	font-size: 20px;
}

.splide__arrow {
	background-color: rgba(255, 255, 255, 0.26);
	opacity: 1;
	border-radius: 10px;
	width: 53px;
	height: 46px;
	padding: 15px;
}

.splide__arrow.disabled {
	pointer-events: none;
	opacity: .7;
}

.splide__arrow--prev {
	left: 15px;
}

.splide__arrow--next {
	right: 15px;
}

.splide__arrow svg {
	fill: var(--white)
}

.splide__pagination {
	gap: 10px;
	z-index: 2;
	bottom: 15px;
	flex-wrap: nowrap;
}

.splide__pagination .splide__pagination__page {
	width: 10px;
	height: 10px;
	background-color: rgba(217, 217, 217, 0.5);
	margin: 0;
}

.splide__pagination .splide__pagination__page.is-active {
	transform: none;
	background-color: rgba(255, 255, 255, 0.8);
}

.pagination {
	padding: 20px 0;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.pagination .btn {
	border-color: var(--gray-2);
	background-color: var(--gray-3);
	color: var(--black);
}

.pagination .btn:hover {
	background-color: var(--primary);
	color: var(--white);
}

.advanced-filters {
	position: relative;
}

.advanced-filters::after {
	content: none;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	backdrop-filter: blur(4px);
	z-index: 1;
	background-color: rgba(255, 255, 255, .5);
}

.advanced-filters .signup-btn {
	max-width: 215px;
	position: absolute;
	z-index: 2;
	top: 10px;
	left: 50%;
	pointer-events: all;
	transform: translateX(-50%);
	width: 100%;
}

.modal {
	opacity: 0;
	visibility: hidden;
	transition: .3s opacity, .3s visibility;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1050;
}

.modal.show {
	opacity: 1;
	visibility: visible;
}

.modal.show .modal-body {
	transform: translate(-50%, -50%);
}

.modal-backdrop {
	background-color: rgba(0, 0, 0, .5);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#video-modal .modal-body {
	max-width: 1160px;
	padding: 0;
}

#agent-reviews-modal h5 {
	text-align: center;
	font-size: 22px;
}

#agent-reviews-modal .agent-block,
#agent-reviews-modal .block-holder {
	margin-bottom: 20px;
}

.modal-body {
	max-width: 490px;
	width: 100%;
	background-color: var(--white);
	border-radius: 25px;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, 0);
	transition: .3s transform;
	padding: 40px 30px;
	max-height: 100%;
	overflow-y: auto;
	overflow-x: hidden;
}

.modal-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 0 23px;
	border-bottom: 1px solid var(--gray-1);
	margin: 0 0 30px;
}

.modal-header h4 {
	margin: 0;
	font-size: 18px;
}

.modal .btn {
	width: 100%;
	font-size: 18px;
	padding: 12px 10px;
}

.close-btn {
	width: 30px;
	height: 30px;
	display: block;
	border-radius: 7px;
	background-color: var(--gray-1);
	position: relative;
}

.close-btn::before,
.close-btn::after {
	content: '';
	width: 2px;
	height: 10px;
	background-color: var(--success);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
}

.close-btn::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

.label {
	display: block;
	margin-bottom: 20px;
}

.label .fake-label {
	display: block;
	font-weight: normal;
	font-weight: 600;
	margin-bottom: 5px;
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="date"],
textarea,
select {
	height: 47px;
	border-radius: 7px;
	border: 2px solid var(--gray-4);
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 1);
	width: 100%;
	transition: .3s border-color;
	padding: 5px 10px;
	font-family: "Poppins", sans-serif;
}

input:disabled {
	border-color: #F7F8FF;
	background-color: #F7F8FF;
}

textarea {
	height: 123px;
	resize: none;
}

input.invalid {
	border-color: #FF0000;
}

input:focus {
	outline: none;
	border-color: var(--primary);
}

.login-section {
	padding: 30px 40px;
	max-width: 490px;
	margin: 0 auto;
	border-radius: 25px;
	background-color: var(--white);
}

.login-section h1 {
	border-bottom: 1px solid var(--gray-1);
	padding: 20px 0;
}

.login-section .btn {
	margin-bottom: 20px;
}

.form-subtext p {
	margin-bottom: 0;
}

.form-subtext a {
	color: var(--primary);
}

.custom-check {
	display: flex;
	align-items: center;
	gap: 10px;
	font-style: italic;
	margin-bottom: 10px;
	cursor: pointer;
	position: relative;
}

.custom-check .fake-input {
	border: 1px solid var(--success-2);
	border-radius: 2px;
	width: 14px;
	height: 14px;
	flex-shrink: 0;
	position: relative;
	transition: .3s background-color;
}

.custom-check .fake-input::after {
	content: '';
	width: 4px;
	height: 9px;
	border: solid var(--white);
	border-width: 0 2px 2px 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
	opacity: 0;
	visibility: hidden;
	transition: .3s opacity, .3s visibility;
}

.custom-check input {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 0;
}

.custom-check input:checked + .fake-input {
	background-color: var(--success-2);
}

.custom-check input:checked + .fake-input::after {
	opacity: 1;
	visibility: visible;
}

form .btn {
	margin-bottom: 20px;
}

.custom-checkbox-box .fake-label {
	border-radius: 4px;
	box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 2px 0px;
	padding: 7px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	text-transform: uppercase;
	min-height: 60px;
	transition: .3s background-color, .3s color, .3s box-shadow;
}

.custom-checkbox-box:hover .fake-label {
	box-shadow: rgba(62, 102, 251, 1) 0px 0px 3px 0px;
}

.custom-checkbox-box input {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 0;
}

.custom-checkbox-box input:checked + .fake-label {
	background-color: var(--primary);
	color: var(--white);
}

.types-holder {
	display: flex;
	flex-wrap: wrap;
	gap: 38px;
	margin-bottom: 20px;
}

.map-view {
	position: relative;
	padding-bottom: 100%;
}

.map-view #map {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.cta-block {
	border-radius: 10px;
	background-color: var(--gray-4);
	padding: 15px;
	margin-bottom: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	color: #000;
}
.cta-block.desktop {
	display: none;
}
.cta-block .title {
	font-weight: 400;
	max-width: 250px;
	text-align: center;
}

.perks-list {
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
	gap: 10px;
	text-align: center;
}

.perks-list .icon-holder {
	margin-bottom: 10px;
	font-size: 24px;
}

.perks-list .title {
	font-size: 14px;
	text-transform: capitalize;
}

.js-phone-number .input-holder {
	display: flex;
	gap: 10px;
	margin-bottom: 5px;
}

.js-phone-number .msgs-holder {
    min-height: 40px;
}
	
.js-phone-number .code .flag.none {
	background: none !important;
}

#error-msg {
    height: auto;
    min-height: 35px;
	position: relative;
    padding: 6px 10px;
    margin: 5px 0 0;
    border: 1px solid transparent;
    border-radius: 0.25rem;
	color: #721c24;
    background-color: #f8d7da;
    border-color: #f5c6cb;
}

.js-phone-drop {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	width: 250px;
	background-color: var(--white);
	border: 2px solid #E7F0FE;
    box-shadow: 0 0 2px 0 rgba(0, 0, 0, 1);
	border-radius: 7px;
	z-index: 2;
	padding: 5px;
	height: 300px;
	overflow-y: auto;
	overflow-x: hidden;
}

.js-phone-drop .search-code {
	margin-bottom: 10px;
}

.js-phone-drop .drop-holder {
	padding: 0;
	margin: 0;
	list-style: none;
}

.js-phone-drop .drop-holder li {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
	cursor: pointer;
}

.js-phone-drop .drop-holder .flag {
	width: 30px;
}

.code-holder {
	width: 100px;
    border-radius: 7px;
    border: 2px solid var(--gray-4);
    box-shadow: 0 0 2px 0 rgba(0, 0, 0, 1);
    transition: .3s border-color;
	position: relative;
}

.code-holder .code {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 5px;
	cursor: pointer;
}

.code-holder .code img {
	width: 30px;
}

.code-holder i {
	color: var(--black);
	font-size: 10px;
}

.phone-msg {
	padding: 3px 6px;
	color: var(--white);
	background-color: var(--active);
	border-radius: 4px;
	font-size: 12px;
	display: inline-block;
}

.phone-msg.danger {
	background-color: #FF0000;
}

#main {
	padding: 20px 0;
	flex: 1;
}

.footer-section {
	border-top: 2px solid #DDE4FF;
	padding: 30px 0;
}

#footer h5 {
	text-transform: uppercase;
	font-size: 20px;
	font-weight: 600;
	margin: 0 0 20px;
}

#footer .container {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
}

.footer-list {
	padding: 0;
	margin: 0;
	list-style: none;
	text-transform: capitalize;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.footer-list a {
	color: var(--black);
}

.footer-list a:hover {
	color: var(--primary);
}

.footer-list i {
	font-size: 40px;
}

.footer-list.inline {
	flex-direction: row;
	gap: 16px;
	flex-wrap: wrap;
}

.copyright {
	grid-column: span 2;
	text-align: center;
}

.copyright p {
	margin-bottom: 0;
}

.policy-links {
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	grid-column: span 2;
	justify-content: center;
}

.policy-links a {
	color: var(--black);
}

.policy-links a:hover {
	color: var(--primary);
}

.policy-links li:before {
	content: '|';
	display: inline-block;
	vertical-align: middle;
	margin: 0 2px;
}

.policy-links li:first-child:before {
	content: none;
}

.gmap-info-window {
	display: block;
	padding: 0;
	color: var(--black);
}

.gm-style-iw-ch {
	padding: 0;
}

.gm-style-iw-chr button {
	height: 35px !important;
}

.gm-style-iw-chr button span {
	margin: 0 12px !important;
}

.gmap-info-window .img-holder {
	display: flex;
	justify-content: space-between;
	margin-bottom: 10px;
	max-width: 300px;
}

.gmap-info-window img {
	width: 100%;
	min-height: 150px;
}

.gmap-info-window h3 {
	max-width: 300px;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	word-break: break-word;
}

.gmap-info-window p {
	margin-bottom: 0;
}

.agents-section {
	text-align: center;
}

.agents-section .row {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}

.agent-block,
.dev-block {
	border-radius: 17px;
	background-color: var(--white);
	box-shadow: 0 0 4px 0 rgba(0, 0, 0, .10);
	padding: 20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	color: var(--black)
}

.dev-block {
	margin-bottom: 10px;
}

.dev-block .img-holder {
	height: 200px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.dev-block .dev-body {
	padding: 20px;
}

.dev-block .dev-body h5:only-child {
	margin: 0;
}

.dev-block .price {
	display: block;
	margin-bottom: 10px;
}

.dev-block p {
	margin-bottom: 0;
}

.contact-block .agent-block {
	position: relative;
	cursor: pointer;
	transition: .3s box-shadow;
	margin-bottom: 15px;
}

.contact-block .agent-block:hover {
	box-shadow: 0 0 4px 0 rgba(21, 207, 0, 1);
}

.contact-block .agent-block .fake-input {
	position: absolute;
	right: 20px;
	top: 20px;
	display: block;
	border-radius: 50%;
	background-color: #F8FAFC;
	border: 1px solid #E6E6E6;
	width: 26px;
	height: 26px;
	transition: .3s background-color, .3s border-color;
}

.contact-block .agent-block .fake-input:after {
	content: '';
	width: 5px;
	height: 8px;
	border: 2px solid var(--white);
	border-width: 0 2px 2px 0;
	position: absolute;
	top: 46%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
	opacity: 0;
	visibility: hidden;
	transition: .3s opacity, .3s visibility;
}

.contact-block .agent-block input {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 0;
}

.contact-block .agent-block input:checked + .fake-input {
	background-color: var(--success);
	border-color: var(--success);
}

.contact-block .agent-block input:checked + .fake-input:after {
	opacity: 1;
	visibility: visible;
}

.agent-block {
	position: relative;
	min-height: 263px;
}

.agent-block .youtube-link {
	position: absolute;
	top: 20px;
	right: 20px;
	z-index: 2;
	cursor: pointer;
}

.agent-block .block-holder {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex-grow: 1;
	text-align: left;
}

.agent-block .block-body.expanded .text-holder {
	display: -webkit-box;
	-webkit-line-clamp: unset;
	-webkit-box-orient: vertical;
	overflow: visible;
	text-overflow: unset;
	word-break: break-word;
}

.agent-block .block-body .text-holder {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	word-break: break-word;
}

.agent-block .read-more,
.agent-block .show-less {
	color: #3E66FB;
	cursor: pointer;
}

.agent-block .block-body i {
	color: #424242;
}

.agent-block .img-holder {
    align-items: center;
    border-radius: 50%;
    display: flex;
    height: 66px;
    justify-content: center;
    overflow: hidden;
    width: 66px;
	background-color: #f3f3f3;
}

.agent-block .block-title {
	display: flex;
	gap: 13px;
	align-items: center;
	margin-bottom: 16px;
}

.agent-block .name {
	display: block;
	font-weight: 600;
	margin-bottom: 4px;
	font-size: 14px;
}

.agent-block .text-holder {
	text-align: left;
}

.agent-block .langs {
	padding: 0;
	margin: 0 0 20px;
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
}

.agent-block .langs img {
	width: 40px;
	height: 30px;
}

.agent-block .stars {
	display: flex;
	gap: 3px;
	align-items: center;
}

.agent-block .stars i {
	color: #F2D364;
	font-size: 20px;
}

.agent-block .stars .rating {
	margin-left: 10px;
	font-weight: 700;
}

.content-section .content,
.jobs-section .content,
.dev-section .content {
	margin: 0 auto 20px;
	text-align: center;
	max-width: 520px;
}

.content-section .container {
	max-width: 600px;
}

.results-nav .units-holder {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 6px;
}

.dropdown {
	position: relative;
	z-index: 2;
}

.dropdown .btn {
	border-radius: 2em;
	border: 1px solid var(--gray-2);
	background-color: var(--gray-3);
	color: var(--black);
	padding: 5px 7px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	font-size: 14px;
}

.dropdown .btn i {
	font-size: 6px;
}

.dropdown .drop {
	padding: 10px;
	margin: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 10px;
	box-shadow: 0 0 4px 0 rgba(0, 0, 0, .10);
	border-radius: 17px;
	background-color: var(--white);
	position: absolute;
	top: calc(100% + 5px);
	left: 0;
	width: 200px;
	opacity: 0;
	visibility: hidden;
	transition: .3s opacity, .3s visibility;
}

.dropdown .drop a {
	color: var(--black);
}

.dropdown .drop a.active,
.dropdown .drop a:hover {
	color: var(--primary);
}

.dropdown .drop.show {
	opacity: 1;
	visibility: visible;
}

.thank-you-section {
	text-align: center;
}

.thank-you-section .img-holder {
	max-width: 600px;
	margin: 0 auto 10px;
}

.thank-you-section .btn {
	margin-bottom: 15px;
}

.dev-section .row {
	margin-bottom: 20px;
}

.svg-holder {
	min-height: 300px;
}

.map-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 7px 0;
	flex-wrap: wrap;
	text-align: center;
	font-size: 14px;
}

.map-btn a {
	color: #000;
	border-radius: 8px;
	background-color: var(--gray-5);
	padding: 10px;
	flex-grow: 1;
}

.map-btn p {
	margin-bottom: 0;
}

.map-btn img {
	display: none;
}

.my-section .btn {
	margin-bottom: 0;
}

.my-section .container {
	display: grid;
	gap: 10px;
	grid-template-columns: 50px 1fr;
}

.my-section .img-box {
	display: flex;
	gap: 20px;
	flex-direction: column;
	margin-bottom: 20px;
	align-items: center;
}

.my-section .img-holder {
	border-radius: 50%;
	overflow: hidden;
	width: 94px;
	height: 94px;
	background-color: var(--gray-5);
}

.my-section .img-box .btn-danger-outline {
	display: flex;
	align-items: center;
	gap: 6px;
}

.my-section .img-box .btn-danger-outline:hover i::after,
.my-section .img-box .btn-danger-outline:hover i::before {
	background-color: var(--primary);
}

.my-section .img-box .btn-danger-outline i::after,
.my-section .img-box .btn-danger-outline i::before {
	background-color: #D80027;
	transition: .3s background-color;
}

.my-section .sidebar-menu {
	padding: 0;
	margin: 0;
	list-style: none;
}

.my-section .sidebar-menu li {
	margin-bottom: 30px;
}

.my-section .sidebar-menu a {
	display: flex;
	gap: 10px;
	align-items: center;
	color: var(--black);
}

.my-section .sidebar-menu a.active {
	font-weight: 600;
}

.my-section .sidebar-menu a:hover {
	color: var(--primary);
}

.my-section .sidebar-content {
	border-radius: 10px;
	background-color: var(--white);
	padding: 15px;
}

.my-section .main-content {
	border-radius: 10px;
	background-color: var(--white);
	padding: 15px;
}

.my-section .checkbox-holder {
	display: flex;
	gap: 10px 47px;
	margin-bottom: 50px;
	flex-wrap: wrap;
}

.my-section .btn[type="submit"] {
	min-width: 75px;
	padding: 12px 10px;
}

.my-section .phone-msg,
.my-section .alert-danger {
	display: none !important;
}

.my-section .phone-msg.show,
.my-section .alert-danger.show {
	display: inline-block !important;
}

.mobile-locations-filter .custom-radio {
	margin-bottom: 10px;
}

.mobile-locations-filter .fake-label i {
	font-size: 14px;
}

.mobile-locations-filter .opener-holder {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #000;
	margin-bottom: 15px;
	font-size: 14px;
	gap: 5px;
}

.mobile-locations-filter .opener-holder .label {
	margin-bottom: 0;
}

.mobile-locations-filter .opener-holder i {
	display: inline-block;
	vertical-align: middle;
	transition: .3s transform;
	font-size: 6px;
}

.mobile-locations-filter .locations-list {
	overflow: hidden;
	height: 0;
}

.mobile-locations-filter .map-nav-list {
	color: #fff;
	margin-bottom: 10px;
}

.mobile-locations-filter .overlay-icon {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(to left, rgba(0,0,0,0.5), rgba(0,0,0,0));
	width: 50px;
	z-index: 2;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	color: #fff;
	padding: 30px 0;
	font-size: 20px;
	transition: .3s opacity, .3s visibility;
	opacity: 0;
	visibility: hidden;
}

.mobile-locations-filter .overlay-icon.show {
	opacity: 1;
	visibility: visible;
}

.mobile-locations-filter .map-nav-list:hover {
	color: var(--primary);
}

.mobile-locations-filter .map-nav-list i {
	transition: .3s transform;
	display: block;
}

.mobile-locations-filter .map-nav-list.reverse i {
	transform: rotate(180deg);
}

.mobile-locations-filter .locations-list .map-box {
	overflow: auto;
}

.mobile-locations-filter.show .locations-list {
	height: auto;
}

.mobile-locations-filter.show .opener-holder i {
	transform: rotate(180deg);
}

.signup-form {
	text-align: left;
}

.lang-dropdown {
	position: relative;
}

.lang-dropdown.active .lang-menu {
	height: auto;
	opacity: 1;
	visibility: visible;
}

.lang-dropdown .dropdown-toggle {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
}

.lang-dropdown .dropdown-toggle i {
	font-size: 6px;
}

.lang-dropdown .lang-menu {
	padding: 10px 0;
	margin: 0;
	list-style: none;
	opacity: 0;
	visibility: hidden;
	display: flex;
	flex-direction: column;
	gap: 15px;
	height: 0;
	text-align: center;
}

.about-section {
	border-radius: 10px;
	padding: 30px;
	background-color: var(--white);
	margin-bottom: 10px;
}

.about-section h1 {
	text-align: center;
}

.about-section img {
	width: 100%;
	border-radius: 10px;
	margin-bottom: 20px;
	overflow: hidden;
}

.office-block {
	display: flex;
	flex-direction: column-reverse;
	gap: 20px;
	margin-bottom: 40px;
}

.offices-section {
	border-radius: 10px;
	padding: 30px;
	background-color: var(--white);
}

.offices-section h2 {
	text-align: center;
}

.offices-section h3 {
	margin-bottom: 20px;
}

.office-block .office-info {
	padding: 0;
	margin: 0 0 20px;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 20px;
	line-height: 1.2;
}

.office-block .office-info li {
	display: grid;
	grid-template-columns: 20px 1fr;
	gap: 10px;
}

.office-block .office-info a {
	display: block;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}

.office-block .office-info address {
	font-style: normal;
}

.office-block .office-info i {
	font-size: 16px;
}

.office-block .office-info i.icon-email {
	font-size: 14px;
}

.office-block .office-head {
	width: 173px;
	height: 173px;
	position: relative;
	overflow: hidden;
	border-radius: 40px;
	margin: 0 auto;
}

.office-block .office-head .name {
	position: absolute;
	color: #fff;
	background-color: rgba(0, 0, 0, .8);
	bottom: 0;
	left: 0;
	right: 0;
	padding: 10px;
	z-index: 1;
	font-size: 14px;
	text-align: center;
}

.office-block .img-col {
	border-radius: 20px;
	overflow: hidden;
}

.office-block .img-col img {
	object-fit: cover;
	height: 100%;
	width: 100%;
}

.modal .video-holder {
	position: relative;
	padding-top: 80%;
}

.modal .video-holder iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
}

.page-title {
	text-align: center;
	margin-bottom: 30px;
}

.blog-posts {
	background-color: #fff;
	padding: 10px;
	border-radius: 10px;
	max-width: 890px;
	margin: 0 auto;
}

.blog-post {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}

.blog-post .img-col {
	height: 230px;
	overflow: hidden;
	border-radius: 10px;
	display: block;
	position: relative;
}

.premium {
	position: absolute;
	bottom: 12px;
	right: 12px;
	padding: 8px 12px;
	border-radius: 6px;
	color: #fff;
	display: flex;
	gap: 5px;
	align-items: center;
	background-color: rgba(0, 0, 0, .5);
	z-index: 1;
	font-size: 14px;
}

.blog-post .img-col:hover img {
	transform: scale(1.1);
}

.blog-post .img-col img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: .3s transform;
}

.blog-post:not(:last-child) {
	margin-bottom: 30px;
}

.blog-post a {
	color: #000;
}

.blog-post .tag {
	font-size: 14px;
	border-radius: 10px;
	padding: 5px 13px;
	background-color: #F8FAFC;
	border: 1px solid #DEDEDE;
}

.blog-post h2 {
	margin-bottom: 10px;
}

.blog-section .img-holder {
	position: relative;
	border-radius: 10px;
	overflow: hidden;
	font-size: 0;
	margin-bottom: 30px;
}

.blog-section .img-holder img {
	width: 100%;
}

.blog-section .subtitle {
	font-weight: 400;
	display: block;
	margin-bottom: 30px;
}

.blog-section .post-content {
	background-color: #fff;
	border-radius: 10px;
	padding: 10px;
	margin-bottom: 30px;
	position: relative;
	line-height: 2;
}

.blog-section .post-content.hidden-not-logged-in:after {
	content: '';
	position: absolute;
	top: 83px;
	right: 10px;
	bottom: 10px;
	left: 10px;
	backdrop-filter: blur(8px);
	z-index: 1;
}

.blog-section .post-content.hidden-not-logged-in .btn {
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.faq-section {
	background-color: #fff;
	border-radius: 10px;
	padding: 10px;
	margin-bottom: 30px;
}

.faq-section h2 {
	text-align: center;
}

.open-close h3 {
	margin: 0;
}

.open-close[open] i {
	transform: rotate(-90deg);
}

.open-close i {
    transition: .3s transform;
}

.open-close summary {
	outline: none;
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	padding: 20px 0;
}

.open-close summary::-webkit-details-marker {
	display: none;
}

table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 5px;
	overflow: hidden;
}

table th,
table td {
	padding: 4px 15px;
	border: 1px solid #EEEEEE;
}

table thead th {
	background-color: #EFF3FF;
	color: #595959;
	text-align: left;
	font-weight: 400;
}

table tbody tr:nth-child(even) td {
	background-color: #F5F5F5;
}

table th:first-child,
table td:first-child {
	max-width: 150px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.table-holder {
	max-height: 229px;
	overflow: auto;
	white-space: nowrap;
}

#preview-image-modal .modal-body {
	max-width: 700px;
	max-height: calc(100% - 40px);
}

#preview-image-modal .img-holder {
	text-align: center;
}

.modal-section {
	background-color: #fff;
	border-radius: 25px;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, .1);
	text-align: center;
	padding: 30px 40px;
	max-width: 490px;
	width: 100%;
	margin: 0 auto;
}

.modal-section .btn {
	width: 100%;
}

.agent-info-block .opener {
	display: flex;
	cursor: pointer;
	align-items: center;
	justify-content: space-between;
}

.agent-info-block .opener i {
	transition: .3s transform;
}

.agent-info-block.show .content {
	display: block;
}

.agent-info-block.show .opener i {
	transform: rotate(-90deg);
}

.agent-info-block .content {
	display: none;
	padding: 20px 0;
}

.agent-info-block h2 {
	margin: 0;
}

.agent-info-block .info-row {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}

.agent-info-block .info-col {
	box-shadow: 0 0 14px 0 rgba(0, 0, 0, .25);
	border-radius: 17px;
	padding: 30px 20px;
}

.agent-info-block .type-choices {
	display: flex;
	gap: 10px;
	align-items: center;
	margin-bottom: 20px;
}

.agent-info-block .type-choices label {
	position: relative;
	display: flex;
	align-items: center;
	gap: 6px;
}

.agent-info-block .type-choices input {
	position: absolute;
	z-index: -1;
}

.agent-info-block .type-choices input:checked + .fake-input {
	background-color: #000;
	border-color: #000;
}

.agent-info-block .type-choices input:checked + .fake-input::after {
	opacity: 1;
	visibility: visible;
}

.agent-info-block .type-choices .fake-input {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background-color: #F8FAFC;
	border: 1px solid #E6E6E6;
	transition: .3s background-color, .3s border-color;
	position: relative;
	cursor: pointer;
}

.agent-info-block .type-choices .fake-input::after {
	content: '';
	width: 6px;
	height: 3px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	position: absolute;
	top: 49%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(-45deg);
	opacity: 0;
	visibility: hidden;
	transition: .3s opacity, .3s visibility;
}

.agent-info-block .type,
.agent-info-block .type-choices .fake-label {
	font-size: 10px;
	border-radius: 2em;
	padding: 5px 10px;
	cursor: pointer;
	min-width: 60px;
	text-align: center;
}

.agent-info-block .message-holder {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 20px;
	margin-bottom: 20px;
}

.agent-info-block .message-holder .date {
	flex-shrink: 0;
	color: #595959;
	display: inline-block;
	vertical-align: middle;
	min-width: 100px;
	width: 100%;
}

.agent-info-block .message-holder .type {
	flex-shrink: 0;
	display: inline-block;
	vertical-align: middle;
}

.agent-info-block .type-general {
	background-color: #E5F3FF;
	color: #595959;
}

.agent-info-block .type-pro {
	background-color: #6AC454;
	color: #fff;
}

.agent-info-block .type-con {
	background-color: #FF6969;
	color:#fff;
}

.agent-section .container {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
}

.agent-section .agent-block {
	margin-bottom: 20px;
}

.agent-section .block-holder {
	margin-bottom: 15px;
}

.type-filter {
	display: flex;
	justify-content: space-between;
}

.contact-btns {
	margin-bottom: 30px;
}

@media (min-width: 480px) {
	#footer .container {
		grid-template-columns: 1fr 1fr;
	}

	.contact-btns {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 20px;
	}

	.contact-btn {
		margin-bottom: 0;
	}

	.docs-holder {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 10px;
	}

	.docs-holder .download-btn {
		margin-bottom: 0;
	}

	.my-section .container {
		grid-template-columns: 60px 1fr;
	}

	.my-section .sidebar-content {
		padding: 20px;
	}

	.office-block .office-details {
		display: flex;
		align-items: center;
		gap: 10px;
		flex-wrap: wrap;
	}

	.office-block:nth-child(odd) .office-details {
		flex-direction: row-reverse;
	}

	.office-block .office-info {
		margin: 0;
		width: calc(100% - 183px);
	}

	.office-block .office-head {
		margin: 0;
		flex-shrink: 0;
	}

	.agent-info-block .message-holder {
		flex-wrap: nowrap;
	}

	.agent-info-block .message-holder .date {
		width: auto;
	}

	.dev-details .price {
		font-size: 35px;
	}

	.dev-details .details-info {
		gap: 60px;
	}

	.dev-details .details-info .img-holder {
		min-height: 50px;
	}

	.dev-details .details-info i {
		font-size: 35px;
	}
}

@media (max-width: 767px) {
	.logo {
		position: relative;
		z-index: 11;
	}

	.menu {
		flex-direction: column;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		transform: translateX(100%);
		background-color: var(--bgColor);
		z-index: 10;
		transition: .3s transform, .3s opacity, .3s visibility;
		padding: 60px 15px 15px;
		opacity: 0;
		visibility: hidden;
		overflow: auto;
		gap: 20px;
	}

	.nav-opener {
		display: block;
		height: 12px;
		margin-left: 10px;
		position: relative;
		width: 18px;
		z-index: 11;
	}

	.nav-opener::after,
	.nav-opener::before,
	.nav-opener span {
		content: "";
		background: var(--black);
		display: block;
		font-size: 0;
		height: 2px;
		position: absolute;
		top: 0;
		transition: all .3s;
		width: 18px;
		border-radius: 10px;
	}

	.nav-opener span {
		top: 5px;
	}

	.nav-opener::after {
		top: 10px;
	}

	.nav-active .menu {
		transform: translateX(0);
		opacity: 1;
		visibility: visible;
	}

	.nav-active .nav-opener span {
		opacity: 0;
	}

	.nav-active .nav-opener::after {
		transform: rotate(45deg);
		top: 5px;
	}

	.nav-active .nav-opener::before {
		transform: rotate(-45deg);
		top: 5px;
	}

	.my-section .sidebar-menu {
		font-size: 0;
		color: transparent
	}

	.my-section .sidebar-menu i {
		font-size: 16px;
		color: var(--black);
		text-align: center;
	}

	.gm-style .gm-style-iw-d,
	.gm-style .gm-style-iw-c {
		min-height: 250px !important;
		max-height: 100% !important;
	}
}
@media (min-width: 768px) {
	.map-view {
		padding-bottom: 50%;
	}

	.checkbox-filter {
		padding: 0 10px 10px;
	}

	.my-section .img-box {
		flex-direction: row;
		align-items: center;
	}

	.policy-links {
		grid-column: span 1;
		justify-content: flex-start;
	}

	.copyright {
		grid-column: span 1;
	}

	.agents-section .row {
		grid-template-columns: 1fr 1fr;
		gap: 30px;
	}

	.dev-section .row {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}
	
	.contact-block .agents-holder {
		display: flex;
		flex-wrap: wrap;
		gap: 20px;
	}

	.contact-block .agent-block {
		flex: 0 0 calc(50% - 10px);
		flex-grow: 0;
	}

	.cta-block .title {
		text-align: left;
	}

	.contact-block .agents-holder {
		margin-bottom: 15px;
	}

	.contact-block .agent-block {
		margin-bottom: 0;
	}

	.contact-btn .fake-label {
		gap: 20px;
		padding: 20px;
	}

	.contact-btn i {
		font-size: 25px;
	}
	
	.docs-holder {
		gap: 10px;
		padding: 34px;
	}

	.docs-holder .download-btn {
		font-size: 18px;
	}

	.dev-block {
		margin-bottom: 0;
	}

	.my-section .container {
		grid-template-columns: 226px 1fr;
	}

	.my-section .main-content {
		padding: 40px;
	}

	.results {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}

	.map-btn {
		gap: 20px;
		padding: 20px;
	}

	.map-btn a {
		border-radius: 0;
		background-color: transparent;
		padding: 0;
		flex-grow: 0;
	}

	.map-btn img {
		display: block;
		margin: 0 auto;
	}

	.office-block {
		flex-direction: row;
		gap: 38px;
	}

	.office-block:nth-child(odd) {
		flex-direction: row-reverse;
	}

	.office-block .img-col {
		width: calc(50% - 38px);
		flex-shrink: 0;
	}

	.office-block:nth-child(odd) .img-col {
		text-align: right;
	}

	.office-block .text-col {
		align-self: center;
		width: calc(50% - 38px);
	}

	.office-block .office-info {
		width: 100%;
	}

	.office-block:nth-child(odd) .office-details {
		flex-direction: row;
	}

	.blog-posts {
		padding: 30px;
	}

	.blog-post {
		gap: 30px;
		grid-template-columns: 1fr 1fr;
	}

	.blog-section .post-content {
		padding: 30px;
	}

	.faq-section {
		padding: 30px;
	}

	.dev-details .price .currency {
		min-height: 50px;
	}

	.dev-details.flex-row {
		gap: 20px 60px;
	}

	.building-block {
		align-items: center;
		flex-direction: row;
		justify-content: space-between;
	}

	.building-block .building-lifecycle {
		margin: 0;
		width: calc(100% - 200px);
	}

	.building-block .building-lifecycle:only-child {
		width: 100%;
	}

	.building-block .building-lifecycle a {
		font-size: 12px;
	}

	.amenities .img-holder {
		min-height: 50px;
	}

	.amenities .img-holder img {
		width: 35px;
	}

	.lang-dropdown .lang-menu {
		text-align: left;
		height: auto;
		position: absolute;
		top: calc(100% + 5px);
		right: 0;
		width: 130px;
		background-color: var(--white);
		box-shadow: 0 0 3px 0 rgba(0, 0, 0, .2);
		border-radius: 7px;
		padding: 15px;
		max-height: 300px;
		overflow-y: auto;
		overflow-x: hidden;
		z-index: 2;
		transition: .3s opacity, .3s visibility;
	}

	.modal .video-holder {
		padding-top: 50%;
	}

	.agent-info-block .info-row {
		grid-template-columns: 290px 1fr;
		gap: 30px;
	}

	.hide-desktop {
		display: none !important;
	}

	#header {
		font-size: 14px;
	}
}

@media (max-width: 1023px) {
	.contact-agents-form .desktop-btn {
		display: none;
	}
}
@media (min-width: 1024px) {
	body {
		font-size: 14px;
	}

	#main {
		padding: 50px 0;
	}

	.property-section .container-full {
		display: grid;
		grid-template-columns: 300px 1fr;
		gap: 12px;
	}

	.dev-item {
		margin-bottom: 0;
	}

	#footer .container {
		grid-template-columns: repeat(4, 1fr);
	}
	
	.copyright {
		grid-column: span 2;
	}

	.agents-section .row {
		grid-template-columns: 1fr 1fr 1fr;
	}

	.content-section .content,
	.jobs-section .content,
	.dev-section .content {
		margin-bottom: 40px;
	}

	.dev-section .row {
		grid-template-columns: 1fr 1fr 1fr;
	}

	.contact-block .contact-agents-form {
		display: grid;
		grid-template-columns: 400px 1fr;
		gap: 20px;
		align-items: flex-start;
	}

	.contact-btn .fake-label {
		font-size: 20px;
		padding: 40px 50px;
	}

	.docs-holder .download-btn {
		min-width: 243px;
	}

	.results-nav {
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-direction: row;
	}

	.contact-block .agents-holder {
		margin-bottom: 0;
	}

	.contact-block .agents-holder .agent-block {
		grid-column: span 2;
	}

	.contact-agents-form .mobile-btn {
		display: none;
	}

	.my-section .row {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0 30px;
	}

	.results {
		grid-template-columns: 1fr;
	}

	.about-section {
		padding: 30px 70px;
	}

	.about-section h1 {
		margin-bottom: 40px;
	}

	.offices-section {
		padding: 30px 70px;
	}

	.offices-section h2 {
		margin-bottom: 60px;
	}

	.office-block .office-info {
		width: calc(100% - 183px);
	}

	.office-block:nth-child(odd) .office-details {
		flex-direction: row-reverse;
	}

	.dev-details .details-info::after {
		content: '|';
		font-size: 30px;
		font-weight: 200;
		position: absolute;
		right: -30px;
		top: 50%;
		transform: translateY(-50%);
	}

	.dev-details.flex-row {
		flex-wrap: nowrap;
		gap: 60px;
	}

	.building-block .building-lifecycle a {
		font-size: 14px;
	}

	.amenities-holder {
		width: auto;
	}
	.cta-block {
		justify-content: space-between;
		flex-wrap: nowrap;
	}
	.dev-details {
		padding: 10px 20px;
	}
	.results-nav .units-holder {
		justify-content: center;
	}
	.view-switch .btn {
		flex-grow: 0;
	}
	.menu {
		gap: 20px;
	}
	.filter-block {
		background-color: var(--white);
		border-radius: 10px;
		box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .25);
		padding: 20px;
	}
	.filter-block .reset-btn {
		top: 20px;
		right: 30px;
	}
	.properties-section.index .cta-block.desktop {
		display: flex;
	}
	.properties-section.index .cta-block.mobile {
		display: none;
	}
	.agent-section .container {
		grid-template-columns: 1fr 500px;
		gap: 30px;
	}
	.agent-section .agent-block .btn {
		display: none;
	}
}
@media (min-width: 1200px) {
	.dev-item h3 {
		font-size: 22px;
	}
	.cta-block {
		padding: 15px 40px;
	}

	.perks-list {
		gap: 20px;
	}

	.contact-block .agents-holder .agent-block {
		grid-column: span 1;
	}

	.results {
		grid-template-columns: 1fr 1fr;
		gap: 15px;
	}

	.map-btn {
		gap: 40px;
	}

	.office-block .office-details {
		flex-direction: row;
		align-items: center;
		gap: 50px;
	}

	.office-block:nth-child(odd) .office-details {
		flex-direction: row-reverse;
	}

	.office-block .office-info {
		width: calc(100% - 223px);
	}
	.agent-section .container {
		gap: 100px;
	}
}

@media (max-width: 1369px) {
	.properties-section .map-filter {
		display: none;
	}

	.properties-section .filter-opener {
		display: flex;
	}

	.properties-section .filter-opener .results {
		display: none;
	}

	.properties-section .filter-opener .filter {
		display: block;
	}

	.properties-section .filter-block {
		display: none;
	}

	.filter-active .properties-section .filter-block {
		display: block;
	}

	.filter-active .properties-section .filter-opener .results {
		display: block;
	}

	.filter-active .properties-section .filter-opener .filter {
		display: none;
	}
}
@media (min-width: 1370px) {
	.properties-section .container-full {
		display: grid;
		grid-template-columns: 300px 1fr;
		gap: 12px;
	}

	.properties-section .mobile-locations-filter {
		display: none;
	}
	.cta-block.desktop {
		display: flex;
	}
	.cta-block.mobile {
		display: none;
	}
}
@media (min-width: 2024px) {
	.properties-section .container-full,
	.property-section .container-full {
		grid-template-columns: 388px 1fr !important;
	}

	.results {
		grid-template-columns: repeat(3, 1fr);
	}
}
@-webkit-keyframes sk-scaleout {
	0% { -webkit-transform: scale(0) }
	100% {
		-webkit-transform: scale(1.0);
		opacity: 0;
	}
}
@keyframes sk-scaleout {
	0% { 
		-webkit-transform: scale(0);
		transform: scale(0);
	} 100% {
		-webkit-transform: scale(1.0);
		transform: scale(1.0);
		opacity: 0;
	}
}