/* /locality/<slug> (NG\Page\LocalityPages, docs/v2.4.0-contract.md 5.2). Loaded after base.css, props.css and listing.css; uses their tokens. */
.lc{padding:100px 0 70px}
.lc .wrap{max-width:1100px}
.lc-h{max-width:760px;margin:6px 0 30px}
.lc-h h1{margin:0 0 14px;color:var(--ink);font-size:clamp(28px,4.4vw,44px);line-height:1.12}
.lc-intro p{margin:0 0 12px;color:#2B3B4D;font-size:17px;line-height:1.65}
.lc-sec{margin:0 0 44px;scroll-margin-top:96px}
.lc-sec>h2{margin:0 0 16px;color:var(--ink);font-size:clamp(21px,2.6vw,28px);line-height:1.2}
.lc-sec>h3{margin:24px 0 8px;color:var(--ink);font-size:17px}
.lc-more{margin:22px 0 0}
.lc-sec .plist{margin-top:0}
/* price chart */
.lc-chart{margin:0 0 14px;padding:14px 12px 8px;background:#fff;border:1px solid var(--rule);border-radius:16px}
.lc-chart svg{display:block;width:100%;height:auto}.lc-chart:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.lc-src{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.lc-src li{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;color:#2B3B4D}
.lc-src i{flex:none;width:14px;height:14px;margin-top:4px;border-radius:4px}
.lc-src a{color:var(--blue);text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}
.lc-note{margin:0;font-size:13px;color:var(--mute);max-width:70ch}
/* questions */
.lc-faq{display:grid;gap:10px}
.lc-faq details{background:#fff;border:1px solid var(--rule);border-radius:14px;padding:0}
.lc-faq summary{cursor:pointer;list-style:none;padding:16px 18px;font-weight:600;color:var(--ink);font-size:16px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.lc-faq summary::-webkit-details-marker{display:none}
.lc-faq summary::after{content:"+";flex:none;font-size:22px;line-height:1;color:var(--blue)}
.lc-faq details[open] summary::after{content:"\2212"}
.lc-faq summary:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:12px}
.lc-a{padding:0 18px 16px;color:#2B3B4D;font-size:15.5px;line-height:1.65}
.lc-a a{color:var(--blue);text-decoration:underline}
/* links */
.lc-links{margin:0 0 6px;padding-left:20px;display:grid;gap:6px}
.lc-links a,.lc-others a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}
.lc-others{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0}
.lc-ask{margin:22px 0 0}
@media (max-width:640px){
  .lc{padding-top:86px}
  .lc-chart{padding:10px 6px 4px;border-radius:12px;overflow-x:auto}.lc-chart svg{min-width:540px}
  .lc-intro p{font-size:16px}
  .lc-faq summary{padding:14px}
  .lc-a{padding:0 14px 14px}
}
@media print{.lc-chart{border:0}.lc-faq details{break-inside:avoid}}
