/* Places served: a consistent grid with the island-wide coverage highlighted. */
.coverage-section{border-block:1px solid #dce0d6;background:#efeee7}
.coverage-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:end;gap:clamp(28px,5vw,72px)}
.coverage-intro>*{min-width:0}
.coverage-intro .eyebrow{margin-bottom:16px;color:var(--teal)}
.coverage-intro h2{margin-bottom:0}
.coverage-intro>p{max-width:43ch;margin:0 0 4px;font-size:1.125rem;line-height:1.85;color:var(--body)}
.coverage-section .town-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:38px 0 0;padding:0;list-style:none;background:none;border:0}
.town-card{display:flex;align-items:center;gap:16px;min-width:0;min-height:116px;margin:0;padding:24px;border:1px solid #d8dfd6;border-radius:8px;background:#fcfcf8;box-shadow:0 3px 12px #102c3104}
.town-marker{display:flex;align-items:center;justify-content:center;flex:0 0 46px;width:46px;height:46px;border:1px solid #d5e2d9;border-radius:50%;background:#e9f0e9;color:var(--teal)}
.town-marker svg{display:block;flex-shrink:0}
.town-name{min-width:0;font-size:1.125rem;font-weight:600;line-height:1.5;letter-spacing:-.015em;color:var(--navy)}
.town-card-island{background:var(--navy-deep);border-color:var(--navy-deep);box-shadow:0 6px 20px #102c3110}
.town-card-island .town-marker{background:#bce6d818;border-color:#bce6d84d;color:var(--mint)}
.town-card-island .town-name{color:#f4f8f2}
@media(max-width:1100px){.coverage-section .town-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .coverage-intro{grid-template-columns:minmax(0,1fr);gap:22px}
 .coverage-intro>p{max-width:50ch;margin:0}
 .coverage-section .town-grid{margin-top:28px;gap:14px}
 .town-card{padding:20px;gap:14px}
 .town-marker{flex-basis:42px;width:42px;height:42px}
}
@media(max-width:600px){
 .coverage-section .town-grid{grid-template-columns:minmax(0,1fr);gap:12px}
 .town-card{min-height:86px;padding:18px 20px}
 .town-name{font-size:1.0625rem}
}
@media print{
 .coverage-section .town-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .town-card{break-inside:avoid;box-shadow:none;min-height:70px;padding:12px;background:white;border-color:#aaa}
 .town-card-island .town-name{color:#000}
 .town-marker,.town-card-island .town-marker{background:none;border-color:#aaa;color:#000}
}
