.apartment-card[data-astro-cid-zqzva7jd]{display:flex;flex-direction:column}.apartment-card-image-link[data-astro-cid-zqzva7jd]{display:block;text-decoration:none}.apartment-card-image[data-astro-cid-zqzva7jd]{height:220px;background-size:cover;background-position:center;background-color:var(--color-bg-alt);position:relative}.apartment-card-image-placeholder[data-astro-cid-zqzva7jd]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:1.5rem;color:var(--color-text-muted);background:var(--color-bg-alt)}.apartment-card-image[data-astro-cid-zqzva7jd][style*=url] .apartment-card-image-placeholder[data-astro-cid-zqzva7jd]{opacity:0}.apartment-card-body[data-astro-cid-zqzva7jd]{padding:1.25rem;flex:1;display:flex;flex-direction:column}.apartment-card-title[data-astro-cid-zqzva7jd]{font-size:1.5rem;margin-bottom:.25rem}.apartment-card-title[data-astro-cid-zqzva7jd] a[data-astro-cid-zqzva7jd]{color:var(--color-text-dark);text-decoration:none}.apartment-card-title[data-astro-cid-zqzva7jd] a[data-astro-cid-zqzva7jd]:hover{color:var(--color-primary)}.apartment-card-tagline[data-astro-cid-zqzva7jd]{color:var(--color-text-muted);font-size:.9375rem;margin-bottom:1rem}.apartment-card-meta[data-astro-cid-zqzva7jd]{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-bottom:1.25rem;font-size:.875rem;color:var(--color-text-muted)}.apartment-card-meta[data-astro-cid-zqzva7jd] span[data-astro-cid-zqzva7jd]{display:inline-flex;align-items:center;gap:.3rem}.apartment-card-badge[data-astro-cid-zqzva7jd]{color:var(--color-primary)}.apartment-card-footer[data-astro-cid-zqzva7jd]{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--color-bg-alt);padding-top:1rem;margin-top:auto}.apartment-card-actions[data-astro-cid-zqzva7jd]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.apartment-card-price[data-astro-cid-zqzva7jd]{font-weight:700;font-size:1.125rem;color:var(--color-text-dark)}.apartment-card-price-unit[data-astro-cid-zqzva7jd]{font-weight:400;font-size:.8125rem;color:var(--color-text-muted)}.apartment-card-btn[data-astro-cid-zqzva7jd]{padding:.5rem 1.25rem;font-size:.875rem}.apartments-grid{display:grid;grid-template-columns:1fr;gap:2rem}.apartment-result{position:relative;min-width:0;transition:opacity .28s ease,transform .28s ease,filter .28s ease}.apartment-card-skeleton{display:none;overflow:hidden;min-height:100%;border-radius:.5rem;background:#fff;box-shadow:0 .45rem 1.25rem #1c1c1c14}.apartment-card-skeleton__image,.apartment-card-skeleton__line,.apartment-card-skeleton__meta span{display:block;background:linear-gradient(90deg,#ececec,#f7f7f7,#ececec 90%);background-size:220% 100%;animation:apartment-skeleton-pulse 1.15s ease-in-out infinite}.apartment-card-skeleton__image{aspect-ratio:4 / 3;width:100%}.apartment-card-skeleton__line{width:calc(100% - 2rem);height:.9rem;margin:1rem 1rem 0;border-radius:999px}.apartment-card-skeleton__line--title{width:58%;height:1.25rem;margin-top:1.25rem}.apartment-card-skeleton__line--short{width:42%;margin-bottom:1.25rem}.apartment-card-skeleton__meta{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin:1.1rem 1rem 0}.apartment-card-skeleton__meta span{height:2.35rem;border-radius:.5rem}.apartments-grid[data-availability-loading=true] .apartment-card{display:none}.apartments-grid[data-availability-loading=true] .apartment-card-skeleton{display:block}.apartments-grid[data-availability-loading=true] .unavailable-ribbon{display:none}@keyframes apartment-skeleton-pulse{0%{background-position:120% 0}to{background-position:-120% 0}}.apartment-result[data-availability=available] .apartment-card{opacity:1}.apartment-result[data-availability=unavailable] .apartment-card{opacity:.5;filter:grayscale(.45)}.unavailable-ribbon{position:absolute;top:5rem;left:50%;transform:translate(-50%);z-index:1;display:none;width:10rem;padding:.35rem .75rem;background:#00000082;color:#fff;font-size:.78rem;font-weight:700;text-align:center;text-transform:uppercase;transform-origin:center;pointer-events:none;border-radius:1rem;backdrop-filter:blur(20px)}.apartment-result[data-availability=unavailable] .unavailable-ribbon{display:block}@media(min-width:768px){.apartments-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.apartments-grid{grid-template-columns:repeat(3,1fr)}}
