/* Final publication pass: unchanged map geometry, moved below reviews. */
.coverage-section{padding:64px 0 0;background:#f5f7f8}
.coverage-layout{gap:0}
.coverage-layout>.coverage-card{grid-row:auto;margin:0;box-shadow:0 8px 28px #1327380d}
.service-content h3,.loc-service-grid h3{font-size:24px;line-height:1.25;letter-spacing:-.025em;overflow-wrap:break-word}
.loc-service-grid article,.service-content{min-width:0}
.arrival-note{font-weight:600;color:var(--ink)}
.loc-call-note{max-width:47ch;line-height:1.65}
@media(max-width:680px){
 .coverage-section{padding:36px 0 0}
 .coverage-layout>.coverage-card{margin:0;order:initial}
 .service-content h3,.loc-service-grid h3{font-size:23px;max-width:25ch;margin-inline:auto}
 .loc-call-note{max-width:36ch;margin-inline:auto}
 .arrival-note{max-width:36ch;margin-inline:auto}
}
/* Restore accessible mobile navigation, previously hidden by the v6 override. */
@media(max-width:680px){
 .header .nav-wrap{position:relative}
 .header .brand{max-width:calc(100% - 88px)}
 .header .brand-image{width:100%;height:auto}
 .header .menu-toggle{display:flex;position:absolute;right:0;top:23px;margin:0;width:40px;min-height:44px;background:#ffffffb3}
 .header .nav-wrap nav.is-open{display:flex;text-align:center;order:5;width:100%;padding:6px 0 12px}
 .header .nav-wrap nav a{min-height:44px;padding:10px 6px}
}
@media(min-width:1051px){.coverage-layout .map{min-height:530px}}

/* V36: coverage directly after hero; synchronized desktop service rows. */
.coverage-section{padding-bottom:40px}
@media(min-width:681px){
 .service-cards{grid-template-rows:auto auto auto auto;row-gap:0;align-items:stretch}
 .service-cards>.service-card{display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:0}
 .service-card>.service-content{display:grid;grid-row:span 3;grid-template-rows:subgrid;row-gap:0}
 .service-content h3,.service-content p,.service-content ul{align-self:start}
 .service-content h3{margin-bottom:18px}
 .service-content p{margin-bottom:22px}
 .service-content ul{width:100%}
 .loc-service-grid{grid-template-rows:auto auto auto auto;row-gap:0;align-items:stretch}
 .loc-service-grid>article{display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:0}
 .loc-service-grid h3,.loc-service-grid p,.loc-service-list,.loc-service-number{align-self:start}
 .loc-service-grid h3{margin-bottom:18px}
 .loc-service-list{margin-bottom:22px}
}
@media(max-width:680px){.coverage-section{padding-bottom:30px}}

/* V37: confirmed service assurances and centered mobile customer reviews. */
.trust-points{display:flex;flex-wrap:wrap;gap:8px 10px;list-style:none;padding:0;margin:18px 0 24px;max-width:540px}
.trust-points li{padding:7px 11px;border:1px solid #bedb8540;border-radius:6px;background:#d3f4770c;color:#e7f2d6;font-size:12px;font-weight:600;line-height:1.5}
.trust-points li:last-child{flex-basis:auto}
.review-context{font-size:15px;line-height:1.65;color:var(--muted);margin:-16px 0 26px;max-width:55ch}
.location-page .reviews-section{margin-bottom:0}
@media(max-width:680px){
 .hero-copy>.trust-points{order:7}
 .trust-points{justify-content:center;text-align:center;margin:16px auto 22px;width:100%;max-width:36ch;gap:7px}
 .trust-points li{font-size:11px;padding:6px 9px}
 .reviews-section .section-head,.reviews-section h2,.review-context{text-align:center;margin-inline:auto}
 .reviews-group figure{text-align:center}
 .reviews-group .review-stars{align-self:center;margin-inline:auto}
 .reviews-group blockquote{text-align:center}
 .reviews-group figcaption{justify-content:center;text-align:center}
 .review-context{margin-top:0}
}

/* V38: keep smart keypad visible in the mobile hero crop. */
.hero-grid .home-service-pair>div:last-child img{object-position:52% 43%}

/* Keep the full keypad in the responsive crop. */
@media(min-width:1001px){.loc-hero-media .loc-hero-photo:last-child img{object-position:50% 35%}}

/* Clip only the photo, keeping its service label outside the crop. */
.smart-lock-crop{overflow:hidden;line-height:0}
@media(max-width:680px){.smart-lock-crop:not(.close-ready) img{transform:scale(1.6);transform-origin:65% 43%}}
