.units {
	position: absolute;
	top: 15px;
	left: 15px;
	background-color: rgba(0, 0, 0, .3);
	border-radius: var(--radius-md);
	color: #fff;
	font-size: 16px;
	padding: 5px 10px;
	z-index: 10;
	display: block;
	text-transform: lowercase;
}

.filter-block {
	position: relative;
}

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

.filter-block .label .input::placeholder {
	color: #000;
}

.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;
	display: block !important;
}

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

.area-splide {
	padding: 12px 0;
}

.area-carousel-item {
	padding: 10px;
	border: 1px solid var(--gray-2);
	border-radius: var(--radius-md);
	background-color: var(--gray-1);
	font-size: 13px;
	color: var(--secondary);
	text-align: center;
	cursor: pointer;
	user-select: none;
	transition: background-color 0.3s, border-color 0.3s, color 0.3s;
}

.area-item-img-holder {
	border-radius: 50%;
	width: 70px;
	height: 70px;
	overflow: hidden;
	margin: 0 auto 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 2px solid var(--gray-2);
	background-color: #fff;
	position: relative;
}

.area-item-img-holder img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.area-item-img-holder .icon-check_circle {
	display: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	font-size: 36px;
	line-height: 1;
}

.area-carousel-item.active {
	background: var(--gray-4);
	border-color: var(--primary);
}

.area-carousel-item.active .area-item-img-holder {
	border-color: var(--primary);
}

.area-carousel-item.active .icon-check_circle {
	display: block;
}

.area-item-img-holder path {
	fill: var(--gray-2);
}

.area-carousel-item.active .area-item-img-holder path {
	fill: rgba(255,255,255,0.85);
}

.area-item-title {
	font-weight: 500;
	display: block;
	color: var(--secondary);
	font-size: 12px;
	line-height: 1.3;
}

.area-splide .splide__arrow {
	background-color: #fff;
	opacity: 1;
	border-radius: 50%;
	box-shadow: 0px 2px 4px -2px #0000001A, 0px 4px 6px -1px #0000001A;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.area-splide .splide__arrow--prev {
	left: -10px;
}

.area-splide .splide__arrow--next {
	right: -10px;
}

.area-splide .splide__arrow:disabled {
	opacity: 0.3;
}

.area-splide .splide__arrow svg {
	fill: var(--secondary);
}

.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: var(--radius-md);
	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;
	background-color: transparent;
	border: none;
	margin: 0;
}

.results-nav .title {
	font-weight: 500;
	color: var(--secondary);
	margin-bottom: 10px;
}

.results-nav .title span {
	color: #000;
}

.view-switch {
	display: flex;
	gap: 0;
	border: none;
	padding: 0;
}

.view-switch .btn {
	border-radius: var(--radius-md);
	border: 1px solid var(--gray-2);
	background-color: var(--gray-3);
	color: var(--secondary);
	padding: 9px;
	flex-grow: 1;
	font-weight: 500;
	display: flex;
	align-items: center;
	font-size: 0;
}

.view-switch .btn:first-child {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}

.view-switch .btn:last-child {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

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

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

.view-switch .btn i {
	font-size: 18px;
}

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

.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:last-of-type {
	margin: 0;
	padding: 0;
}

.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.build .value-box {
	min-height: 77px;
}

.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;
	transition: .3s border-color, .3s background-color;
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	position: relative;
}

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

.custom-checkbox {
	position: relative;
}

.custom-checkbox .fake-input img {
	display: none;
}

.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: #fff;
	border-color: var(--primary);
}

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

.splide__arrow {
	background-color: rgba(255, 255, 255, 0.26);
	opacity: 1;
	border-radius: var(--radius-md);
	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: #fff
}

.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: #000;
}

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

.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);
}

.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%;
}

.modal-body {
	max-width: 490px;
	width: 100%;
	background-color: #fff;
	border-radius: var(--radius-xl);
	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: var(--radius-sm);
	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.type-label {
	margin-bottom: 10px;
}

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

.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 #fff;
	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;
}

.types-holder {
	gap: 38px;
	margin-bottom: 30px;
}

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

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

.cta-block {
	border-radius: var(--radius-md);
	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;
}

#error-msg p {
	margin: 0;
}

.js-phone-drop {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	width: 250px;
	background-color: #fff;
	border: 2px solid #E7F0FE;
    box-shadow: 0 0 2px 0 rgba(0, 0, 0, 1);
	border-radius: var(--radius-sm);
	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: var(--radius-sm);
    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: #000;
	font-size: 10px;
}

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

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

.gmap-info-window {
	display: block;
	padding: 0;
	color: #000;
}

.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;
}

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

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

.dropdown .btn {
	border-radius: var(--radius-md);
	border-color: var(--gray-2);
	background-color: var(--gray-3);
	color: var(--secondary);
	padding: 7px 9px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	font-size: 14px;
	font-weight: 500;
}

.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: 8px;
	background-color: #fff;
	position: absolute;
	top: calc(100% + 5px);
	right: 0;
	width: 200px;
	opacity: 0;
	visibility: hidden;
	transition: .3s opacity, .3s visibility;
}

.dropdown .drop a {
	color: #000;
}

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

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

.svg-holder {
	min-height: 150px;
	margin-bottom: 20px;
}

.map-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	padding: 7px 0 15px;
	text-align: center;
	font-size: 14px;
	line-height: 1;
}

.map-btn a {
	color: #8C8783;
	border-radius: var(--radius-sm);
	background-color: #EEF1F5;
	padding: 10px;
	flex-grow: 1;
	max-width: 300px;
	font-weight: 500;
	transition: .3s background-color;
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.5);
}

.map-btn a:hover {
	background-color: #E1F0FF;
}

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

.map-btn .area-count {
	margin-top: 5px;
	display: block;
	color: var(--primary);
	font-weight: 500;
	font-size: 12px;
}

.map-btn .area-count.skeleton {
	color: transparent;
	border-radius: var(--radius-sm);
	background: linear-gradient(90deg, var(--gray-1) 25%, var(--gray-3) 50%, var(--gray-1) 75%);
	background-size: 200% 100%;
	animation: skeleton-shimmer 1.4s infinite;
	user-select: none;
	pointer-events: none;
}

.map-btn .img-holder {
	border-radius: 50%;
	width: 60px;
	height: 60px;
	overflow: hidden;
	margin: 0 auto 5px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 2px solid var(--gray-2);
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.5);
}

.map-btn .title {
	font-weight: 500;
	display: block;
	color: var(--secondary);
	margin-bottom: 5px;
}

.map-btn img {
	height: 100%;
	max-width: none;
	display: block;
}

.map-btn svg {
	display: none;
}

.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);
}

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

.seo-title {
	position: absolute;
	left: -10000px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.mobile-center {
	text-align: center;
}

.carousel-loader {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 10;
	pointer-events: none;
	display: none;
}

.loading-spinner {
	width: 30px;
	height: 30px;
	border: 3px solid #f3f3f3;
	border-top: 3px solid var(--primary);
	border-radius: 50%;
	animation: carousel-spin 1s linear infinite;
}

.filter-holder .title {
	font-size: 18px;
	font-weight: 500;
}

.filter-holder .separator {
	height: 1px;
	background-color: var(--gray-2);
	margin: 20px -20px;
}

.filter-holder .title-holder {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 20px;
}

.filter-holder .reset-btn {
	color: #737373;
}

.mobile-filter-scroll {
	display: flex;
	gap: 5px;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}

.mobile-filter-scroll::-webkit-scrollbar {
	display: none;
}

.mobile-drop {
	position: relative;
	flex-shrink: 0;
}

.mobile-drop-btn {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 8px;
	border: 1px solid var(--gray-2);
	border-radius: 20px;
	background-color: #fff;
	font-size: 12px;
	font-weight: 500;
	color: var(--secondary);
	cursor: pointer;
	white-space: nowrap;
	font-family: var(--font-primary);
	transition: background-color 0.15s, border-color 0.15s, color 0.15s;
}

.mobile-drop-btn i {
	font-size: 7px;
	transition: transform 0.2s ease;
}

.mobile-drop.open .mobile-drop-btn,
.mobile-drop.active .mobile-drop-btn {
	background-color: var(--primary);
	color: #fff;
	border-color: var(--primary);
}

.mobile-drop.open .mobile-drop-btn i {
	transform: rotate(180deg);
}

.mobile-drop-panel {
	background-color: #fff;
	border: 1px solid var(--gray-2);
	border-radius: var(--radius-md);
	padding: 15px;
	margin-top: 8px;
}

.mobile-drop-panel-more {
	max-height: 60vh;
	overflow-y: auto;
}

.mobile-range-row {
	display: flex;
	align-items: center;
	gap: 8px;
}

.mobile-range-sep {
	color: var(--secondary);
	flex-shrink: 0;
	font-size: 13px;
}

.mobile-range-input {
	flex: 1;
	min-width: 0;
	border: 1px solid var(--gray-2);
	border-radius: 6px;
	padding: 8px 10px;
	font-size: 13px;
	color: var(--secondary);
	font-family: var(--font-primary);
	background-color: var(--gray-3);
	outline: none;
	-moz-appearance: textfield;
}

.mobile-range-input::-webkit-inner-spin-button,
.mobile-range-input::-webkit-outer-spin-button {
	-webkit-appearance: none;
}

.mobile-range-input:focus {
	border-color: var(--primary);
}

.mobile-filter-reset {
	flex-shrink: 0;
	font-size: 13px;
	font-weight: 500;
	color: var(--secondary);
	white-space: nowrap;
	padding: 8px 4px;
	text-decoration: none;
}

.mobile-filter-reset:hover {
	color: var(--primary);
}

.mobile-drop-panel .label {
	display: block;
	font-size: 12px;
	font-weight: 600;
	color: var(--secondary);
	margin: 12px 0 6px;
}

.mobile-drop-panel .label:first-child {
	margin-top: 0;
}

.mobile-drop-panel .separator {
	height: 1px;
	background-color: var(--gray-2);
	margin: 12px 0;
}

.mobile-apply-btn {
	display: block;
	width: 100%;
	margin-top: 12px;
	padding: 10px;
	background-color: var(--primary);
	color: #fff;
	border: none;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	text-align: center;
}

.mobile-apply-btn:hover {
	opacity: 0.9;
}

.mobile-drop-panel .custom-radio {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 10px;
	cursor: pointer;
}

.mobile-drop-panel .custom-radio:last-child {
	margin-bottom: 0;
}

.mobile-drop-panel .input {
	width: 100%;
	border: 1px solid var(--gray-2);
	border-radius: 6px;
	padding: 8px 10px;
	font-size: 13px;
	font-family: var(--font-primary);
	color: var(--secondary);
	background-color: var(--gray-3);
	outline: none;
	box-sizing: border-box;
}

.mobile-drop-panel .input:focus {
	border-color: var(--primary);
}

@media (min-width: 768px) {
	.map-view {
		padding-bottom: 50%;
	}

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

	.dev-section .row {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}

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

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

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

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

	.map-btn .title {
		font-size: 22px;
	}

	.map-btn a {
		font-size: 16px;
	}

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

	.map-btn .img-holder {
		width: 164px;
		height: 164px;
		margin: 0 auto 24px;
	}

	.map-btn .area-count {
		font-size: 16px;
		margin-top: 15px;
	}

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

@media (max-width: 1023px) {
	.properties-section .map-filter svg {
		zoom: 0.6;
	}

	.properties-section .map-filter svg .label {
		display: none;
	}

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

@media (max-width: 767px) {
	.properties-section .map-filter svg {
		zoom: 0.4;
	}
}

@media (max-width: 374px) {
	.properties-section .map-filter svg {
		zoom: 0.3;
	}

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

@media (min-width: 1024px) {
	.dev-section .row {
		grid-template-columns: 1fr 1fr 1fr;
	}
	
	.results-nav {
		justify-content: space-between;
		align-items: center;
		flex-direction: row;
		gap: 30px;
	}

	.cta-block {
		justify-content: space-between;
		flex-wrap: nowrap;
	}
	
	.results-nav .units-holder {
		flex-direction: row-reverse;
		justify-content: flex-end;
		flex-grow: 0;
	}
	.results-nav .title {
		margin: 0;
	}

	.mobile-carousel {
		display: none;
	}

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

	.mobile-filter-bar {
		display: none;
	}

	.layout-container {
		display: grid;
		grid-template-columns: 300px 1fr;
		gap: 33px;
	}

	.result-block {
		min-width: 0;
	}
	.properties-section {
		padding: 20px 0 0;
	}
	.view-switch .btn {
		flex-grow: 0;
		font-size: 14px;
		gap: 8px;
		padding: 7px 9px;
	}
	
	.filter-block {
		background-color: #fff;
		padding: 20px;
		display: block !important;
	}

	.filter-block .reset-btn {
		top: 20px;
		right: 30px;
	}

	.properties-section.index .cta-block.desktop {
		display: flex;
	}

	.properties-section.index .cta-block.mobile {
		display: none;
	}

	.mobile-center {
		text-align: left;
	}
}
@media (min-width: 1200px) {
	.cta-block {
		padding: 15px 40px;
	}
	
	.results {
		grid-template-columns: 1fr 1fr;
		gap: 15px;
	}

	.map-btn a {
		padding: 40px;
	}
}
@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 {
		grid-template-columns: 388px 1fr !important;
	}

	.layout-container {
		grid-template-columns: 388px 1fr !important;
		gap: 54px;
	}
}
@-webkit-keyframes sk-scaleout {
	0% { -webkit-transform: scale(0) }
	100% {
		-webkit-transform: scale(1.0);
		opacity: 0;
	}
}
@keyframes skeleton-shimmer {
	0%   { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}

@keyframes sk-scaleout {
	0% { 
		-webkit-transform: scale(0);
		transform: scale(0);
	} 100% {
		-webkit-transform: scale(1.0);
		transform: scale(1.0);
		opacity: 0;
	}
}

@keyframes carousel-spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}