.listing-detail-overview,.listing-detail-media,.listing-detail-info,.listing-detail-map{min-width:0}
.listing-detail-info{overflow-wrap:anywhere}
.listing-detail-info>.lifestyle-tags:empty{display:none}
.listing-lifestyle-summary{margin:20px 0 0}
.listing-lifestyle-summary>h4{margin:0 0 12px;font-size:15px;color:var(--green)}
.listing-detail-map{margin-top:20px}
.listing-detail-map .listing-location-map{margin:0}
@media(min-width:1000px){
  .listing-detail .listing-detail-overview{display:grid;grid-template-columns:minmax(0,.48fr) minmax(0,.52fr);grid-template-areas:"media info" "map info";grid-template-rows:min-content 1fr;gap:24px 28px;align-items:start}
  .listing-detail .listing-detail-overview:not(:has(>.listing-detail-map)){grid-template-areas:"media info";grid-template-rows:auto}
  .listing-detail .listing-detail-media{grid-area:media}
  .listing-detail .listing-detail-info{grid-area:info}
  .listing-detail .listing-detail-map{grid-area:map;margin:0}
  .listing-detail .listing-detail-media>.image-gallery{width:100%;max-width:100%;margin:0;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:10px}
  .listing-detail .listing-detail-media .gallery-main{grid-column:1;grid-row:1;aspect-ratio:auto;background:#f0f4ed;border-radius:14px}
  .listing-detail .listing-detail-media .gallery-main img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain}
  .listing-detail .listing-detail-media .gallery-thumbs{grid-column:1;grid-row:2;flex-direction:row;gap:8px;max-height:none;overflow-x:auto;overflow-y:hidden;padding:3px;margin:0}
  .listing-detail .listing-detail-media .gallery-thumbs button{width:72px;flex:0 0 72px;padding:3px;border-radius:9px}
  .listing-detail .listing-detail-media .gallery-thumbs img{width:62px;height:58px;object-fit:cover;border-radius:5px}
  .listing-detail .listing-detail-media .image-gallery>p{grid-column:1;grid-row:3;text-align:left;margin:0;font-size:12px}
  .listing-detail .listing-detail-media .image-gallery:not(:has(.gallery-thumbs))>p{grid-row:2}
  .listing-detail .listing-detail-media>.detail-image{display:block;width:100%;max-width:100%;height:auto}
  .listing-detail .listing-detail-info>.detail-title{margin:0 0 12px;font-size:clamp(24px,2vw,30px);line-height:1.5}
  .listing-detail .listing-detail-info>.detail-location{margin:0 0 12px;align-items:flex-start}
  .listing-detail .listing-detail-info>.detail-price{margin:16px 0 18px;padding:12px 16px;border-left:4px solid #287756;border-radius:10px;background:var(--sage)}
  .listing-detail .listing-detail-info>.detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;margin:18px 0;padding:16px;border:1px solid var(--border);border-radius:12px}
  .listing-detail .listing-detail-info>.property-summary{margin:18px 0}
  .listing-detail .listing-detail-info .property-summary dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}
  .listing-detail .listing-detail-info>.cost-summary{padding:16px;margin:18px 0}
  .listing-detail .listing-detail-info .cost-summary dl>div{display:grid;grid-template-columns:minmax(100px,.75fr) minmax(0,1.25fr);gap:12px;align-items:start}
  .listing-detail .listing-detail-info .cost-summary dd{text-align:right;overflow-wrap:anywhere}
  .listing-detail .listing-detail-info>.lifestyle-tags{margin:14px 0 0}
  .listing-detail .listing-detail-info .lifestyle-tags{gap:8px}
  .listing-detail .listing-detail-info .lifestyle-tags span{padding:6px 9px;line-height:1.5;border:1px solid var(--border);font-size:12px}
  .listing-detail .listing-detail-overview+h4{margin-top:28px;padding-top:24px;border-top:1px solid var(--border)}
}
