/* Property listing layout, matching the homepage cards and reference sidebar. */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.listing-page{padding-top:32px;padding-bottom:55px}.listing-layout{display:grid;grid-template-columns:300px minmax(0,1fr);align-items:start;gap:26px}.listing-filter{position:sticky;top:122px;max-height:calc(100vh - 146px);max-height:calc(100dvh - 146px);overflow-y:auto;overscroll-behavior:contain;background:white;padding:20px;border-radius:8px;scrollbar-width:thin;scrollbar-color:#aaa transparent}.listing-filter fieldset{margin:0 0 24px;padding:0;border:0;min-width:0}.listing-filter legend,.filter-field{font-size:16px;font-weight:600;color:#d70000;margin-bottom:14px;width:100%}.filter-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:24px}.filter-heading h2{font-size:21px;color:#505050;margin:0}.listing-view-buttons{display:flex;gap:10px}.listing-view-buttons button{display:grid;place-items:center;width:42px;height:42px;border:1px solid #f0aaaa;border-radius:6px;background:transparent;color:#d70000;cursor:pointer}.listing-view-buttons button:hover,.listing-view-buttons button[aria-pressed="true"]{background:#fff0f0}.listing-filter svg,.listing-card svg,.detail-facts svg,.property-detail-heading svg,.listing-mobile-toolbar svg{width:17px;height:17px;flex-shrink:0}.listing-search{position:relative;display:block;margin-bottom:24px}.listing-search svg{position:absolute;left:12px;top:14px;color:#818681}.listing-filter input:not([type="checkbox"]):not([type="radio"]),.listing-filter select{width:100%;min-width:0;background:transparent;border:1px solid #f0aaaa;border-radius:6px;min-height:44px;padding:10px 12px;color:#5d5d5d;font-size:14px}.listing-search input{padding-left:36px!important}.listing-filter input::placeholder{color:#939393}.featured-toggle{display:flex;align-items:center;gap:8px;background:#fff4f4;padding:8px;border-radius:6px;font-size:13px;color:#666;margin-bottom:24px;cursor:pointer}.featured-toggle input{accent-color:#d70000;width:17px;height:17px;margin:0}.purpose-options{display:flex;flex-wrap:wrap;gap:10px}.purpose-options label,.type-options label{position:relative;cursor:pointer}.purpose-options input,.type-options input{position:absolute;opacity:0;width:1px;height:1px}.purpose-options label>span{display:block;border:1px solid #f0aaaa;border-radius:5px;padding:3px 11px;font-size:12px;color:#666;line-height:1.5}.purpose-options input:checked+span{background:#d70000;color:#fff;border-color:#d70000}.purpose-options input:focus-visible+span,.type-options input:focus-visible+span{outline:2px solid #d70000;outline-offset:3px}.type-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.type-options label>span{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid #f0aaaa;border-radius:6px;padding:9px 8px;min-height:72px;color:#626262;font-size:11px}.type-options label:hover>span,.type-options input:checked+span{background:#fff0f0;color:#d70000;border-color:#d70000}.type-options label svg{width:18px;height:18px}.filter-field{display:block;margin-bottom:24px}.filter-field input,.filter-field select{display:block;margin-top:12px;font-weight:400}.filter-field small{display:block;font-size:10px;font-weight:400;color:#888;margin-top:5px}.price-legend{display:flex;justify-content:space-between;gap:8px}.price-legend span{font-size:11px;font-weight:400;margin-left:auto;align-self:center}.price-inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px}.filter-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.filter-actions .button{padding-inline:14px}.filter-actions>a{font-size:12px;color:#666;text-underline-offset:3px}.listing-demo-note{color:#888;font-size:10px;line-height:1.5;margin:18px 0 0}.listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.listing-card{min-width:0;border:1px solid #f0aaaa;border-radius:7px;overflow:hidden;background:#fff;box-shadow:0 3px 7px #00000005;transition:box-shadow .2s,transform .2s}.listing-card:hover{box-shadow:0 7px 22px #00000012;transform:translateY(-2px)}.listing-photo{position:relative;display:block;aspect-ratio:1.53;overflow:hidden;background:#eee}.listing-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.listing-card:hover .listing-photo img{transform:scale(1.035)}.listing-badge{position:absolute;left:15px;top:14px;border-radius:6px;padding:3px 11px;background:#d70000;color:#fff;font-size:12px;font-weight:600;line-height:1.7}.listing-card-content{padding:15px 16px}.listing-card h2{font-size:18px;font-weight:500;line-height:1.4;margin:0 0 12px;letter-spacing:0}.listing-card h2 a{color:#202020;text-decoration:none}.listing-card h2 a:hover{color:#d70000;text-decoration:underline;text-underline-offset:4px}.listing-city{display:flex;align-items:center;gap:5px;font-size:12px;color:#757575;margin:0 0 12px;line-height:1.4}.listing-city svg{color:#d70000;width:14px;height:14px}.listing-facts{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px;font-size:11px;color:#717171;padding-bottom:14px;border-bottom:1px solid #f0aaaa;line-height:1.4}.listing-facts>span{display:flex;align-items:center;gap:5px;white-space:nowrap}.listing-facts svg{color:#d70000;width:14px;height:14px}.listing-price{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:13px;flex-wrap:wrap}.listing-price>p{margin:0;color:#202020;font-size:17px;line-height:1.4;font-weight:600}.listing-price small{font-size:12px;font-weight:400;color:#8c938e}.listing-price>span{padding:4px 9px;background:#fff4f4;color:#202020;border-radius:5px;font-size:10px}.listing-count{font-size:12px;color:#777;margin-top:20px}.listing-count>span{color:#999}.listing-empty{background:white;border:1px solid #eee;border-radius:8px;padding:40px}.listing-empty h2{font-size:23px}.listing-empty p{color:#777}.listing-mobile-toolbar{display:none}.listing-map{background:#fff;padding:16px;border-radius:8px;border:1px solid #f0aaaa;margin-bottom:24px}.listing-map>div{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.listing-map h2{font-size:20px;margin:0}.listing-map label{font-size:12px}.listing-map select{border:1px solid #f0aaaa;border-radius:4px;padding:6px;background:transparent;color:inherit}.listing-map iframe{display:block;width:100%;height:350px;border:0;border-radius:4px;margin-top:16px}.listing-map p{font-size:11px;color:#888;margin-bottom:0}.page-add{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;background:#d70000;color:white;border-radius:6px;white-space:nowrap;text-decoration:none;font-size:14px;font-weight:600}.page-add svg{width:20px;height:20px;background:white;color:#d70000;border-radius:4px;padding:2px}.page-add:hover{background:#b80000}.page-nav{margin-inline:auto}.page-actions{flex-shrink:0}.property-detail{padding:35px 0}.property-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:25px 0}.property-detail h1{font-size:clamp(29px,4vw,48px);margin:16px 0}.detail-price{color:#202020;font-size:28px;white-space:nowrap}.detail-price small{display:block;color:#888;font-size:14px}.property-detail-image{width:100%;max-height:580px;object-fit:cover;border-radius:12px;display:block}.property-detail-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:30px}.detail-facts{display:flex;flex-wrap:wrap;gap:24px}.detail-facts>span{display:flex;align-items:center;gap:8px}.property-detail-bottom .muted{max-width:680px}
html[data-site-theme="dark"] :is(.listing-filter,.listing-card,.listing-map,.listing-empty){background:#252525;border-color:#614040}html[data-site-theme="dark"] :is(.featured-toggle,.type-options input:checked+span,.listing-price>span){background:#382525}html[data-site-theme="dark"] .listing-price>span{color:#fff}html[data-site-theme="dark"] :is(.listing-filter input,.listing-filter select,.type-options label>span,.purpose-options label>span,.listing-city,.listing-facts,.filter-heading h2){color:#ccc}html[data-site-theme="dark"] :is(.listing-card h2 a,.listing-price>p){color:#fff}html[data-site-theme="dark"] :is(.filter-field,.listing-filter legend){color:#ff7777}html[data-site-theme="dark"] .listing-card h2 a:hover{color:#ff7777}
@media(min-width:1200px) and (max-width:1400px){.listing-layout{grid-template-columns:270px minmax(0,1fr);gap:22px}.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-nav{gap:12px}.page-nav a{font-size:13px}.page-header-inner{gap:16px}.page-actions{gap:9px}}
@media(max-width:1199.98px){.listing-layout{grid-template-columns:250px minmax(0,1fr);gap:20px}.listing-filter{top:105px;max-height:calc(100dvh - 125px);padding:16px}.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.listing-card h2{font-size:17px}.listing-facts{font-size:10px}.listing-page{padding-top:22px}.listing-card-content{padding:13px}.page-actions{display:none}}
@media(max-width:767.98px){.listing-layout{display:block}.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.listing-filter{display:none;position:static;max-height:none;margin-bottom:20px}.listing-filter.is-open{display:block}.listing-mobile-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;font-size:13px;color:#777}.filter-mobile-button{display:flex;align-items:center;gap:7px;padding:9px 14px;border:1px solid #f0aaaa;background:#fff;color:#d70000;border-radius:6px;cursor:pointer}.type-options{grid-template-columns:repeat(3,minmax(0,1fr))}.type-options label>span{font-size:13px}.listing-price>p{font-size:16px}.listing-card h2{font-size:16px}.property-detail-heading,.property-detail-bottom{align-items:flex-start;flex-direction:column}.detail-price{font-size:24px}.listing-map iframe{height:280px}.listing-count>span{display:block}.listing-photo{aspect-ratio:1.45}}
@media(max-width:479.98px){.listing-grid{grid-template-columns:1fr}.listing-card h2{font-size:20px}.listing-card-content{padding:17px}.listing-facts{font-size:12px;gap:9px}.listing-price>p{font-size:19px}.listing-price small{font-size:14px}.listing-city{font-size:13px}.listing-price>span{font-size:11px}.listing-photo{aspect-ratio:1.55}}
@media(prefers-reduced-motion:reduce){.listing-card,.listing-photo img{transition:none!important}}

/* Shared rating link for property and project cards, including home sections. */
.listing-card-rating{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:0 0 13px;color:var(--rm-home-ink,#30343d);text-decoration:none;font-size:12px;line-height:1.6;width:fit-content}
.listing-card-rating:hover{color:#d70000}
.listing-card-rating:focus-visible{outline:2px solid #d70000;outline-offset:4px;border-radius:2px}
.listing-card-rating-stars{position:relative;display:inline-block;flex:none;color:#959ca6;font-size:17px;line-height:1;letter-spacing:1px;white-space:nowrap}
.listing-card-rating-fill{position:absolute;left:0;top:0;overflow:hidden;color:#d58b08;white-space:nowrap;height:100%}
.listing-card-rating strong{font-size:12px;font-weight:650;color:inherit}
.listing-card-rating-count{color:var(--rm-home-muted,#697380);font-size:11px}
html[data-site-theme=dark] .listing-card-rating{color:#e5e7eb}
html[data-site-theme=dark] .listing-card-rating-count{color:#b4bdc8}
