/* a title that is plain text (not a heading) keeps the colour of its panel */
p.ph2.ph2.ph2,p.ph3.ph3.ph3{color:inherit}
p.ph2.ph2.ph2,p.ph3.ph3.ph3,h2.as3.as3.as3{max-width:none}
/* One Call Now button per site (colour from --cta, set per page) and the app-style bottom bar on phones and small tablets */
a.cta-call,a.cta-call:visited{background:var(--cta,#14325c)!important;color:var(--cta-ink,#fff)!important;border-color:var(--cta,#14325c)!important;text-decoration:none;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cta-ink,#fff) 22%,var(--cta,#14325c)),0 1px 0 rgba(0,0,0,.12),0 10px 20px -12px color-mix(in srgb,var(--cta,#14325c) 85%,#000)!important;transition:background-color .15s ease,transform .1s ease}
a.cta-call:hover,a.cta-call:focus-visible{background:var(--cta-hover,#0f2547)!important;border-color:var(--cta-hover,#0f2547)!important;color:var(--cta-ink,#fff)!important}
a.cta-call:focus-visible{outline:3px solid color-mix(in srgb,var(--cta,#14325c) 45%,#fff);outline-offset:2px}
a.cta-call:active{transform:translateY(1px)}
a.cta-call svg{stroke:currentColor!important;color:inherit}

.app-bar{display:none}
@media(max-width:900px){
  header .menu-toggle,header .main-nav,header .primary-nav,header nav.nav,header .header-call,header .nav-cta{display:none!important}
  body.has-app-bar{padding-bottom:calc(112px + env(safe-area-inset-bottom))}
  .mobile-bar,.mobile-call{display:none!important}
  .app-bar{display:block;position:fixed;z-index:90;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));max-width:620px;margin:0 auto;padding:7px 8px 8px;border-radius:24px;background:rgba(255,255,255,.97);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);border:1px solid rgba(15,23,42,.1);box-shadow:0 14px 34px -10px rgba(15,23,42,.35),0 2px 8px rgba(15,23,42,.1);font-family:inherit;color:#1f2933}
  .app-bar .tr-mobile{margin:0}
  .app-bar .tr-mobile:not([hidden]){display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:4px 14px;padding:1px 0 7px;font-size:12px;line-height:1.2;font-weight:600;color:#1f2933}
  .app-bar .tr-mobile .tr-pill{padding:0;border:0;background:transparent;box-shadow:none;gap:4px;font-size:12px}
  .app-bar .tr-mobile .tr-stars{font-size:13px;letter-spacing:0}
  .app-bar .tr-mobile .tr-count{font-size:12px}
  .ab-row{display:grid;grid-template-columns:1fr 1fr minmax(0,1.85fr) 1fr;align-items:stretch;gap:4px}
  .ab-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:52px;padding:4px 2px;border-radius:16px;color:#3b4656;font-size:12px;font-weight:600;line-height:1.1;font-family:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background-color .15s ease,color .15s ease}
  .ab-tab svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .ab-tab:active{background:rgba(15,23,42,.07)}
  .ab-tab[aria-current]{color:var(--ab-active,#14325c);background:color-mix(in srgb,var(--cta,#14325c) 11%,#fff)}
  .ab-tab[aria-current] svg{stroke-width:2.1}
  .ab-call{display:flex;align-items:center;justify-content:center;gap:9px;min-height:52px;padding:0 12px;border-radius:17px;font-size:16px;font-weight:700;line-height:1;font-family:inherit;letter-spacing:.01em;white-space:nowrap}
  .ab-call svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
  .ab-tab:focus-visible{outline:3px solid color-mix(in srgb,var(--cta,#14325c) 45%,#fff);outline-offset:1px}
}
@media(max-width:350px){.app-bar{left:6px;right:6px;padding:6px 5px 7px}.ab-tab{font-size:11px}.ab-call{font-size:14px;gap:6px;padding:0 6px}.ab-call svg{width:18px;height:18px}.ab-row{grid-template-columns:1fr 1fr minmax(0,1.7fr) 1fr}}
@media(max-width:430px){.card-body h3,.service-body h3{font-size:clamp(17px,4.9vw,24px);overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){a.cta-call,.ab-tab{transition:none}}
@media(forced-colors:active){.app-bar{border:2px solid CanvasText}.ab-tab[aria-current]{outline:2px solid Highlight}}
@media print{.app-bar{display:none!important}}
