/* Shared card previews; directory rows give practical details room to breathe. */
.property-card{padding:0;overflow:hidden;min-width:0}
.property-card:hover{transform:none}
.property-card .photo-card{margin:0}
.property-card .card-content{display:flex;flex-direction:column;padding:23px;min-width:0;flex:1}
.property-card .card-top{margin-bottom:10px}
.property-card .address{margin-bottom:12px}
.property-card .card-specs{margin-top:0;padding-top:12px;margin-bottom:13px}
.property-card .card-summary{font-size:14px;line-height:1.65;color:#4e5e53;margin:0 0 17px}
.card-highlights{display:grid;gap:13px;margin:0 0 22px;font-size:13px;line-height:1.6}
.card-highlights>div{min-width:0}
.card-highlights dt{font-size:11px;font-weight:700;color:var(--olive);margin-bottom:3px}
.card-highlights dd{margin:0;overflow-wrap:anywhere}
.property-card .card-actions{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}
.card-contact{display:flex;flex-direction:column;gap:2px;min-width:0}
.card-contact>span{font-size:10px;color:var(--muted)}
.card-phone{font-size:15px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:7px;min-height:36px;white-space:nowrap}
.card-phone:hover{text-decoration:underline}
.card-phone svg{width:16px;height:16px;flex-shrink:0}
.card-actions .button{font-size:12px;padding:10px 14px;min-height:42px}
.listing-group .card-grid{grid-template-columns:1fr;gap:22px}
@media(min-width:761px){
 .listing-group .property-card{display:grid;grid-template-columns:minmax(240px,31%) minmax(0,1fr);align-items:start}
 .listing-group .property-card:has(>.card-content:only-child){grid-template-columns:1fr}
 .listing-group .card-content{height:100%;padding:25px 28px}
 .listing-group .photo-card .photo-link{border-radius:15px 0 0 0;aspect-ratio:1.05}
 .listing-group .photo-card figcaption{padding:13px 18px;border-bottom:0}
 .listing-group .card-carousel .photo-description{min-height:0}
 .listing-group .card-specs{display:flex;flex-wrap:wrap;gap:7px 18px}
 .listing-group .card-highlights{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 25px}
 .listing-group .property-card h3{font-size:29px}
}
@media(max-width:1050px) and (min-width:761px){
 .section .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 .property-card .card-content{padding:20px}
 .listing-group .photo-card .photo-link{aspect-ratio:16/10}
 .listing-group .card-highlights{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
}
@media(max-width:540px){
 .section .card-grid{grid-template-columns:1fr}
 .listing-group .card-highlights{grid-template-columns:1fr;gap:12px}
 .property-card .card-summary{font-size:14px}
 .card-actions .button{flex:1}
}
