/* Palos Verdes Life: neighborhood and tract pages (scripts/build_places.py). Loaded after pv.css. */
.pl-hero .shell { padding-bottom: 46px; }
.pl-sub { margin-top: 10px; font-size: .9rem; font-weight: 600; color: var(--ink-3); }
.pl-stamp { margin-top: 18px; font-size: .8rem; color: var(--ink-3); line-height: 1.6; }
.pl-conf { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; color: var(--ink-2); }
.pl-conf i { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
.pl-conf-high i { background: #3d7a46; }
.pl-conf-medium i { background: #c79a2b; }
.pl-conf-low i { background: #b5562a; }
.pl-stats .stat-cell .n { font-size: 1.7rem; }
.pl-map { height: 440px; }
@media (max-width: 700px) { .pl-map { height: 340px; } }
.pl-prose { max-width: 72ch; }
.pl-prose p { margin-bottom: 14px; color: var(--ink-2); }
.pl-intro { color: var(--ink-2); max-width: 72ch; margin-bottom: 18px; }
.pl-notes { margin: 6px 0 0 20px; color: var(--ink-2); font-size: .94rem; }
.pl-notes li { margin-bottom: 8px; }

/* tract rows on a neighborhood page */
.pl-rows { border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--card); box-shadow: var(--shadow-1); overflow: hidden; }
.pl-row { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.4fr) minmax(0, 1fr) 24px; gap: 4px 18px; align-items: baseline;
  padding: 14px 20px; border-bottom: 1px solid var(--line); color: var(--ink); text-decoration: none; }
.pl-row:last-child { border-bottom: none; }
.pl-row:hover { background: var(--mist); text-decoration: none; }
.pl-row-name { font-weight: 700; }
.pl-row-name .chip { margin-left: 6px; vertical-align: 2px; }
.pl-row-sub { font-size: .86rem; color: var(--ink-2); }
.pl-row-st { font-size: .8rem; color: var(--ink-3); }
.pl-row-go { color: var(--tile); font-weight: 700; text-align: right; }
@media (max-width: 760px) { .pl-row { grid-template-columns: 1fr 20px; } .pl-row-sub, .pl-row-st { grid-column: 1; } .pl-row-go { grid-row: 1; grid-column: 2; } }
.pl-small td { font-size: .86rem; }
.pl-small th { white-space: nowrap; }

/* streets, chips, sources */
.pl-streets { list-style: none; columns: 4 200px; column-gap: 28px; font-size: .9rem; }
.pl-streets li { break-inside: avoid; padding: 3px 0; }
.pl-chips { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.pl-chips a { display: inline-block; padding: 6px 13px; border: 1px solid var(--line); border-radius: 999px; background: var(--card); font-size: .86rem; font-weight: 600; }
.pl-chips a:hover { background: var(--ocean); border-color: var(--ocean); color: #fff; text-decoration: none; }
.pl-sources { margin-left: 22px; columns: 2 360px; column-gap: 36px; font-size: .88rem; color: var(--ink-2); }
.pl-sources li { break-inside: avoid; margin-bottom: 8px; }

/* Neighborhoods A–Z */
.pl-find { margin-top: 22px; max-width: 520px; }
.pl-find label { display: block; font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-3); margin-bottom: 6px; }
.pl-find input { width: 100%; padding: 12px 14px; border: 1px solid var(--field-line, #858f95); border-radius: 8px; font: inherit; background: #fff; }
.az-city { margin-bottom: 44px; }
.az-city h2 { font-size: 1.5rem; margin-bottom: 16px; }
.az-city h2 .small { font-family: var(--sans); font-size: .85rem; margin-left: 6px; }
.az-list { list-style: none; columns: 3 260px; column-gap: 32px; }
.az-hood { break-inside: avoid; margin-bottom: 14px; }
.az-hood ul { list-style: none; margin: 4px 0 0 12px; font-size: .86rem; }
.az-hood ul li { padding: 1px 0; }
.az-city[hidden], .az-hood[hidden], .jump-chips a[hidden] { display: none; }

/* "Neighborhood guides" list on the hand-made city pages (scripts/city_links.py) */
.hood-guides { list-style: none; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; }
.hood-guides a { display: block; height: 100%; padding: 14px 16px; border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--card); box-shadow: var(--shadow-1); color: var(--ink); }
.hood-guides a:hover { border-color: var(--ocean); text-decoration: none; }
.hood-guides strong { display: block; font-size: 1rem; color: var(--ocean); }
.hood-guides span { display: block; margin-top: 4px; font-size: .8rem; color: var(--ink-3); }
