/* Status banner — the scrolling SOLD / LEASED / PENDING strip shown under the
   hero on a sold/leased/pending property page. Markup is generated from each
   property's data.json "status" (and optional "statusLabel") by build_static.py. */

.status-banner{height:15vh;overflow:hidden;display:flex;align-items:center;position:relative}
/* Continuous marquee — two identical halves; translating -50% loops seamlessly,
   so the strip is always full of text (never starts blank). */
.status-banner .scroll-text{display:flex;flex-wrap:nowrap;white-space:nowrap;font-size:4.5rem;font-weight:700;color:#fcfcfc;pointer-events:none;animation:bannerMarquee 40s linear infinite}
.status-banner .scroll-text span{flex:0 0 auto}
@keyframes bannerMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.status-banner .scroll-text{animation:none}}

.status-banner.is-sold{background-color:#8a2d31}     /* dark red — ≥4.5:1 vs #fcfcfc */
.status-banner.is-leased{background-color:#856a35}   /* muted gold — was #9a7b3f at 3.9:1, below AA */
.status-banner.is-pending{background-color:#6e6d6a}  /* slate gray — 4.9:1 against the #fcfcfc text (was #bab9b6 at 1.9:1, unreadable) */

@media(max-width:768px){
	.status-banner .scroll-text{font-size:2.5rem}
}
