/**
 * PrimeView Properties — mobile-only discovery.
 * Active below the desktop breakpoint (desktop uses min-width: 992px).
 */

@media (max-width: 991.98px) {
	body.primeview-properties-page {
		--pv-pr-m-green: #22c55e;
		--pv-pr-m-green-press: #16a34a;
		--pv-pr-m-ink: #0f172a;
		--pv-pr-m-muted: #64748b;
		--pv-pr-m-line: #e8edf2;
		--pv-pr-m-soft: #f4f7f9;
		--pv-pr-m-pad: 16px;
		--pv-pr-m-radius: 22px;
		--pv-pr-m-shadow: 0 8px 24px rgba(15, 23, 42, 0.07);
		background: #fff;
	}

	body.primeview-properties-page .main-wrap,
	body.primeview-properties-page #main-wrap,
	body.primeview-properties-page .page-wrap,
	body.primeview-properties-page #section-body {
		background: #fff !important;
	}

	.pv-pr {
		padding: 0 0 48px;
		font-family: 'Plus Jakarta Sans', 'Segoe UI', sans-serif;
	}

	.pv-pr__desktop {
		display: none !important;
	}

	.pv-pr__mobile-only {
		display: block !important;
	}

	.pv-pr-sheet[hidden],
	.pv-pr-m-map[hidden] {
		display: none !important;
	}

	.pv-pr-sheet:not([hidden]) {
		display: block !important;
	}

	.pv-pr-m-map:not([hidden]) {
		display: flex !important;
	}

	/* —— Sticky search + chips —— */
	.pv-pr-m__top {
		position: sticky;
		top: 0;
		z-index: 40;
		padding: 14px var(--pv-pr-m-pad) 10px;
		background: rgba(255, 255, 255, 0.96);
		backdrop-filter: blur(14px);
		-webkit-backdrop-filter: blur(14px);
	}

	.pv-pr-m__search {
		display: flex;
		align-items: center;
		gap: 12px;
		width: 100%;
		min-height: 52px;
		padding: 8px 8px 8px 18px;
		border: 1px solid var(--pv-pr-m-line);
		border-radius: 999px;
		background: #fff;
		box-shadow: 0 6px 20px rgba(15, 23, 42, 0.06);
		text-align: left;
		cursor: pointer;
		color: var(--pv-pr-m-ink);
		font: inherit;
	}

	.pv-pr-m__search:active {
		transform: scale(0.99);
	}

	.pv-pr-m__search-label {
		flex: 1 1 auto;
		min-width: 0;
		font-size: 14px;
		font-weight: 500;
		color: var(--pv-pr-m-muted);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.pv-pr-m__search-icon {
		flex: 0 0 40px;
		width: 40px;
		height: 40px;
		margin-left: auto;
		border-radius: 50%;
		background: var(--pv-pr-m-green);
		-webkit-mask: none;
		mask: none;
		position: relative;
	}

	.pv-pr-m__search-icon::after {
		content: '';
		position: absolute;
		inset: 11px;
		background: #fff;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M15.5 14h-.79l-.28-.27A6.47 6.47 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z'/%3E%3C/svg%3E") center / contain no-repeat;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M15.5 14h-.79l-.28-.27A6.47 6.47 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-pr-m__chips {
		display: flex;
		gap: 8px;
		padding: 6px var(--pv-pr-m-pad) 18px;
		overflow-x: auto;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}

	.pv-pr-m__chips::-webkit-scrollbar {
		display: none;
	}

	.pv-pr-m__chip {
		flex: 0 0 auto;
		display: inline-flex;
		align-items: center;
		padding: 9px 14px;
		border: 1px solid var(--pv-pr-m-line);
		border-radius: 999px;
		background: #fff;
		color: var(--pv-pr-m-ink);
		font-size: 13px;
		font-weight: 600;
		text-decoration: none;
		white-space: nowrap;
		cursor: pointer;
		font-family: inherit;
	}

	.pv-pr-m__chip.is-active {
		background: var(--pv-pr-m-green);
		border-color: var(--pv-pr-m-green);
		color: #fff;
	}

	/* —— Results bar —— */
	.pv-pr-m__feed {
		padding: 0 var(--pv-pr-m-pad);
	}

	.pv-pr-m__results-bar {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin-bottom: 18px;
	}

	.pv-pr-m__count {
		margin: 0;
		font-size: 15px;
		font-weight: 800;
		color: var(--pv-pr-m-green);
	}

	.pv-pr-m__sort select {
		appearance: none;
		border: 1px solid var(--pv-pr-m-line);
		border-radius: 12px;
		background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2364748b' d='M1 1l5 5 5-5'/%3E%3C/svg%3E") right 12px center / 10px no-repeat;
		padding: 9px 30px 9px 12px;
		font-size: 13px;
		font-weight: 600;
		color: var(--pv-pr-m-ink);
		font-family: inherit;
	}

	.pv-pr-m__list {
		display: flex;
		flex-direction: column;
		gap: 20px;
	}

	.pv-pr-m__empty {
		padding: 48px 12px;
		text-align: center;
		color: var(--pv-pr-m-muted);
	}

	.pv-pr-m__empty a {
		color: var(--pv-pr-m-green);
		font-weight: 700;
		text-decoration: none;
	}

	/* —— Horizontal premium cards —— */
	.pv-pr-m-card {
		display: grid;
		grid-template-columns: 42% minmax(0, 1fr);
		min-height: 188px;
		overflow: hidden;
		border-radius: 20px;
		background: #fff;
		box-shadow: var(--pv-pr-m-shadow);
		border: 1px solid rgba(15, 23, 42, 0.06);
	}

	.pv-pr-m-card__media {
		position: relative;
		min-height: 100%;
		background: var(--pv-pr-m-soft);
	}

	.pv-pr-m-card__media-link,
	.pv-pr-m-card__image {
		display: block;
		width: 100%;
		height: 100%;
		min-height: 188px;
	}

	.pv-pr-m-card__image {
		object-fit: cover;
	}

	.pv-pr-m-card__image--empty {
		background: linear-gradient(135deg, #e8edf2, #f8fafc);
	}

	.pv-pr-m-card__badge {
		position: absolute;
		top: 10px;
		left: 10px;
		z-index: 2;
		display: inline-flex;
		align-items: center;
		padding: 5px 9px;
		border-radius: 999px;
		font-size: 10px;
		font-weight: 800;
		letter-spacing: 0.01em;
		background: #fff;
		color: var(--pv-pr-m-green);
		box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
	}

	.pv-pr-m-card__badge--verified {
		background: #fff;
		color: var(--pv-pr-m-green);
	}

	.pv-pr-m-card__fav {
		position: absolute;
		top: 8px;
		right: 8px;
		z-index: 2;
		width: 32px;
		height: 32px;
		display: grid;
		place-items: center;
		border: 0;
		border-radius: 50%;
		background: rgba(255, 255, 255, 0.95);
		color: var(--pv-pr-m-ink);
		box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
		cursor: pointer;
		padding: 0;
	}

	.pv-pr-m-card__fav[aria-pressed='true'] {
		color: #ef4444;
	}

	.pv-pr-m-card__fav[aria-pressed='true'] path {
		fill: currentColor;
	}

	.pv-pr-m-card__tour {
		position: absolute;
		left: 8px;
		bottom: 8px;
		z-index: 2;
		display: inline-flex;
		align-items: center;
		gap: 5px;
		padding: 5px 8px;
		border-radius: 999px;
		background: rgba(15, 23, 42, 0.78);
		color: #fff;
		font-size: 9px;
		font-weight: 800;
		letter-spacing: 0.02em;
		text-transform: uppercase;
	}

	.pv-pr-m-card__tour-icon {
		width: 12px;
		height: 12px;
		background: #fff;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M12 8a4 4 0 1 0 0 8 4 4 0 0 0 0-8zm0-5C6.5 3 2 7 2 12s4.5 9 10 9 10-4 10-9-4.5-9-10-9zm0 16a7 7 0 1 1 0-14 7 7 0 0 1 0 14z'/%3E%3C/svg%3E") center / contain no-repeat;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M12 8a4 4 0 1 0 0 8 4 4 0 0 0 0-8zm0-5C6.5 3 2 7 2 12s4.5 9 10 9 10-4 10-9-4.5-9-10-9zm0 16a7 7 0 1 1 0-14 7 7 0 0 1 0 14z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-pr-m-card__photos {
		position: absolute;
		right: 8px;
		bottom: 8px;
		z-index: 2;
		display: inline-flex;
		align-items: center;
		gap: 4px;
		padding: 4px 7px;
		border-radius: 999px;
		background: rgba(15, 23, 42, 0.72);
		color: #fff;
		font-size: 10px;
		font-weight: 700;
	}

	.pv-pr-m-card__photos-icon {
		width: 11px;
		height: 11px;
		background: #fff;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M4 7h3l2-2h6l2 2h3a2 2 0 012 2v9a2 2 0 01-2 2H4a2 2 0 01-2-2V9a2 2 0 012-2zm8 3a4 4 0 100 8 4 4 0 000-8z'/%3E%3C/svg%3E") center / contain no-repeat;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M4 7h3l2-2h6l2 2h3a2 2 0 012 2v9a2 2 0 01-2 2H4a2 2 0 01-2-2V9a2 2 0 012-2zm8 3a4 4 0 100 8 4 4 0 000-8z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-pr-m-card__body {
		display: flex;
		flex-direction: column;
		padding: 14px 14px 12px;
		min-width: 0;
	}

	.pv-pr-m-card__price {
		margin: 0 0 4px;
		font-size: 16px;
		font-weight: 800;
		color: var(--pv-pr-m-green);
		letter-spacing: -0.03em;
		line-height: 1.15;
	}

	.pv-pr-m-card__title {
		margin: 0 0 4px;
		font-size: 13px;
		font-weight: 700;
		line-height: 1.25;
		color: var(--pv-pr-m-ink);
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.pv-pr-m-card__title a {
		color: inherit;
		text-decoration: none;
	}

	.pv-pr-m-card__location {
		display: flex;
		align-items: center;
		gap: 4px;
		margin: 0 0 8px;
		font-size: 11px;
		font-weight: 500;
		color: var(--pv-pr-m-muted);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.pv-pr-m-card__pin {
		width: 10px;
		height: 10px;
		flex: 0 0 10px;
		background: var(--pv-pr-m-muted);
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7z'/%3E%3C/svg%3E") center / contain no-repeat;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-pr-m-card__specs {
		display: flex;
		flex-wrap: wrap;
		gap: 8px 10px;
		margin: 0 0 6px;
		padding: 0;
		list-style: none;
		font-size: 11px;
		font-weight: 600;
		color: var(--pv-pr-m-ink);
	}

	.pv-pr-m-card__specs li {
		display: inline-flex;
		align-items: center;
		gap: 4px;
	}

	.pv-pr-m-card__size {
		display: inline-flex;
		align-items: center;
		gap: 5px;
		margin: 0 0 10px;
		font-size: 11px;
		font-weight: 600;
		color: var(--pv-pr-m-ink);
	}

	.pv-pr-m-card__spec-icon {
		width: 13px;
		height: 13px;
		flex: 0 0 13px;
		background: var(--pv-pr-m-muted);
	}

	.pv-pr-m-card__spec-icon--bed {
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 11V7a2 2 0 0 1 2-2h5v6H4zm9-6h5a2 2 0 0 1 2 2v4h-7V5zM3 13h18v5a1 1 0 0 1-1 1h-1v2h-2v-2H7v2H5v-2H4a1 1 0 0 1-1-1v-5z'/%3E%3C/svg%3E") center / contain no-repeat;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 11V7a2 2 0 0 1 2-2h5v6H4zm9-6h5a2 2 0 0 1 2 2v4h-7V5zM3 13h18v5a1 1 0 0 1-1 1h-1v2h-2v-2H7v2H5v-2H4a1 1 0 0 1-1-1v-5z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-pr-m-card__spec-icon--bath {
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 5a3 3 0 0 1 6 0v1h5v2H4V6h3V5zm-3 6h16v4a4 4 0 0 1-4 4H8a4 4 0 0 1-4-4v-4z'/%3E%3C/svg%3E") center / contain no-repeat;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 5a3 3 0 0 1 6 0v1h5v2H4V6h3V5zm-3 6h16v4a4 4 0 0 1-4 4H8a4 4 0 0 1-4-4v-4z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-pr-m-card__spec-icon--park {
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M5 11l1.6-4.2A1.5 1.5 0 0 1 8 6h8a1.5 1.5 0 0 1 1.4.8L19 11h1a1 1 0 0 1 1 1v3.5a1 1 0 0 1-1 1h-1.1a2.5 2.5 0 0 1-4.8 0H9.9a2.5 2.5 0 0 1-4.8 0H4a1 1 0 0 1-1-1V12a1 1 0 0 1 1-1h1zm2.5 5.2a1.2 1.2 0 1 0 0-2.4 1.2 1.2 0 0 0 0 2.4zm9 0a1.2 1.2 0 1 0 0-2.4 1.2 1.2 0 0 0 0 2.4zM8.2 8l-1 3h9.6l-1-3H8.2z'/%3E%3C/svg%3E") center / contain no-repeat;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M5 11l1.6-4.2A1.5 1.5 0 0 1 8 6h8a1.5 1.5 0 0 1 1.4.8L19 11h1a1 1 0 0 1 1 1v3.5a1 1 0 0 1-1 1h-1.1a2.5 2.5 0 0 1-4.8 0H9.9a2.5 2.5 0 0 1-4.8 0H4a1 1 0 0 1-1-1V12a1 1 0 0 1 1-1h1zm2.5 5.2a1.2 1.2 0 1 0 0-2.4 1.2 1.2 0 0 0 0 2.4zm9 0a1.2 1.2 0 1 0 0-2.4 1.2 1.2 0 0 0 0 2.4zM8.2 8l-1 3h9.6l-1-3H8.2z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-pr-m-card__spec-icon--size {
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 3h8v2H5v6H3V3zm10 0h8v8h-2V5h-6V3zM3 13h2v6h6v2H3v-8zm16 0h2v8h-8v-2h6v-6z'/%3E%3C/svg%3E") center / contain no-repeat;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 3h8v2H5v6H3V3zm10 0h8v8h-2V5h-6V3zM3 13h2v6h6v2H3v-8zm16 0h2v8h-8v-2h6v-6z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-pr-m-card__footer {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 8px;
		margin-top: auto;
		padding-top: 8px;
		border-top: 1px solid rgba(15, 23, 42, 0.06);
	}

	.pv-pr-m-card__agent {
		display: flex;
		align-items: center;
		gap: 8px;
		min-width: 0;
	}

	.pv-pr-m-card__avatar {
		width: 28px;
		height: 28px;
		border-radius: 50%;
		object-fit: cover;
		flex: 0 0 28px;
		background: var(--pv-pr-m-soft);
	}

	.pv-pr-m-card__avatar--empty {
		display: block;
		background: linear-gradient(135deg, #d1fae5, #e2e8f0);
	}

	.pv-pr-m-card__agent-meta {
		display: flex;
		flex-direction: column;
		min-width: 0;
	}

	.pv-pr-m-card__agent-name {
		display: inline-flex;
		align-items: center;
		gap: 3px;
		font-size: 11px;
		font-weight: 700;
		color: var(--pv-pr-m-ink);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.pv-pr-m-card__check {
		display: inline-block;
		width: 12px;
		height: 12px;
		border-radius: 50%;
		background: var(--pv-pr-m-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center / 8px no-repeat;
		flex: 0 0 12px;
	}

	.pv-pr-m-card__agency {
		font-size: 10px;
		color: var(--pv-pr-m-muted);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.pv-pr-m-card__cta {
		flex: 0 0 auto;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 30px;
		padding: 0 12px;
		border-radius: 999px;
		border: 1.5px solid var(--pv-pr-m-green);
		background: transparent;
		color: var(--pv-pr-m-green);
		font-size: 12px;
		font-weight: 700;
		text-decoration: none;
		white-space: nowrap;
	}

	.pv-pr-m-card__cta:active {
		background: rgba(34, 197, 94, 0.1);
	}

	/* No floating Map / Filters FABs */
	.pv-pr-m__fabs {
		display: none !important;
	}

	/* Mobile pagination (reuse desktop markup classes) */
	.pv-pr-m__feed .pv-pr__pagination {
		margin: 28px 0 8px;
	}

	.pv-pr-m__feed .pv-pr__pages {
		display: flex;
		justify-content: center;
		gap: 8px;
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.pv-pr-m__feed .pv-pr__page {
		display: grid;
		place-items: center;
		min-width: 42px;
		height: 42px;
		padding: 0 12px;
		border-radius: 12px;
		border: 1px solid var(--pv-pr-m-line);
		background: #fff;
		color: var(--pv-pr-m-ink);
		font-weight: 700;
		text-decoration: none;
	}

	.pv-pr-m__feed .pv-pr__page.is-active {
		background: var(--pv-pr-m-green);
		border-color: var(--pv-pr-m-green);
		color: #fff;
	}

	body.pv-pr-m-sheet-open,
	body.pv-pr-m-map-open {
		overflow: hidden;
	}

	/* —— Sheets —— */
	.pv-pr-sheet {
		position: fixed;
		inset: 0;
		z-index: 1200;
	}

	.pv-pr-sheet__backdrop {
		position: absolute;
		inset: 0;
		background: rgba(15, 23, 42, 0.45);
	}

	.pv-pr-sheet__panel {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		max-height: min(92vh, 860px);
		overflow: auto;
		border-radius: 24px 24px 0 0;
		background: #fff;
		padding: 8px 20px 28px;
		animation: pvPrSheetUp 240ms ease;
		-webkit-overflow-scrolling: touch;
	}

	.pv-pr-sheet__panel--search {
		max-height: 94vh;
	}

	@keyframes pvPrSheetUp {
		from {
			transform: translateY(24px);
			opacity: 0.85;
		}
		to {
			transform: translateY(0);
			opacity: 1;
		}
	}

	.pv-pr-sheet__grab {
		width: 42px;
		height: 4px;
		margin: 6px auto 10px;
		border-radius: 999px;
		background: #dbe2ea;
	}

	.pv-pr-sheet__header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin-bottom: 18px;
	}

	.pv-pr-sheet__title {
		margin: 0;
		font-size: 20px;
		font-weight: 800;
		color: var(--pv-pr-m-ink);
	}

	.pv-pr-sheet__close {
		width: 36px;
		height: 36px;
		border: 0;
		border-radius: 50%;
		background: var(--pv-pr-m-soft);
		cursor: pointer;
		position: relative;
	}

	.pv-pr-sheet__close span,
	.pv-pr-sheet__close span::before {
		position: absolute;
		inset: 50% auto auto 50%;
		width: 14px;
		height: 2px;
		background: var(--pv-pr-m-ink);
		transform: translate(-50%, -50%) rotate(45deg);
	}

	.pv-pr-sheet__close span::before {
		content: '';
		transform: translate(-50%, -50%) rotate(-90deg);
	}

	.pv-pr-m-search-form__row {
		display: flex;
		flex-direction: column;
		gap: 8px;
		margin-bottom: 18px;
		font-size: 13px;
		font-weight: 700;
		color: var(--pv-pr-m-muted);
	}

	.pv-pr-m-search-form__row select,
	.pv-pr-m-search-form__row input,
	.pv-pr-m-search-form__price input,
	.pv-pr-m-filters input[type='number'] {
		width: 100%;
		min-height: 52px;
		padding: 12px 14px;
		border: 1px solid var(--pv-pr-m-line);
		border-radius: 16px;
		background: #fff;
		font-size: 16px;
		font-weight: 600;
		color: var(--pv-pr-m-ink);
		font-family: inherit;
	}

	.pv-pr-m-search-form__price {
		display: grid;
		grid-template-columns: 1fr auto 1fr;
		gap: 10px;
		align-items: center;
	}

	.pv-pr-sheet__primary {
		width: 100%;
		min-height: 54px;
		border: 0;
		border-radius: 16px;
		background: var(--pv-pr-m-green);
		color: #fff;
		font-size: 16px;
		font-weight: 800;
		font-family: inherit;
		cursor: pointer;
	}

	.pv-pr-sheet__ghost {
		min-height: 54px;
		padding: 0 18px;
		border: 1px solid var(--pv-pr-m-line);
		border-radius: 16px;
		background: #fff;
		color: var(--pv-pr-m-ink);
		font-size: 15px;
		font-weight: 700;
		font-family: inherit;
		cursor: pointer;
	}

	.pv-pr-sheet__footer--split {
		display: grid;
		grid-template-columns: 1fr 1.4fr;
		gap: 10px;
		margin-top: 8px;
		position: sticky;
		bottom: 0;
		padding-top: 12px;
		background: linear-gradient(180deg, rgba(255, 255, 255, 0), #fff 28%);
	}

	.pv-pr-m-filters__section {
		margin-bottom: 22px;
	}

	.pv-pr-m-filters__section h3 {
		margin: 0 0 12px;
		font-size: 15px;
		font-weight: 800;
		color: var(--pv-pr-m-ink);
	}

	.pv-pr-m-filters__price-row {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
		margin-bottom: 12px;
	}

	.pv-pr-m-filters__price-row label {
		display: flex;
		flex-direction: column;
		gap: 6px;
		font-size: 12px;
		font-weight: 700;
		color: var(--pv-pr-m-muted);
	}

	.pv-pr-m-filters__slider {
		width: 100%;
		accent-color: var(--pv-pr-m-green);
	}

	.pv-pr-m-stepper {
		display: inline-flex;
		align-items: center;
		gap: 18px;
		padding: 8px 10px;
		border: 1px solid var(--pv-pr-m-line);
		border-radius: 999px;
		background: #fff;
	}

	.pv-pr-m-stepper button {
		width: 40px;
		height: 40px;
		border: 0;
		border-radius: 50%;
		background: var(--pv-pr-m-soft);
		font-size: 22px;
		line-height: 1;
		color: var(--pv-pr-m-ink);
		cursor: pointer;
	}

	.pv-pr-m-stepper span {
		min-width: 24px;
		text-align: center;
		font-size: 18px;
		font-weight: 800;
	}

	.pv-pr-m-filters__pills {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
	}

	.pv-pr-m-filters__pill {
		padding: 10px 14px;
		border: 1px solid var(--pv-pr-m-line);
		border-radius: 999px;
		background: #fff;
		font-size: 13px;
		font-weight: 700;
		font-family: inherit;
		cursor: pointer;
		color: var(--pv-pr-m-ink);
	}

	.pv-pr-m-filters__pill.is-active {
		background: rgba(34, 197, 94, 0.14);
		border-color: var(--pv-pr-m-green);
		color: #0f7660;
	}

	.pv-pr-m-filters__checks {
		display: grid;
		gap: 10px;
	}

	.pv-pr-m-filters__check {
		display: flex;
		align-items: center;
		gap: 12px;
		padding: 14px 14px;
		border: 1px solid var(--pv-pr-m-line);
		border-radius: 16px;
		font-size: 15px;
		font-weight: 600;
		color: var(--pv-pr-m-ink);
	}

	.pv-pr-m-filters__check input {
		width: 20px;
		height: 20px;
		accent-color: var(--pv-pr-m-green);
	}

	.pv-pr-m-filters__toggle {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 14px 0;
		font-size: 15px;
		font-weight: 700;
		color: var(--pv-pr-m-ink);
		border-bottom: 1px solid var(--pv-pr-m-line);
	}

	.pv-pr-m-filters__toggle input {
		position: absolute;
		opacity: 0;
		pointer-events: none;
	}

	.pv-pr-m-filters__toggle-ui {
		width: 48px;
		height: 28px;
		border-radius: 999px;
		background: #dbe2ea;
		position: relative;
		flex: 0 0 auto;
		transition: background 160ms ease;
	}

	.pv-pr-m-filters__toggle-ui::after {
		content: '';
		position: absolute;
		top: 3px;
		left: 3px;
		width: 22px;
		height: 22px;
		border-radius: 50%;
		background: #fff;
		box-shadow: 0 2px 6px rgba(15, 23, 42, 0.18);
		transition: transform 160ms ease;
	}

	.pv-pr-m-filters__toggle input:checked + .pv-pr-m-filters__toggle-ui {
		background: var(--pv-pr-m-green);
	}

	.pv-pr-m-filters__toggle input:checked + .pv-pr-m-filters__toggle-ui::after {
		transform: translateX(20px);
	}

	/* —— Full-screen map —— */
	.pv-pr-m-map {
		position: fixed;
		inset: 0;
		z-index: 1300;
		flex-direction: column;
		background: #fff;
	}

	.pv-pr-m-map__header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 12px 16px;
		background: #fff;
		border-bottom: 1px solid var(--pv-pr-m-line);
		z-index: 2;
	}

	.pv-pr-m-map__close {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		border: 0;
		background: transparent;
		font-size: 15px;
		font-weight: 700;
		color: var(--pv-pr-m-ink);
		font-family: inherit;
		cursor: pointer;
	}

	.pv-pr-m-map__count {
		margin: 0;
		font-size: 13px;
		font-weight: 600;
		color: var(--pv-pr-m-muted);
	}

	.pv-pr-m-map__canvas {
		flex: 1;
		min-height: 0;
		width: 100%;
	}

	.pv-pr-m-map__sheet {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 3;
		padding: 8px 0 18px;
		background: linear-gradient(180deg, transparent, rgba(255, 255, 255, 0.92) 28%, #fff);
	}

	.pv-pr-m-map__grab {
		width: 42px;
		height: 4px;
		margin: 0 auto 10px;
		border-radius: 999px;
		background: #cbd5e1;
	}

	.pv-pr-m-map__sheet-track {
		display: flex;
		gap: 12px;
		padding: 0 16px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}

	.pv-pr-m-map__sheet-track::-webkit-scrollbar {
		display: none;
	}

	.pv-pr-m-map__card {
		flex: 0 0 78%;
		max-width: 300px;
		display: grid;
		grid-template-columns: 96px 1fr;
		gap: 10px;
		align-items: center;
		padding: 10px;
		border-radius: 18px;
		background: #fff;
		box-shadow: 0 10px 28px rgba(15, 23, 42, 0.14);
		text-decoration: none;
		color: inherit;
		scroll-snap-align: center;
	}

	.pv-pr-m-map__card[hidden] {
		display: none !important;
	}

	.pv-pr-m-map__card img {
		width: 96px;
		height: 78px;
		object-fit: cover;
		border-radius: 12px;
	}

	.pv-pr-m-map__card-body {
		display: flex;
		flex-direction: column;
		gap: 4px;
		min-width: 0;
	}

	.pv-pr-m-map__card-body strong {
		font-size: 15px;
		font-weight: 800;
		color: var(--pv-pr-m-green);
	}

	.pv-pr-m-map__card-body span {
		font-size: 13px;
		font-weight: 600;
		color: var(--pv-pr-m-ink);
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.pv-pr-m-map-marker {
		background: transparent;
		border: 0;
	}

	.pv-pr-m-map-marker__btn {
		border: 0;
		border-radius: 999px;
		background: #fff;
		color: var(--pv-pr-m-ink);
		font: 700 12px/1 'Plus Jakarta Sans', sans-serif;
		padding: 8px 10px;
		box-shadow: 0 8px 18px rgba(15, 23, 42, 0.18);
		white-space: nowrap;
		cursor: pointer;
	}

	.pv-pr-m-map-marker.is-active .pv-pr-m-map-marker__btn,
	.pv-pr-m-map-marker__btn:focus {
		background: var(--pv-pr-m-green);
		color: #fff;
	}
}

/* Phone density — horizontal card proportions */
@media (max-width: 768px) {
	.pv-pr-m-card {
		grid-template-columns: 42% minmax(0, 1fr);
		border-radius: 20px;
	}

	.pv-pr-m-card__price {
		font-size: 15px;
	}

	.pv-pr-m__list {
		gap: 18px;
	}
}
