.rr-town-page { padding-bottom: 3rem; }
.rr-town-layout { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 2rem; align-items: start; }
.rr-town-aside section, .rr-town-region-grid section { background: #fff; border: 1px solid #dde1e4; padding: 1.3rem; margin-bottom: 1.2rem; }
.rr-town-aside h2, .rr-town-region-grid h2 { font-size: 1.3rem; }
.rr-town-aside li, .rr-town-region-grid li { margin: .6rem 0; }
.rr-town-region-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1rem; }
.rr-town-region-grid section { margin: 0; }
.rr-town-links { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem; }
.rr-town-links a { display: flex; flex-direction: column; padding: 1rem; border: 1px solid #dde1e4; background: #fff; height: 100%; }
.rr-town-links span { color: #4f5961; font-size: .88rem; padding-top: .3rem; }
.rr-town-business-links { display: flex; justify-content: space-between; flex-wrap: wrap; gap: .5rem 1rem; padding: .7rem 1rem; margin: -1px 0 1rem; border: 1px solid #dde1e4; background: #fff; }
.rr-town-business .rr-directory-row { margin-bottom: 0; }
.rr-town-business-links span, .rr-town-method { color: #4f5961; font-size: .9rem; }
.rr-town-method { margin-top: 1.5rem; }
.rr-town-page select { max-width: 100%; padding: .5rem; }
@media(max-width: 1000px) { .rr-town-layout { grid-template-columns: minmax(0,1fr); } .rr-town-aside { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; } .rr-town-links, .rr-town-region-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width: 600px) { .rr-town-links, .rr-town-region-grid, .rr-town-aside { grid-template-columns: minmax(0,1fr); } .rr-town-page .rr-results-header { display: block; } .rr-town-page .rr-results-header form { margin-bottom: 1rem; } }
