.hm-geo-r1 .geo-r1-hero p:not(.eyebrow):not(.breadcrumbs){max-width:760px;font-size:18px}
.hm-geo-r1 .geo-r1-narrow{max-width:980px}
.hm-geo-r1 .geo-r1-narrow>h2{font-size:clamp(36px,4.5vw,64px);margin:.12em 0 .35em}
.hm-geo-r1 .geo-r1-faq-grid>div{min-width:0}
.hm-geo-r1 .geo-r1-faq-grid>div>h2{font-size:clamp(30px,3.2vw,44px);margin:.12em 0 .35em;overflow-wrap:anywhere}
.hm-geo-r1 .geo-r1-city-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.hm-geo-r1 .geo-r1-city-card{display:flex;flex-direction:column;min-width:0;min-height:250px;padding:28px;border:1px solid var(--line);background:var(--paper)}
.hm-geo-r1 .geo-r1-city-card h3{font-size:26px;margin:0 0 12px}
.hm-geo-r1 .geo-r1-city-card a{margin-top:auto;font-weight:900}
.hm-geo-r1 .geo-r1-item-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:30px}
.hm-geo-r1 .geo-r1-context .geo-r1-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.hm-geo-r1 .geo-r1-item-grid article{min-width:0;padding:24px;border:1px solid var(--line);background:var(--paper)}
.hm-geo-r1 .geo-r1-item-grid h3,.hm-geo-r1 .geo-r1-columns h3,.hm-geo-r1 .geo-r1-timeline h3{font-size:22px;margin:0 0 10px;overflow-wrap:anywhere}
.hm-geo-r1 .dark .geo-r1-item-grid article{background:var(--pine);border-color:rgba(255,255,255,.28)}
.hm-geo-r1 .geo-r1-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:30px}
.hm-geo-r1 .geo-r1-columns article{min-width:0;padding:28px;border-left:6px solid var(--coral);background:var(--paper);color:var(--ink)}
.hm-geo-r1 .geo-r1-timeline{counter-reset:geo-step;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:0;margin:30px 0 0;list-style:none;background:var(--line)}
.hm-geo-r1 .geo-r1-timeline li{counter-increment:geo-step;min-width:0;padding:30px;background:var(--paper);color:var(--ink)}
.hm-geo-r1 .geo-r1-timeline li:before{content:counter(geo-step,decimal-leading-zero);display:block;margin-bottom:18px;color:var(--coral);font-weight:900}
.hm-geo-r1 .geo-r1-service-links{display:flex;flex-wrap:wrap;gap:12px}
.hm-geo-r1 .geo-r1-service-links a{display:flex;align-items:center;min-height:48px;padding:11px 16px;border:1px solid var(--line);background:var(--paper);font-weight:900;text-decoration:none}
.hm-geo-r1 .geo-r1-service-links a:hover,.hm-geo-r1 .geo-r1-service-links a:focus-visible{background:var(--mint)}
.hm-geo-r1 .geo-r1-faq-grid{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:56px;align-items:start}
.hm-geo-r1 .geo-r1-faq .pricing{margin-top:34px}
.hm-geo-r1 .geo-r1-faq .pricing h3{font-size:30px;margin:.2em 0}
.hm-geo-r1 .geo-r1-route img{width:100%;aspect-ratio:4/5;object-fit:cover}
.hm-geo-r1 .geo-r1-decision p{max-width:760px;font-size:18px}
.hm-geo-r1 .geo-r1-content.dark .eyebrow,.hm-geo-r1 .geo-r1-route .eyebrow,.hm-geo-r1 .geo-r1-decision .eyebrow{color:var(--mint)}
.hm-geo-r1 .geo-r1-media{background:var(--paper)}
.hm-geo-r1 .geo-r1-official-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.hm-geo-r1 .geo-r1-official-card{display:flex;flex-direction:column;min-width:0;min-height:275px;padding:28px;border:1px solid var(--line);background:var(--paper)}
.hm-geo-r1 .geo-r1-official-card h3{font-size:24px;margin:8px 0 12px;overflow-wrap:anywhere}
.hm-geo-r1 .geo-r1-official-card a{margin-top:auto;font-weight:900}
.hm-geo-r1 .geo-r1-official-source{margin:0;color:var(--pine);font-size:12px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
@media(max-width:900px){body.hm-geo-r1.wp-theme-hebertandsonsmovers .mobile-bar{display:grid!important}}

@media(max-width:900px){
 .hm-geo-r1 .geo-r1-city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hm-geo-r1 .geo-r1-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hm-geo-r1 .geo-r1-official-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hm-geo-r1 .geo-r1-faq-grid{grid-template-columns:1fr;gap:28px}
 .hm-geo-r1 .geo-r1-timeline{grid-template-columns:1fr}
 body.hm-geo-r1 .mobile-bar:not(.geo-bar-safe){transition:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}
}

@media(max-width:560px){
 .hm-geo-r1 .geo-r1-city-grid,.hm-geo-r1 .geo-r1-item-grid,.hm-geo-r1 .geo-r1-context .geo-r1-item-grid,.hm-geo-r1 .geo-r1-columns,.hm-geo-r1 .geo-r1-official-grid{grid-template-columns:1fr}
 .hm-geo-r1 .geo-r1-official-card{min-height:0}
 .hm-geo-r1 .geo-r1-city-card{min-height:0}
 .hm-geo-r1 .geo-r1-service-links{display:grid;grid-template-columns:1fr}
 .hm-geo-r1 .geo-r1-narrow>h2{font-size:39px}
}

/* City views retain their own slot and visible photographer credit. */
.hm-geo-r1 .hm-city-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:48px;align-items:center}
.hm-geo-r1 .hm-city-hero-copy{min-width:0}
.hm-geo-r1 .hm-city-hero{min-width:0;margin:0}
.hm-geo-r1 .hm-city-hero img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line)}
.hm-geo-r1 .hm-city-hero figcaption{margin-top:7px;font-size:12px;line-height:1.45;color:var(--ink)}
.hm-geo-extension .hm-city-hero{margin-top:24px}
.hm-geo-extension .hm-city-hero img{aspect-ratio:16/9}
@media(max-width:900px){
 .hm-geo-r1 .hm-city-hero-grid{grid-template-columns:minmax(0,1fr);gap:18px}
 .hm-geo-r1 .hm-city-hero img{height:200px;aspect-ratio:auto}
 .hm-geo-extension .hm-city-hero{margin-top:16px}
}
@media(max-width:560px){
 body.hm-geo-r1-detail .page-hero{padding:18px 0}
 .hm-geo-r1-detail .geo-r1-hero p:not(.eyebrow):not(.breadcrumbs){font-size:15px;line-height:1.45;margin:8px 0}
 .hm-geo-r1-detail .geo-r1-hero .eyebrow,.hm-geo-r1-detail .geo-r1-hero .hero-actions{display:none}
 .hm-geo-r1-detail .geo-r1-hero .breadcrumbs{font-size:11px;margin:0 0 8px}
 .hm-geo-r1 .hm-city-hero-grid{gap:12px}
 .hm-geo-r1 .hm-city-hero img{height:160px}
 .hm-geo-r1 .hm-city-hero figcaption{font-size:11px;margin-top:5px}
}

/* Preserve the focal subjects in the wider tablet frame. */
@media(min-width:561px) and (max-width:900px){
 .hm-geo-r1-dracut .hm-city-hero img{object-position:50% 70%!important}
 .hm-geo-r1-tyngsborough .hm-city-hero img{object-position:50% 35%!important}
}


/* Chelmsford estimate checklist: keep decision cards readable inside the split section. */
.hm-geo-r1-chelmsford .geo-r1-route .editorial-grid{grid-template-columns:minmax(280px,.65fr) minmax(0,1.35fr)}
.hm-geo-r1-chelmsford .geo-r1-route .geo-r1-item-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}
.hm-geo-r1-chelmsford .geo-r1-route .geo-r1-item-grid article:last-child:nth-child(odd){grid-column:1/-1}
.hm-geo-r1-chelmsford .geo-r1-route .geo-r1-item-grid h3{overflow-wrap:normal;word-break:normal}
@media(max-width:900px){
 .hm-geo-r1-chelmsford .geo-r1-route .editorial-grid{grid-template-columns:1fr}
 .hm-geo-r1-chelmsford .geo-r1-route .geo-r1-item-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}
}
@media(max-width:560px){
 .hm-geo-r1-chelmsford .geo-r1-route .geo-r1-item-grid{grid-template-columns:1fr}
 .hm-geo-r1-chelmsford .geo-r1-route .geo-r1-item-grid article:last-child:nth-child(odd){grid-column:auto}
}
