.refit-story{background:#142f25;color:#f2eedf;display:grid;grid-template-columns:1.05fr 1fr;position:relative}
.story-visual{height:calc(100svh - 86px);min-height:500px;position:sticky;top:86px;align-self:start;overflow:hidden}
.story-images{position:absolute;inset:0;background:#10281e}
.story-images:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#091d14b0,transparent 50%);pointer-events:none}
.story-images img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity .8s ease,transform 1.4s cubic-bezier(.2,.7,.2,1)}
.story-images img.active{opacity:1;transform:scale(1.02) translateY(var(--story-drift,0px))}
.story-caption{position:absolute;bottom:32px;left:35px;right:35px;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:1.5px}
.story-caption span:last-child{font-size:7px;opacity:.8}
.story-current{font-size:20px;font-weight:400}
.story-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff25}
.story-progress i{display:block;width:100%;height:100%;background:#d4bb80;transform:scaleX(var(--story-progress,0));transform-origin:left}
.story-chapter{min-height:80svh;padding:90px 6vw;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid #dce5cb20}
.story-chapter:last-child{border:0}
.story-chapter .overline{color:#c6b88f}
.story-chapter h2{font-size:clamp(32px,3.3vw,49px);font-weight:500;letter-spacing:-1.5px;line-height:1.18;margin:26px 0}
.story-chapter p{color:#c1cebd;font-size:15px;line-height:1.95}
.story-checks{margin-top:30px;border-top:1px solid #d3ddc230;padding-top:20px;font-size:11px;line-height:1.8;color:#cfbd92}
.story-chapter>a{align-self:start;font-size:12px;border-bottom:1px solid #d3bd8555;margin-top:26px;padding-bottom:8px}
.story-mobile-photo{display:none}
.inner-page{background:#f4f2eb;color:#19392b}
.inner-page .inner-header{background:#17372a;color:#fff}
.inner-page .breadcrumb,.inner-page .inner-hero>p{color:#596e5a}
.inner-page .inner-hero .overline{color:#6f765a}
.inner-page .inner-hero{max-width:1250px;padding-top:45px}
.inner-page .inner-hero h1{font-size:clamp(43px,5.8vw,82px);max-width:1000px}
.detail-request{display:inline-block;background:#244e38;color:#fff;padding:14px 20px;margin-top:30px;font-size:13px}
.inner-page .inner-image{margin:0 var(--pad);height:52vh;min-height:300px}
.inner-page .article-sections section{border-color:#b6c4b0;scroll-margin-top:30px}
.inner-page .article-sections p{color:#506650;font-size:15px;line-height:1.95}
.inner-page .article-sections h2{font-size:28px;margin-top:15px}
.detail-sidebar{position:sticky;top:35px;align-self:start}
.detail-sidebar .overline{color:#66785b}
.detail-sidebar nav{margin-top:25px;display:grid;gap:17px;font-size:13px;color:#52664c}
.detail-sidebar a{border-bottom:1px solid #bdc8b3;padding-bottom:12px}
.detail-sidebar .site-cta{border-radius:2px;background:#234b35;color:white}
.detail-number{font-size:11px;color:#7a836b}
.service-prep{background:#e7ecdf;padding:28px!important}
.service-prep ul{padding-left:18px;font-size:14px;line-height:2.2;color:#51644b}
.service-prep>a{display:inline-block;margin-top:20px;font-size:13px;border-bottom:1px solid #77926a;padding-bottom:8px}
.related-services{padding:50px var(--pad);background:#e7ecdf;color:#19392b}
.related-services>div{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:25px 0}
.related-services>div>a{font-size:20px;border-bottom:1px solid #b4c3a9;padding:20px 0}
.related-services>a{font-size:13px}
.service-directory{display:grid;grid-template-columns:1fr 1fr;padding:10px var(--pad) 75px;gap:0 60px}
.directory-card{border-top:1px solid #b4c1a9;padding:30px 0 38px;position:relative}
.directory-card>span{font-size:9px;letter-spacing:1.5px;color:#74836c}
.directory-card h2{font-size:29px;letter-spacing:-1px;margin:20px 0}
.directory-card p{font-size:14px;line-height:1.9;color:#576d50;max-width:480px}
.directory-card b{font-size:12px;font-weight:400;display:inline-block;margin-top:23px;border-bottom:1px solid #afbd9f;padding-bottom:6px;transition:transform .3s}
.directory-card:hover b{transform:translateX(6px)}
.directory-end{padding:55px var(--pad);background:#dfe7d5}
.directory-end h2{font-size:30px;letter-spacing:-.8px}
.directory-end p{margin:18px 0;font-size:14px;color:#506648}
.directory-end a{font-size:13px;text-decoration:underline;text-underline-offset:6px}
.project-directory{padding:10px var(--pad) 70px}
.project-directory article{display:grid;grid-template-columns:1.2fr 1fr;gap:6vw;align-items:center;padding:45px 0;border-top:1px solid #b5c4ab}
.project-directory article>img{height:430px;object-fit:cover;width:100%}
.project-directory h2{font-size:38px;letter-spacing:-1px;margin:22px 0}
.project-directory .overline{color:#6b7b5e}
.project-directory dl>div{display:grid;grid-template-columns:110px 1fr;gap:20px;border-bottom:1px solid #c4ceba;padding:15px 0;font-size:13px;line-height:1.7}
.project-directory dd{margin:0;color:#627559}
.project-directory article a{font-size:13px;display:inline-block;margin-top:25px;border-bottom:1px solid #829774;padding-bottom:8px}
.depth-reveal{opacity:0;transform:translateY(25px);transition:opacity .75s ease,transform .9s cubic-bezier(.16,1,.3,1)}
.depth-reveal.is-visible{opacity:1;transform:none}

@media(max-width:800px){.refit-story{display:block}
.story-visual{display:none}
.story-chapter{min-height:0;padding:45px var(--pad)}
.story-mobile-photo{display:block;height:260px;width:100%;object-fit:cover;margin-bottom:30px}
.story-chapter h2{font-size:34px}
.story-chapter p{font-size:14px}
.service-directory{gap:0 25px}
.directory-card h2{font-size:24px}
.related-services>div{grid-template-columns:1fr;gap:0}
.project-directory article{grid-template-columns:1fr;gap:30px}
.project-directory article>img{height:320px}
.inner-page .inner-body{grid-template-columns:1fr;gap:35px}
.detail-sidebar{position:static}
.detail-sidebar nav{display:none}
}
@media(max-width:500px){.service-directory{grid-template-columns:1fr}
.inner-page .inner-hero h1{font-size:43px}
.project-directory h2{font-size:30px}
.project-directory dl>div{grid-template-columns:90px 1fr}
.story-mobile-photo{height:230px}
}
@media(prefers-reduced-motion:reduce){.depth-reveal{opacity:1;transform:none;transition:none}
.story-images img{transition:none;transform:none!important}
.directory-card b{transition:none}
}.motion-reduced .story-images img{transform:none!important;transition:none}
.motion-reduced .depth-reveal{opacity:1;transform:none;transition:none}

