:root{--forest:#183e32;--ink:#202421;--paper:#f7f4ee;--white:#fff;--terracotta:#a84629;--sage:#a9b39d;--line:#d7d4cc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline-offset:3px;outline:3px solid #fff;box-shadow:0 0 0 6px #102c23}img{object-fit:cover;width:100%;height:100%;display:block}.skip-link{z-index:100;color:var(--forest);background:#fff;padding:12px 16px;position:fixed;top:12px;left:12px;transform:translateY(-160%);box-shadow:0 4px 20px #0003}.skip-link:focus{transform:translateY(0)}.utility-bar{background:var(--forest);color:#fff;justify-content:space-between;align-items:center;min-height:44px;padding:0 3.2vw;font-size:12px;display:flex}.utility-bar a,.phone-link,.underlink,.footer-contact a,.footer-bottom a{align-items:center;min-height:44px;display:inline-flex}.utility-bar a:first-child{text-underline-offset:3px;text-decoration:underline}.site-header{border-bottom:1px solid var(--line);z-index:20;background:#fff;grid-template-columns:1fr auto 1fr;align-items:center;gap:34px;height:86px;padding:0 3.2vw;display:grid;position:sticky;top:0}.wordmark{text-transform:uppercase;align-items:baseline;gap:13px;display:flex}.wordmark strong{letter-spacing:8px;font-size:25px}.wordmark span{letter-spacing:4px;font-size:11px;font-weight:600}nav{gap:30px;font-size:12px;display:flex}.site-header>.button{justify-self:end}.mobile-nav{display:none}.button{background:var(--terracotta);color:#fff;justify-content:space-between;align-items:center;gap:28px;min-height:50px;padding:0 20px;font-size:13px;font-weight:700;transition:transform .2s,background .2s;display:inline-flex}.button:hover{background:#a94d30;transform:translateY(-2px)}.button-small{min-height:44px}.hero{background:var(--paper);border-bottom:1px solid var(--line);grid-template-columns:47% 53%;min-height:670px;display:grid}.hero-copy{flex-direction:column;justify-content:center;padding:8vw 5vw;display:flex}.eyebrow,.kicker{color:var(--terracotta);margin:0;font-family:Georgia,serif;font-size:19px}h1{letter-spacing:-4px;margin:20px 0 28px;font-family:Georgia,serif;font-size:clamp(56px,5.8vw,94px);font-weight:400;line-height:.96}h1 em{font-weight:400}.hero-text{color:#555b56;max-width:650px;font-size:16px;line-height:1.65}.hero-actions{align-items:center;gap:24px;margin-top:28px;display:flex}.cta-note{color:#5b625d;margin:15px 0 0;font-size:13px;line-height:1.5}.phone-link,.underlink{border-bottom:1px solid;padding-bottom:3px;font-size:12px}.hero-visual{min-height:670px;margin:0;position:relative;overflow:hidden}.hero-visual img{transition:transform .8s}.hero-visual:hover img{transform:scale(1.02)}.hero-visual figcaption{color:#fff;letter-spacing:1.5px;text-transform:uppercase;background:#183e32f2;padding:13px 18px;font-size:10px;position:absolute;bottom:0;right:0}.trust-strip{border-bottom:1px solid var(--line);background:#fff;grid-template-columns:repeat(3,1fr);padding:0 5vw;display:grid}.trust-strip>*{border-right:1px solid var(--line);flex-direction:column;justify-content:center;gap:8px;min-height:104px;padding:27px 3vw;display:flex}.trust-strip>:last-child{border-right:0}.trust-strip b{font-family:Georgia,serif;font-size:20px;font-weight:400}.trust-strip span{color:#696f6b;text-transform:uppercase;letter-spacing:1px;font-size:11px}.section{padding:8vw 5vw}.section,.hero{scroll-margin-top:145px}.section-top{justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px;display:flex}.kicker{letter-spacing:2px;text-transform:uppercase;font-family:Arial,sans-serif;font-size:10px;font-weight:700}h2{letter-spacing:-2.5px;margin:13px 0 0;font-family:Georgia,serif;font-size:clamp(42px,5vw,72px);font-weight:400;line-height:1.03}.portfolio{background:#fff}.portfolio-grid{grid-template-columns:1.15fr .85fr;gap:18px;display:grid}.portfolio-grid figure{height:450px;margin:0;overflow:hidden}.portfolio-grid img{transition:transform .65s}.portfolio-grid figure:hover img{transform:scale(1.025)}.services{background:#eceee7}.service-grid{border-top:1px solid #c9ccc4;border-bottom:1px solid #c9ccc4;grid-template-columns:repeat(3,1fr);display:grid}.service-grid article{border-right:1px solid #c9ccc4;flex-direction:column;min-height:275px;padding:34px;display:flex}.service-grid article:last-child{border-right:0}.service-index{color:var(--terracotta);font-size:11px}.service-grid h3,.process h3{margin:auto 0 15px;font-family:Georgia,serif;font-size:28px;font-weight:400}.service-grid p,.process p{color:#575e59;margin:0;line-height:1.6}.service-area{text-align:center;margin:36px 0 0;font-family:Georgia,serif;font-size:clamp(20px,2.2vw,31px)}.service-area span{letter-spacing:2px;text-transform:uppercase;color:#666;margin-bottom:10px;font-family:Arial,sans-serif;font-size:9px;display:block}.process{background:#fff;grid-template-columns:.8fr 1.2fr;gap:8vw;display:grid}.process-intro>p:last-child{color:#575e59;max-width:540px;margin-top:26px;font-size:16px;line-height:1.7}.process ol{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.process li{border-bottom:1px solid var(--line);grid-template-columns:62px 1fr;gap:20px;padding:28px 0;display:grid}.process li>span{color:var(--sage);font-family:Georgia,serif;font-size:54px;line-height:1}.process h3{margin:0 0 7px;font-size:23px}.cta-section{background:var(--terracotta);color:#fff;justify-content:space-between;align-items:end;gap:40px;padding:7vw 8vw;display:flex}.cta-section .kicker{color:#fff;opacity:.8}.cta-section h2{max-width:780px}.button-dark{background:var(--forest);min-width:300px}.button-dark:hover{background:#102c23}footer{background:var(--forest);color:#fff;padding:60px 5vw 28px}.footer-main{grid-template-columns:1fr 1.4fr 1fr;align-items:start;gap:30px;padding-bottom:50px;display:grid}.wordmark-light strong{font-size:21px}.footer-main p{color:#d4ddd9;margin:0;font-size:12px;line-height:1.7}.footer-contact{flex-direction:column;align-items:flex-end;gap:9px;font-size:13px;display:flex}.footer-bottom{color:#bdc9c4;border-top:1px solid #ffffff40;justify-content:space-between;gap:30px;padding-top:22px;font-size:11px;display:flex}.footer-bottom div{gap:24px;display:flex}@media (max-width:950px){.site-header{grid-template-columns:auto 1fr}.site-header nav{justify-content:flex-end;gap:20px;display:flex}.site-header>.button{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:90px 6vw}.hero-visual{min-height:70vh}.process{grid-template-columns:1fr}.cta-section{flex-direction:column;align-items:stretch}.service-grid{grid-template-columns:1fr}.service-grid article{border-bottom:1px solid #c9ccc4;border-right:0;min-height:190px}.service-grid article:last-child{border-bottom:0}.footer-main{grid-template-columns:1fr 1fr}.footer-contact{grid-column:2;align-items:flex-start}}@media (max-width:650px){.utility-bar{min-height:44px;padding:0 18px}.site-header{height:70px;padding:0 18px}.site-header nav{display:none}.mobile-nav{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;min-height:46px;padding:0 18px;font-size:12px;font-weight:700;display:flex}.mobile-nav a{align-items:center;min-height:44px;display:inline-flex}.wordmark strong{letter-spacing:5px;font-size:20px}.wordmark span{letter-spacing:2px;font-size:9px}.hero{min-height:0}.hero-copy{padding:70px 20px 60px}h1{letter-spacing:-2.5px;font-size:52px}.hero-actions{flex-direction:column;align-items:stretch}.hero-visual{min-height:420px}.trust-strip{grid-template-columns:1fr;padding:0 20px}.trust-strip>*{border-right:0;border-bottom:1px solid var(--line);min-height:92px;padding:22px 0}.trust-strip>:last-child{border-bottom:0}.section{padding:75px 20px}.section-top{flex-direction:column;align-items:start}h2{letter-spacing:-1.8px;font-size:45px}.portfolio-grid{grid-template-columns:1fr}.portfolio-grid figure{height:330px}.service-grid{grid-template-columns:1fr}.service-grid article{border-bottom:1px solid #c9ccc4;border-right:0;min-height:220px}.service-grid article:last-child{border-bottom:0}.cta-section{padding:70px 20px}.button-dark{min-width:0}footer{padding:55px 20px 30px}.footer-main{grid-template-columns:1fr}.footer-contact{grid-column:auto}.footer-bottom{flex-direction:column}.footer-bottom div{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}
