/* City availability controls for the public listings page. */
.city-browser{max-width:var(--max);margin:0 auto;padding:38px 5vw 0}.city-browser__intro{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-bottom:18px}.city-browser__intro h2{font-size:25px;color:var(--blue)}.city-browser__intro p{margin:0;color:var(--muted);font-size:13px}.city-filter{display:flex;gap:10px;flex-wrap:wrap}.city-button{appearance:none;display:flex;align-items:center;gap:9px;min-height:48px;padding:8px 14px;border:1px solid var(--line);border-radius:9px;background:var(--white);color:var(--blue);font:700 14px Inter,Arial,sans-serif;cursor:pointer;transition:transform .2s var(--motion-ease),box-shadow .2s var(--motion-ease),border-color .2s var(--motion-ease),background .2s var(--motion-ease)}.city-button small{font:700 10px Inter,Arial,sans-serif;letter-spacing:.2px;color:#2b8b63}.city-button.is-available:hover{transform:translateY(-2px);border-color:var(--orange);box-shadow:0 8px 18px rgba(7,32,51,.1)}.city-button.is-active{background:var(--blue);border-color:var(--blue);color:#fff}.city-button.is-active small{color:#f6c45d}.city-button:disabled{cursor:not-allowed;background:#f1f3f4;color:#87949c}.city-button:disabled small{color:#87949c}.property-grid{padding-top:36px}.property-card .listing-photo.generic{background-image:url('assets/images/samrajya-interior.png')}@media(max-width:820px){.city-browser{padding:30px 6vw 0}.city-browser__intro{display:block}.city-browser__intro p{margin-top:6px}.city-filter{gap:8px}.city-button{width:calc(50% - 4px);justify-content:space-between;padding:8px 11px;font-size:13px}}
.area-browser{max-width:var(--max);margin:0 auto;padding:28px 5vw 0}.area-browser__intro{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}.area-browser__intro h2{font-size:21px;color:var(--blue)}.area-browser__intro p{margin:0;color:var(--muted);font-size:13px}.area-filter{display:flex;gap:9px;flex-wrap:wrap}.area-button{appearance:none;min-height:42px;padding:7px 15px;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--blue);font:700 13px Inter,Arial,sans-serif;cursor:pointer;transition:transform .2s var(--motion-ease),border-color .2s var(--motion-ease),background .2s var(--motion-ease)}.area-button:hover{transform:translateY(-2px);border-color:var(--orange)}.area-button.is-active{background:#f7ead0;border-color:#e7bd69;color:#704c0f}@media(max-width:820px){.area-browser{padding:24px 6vw 0}.area-browser__intro{display:block}.area-browser__intro p{margin-top:3px}}

/* Saved locations without a public listing remain visible but cannot be selected. */
.area-button.is-available:hover{transform:translateY(-2px);border-color:var(--orange)}.area-button:disabled{cursor:not-allowed;background:#f1f3f4;color:#87949c;opacity:.88}.area-button:disabled:hover{transform:none;border-color:var(--line)}

/* Listing cards: two columns on desktop, full details remain scannable at every size. */
.property-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px}.property-card{display:flex;min-height:100%;flex-direction:column;box-shadow:0 10px 28px rgba(7,32,51,.06);transition:transform .2s var(--motion-ease),box-shadow .2s var(--motion-ease)}.property-card:hover{box-shadow:0 17px 32px rgba(7,32,51,.12);transform:translateY(-3px)}.property-card .listing-photo{height:270px;flex:0 0 auto}.property-card .card-copy{display:flex;flex:1;flex-direction:column;padding:26px}.property-card h2{font-size:clamp(27px,2.4vw,34px)}.property-card .card-copy>p:not(.location){margin:12px 0 19px;font-size:14px}.listing-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 23px;padding:0}.listing-features div{min-width:0;padding:10px 11px;border:1px solid #dce5e8;border-radius:8px;background:#f8faf9}.listing-features dt{margin:0;color:#6a7a84;font:800 9px Inter,Arial,sans-serif;letter-spacing:.75px;text-transform:uppercase}.listing-features dd{margin:4px 0 0;overflow:hidden;color:var(--blue);font:700 12px/1.3 Inter,Arial,sans-serif;text-overflow:ellipsis;white-space:nowrap}.property-card .btn{align-self:flex-start;margin-top:auto}@media(max-width:820px){.property-grid{grid-template-columns:1fr}.property-card .listing-photo{height:300px}.property-card .card-copy{padding:25px}}@media(max-width:480px){.property-card .listing-photo{height:245px}.listing-features{gap:7px}.listing-features div{padding:9px}.listing-features dd{font-size:11px}}
