.tpn-geo-breadcrumb { margin: 0 0 1.2rem; font-size: .8rem; color: var(--tpn-muted, #536176); }
.tpn-geo-breadcrumb ol { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; padding: 0; margin: 0; }
.tpn-geo-breadcrumb li + li::before { content: "/"; margin-right: .5rem; }
.tpn-geo-nav { margin: 0 0 1.8rem; }
.tpn-geo-nav h2 { font-size: 1rem; margin: 0 0 .7rem; }
.tpn-geo-nav ul { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0; padding: 0; list-style: none; }
.tpn-geo-nav a { display: block; border: 1px solid var(--tpn-line, #cbdcf2); background: #fff; padding: .45rem .7rem; font-size: .8rem; text-decoration: none; }
.tpn-geo-nav a:hover, .tpn-geo-nav a:focus-visible { background: #edf4ff; }
.tpn-geo-nav span { color: var(--tpn-muted, #536176); }
.tpn-geo-related { margin: 1.5rem 0; padding: 1.2rem; border: 1px solid var(--tpn-line, #cbdcf2); background: #fff; }
.tpn-geo-related h2 { font-size: 1.15rem; margin: 0 0 1rem; }
.tpn-geo-related ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .8rem; padding: 0; list-style: none; }
.tpn-related-club { display: flex; align-items: center; gap: 12px; height: 100%; padding: 14px; border: 1px solid var(--tpn-line, #cbdcf2); border-radius: 8px; text-decoration: none; }
.tpn-related-club:hover, .tpn-related-club:focus-visible { background: #f4f8ff; border-color: var(--tpn-blue); }
.tpn-related-club img { flex: 0 0 72px; width: 72px; height: 72px; object-fit: contain; image-rendering: pixelated; }
.tpn-related-club-info { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.tpn-related-club-info strong { color: var(--tpn-ink); font-size: 14px; line-height: 1.4; }
.tpn-geo-related li { display: flex; flex-direction: column; gap: .25rem; overflow-wrap: anywhere; }
.tpn-geo-related li span, .tpn-club-result-count { color: var(--tpn-muted, #536176); font-size: .8rem; }
@media (max-width: 1000px) { .tpn-geo-related ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .tpn-geo-related ul { grid-template-columns: minmax(0, 1fr); } }
