/* SHC preview: natural vertical services and ambient motion. */
.services-stories{--story-brass:#927345;position:relative}
.services-scroll-guide{position:sticky;top:0;z-index:4;display:flex;align-items:center;gap:28px;min-height:74px;padding:12px 0;background:var(--paper);border-bottom:1px solid var(--line);font-size:12px;letter-spacing:.06em}
.guide-label{color:var(--muted)}.guide-current{min-width:160px;font-weight:600}
.guide-steps{display:flex;gap:6px;width:160px}.guide-steps i{height:2px;background:#d0d5ca;flex:1;position:relative;overflow:hidden}
.guide-steps i:after{content:'';position:absolute;inset:0;background:var(--story-brass);transform:scaleX(var(--fill,0));transform-origin:left}
.guide-hint{margin-left:auto;color:var(--muted);letter-spacing:0}.guide-hint span{display:inline-block;margin-left:14px}
.service-chapter{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-rows:1fr 1fr;grid-template-areas:'heading photo' 'copy photo';column-gap:6%;position:relative;padding:56px 0 70px;margin:0;border-bottom:1px solid var(--line);scroll-margin-top:82px;--scene:0}
.story-heading{grid-area:heading;align-self:end;padding-bottom:24px}
.story-meta{display:flex;align-items:center;gap:16px;font-size:13px;color:var(--muted)}
.story-number{display:grid;place-items:center;width:44px;height:44px;border:1px solid #b9bfb4;border-radius:50%;color:var(--ink);font-size:12px;position:relative;transition:background-color .32s,border-color .32s,color .32s}
.is-current .story-number{background:var(--forest);border-color:var(--forest);color:var(--paper)}
.story-heading h3{font-size:clamp(42px,4.4vw,80px);font-weight:400;line-height:1.05;letter-spacing:-.055em;margin-top:27px;text-wrap:balance}
.story-copy{grid-area:copy;align-self:start;max-width:390px}
.story-copy>p{color:var(--muted);font-size:17px;line-height:1.8}
.story-link{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:56px;margin-top:26px;padding:8px 0;border-bottom:1px solid #9fada0;text-decoration:none;font-size:14px;transition:border-color .15s}
.story-link>span{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#e8ebe2;transition:transform .15s,background-color .15s;flex-shrink:0}
.story-link:hover{border-color:var(--forest)}.story-link:hover>span{transform:translate(2px,-2px);background:#dce4d5}
.story-photo{grid-area:photo;min-width:0}.story-image-wrap{overflow:hidden;border-radius:22px 22px 4px 4px;isolation:isolate;background:#e4e6de;aspect-ratio:1.07}
.story-image-wrap img{width:100%;height:100%;object-fit:cover;transform:scale(calc(1.045 - var(--scene)*.045));transform-origin:50% 55%}
#service-new-homes .story-image-wrap img{object-position:57% 50%}
#service-renovations .story-image-wrap img{object-position:50% 43%}
#service-repairs .story-image-wrap img{object-position:50% 47%}
.story-photo figcaption{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted);padding-top:14px;line-height:1.5}.story-photo figcaption>span:first-child{letter-spacing:.1em}
.stories-enhanced .story-heading,.stories-enhanced .story-copy{transform:translateY(calc((1 - var(--scene))*16px))}
.hero-atmosphere{position:absolute;inset:0;width:100%;height:100%;z-index:-3;opacity:0;pointer-events:none;transition:opacity .8s ease}
.hero-atmosphere.is-ready{opacity:1}
.atmosphere-toggle{position:absolute;right:var(--gutter);bottom:100px;display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 15px;border:1px solid #ffffff60;border-radius:50px;background:#15251f88;color:#fff;backdrop-filter:blur(12px);font-size:12px;z-index:2}
.atmosphere-toggle:hover{background:#15251fba}.atmosphere-toggle-icon{width:14px;font-size:11px}
@media(min-width:1700px){.story-image-wrap{max-height:710px;aspect-ratio:1.17}}
@media(max-width:900px){.service-chapter{column-gap:5%}.story-heading h3{font-size:46px}.story-meta{font-size:12px;gap:10px}.story-copy>p{font-size:16px}.story-image-wrap{aspect-ratio:.85}.guide-label{display:none}}
@media(max-width:650px){
 .services .services-heading{display:block;margin-bottom:24px}.services .services-heading>p{margin-top:24px;font-size:16px}
 .services-scroll-guide{min-height:62px;gap:14px;top:0;font-size:11px}.guide-current{min-width:0;flex:1}.guide-steps{width:88px}.guide-hint{font-size:0;margin-left:0}.guide-hint span{font-size:18px;margin-left:0}
 .service-chapter{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;grid-template-areas:'heading' 'photo' 'copy';gap:0;padding:32px 0 46px;scroll-margin-top:68px}
 .story-heading{padding:0 0 24px}.story-meta{font-size:12px;gap:12px}.story-number{width:36px;height:36px}.story-heading h3{font-size:clamp(40px,11vw,56px);margin-top:18px;letter-spacing:-.05em}
 .story-image-wrap{aspect-ratio:1.12;border-radius:18px 18px 3px 3px}.story-photo figcaption{font-size:11px;padding-top:10px}
 .story-copy{padding-top:22px;max-width:none}.story-copy>p{font-size:16px;line-height:1.7}.story-link{margin-top:16px;font-size:13px;min-height:52px}
 .atmosphere-toggle{bottom:91px;right:var(--gutter);font-size:11px;min-height:44px}
}
@media(prefers-reduced-motion:reduce){.stories-enhanced .story-heading,.stories-enhanced .story-copy,.story-image-wrap img{transform:none!important}.hero-atmosphere{display:none}.atmosphere-toggle{display:none}.story-number{transition:none}}
