html {
  font-size: 14px;
}

.blog-card-image {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.blog-article {
  max-width: 850px;
}

.blog-hero {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.blog-article-body {
  font-size: 1.1rem;
  line-height: 1.8;
}

.blog-article-body li {
  margin-bottom: 0.5rem;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
    margin-bottom: 60px;
    padding-bottom: 100px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

/* Page Header Styling */
.page-header {
  background: #fff;
  border-bottom: 1px solid #e3e6ed;
  padding: 1.5rem 0;
  margin-bottom: 2rem;
}

.page-header h1 {
  font-size: 1.5rem;
  font-weight: 600;
  margin: 0;
  color: #344050;
}

.page-header h1 i {
  color: #2c7be5;
}

/* Card Border Styles */
.pro-card {
  border: 5px solid white !important;
}


.pro-card-featured {
    border: 2px solid #2c7be5; /* your primary blue */
    box-shadow: 0 4px 12px rgba(44, 123, 229, 0.15);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

    .pro-card-featured:hover {
        transform: translateY(-2px);
        box-shadow: 0 8px 20px rgba(44, 123, 229, 0.25);
    }
[data-bs-theme="dark"] .pro-card {
  border: 1px solid rgba(13, 202, 240, 0.5) !important;
}

.category-card {
  border: 2px solid #0dcaf0 !important;
}

[data-bs-theme="dark"] .category-card {
  border: 2px solid rgba(13, 202, 240, 0.8) !important;
}

/* Universal info card with blue border in dark mode */
.info-card {
  border: 1px solid rgba(0, 0, 0, 0.125);
}

[data-bs-theme="dark"] .info-card {
  border: 1px solid rgba(13, 202, 240, 0.5) !important;
}

/* Grey Subtle Background */
.bg-grey-subtle {
  background-color: rgba(128, 128, 128, 0.1) !important;
}

@media (min-width: 768px) {
  .page-header h1 {
    font-size: 1.75rem;
  }
}

/* Dark mode page header */
[data-bs-theme="dark"] .page-header {
  background: #0b1727;
  border-bottom-color: #1e2e42;
}

[data-bs-theme="dark"] .page-header h1 {
  color: #b8c2cc;
}

/* Navbar Styling */
.navbar {
  padding: 0.5rem 1rem;
  transition: all 0.3s ease;
}

.navbar-brand {
  font-size: 1.25rem;
  transition: all 0.2s ease;
}

.navbar-brand:hover {
  opacity: 0.8;
}

.nav-link {
  font-weight: 500;
  color: #5e6e82 !important;
  padding: 0.5rem 1rem !important;
  transition: color 0.2s ease;
}

.nav-link:hover {
  color: #2c7be5 !important;
}

.nav-link i {
  color: #9da9bb;
  transition: color 0.2s ease;
}

.nav-link:hover i {
  color: #2c7be5;
}

#themeToggle {
  color: #5e6e82;
  border: none;
  padding: 0.5rem;
  transition: all 0.2s ease;
}

#themeToggle:hover {
  color: #2c7be5;
  background: transparent;
}

/* Dark mode navbar */
[data-bs-theme="dark"] .navbar {
  background: #0b1727 !important;
  border-bottom: 1px solid #1e2e42;
}

[data-bs-theme="dark"] .nav-link {
  color: #b8c2cc !important;
}

[data-bs-theme="dark"] .nav-link:hover {
  color: #2c7be5 !important;
}

[data-bs-theme="dark"] #themeToggle {
  color: #b8c2cc;
}

[data-bs-theme="dark"] #themeToggle:hover {
  color: #2c7be5;
}

footer.footer {
    position: relative;
    z-index: 1;
}

/* LocalPros homepage concept */
.lp-home-body { margin-bottom:0; padding-bottom:0; }
.lp-home-body footer.footer { margin-top:0!important; border-top:0!important; background:#092845; color:#d5e3ef!important; }
.lp-home-body footer.footer a { color:#c3ddf2; }
.lp-brand-lockup { display:flex; flex-direction:column; justify-content:center; line-height:1; }
.lp-brand-wordmark { color:#12385d; font-family:system-ui,-apple-system,"Segoe UI",sans-serif; font-size:1.35rem; font-weight:820; letter-spacing:-.045em; white-space:nowrap; }
.lp-brand-pros { color:#d2183a; }
.lp-brand-tagline { margin-top:3px; color:#5d7287; font-family:system-ui,-apple-system,"Segoe UI",sans-serif; font-size:.4rem; font-weight:750; letter-spacing:.75px; white-space:nowrap; }
.lp-full-width-main { min-height: 0; padding-bottom: 0; }
.lp-home { --lp-navy:#12385d; --lp-navy-deep:#0d2d4d; --lp-red:#d2183a; --lp-ink:#183652; --lp-muted:#62758a; --lp-line:#dce6f0; color:var(--lp-ink); overflow:hidden; font-family:system-ui,-apple-system,"Segoe UI",sans-serif; }
.lp-home h1,.lp-home h2,.lp-home h3,.lp-home button,.lp-home input { font-family:inherit; }
.lp-home .container-xl { max-width: 1280px; }
.lp-nav-link { color:#193b5b!important; font-size:.86rem; font-weight:700; }
.lp-nav-location { max-width:260px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; border-color:#c7d5e5; color:#173958; font-size:.78rem; font-weight:650; }
.lp-nav-location:hover { border-color:#9fb6cc; color:#173958; background:#f4f8fc; }
.lp-home-hero { --lp-hero-image:url('/img/home/hero.svg'); --lp-hero-overlay:linear-gradient(90deg,#f5faff 0%,#f5faff 45%,rgba(245,250,255,.88) 60%,rgba(245,250,255,.15) 100%); position:relative; z-index:100; isolation:isolate; background:var(--lp-hero-overlay),var(--lp-hero-image) center right/cover no-repeat; }
.lp-home-hero-ms { --lp-hero-image:url('/img/home/hero-ms-dog-walker-clean.jpg'); --lp-hero-overlay:linear-gradient(90deg,rgba(245,250,255,.48) 0%,rgba(245,250,255,.43) 34%,rgba(245,250,255,.18) 57%,rgba(245,250,255,0) 76%); background:none; }
.lp-hero-carousel,.lp-hero-image-wash { position:absolute; z-index:0; inset:0; overflow:hidden; pointer-events:none; }
.lp-hero-slide { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; object-position:center; opacity:0; transition:opacity 1s ease-in-out; }
.lp-hero-slide-dog-walker { object-position:center top; }
.lp-hero-slide.is-active { opacity:1; }
.lp-hero-image-wash { z-index:1; background:linear-gradient(90deg,rgba(245,250,255,.24) 0%,rgba(245,250,255,.22) 38%,rgba(245,250,255,.2) 68%,rgba(245,250,255,.18) 100%); }
.lp-hero-state-shape { position:absolute; z-index:2; top:0; left:10%; width:31%; height:100%; object-fit:contain; opacity:.3; pointer-events:none; }
.lp-hero-state-shape-tn { left:8%; width:55%; transform:translateY(-150px); }
.lp-hero-inner { position:relative; z-index:3; padding-top:76px; padding-bottom:66px; }
.lp-eyebrow { margin-bottom:12px; color:#3d6c94; font-size:.72rem; font-weight:800; letter-spacing:1.45px; }
.lp-eyebrow .bi { color:var(--lp-red); margin-right:4px; }
.lp-home-hero h1 { margin:0 0 20px; color:var(--lp-navy); font-size:clamp(2.65rem,5.4vw,4.85rem); font-weight:800; line-height:1.07; letter-spacing:-.025em; }
.lp-home-hero h1 span { color:var(--lp-red); }
.lp-hero-lead { max-width:840px; margin:0; color:#425d77; font-size:1.08rem; line-height:1.7; }
.lp-hero-art { position:relative; min-height:345px; }
.lp-art-label { position:absolute; right:0; bottom:5px; display:inline-flex; align-items:center; gap:8px; padding:11px 15px; border:1px solid rgba(255,255,255,.65); border-radius:30px; background:rgba(255,255,255,.88); box-shadow:0 8px 26px #12385d1a; color:var(--lp-navy); font-size:.8rem; font-weight:700; }
.lp-art-label .bi { color:#308060; }
.lp-hero-accent { position:absolute; z-index:-1; right:-9%; bottom:-130px; width:42%; height:230px; border-radius:50%; background:rgba(44,112,151,.12); filter:blur(2px); }
.lp-search-panel { position:relative; z-index:101; display:flex; gap:10px; max-width:1080px; margin-top:30px; padding:11px; border:1px solid #e2e9f1; border-radius:15px; background:#fff; box-shadow:0 15px 42px #0d315824; }
.lp-search-field { position:relative; z-index:102; display:flex; flex:1 1 auto; min-width:0; align-items:center; gap:10px; padding:0 7px 0 9px; }
.lp-search-field>.bi { flex:none; color:#8294a8; font-size:1.15rem; }
.lp-search-field input { width:100%; min-width:0; height:47px; border:0; outline:0; color:var(--lp-ink); font-size:.94rem; }
.lp-search-field input::placeholder { color:#8595a7; }
.lp-home .lp-btn-red { flex:none; border-color:var(--lp-red); border-radius:9px; background:var(--lp-red); color:#fff; font-weight:750; padding:.75rem 1.2rem; }
.lp-home .lp-btn-red:hover { border-color:#ac1230; background:#ac1230; color:#fff; }
.lp-search-results { position:absolute; z-index:103; top:calc(100% + 15px); left:-10px; right:-10px; max-height:24rem; overflow:auto; border:1px solid #dce5ef; border-radius:12px; background:#fff; box-shadow:0 16px 35px #102f5025; }
.lp-home #searchResultsContainer.lp-search-results { z-index:104; isolation:isolate; border:2px solid #9fb3c8; background:#fff!important; background-color:#fff!important; background-image:none!important; opacity:1; backdrop-filter:none; -webkit-backdrop-filter:none; box-shadow:0 16px 38px rgba(13,45,77,.28); }
.lp-home #searchResultsContainer.lp-search-results>* { background:#fff!important; background-color:#fff!important; background-image:none!important; opacity:1; }
.lp-quick-links { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:16px; color:#596e84; font-size:.78rem; }
.lp-quick-links>span { font-weight:800; }
.lp-quick-links a,.lp-service-links a { border:1px solid #d3dfeb; border-radius:20px; padding:5px 11px; background:rgba(255,255,255,.82); color:var(--lp-navy); text-decoration:none; }
.lp-quick-links a:hover,.lp-service-links a:hover { border-color:var(--lp-red); color:var(--lp-red); }
.lp-stats { margin:0!important; padding:0!important; min-height:0!important; background:var(--lp-navy); color:#fff; }
.lp-stats-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:0!important; margin-bottom:0!important; padding:14px 0!important; min-height:0; height:auto; }
.lp-stat { display:flex; align-items:center; justify-content:center; gap:14px; min-width:0; min-height:0; padding:6px 18px; border-right:1px solid #ffffff38; }
.lp-stat:last-child { border:0; }
.lp-stat-icon { display:grid; flex:none; width:42px; height:42px; place-items:center; border-radius:12px; background:#ffffff18; color:#b9ddf5; font-size:1.3rem; }
.lp-stat strong,.lp-stat span:not(.lp-stat-icon) { display:block; }
.lp-stat strong { font-size:1.35rem; line-height:1.2; }
.lp-stat div>span { color:#dceafa; font-size:.75rem; }
.lp-video-band { padding:64px 0; background:#fff; }
.lp-video-wrap { overflow:hidden; border-radius:16px; background:#e9f0f7; box-shadow:0 14px 34px #12385d1c; }
.lp-story-copy h2,.lp-coverage h2,.lp-business-cta h2 { margin-bottom:15px; color:var(--lp-navy); font-size:clamp(1.85rem,3vw,2.7rem); font-weight:800; letter-spacing:-.025em; line-height:1.12; }
.lp-story-copy p,.lp-coverage p,.lp-business-cta p { max-width:560px; color:#5d7185; line-height:1.7; }
.lp-text-link { color:var(--lp-red); font-weight:750; text-decoration:none; }
.lp-text-link:hover { color:#a91630; }
.lp-section { padding-top:76px; padding-bottom:76px; }
.lp-section-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:28px; }
.lp-section-heading h2 { margin:0 0 8px; color:var(--lp-navy); font-size:clamp(1.85rem,3vw,2.55rem); font-weight:800; letter-spacing:-.025em; }
.lp-section-heading p { margin:0; color:#64778a; }
.lp-outline-link { display:inline-flex; align-items:center; gap:8px; flex:none; border:1px solid #cbd9e7; border-radius:8px; padding:9px 13px; background:#fff; color:var(--lp-navy); font-size:.84rem; font-weight:700; text-decoration:none; }
.lp-outline-link:hover { border-color:var(--lp-red); color:var(--lp-red); }
.lp-parent-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.lp-parent-card { display:flex; min-height:124px; flex-direction:column; align-items:center; justify-content:center; gap:10px; padding:16px 12px; border:1px solid var(--lp-line); border-radius:13px; background:#fff; box-shadow:0 4px 14px #12385d0a; color:var(--lp-navy); font-size:.84rem; font-weight:750; text-align:center; transition:transform .16s,border-color .16s,background .16s; }
.lp-parent-card>i { color:#3474a7; font-size:1.85rem; }
.lp-parent-card:hover,.lp-parent-card.active { transform:translateY(-2px); border-color:#9bbbd5; background:#f1f7fc; }
.lp-parent-card.active { box-shadow:inset 0 -3px var(--lp-red),0 7px 18px #12385d10; }
.lp-parent-card.active>i { color:var(--lp-red); }
.lp-view-all { display:block; margin:17px auto 0; border:0; background:transparent; color:#286d9f; font-size:.87rem; font-weight:750; }
.lp-view-all:hover { color:var(--lp-red); }
.lp-children-panel { margin-top:20px; padding:27px; border:1px solid #d6e3ef; border-radius:17px; background:#f7fafd; }
.lp-children-panel[hidden] { display:none; }
.lp-panel-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.lp-panel-heading h3 { margin:0 0 5px; color:var(--lp-navy); font-size:1.55rem; font-weight:800; }
.lp-panel-heading p { margin:0; color:#64778a; }
.lp-panel-heading>i { color:#3975a5; font-size:2.5rem; }
.lp-children-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:22px; }
.lp-child-card { display:flex; min-height:76px; align-items:center; gap:11px; padding:14px; border:1px solid #e0e8f1; border-radius:10px; background:#fff; color:var(--lp-navy); font-size:.84rem; font-weight:700; text-decoration:none; transition:border-color .16s,box-shadow .16s; }
.lp-child-card>i:first-child { flex:none; color:var(--lp-red); font-size:1.2rem; }
.lp-child-card:hover { border-color:var(--lp-red); box-shadow:0 6px 16px #d2183a12; color:var(--lp-red); }
.lp-child-card .lp-card-arrow { margin-left:auto; color:#8192a5; font-size:.8rem; }
.lp-service-links { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:20px; color:#526b81; font-size:.8rem; }
.lp-service-links>span { margin-right:4px; font-weight:800; }
.lp-coverage { padding:72px 0; background:#eef4fa; }
.lp-current-area { display:flex; align-items:center; gap:13px; max-width:420px; padding:14px 17px; border:1px solid #d7e3ef; border-radius:12px; background:#fff; }
.lp-current-area>i { color:var(--lp-red); font-size:1.7rem; }
.lp-current-area small,.lp-current-area strong { display:block; }
.lp-current-area small { color:#718398; font-size:.63rem; font-weight:800; letter-spacing:1px; }
.lp-current-area strong { color:var(--lp-navy); }
.lp-home .lp-btn-navy { border-radius:8px; background:var(--lp-navy); color:#fff; font-weight:700; padding:.7rem 1rem; }
.lp-home .lp-btn-navy:hover { background:#1b4d79; color:#fff; }
.lp-map-card { padding:18px; border:1px solid #d8e3ed; border-radius:17px; background:#fff; box-shadow:0 8px 24px #12385d0c; }
.lp-map-heading { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:8px; margin-bottom:12px; }
.lp-map-heading strong { color:var(--lp-navy); font-size:1rem; }
.lp-map-heading span,.lp-map-tools { color:#6b7e91; font-size:.75rem; }
#leafletCoverageMap { z-index:0; width:100%; height:335px; border-radius:11px; background:#e7eff6; }
.lp-map-tools { display:flex; flex-wrap:wrap; align-items:center; gap:11px; margin:10px 0; }
.lp-map-marker-wrap { border:0; background:transparent; }
.lp-map-marker { display:grid; width:40px; height:40px; place-items:center; border:3px solid #fff; border-radius:50%; background:#2474ae; box-shadow:0 2px 9px #102f5060; color:#fff; font-size:.72rem; font-weight:850; }
.lp-map-marker.is-current { background:var(--lp-red); }
.lp-map-state-buttons { display:flex; flex-wrap:wrap; gap:8px; }
.lp-map-state-buttons button { border:1px solid #cfdae6; border-radius:20px; padding:7px 12px; background:#f7fafd; color:var(--lp-navy); font-size:.78rem; font-weight:700; }
.lp-map-state-buttons button:hover { border-color:var(--lp-red); color:var(--lp-red); }
.lp-map-state-buttons button.is-active { border-color:var(--lp-red); background:var(--lp-red); color:#fff; }
.lp-cities-section { padding-top:54px; padding-bottom:54px; background:#fff; }
.lp-cities-card { padding:32px; border:1px solid #dce6f0; border-radius:17px; background:#f8fbfe; }
.lp-cities-card h2 { margin:0 0 7px; color:var(--lp-navy); font-size:clamp(1.6rem,2.5vw,2.25rem); font-weight:820; letter-spacing:-.035em; }
.lp-city-chips { display:flex; flex-wrap:wrap; gap:9px; }
.lp-city-chip { display:inline-flex; align-items:center; gap:5px; border:1px solid #d4e1ee; border-radius:22px; padding:8px 13px; background:#fff; color:var(--lp-navy); font-size:.82rem; font-weight:650; text-decoration:none; }
.lp-city-chip i { color:#7189a0; font-size:.7rem; }
.lp-city-chip:hover { border-color:var(--lp-red); color:var(--lp-red); }
.lp-featured-section { padding-top:62px; }
.lp-business-card { display:flex; align-items:center; gap:13px; padding:15px; border:1px solid var(--lp-line); border-radius:12px; background:#fff; box-shadow:0 4px 13px #12385d09; }
.lp-business-logo { display:grid; flex:none; width:54px; height:54px; place-items:center; overflow:hidden; border-radius:10px; background:#edf4fa; color:#477ba5; font-size:1.35rem; }
.lp-business-logo img { width:100%; height:100%; object-fit:cover; }
.lp-business-card h3 { margin:0 0 5px; font-size:.93rem; font-weight:780; }
.lp-business-card h3 a { color:var(--lp-navy); text-decoration:none; }
.lp-business-card h3 a:hover { color:var(--lp-red); }
.lp-business-card p { margin:0; color:#728397; font-size:.75rem; }
.lp-blog-card { overflow:hidden; border:1px solid var(--lp-line); border-radius:13px; background:#fff; box-shadow:0 5px 17px #12385d0a; }
.lp-blog-card>a:first-child { display:block; overflow:hidden; }
.lp-blog-card img { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; transition:transform .25s; }
.lp-blog-card:hover img { transform:scale(1.025); }
.lp-blog-copy { display:flex; height:calc(100% - 0px); flex-direction:column; padding:18px; }
.lp-blog-copy h3 { margin:0 0 9px; font-size:1.07rem; font-weight:780; }
.lp-blog-copy h3 a { color:var(--lp-navy); text-decoration:none; }
.lp-blog-copy h3 a:hover { color:var(--lp-red); }
.lp-blog-copy p { color:#63778b; font-size:.88rem; }
.lp-business-cta { padding:68px 0; border-top:1px solid #f0e1e5; background:linear-gradient(115deg,#fff4f5,#fff 56%,#f0f6fc); }
.lp-business-cta .lp-eyebrow { color:var(--lp-red); }
.lp-benefit { height:100%; padding:19px; border:1px solid #e4e9ef; border-radius:13px; background:#fff; }
.lp-benefit>i { color:var(--lp-red); font-size:1.75rem; }
.lp-benefit h3 { margin:12px 0 6px; color:var(--lp-navy); font-size:.92rem; font-weight:800; }
.lp-benefit p { margin:0; font-size:.8rem; }
.lp-location-modal { border:0; border-radius:14px; box-shadow:0 18px 50px #0c274238; }
@media (max-width:991px) {
    .lp-hero-inner { padding-top:58px; padding-bottom:48px; }
    .lp-stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .lp-stat:nth-child(2) { border-right:0; }
    .lp-stat:nth-child(-n+2) { border-bottom:1px solid #ffffff38; }
    .lp-parent-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .lp-children-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:575px) {
    .lp-home-hero { background-image:var(--lp-hero-overlay),var(--lp-hero-image); background-position:center,center; background-size:auto,cover; background-repeat:no-repeat; }
    .lp-home-hero-ms { background:none; }
    .lp-home-hero-ms .lp-hero-slide { object-position:72% center; }
    .lp-home-hero-ms .lp-hero-slide-dog-walker { object-position:72% top; }
    .lp-hero-state-shape { top:0; left:1%; width:43%; height:100%; }
    .lp-hero-state-shape-tn { left:0; width:100%; }
    .lp-hero-inner { padding-top:43px; padding-bottom:40px; }
    .lp-home-hero h1 { font-size:2.65rem; }
    .lp-hero-lead { font-size:.98rem; }
    .lp-search-panel { gap:7px; margin-top:22px; padding:8px; }
    .lp-search-field { padding-left:4px; }
    .lp-search-field input { font-size:.82rem; }
    .lp-home .lp-btn-red { padding:.65rem .8rem; font-size:.84rem; }
    .lp-quick-links { gap:6px; }
    .lp-quick-links a { padding:4px 9px; font-size:.72rem; }
    .lp-stats-grid { padding:10px 0!important; }
    .lp-stat { justify-content:flex-start; gap:8px; padding:5px 7px; }
    .lp-stat-icon { width:33px; height:33px; border-radius:9px; font-size:1rem; }
    .lp-stat strong { font-size:1.08rem; }
    .lp-stat div>span { font-size:.65rem; }
    .lp-video-band { padding:40px 0; }
    .lp-section,.lp-coverage { padding-top:49px; padding-bottom:49px; }
    .lp-section-heading { align-items:flex-start; flex-direction:column; gap:14px; }
    .lp-parent-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    .lp-parent-card { min-height:107px; padding:12px 8px; font-size:.76rem; }
    .lp-parent-card>i { font-size:1.6rem; }
    .lp-children-panel { padding:18px; }
    .lp-panel-heading>i { font-size:1.9rem; }
    .lp-children-grid { grid-template-columns:1fr; gap:8px; }
    .lp-child-card { min-height:60px; padding:11px; }
    .lp-map-card { padding:12px; }
    #leafletCoverageMap { height:265px; }
    .lp-cities-card { padding:20px; }
    .lp-city-chip { padding:7px 10px; font-size:.75rem; }
    .lp-business-cta { padding:48px 0; }
}
