:root{--paper:#f3f2e7;--ink:#283c30;--green:#91bf44;--muted:#667064;--line:#d8dccf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid #e0e0d2}.brand{display:flex;align-items:center;gap:13px;line-height:1.2}.brand img{width:46px;height:62px;object-fit:contain;mix-blend-mode:multiply}.brand>span{font-size:25px;letter-spacing:1.4px;font-weight:500}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:7px}nav{display:flex;gap:32px;align-items:center;font-size:13px}.nav-contact{border:1px solid #a9b19e;padding:11px 18px}.nav-contact span{margin-left:28px}.menu{display:none}.hero{height:720px;min-height:660px;position:relative;color:var(--paper);overflow:hidden}.hero-image{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,34,24,.89),rgba(17,37,25,.48) 55%,rgba(20,36,25,.1)),url('assets/forest.jpg') center 48%/cover}.hero-inner{position:relative;padding:78px 7% 0;max-width:1050px}.eyebrow{font-size:11px;letter-spacing:2.3px;font-weight:600;margin:0 0 28px;color:#57694e}.light{color:#d3ddbb}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,4.5vw,70px);line-height:1.12;letter-spacing:-1.9px;font-weight:400;margin:0 0 25px}.hero-description{font-size:16px;max-width:500px;line-height:1.8;color:#d8dfd2;margin:0 0 30px}.button{display:inline-flex;gap:42px;align-items:center;padding:14px 24px;font-size:12px;font-weight:600;transition:background .2s,transform .2s}.cream{background:var(--paper);color:var(--ink)}.button:hover{background:#dbe7c8;transform:translateY(-2px)}.button span{font-size:21px}.hero-bottom{position:absolute;bottom:0;left:7%;right:7%;border-top:1px solid #ffffff3d;padding:25px 0;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:1px}.hero-bottom small{font-size:11px;letter-spacing:0;color:#c7d3bf}.hero-bottom a{display:flex;gap:50px;align-items:center}.hero-bottom a span{font-size:24px}.section{padding:100px 7%}h2{font:400 clamp(30px,3vw,46px)/1.22 Georgia,'Times New Roman',serif;letter-spacing:-1px;margin:0 0 30px}h2 em{font-weight:400;color:#71835c}.about{display:grid;grid-template-columns:1fr 1fr;gap:65px}.about-copy p{color:var(--muted);font-size:14px;margin:0 0 20px}.about-copy .lead{font-size:19px;line-height:1.7;color:var(--ink)}.stats{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--line);padding-top:38px;gap:30px}.stats>div{border-right:1px solid var(--line)}.stats>div:last-child{border:0}.stats strong{display:block;font:400 45px Georgia,serif;letter-spacing:-1px}.stats span{font-size:12px;color:var(--muted)}.services{background:#e9ecdf}.section-top{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:45px}.section-top h2{margin:0}.section-top>p{font-size:13px;color:var(--muted);margin-bottom:4px}.service-list{border-top:1px solid #bdc8b6}details{border-bottom:1px solid #bdc8b6}summary{display:flex;align-items:center;list-style:none;cursor:pointer;gap:35px;padding:28px 0}summary::-webkit-details-marker{display:none}summary h3{font-size:23px;font-weight:400;line-height:1.4;margin:0}summary .number{font-size:12px;color:#7b8e6c}summary .plus{font-size:30px;margin-left:auto;font-weight:200}details[open] .plus{transform:rotate(45deg)}.service-body{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:0 0 34px 52px;color:#5c6b58;font-size:14px}.service-body p{margin:0}.service-body ul{padding-left:18px;margin:0}.service-body li{margin-bottom:9px;padding-left:7px}li::marker{color:#839b68}.photo{display:grid;grid-template-columns:1fr 1fr}.photo-visual{position:relative;min-height:660px;overflow:hidden;background:#263c2a}.photo-visual>img{width:100%;height:100%;position:absolute;object-fit:cover;filter:brightness(.75) saturate(.65)}.photo-visual:after{content:'';position:absolute;inset:35px;border:1px solid #ffffff42}.photo-caption{position:absolute;bottom:55px;left:55px;font-size:9px;letter-spacing:2px;color:#e8eddb;z-index:1}.cross{position:absolute;width:35px;height:35px;z-index:1;background:linear-gradient(#f3f2e770,#f3f2e770) center/1px 35px no-repeat,linear-gradient(#f3f2e770,#f3f2e770) center/35px 1px no-repeat}.c1{top:70px;left:70px}.c2{bottom:95px;right:70px}.photo-copy{padding:80px 12%}.photo-copy h2{font-size:36px}.photo-copy>p:not(.eyebrow):not(.small-label){font-size:14px;color:var(--muted)}.small-label{font-size:10px;letter-spacing:1.5px;margin-top:30px}.photo-list{list-style:none;margin:0 0 30px;padding:0;font-size:13px}.photo-list li{display:flex;gap:17px;padding:12px 0;border-bottom:1px solid var(--line)}.photo-list li span{color:#80966a;font-size:10px;min-width:18px;padding-top:3px}.text-link{font-size:12px;border-bottom:1px solid #839570;padding-bottom:7px;display:inline-flex;gap:25px}.contact{display:grid;grid-template-columns:1.3fr 1fr;gap:100px;background:#283d30;color:var(--paper)}.contact h2{font-size:43px}.contact>div>p:not(.eyebrow){color:#bdcab8;font-size:14px;margin-bottom:30px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-content:center}.contact-details>div{padding-bottom:20px;border-bottom:1px solid #ffffff29}.contact-details span{font-size:9px;letter-spacing:2px;display:block;color:#b8c7a6;margin-bottom:12px}.contact-details a,.contact-details p{font-size:17px;line-height:1.5;margin:0}.contact-details a:hover{text-decoration:underline}footer{display:flex;justify-content:space-between;align-items:center;padding:35px 5%;gap:24px}footer .brand img{width:33px;height:44px}footer .brand>span{font-size:18px}footer .brand small{letter-spacing:0;font-size:10px}footer>p,footer>span{font-size:10px;color:var(--muted)}footer>a:last-child{font-size:26px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #91bf44;outline-offset:6px}@media(min-width:1600px){header,.section,.hero-inner,.hero-bottom,footer{padding-left:max(7%,calc((100vw - 1400px)/2));padding-right:max(7%,calc((100vw - 1400px)/2))}}@media(max-width:900px){nav{gap:18px}.hero{height:700px}.hero-inner{padding-top:90px}.about{gap:35px}.section{padding:75px 6%}.photo-copy{padding:60px 9%}.photo-copy h2{font-size:30px}.contact{gap:40px}.contact-details{grid-template-columns:1fr}.contact-details a,.contact-details p{font-size:15px}.service-body{gap:30px}.stats strong{font-size:36px}}@media(max-width:650px){html{scroll-padding-top:80px}header{height:80px;padding:0 6%}.brand>span{font-size:21px}.brand img{width:35px;height:50px}.brand small{font-size:8px;letter-spacing:1.4px}.menu{display:block;background:none;border:0;font-size:12px;color:var(--ink);padding:8px}.menu span{margin-left:8px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--paper);padding:24px 6%;box-shadow:0 10px 20px #0002}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:22px}.hero{height:730px;min-height:0}.hero-inner{padding:65px 6% 0}.hero h1{font-size:46px;letter-spacing:-1.5px}.eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:23px}.hero-description{font-size:14px;max-width:330px}.hero-image{background-position:60% center}.hero-bottom{left:6%;right:6%;padding:21px 0;align-items:flex-start}.hero-bottom>a{font-size:0;gap:0}.hero-bottom>a span{font-size:25px}.section{padding:60px 6%}.about{grid-template-columns:1fr;gap:15px}.about h2{font-size:33px}.about-copy .lead{font-size:17px}.stats{gap:14px;padding-top:28px;margin-top:15px}.stats strong{font-size:30px}.stats>div:last-child strong{font-size:20px;line-height:1.7}.stats span{font-size:10px;line-height:1.5;display:block}.section-top{display:block;margin-bottom:30px}.section-top>p{margin-top:22px;font-size:12px}.section-top h2{font-size:33px}summary{gap:15px;padding:24px 0}summary h3{font-size:18px}.service-body{grid-template-columns:1fr;gap:20px;padding:0 0 25px 29px;font-size:13px}.photo{grid-template-columns:1fr}.photo-visual{min-height:360px;max-height:360px}.photo-copy{padding:55px 6%}.photo-copy h2{font-size:33px}.contact{grid-template-columns:1fr;gap:40px}.contact h2{font-size:34px}.contact-details{grid-template-columns:1fr 1fr;gap:22px 16px}.contact-details a,.contact-details p{font-size:13px}footer{padding:30px 6%;flex-wrap:wrap}footer>p{display:none}footer>span{font-size:9px}footer .brand>span{font-size:16px}footer>a:last-child{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Daylight photography and an airy reading area. */
.hero{color:var(--ink)}
.hero-image{background:linear-gradient(90deg,#f3f2e7 0%,#f3f2e7f5 25%,#f3f2e7cf 40%,#f3f2e738 57%,transparent 70%),url('assets/forest-daylight.jpg') center 52%/cover}
.hero .eyebrow{color:#586c47}
.hero-description{color:#435641}
.hero .button{background:#2d4933;color:#f3f2e7}
.hero .button:hover{background:#416548}
.hero-bottom{border-top-color:#687b6150}
.hero-bottom small{color:#536a4b}
.hero-bottom>a{background:#f3f2e7e8;padding:4px 12px}
.photo-visual>img{filter:none;object-position:50% center}
.photo-caption{background:#253c2de8;padding:9px 12px;left:45px;bottom:45px}
@media(max-width:650px){.hero-image{background:linear-gradient(90deg,#f3f2e7f5 0%,#f3f2e7d9 48%,#f3f2e750 100%),url('assets/forest-daylight.jpg') 55% center/cover}.photo-caption{left:45px;font-size:8px}}

/* Keep identity in normal flow so the service button cannot cover it. */
.hero{display:flex;flex-direction:column;height:auto;min-height:720px}
.hero-inner{padding-bottom:40px}
.hero-bottom{position:relative;left:auto;right:auto;bottom:auto;margin:0 7%;margin-top:auto;z-index:1;gap:24px}
.hero-bottom>span{display:block;flex:1;min-width:0}
@media(max-width:900px){.hero{min-height:700px}}
@media(max-width:650px){.hero{min-height:730px}.hero-inner{padding-bottom:38px}.hero-bottom{margin-left:6%;margin-right:6%}.hero-bottom>span{font-size:11px;line-height:1.8}.hero-bottom small{display:block;line-height:1.6}}

/* Compact, readable professional identity. */
.hero-bottom>span{font-size:18px;font-weight:600;letter-spacing:.55px;line-height:1.5}
.hero-bottom>span small{font-size:12px;font-weight:400;letter-spacing:0;line-height:1.5}
@media(max-width:650px){.hero-bottom>span{font-size:16px;letter-spacing:.2px;line-height:1.5}.hero-bottom>span small{font-size:11px;margin-top:3px}}
