.sort-note { margin: 0 0 1rem; color: var(--muted); font-size: 0.88rem; text-align: center; }
.city-hero { padding: 2.5rem 1.5rem 0.5rem; max-width: 820px; margin: 0 auto; text-align: center; }
.breadcrumbs { font-size: 0.88rem; color: var(--muted); margin-bottom: 0.75rem; }
.breadcrumbs a { color: var(--muted); text-decoration: none; border-bottom: 1px solid var(--line); }
.breadcrumbs a:hover { color: var(--ink); border-bottom-color: var(--ink); }
.city-hero h1 { font-size: clamp(2rem, 5vw, 2.8rem); margin: 0 0 0.5rem; letter-spacing: -0.02em; font-weight: 700; }
.city-hero .intro { color: var(--muted); font-size: 1rem; margin: 0 auto; max-width: 60ch; }
.salon-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1rem; }
.nearby h3 { margin-bottom: 0.6rem; font-size: 1rem; font-weight: 600; }
.prices { max-width: 820px; margin: 0 auto; }
.price-table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.price-table th, .price-table td { text-align: left; padding: 0.55rem 0.5rem; border-bottom: 1px solid var(--line); }
.price-table th { color: var(--muted); font-weight: 600; font-size: 0.85rem; }
.price-table td.num { white-space: nowrap; font-weight: 600; }
.prices .note { color: var(--muted); font-size: 0.85rem; margin-top: 0.6rem; }
