/* Listing page v3 (2026-11-15): calmer header, round icon actions, slim "no photos" strip, lighter sections.
   pages/listing.php. Loaded after directory.css and listingv2.css; body.listing-page keeps these rules on top. */

/* ── header ── */
body.listing-page .ld-head{align-items:center;gap:14px 24px;margin-top:22px}
body.listing-page .ld-head h1{margin:4px 0 12px;letter-spacing:-.025em}
body.listing-page .ld-tagline{margin:-4px 0 12px}
body.listing-page .ld-meta{gap:8px 16px;font-size:14.5px}
body.listing-page .ld-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
body.listing-page .ld-actions .ld-act-dir{flex-direction:row;gap:8px;min-height:44px;padding:9px 18px;font-size:15px;border-radius:999px;background:#fff}
body.listing-page .ld-act-ic{display:flex;align-items:center;gap:8px}
body.listing-page .ld-act-ic>.btn,body.listing-page .ld-act-ic>.sh>.sh-btn{flex:none;flex-direction:row;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;gap:0;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:15px}
body.listing-page .ld-act-ic>.btn:hover,body.listing-page .ld-act-ic>.sh>.sh-btn:hover{border-color:var(--ink-2)}
body.listing-page .ld-act-ic>.btn>i,body.listing-page .ld-act-ic>.sh>.sh-btn>i{font-size:16px;margin:0}
body.listing-page .ld-act-ic>.btn>span,body.listing-page .ld-act-ic>.sh>.sh-btn>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
body.listing-page .ld-act-ic>.btn-save.on{background:var(--mint);border-color:#86EFAC}

/* ── no photos yet: a slim strip, the page starts higher ── */
body.listing-page .ld-ph{height:128px}
body.listing-page .ld-ph .ph i{font-size:40px;opacity:.5}
body.listing-page .ld-ph-cta{bottom:50%;transform:translate(-50%,50%)}

/* ── sections: space instead of rules ── */
body.listing-page .ld-main>.ld-section{border-top:0;padding:0;margin-top:38px}
body.listing-page .ld-main>.ld-section:first-child,body.listing-page .ld-main>#about{margin-top:0}
body.listing-page .ld-section>h2,body.listing-page .ld-section .sec-head h2{font-size:21px;letter-spacing:-.01em}
body.listing-page .ld-section>h2{margin:0 0 14px}
body.listing-page .ld-lead{font-size:17px;line-height:1.6;color:var(--ink);max-width:68ch;margin:0 0 14px}
body.listing-page .ld-lead+.muted{margin-top:-4px}
body.listing-page .ld-facts{margin-top:18px}

/* amenities as pills */
body.listing-page .features{display:flex;flex-wrap:wrap;gap:8px}
body.listing-page .features span{gap:8px;padding:7px 14px 7px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:14px;font-weight:550}
body.listing-page .features i{width:auto;height:auto;border-radius:0;background:none;color:var(--leaf-2);font-size:13px}

/* side column: softer cards */
body.listing-page .ld-side .box{border-color:var(--line-2);box-shadow:var(--sh-1)}
body.listing-page .ld-side .claim-box{box-shadow:none;border-color:var(--line)}

@media (max-width:1020px){
  /* phone/tablet order: about → booking/contact → details → reviews → questions → nearby → more places → claim & footnotes */
  body.listing-page .ld-main>#reviews{order:6}
  body.listing-page .ld-main>#faq{order:7}
  body.listing-page .ld-main>#nearby{order:8}
  body.listing-page .ld-main>.seo-links{order:9}
  body.listing-page .ld-side>.claim-box{order:10}
  body.listing-page .ld-side>.osm-note{order:11}
  body.listing-page .ld-side>.ld-side-foot{order:12}
  body.listing-page .ld-main>.ld-section{margin-top:22px}
}
@media (max-width:760px){
  body.listing-page .ld-head{margin-top:14px}
  body.listing-page .ld-actions{display:flex;width:100%}
  body.listing-page .ld-actions .btn-primary,body.listing-page .ld-actions .btn-lime{flex:1 1 100%}
  body.listing-page .ld-actions .ld-act-dir{flex:1 1 auto}
  body.listing-page .ld-ph{height:104px}
  body.listing-page .ld-lead{font-size:16px}
}
