/* V51: photo-first cards with all existing listing actions retained. */
.idx-grid{gap:24px!important;align-items:start}
.idx-grid>.idx-property{border:1px solid #e1e7ed;border-radius:18px;box-shadow:0 4px 18px #12304b0b;background:#fff}
.idx-grid>.idx-property>.idx-gallery{aspect-ratio:4/3;margin-bottom:18px;background:#eef2f6}
.idx-grid .idx-gallery .idx-photo{object-fit:contain;background:#eef2f6}
.idx-grid .hz-price-row{margin:0 18px 10px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.idx-grid .hz-price-row h3{margin:0;font-size:28px;line-height:1.2;letter-spacing:-.7px;color:#132b42}
.idx-grid .hz-card-address{font-size:16px;font-weight:600;color:#243b50;margin:8px 18px}
.idx-grid .hz-card-facts{font-size:14px;color:#42576b;margin:8px 18px 12px}
.idx-grid .hz-card-reference,.idx-grid .idx-brokerage{font-size:13px;line-height:1.5;color:#536579;margin:5px 18px}
.idx-grid .idx-brokerage{padding-bottom:10px}
.idx-grid .idx-view-detail{background:#f5f8fc;border:1px solid #dce5ef;border-radius:10px;margin-top:10px}
.idx-grid .portal-card-actions{border-top:1px solid #edf1f5;padding-top:12px;gap:8px;flex-wrap:wrap}
.idx-photo-prev,.idx-photo-next{box-shadow:0 2px 10px #10263b22;top:50%;transform:translateY(-50%)}
.pp-gallery.idx-gallery{aspect-ratio:16/9;max-height:680px;border-radius:18px;background:#eef2f6}
.pp-gallery .pp-hero{width:100%;height:100%;object-fit:contain}
.pp-thumbs{padding:12px 0;gap:10px}
.pp-thumbs button{border-radius:8px;overflow:hidden}
.pp-expand{position:absolute;left:16px;bottom:16px;z-index:3;border:1px solid #dce5ef!important;background:white!important;color:#183c60!important;border-radius:10px;padding:12px 16px;min-height:44px;font-weight:600}
.hz-photo-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:64px 68px 52px;border:0;border-radius:0;background:#101b29;color:#fff;box-sizing:border-box}
.hz-photo-dialog::backdrop{background:#101b29}
.hz-photo-dialog img{width:100%;height:100%;object-fit:contain;display:block}
.hz-photo-dialog button{position:absolute;min-width:44px;min-height:44px;border:1px solid #ffffff55;border-radius:10px;background:#223349;color:white;font-size:24px}
.hz-photo-dialog .hz-close{top:12px;right:16px;font-size:15px;padding:8px 16px}
.hz-photo-dialog .hz-prev{left:12px;top:50%}.hz-photo-dialog .hz-next{right:12px;top:50%}
.hz-photo-dialog .hz-counter{position:absolute;bottom:16px;left:0;right:0;text-align:center;font-size:14px}
@media(max-width:760px){.idx-grid{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}.idx-grid .hz-price-row h3{font-size:27px}.pp-gallery.idx-gallery{aspect-ratio:4/3;border-radius:12px}.pp-expand{left:10px;bottom:10px;padding:8px 12px;font-size:13px}.hz-photo-dialog{padding:64px 8px 70px}.hz-photo-dialog .hz-prev,.hz-photo-dialog .hz-next{top:auto;bottom:12px}.hz-photo-dialog .hz-counter{bottom:26px;pointer-events:none}}

.hz-clickable-card{cursor:pointer}.hz-clickable-card .idx-view-detail{text-align:center;text-decoration:none;box-sizing:border-box}.hz-clickable-card:focus-within{outline:2px solid #2475ad;outline-offset:3px}
