/* MBH Locations index page (/locations/) — Locations/locations.css + the reference design adapted to Cornerstone markup.
   Reuses the FAQ page hero shell + slim GMB card (mbh-faq-page.css), the short CTA + pill form (mbh-testimonials-page.css)
   and the listed FAQ (mbh-location.css). Cornerstone nests Headline tags inside .x-text-content-text-primary. */

/* --- shared section heads --- */
.mbh-locs-head,
.mbh-page .mbh-locs-head.x-div{display:flex!important;flex-direction:column;align-items:center;text-align:center;gap:14px;width:100%}
.mbh-page .mbh-locs-head .mbh-h2,
.mbh-page .mbh-locs-head .mbh-h2 .x-text-content-text-primary,
.mbh-page .mbh-locs-head .mbh-h2 h2{font-size:clamp(32px,3.4vw,46px)!important;text-align:center!important;color:#1B1B18!important}
.mbh-page .mbh-locs-sub,
.mbh-page .mbh-locs-sub p{margin:0!important;max-width:720px;font-size:20px!important;line-height:1.6!important;color:#2A2A24!important;text-wrap:balance}

/* --- 1. hero (FAQ hero shell, own tint, stats panel) --- */
.mbh-page .mbh-locs-hero-sec .mbh-faq-hero__scrim{background:linear-gradient(180deg,rgba(20,26,12,.78) 0%,rgba(20,26,12,.66) 50%,rgba(20,26,12,.84) 100%)}
.mbh-page .mbh-locs-hero-sec .mbh-par img{object-position:50% 50%}
.mbh-page .mbh-locs-hero-sec .mbh-faq-hero.x-div{max-width:1040px;gap:26px;padding:clamp(64px,9vw,124px) 24px clamp(64px,8vw,112px)}
.mbh-page .mbh-locs-hero-sec .mbh-faq-lead{max-width:680px}
.mbh-page .mbh-locs-hero-sec .mbh-offer-pill.x-div{max-width:680px;margin-top:4px;border-radius:38px;box-shadow:0 24px 48px -18px rgba(0,0,0,.6)}
.mbh-page .mbh-locs-hero__call,
.mbh-page .mbh-locs-hero__call p{margin:0!important;font-size:17px!important;color:#fff!important}
.mbh-page .mbh-locs-hero__call a{color:#fff!important;font-weight:600;border-bottom:2px solid #A9C46C;text-decoration:none!important;white-space:nowrap}

.mbh-stats,
.mbh-page .mbh-stats.x-div{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 16px;width:100%;max-width:880px;margin:24px auto 0;padding:24px 20px;border-radius:24px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
@media (max-width:760px){.mbh-stats,.mbh-page .mbh-stats.x-div{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mbh-page .mbh-stat.x-div{display:flex!important;flex-direction:column;align-items:center;gap:6px;text-align:center}
.mbh-page .mbh-stat__num{margin:0!important;font-size:clamp(30px,3vw,40px)!important;line-height:1!important;font-weight:700!important;letter-spacing:-.02em;color:#fff!important}
.mbh-page .mbh-stat__label{margin:0!important;font-size:16px!important;line-height:1.35!important;color:#E3EAD2!important}

/* --- 2. why a local buyer (Mike cutout sits on the section's bottom edge) --- */
.mbh-page .x-section.mbh-locs-local{padding:96px 0 0!important;background:#fff;overflow:hidden}
.mbh-page .mbh-locs-local .mbh-wrap > .x-row-inner > .x-col{gap:48px!important}
.mbh-page .mbh-locs-local .mbh-h2,
.mbh-page .mbh-locs-local .mbh-h2 .x-text-content-text-primary,
.mbh-page .mbh-locs-local .mbh-h2 h2{font-size:clamp(32px,3.4vw,46px)!important;text-align:center!important;color:#1B1B18!important}
.mbh-locs-local__grid,
.mbh-page .mbh-locs-local__grid.x-div{display:grid!important;grid-template-columns:7fr 5fr;gap:32px 64px;align-items:end}
.mbh-page .mbh-locs-local__copy.x-div{display:flex!important;flex-direction:column;gap:20px;padding-bottom:96px}
.mbh-page .mbh-locs-local__copy .mbh-locs-p{margin:0!important;font-size:19px!important;line-height:1.75!important;color:#2A2A24!important;text-wrap:pretty}
.mbh-checks,
.mbh-page .mbh-checks{margin:4px 0 0!important;padding:0!important;list-style:none!important;display:flex;flex-direction:column;gap:12px}
.mbh-page .mbh-checks li{display:flex;gap:12px;margin:0;font-size:19px;line-height:1.5;color:#1B1B18}
.mbh-checks__ico{flex:none;margin-top:2px;width:26px;height:26px;border-radius:13px;background:#E3EAD2;color:#3E4F21;display:grid;place-items:center}
.mbh-page .mbh-locs-local__photo.x-div{position:relative!important;align-self:end;display:flex!important;justify-content:center}
.mbh-page .mbh-locs-local__photo .x-image{display:block;width:min(100%,460px);margin:0}
.mbh-page .mbh-locs-local__photo img{width:100%!important;height:auto;display:block}
.mbh-page .mbh-locs-tag.x-div{position:absolute!important;left:4%;bottom:40px;display:flex!important;flex-direction:column;gap:2px;padding:14px 18px;background:#fff;border-radius:16px;box-shadow:0 20px 40px -20px rgba(20,26,12,.45)}
.mbh-page .mbh-locs-tag__name{margin:0!important;font-size:18px!important;font-weight:600!important;color:#1B1B18!important}
.mbh-page .mbh-locs-tag__role{margin:0!important;font-size:15px!important;color:#3A3A32!important}
@media (max-width:900px){
  .mbh-locs-local__grid,.mbh-page .mbh-locs-local__grid.x-div{grid-template-columns:minmax(0,1fr)}
  .mbh-page .mbh-locs-local__copy.x-div{padding-bottom:0}
}

/* --- 3. service area map --- */
.mbh-page .x-section.mbh-locs-map{background:#F7F3E9}
.mbh-page .mbh-locs-map .mbh-wrap > .x-row-inner > .x-col{gap:36px!important}
.mbh-page .mbh-locs-map .mbh-map{height:clamp(560px,74vh,760px)}
@media (max-width:640px){.mbh-page .mbh-locs-map .mbh-map{height:520px}}

/* --- 4. city directory --- */
.mbh-page .x-section.mbh-locs-cities{background:#fff}
.mbh-page .mbh-locs-cities .mbh-wrap > .x-row-inner > .x-col{gap:40px!important}
.mbh-page .mbh-locs-cities .mbh-locs-head > .x-raw-content,
.mbh-page .mbh-locs-cities .mbh-locs-head > div:has(#mbh-city-q){width:100%;display:flex;flex-direction:column;align-items:center}
.mbh-page #mbh-city-q{font-family:Poppins,system-ui,sans-serif!important;-webkit-appearance:none;box-sizing:border-box}
.mbh-page #mbh-city-q:focus-visible{box-shadow:0 0 0 3px #A9C46C,0 20px 40px -28px rgba(20,26,12,.45)!important}
.mbh-locs-dir,
.mbh-page .mbh-locs-dir.x-div{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.mbh-page .mbh-locs-dir__col.x-div{display:flex!important;flex-direction:column;gap:20px;min-width:0}
@media (max-width:1000px){.mbh-locs-dir,.mbh-page .mbh-locs-dir.x-div{grid-template-columns:minmax(0,1fr)}}

.mbh-page .mbh-county.x-div{display:flex!important;flex-direction:column;gap:12px;padding:28px;background:#F7F3E9;border:1px solid #E6E2D2;border-radius:24px}
.mbh-page .mbh-county__top.x-div{display:flex!important;align-items:baseline;justify-content:space-between;gap:12px}
.mbh-page .mbh-county__name,
.mbh-page .mbh-county__name .x-text-content-text-primary,
.mbh-page .mbh-county__name h3{margin:0!important;font-family:Poppins,system-ui,sans-serif!important;font-size:24px!important;line-height:1.2!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;color:#1B1B18!important}
.mbh-page .mbh-county__count{margin:0!important;flex:none;font-size:16px!important;font-weight:600!important;color:#3E4F21!important}
.mbh-page .mbh-county__grid.x-div{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media (max-width:520px){.mbh-page .mbh-county__grid.x-div{grid-template-columns:minmax(0,1fr)}}

.mbh-page a.mbh-city-btn.x-div{display:flex!important;align-items:center;min-height:56px;padding:10px 18px;border-radius:16px;background:#fff;border:1px solid #DCD8C6;color:#1B1B18!important;text-decoration:none!important;transition:border-color .25s,background-color .25s,transform .25s}
.mbh-page .mbh-city-btn .x-text{margin:0;font-size:18px!important;line-height:1.3!important;font-weight:600!important;color:#1B1B18!important}
.mbh-city-btn__sub{display:block;margin-top:1px;font-size:15px;font-weight:400;color:#3A3A32}
@media (hover:hover) and (pointer:fine){.mbh-page a.mbh-city-btn.x-div:hover{border-color:#556B2F!important;background:#EEF0E6!important;transform:translateY(-2px)}}
.mbh-city-hide,
.mbh-page a.mbh-city-btn.mbh-city-hide.x-div,
.mbh-page .mbh-county.mbh-city-hide.x-div{display:none!important}
@media (prefers-reduced-motion:reduce){.mbh-page a.mbh-city-btn.x-div{transition:none}.mbh-page a.mbh-city-btn.x-div:hover{transform:none}}

.mbh-page .mbh-locs-nocity.x-div{display:flex!important;flex-direction:column;align-items:flex-start;gap:14px;padding:28px;background:#2E3A1C;color:#fff;border-radius:24px}
.mbh-page .mbh-locs-nocity h3,
.mbh-page .mbh-locs-nocity .x-text-content-text-primary{margin:0!important;font-family:Poppins,system-ui,sans-serif!important;font-size:24px!important;line-height:1.2!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important;color:#fff!important}
.mbh-page .mbh-locs-nocity__text{margin:0!important;font-size:18px!important;line-height:1.65!important;color:#fff!important}
.mbh-page .mbh-locs-nocity__note{margin:0!important;font-size:16px!important;line-height:1.6!important;color:#E3EAD2!important}
.mbh-page .mbh-locs-nocity a.mbh-locs-nocity__btn{display:inline-flex!important;align-items:center;height:56px;padding:0 24px!important;border-radius:28px!important;background:#fff!important;color:#1B1B18!important;font-size:18px!important;font-weight:600!important;text-decoration:none!important;transition:background-color .25s}
.mbh-page .mbh-locs-nocity a.mbh-locs-nocity__btn:hover{background:#E3EAD2!important;color:#1B1B18!important}

/* --- 5. reviews (3 cards on dark green) --- */
.mbh-page .x-section.mbh-locs-reviews{padding:80px 0!important;background:#2E3A1C;color:#fff}
.mbh-page .mbh-locs-reviews .mbh-wrap > .x-row-inner > .x-col{gap:36px!important}
.mbh-page .mbh-locs-reviews .mbh-h2,
.mbh-page .mbh-locs-reviews .mbh-h2 .x-text-content-text-primary,
.mbh-page .mbh-locs-reviews .mbh-h2 h2{font-size:clamp(28px,2.8vw,38px)!important;line-height:1.12!important;text-align:center!important;color:#fff!important}
.mbh-locs-badge{display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 18px;border-radius:24px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:17px;text-decoration:none;transition:background-color .25s}
.mbh-page .mbh-locs-badge{color:#fff!important;text-decoration:none!important}
.mbh-page .mbh-locs-badge:hover{background:rgba(255,255,255,.14)}
.mbh-locs-badge__stars{color:#E3B341;letter-spacing:1px}
.mbh-locs-revs,
.mbh-page .mbh-locs-revs.x-div{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
@media (max-width:1000px){.mbh-locs-revs,.mbh-page .mbh-locs-revs.x-div{grid-template-columns:minmax(0,1fr)}}
.mbh-page .mbh-locs-rev.x-div{display:flex!important;flex-direction:column;gap:16px;margin:0;padding:28px;background:#fff;color:#1B1B18;border-radius:24px}
.mbh-page .mbh-locs-rev__stars{margin:0!important;color:#B98A10!important;font-size:20px!important;letter-spacing:2px}
.mbh-page .mbh-locs-rev__quote{margin:0!important;font-size:18px!important;line-height:1.65!important;color:#1B1B18!important;text-wrap:pretty}
.mbh-page .mbh-locs-rev__by.x-div{margin-top:auto;display:flex!important;align-items:center;gap:12px}
.mbh-locs-rev__av{flex:none;width:44px;height:44px;border-radius:22px;color:#fff;display:grid;place-items:center;font-size:17px;font-weight:600}
.mbh-page .mbh-locs-rev__who{margin:0!important;display:flex;flex-direction:column;gap:2px}
.mbh-locs-rev__name{font-size:17px;font-weight:600;color:#1B1B18}
.mbh-locs-rev__sit{font-size:15px;font-weight:600;color:#3E4F21}

/* --- 6. GMB: H2 sits alone, no sub-line --- */
.mbh-page .mbh-locs-gmb .mbh-gmb__head{gap:0}

/* --- 7. FAQ (listed 3 + 3, sizes from the guide) --- */
.mbh-page .mbh-locs-faq .mbh-locs-sub,
.mbh-page .mbh-locs-faq .mbh-locs-sub p{font-size:19px!important;color:#3A3A32!important;max-width:640px}
.mbh-page .mbh-locs-faq .mbh-faq-list .mbh-faq-item h3,
.mbh-page .mbh-locs-faq .mbh-faq-list .mbh-faq-item .x-text-content-text-primary{font-family:Poppins,system-ui,sans-serif!important;font-size:21px!important;line-height:1.35!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important;color:#1B1B18!important;text-wrap:balance}
.mbh-page .mbh-locs-faq .mbh-faq-list .mbh-faq-item .x-text:not(.x-text-headline){margin:0!important;font-size:18px!important;line-height:1.7!important;color:#3A3A32!important;text-wrap:pretty}

@media (max-width:640px){
  .mbh-page .x-section.mbh-locs-local{padding:56px 0 0!important}
  .mbh-page .mbh-county.x-div,.mbh-page .mbh-locs-nocity.x-div,.mbh-page .mbh-locs-rev.x-div{padding:22px}
}
