.listings-page-hero{padding:50px 0;background:var(--ink)}
.listings-page-hero h1{margin:0}
.listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.listing-card{overflow:hidden;border-radius:0;background:#fff;box-shadow:0 8px 28px rgba(16,42,37,.1)}
.listing-card>a{display:block;color:inherit;text-decoration:none;height:100%}
.listing-card img,.listing-placeholder{display:block;width:100%;height:230px;object-fit:cover}
.listing-placeholder{display:grid;place-items:center;background:#dfe9e5;color:#315c52;font-weight:700}
.listing-card-body{padding:20px}
.listing-card-body h2{margin:0 0 8px;color:#173f38;font-size:1.6rem}
.listing-card-body p{margin:0 0 16px}
.text-link{color:#1f6a57;font-weight:700}
.listing-detail-hero{padding:28px 0 24px}
.listing-detail-hero p{margin:0 0 8px}
.listing-detail-hero h1{margin:0;font-size:clamp(1.5rem,2.5vw,2.5rem)}
.listing-detail-hero a{color:#fff}
.listing-detail-hero+.section{padding-top:46px}
.listing-detail{max-width:1100px}
.listing-detail>p:first-child,.listing-price{font-size:1.2rem}
.listing-detail img{max-width:100%;height:auto;border-radius:10px}
.listing-detail iframe{display:block;width:100%;max-width:900px;min-height:450px;margin:22px auto;border:0;border-radius:10px}
.listing-detail .ngg-galleryoverview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}
.listing-detail .ngg-gallery-thumbnail-box,.listing-detail .ngg-gallery-thumbnail{width:auto!important;float:none!important}
.listing-detail .ngg-gallery-thumbnail img{width:100%;height:220px;object-fit:cover}
.listing-detail .clr{display:none}
.narrow{max-width:780px}
.manual-gallery{margin-top:48px}
.property-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.property-photo-grid a{display:block;overflow:hidden;border-radius:10px;background:#e7ecea;aspect-ratio:4/3}
.property-photo-grid img{width:100%;height:100%;object-fit:cover;transition:transform .2s ease}
.property-photo-grid a:hover img,.property-photo-grid a:focus img{transform:scale(1.025)}
.gallery-lightbox{width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:0;border:0;background:rgba(5,16,14,.96);color:#fff}
.gallery-lightbox::backdrop{background:rgba(5,16,14,.96)}
.gallery-stage{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr) 72px;align-items:center;width:100%;height:100%;padding:30px}
.gallery-stage figure{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;height:100%;margin:0}
.gallery-stage figure img{display:block;max-width:100%;max-height:calc(100vh - 90px);width:auto;height:auto;object-fit:contain;border-radius:4px}
.gallery-stage figcaption{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);font-weight:700}
.gallery-arrow,.gallery-close{z-index:2;border:0;color:#fff;background:rgba(255,255,255,.14);cursor:pointer}
.gallery-arrow{width:54px;height:70px;border-radius:8px;font-size:3.5rem;line-height:1}
.gallery-arrow:hover,.gallery-arrow:focus,.gallery-close:hover,.gallery-close:focus{background:#fff;color:#173432;outline:3px solid #ae8357}
.gallery-close{position:absolute;top:18px;right:22px;width:48px;height:48px;border-radius:50%;font-size:2rem}
@media(max-width:900px){.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.listing-detail .ngg-galleryoverview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.property-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.listing-grid,.property-photo-grid{grid-template-columns:1fr}.listing-detail .ngg-galleryoverview{grid-template-columns:1fr}.listing-detail iframe{min-height:320px}.gallery-stage{grid-template-columns:48px minmax(0,1fr) 48px;padding:12px}.gallery-arrow{width:42px;height:58px;font-size:2.7rem}}
