:root{--ink:#173b2c;--deep:#173c2b;--cream:#f6f4ec;--lime:#d8e2ac;--muted:#67736a;--line:#d5dbcf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #dfad5d;outline-offset:5px}.wrap{width:min(1360px,calc(100% - 112px));margin:auto}.header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 56px;background:#fbfaf5}.brand{display:flex;align-items:center;gap:12px;line-height:1}.brand-mark{font:700 32px Georgia,serif;letter-spacing:-3px}.brand-mark span{color:#9ba967;font-size:22px;padding:0 3px}.brand-name{font-size:9px;letter-spacing:2px;font-weight:700;line-height:1.35}.header nav{display:flex;gap:40px;font-size:13px;font-weight:600}.header nav a:hover,.footer-links a:hover{text-decoration:underline;text-underline-offset:5px}.header-call{border:1px solid #9aa99c;padding:15px 19px;font-size:12px;font-weight:700}.header-call span{padding-right:16px}.hero{height:min(710px,calc(100vh - 94px));min-height:590px;position:relative;overflow:hidden;color:#fff}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background:#345b3c url('original-photos/hero-hedge.webp') center 52%/cover no-repeat}.hero-shade{background:linear-gradient(90deg,rgba(14,40,28,.82),rgba(14,40,28,.43) 48%,rgba(14,40,28,.04) 100%),linear-gradient(0deg,rgba(14,40,28,.52),transparent 30%)}.hero-content{position:relative;z-index:1;padding:0 56px;width:min(1360px,100%);margin:auto;top:50%;transform:translateY(-47%)}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:700;display:flex;gap:11px;align-items:center;margin:0 0 25px}.eyebrow.light{color:#e3e9d4}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}h1{font-size:clamp(56px,6.2vw,92px);line-height:1.02;margin-bottom:26px}h1 em,h2 em{font-weight:400;color:#baca91}h2{font-size:clamp(43px,4.5vw,68px);line-height:1.08;margin-bottom:0}h2 em{color:#758c59}.hero-copy{font-size:17px;line-height:1.7;max-width:480px;color:#f0f2e9}.hero-actions{display:flex;gap:32px;align-items:center;margin-top:35px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;padding:18px 21px;font-size:12px;font-weight:700;letter-spacing:.02em}.button-light{background:#ecf1d8;color:var(--ink)}.button:hover{background:#dce8bc}.text-link,.inline-link{font-size:12px;font-weight:700;border-bottom:1px solid;padding-bottom:8px}.text-link span,.inline-link span{margin-left:22px}.hero-bottom{position:absolute;bottom:28px;left:56px;right:56px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.7px;color:#e1e8d7}.intro{padding:125px 0;display:grid;grid-template-columns:1fr 1fr;gap:12%}.intro-copy{max-width:520px;padding-top:42px;color:#56665b;font-size:16px;line-height:1.85}.intro-copy p:first-child{font-family:Georgia,serif;font-size:24px;line-height:1.4;color:var(--ink)}.inline-link{display:inline-block;margin-top:16px;color:var(--ink)}.services{background:#e8ede1;padding:120px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:65px}.section-head>p{max-width:290px;color:#647267;line-height:1.7;font-size:14px;margin:0 0 7px}.service-row{border-top:1px solid #bbc9b8;padding:30px 0;display:grid;grid-template-columns:70px 1fr 1.2fr 42px;gap:20px;align-items:start}.service-row:last-child{border-bottom:1px solid #bbc9b8}.number,.steps span{font:italic 16px Georgia,serif;color:#8ba17f}.service-row h3{font:400 29px Georgia,serif;letter-spacing:-.025em;margin:0}.service-row p{color:#5d6e60;font-size:14px;line-height:1.65;max-width:460px;margin:0 0 12px}.tags{font-size:10px;text-transform:uppercase;letter-spacing:1.3px;color:#829080}.row-arrow{width:38px;height:38px;border:1px solid #a9b9a8;border-radius:50%;display:grid;place-items:center;font-size:17px}.row-arrow:hover{background:var(--ink);color:white}.process{padding:125px 0;display:grid;grid-template-columns:1fr 1.2fr;gap:12%}.process-title>p:last-child{color:#68766b;line-height:1.8;max-width:330px;margin-top:30px;font-size:14px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding-top:35px}.steps>div{border-top:1px solid #bfcbbb;padding-top:20px}.steps h3{font:400 21px Georgia,serif;margin:48px 0 12px}.steps p{font-size:13px;color:#66766a;line-height:1.7}.contact{background:var(--deep);color:#f8f8f0;padding:110px 0}.contact-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:15%}.contact h2 em{color:#bdce93}.contact-inner>div:first-child>p:not(.eyebrow){max-width:390px;line-height:1.7;color:#d4dfd0;margin:25px 0 32px}.contact-details>div{border-top:1px solid #52725e;padding:22px 0}.contact-details span{display:block;font-size:9px;letter-spacing:1.8px;color:#b7c9ae;margin-bottom:14px}.contact-details a,.contact-details p{font:400 21px Georgia,serif;margin:0;line-height:1.45;overflow-wrap:anywhere}.contact-details a:hover{text-decoration:underline}.footer-inner{padding:44px 0;display:flex;align-items:center;gap:45px}.footer-inner p{font-size:12px;line-height:1.5;color:#758076;margin:0}.footer-links{display:flex;gap:25px;margin-left:auto;font-size:12px}.footer-inner small{font-size:10px;color:#7d887d}.legal{padding:90px 0 120px;max-width:850px}.legal h1{font-size:clamp(46px,6vw,72px)}.legal h2{font:400 26px Georgia,serif;letter-spacing:0;margin:38px 0 12px}.legal p,.legal li{line-height:1.8;color:#56665b}.legal a{text-decoration:underline}.legal .notice{background:#e8ede1;padding:20px;border-left:3px solid #8aa16e}.legal-header{border-bottom:1px solid var(--line)}@media(max-width:800px){.wrap{width:calc(100% - 40px)}.header{height:76px;padding:0 20px}.header nav{display:none}.header-call{padding:12px;font-size:11px}.hero{height:690px;min-height:0}.hero-content{padding:0 24px;top:46%}.hero-shade{background:linear-gradient(90deg,rgba(14,40,28,.78),rgba(14,40,28,.25)),linear-gradient(0deg,rgba(14,40,28,.55),transparent 45%)}.hero-bottom{left:24px;right:24px}.hero-bottom span:nth-child(2){display:none}.intro,.process,.contact-inner{grid-template-columns:1fr;gap:35px}.intro,.process{padding:85px 0}.intro-copy{padding-top:0}.services{padding:85px 0}.section-head{display:block}.section-head>p{margin-top:24px}.service-row{grid-template-columns:35px 1fr 35px;gap:12px}.service-row h3{font-size:24px}.service-row>div{grid-column:2;grid-row:2}.row-arrow{grid-column:3;grid-row:1}.steps{padding-top:0}.steps h3{margin-top:25px}.contact{padding:80px 0}.footer-inner{flex-wrap:wrap;gap:25px}.footer-links{margin-left:0;width:100%}.footer-inner small{width:100%}}@media(max-width:450px){h1{font-size:52px}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.steps{grid-template-columns:1fr;gap:15px}.steps h3{margin-top:18px}.footer-links{gap:18px}}

/* Locally hosted Manrope, licensed under the SIL Open Font License. */
@font-face{font-family:Manrope;src:url('fonts/manrope-latin-ext-wght-normal.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Manrope;src:url('fonts/manrope-latin-wght-normal.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
body{font-family:Manrope,Arial,sans-serif}p{overflow-wrap:break-word}.header-call,.button,.row-arrow,.header nav a,.footer-links a,.inline-link,.text-link{transition:background-color .25s ease,color .25s ease,border-color .25s ease,transform .25s ease}.header-call:hover{background:var(--deep);border-color:var(--deep);color:#fff}.button:hover{transform:translateY(-3px)}.row-arrow:hover{transform:translate(3px,-3px)}.service-row{transition:background-color .3s ease}.service-row:hover{background:rgba(255,255,255,.22)}

@media(max-width:800px){.hero{height:auto;min-height:650px;min-height:max(650px,calc(100svh - 76px));display:flex;align-items:center}.hero-content{top:auto;transform:none;padding:100px 24px 112px}.hero-image{background-position:57% center}.hero-bottom{bottom:24px}.section-head h2,.process h2,.intro h2,.contact h2{font-size:clamp(38px,7vw,58px)}.footer-inner{align-items:flex-start}}
@media(max-width:450px){.header{gap:12px}.brand{gap:8px}.brand-mark{font-size:28px}.brand-name{font-size:8px;letter-spacing:1.5px}.header-call{white-space:nowrap}.header-call span{padding-right:6px}.hero{min-height:600px;min-height:max(600px,calc(100svh - 76px))}.hero-content{padding:80px 20px 105px}.hero h1{font-size:clamp(40px,11.5vw,52px);line-height:1.06;overflow-wrap:normal}.hero-copy{font-size:15px;line-height:1.7}.hero-actions{margin-top:26px}.hero-bottom{left:20px;right:20px}.eyebrow{font-size:9px;letter-spacing:1.8px}.intro,.process{padding:75px 0}.services{padding:75px 0}.contact{padding:72px 0}.section-head h2,.process h2,.intro h2,.contact h2{font-size:clamp(35px,10vw,43px)}.contact-details a,.contact-details p{font-size:19px}.footer-links{flex-wrap:wrap}.legal{padding-top:65px}}
@media(max-width:340px){.header-call{font-size:10px;padding:11px 9px}.hero h1{font-size:39px}.service-row{grid-template-columns:28px minmax(0,1fr) 35px;gap:8px}.service-row h3{font-size:22px}.service-row p{font-size:13px}.hero-bottom{font-size:8px;letter-spacing:1.1px}}
@media(max-height:500px) and (orientation:landscape){.hero{min-height:540px}.hero-content{padding-top:70px;padding-bottom:100px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.motion-ready .reveal{opacity:1;transform:none}}
/* A visual index of the service images from the original site. */
.gallery-heading{margin:110px 0 35px;display:grid;grid-template-columns:1fr 1.2fr;column-gap:36px;align-items:end}.gallery-heading .eyebrow{grid-column:1/-1;margin-bottom:18px}.gallery-heading h3{font:400 clamp(32px,3.4vw,48px)/1.08 Georgia,serif;letter-spacing:-.035em;margin:0}.gallery-heading>p:last-child{font-size:14px;line-height:1.7;color:#5d6e60;margin:0;max-width:360px}.photo-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 18px}.photo-card{min-width:0;margin:0}.photo-card-wide{grid-column:span 2}.photo-card img{display:block;width:100%;height:auto;aspect-ratio:16/11;object-fit:cover;transition:filter .35s ease}.photo-card-wide img{aspect-ratio:32/11}.photo-card:hover img{filter:brightness(.9)}.photo-card figcaption{display:flex;gap:14px;align-items:baseline;padding-top:12px;font-size:12px;font-weight:650;line-height:1.4}.photo-card figcaption span{font:italic 13px Georgia,serif;color:#738a6e}
@media(max-width:800px){.gallery-heading{margin-top:80px;grid-template-columns:1fr;gap:14px}.gallery-heading .eyebrow{margin-bottom:0}.photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}}
@media(max-width:450px){.gallery-heading{margin-top:65px}.gallery-heading h3{font-size:33px}.photo-gallery{gap:22px 12px}.photo-card img{aspect-ratio:4/3}.photo-card-wide img{aspect-ratio:16/9}.photo-card figcaption{font-size:11px;gap:7px}}
@media(prefers-reduced-motion:reduce){.photo-card img{transition:none}}
@media(min-width:801px){.photo-gallery{container-type:inline-size}.photo-card img,.photo-card-wide img{height:calc((100cqw - 54px) * .171875);aspect-ratio:auto}}
/* Draw arrows consistently across platforms, including iOS. */
.icon-arrow{display:inline-block;width:1em;height:1em;vertical-align:-.1em;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.header-call span{padding-right:16px}.header-call span .icon-arrow{vertical-align:-.12em}.row-arrow .icon-arrow{width:18px;height:18px}.contact-details .icon-arrow{width:17px;height:17px;margin-left:5px}.legal-header .icon-arrow{margin-right:8px}.hero-shade{background:linear-gradient(90deg,rgba(8,25,17,.88) 0%,rgba(8,25,17,.72) 42%,rgba(8,25,17,.27) 100%),linear-gradient(0deg,rgba(8,25,17,.62),transparent 42%)}.hero-content h1,.hero-copy,.hero-content .eyebrow,.hero-content .light-link{text-shadow:0 2px 12px rgba(0,0,0,.72)}.hero h1 em{color:#d2dfa9}.hero-copy{color:#fff}.light-link{color:#fff}
@media(max-width:800px){.hero-shade{background:linear-gradient(90deg,rgba(8,25,17,.88),rgba(8,25,17,.58) 70%,rgba(8,25,17,.42)),linear-gradient(0deg,rgba(8,25,17,.68),transparent 48%)}}
@media(max-width:450px){.header-call span{padding-right:6px}}

@keyframes hero-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes image-arrive{from{transform:scale(1.035)}to{transform:scale(1)}}
.hero-image{animation:image-arrive 1.4s ease-out both}.hero-content>*{animation:hero-enter .75s both;animation-delay:.1s}.hero-content h1{animation-delay:.2s}.hero-content .hero-copy{animation-delay:.3s}.hero-content .hero-actions{animation-delay:.4s}
.motion-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.motion-ready .reveal.is-visible,.motion-ready .reveal:focus-within{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.motion-ready .reveal{opacity:1;transform:none}}
