/* FOUND IN SA - standalone homepage sections */
.sab-home{--home-green:#087443;--home-blue:#2563eb;--home-text:#172033;--home-muted:#718096;--home-border:#e6ebef;background:transparent;color:var(--home-text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif}
.sab-home *{box-sizing:border-box}
.sab-home a{text-decoration:none}
.sab-home-standalone-section{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:30px 0 0}
.sab-home-section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px}
.sab-home-section-head h2{font-size:22px;line-height:1.2;font-weight:800;margin:0;color:#172033}

/* Business card carousel. The controls intentionally sit at the far right of the heading. */
.sab-home-carousel-head{align-items:center}
.sab-home-section-title{min-width:0}
.sab-home-carousel-controls{margin-left:auto;display:flex;align-items:center;gap:7px;flex:0 0 auto}
.sab-home-carousel-btn{width:34px;height:34px;border:1px solid #d5deea;border-radius:50%;background:#fff;color:#475569;display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 8px rgba(16,24,40,.06);transition:.15s;padding:0}
.sab-home-carousel-btn:hover:not(:disabled){background:#eef8f2;color:var(--home-green);border-color:#bfe3ce}
.sab-home-carousel-btn:disabled{opacity:.35;cursor:default;box-shadow:none}
.sab-home-business-carousel{width:100%;overflow:hidden}
.sab-home-business-track{display:flex;gap:16px;width:100%;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 2px 8px}
.sab-home-business-track::-webkit-scrollbar{display:none}
.sab-home-business-track>.sab-bc,.sab-home-business-track>.sab-home-load-more-card{flex:0 0 calc((100% - 32px)/3);width:calc((100% - 32px)/3);min-width:0;scroll-snap-align:start}
.sab-home-business-track>.sab-home-empty{flex:1 0 100%}

/* Recently Listed uses the exact list-mode card from the Businesses page. */
.sab-home-feed-head{align-items:center}
.sab-home-tabs{display:flex;gap:18px;margin-top:7px}
.sab-home-tabs button{border:0;background:none;padding:0 0 6px;color:#77818b;font-size:11px;font-weight:700;cursor:pointer;border-bottom:2px solid transparent}
.sab-home-tabs button.is-active{color:var(--home-green);border-color:var(--home-green)}
.sab-home-feed-carousel{width:100%;overflow:hidden}
.sab-home-feed-track{display:flex;gap:16px;width:100%;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 2px 8px}
.sab-home-feed-track::-webkit-scrollbar{display:none}
.sab-home-feed-track>.sab-bc,.sab-home-feed-track>.sab-home-load-more-card{flex:0 0 calc((100% - 32px)/3);min-width:0;width:calc((100% - 32px)/3);scroll-snap-align:start}
.sab-home-load-more-card{min-height:320px;border:1px dashed #b9d9c6;border-radius:12px;background:#f3fbf6;color:#087443;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:22px;text-align:center;cursor:pointer;transition:.18s ease}
.sab-home-load-more-card:hover{background:#eaf7ef;border-color:#8fc6a5;transform:translateY(-2px)}
.sab-home-load-more-card.is-loading{opacity:.55;pointer-events:none}
.sab-home-load-more-icon{width:46px;height:46px;border-radius:50%;background:#dff2e6;display:grid;place-items:center;font-size:17px}
.sab-home-load-more-card strong{font-size:14px;font-weight:800}
.sab-home-load-more-card small{font-size:10px;color:#718096}
.sab-home-empty{width:100%;border:1px dashed #dce5e7;border-radius:12px;padding:35px;text-align:center;color:#7c8790;font-size:13px;background:#fff}

/* Popular cities */
.sab-home-city-carousel{width:100%;overflow:hidden}
.sab-home-city-track{display:flex;gap:16px;width:100%;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 2px 8px}
.sab-home-city-track::-webkit-scrollbar{display:none}
.sab-home-city-track>.sab-home-city{flex:0 0 calc((100% - 64px)/5);min-width:0;scroll-snap-align:start}
.sab-home-city{position:relative;display:block;aspect-ratio:1/.98;border-radius:11px;overflow:hidden;background:#dce8e4;color:#fff}
.sab-home-city img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}
.sab-home-city-placeholder{width:100%;height:100%;display:grid;place-items:center;color:#8ea39b;font-size:42px}
.sab-home-city-overlay{position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.78))}
.sab-home-city-label{position:absolute;left:11px;right:8px;bottom:9px}
.sab-home-city-label strong{display:block;font-size:13px}
.sab-home-city-label small{display:block;font-size:9px;margin-top:2px;opacity:.9}
.sab-home-city:hover img{transform:scale(1.04)}

@media(max-width:1250px){
	.sab-home-business-track>.sab-bc,.sab-home-business-track>.sab-home-load-more-card{flex-basis:calc((100% - 32px)/3);width:calc((100% - 32px)/3)}
	.sab-home-feed-track>.sab-bc,.sab-home-feed-track>.sab-home-load-more-card{flex-basis:calc((100% - 32px)/3);width:calc((100% - 32px)/3)}
	.sab-home-city-track>.sab-home-city{flex-basis:calc((100% - 48px)/4)}
}
@media(max-width:1050px){
	.sab-home-business-track>.sab-bc,.sab-home-business-track>.sab-home-load-more-card{flex-basis:calc((100% - 32px)/3);width:calc((100% - 32px)/3)}
	.sab-home-feed-track>.sab-bc,.sab-home-feed-track>.sab-home-load-more-card{flex-basis:calc((100% - 32px)/3);width:calc((100% - 32px)/3)}
	.sab-home-city-track>.sab-home-city{flex-basis:calc((100% - 32px)/3)}
}
@media(max-width:780px){
	.sab-home-standalone-section{width:min(100% - 24px,560px);padding-top:25px}
	.sab-home-section-head h2{font-size:19px}
	.sab-home-business-track,.sab-home-feed-track,.sab-home-city-track{gap:12px}
	.sab-home-business-track>.sab-bc,.sab-home-business-track>.sab-home-load-more-card{flex-basis:calc((100% - 12px)/2);width:calc((100% - 12px)/2)}
	.sab-home-feed-track>.sab-bc,.sab-home-feed-track>.sab-home-load-more-card{flex-basis:calc((100% - 12px)/2);width:calc((100% - 12px)/2)}
	.sab-home-city-track>.sab-home-city{flex-basis:calc((100% - 12px)/2)}
	.sab-home-carousel-btn{width:31px;height:31px}
	.sab-home-city-label{left:7px;bottom:7px}
	.sab-home-city-label strong{font-size:10px}
	.sab-home-city-label small{font-size:7px}
}
@media(max-width:520px){
	.sab-home-business-track>.sab-bc,.sab-home-business-track>.sab-home-load-more-card{flex-basis:calc((100% - 6px)/1.5);width:calc((100% - 6px)/1.5)}
	.sab-home-feed-track>.sab-bc,.sab-home-feed-track>.sab-home-load-more-card{flex-basis:calc((100% - 6px)/1.5);width:calc((100% - 6px)/1.5)}
	.sab-home-city-track>.sab-home-city{flex-basis:calc((100% - 6px)/1.5)}
	.sab-home-tabs{gap:11px;overflow:auto}
	.sab-home-tabs button{font-size:10px;white-space:nowrap}
}
.sab-home-carousel-head .sab-home-clear-recent{margin-left:auto;border:0;background:transparent;color:#718096;font-size:11px;font-weight:700;cursor:pointer;padding:5px 8px;white-space:nowrap}
.sab-home-carousel-head .sab-home-clear-recent:hover{color:#b91c1c}
.sab-home-carousel-head .sab-home-carousel-controls{margin-left:auto}
@media(max-width:520px){.sab-home-carousel-head .sab-home-clear-recent{font-size:10px;padding:4px}.sab-home-carousel-head{gap:6px}}

/* Most Searched reusable shortcode */
.sab-most-searched{padding-top:18px;padding-bottom:2px}
.sab-most-searched-head{margin-bottom:14px}
.sab-most-searched-head h2{margin:0;font-size:22px;line-height:1.2;font-weight:800;color:#172033}
.sab-most-searched-terms{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.sab-most-searched-term{display:inline-flex;align-items:center;gap:9px;min-height:38px;padding:0 16px;border-radius:999px;background:#eaf7f1;color:#172033;border:1px solid transparent;font-size:13px;font-weight:650;white-space:nowrap;text-decoration:none;transition:background .15s ease,transform .15s ease,border-color .15s ease}
.sab-most-searched-term i{color:#087443;font-size:11px}
.sab-most-searched-term:hover{background:#def1e7;border-color:#c6e6d5;transform:translateY(-1px);color:#087443}
@media(max-width:780px){.sab-most-searched{padding-top:14px}.sab-most-searched-head h2{font-size:19px}.sab-most-searched-terms{gap:8px}.sab-most-searched-term{min-height:35px;padding:0 13px;font-size:12px}}
