/* Mobile readability and wrapping repair, shared by every page. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media(max-width:768px){
body{min-width:0!important;overflow-wrap:break-word}
main,section,article,footer,header,nav{box-sizing:border-box;max-width:100%}
.hero,.city-hero{height:auto!important;min-height:0!important;padding:40px 20px!important}
.hero-content,.city-hero-content,.hero-text,.section-header,.about-text{min-width:0!important;max-width:100%!important}
.hero h1,.city-hero h1,.page-header h1,.post-hero h1{font-size:clamp(26px,7.2vw,34px)!important;line-height:1.15!important;letter-spacing:0!important}
.section-header h2,.why-section h2,.why-choose h2,.about-text h2,.cta-banner h2,.blog-section .section-header h2{font-size:clamp(21px,5.6vw,26px)!important;line-height:1.25!important;letter-spacing:0!important;margin-bottom:16px!important;word-break:normal!important;text-wrap:balance}
.section-header{margin-bottom:28px!important}
.services-section,.content-section,.why-section,.why-choose,.areas-section,.service-areas,.gallery-section,.reviews-section,.blog-section,.about-section,.cta-banner{padding:40px 20px!important}
.service-card h3{font-size:20px!important;line-height:1.3!important}
p{line-height:1.65}
.hero-cta,.hero-buttons,.cta-btns{display:flex!important;flex-direction:column!important;align-items:center!important;gap:14px!important;width:100%!important}
a.btn,a.btn-primary,a.btn-secondary,button.btn{box-sizing:border-box!important;display:inline-flex!important;justify-content:center!important;align-items:center!important;width:100%!important;max-width:360px!important;min-width:0!important;min-height:48px!important;height:auto!important;padding:14px 18px!important;margin:8px auto!important;font-size:14px!important;line-height:1.4!important;letter-spacing:.4px!important;white-space:normal!important;text-align:center!important;overflow-wrap:normal!important;word-break:normal!important;vertical-align:middle!important}
.services-grid,.why-grid,.benefits-grid,.reviews-grid,.footer-grid,.blog-grid{grid-template-columns:minmax(0,1fr)!important;min-width:0!important}
.service-card,.why-card,.benefit-item{min-width:0!important;max-width:100%!important}
.about-inner{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
.footer-container{min-width:0!important;max-width:100%!important}
footer{padding:36px 20px 24px!important}
footer a,footer p{overflow-wrap:anywhere}
}
