.property-card{display:flex;flex-direction:column;min-width:0;height:100%;overflow:hidden;container-type:inline-size}
.property-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--paper)}
.property-image-link,.property-image-link img,.property-placeholder{display:block;width:100%;height:100%}
.property-image-link img{object-fit:cover;transition:transform .45s ease}
.property-code{position:absolute;z-index:2;top:14px;right:14px;padding:6px 10px;border-radius:7px;background:rgba(15,19,17,.7);color:#fff;font-size:.76rem;font-weight:750;line-height:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.property-card:hover .property-image-link img{transform:scale(1.02)}
.property-content{display:flex;flex:1;flex-direction:column;padding:18px 20px 20px}
.property-card-heading{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:start;gap:12px}
.property-card-heading h3{display:-webkit-box;min-height:calc(1.28em * 3);margin:0;overflow:hidden;font-size:1.12rem;line-height:1.28;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.property-card-heading h3 a{color:inherit}
.property-favorite{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid color-mix(in srgb,var(--brand) 22%,var(--line));border-radius:50%;background:color-mix(in srgb,var(--brand) 7%,var(--white));color:var(--brand);cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease}
.property-favorite:hover,.property-favorite.is-favorite{border-color:var(--brand);background:var(--brand);color:var(--brand-contrast,#fff);transform:translateY(-1px)}
.property-favorite.is-favorite .icon{fill:currentColor}.property-favorite .icon{width:20px;height:20px}
.property-location{display:flex;align-items:center;gap:6px;min-width:0;margin:5px 0 0;color:var(--muted);font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.property-location .icon{width:17px;height:17px;flex:0 0 auto;color:var(--brand)}
.property-media-labels{position:absolute;z-index:2;bottom:14px;left:50%;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:7px;width:calc(100% - 28px);transform:translateX(-50%);pointer-events:none}
.property-ribbon,.property-sea-distance{display:inline-flex;align-items:center;justify-content:center;min-height:30px;margin:0;padding:5px 11px;border:1px solid rgba(255,255,255,.28);border-radius:999px;font-size:.74rem;font-weight:750;line-height:1.2;white-space:nowrap;box-shadow:0 5px 16px rgba(0,0,0,.2)}
.property-ribbon{max-width:min(100%,220px);overflow:hidden;background:var(--property-ribbon-bg,var(--brand));color:var(--property-ribbon-color,#fff);text-overflow:ellipsis}
.property-sea-distance{gap:6px;background:color-mix(in srgb,var(--brand) 88%,#111);color:var(--brand-contrast,#fff)}.property-sea-distance .icon{width:15px;height:15px;flex:0 0 auto}
.property-features-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(62px,1fr));gap:10px;margin:16px 0 0;padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);list-style:none;color:var(--muted);text-align:center}
.property-features-row li{display:grid;justify-items:center;align-content:start;gap:6px;min-width:0;font-size:.76rem;line-height:1.15}.property-features-row .icon{width:21px;height:21px}.property-features-row strong{color:var(--ink);font-weight:700}
.property-card-footer{display:grid;gap:10px;margin-top:auto;padding-top:17px}.property-prices{display:flex;align-items:end;justify-content:center;gap:clamp(14px,2vw,28px);text-align:center}.property-price-item{display:grid;justify-items:center;gap:2px;min-width:0}.property-price-item small{color:var(--muted);font-size:.75rem}.property-price-item strong{color:var(--brand);font-size:clamp(1rem,1.3vw,1.22rem);font-weight:750;white-space:nowrap}
@container (max-width:360px){.property-content{padding-inline:16px}.property-card-heading{grid-template-columns:minmax(0,1fr) 40px}.property-favorite{width:40px;height:40px}.property-features-row{gap:6px}.property-price-item strong{font-size:.9rem}}
.property-price-item .property-price-promotion{max-width:100%;overflow:hidden;color:var(--muted);font-size:.74rem;font-weight:650;line-height:1.15;text-decoration:line-through;text-decoration-thickness:1px;text-overflow:ellipsis;white-space:nowrap}
@media(prefers-reduced-motion:reduce){.property-image-link img{transition:none}.property-card:hover .property-image-link img{transform:none}}
