.listing-page .listing-public-layout{grid-template-columns:minmax(0,1fr) 340px;gap:32px;}
.listing-page .listing-public-main{min-width:0;}
.listing-page h1{font-size:2.4rem;line-height:1.25;}
.listing-page .public-photo-grid{gap:12px;margin:24px 0;}
.listing-page .public-photo-grid img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:8px;}
.listing-page .public-photo-grid img:only-child{grid-column:1/-1;}
.listing-page .panel-card{background:transparent;border:0;box-shadow:none;padding:24px 0;border-radius:0;}
.listing-page .panel-card p{line-height:1.85;}
.listing-page .direct-contact{background:#f3f8f5;border:1px solid #b8cebf;border-radius:8px;padding:24px;box-shadow:none;min-width:0;}
.listing-page .direct-contact h2{font-size:1.35rem;margin:12px 0;}
.listing-page .direct-contact p{line-height:1.75;}
.listing-page .direct-contact .panel-actions{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin:24px 0;overflow-wrap:anywhere;}
.listing-page .btn{white-space:normal;text-align:center;}
@media(max-width:980px){.listing-page .listing-public-layout{grid-template-columns:minmax(0,1fr);}.listing-page .availability-card{position:static;}}
@media(max-width:560px){.listing-page h1{font-size:1.85rem;}.listing-page .direct-contact{padding:20px;}}
