.map-layout{display:grid;grid-template-columns:1fr 340px;gap:36px;align-items:start;margin-top:48px}
#map{height:520px;border-radius:10px;border:1px solid var(--border);box-shadow:0 4px 24px rgba(0,0,0,.07);z-index:1}
.leaflet-popup-content-wrapper{border-radius:10px;border:1px solid var(--border);box-shadow:0 8px 32px rgba(0,0,0,.1);font-family:'DM Sans',sans-serif;padding:0;overflow:hidden}
.leaflet-popup-content{margin:0;min-width:230px}
.popup-img{width:100%;height:130px;object-fit:cover;display:block}
.popup-body{padding:14px 16px}
.popup-badge{display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:3px 9px;border-radius:20px;margin-bottom:10px;border:1px solid}
.popup-badge.live{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}
.popup-badge.soon{color:#888;background:#f5f5f5;border-color:#ddd}
.popup-name{font-family:'DM Serif Display',serif;font-size:1.1rem;color:#0a0a0a;margin-bottom:3px;font-weight:400}
.popup-sub{font-size:.8rem;color:#777;margin-bottom:12px}
.popup-btns{display:flex;gap:8px;flex-wrap:wrap}
.popup-link{display:inline-block;font-size:.75rem;font-weight:600;color:#C82020;padding:6px 12px;border:1px solid #fecaca;border-radius:4px;background:#fff5f5}
.popup-link.gm{color:#1565c0;border-color:#bbdefb;background:#e3f2fd}
.lbig{font-family:var(--serif);font-size:4.5rem;color:var(--ink);line-height:1;margin-bottom:6px}
.llabel{font-size:.72rem;color:var(--ink3);text-transform:uppercase;letter-spacing:.1em;font-weight:500;margin-bottom:24px}
.lcards-stack{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}
.claim-box{background:var(--cream);border:1px solid var(--border);border-radius:var(--r);padding:22px;border-top:3px solid var(--red)}
.claim-box h4{font-family:var(--serif);font-size:1.1rem;color:var(--ink);margin-bottom:8px;font-weight:400}
.claim-box p{font-size:.82rem;line-height:1.65;color:var(--ink2);margin-bottom:14px}
