:root{--pine:#1b3029;--pine-deep:#12251e;--cream:#f3f1ea;--paper:#fbfaf6;--ink:#23332d;--muted:#65736b;--gold:#d1ac6e;--line:#d6dcd4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.wrap{width:min(100% - 48px,1200px);margin-inline:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(251,250,246,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;flex-direction:column;line-height:1;letter-spacing:.05em;width:max-content}.brand span{font-family:Georgia,'Times New Roman',serif;font-size:29px;font-weight:700;letter-spacing:.045em}.brand small{font-size:10px;letter-spacing:.28em;font-weight:800;margin-top:6px}.header-cta{background:var(--pine);color:#fff;padding:15px 19px;font-size:14px;font-weight:700;display:flex;gap:24px;align-items:center}.header-cta:hover,.button-dark:hover{background:#355347}.header-cta span,.button span{font-size:18px;font-weight:400}
.eyebrow{font-size:12px;letter-spacing:.19em;font-weight:800;margin:0 0 23px;color:var(--gold)}.eyebrow.dark{color:#7b765e}.rule{display:inline-block;width:24px;height:2px;background:var(--gold);vertical-align:middle;margin-right:10px}.hero{position:relative;min-height:670px;color:#fff;display:flex;align-items:center;overflow:hidden;background:var(--pine)}.hero-photo,.hero-photo img{position:absolute;inset:0;width:100%;height:100%}.hero-photo img{object-fit:cover;object-position:center 50%}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,32,24,.92) 0%,rgba(13,32,24,.75) 30%,rgba(13,32,24,.2) 70%,rgba(13,32,24,.12) 100%)}.hero-content{position:relative;z-index:2;padding:80px 0 110px}.hero h1,.services h2,.feature h2,.inquiry h2,.thanks h1{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.04em;font-weight:400}.hero h1{font-size:clamp(4rem,6.4vw,7rem);line-height:1.01;max-width:690px;margin:0 0 25px}.hero h1 em{color:#e4c894;font-weight:400}.hero-content>p:not(.eyebrow){max-width:490px;font-size:19px;line-height:1.6;color:#e7eae2;margin:0 0 32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;border:0;padding:18px 23px;font-weight:750;font-size:15px;cursor:pointer}.button-light{background:var(--gold);color:var(--pine-deep)}.button-light:hover{background:#e4c58d}.button-dark{background:var(--pine);color:#fff}.hero-bottom{position:absolute;z-index:2;bottom:0;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:28px;height:55px;background:rgba(18,37,30,.92);letter-spacing:.19em;font-size:11px;font-weight:800}.hero-bottom .divider{height:15px;width:1px;background:#739080}.image-label{position:absolute;z-index:3;right:18px;bottom:72px;color:#fff;background:rgba(18,37,30,.8);padding:8px 10px;font-size:10px;letter-spacing:.14em;font-weight:800}
.services{display:grid;grid-template-columns:.84fr 1.16fr;gap:80px;padding-block:94px 96px}.services h2{font-size:clamp(2.8rem,4vw,4.5rem);line-height:1.06;margin:0;max-width:400px}.service-list{border-top:1px solid #bbc7be}.service-list article{display:grid;grid-template-columns:54px 1fr;gap:20px;padding:30px 0;border-bottom:1px solid #bbc7be}.service-number{font-size:12px;color:#877755;font-weight:800;padding-top:6px}.service-list h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:29px;letter-spacing:-.025em;margin:0 0 9px}.service-list p{line-height:1.6;color:#68756d;margin:0;max-width:430px}
.feature{display:grid;grid-template-columns:1.13fr .87fr;min-height:520px;background:#e9eae2}.feature-image{position:relative;min-height:520px;overflow:hidden}.feature-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.feature-image .image-label{bottom:18px}.feature-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:70px clamp(38px,6vw,100px)}.feature-copy .eyebrow{color:#82764f}.feature h2{font-size:clamp(3rem,4.3vw,5rem);line-height:1.05;margin:0 0 20px}.feature-copy>p:not(.eyebrow){line-height:1.65;color:#596a5e;font-size:17px;max-width:410px;margin:0 0 28px}.text-link{border-bottom:1px solid #9aa99b;font-weight:750;padding-bottom:8px}.text-link span{margin-left:15px}
.inquiry{scroll-margin-top:78px;background:var(--pine);padding:94px 0 100px;color:white}.inquiry-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start}.inquiry-copy{padding-top:26px}.inquiry h2{font-size:clamp(3.1rem,5vw,5.2rem);line-height:1.05;margin:0 0 24px;max-width:450px}.inquiry-copy>p:not(.eyebrow){line-height:1.65;font-size:18px;color:#d3dfd6;max-width:420px}.inquiry-copy .small-note{border-top:1px solid #587062;padding-top:23px;margin-top:44px;font-size:14px!important;color:#a8bcaa!important}.project-form{background:#fff;color:var(--ink);padding:34px 38px 38px;box-shadow:0 25px 70px rgba(0,0,0,.12)}.form-label{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:25px;color:#6c7b70;font-size:11px;letter-spacing:.16em;font-weight:800}.project-form label{display:block;font-weight:700;font-size:14px;color:#3a4d40;margin-bottom:19px}.project-form input,.project-form select,.project-form textarea{display:block;width:100%;background:#fbfcfa;border:1px solid #cbd5cb;border-radius:0;color:var(--ink);padding:13px 14px;font-size:16px;margin-top:9px;outline:none}.project-form input:focus,.project-form select:focus,.project-form textarea:focus{border-color:#8c754e;box-shadow:0 0 0 2px #e8dcc4}.project-form input::placeholder,.project-form textarea::placeholder{color:#89988b}.project-form textarea{resize:vertical;min-height:110px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.project-form .button{width:100%;margin-top:4px}.form-note{font-size:13px;line-height:1.5;color:#708073;margin:16px 0 0}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.footer{background:var(--pine-deep);color:#c9d6cb;padding:32px 0}.footer-inner{display:flex;align-items:start;justify-content:space-between;gap:26px}.footer-brand span{font-size:22px;color:#fff}.footer-brand small{font-size:8px}.footer p{font-size:12px;line-height:1.5;margin:0;max-width:330px;color:#a9b8aa}.thanks{min-height:70vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-block:80px}.thanks h1{font-size:clamp(3.5rem,6vw,6rem);line-height:1.04;margin:0 0 20px}.thanks p:not(.eyebrow){font-size:19px;line-height:1.6;color:var(--muted);max-width:500px;margin:0 0 30px}
@media(max-width:900px){.services{gap:40px}.inquiry-layout{gap:40px}.hero{min-height:600px}.feature-copy{padding:48px}.feature-image{min-height:440px}.feature{min-height:440px}}
@media(max-width:720px){.wrap{width:min(100% - 36px,560px)}.header-inner{height:68px}.brand span{font-size:23px}.brand small{font-size:8px}.header-cta{font-size:13px;padding:12px 13px;gap:10px}.hero{min-height:650px;align-items:flex-end}.hero-photo img{object-position:63% center}.hero-photo:after{background:linear-gradient(0deg,rgba(13,32,24,.94) 0%,rgba(13,32,24,.63) 48%,rgba(13,32,24,.18) 100%)}.hero-content{padding:190px 0 95px}.hero h1{font-size:clamp(3.5rem,12vw,5.5rem)}.hero-content>p:not(.eyebrow){font-size:17px}.hero-bottom{font-size:9px;gap:16px}.hero-photo .image-label{bottom:65px}.services{display:block;padding-block:60px}.services h2{font-size:3.3rem;max-width:480px;margin-bottom:31px}.service-list article{padding:23px 0}.feature{display:flex;flex-direction:column}.feature-image{min-height:330px}.feature-copy{padding:48px 18px 56px;width:min(100%,560px);margin:auto}.feature h2{font-size:3.4rem}.inquiry{scroll-margin-top:68px;padding:58px 0 70px}.inquiry-layout{display:block}.inquiry-copy{padding:0}.inquiry h2{font-size:3.5rem}.inquiry-copy>p:not(.eyebrow){font-size:16px}.inquiry-copy .small-note{margin:24px 0}.project-form{padding:26px 22px}.footer-inner{display:block}.footer p{margin-top:17px}}
@media(max-width:520px){.two-fields{grid-template-columns:1fr;gap:0}.project-form label{margin-bottom:18px}.hero h1{font-size:3.5rem}.hero-content{padding-top:220px}.feature-image{min-height:250px}.button{gap:18px}.inquiry h2{font-size:3.1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
