/**
 * PrimeView Shortlets — mobile-only experience.
 * Does not affect desktop (min-width: 992px).
 */

@media (max-width: 991.98px) {
	.primeview-shortlets-page {
		--pv-sl-m-green: #22c55e;
		--pv-sl-m-green-soft: rgba(34, 197, 94, 0.14);
		--pv-sl-m-ink: #0f172a;
		--pv-sl-m-muted: #64748b;
		--pv-sl-m-line: #e5e7eb;
		--pv-sl-m-pad: 16px;
		--pv-sl-m-radius: 22px;
		background: #fff;
	}

	.primeview-shortlets {
		padding: 0 0 120px;
		background: #fff;
	}

	.primeview-shortlets__inner {
		max-width: none;
		margin: 0;
		padding: 0;
	}

	.primeview-shortlets__inner::before {
		display: none !important;
		content: none !important;
	}

	/* —— Capsule + chips —— */
	.pv-sl-m {
		position: sticky;
		top: 0;
		z-index: 45;
		padding: 12px var(--pv-sl-m-pad) 8px;
		background: rgba(255, 255, 255, 0.94);
		backdrop-filter: blur(16px);
		-webkit-backdrop-filter: blur(16px);
	}

	.pv-sl-m__top {
		display: flex;
		align-items: center;
		gap: 10px;
	}

	.pv-sl-m__capsule {
		flex: 1;
		min-width: 0;
		display: flex;
		align-items: center;
		gap: 12px;
		padding: 12px 14px;
		border: 1px solid var(--pv-sl-m-line);
		border-radius: 999px;
		background: #fff;
		box-shadow: 0 8px 28px rgba(15, 23, 42, 0.08);
		text-align: left;
		cursor: pointer;
		transition: transform 180ms ease, box-shadow 180ms ease;
	}

	.pv-sl-m__capsule:active {
		transform: scale(0.985);
	}

	.pv-sl-m__capsule-pin {
		flex: 0 0 18px;
		width: 18px;
		height: 18px;
		background: var(--pv-sl-m-green);
		-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 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.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' fill='black'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-sl-m__capsule-copy {
		display: flex;
		flex-direction: column;
		gap: 2px;
		min-width: 0;
	}

	.pv-sl-m__capsule-where {
		font-size: 15px;
		font-weight: 700;
		color: var(--pv-sl-m-ink);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.pv-sl-m__capsule-meta {
		font-size: 12px;
		font-weight: 500;
		color: var(--pv-sl-m-muted);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.pv-sl-m__filter-btn {
		flex: 0 0 48px;
		width: 48px;
		height: 48px;
		border: 1px solid var(--pv-sl-m-line);
		border-radius: 999px;
		background: #fff;
		box-shadow: 0 8px 24px rgba(15, 23, 42, 0.07);
		display: inline-flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
	}

	.pv-sl-m__filter-icon {
		width: 18px;
		height: 18px;
		background: var(--pv-sl-m-ink);
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M4 5h16l-6 8v5l-4 2v-7L4 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' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M4 5h16l-6 8v5l-4 2v-7L4 5z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-sl-m__chips {
		display: flex;
		gap: 8px;
		overflow-x: auto;
		padding: 12px 0 4px;
		margin: 0;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}

	.pv-sl-m__chips::-webkit-scrollbar {
		display: none;
	}

	.pv-sl-m__chip {
		flex: 0 0 auto;
		display: inline-flex;
		align-items: center;
		height: 36px;
		padding: 0 14px;
		border: 1px solid #d1d5db;
		border-radius: 999px;
		background: #fff;
		color: var(--pv-sl-m-ink);
		font-size: 13px;
		font-weight: 600;
		text-decoration: none;
		white-space: nowrap;
		transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
	}

	.pv-sl-m__chip.is-active {
		background: var(--pv-sl-m-green);
		border-color: var(--pv-sl-m-green);
		color: #fff;
	}

	/* —— Results —— */
	.primeview-shortlets__layout {
		display: block;
		padding: 0;
	}

	.primeview-shortlets__results {
		padding: 8px var(--pv-sl-m-pad) 0;
	}

	.primeview-shortlets__results-bar {
		display: flex;
		align-items: baseline;
		justify-content: space-between;
		gap: 12px;
		margin: 4px 0 18px;
	}

	.primeview-shortlets__count {
		margin: 0;
		font-size: 14px;
		font-weight: 600;
		color: var(--pv-sl-m-ink);
	}

	.primeview-shortlets__sort-label {
		display: none;
	}

	.primeview-shortlets__sort-select {
		border: 0;
		background: transparent;
		color: var(--pv-sl-m-ink);
		font-size: 13px;
		font-weight: 600;
		text-decoration: underline;
		text-underline-offset: 3px;
		padding-right: 16px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: right center;
		background-size: 12px;
		-webkit-appearance: none;
		appearance: none;
	}

	.primeview-shortlets__grid {
		display: flex;
		flex-direction: column;
		gap: 28px;
	}

	/* —— Cards —— */
	.primeview-shortlets__card {
		display: flex;
		flex-direction: column;
		opacity: 0;
		transform: translate3d(0, 18px, 0);
		animation: pvSlFadeUp 420ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
		animation-delay: var(--pv-sl-stagger, 0ms);
	}

	.primeview-shortlets__card.is-visible {
		opacity: 1;
		transform: none;
	}

	@keyframes pvSlFadeUp {
		to {
			opacity: 1;
			transform: translate3d(0, 0, 0);
		}
	}

	@media (prefers-reduced-motion: reduce) {
		.primeview-shortlets__card {
			opacity: 1;
			transform: none;
			animation: none;
		}
	}

	.primeview-shortlets__card-media {
		position: relative;
		aspect-ratio: 4 / 3;
		overflow: hidden;
		border-radius: var(--pv-sl-m-radius);
		background: #eef2f7;
	}

	.primeview-shortlets__card-gradient {
		display: block;
		position: absolute;
		inset: auto 0 0;
		height: 42%;
		z-index: 2;
		pointer-events: none;
		background: linear-gradient(to top, rgba(15, 23, 42, 0.45), transparent);
	}

	.primeview-shortlets__carousel-track {
		position: absolute;
		inset: 0;
	}

	.primeview-shortlets__carousel-slide {
		position: absolute;
		inset: 0;
		opacity: 0;
		pointer-events: none;
		transition: opacity 220ms ease;
	}

	.primeview-shortlets__carousel-slide.is-active {
		opacity: 1;
		pointer-events: auto;
	}

	.primeview-shortlets__carousel-slide,
	.primeview-shortlets__card-image {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.primeview-shortlets__carousel-nav {
		position: absolute;
		top: 50%;
		z-index: 4;
		width: 32px;
		height: 32px;
		border: 0;
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.96);
		box-shadow: 0 4px 14px rgba(0, 0, 0, 0.14);
		transform: translateY(-50%);
		cursor: pointer;
	}

	.primeview-shortlets__carousel-nav--prev { left: 10px; }
	.primeview-shortlets__carousel-nav--next { right: 10px; }

	.primeview-shortlets__carousel-nav span {
		display: block;
		width: 12px;
		height: 12px;
		margin: 0 auto;
		background: #0f172a;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5'%3E%3Cpath d='m9 6 6 6-6 6'/%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='none' stroke='black' stroke-width='2.5'%3E%3Cpath d='m9 6 6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.primeview-shortlets__carousel-nav--prev span { transform: scaleX(-1); }

	.primeview-shortlets__carousel-dots {
		position: absolute;
		left: 50%;
		bottom: 12px;
		z-index: 4;
		display: flex;
		gap: 5px;
		transform: translateX(-50%);
	}

	.primeview-shortlets__carousel-dot {
		width: 6px;
		height: 6px;
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.5);
	}

	.primeview-shortlets__carousel-dot.is-active { background: #fff; }

	.primeview-shortlets__fav {
		position: absolute;
		top: 12px;
		right: 12px;
		z-index: 4;
		width: 36px;
		height: 36px;
		border: 0;
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.94);
		box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
		cursor: pointer;
	}

	.primeview-shortlets__fav span {
		display: block;
		width: 18px;
		height: 18px;
		margin: 0 auto;
		background: #94a3b8;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M20.8 5.6a5.1 5.1 0 0 0-7.2 0L12 7.2l-1.6-1.6a5.1 5.1 0 0 0-7.2 7.2L12 21.6l8.8-8.8a5.1 5.1 0 0 0 0-7.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' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M20.8 5.6a5.1 5.1 0 0 0-7.2 0L12 7.2l-1.6-1.6a5.1 5.1 0 0 0-7.2 7.2L12 21.6l8.8-8.8a5.1 5.1 0 0 0 0-7.2z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.primeview-shortlets__fav.is-active span {
		background: #ef4444;
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M20.8 5.6a5.1 5.1 0 0 0-7.2 0L12 7.2l-1.6-1.6a5.1 5.1 0 0 0-7.2 7.2L12 21.6l8.8-8.8a5.1 5.1 0 0 0 0-7.2z'/%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M20.8 5.6a5.1 5.1 0 0 0-7.2 0L12 7.2l-1.6-1.6a5.1 5.1 0 0 0-7.2 7.2L12 21.6l8.8-8.8a5.1 5.1 0 0 0 0-7.2z'/%3E%3C/svg%3E");
	}

	.primeview-shortlets__badge-verified {
		position: absolute;
		top: 12px;
		left: 12px;
		z-index: 4;
		display: inline-flex;
		align-items: center;
		gap: 5px;
		height: 28px;
		padding: 0 10px;
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.96);
		color: #16a34a;
		font-size: 11px;
		font-weight: 700;
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
	}

	.primeview-shortlets__badge-verified span {
		width: 12px;
		height: 12px;
		background: var(--pv-sl-m-green);
		-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 2 4 5v6c0 5.2 3.4 9.9 8 11 4.6-1.1 8-5.8 8-11V5l-8-3zm-1.2 14.2-3.5-3.5 1.4-1.4 2.1 2.1 4.5-4.5 1.4 1.4-5.9 5.9z'/%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 2 4 5v6c0 5.2 3.4 9.9 8 11 4.6-1.1 8-5.8 8-11V5l-8-3zm-1.2 14.2-3.5-3.5 1.4-1.4 2.1 2.1 4.5-4.5 1.4 1.4-5.9 5.9z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.primeview-shortlets__badge-360 {
		position: absolute;
		left: 12px;
		bottom: 12px;
		z-index: 4;
		display: inline-flex;
		align-items: center;
		gap: 6px;
		height: 28px;
		padding: 0 10px;
		border-radius: 999px;
		background: rgba(15, 23, 42, 0.82);
		color: #fff;
		font-size: 11px;
		font-weight: 700;
		letter-spacing: 0.03em;
	}

	.primeview-shortlets__badge-360-icon {
		width: 14px;
		height: 14px;
		border-radius: 50%;
		border: 1.5px solid var(--pv-sl-m-green);
		background: radial-gradient(circle at 50% 50%, var(--pv-sl-m-green) 0 2px, transparent 2.5px);
	}

	.primeview-shortlets__card-body--mobile {
		flex-direction: column;
		gap: 4px;
		padding: 14px 2px 0;
	}

	.pv-sl-m-card__title {
		margin: 0;
		color: var(--pv-sl-m-ink);
		font-size: 17px;
		font-weight: 700;
		line-height: 1.3;
		text-decoration: none;
	}

	.pv-sl-m-card__location {
		margin: 0;
		color: var(--pv-sl-m-muted);
		font-size: 14px;
		font-weight: 500;
	}

	.pv-sl-m-card__rating {
		display: flex;
		align-items: center;
		gap: 3px;
		margin: 4px 0 0;
	}

	.pv-sl-m-card__star {
		width: 12px;
		height: 12px;
		background: #cbd5e1;
		-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 3 2.9 5.9 6.5.9-4.7 4.6 1.1 6.5L12 17.8 6.2 21l1.1-6.5L2.6 9.8l6.5-.9L12 3z'/%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 3 2.9 5.9 6.5.9-4.7 4.6 1.1 6.5L12 17.8 6.2 21l1.1-6.5L2.6 9.8l6.5-.9L12 3z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-sl-m-card__star.is-on { background: var(--pv-sl-m-green); }

	.pv-sl-m-card__rating-num {
		margin-left: 6px;
		font-size: 13px;
		font-weight: 600;
		color: var(--pv-sl-m-ink);
	}

	.pv-sl-m-card__price {
		margin: 6px 0 0;
		font-size: 16px;
		font-weight: 700;
		color: var(--pv-sl-m-ink);
	}

	.pv-sl-m-card__meta {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		margin-top: 10px;
	}

	.pv-sl-m-card__stats {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.pv-sl-m-card__stats li {
		display: inline-flex;
		align-items: center;
		gap: 5px;
		font-size: 12px;
		font-weight: 600;
		color: var(--pv-sl-m-muted);
	}

	.pv-sl-m-card__stat-icon {
		width: 14px;
		height: 14px;
		background: var(--pv-sl-m-muted);
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
		-webkit-mask-position: center;
		mask-position: center;
		-webkit-mask-size: contain;
		mask-size: contain;
	}

	.pv-sl-m-card__stat-icon--bed {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M3 7v11M21 18V11a2 2 0 0 0-2-2H8a3 3 0 0 0-3 3v6M3 14h18'/%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M3 7v11M21 18V11a2 2 0 0 0-2-2H8a3 3 0 0 0-3 3v6M3 14h18'/%3E%3C/svg%3E");
	}

	.pv-sl-m-card__stat-icon--bath {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M4 12h16v2a4 4 0 0 1-4 4H8a4 4 0 0 1-4-4v-2zM6 12V6a2 2 0 0 1 2-2h1'/%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M4 12h16v2a4 4 0 0 1-4 4H8a4 4 0 0 1-4-4v-2zM6 12V6a2 2 0 0 1 2-2h1'/%3E%3C/svg%3E");
	}

	.pv-sl-m-card__stat-icon--wifi {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M5 12.5a9 9 0 0 1 14 0'/%3E%3Cpath d='M8.5 16a5 5 0 0 1 7 0'/%3E%3Ccircle cx='12' cy='19' r='1.2' fill='black' stroke='none'/%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M5 12.5a9 9 0 0 1 14 0'/%3E%3Cpath d='M8.5 16a5 5 0 0 1 7 0'/%3E%3Ccircle cx='12' cy='19' r='1.2' fill='black' stroke='none'/%3E%3C/svg%3E");
	}

	.pv-sl-m-card__stat-icon--ac {
		-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M12 3v18M4.5 7.5l15 9M4.5 16.5l15-9'/%3E%3C/svg%3E");
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M12 3v18M4.5 7.5l15 9M4.5 16.5l15-9'/%3E%3C/svg%3E");
	}

	.pv-sl-m-card__more-amenities {
		border: 0;
		background: transparent;
		color: var(--pv-sl-m-green);
		font-size: 13px;
		font-weight: 700;
		padding: 0;
		cursor: pointer;
		white-space: nowrap;
	}

	.primeview-shortlets__pagination {
		display: flex;
		justify-content: center;
		margin: 28px 0 8px;
	}

	.primeview-shortlets__load-more {
		height: 46px;
		padding: 0 22px;
		border: 1px solid var(--pv-sl-m-ink);
		border-radius: 999px;
		background: #fff;
		color: var(--pv-sl-m-ink);
		font-size: 14px;
		font-weight: 700;
	}

	/* Sidebar trust below list; map as sheet */
	.primeview-shortlets__sidebar {
		padding: 28px var(--pv-sl-m-pad) 0;
	}

	.primeview-shortlets__sidebar-sticky {
		display: flex;
		flex-direction: column;
		gap: 12px;
		position: static;
	}

	.primeview-shortlets__side-card {
		padding: 16px;
		border: 1px solid var(--pv-sl-m-line);
		border-radius: 18px;
		background: #fff;
	}

	.primeview-shortlets__side-card--reviews {
		display: none;
	}

	.primeview-shortlets__side-title {
		margin: 0 0 8px;
		font-size: 15px;
		font-weight: 700;
		color: var(--pv-sl-m-ink);
	}

	.primeview-shortlets__side-text {
		margin: 0;
		font-size: 13px;
		line-height: 1.5;
		color: var(--pv-sl-m-muted);
	}

	.primeview-shortlets__side-btn--solid {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 44px;
		margin-top: 12px;
		border: 0;
		border-radius: 14px;
		background: var(--pv-sl-m-green);
		color: #fff;
		font-weight: 700;
		text-decoration: none;
	}

	/* Map sheet */
	.primeview-shortlets__side-card--map {
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 10060;
		margin: 0;
		padding: max(12px, env(safe-area-inset-top, 0px))
			max(12px, env(safe-area-inset-right, 0px))
			max(12px, env(safe-area-inset-bottom, 0px))
			max(12px, env(safe-area-inset-left, 0px));
		border: 0;
		border-radius: 0;
		background: #fff;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity 220ms ease, visibility 220ms ease;
		overscroll-behavior: contain;
	}

	.primeview-shortlets__side-card--map.is-expanded {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.primeview-shortlets__map-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin-bottom: 10px;
		min-height: 44px;
	}

	.primeview-shortlets__map-expand { display: none !important; }

	.primeview-shortlets__map-close {
		display: inline-flex !important;
		width: 44px;
		height: 44px;
		min-width: 44px;
		min-height: 44px;
		border: 1px solid var(--pv-sl-m-line);
		border-radius: 999px;
		background: #fff;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
	}

	.primeview-shortlets__map-close span {
		width: 14px;
		height: 14px;
		background: var(--pv-sl-m-ink);
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%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='none' stroke='black' stroke-width='2.5'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.primeview-shortlets__map {
		height: calc(100% - 110px);
		min-height: 0;
		border-radius: 20px;
		overflow: hidden;
		border: 1px solid var(--pv-sl-m-line);
	}

	.primeview-shortlets__map-list-btn {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		gap: 8px;
		position: absolute;
		left: 50%;
		bottom: calc(20px + env(safe-area-inset-bottom, 0px));
		transform: translateX(-50%);
		height: 46px;
		padding: 0 18px;
		border: 0;
		border-radius: 999px;
		background: var(--pv-sl-m-ink);
		color: #fff;
		font-size: 14px;
		font-weight: 700;
		box-shadow: 0 10px 28px rgba(0, 0, 0, 0.22);
		cursor: pointer;
	}

	.primeview-shortlets__map-list-btn-icon {
		width: 14px;
		height: 14px;
		background: currentColor;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01'/%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='none' stroke='black' stroke-width='2'%3E%3Cpath d='M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.primeview-shortlets__map-fab {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		gap: 8px;
		position: fixed;
		left: 50%;
		bottom: calc(22px + env(safe-area-inset-bottom, 0px));
		z-index: 50;
		transform: translateX(-50%);
		height: 48px;
		padding: 0 20px;
		border: 0;
		border-radius: 999px;
		background: var(--pv-sl-m-ink);
		color: #fff;
		font-size: 14px;
		font-weight: 700;
		box-shadow: 0 12px 30px rgba(15, 23, 42, 0.28);
		cursor: pointer;
	}

	.primeview-shortlets__map-fab-icon {
		width: 15px;
		height: 15px;
		background: currentColor;
		-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 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.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' fill='black'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	html.primeview-shortlets-map-expanded .primeview-shortlets__map-fab,
	html.pv-sl-sheet-open .primeview-shortlets__map-fab {
		display: none !important;
	}

	html.primeview-shortlets-map-expanded,
	html.primeview-shortlets-map-expanded body {
		overflow: hidden;
		overscroll-behavior: none;
	}

	.primeview-shortlets-map-marker { background: transparent !important; border: 0 !important; }

	.primeview-shortlets-map-marker__btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 54px;
		height: 32px;
		padding: 0 10px;
		border: 0;
		border-radius: 10px;
		background: var(--pv-sl-m-green);
		color: #fff;
		font-size: 13px;
		font-weight: 700;
		box-shadow: 0 4px 14px rgba(34, 197, 94, 0.35);
		cursor: pointer;
	}

	.primeview-shortlets-map-marker.is-active .primeview-shortlets-map-marker__btn {
		background: var(--pv-sl-m-ink);
		box-shadow: 0 4px 14px rgba(15, 23, 42, 0.25);
	}

	/* Tour CTA */
	.pv-sl-m__tour-cta {
		position: fixed;
		left: 50%;
		bottom: calc(84px + env(safe-area-inset-bottom, 0px));
		z-index: 48;
		transform: translateX(-50%) translateY(16px);
		display: inline-flex;
		align-items: center;
		gap: 8px;
		height: 46px;
		padding: 0 18px;
		border-radius: 999px;
		background: var(--pv-sl-m-green);
		color: #fff;
		font-size: 14px;
		font-weight: 700;
		text-decoration: none;
		box-shadow: 0 12px 28px rgba(34, 197, 94, 0.35);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity 200ms ease, transform 200ms ease, visibility 200ms ease;
	}

	.pv-sl-m__tour-cta.is-visible {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: translateX(-50%) translateY(0);
	}

	.pv-sl-m__tour-cta[hidden] { display: none !important; }

	.pv-sl-m__tour-cta-icon {
		width: 16px;
		height: 16px;
		background: #fff;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 8v4l2.5 1.5'/%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='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 8v4l2.5 1.5'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	/* —— Sheets —— */
	.pv-sl-sheet {
		position: fixed;
		inset: 0;
		z-index: 10070;
	}

	.pv-sl-sheet[hidden] { display: none !important; }

	.pv-sl-sheet__backdrop {
		position: absolute;
		inset: 0;
		background: rgba(15, 23, 42, 0.42);
		opacity: 0;
		transition: opacity 220ms ease;
	}

	.pv-sl-sheet.is-open .pv-sl-sheet__backdrop { opacity: 1; }

	.pv-sl-sheet__panel {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		max-height: min(92vh, 900px);
		display: flex;
		flex-direction: column;
		background: #fff;
		border-radius: 24px 24px 0 0;
		transform: translate3d(0, 100%, 0);
		transition: transform 280ms cubic-bezier(0.22, 1, 0.36, 1);
		overflow: hidden;
	}

	.pv-sl-sheet.is-open .pv-sl-sheet__panel {
		transform: translate3d(0, 0, 0);
	}

	.pv-sl-sheet--full .pv-sl-sheet__panel {
		max-height: 100vh;
		height: 100%;
		border-radius: 0;
	}

	.pv-sl-sheet__grab {
		width: 40px;
		height: 4px;
		margin: 10px auto 0;
		border-radius: 999px;
		background: #d1d5db;
		flex: 0 0 auto;
	}

	.pv-sl-sheet__header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 14px 16px 10px;
		flex: 0 0 auto;
	}

	.pv-sl-sheet__title {
		margin: 0;
		font-size: 18px;
		font-weight: 750;
		color: var(--pv-sl-m-ink);
	}

	.pv-sl-sheet__close {
		width: 36px;
		height: 36px;
		border: 1px solid var(--pv-sl-m-line);
		border-radius: 999px;
		background: #fff;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
	}

	.pv-sl-sheet__close span {
		width: 14px;
		height: 14px;
		background: var(--pv-sl-m-ink);
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%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='none' stroke='black' stroke-width='2.5'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-sl-search-form,
	.pv-sl-filters {
		display: flex;
		flex-direction: column;
		gap: 18px;
		padding: 0 16px 110px;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
		flex: 1;
	}

	.pv-sl-search-form__section { display: flex; flex-direction: column; gap: 10px; }

	.pv-sl-search-form__heading,
	.pv-sl-filters__section h3 {
		margin: 0;
		font-size: 13px;
		font-weight: 750;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		color: var(--pv-sl-m-muted);
	}

	.pv-sl-search-form__field {
		display: flex;
		align-items: center;
		gap: 10px;
		min-height: 52px;
		padding: 0 14px;
		border: 1px solid var(--pv-sl-m-line);
		border-radius: 16px;
		background: #f8fafc;
	}

	.pv-sl-search-form__field input {
		flex: 1;
		border: 0;
		background: transparent;
		outline: none;
		font-size: 15px;
		font-weight: 500;
		color: var(--pv-sl-m-ink);
	}

	.pv-sl-search-form__field-icon {
		width: 16px;
		height: 16px;
		background: var(--pv-sl-m-green);
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%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='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-sl-search-form__suggestions {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		gap: 4px;
	}

	.pv-sl-search-form__suggest {
		width: 100%;
		display: flex;
		align-items: center;
		gap: 12px;
		padding: 12px 10px;
		border: 0;
		border-radius: 14px;
		background: transparent;
		color: var(--pv-sl-m-ink);
		font-size: 15px;
		font-weight: 600;
		text-align: left;
		cursor: pointer;
	}

	.pv-sl-search-form__suggest:active { background: #f1f5f9; }

	.pv-sl-search-form__suggest-icon {
		width: 34px;
		height: 34px;
		border-radius: 12px;
		background: var(--pv-sl-m-green-soft);
		position: relative;
		flex: 0 0 34px;
	}

	.pv-sl-search-form__suggest-icon::before {
		content: '';
		position: absolute;
		inset: 9px;
		background: var(--pv-sl-m-green);
		-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 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.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' fill='black'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5z'/%3E%3C/svg%3E") center / contain no-repeat;
	}

	.pv-sl-search-form__dates {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}

	.pv-sl-search-form__dates label {
		display: flex;
		flex-direction: column;
		gap: 6px;
		padding: 12px;
		border: 1px solid var(--pv-sl-m-line);
		border-radius: 16px;
		background: #f8fafc;
		font-size: 11px;
		font-weight: 700;
		color: var(--pv-sl-m-muted);
		text-transform: uppercase;
	}

	.pv-sl-search-form__dates input {
		border: 0;
		background: transparent;
		outline: none;
		font-size: 14px;
		font-weight: 600;
		color: var(--pv-sl-m-ink);
		text-transform: none;
	}

	.pv-sl-search-form__any-date {
		align-self: flex-start;
		height: 36px;
		padding: 0 14px;
		border: 1px solid #d1d5db;
		border-radius: 999px;
		background: #fff;
		color: var(--pv-sl-m-ink);
		font-size: 13px;
		font-weight: 650;
		cursor: pointer;
	}

	.pv-sl-search-form__any-date.is-active {
		background: var(--pv-sl-m-green-soft);
		border-color: var(--pv-sl-m-green);
		color: #16a34a;
	}

	.pv-sl-stepper-list {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		gap: 14px;
	}

	.pv-sl-stepper {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
	}

	.pv-sl-stepper__label {
		margin: 0;
		font-size: 15px;
		font-weight: 700;
		color: var(--pv-sl-m-ink);
	}

	.pv-sl-stepper__hint {
		margin: 2px 0 0;
		font-size: 12px;
		color: var(--pv-sl-m-muted);
	}

	.pv-sl-stepper__controls {
		display: inline-flex;
		align-items: center;
		gap: 12px;
	}

	.pv-sl-stepper__controls button {
		width: 34px;
		height: 34px;
		border: 1px solid #d1d5db;
		border-radius: 999px;
		background: #fff;
		color: var(--pv-sl-m-ink);
		font-size: 18px;
		line-height: 1;
		cursor: pointer;
	}

	.pv-sl-stepper__controls span {
		min-width: 18px;
		text-align: center;
		font-size: 15px;
		font-weight: 700;
	}

	.pv-sl-sheet__footer {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
		background: linear-gradient(to top, #fff 70%, rgba(255, 255, 255, 0.85));
		border-top: 1px solid rgba(229, 231, 235, 0.9);
	}

	.pv-sl-sheet__footer--split {
		display: grid;
		grid-template-columns: 1fr 1.4fr;
		gap: 10px;
	}

	.pv-sl-sheet__primary {
		width: 100%;
		height: 50px;
		border: 0;
		border-radius: 999px;
		background: var(--pv-sl-m-green);
		color: #fff;
		font-size: 15px;
		font-weight: 750;
		cursor: pointer;
	}

	.pv-sl-sheet__ghost {
		width: 100%;
		height: 50px;
		border: 1px solid #d1d5db;
		border-radius: 999px;
		background: #fff;
		color: var(--pv-sl-m-ink);
		font-size: 15px;
		font-weight: 700;
		cursor: pointer;
	}

	.pv-sl-amenities-list {
		list-style: none;
		margin: 0;
		padding: 0 16px 28px;
		overflow: auto;
		display: flex;
		flex-direction: column;
		gap: 4px;
		flex: 1;
	}

	.pv-sl-amenities-list li {
		display: flex;
		align-items: center;
		gap: 12px;
		padding: 12px 4px;
		border-bottom: 1px solid #f1f5f9;
		font-size: 15px;
		font-weight: 600;
		color: var(--pv-sl-m-ink);
	}

	.pv-sl-amenities-list li::before {
		content: '';
		width: 20px;
		height: 20px;
		border-radius: 50%;
		flex: 0 0 20px;
		background-color: var(--pv-sl-m-green-soft);
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2322cc71' stroke-width='3'%3E%3Cpath d='m5 12 5 5L20 7'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: center;
		background-size: 12px;
	}

	.pv-sl-filters__section {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	.pv-sl-filters__row {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 8px;
		width: 100%;
		min-width: 0;
	}

	.pv-sl-filters__row label {
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap: 2px;
		min-width: 0;
		max-width: 100%;
		box-sizing: border-box;
		padding: 8px 10px;
		border: 1px solid var(--pv-sl-m-line);
		border-radius: 12px;
		background: #fff;
		font-size: 10px;
		font-weight: 700;
		letter-spacing: 0.04em;
		color: var(--pv-sl-m-muted);
		text-transform: uppercase;
	}

	.pv-sl-filters__row input {
		display: block;
		width: 100%;
		min-width: 0;
		max-width: 100%;
		box-sizing: border-box;
		margin: 0;
		padding: 0;
		border: 0;
		background: transparent;
		outline: none;
		font-size: 15px;
		font-weight: 650;
		line-height: 1.25;
		color: var(--pv-sl-m-ink);
		text-transform: none;
		letter-spacing: 0;
		-moz-appearance: textfield;
		appearance: textfield;
	}

	.pv-sl-filters__row input::placeholder {
		color: #94a3b8;
		font-weight: 500;
	}

	.pv-sl-filters__row input::-webkit-outer-spin-button,
	.pv-sl-filters__row input::-webkit-inner-spin-button {
		-webkit-appearance: none;
		margin: 0;
	}

	.pv-sl-filters__pills {
		display: flex;
		gap: 8px;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.pv-sl-filters__pills--wrap {
		flex-wrap: wrap;
		overflow: visible;
	}

	.pv-sl-filters__pill {
		flex: 0 0 auto;
		height: 36px;
		padding: 0 14px;
		border: 1px solid #d1d5db;
		border-radius: 999px;
		background: #fff;
		color: var(--pv-sl-m-ink);
		font-size: 13px;
		font-weight: 650;
		cursor: pointer;
	}

	.pv-sl-filters__pill.is-active {
		background: var(--pv-sl-m-green);
		border-color: var(--pv-sl-m-green);
		color: #fff;
	}

	.pv-sl-filters__checks {
		display: flex;
		flex-direction: column;
		gap: 10px;
	}

	.pv-sl-filters__check {
		display: flex;
		align-items: center;
		gap: 12px;
		font-size: 15px;
		font-weight: 600;
		color: var(--pv-sl-m-ink);
	}

	.pv-sl-filters__check input {
		width: 18px;
		height: 18px;
		accent-color: var(--pv-sl-m-green);
	}

	/* Hide legacy desktop popover on mobile */
	.primeview-shortlets-popover {
		display: none !important;
	}
}
