/* Compact property discovery, shared by server-rendered and AJAX results. */
.portal-theme.portal-listing>.wrapper{background:#f5f5f2}
.portal-theme.portal-listing .sp-search-page{padding-bottom:40px;color:#171916}
.portal-theme.portal-listing .sp-discovery-head{padding:26px 0 22px;background:#fff;border-bottom:1px solid #e4e5df;position:relative;overflow:hidden}
.portal-theme.portal-listing .sp-discovery-head:before{content:'';position:absolute;width:320px;height:320px;right:-150px;top:-210px;border:45px solid #ffdf3626;border-radius:50%;pointer-events:none}
.portal-theme.portal-listing .sp-discovery-title{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px}
.portal-theme.portal-listing .sp-listing-eyebrow{font-size:9px;font-weight:800;letter-spacing:1.8px;color:#61531b;margin:0 0 9px;display:flex;align-items:center;gap:8px}
.portal-theme.portal-listing .sp-listing-eyebrow>span{width:6px;height:6px;background:#d2ac00;border-radius:50%;box-shadow:0 0 0 4px #ffdf3626}
.portal-theme.portal-listing #sp-listing-heading{font-size:clamp(25px,2.6vw,36px);font-weight:600;line-height:1.22;letter-spacing:-1.1px;padding:0;border:0;margin:0;color:#171916}
.portal-theme.portal-listing .sp-discovery-note{font-size:12px;line-height:1.6;margin:0;flex-shrink:0;color:#65675e}
.portal-theme.portal-listing .sp-discovery-note strong{color:#181a17;font-weight:600}
.portal-theme.portal-listing .sp-search-dock{border:1px solid #d9dbd2;background:#fff;box-shadow:0 6px 24px #171a1007;position:relative}
.portal-theme.portal-listing .sp-search-dock-top{display:flex;align-items:center;justify-content:space-between;padding:0 18px;background:#f8f8f5;border-bottom:1px solid #e2e3dc;gap:12px}
.portal-theme.portal-listing .sp-search-purpose{display:flex;gap:25px}
.portal-theme.portal-listing .sp-search-purpose button{position:relative;appearance:none;background:transparent;border:0;padding:13px 2px;color:#62665b;font-size:12px;font-weight:600;font-family:inherit;line-height:1.4}
.portal-theme.portal-listing .sp-search-purpose button:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:3px;background:#e6bd00;transform:scaleX(0);transition:transform .22s}
.portal-theme.portal-listing .sp-search-purpose button.active{color:#151713}
.portal-theme.portal-listing .sp-search-purpose button.active:after,.portal-theme.portal-listing .sp-search-purpose button:hover:after{transform:scaleX(1)}
.portal-theme.portal-listing .sp-search-dock-note{font-size:10px;color:#62675c}
.portal-theme.portal-listing .sp-results-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto 176px;gap:10px;align-items:center;margin:0;padding:12px}
.portal-theme.portal-listing .sp-search-field{display:flex;gap:12px;align-items:center;min-width:0;padding:0 12px;position:relative}
.portal-theme.portal-listing .sp-search-pin{font-size:30px;line-height:1;color:#806900;align-self:center}
.portal-theme.portal-listing .sp-search-field>div{flex:1;min-width:0}
.portal-theme.portal-listing .sp-search-field label{display:block;font-size:10px;font-weight:600;color:#54594b;letter-spacing:.2px;margin:0 0 3px}
.portal-theme.portal-listing #searchAutocomplete{font-family:inherit;background:transparent;box-shadow:none;border:0;min-height:26px;height:26px;margin:0;padding:0;width:100%;font-size:14px;color:#161915;outline-offset:3px}
.portal-theme.portal-listing #searchAutocomplete::placeholder{color:#656b5e;font-size:13px}
.portal-theme.portal-listing .sp-filter-button,.portal-theme.portal-listing .sp-search-submit{height:48px;display:flex;align-items:center;justify-content:center;gap:12px;font-family:inherit;font-size:12px;font-weight:700;padding:0 20px;border:1px solid #d3d7ca;background:#fff;color:#1d2217;transition:background .2s,transform .2s}
.portal-theme.portal-listing .sp-filter-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}
.portal-theme.portal-listing #sp-filter-count{background:#ffdf36;color:#171916;padding:2px 6px;font-size:10px;border-radius:10px}
.portal-theme.portal-listing .sp-search-submit{border-color:#ffdf36;background:#ffdf36;justify-content:space-between}
.portal-theme.portal-listing .sp-search-submit span{font-size:19px}
.portal-theme.portal-listing .sp-search-submit:hover{background:#ffe96b;transform:translateY(-1px)}
.portal-theme.portal-listing .sp-filter-button:hover{background:#f5f6ee}
.portal-theme.portal-listing .sp-quick-filters{display:flex;align-items:center;gap:8px;border-top:1px solid #eceee6;padding:10px 17px;flex-wrap:wrap}
.portal-theme.portal-listing .sp-quick-filters>span{font-size:8px;font-weight:700;letter-spacing:1.4px;color:#696e61;margin-right:3px}
.portal-theme.portal-listing .sp-quick-filters button{font:500 11px/1.4 Arial,sans-serif;color:#3e4535;border:1px solid #dce0d2;padding:6px 10px;background:#fff;border-radius:3px;display:flex;gap:16px;align-items:center;transition:border-color .2s,background .2s}
.portal-theme.portal-listing .sp-quick-filters button:hover,.portal-theme.portal-listing .sp-quick-filters button.is-filtered{border-color:#d1b325;background:#fffbed}
.portal-theme.portal-listing .sp-quick-filters>a{margin-left:auto;color:#555d49;font-size:10px;text-decoration:underline;text-underline-offset:3px}
.portal-theme.portal-listing .sp-results-container{padding-top:0}
.portal-theme.portal-listing #search-filter{padding:13px 0;margin:0;background:transparent}
.portal-theme.portal-listing .scroll-box,.portal-theme.portal-listing .scroll-wrap{border:0;background:transparent;padding:0;overflow:auto;white-space:nowrap}
.portal-theme.portal-listing .breadcrumbs ol{display:flex;align-items:center;gap:8px;padding:0;margin:0;list-style:none;font-size:10px;line-height:1.5}
.portal-theme.portal-listing .breadcrumbs ol li{margin:0;display:flex;gap:8px;align-items:center}
.portal-theme.portal-listing .breadcrumbs ol li+li:before{content:'›';color:#868d7c}
.portal-theme.portal-listing .breadcrumbs ol a{color:#59614f}
.portal-theme.portal-listing .breadcrumbs .fa{display:none}
.portal-theme.portal-listing .sp-results-layout{display:grid;grid-template-columns:minmax(0,1fr) 264px;gap:24px;align-items:start}
.portal-theme.portal-listing .property-listing-wrap{padding:0;min-width:0}
.portal-theme.portal-listing .sp-results-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 15px;margin:0;border:0;min-height:39px}
.portal-theme.portal-listing .sp-results-summary>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.portal-theme.portal-listing #sp-results-count{font-size:13px;font-weight:700;color:#171c14}
.portal-theme.portal-listing .sp-results-indicator{width:6px;height:6px;background:#a78a00;border-radius:50%}
.portal-theme.portal-listing .sp-results-description{font-size:10px;color:#646c59;padding-left:9px;border-left:1px solid #cfd4c5}
.portal-theme.portal-listing .sp-result-view{font-size:10px;color:#4c5541;display:flex;gap:6px;align-items:center;white-space:nowrap}
.portal-theme.portal-listing .sp-result-view>span{font-size:17px}
.portal-theme.portal-listing .property_result{display:grid;gap:14px}
.portal-theme.portal-listing .sp-server-card{display:grid;grid-template-columns:minmax(210px,35%) minmax(0,1fr);border:1px solid #dfe2d7;background:#fff;min-height:230px;margin:0;position:relative;transition:border-color .25s,box-shadow .25s,transform .25s;overflow:hidden}
.portal-theme.portal-listing .sp-server-card:hover{border-color:#c6b444;box-shadow:0 8px 28px #1c24100c;transform:translateY(-2px)}
.portal-theme.portal-listing .sp-server-photo{position:relative;display:block;overflow:hidden;min-height:230px;background:#e5e8dd}
.portal-theme.portal-listing .sp-server-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .7s cubic-bezier(.2,.6,.3,1)}
.portal-theme.portal-listing .sp-server-card:hover .sp-server-photo img{transform:scale(1.035)}
.portal-theme.portal-listing .sp-server-photo>span{position:absolute;left:10px;top:10px;background:#171b16;color:#fff;padding:5px 9px;font-size:9px;font-weight:600;letter-spacing:.3px;z-index:1}
.portal-theme.portal-listing .sp-server-photo .sp-result-tier{top:auto;bottom:10px;background:#ffdf36;color:#171b16}
.portal-theme.portal-listing .sp-result-premium{border-top:2px solid #d6b100}
.portal-theme.portal-listing .sp-result-featured{border-top:2px solid #171b16}
.portal-theme.portal-listing .sp-server-copy{padding:18px 20px;display:flex;flex-direction:column;min-width:0}
.portal-theme.portal-listing .sp-server-type{font-size:9px;font-weight:700;color:#666f58;letter-spacing:.7px;text-transform:uppercase;margin:0 0 6px}
.portal-theme.portal-listing #properties .sp-server-price{font-size:25px;line-height:1.2;font-weight:700;letter-spacing:-.7px;color:#141911;margin:0 0 8px}
.portal-theme.portal-listing .sp-server-price small{font-size:11px;font-weight:400;letter-spacing:0;color:#575f4c}
.portal-theme.portal-listing #properties .sp-server-copy h2{border:0;padding:0;font-size:15px;font-weight:600;line-height:1.45;letter-spacing:-.25px;margin:0 0 6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.portal-theme.portal-listing .sp-server-copy h2 a{color:#1b2116}
.portal-theme.portal-listing .sp-server-copy>p.sp-result-address{font-size:11px;line-height:1.5;color:#646c58;margin:0 0 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.portal-theme.portal-listing .sp-server-copy ul{list-style:none;display:flex;gap:6px 12px;flex-wrap:wrap;padding:0;margin:0 0 14px;font-size:10px;color:#414b35;line-height:1.5}
.portal-theme.portal-listing .sp-server-copy ul li+li{border-left:1px solid #dce1d2;padding-left:12px}
.portal-theme.portal-listing .sp-server-agent{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #eceee5;padding-top:10px;margin-top:auto;font-size:10px;color:#535e45;min-width:0}
.portal-theme.portal-listing .sp-server-agent>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.portal-theme.portal-listing .sp-server-agent a{font-size:10px;font-weight:700;color:#252d1c;white-space:nowrap;text-decoration:underline;text-decoration-color:#e3bd0e;text-decoration-thickness:2px;text-underline-offset:4px}
.portal-theme.portal-listing .sp-search-sidebar{display:grid;gap:16px;padding-top:39px;min-width:0}
.portal-theme.portal-listing .sp-search-aside-card{padding:22px;border:1px solid #dce1d1;background:#fff}
.portal-theme.portal-listing .sp-aside-kicker{font-size:8px;font-weight:700;letter-spacing:1.4px;line-height:1.8;margin:0 0 12px;color:#667154}
.portal-theme.portal-listing .sp-search-aside-card h2{font-size:23px;line-height:1.2;letter-spacing:-.7px;margin:0 0 12px;padding:0;border:0}
.portal-theme.portal-listing .sp-search-aside-card>p:not([class]){font-size:11px;line-height:1.8;color:#d0d6c6;margin:0 0 16px}
.portal-theme.portal-listing .sp-budget-card{background:#171d14;border:0;color:#fff;overflow:hidden}
.portal-theme.portal-listing .sp-budget-card .sp-aside-kicker{color:#ffdf36}
.portal-theme.portal-listing .sp-budget-card h2{color:#fff}
.portal-theme.portal-listing .sp-search-aside-card>a{font-size:11px;font-weight:600;display:flex;justify-content:space-between;border-top:1px solid #dce1d1;padding-top:13px;color:#292f21}
.portal-theme.portal-listing .sp-budget-card>a{color:#ffdf36;border-color:#48503e}
.portal-theme.portal-listing .sp-budget-graphic{height:72px;display:flex;align-items:flex-end;gap:8px;margin:0 0 20px;position:relative;border-bottom:1px solid #566047;padding:0 8px}
.portal-theme.portal-listing .sp-budget-graphic>span{width:25px;background:linear-gradient(0deg,#ffdf362c,#ffdf36a6);transform-origin:bottom;animation:sp-budget-rise .8s ease both}
.portal-theme.portal-listing .sp-budget-graphic>span:nth-child(1){height:22%;animation-delay:.05s}.portal-theme.portal-listing .sp-budget-graphic>span:nth-child(2){height:36%;animation-delay:.12s}.portal-theme.portal-listing .sp-budget-graphic>span:nth-child(3){height:51%;animation-delay:.19s}.portal-theme.portal-listing .sp-budget-graphic>span:nth-child(4){height:70%;animation-delay:.26s}.portal-theme.portal-listing .sp-budget-graphic>span:nth-child(5){height:93%;animation-delay:.33s}
.portal-theme.portal-listing .sp-budget-graphic i{position:absolute;right:0;top:4px;font-size:10px;color:#ffdf36;font-style:normal;border:1px solid #667044;padding:6px;border-radius:50%}
.portal-theme.portal-listing .sp-search-tips h2{font-size:20px;color:#20261a}
.portal-theme.portal-listing .sp-search-tips ol{list-style:none;padding:0;margin:20px 0}
.portal-theme.portal-listing .sp-search-tips li{display:flex;gap:10px;margin:0 0 17px}
.portal-theme.portal-listing .sp-search-tips li>span{color:#877100;font-size:10px;font-weight:700;padding-top:1px}
.portal-theme.portal-listing .sp-search-tips li strong{font-size:11px;font-weight:600;color:#313a24}
.portal-theme.portal-listing .sp-search-tips li p{font-size:10px;line-height:1.7;margin:4px 0 0;color:#626e54}
.portal-theme.portal-listing .sp-search-agent-link{padding:20px;display:grid;gap:12px;border-left:2px solid #e0bd18;background:#eeefe7;color:#263019}
.portal-theme.portal-listing .sp-search-agent-link>span{font-size:8px;letter-spacing:1px;line-height:1.6;color:#626c52}
.portal-theme.portal-listing .sp-search-agent-link strong{font-size:18px;font-weight:500;letter-spacing:-.4px;line-height:1.3}
.portal-theme.portal-listing .sp-search-agent-link b{font-size:10px}
.portal-theme.portal-listing #specialist{padding:0}
.portal-theme.portal-listing #specialist[hidden],.portal-theme.portal-listing [hidden]{display:none!important}
.portal-theme.portal-listing .sp-specialist-group:has(div:empty){display:none}
.portal-theme.portal-listing .city_specialist_name,.portal-theme.portal-listing .project_specialist_name{font-size:15px;line-height:1.5;margin:0 0 8px;padding:0;border:0}
.portal-theme.portal-listing .city_specialist_count,.portal-theme.portal-listing .project_specialist_count{font-size:11px;color:#58614d}
.portal-theme.portal-listing .specialist_card{display:flex;gap:10px;background:#fff;border:1px solid #dce1d2;padding:12px;margin:8px 0;color:#252e1c}
.portal-theme.portal-listing .specialist_avatar{background-size:cover;background-position:center;object-fit:cover;width:44px;height:44px;border-radius:50%}
.portal-theme.portal-listing .specialist_agent_info{min-width:0;flex:1}
.portal-theme.portal-listing .specialist_agent_info p{font-size:10px;line-height:1.6;margin:0;overflow:hidden;text-overflow:ellipsis}
.portal-theme.portal-listing .specialist_agent_name{font-weight:700;font-size:12px!important}
.portal-theme.portal-listing .specialist_agent_contact{background:#ffdf36;border:0;color:#171916;padding:5px 8px;font-size:10px;margin-top:6px}
.portal-theme.portal-listing #pagination{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin:26px 0 10px;padding:0;list-style:none}
.portal-theme.portal-listing #pagination a{display:flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:8px 12px;border:1px solid #d3d9c8;background:#fff;color:#3c482e;font-size:11px;border-radius:0}
.portal-theme.portal-listing #pagination .active a{color:#171b14;background:#ffdf36;border-color:#ffdf36}
.portal-theme.portal-listing #pagination .disabled a{color:#747b6b;background:#eeefe9}
.portal-theme.portal-listing .sp-empty-results{border:1px solid #dce1d1;padding:32px;background:#fff}
.portal-theme.portal-listing .sp-empty-results h2{font-size:24px;margin:0 0 12px}
.portal-theme.portal-listing .sp-empty-results p{font-size:13px;line-height:1.8;color:#5c6650}
.portal-theme.portal-listing .sp-empty-results a{color:#534600;border-bottom:2px solid #e4c227;font-size:12px}
.portal-theme.portal-listing button:focus-visible,.portal-theme.portal-listing a:focus-visible{outline:2px solid #8c7200;outline-offset:4px}
.portal-theme.portal-listing .sp-result-enter{animation:sp-result-in .45s cubic-bezier(.2,.6,.3,1) both;animation-delay:var(--sp-result-delay,0ms)}
.portal-theme.portal-listing .sp-search-page.is-loading .property_result{opacity:.45;transition:opacity .2s}
@keyframes sp-result-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes sp-budget-rise{from{transform:scaleY(.1)}to{transform:scaleY(1)}}
@media(min-width:1400px){.portal-theme.portal-listing .sp-search-page .container{width:1280px}.portal-theme.portal-listing .sp-results-layout{grid-template-columns:minmax(0,1fr) 280px;gap:28px}.portal-theme.portal-listing .sp-server-card{grid-template-columns:300px minmax(0,1fr)}}
@media(max-width:1199px){.portal-theme.portal-listing .sp-results-layout{grid-template-columns:minmax(0,1fr) 235px;gap:20px}.portal-theme.portal-listing .sp-server-card{grid-template-columns:210px minmax(0,1fr)}.portal-theme.portal-listing .sp-server-copy{padding:16px}.portal-theme.portal-listing .sp-results-description{display:none}.portal-theme.portal-listing .sp-search-aside-card{padding:19px}}
@media(max-width:991px){.portal-theme.portal-listing .sp-results-layout{grid-template-columns:minmax(0,1fr)}.portal-theme.portal-listing .sp-search-sidebar{padding:4px 0 0;grid-template-columns:1fr 1fr;align-items:start}.portal-theme.portal-listing .sp-search-agent-link{grid-column:1/-1}.portal-theme.portal-listing .sp-discovery-head{padding-top:22px}.portal-theme.portal-listing .sp-server-card{grid-template-columns:260px minmax(0,1fr)}}
@media(max-width:600px){.portal-theme.portal-listing .sp-discovery-head{padding:19px 0 15px}.portal-theme.portal-listing .sp-discovery-title{margin-bottom:16px}.portal-theme.portal-listing .sp-discovery-note,.portal-theme.portal-listing .sp-search-dock-note{display:none}.portal-theme.portal-listing #sp-listing-heading{font-size:26px;letter-spacing:-.8px}.portal-theme.portal-listing .sp-search-dock-top{padding:0 14px}.portal-theme.portal-listing .sp-search-purpose{gap:25px}.portal-theme.portal-listing .sp-results-search-form{grid-template-columns:1fr auto;gap:10px;padding:12px}.portal-theme.portal-listing .sp-search-field{grid-column:1/-1;padding:2px 2px 11px;border-bottom:1px solid #e0e4d8}.portal-theme.portal-listing .sp-filter-button{padding:0 16px;justify-content:flex-start}.portal-theme.portal-listing .sp-search-submit{padding:0 20px;gap:24px}.portal-theme.portal-listing .sp-quick-filters{gap:6px;padding:10px 12px}.portal-theme.portal-listing .sp-quick-filters>span{display:none}.portal-theme.portal-listing .sp-quick-filters button{font-size:10px;padding:6px 8px;gap:10px}.portal-theme.portal-listing .sp-quick-filters>a{margin-left:0;font-size:10px}.portal-theme.portal-listing .sp-results-summary{padding-bottom:12px;min-height:34px}.portal-theme.portal-listing .sp-server-card{grid-template-columns:1fr}.portal-theme.portal-listing .sp-server-photo{min-height:0;aspect-ratio:16/10}.portal-theme.portal-listing .sp-server-copy{padding:17px}.portal-theme.portal-listing #properties .sp-server-price{font-size:25px}.portal-theme.portal-listing #properties .sp-server-copy h2{font-size:16px}.portal-theme.portal-listing .sp-server-copy>p.sp-result-address{font-size:12px}.portal-theme.portal-listing .sp-server-copy ul,.portal-theme.portal-listing .sp-server-agent{font-size:11px}.portal-theme.portal-listing .sp-server-agent a{font-size:11px}.portal-theme.portal-listing .sp-search-sidebar{grid-template-columns:1fr}.portal-theme.portal-listing .sp-search-aside-card{padding:24px}.portal-theme.portal-listing .sp-budget-card h2 br{display:none}.portal-theme.portal-listing .sp-budget-graphic{height:58px}.portal-theme.portal-listing #pagination a{min-width:32px;padding:8px}.portal-theme.portal-listing .sp-specialist-group{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.portal-theme.portal-listing *,.portal-theme.portal-listing *:before,.portal-theme.portal-listing *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.portal-theme.portal-listing .sp-server-photo .sp-result-photo-missing{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#59634b;background:#e5e8dd;font-size:12px;padding:20px;text-align:center}
.portal-theme.portal-listing .sp-server-agent .sp-result-call{color:#515e3f;margin-left:auto;text-decoration:none;border:1px solid #d9dfcf;padding:5px 8px;line-height:1.3}
.portal-theme.portal-listing .sp-results-search-form.is-searching .sp-search-submit{background:#f8ebac;border-color:#f8ebac}
.portal-theme.portal-listing .sp-results-search-form.is-searching .sp-search-submit span{animation:sp-search-pulse .8s ease-in-out infinite alternate}
@keyframes sp-search-pulse{to{opacity:.3;transform:translate(2px,-2px)}}

/* Bound every card to its result track, including the first premium listing. */
.portal-theme.portal-listing .property_result{grid-template-columns:minmax(0,1fr);min-width:0;width:100%}
.portal-theme.portal-listing .sp-server-card{min-width:0;width:100%;max-width:100%;isolation:isolate}
.portal-theme.portal-listing .sp-server-photo{min-width:0;max-width:100%;contain:paint}
.portal-theme.portal-listing .sp-server-photo img{display:block;max-width:100%;max-height:100%;margin:0;border:0}
.portal-theme.portal-listing .sp-server-copy{max-width:100%;overflow:hidden}
.portal-theme.portal-listing .sp-server-agent{flex-wrap:wrap}
.portal-theme.portal-listing .sp-server-agent>span{flex:1 1 100px;min-width:0}
.portal-theme.portal-listing .sp-server-copy h2 a{overflow-wrap:anywhere}
