/* Scoped additions; widths, type, cards and responsive breakpoints are inherited. */
.page-location .location-prose { max-width: min(80ch, var(--shell)); }
.page-location .location-prose h2 { font-size: clamp(1.75rem, 2.6vw, 2.75rem); }
.page-location .location-prose p { color: var(--muted); }
.page-location .location-prose a:not(.button), .page-location .feature-columns a,
.page-location .forest-section a:not(.button) { text-decoration: underline; text-underline-offset: 3px; }
.page-location .crumb { line-height: 1.65; }
.page-location h1, .page-location h2, .page-location h3 { overflow-wrap: anywhere; }
.page-location .location-source { margin-top: 28px; font-size: .875rem; }
.page-location .location-faq article + article { margin-top: 32px; }
.page-location .location-grid { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.page-location .location-grid a { display: block; height: 100%; padding: clamp(26px, 3vw, 44px); border: 1px solid var(--line); border-radius: 24px; background: #fff; }
.page-location .location-grid strong { display: block; font-size: 1.5rem; margin-bottom: 12px; }
.page-location .location-grid span { display: block; color: var(--muted); }
@media (max-width: 700px) { .page-location .location-grid { grid-template-columns: 1fr; gap: 14px; } }
