@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap");
body.primeview-properties-page {
--pv-pr-green: #22c55e;
--pv-pr-green-press: #16a34a;
--pv-pr-ink: #0f172a;
--pv-pr-muted: #64748b;
--pv-pr-line: #e8edf2;
--pv-pr-soft: #f4f7f9;
--pv-pr-radius: 22px;
--pv-pr-shadow: 0 10px 30px rgba(15, 23, 42, 0.07);
--pv-pr-shadow-hover: 0 16px 36px rgba(15, 23, 42, 0.12);
--pv-pr-font: 'Plus Jakarta Sans', 'Segoe UI', sans-serif;
background: #f7f9fb;
color: var(--pv-pr-ink);
font-family: var(--pv-pr-font);
}
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: #f7f9fb !important;
padding: 0 !important;
} @media (min-width: 992px) {
body.primeview-properties-page {
--primeview-header-height: 68px;
}
body.primeview-properties-page .primeview-header__desktop,
body.primeview-properties-page .primeview-header__desktop .primeview-header__bar {
height: var(--primeview-header-height);
}
body.primeview-properties-page .primeview-header__desktop .primeview-header__logo-image,
body.primeview-properties-page .primeview-header__desktop .logo img {
height: 32px !important;
max-height: 32px !important;
max-width: 124px !important;
}
body.primeview-properties-page .primeview-header__menu > li > a {
font-size: 13px;
padding-top: 0;
padding-bottom: 0;
}
body.primeview-properties-page .primeview-header__cta,
body.primeview-properties-page .primeview-header__right .btn {
padding: 8px 14px;
font-size: 12px;
}
}
.pv-pr {
-webkit-font-smoothing: antialiased;
}
.pv-pr__desktop {
display: none;
} .pv-pr__mobile-only,
.pv-pr-sheet,
.pv-pr-m-map {
display: none !important;
}
@media (min-width: 992px) {
.pv-pr__desktop {
display: block;
padding: 28px 0 72px;
}
.pv-pr__inner {
max-width: 1360px;
margin: 0 auto;
padding: 0 clamp(24px, 2.4vw, 40px);
} .pv-pr__search-wrap {
margin-bottom: 28px;
}
.pv-pr__search {
display: grid;
grid-template-columns: 1.3fr 1fr 0.9fr 1.1fr auto;
gap: 0;
align-items: stretch;
background: #fff;
border-radius: var(--pv-pr-radius);
box-shadow: var(--pv-pr-shadow);
border: 1px solid rgba(15, 23, 42, 0.04);
overflow: hidden;
min-height: 88px;
}
.pv-pr__search-field {
display: flex;
flex-direction: column;
justify-content: center;
gap: 6px;
padding: 16px 20px;
border-right: 1px solid var(--pv-pr-line);
min-width: 0;
}
.pv-pr__search-label {
font-size: 12px;
font-weight: 700;
letter-spacing: 0.02em;
color: var(--pv-pr-muted);
text-transform: uppercase;
}
.pv-pr__search-field select,
.pv-pr__search-field input {
width: 100%;
border: 0;
background: transparent;
font: inherit;
font-size: 15px;
font-weight: 600;
color: var(--pv-pr-ink);
outline: none;
padding: 0;
appearance: none;
}
.pv-pr__price-inputs {
display: flex;
align-items: center;
gap: 8px;
}
.pv-pr__price-inputs input {
min-width: 0;
}
.pv-pr__search-submit {
align-self: center;
margin: 14px 16px 14px 12px;
min-height: 52px;
padding: 0 26px;
border: 0;
border-radius: 16px;
background: var(--pv-pr-green);
color: #fff;
font: inherit;
font-size: 15px;
font-weight: 700;
font-weight: 700;
white-space: nowrap;
cursor: pointer;
box-shadow: 0 10px 24px rgba(34, 197, 94, 0.28);
transition: background-color 160ms ease, transform 160ms ease;
}
.pv-pr__search-submit:hover {
background: var(--pv-pr-green-press);
}
.pv-pr__search-submit:active {
transform: scale(0.98);
} .pv-pr__categories {
margin-bottom: 32px;
}
.pv-pr__category-list {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(118px, 1fr));
gap: 12px;
margin: 0;
padding: 0;
list-style: none;
}
.pv-pr__category {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 10px;
min-height: 118px;
padding: 18px 16px;
border-radius: 20px;
background: #fff;
border: 1px solid var(--pv-pr-line);
text-decoration: none;
color: var(--pv-pr-ink);
box-shadow: 0 4px 14px rgba(15, 23, 42, 0.03);
transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}
.pv-pr__category:hover {
transform: translateY(-3px);
box-shadow: var(--pv-pr-shadow);
border-color: rgba(34, 197, 94, 0.35);
}
.pv-pr__category.is-active {
border-color: var(--pv-pr-green);
box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.25), var(--pv-pr-shadow);
}
.pv-pr__category-icon {
width: 28px;
height: 28px;
background: var(--pv-pr-ink);
opacity: 0.78;
-webkit-mask: center / contain no-repeat;
mask: center / contain no-repeat;
}
.pv-pr__category.is-active .pv-pr__category-icon {
background: var(--pv-pr-green);
opacity: 1;
} .pv-pr__category-icon--house {
-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='M12 3.2 3.5 10.2a1 1 0 0 0-.3.7V20a1 1 0 0 0 1 1h5.5v-6.2h5.6V21H20a1 1 0 0 0 1-1v-9.1a1 1 0 0 0-.3-.7L12 3.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='M12 3.2 3.5 10.2a1 1 0 0 0-.3.7V20a1 1 0 0 0 1 1h5.5v-6.2h5.6V21H20a1 1 0 0 0 1-1v-9.1a1 1 0 0 0-.3-.7L12 3.2z'/%3E%3C/svg%3E");
}
.pv-pr__category-icon--duplex {
-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='M3 11.2 8 7v13H4.2A1.2 1.2 0 0 1 3 18.8V11.2zm6-.8 5.2-4.4v17.2H9V10.4zm6.8-1.2L21 12.1v6.7A1.2 1.2 0 0 1 19.8 20H16V9.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='M3 11.2 8 7v13H4.2A1.2 1.2 0 0 1 3 18.8V11.2zm6-.8 5.2-4.4v17.2H9V10.4zm6.8-1.2L21 12.1v6.7A1.2 1.2 0 0 1 19.8 20H16V9.2z'/%3E%3C/svg%3E");
}
.pv-pr__category-icon--apartment {
-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='M5 21V4.8A1.8 1.8 0 0 1 6.8 3h6.4A1.8 1.8 0 0 1 15 4.8V9h2.2A1.8 1.8 0 0 1 19 10.8V21H5zm3-12h3V6H8v3zm0 4.5h3v-3H8v3zm0 4.5h3v-3H8v3zm7.5-4.5H18v-3h-2.5v3zm0 4.5H18v-3h-2.5v3z'/%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='M5 21V4.8A1.8 1.8 0 0 1 6.8 3h6.4A1.8 1.8 0 0 1 15 4.8V9h2.2A1.8 1.8 0 0 1 19 10.8V21H5zm3-12h3V6H8v3zm0 4.5h3v-3H8v3zm0 4.5h3v-3H8v3zm7.5-4.5H18v-3h-2.5v3zm0 4.5H18v-3h-2.5v3z'/%3E%3C/svg%3E");
}
.pv-pr__category-icon--shortlet {
-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='M4 11.2 12 4.5l8 6.7V20h-5.4v-5.2H9.4V20H4v-8.8zm4.6 1.4h2.8v-2.6H8.6v2.6zm4 0h2.8v-2.6h-2.8v2.6z'/%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='M4 11.2 12 4.5l8 6.7V20h-5.4v-5.2H9.4V20H4v-8.8zm4.6 1.4h2.8v-2.6H8.6v2.6zm4 0h2.8v-2.6h-2.8v2.6z'/%3E%3C/svg%3E");
}
.pv-pr__category-icon--land {
-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='M3.5 18.5 8 10l3.4 4.6L14.5 11l6 7.5H3.5zM4 7.2h4.2V5.5H4v1.7zm12.8 0H21V5.5h-4.2v1.7zM4 20h16v-1.5H4V20z'/%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='M3.5 18.5 8 10l3.4 4.6L14.5 11l6 7.5H3.5zM4 7.2h4.2V5.5H4v1.7zm12.8 0H21V5.5h-4.2v1.7zM4 20h16v-1.5H4V20z'/%3E%3C/svg%3E");
}
.pv-pr__category-icon--commercial {
-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='M4 20V8.5L12 4l8 4.5V20h-5.2v-5.4H9.2V20H4zm4.2-8.2h2.4V9.4H8.2v2.4zm5.2 0h2.4V9.4h-2.4v2.4z'/%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='M4 20V8.5L12 4l8 4.5V20h-5.2v-5.4H9.2V20H4zm4.2-8.2h2.4V9.4H8.2v2.4zm5.2 0h2.4V9.4h-2.4v2.4z'/%3E%3C/svg%3E");
}
.pv-pr__category-icon--luxury {
-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='M12 2.8 14.2 8l5.8.5-4.4 3.7 1.4 5.7L12 15.4 7 18l1.4-5.7L4 8.5 9.8 8 12 2.8z'/%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='M12 2.8 14.2 8l5.8.5-4.4 3.7 1.4 5.7L12 15.4 7 18l1.4-5.7L4 8.5 9.8 8 12 2.8z'/%3E%3C/svg%3E");
}
.pv-pr__category-icon--offplan {
-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='M4 4h11l5 5v11a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1zm10.2 1.6V9H19l-4.8-3.4zM7 12.2h4.2V11H7v1.2zm0 3.2h10V14H7v1.4zm0 3.2h7.4V17.2H7v1.4z'/%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='M4 4h11l5 5v11a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1zm10.2 1.6V9H19l-4.8-3.4zM7 12.2h4.2V11H7v1.2zm0 3.2h10V14H7v1.4zm0 3.2h7.4V17.2H7v1.4z'/%3E%3C/svg%3E");
}
.pv-pr__category-icon--more {
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Ccircle cx='5.5' cy='12' r='2'/%3E%3Ccircle cx='12' cy='12' r='2'/%3E%3Ccircle cx='18.5' cy='12' r='2'/%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%3Ccircle cx='5.5' cy='12' r='2'/%3E%3Ccircle cx='12' cy='12' r='2'/%3E%3Ccircle cx='18.5' cy='12' r='2'/%3E%3C/svg%3E");
}
.pv-pr__category-name {
font-size: 14px;
font-weight: 700;
letter-spacing: -0.02em;
}
.pv-pr__category-count {
font-size: 12px;
font-weight: 600;
color: var(--pv-pr-muted);
} .pv-pr__layout {
display: grid;
grid-template-columns: minmax(260px, 280px) minmax(0, 1fr);
gap: 28px;
align-items: start;
}
.pv-pr__filters {
position: sticky;
top: 84px;
}
.pv-pr__filters-card {
padding: 22px 20px 20px;
border-radius: var(--pv-pr-radius);
background: #fff;
border: 1px solid rgba(15, 23, 42, 0.05);
box-shadow: var(--pv-pr-shadow);
display: flex;
flex-direction: column;
gap: 8px;
}
.pv-pr__filters-head {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 8px;
}
.pv-pr__filters-title {
margin: 0;
font-size: 1.05rem;
font-weight: 800;
letter-spacing: -0.02em;
}
.pv-pr__filters-clear {
font-size: 13px;
font-weight: 700;
color: var(--pv-pr-green);
text-decoration: none;
}
.pv-pr__filter-group {
border-top: 1px solid var(--pv-pr-line);
padding: 10px 0;
}
.pv-pr__filter-group summary {
cursor: pointer;
font-size: 14px;
font-weight: 700;
list-style: none;
display: flex;
align-items: center;
justify-content: space-between;
}
.pv-pr__filter-group summary::-webkit-details-marker {
display: none;
}
.pv-pr__filter-group summary::after {
content: '';
width: 8px;
height: 8px;
border-right: 2px solid #94a3b8;
border-bottom: 2px solid #94a3b8;
transform: rotate(45deg);
transition: transform 160ms ease;
}
.pv-pr__filter-group[open] summary::after {
transform: rotate(-135deg);
}
.pv-pr__filter-body {
padding-top: 12px;
}
.pv-pr__filter-body select,
.pv-pr__filter-body input[type='number'] {
width: 100%;
min-height: 42px;
padding: 0 12px;
border: 1px solid var(--pv-pr-line);
border-radius: 12px;
background: #fff;
font: inherit;
font-size: 14px;
font-weight: 600;
color: var(--pv-pr-ink);
}
.pv-pr__filter-body--row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 8px;
}
.pv-pr__filter-checks {
display: flex;
flex-direction: column;
gap: 10px;
}
.pv-pr__filter-checks label {
display: flex;
align-items: center;
gap: 10px;
font-size: 13px;
font-weight: 600;
cursor: pointer;
}
.pv-pr__toggles {
display: flex;
flex-direction: column;
gap: 12px;
padding: 12px 0 4px;
border-top: 1px solid var(--pv-pr-line);
}
.pv-pr__toggle {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
font-size: 13px;
font-weight: 700;
cursor: pointer;
position: relative;
}
.pv-pr__toggle input {
position: absolute;
opacity: 0;
pointer-events: none;
}
.pv-pr__toggle-ui {
width: 44px;
height: 26px;
border-radius: 999px;
background: #dbe2ea;
position: relative;
flex: 0 0 auto;
transition: background-color 160ms ease;
}
.pv-pr__toggle-ui::after {
content: '';
position: absolute;
top: 3px;
left: 3px;
width: 20px;
height: 20px;
border-radius: 50%;
background: #fff;
box-shadow: 0 2px 6px rgba(15, 23, 42, 0.18);
transition: transform 160ms ease;
}
.pv-pr__toggle input:checked + .pv-pr__toggle-ui {
background: var(--pv-pr-green);
}
.pv-pr__toggle input:checked + .pv-pr__toggle-ui::after {
transform: translateX(18px);
}
.pv-pr__apply {
margin-top: 8px;
min-height: 48px;
border: 0;
border-radius: 14px;
background: var(--pv-pr-green);
color: #fff;
font: inherit;
font-size: 15px;
font-weight: 700;
cursor: pointer;
box-shadow: 0 10px 22px rgba(34, 197, 94, 0.28);
}
.pv-pr__save {
min-height: 46px;
border: 1px solid var(--pv-pr-line);
border-radius: 14px;
background: #fff;
color: var(--pv-pr-ink);
font: inherit;
font-size: 14px;
font-weight: 700;
cursor: pointer;
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
}
.pv-pr__save-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='M7 4h10a1 1 0 011 1v16l-6-3.5L6 21V5a1 1 0 011-1z'/%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='M7 4h10a1 1 0 011 1v16l-6-3.5L6 21V5a1 1 0 011-1z'/%3E%3C/svg%3E") center / contain no-repeat;
} .pv-pr__results-bar {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
margin-bottom: 20px;
}
.pv-pr__count {
margin: 0;
font-size: 1.05rem;
font-weight: 800;
letter-spacing: -0.02em;
}
.pv-pr__demo-tag {
display: inline-block;
margin-left: 8px;
padding: 2px 8px;
border-radius: 999px;
background: var(--pv-pr-soft);
color: var(--pv-pr-muted);
font-size: 11px;
font-weight: 700;
vertical-align: middle;
}
.pv-pr__results-tools {
display: flex;
align-items: center;
gap: 14px;
}
.pv-pr__sort label {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 13px;
font-weight: 600;
color: var(--pv-pr-muted);
}
.pv-pr__sort select {
min-height: 40px;
padding: 0 12px;
border: 1px solid var(--pv-pr-line);
border-radius: 12px;
background: #fff;
font: inherit;
font-size: 13px;
font-weight: 700;
color: var(--pv-pr-ink);
}
.pv-pr__view-toggles {
display: inline-flex;
padding: 4px;
border-radius: 12px;
background: #fff;
border: 1px solid var(--pv-pr-line);
gap: 2px;
}
.pv-pr__view-btn {
min-height: 34px;
padding: 0 12px;
border: 0;
border-radius: 10px;
background: transparent;
font: inherit;
font-size: 13px;
font-weight: 700;
color: var(--pv-pr-muted);
cursor: pointer;
}
.pv-pr__view-btn.is-active {
background: var(--pv-pr-soft);
color: var(--pv-pr-ink);
}
.pv-pr__grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 22px;
}
.pv-pr__grid.is-list {
grid-template-columns: 1fr;
}
.pv-pr__grid.is-list .pv-pr__card {
display: grid;
grid-template-columns: 320px minmax(0, 1fr);
}
.pv-pr__grid.is-list .pv-pr__card-media {
aspect-ratio: 4 / 3;
min-height: 100%;
} .pv-pr__card {
display: flex;
flex-direction: column;
background: #fff;
border-radius: var(--pv-pr-radius);
border: 1px solid rgba(15, 23, 42, 0.04);
box-shadow: var(--pv-pr-shadow);
overflow: hidden;
transition: transform 200ms ease, box-shadow 200ms ease;
}
.pv-pr__card:hover {
transform: translateY(-4px);
box-shadow: var(--pv-pr-shadow-hover);
}
.pv-pr__card-media {
position: relative;
aspect-ratio: 16 / 11;
background: var(--pv-pr-soft);
overflow: hidden;
}
.pv-pr__card-media-link,
.pv-pr__card-image {
display: block;
width: 100%;
height: 100%;
}
.pv-pr__card-image {
object-fit: cover;
}
.pv-pr__card-image--empty {
background: linear-gradient(135deg, #e2e8f0, #f8fafc);
}
.pv-pr__badges {
position: absolute;
top: 12px;
left: 12px;
z-index: 2;
display: flex;
flex-wrap: wrap;
gap: 6px;
max-width: calc(100% - 70px);
}
.pv-pr__badge {
display: inline-flex;
align-items: center;
min-height: 26px;
padding: 0 10px;
border-radius: 999px;
font-size: 11px;
font-weight: 800;
letter-spacing: 0.02em;
background: rgba(15, 23, 42, 0.72);
color: #fff;
backdrop-filter: blur(6px);
}
.pv-pr__badge--360 {
background: rgba(15, 23, 42, 0.82);
}
.pv-pr__badge--verified {
background: var(--pv-pr-green);
}
.pv-pr__badge--featured,
.pv-pr__badge--new {
background: rgba(255, 255, 255, 0.94);
color: var(--pv-pr-ink);
}
.pv-pr__fav {
position: absolute;
top: 12px;
right: 12px;
z-index: 2;
width: 38px;
height: 38px;
border: 0;
border-radius: 50%;
background: rgba(255, 255, 255, 0.95);
color: var(--pv-pr-ink);
display: inline-flex;
align-items: center;
justify-content: center;
cursor: pointer;
box-shadow: 0 4px 14px rgba(15, 23, 42, 0.12);
}
.pv-pr__fav[aria-pressed='true'] {
color: #ef4444;
}
.pv-pr__fav[aria-pressed='true'] path {
fill: currentColor;
}
.pv-pr__photo-count {
position: absolute;
right: 12px;
bottom: 12px;
z-index: 2;
display: inline-flex;
align-items: center;
gap: 6px;
min-height: 26px;
padding: 0 10px;
border-radius: 999px;
background: rgba(15, 23, 42, 0.72);
color: #fff;
font-size: 12px;
font-weight: 700;
}
.pv-pr__photo-count span {
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='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__card-body {
padding: 16px 16px 18px;
display: flex;
flex-direction: column;
gap: 8px;
flex: 1 1 auto;
}
.pv-pr__card-price {
margin: 0;
font-size: 1.2rem;
font-weight: 800;
letter-spacing: -0.03em;
color: var(--pv-pr-green);
}
.pv-pr__card-title {
margin: 0;
font-size: 1rem;
font-weight: 700;
font-weight: 700;
letter-spacing: -0.02em;
line-height: 1.3;
}
.pv-pr__card-title a {
color: inherit;
text-decoration: none;
}
.pv-pr__card-title a:hover {
color: var(--pv-pr-green);
}
.pv-pr__card-location {
margin: 0;
display: flex;
align-items: flex-start;
gap: 6px;
font-size: 13px;
font-weight: 500;
color: var(--pv-pr-muted);
}
.pv-pr__pin {
width: 12px;
height: 12px;
margin-top: 3px;
flex: 0 0 auto;
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 00-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 00-7-7zm0 9.5A2.5 2.5 0 1112 6a2.5 2.5 0 010 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 00-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 00-7-7zm0 9.5A2.5 2.5 0 1112 6a2.5 2.5 0 010 5.5z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.pv-pr__card-specs {
display: flex;
flex-wrap: wrap;
gap: 12px;
margin: 4px 0 0;
padding: 0;
list-style: none;
}
.pv-pr__card-specs li {
display: inline-flex;
align-items: center;
gap: 6px;
font-size: 12px;
font-weight: 700;
color: var(--pv-pr-ink);
}
.pv-pr__spec-icon {
width: 14px;
height: 14px;
background: var(--pv-pr-muted);
-webkit-mask: center / contain no-repeat;
mask: center / contain no-repeat;
}
.pv-pr__spec-icon--bed {
-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='M4 11V8.2A2.2 2.2 0 0 1 6.2 6h6.6A2.2 2.2 0 0 1 15 8.2V11h4.2A1.8 1.8 0 0 1 21 12.8V18h-1.6v2H17v-2H7v2H5.2v-2H3.5v-5.2A1.8 1.8 0 0 1 5.3 11H4zm3.2-3.2v3.2h5.4V7.8H7.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='M4 11V8.2A2.2 2.2 0 0 1 6.2 6h6.6A2.2 2.2 0 0 1 15 8.2V11h4.2A1.8 1.8 0 0 1 21 12.8V18h-1.6v2H17v-2H7v2H5.2v-2H3.5v-5.2A1.8 1.8 0 0 1 5.3 11H4zm3.2-3.2v3.2h5.4V7.8H7.2z'/%3E%3C/svg%3E");
}
.pv-pr__spec-icon--bath {
-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='M7.2 4.5A2.7 2.7 0 0 1 12.5 6v1.8H19V9.5H4.8V7.8H7.2V6c0-.8.6-1.5 1.4-1.5h.1c.3 0 .5.2.5.5v1.3h1.6V5A2.1 2.1 0 0 0 8.7 2.9h-.1A2.7 2.7 0 0 0 5.9 5.6v2.2h1.3V6c0-.8.4-1.5 1.3-1.5zm-3.4 7h16.4v3.2A3.8 3.8 0 0 1 16.4 18.5H7.6A3.8 3.8 0 0 1 3.8 14.7V11.5z'/%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='M7.2 4.5A2.7 2.7 0 0 1 12.5 6v1.8H19V9.5H4.8V7.8H7.2V6c0-.8.6-1.5 1.4-1.5h.1c.3 0 .5.2.5.5v1.3h1.6V5A2.1 2.1 0 0 0 8.7 2.9h-.1A2.7 2.7 0 0 0 5.9 5.6v2.2h1.3V6c0-.8.4-1.5 1.3-1.5zm-3.4 7h16.4v3.2A3.8 3.8 0 0 1 16.4 18.5H7.6A3.8 3.8 0 0 1 3.8 14.7V11.5z'/%3E%3C/svg%3E");
}
.pv-pr__spec-icon--size {
-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='M3.5 3.5h6.2v1.8H6.6l4.2 4.2-1.3 1.3-4.2-4.2v3.1H3.5V3.5zm10.8 0h6.2v6.2h-1.8V6.6l-4.2 4.2-1.3-1.3 4.2-4.2h-3.1V3.5zM9.5 14.2l1.3 1.3-4.2 4.2h3.1v1.8H3.5v-6.2h1.8v3.1l4.2-4.2zm5 0 4.2 4.2v-3.1h1.8v6.2h-6.2v-1.8h3.1l-4.2-4.2 1.3-1.3z'/%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='M3.5 3.5h6.2v1.8H6.6l4.2 4.2-1.3 1.3-4.2-4.2v3.1H3.5V3.5zm10.8 0h6.2v6.2h-1.8V6.6l-4.2 4.2-1.3-1.3 4.2-4.2h-3.1V3.5zM9.5 14.2l1.3 1.3-4.2 4.2h3.1v1.8H3.5v-6.2h1.8v3.1l4.2-4.2zm5 0 4.2 4.2v-3.1h1.8v6.2h-6.2v-1.8h3.1l-4.2-4.2 1.3-1.3z'/%3E%3C/svg%3E");
}
.pv-pr__card-footer {
margin-top: auto;
padding-top: 12px;
border-top: 1px solid var(--pv-pr-line);
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
}
.pv-pr__agent {
display: flex;
align-items: center;
gap: 10px;
min-width: 0;
}
.pv-pr__agent-avatar {
width: 36px;
height: 36px;
border-radius: 50%;
object-fit: cover;
flex: 0 0 auto;
background: var(--pv-pr-soft);
}
.pv-pr__agent-avatar--empty {
display: block;
background: linear-gradient(135deg, #cbd5e1, #e2e8f0);
}
.pv-pr__agent-meta {
display: flex;
flex-direction: column;
min-width: 0;
}
.pv-pr__agent-name {
display: inline-flex;
align-items: center;
gap: 5px;
font-size: 13px;
font-weight: 700;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.pv-pr__agent-check {
width: 14px;
height: 14px;
border-radius: 50%;
background: var(--pv-pr-green);
position: relative;
flex: 0 0 auto;
}
.pv-pr__agent-check::after {
content: '';
position: absolute;
left: 4px;
top: 3px;
width: 4px;
height: 7px;
border: solid #fff;
border-width: 0 2px 2px 0;
transform: rotate(45deg);
}
.pv-pr__agency {
font-size: 11px;
font-weight: 600;
color: var(--pv-pr-muted);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.pv-pr__view-cta {
flex: 0 0 auto;
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 34px;
padding: 0 12px;
border-radius: 10px;
background: rgba(34, 197, 94, 0.12);
color: #16a34a;
font-size: 12px;
font-weight: 800;
text-decoration: none;
white-space: nowrap;
}
.pv-pr__view-cta:hover {
background: var(--pv-pr-green);
color: #fff;
} .pv-pr__map {
width: 100%;
height: min(70vh, 640px);
border-radius: var(--pv-pr-radius);
overflow: hidden;
background: var(--pv-pr-soft);
box-shadow: var(--pv-pr-shadow);
}
.pv-pr__map .leaflet-control-attribution {
display: none;
}
.pv-pr-map-marker {
background: transparent !important;
border: 0 !important;
}
.pv-pr-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-pr-green);
color: #fff;
font-size: 12px;
font-weight: 800;
box-shadow: 0 4px 14px rgba(34, 197, 94, 0.35);
cursor: pointer;
}
.pv-pr-map-marker.is-active .pv-pr-map-marker__btn {
background: var(--pv-pr-ink);
} .pv-pr__empty {
padding: 64px 24px;
text-align: center;
background: #fff;
border-radius: var(--pv-pr-radius);
box-shadow: var(--pv-pr-shadow);
}
.pv-pr__empty-title {
margin: 0 0 8px;
font-size: 1.25rem;
font-weight: 800;
}
.pv-pr__empty-text {
margin: 0 0 18px;
color: var(--pv-pr-muted);
}
.pv-pr__empty-reset {
display: inline-flex;
min-height: 44px;
padding: 0 18px;
align-items: center;
border-radius: 12px;
background: var(--pv-pr-green);
color: #fff;
font-weight: 700;
text-decoration: none;
}
.pv-pr__pagination {
margin-top: 36px;
display: flex;
justify-content: center;
}
.pv-pr__pages {
display: flex;
gap: 8px;
margin: 0;
padding: 0;
list-style: none;
}
.pv-pr__page {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 42px;
height: 42px;
padding: 0 12px;
border-radius: 12px;
background: #fff;
border: 1px solid var(--pv-pr-line);
color: var(--pv-pr-ink);
font-size: 14px;
font-weight: 700;
text-decoration: none;
}
.pv-pr__page.is-active {
background: var(--pv-pr-green);
border-color: var(--pv-pr-green);
color: #fff;
}
}
@media (min-width: 1200px) {
.pv-pr__grid {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
}
@media (min-width: 992px) and (max-width: 1199.98px) {
.pv-pr__grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.pv-pr__category-list {
grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
}
.pv-pr__search {
grid-template-columns: 1fr 1fr;
}
.pv-pr__search-submit {
grid-column: 1 / -1;
margin: 0 16px 16px;
}
}