/* Add-on styles for neighborhood + condo-complex FAQ pages.
   Loads after /area.css and reuses its tokens. */
.crumbs { font-size: .78rem; color: #b9c9d8; margin-bottom: 1rem; }
.crumbs a { color: #dbe6f0; text-decoration: none; }
.crumbs a:hover { text-decoration: underline; }
.crumbs span { color: var(--gold); }
.hero .updated { font-size: .8rem; color: #9fb4c8; margin-top: .8rem; }

/* At-a-glance facts */
.glance { background: var(--paper); border: 1px solid var(--rule); border-radius: 18px; padding: clamp(1rem, 3vw, 1.6rem); box-shadow: 0 8px 28px rgba(13,43,69,.06); }
.glance dl { display: grid; gap: 0; }
.g-row { display: grid; grid-template-columns: 11rem 1fr; gap: 1rem; padding: .65rem 0; border-bottom: 1px solid var(--rule); }
.g-row:last-child { border-bottom: 0; }
.g-row dt { font-size: .74rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--warm-mid); padding-top: .15rem; }
.g-row dd { font-size: .96rem; }
.g-row dd a, .faq a, .related a { color: var(--blue); }
@media (max-width: 560px) { .g-row { grid-template-columns: 1fr; gap: .15rem; } }

/* FAQ */
.faq { display: grid; gap: .6rem; }
.qa { background: var(--paper); border: 1px solid var(--rule); border-radius: 14px; }
.qa summary { cursor: pointer; list-style: none; font-weight: 700; padding: .95rem 2.6rem .95rem 1.1rem; position: relative; }
.qa summary::-webkit-details-marker { display: none; }
.qa summary::after { content: "+"; position: absolute; right: 1.1rem; top: 50%; transform: translateY(-50%); font-size: 1.3rem; color: var(--red); font-weight: 600; }
.qa[open] summary::after { content: "–"; }
.qa .a { padding: 0 1.1rem 1rem; }
.qa .a p { font-size: .95rem; color: #2c4257; margin: 0; max-width: 680px; }

.related { font-size: .88rem; color: var(--warm-mid); margin-top: 1.2rem; text-align: center; max-width: none !important; }
