/* Home only: restrained chapter rhythm; established palette and layout retained. */
.home .home-content>.home-about{padding-block:44px}
.home .home-portrait{height:420px}
.home .home-portrait img{object-fit:cover;object-position:center 8%;transform:none;transform-origin:center}
.home .home-about h2{font-size:clamp(34px,3.1vw,43px);line-height:1.12;max-width:600px}
.home .home-review blockquote{font-size:clamp(25px,2.4vw,30px);line-height:1.3;max-width:930px}
.home .home-services>.section-top{padding:40px 0 24px}
.home .home-services>.section-top h2{font-size:clamp(33px,3.3vw,44px);line-height:1.12;max-width:820px}
.home .home-locations>.section-top,.home .home-blog>.section-top{padding:40px 0 20px}
.home .home-locations>.section-top h2,.home .home-blog>.section-top h2{font-size:clamp(32px,3vw,42px);line-height:1.12;max-width:850px}
.home .home-process{padding-top:32px}
.home .home-process>h2{font-size:clamp(28px,2.4vw,32px);line-height:1.16}
.home .home-process .steps .number{display:block;font-size:34px;line-height:1.05;letter-spacing:.02em;min-height:36px;margin-bottom:8px;font-variant-numeric:normal}
.home .home-location-grid{margin-top:28px}
.home .home-location-grid h3{margin:0 0 12px;font-size:clamp(29px,2.4vw,34px);line-height:1.12}
.home .home-blog .blog-intro{max-width:790px;margin-bottom:28px}
.home .home-blog .blog-card h3{font-size:clamp(27px,2.2vw,30px);line-height:1.2}
.home .home-content .text-link span{transition:transform .18s ease}
.home .home-content .text-link:focus-visible span{transform:translateX(2px)}
@media(hover:hover) and (pointer:fine){
 .home .home-content .text-link:hover span{transform:translateX(2px)}
}
@media(max-width:700px){
 .home .home-content>.home-about{padding-block:30px}
 .home .home-services>.section-top,.home .home-locations>.section-top,.home .home-blog>.section-top{padding-top:32px}
 .home .home-process{padding-top:28px}
}
@media(prefers-reduced-motion:reduce){
 .home .home-content .text-link span{transition:none;transform:none!important}
}
