/* City card grid — 4+3 layout on desktop */
    .city-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 24px;
      max-width: 1200px;
      margin: 0 auto;
    }
    /* Last row: 3 cards centered */
    .city-grid-row2 {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
      max-width: 900px;
      margin: 24px auto 0;
    }

    /* Services available everywhere */
    .all-services-section {
      background: var(--cream);
      padding: 80px 24px;
    }
    .all-services-inner {
      max-width: 1200px;
      margin: 0 auto;
    }
    .svc-check-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
      margin-top: 40px;
    }
    .svc-check-item {
      display: flex;
      align-items: center;
      gap: 14px;
      padding: 18px 22px;
      background: var(--white);
      border: 1px solid var(--warm-tan);
      border-radius: 4px;
      font-family: var(--font-ui);
      font-size: 0.88rem;
      font-weight: 600;
      color: var(--charcoal);
      transition: all 0.2s;
    }
    .svc-check-item:hover { border-color: var(--gold); background: var(--gold-light); }
    .svc-check-item i { color: var(--gold-dark); font-size: 1rem; flex-shrink: 0; }

    /* County badge */
    .county-badge {
      font-family: var(--font-ui);
      font-size: 0.68rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--gold-dark);
      background: var(--gold-light);
      border: 1px solid var(--gold-border);
      border-radius: 20px;
      padding: 3px 10px;
    }

    @media (max-width: 1024px) {
      .city-grid { grid-template-columns: repeat(3, 1fr); }
      .city-grid-row2 { grid-template-columns: repeat(3, 1fr); max-width: 100%; margin-top: 0; }
      .svc-check-grid { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 700px) {
      .city-grid, .city-grid-row2 { grid-template-columns: repeat(2, 1fr); }
      .svc-check-grid { grid-template-columns: 1fr; }
    }
    @media (max-width: 480px) {
      .city-grid, .city-grid-row2 { grid-template-columns: 1fr; }
    }
