:root{--ink:#243f38;--green:#2e5148;--sage:#e8ede5;--paper:#f8f7f2;--muted:#5d6d65;--line:#d5dcd2;--gold:#a9773e}*{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.65}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;max-width:100%;object-fit:cover}p{color:var(--muted);margin:0 0 1.25rem}h1,h2,h3{font-weight:400;line-height:1.1;margin:0 0 24px}h1,h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.045em}h1{font-size:clamp(48px,5.4vw,82px)}h2{font-size:clamp(36px,3.5vw,54px)}h3{font-size:23px;letter-spacing:-.025em}em{font-weight:400;color:#607966}a,button{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b27931;outline-offset:5px}a:hover{color:#54745c}.wrap{max-width:1320px;width:calc(100% - 112px);margin:auto}.topline{background:var(--green);color:#fff;padding:9px 56px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.13em}.topline a{color:#fff;letter-spacing:.05em}header{display:flex;align-items:center;justify-content:space-between;padding:25px 40px;background:var(--paper);gap:25px;border-bottom:1px solid var(--line)}.brand{flex:none}.brand img{width:233px;height:auto}nav{display:flex;align-items:center;gap:22px;font-size:12px}nav a{white-space:nowrap}nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}.nav-cta{border:1px solid var(--green);padding:12px 16px}.menu-toggle{display:none}.skip{position:absolute;top:-100px}.skip:focus{top:0;padding:20px;background:white;z-index:10}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center;padding-top:48px;padding-bottom:55px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.18em;color:var(--green);margin-bottom:24px}.dot{width:6px;height:6px;background:var(--gold);display:inline-block;border-radius:50%;margin-right:8px}.hero h1{margin-bottom:30px}.lead{font-size:18px;max-width:520px;line-height:1.7}.actions{display:flex;align-items:center;gap:24px;margin-top:30px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 23px;background:var(--green);color:white;font-size:13px;border:1px solid var(--green);transition:background .2s}.button:hover{background:#42685b;color:white}.button span{font-size:19px;line-height:1}.outline{background:transparent;color:var(--green)}.text-link{font-size:13px;padding:12px 0;border-bottom:1px solid var(--green);display:inline-block}.hero-note{display:flex;gap:20px;align-items:center;margin-top:48px}.hero-note p{font-size:12px;margin:0;line-height:1.7}.hero-note strong{font-weight:400}.line-mark{font-family:Georgia,serif;font-size:45px;color:#8e9f8d}.hero-visual{position:relative;padding-bottom:22px}.hero-photo{width:100%;height:590px;border-radius:170px 3px 3px 3px;object-position:center 40%;background:#e7e4df}.photo-label{position:absolute;bottom:52px;left:-28px;padding:22px 27px;background:var(--paper);box-shadow:0 12px 40px #243f380b;display:grid;border-left:2px solid #a9773e;min-width:270px}.photo-label span{font-size:8px;letter-spacing:.14em;margin-bottom:9px}.photo-label strong{font-family:Georgia,serif;font-weight:400;font-size:26px}.photo-label small{font-size:11px;color:var(--muted);margin-top:3px}.photo-index{display:block;text-align:right;font-size:8px;letter-spacing:.18em;position:absolute;bottom:0;right:0}.ribbon{display:flex;justify-content:center;gap:65px;padding:22px 30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:Georgia,serif;font-size:21px;background:#f0f1e9}.ribbon b{font-weight:400;font-size:15px;color:#7c917b}.section{padding-top:100px;padding-bottom:100px}.section-heading{margin-bottom:44px;max-width:750px}.section-heading h2{margin-bottom:20px}.section-heading p:last-child{max-width:620px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.image-frame{height:340px;position:relative;overflow:hidden}.image-frame img{width:100%;height:100%;object-position:center 30%;transition:transform .5s}.service-card:hover img{transform:scale(1.025)}.image-arrow{position:absolute;right:15px;bottom:15px;background:var(--paper);width:42px;height:42px;display:grid;place-items:center;font-size:24px}.service-title{display:flex;gap:16px;align-items:center;margin-top:25px}.service-title span{font-size:11px;color:var(--gold)}.service-title h3{margin:0;font-family:Georgia,serif;font-size:28px}.service-card p{margin:14px 0 0 30px;font-size:14px}.sage-section{background:var(--sage);padding:85px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.rounded-photo{height:560px;width:100%;border-radius:3px 150px 3px 3px;object-position:center 30%}.editorial p{max-width:470px}.editorial .button{margin-top:12px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:60px}.steps article{border-top:1px solid #9eae9c;padding-top:24px}.steps span{font-family:Georgia,serif;font-size:36px;color:#94a38b;display:block;margin-bottom:30px}.steps p{font-size:14px;max-width:300px}.gallery-intro{padding-top:0}.gallery-preview{display:grid;grid-template-columns:1fr .8fr 1fr;gap:24px;align-items:center;margin-bottom:25px}.gallery-preview img{width:100%;height:380px}.gallery-preview img:nth-child(2){height:300px}.faq-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;padding-top:50px}.faq{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:23px 0}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;font-size:15px}summary::-webkit-details-marker{display:none}summary span{font-size:22px;line-height:1}details p{font-size:14px;margin:20px 25px 0 0}details[open] summary span{transform:rotate(45deg)}.contact-band{background:var(--green);color:#fff;padding:65px 70px;display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:50px;margin-bottom:90px}.contact-band p,.contact-band .eyebrow{color:#dbe4d9}.contact-band h2{margin-bottom:20px}.contact-band .button{display:flex;max-width:320px;margin-bottom:14px;background:#f4f4eb;color:var(--green);border-color:#f4f4eb}.contact-band .outline{background:transparent;color:white}.contact-band small{color:#dbe4d9;font-size:11px}.footer-grid{display:grid;grid-template-columns:1fr .8fr 1fr;gap:70px;padding:60px 0}.footer-logo{margin-bottom:25px}footer{border-top:1px solid var(--line)}footer p,footer a{font-size:12px}footer h3{font-size:13px;font-weight:600;margin-bottom:22px}footer a{display:block;margin-bottom:8px}footer .footer-bottom{padding:24px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}footer .footer-bottom a{font-size:10px}.inner-hero{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding-top:55px;padding-bottom:65px}.inner-hero h1{font-size:clamp(48px,5vw,72px)}.inner-photo{width:100%;height:530px;border-radius:130px 3px 3px 3px;object-position:center 30%}.breadcrumb{font-size:11px;color:var(--muted);display:block;margin-bottom:35px}.inner-hero .button{margin-top:12px}.reading-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;max-width:1120px}.reading-grid h3{margin:35px 0 15px}.reading-grid p{max-width:640px}.path-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.path-grid article{padding:45px;background:#edf0e8}.path-grid article:nth-child(2){background:#efebe2}.path-grid h2{font-size:42px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px 30px}.team-grid img{height:390px;width:100%;object-position:center 25%}.team-grid h3{font-family:Georgia,serif;font-size:27px;margin:23px 0 9px}.team-grid p{font-size:13px}.source-note{font-size:12px;margin-top:32px}.page-heading{padding-bottom:45px}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:35px}.filters button{border:1px solid var(--line);background:transparent;padding:10px 24px;font-size:13px;min-height:44px}.filters .active{background:var(--green);color:white;border-color:var(--green)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 24px}.gallery-item{padding:0;background:transparent;border:0;text-align:left}.gallery-item img{height:430px;width:100%;object-position:center 30%}.gallery-item span{display:flex;justify-content:space-between;padding:15px 0;font-size:13px;gap:15px}.gallery-item b{font-size:20px;font-weight:400}.gallery-item[hidden]{display:none}.gallery-section{margin-bottom:100px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-bottom:70px}.contact-options>a{border-top:1px solid var(--line);padding:28px 0;display:block}.contact-options>a>span{font-size:10px;letter-spacing:.15em}.contact-options strong{display:block;font-family:Georgia,serif;font-size:32px;font-weight:400;margin:14px 0 6px}.contact-options p{font-size:13px;margin:0}.contact-options strong.email{font-family:Arial,sans-serif;font-size:20px;overflow-wrap:anywhere}.location{background:var(--sage)}.location>img{width:100%;height:300px;object-position:center 60%}.location>div{padding:35px}.location h2{font-size:32px}.prose{max-width:800px}.prose h2{font-size:32px;margin-top:45px}.prose a{text-decoration:underline}.mobile-call{display:none}dialog{border:0;background:var(--paper);padding:20px;max-width:90vw;max-height:94vh;color:var(--green)}dialog::backdrop{background:#152d29df}dialog img{max-width:80vw;max-height:73vh;width:auto;height:auto;object-fit:contain;margin:auto}dialog p{font-size:13px;margin:15px 0 0}.close-lightbox{display:block;margin:0 0 15px auto;background:transparent;border:1px solid var(--line);padding:9px 18px} @media(min-width:1500px){header{padding-left:max(40px,calc((100vw - 1390px)/2));padding-right:max(40px,calc((100vw - 1390px)/2))}}@media(max-width:1150px){header{padding:22px 30px}.brand img{width:190px}nav{gap:14px;font-size:11px}.wrap{width:calc(100% - 70px)}.hero{gap:40px}.hero-photo{height:540px}.hero h1{font-size:62px}.ribbon{gap:30px;font-size:19px}.split{gap:55px}.service-title h3{font-size:24px}.faq-layout{gap:40px}.contact-band{padding:45px}.image-frame{height:290px}}@media(max-width:900px){header{flex-wrap:wrap;gap:0}.menu-toggle{display:flex;align-items:center;gap:15px;background:transparent;border:1px solid var(--line);padding:9px 15px;font-size:13px;min-height:44px}nav{display:none;width:100%;padding-top:25px;flex-direction:column;align-items:stretch;font-size:15px;gap:0}nav.open{display:flex}nav a{padding:13px;border-bottom:1px solid var(--line)}.hero h1{font-size:52px}.hero-photo{height:490px}.hero{gap:30px}.hero .lead{font-size:16px}.hero-note{margin-top:25px}.photo-label{left:-15px;min-width:220px;padding:18px}.photo-label strong{font-size:23px}.ribbon{gap:20px;font-size:16px}.team-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.inner-hero{gap:40px}.inner-photo{height:460px}.contact-grid{gap:35px}.contact-options strong{font-size:28px}.footer-grid{gap:35px}.contact-band h2{font-size:42px}}@media(max-width:650px){body{font-size:15px}.wrap{width:calc(100% - 40px)}.topline{padding:8px 20px;justify-content:center;font-size:9px}.topline>span{display:none}header{padding:18px 20px}.brand img{width:195px}.hero{grid-template-columns:1fr;gap:32px;padding-top:36px;padding-bottom:32px}.eyebrow{font-size:9px;margin-bottom:19px;letter-spacing:.14em}.hero h1{font-size:55px;line-height:1.05;margin-bottom:23px}.lead{font-size:16px}.actions{gap:18px;margin-top:24px}.button{font-size:12px;padding:16px 18px}.hero-note{display:none}.hero-photo{height:470px;border-radius:110px 3px 3px 3px;object-position:center 35%}.photo-label{left:12px;bottom:45px;min-width:230px;padding:18px 20px}.ribbon{padding:17px 15px;font-size:12px;gap:12px;flex-wrap:wrap}.ribbon b{font-size:10px}.ribbon span:last-child{flex-basis:100%;text-align:center}.ribbon b:nth-last-child(2){display:none}.section{padding-top:60px;padding-bottom:60px}.section-heading{margin-bottom:30px}h2{font-size:38px}.service-grid{grid-template-columns:1fr;gap:35px}.image-frame{height:350px}.service-title{margin-top:20px}.service-title h3{font-size:28px}.service-card p{margin-top:10px}.sage-section{padding:50px 0}.split{grid-template-columns:1fr;gap:35px}.rounded-photo{height:420px;border-radius:3px 100px 3px 3px}.steps{grid-template-columns:1fr;gap:25px}.steps span{font-size:30px;margin-bottom:15px}.steps h3{margin-bottom:12px}.steps p{max-width:none}.gallery-intro{padding-top:0}.gallery-preview{gap:12px;grid-template-columns:1fr 1fr}.gallery-preview img{height:270px}.gallery-preview img:nth-child(2){height:270px}.gallery-preview img:last-child{display:none}.faq-layout{grid-template-columns:1fr;gap:0;padding-top:10px}.contact-band{padding:35px 25px;grid-template-columns:1fr;gap:15px;margin-bottom:55px}.contact-band h2{font-size:36px}.contact-band .button{max-width:none}.footer-grid{grid-template-columns:1fr;gap:30px;padding:40px 0}.footer-grid>div:first-child{border-bottom:1px solid var(--line);padding-bottom:10px}.footer-bottom{flex-direction:column;gap:12px;padding-bottom:85px!important}.mobile-call{display:block;position:fixed;bottom:12px;left:20px;right:20px;background:var(--green);color:white;text-align:center;padding:14px;z-index:5;box-shadow:0 4px 20px #0002;font-size:13px;border:1px solid #d7e2d2}.inner-hero{grid-template-columns:1fr;gap:35px;padding-top:30px;padding-bottom:25px}.inner-hero h1{font-size:52px}.inner-photo{height:430px}.breadcrumb{margin-bottom:25px}.reading-grid{grid-template-columns:1fr;gap:15px}.path-grid{grid-template-columns:1fr;gap:20px}.path-grid article{padding:30px}.path-grid h2{font-size:36px}.team-grid{gap:30px 16px}.team-grid img{height:240px}.team-grid h3{font-size:23px;margin-top:15px}.team-grid p{font-size:12px}.page-heading{padding-bottom:30px}.page-heading h1{font-size:48px}.gallery-grid{gap:25px 15px}.gallery-item img{height:250px}.gallery-item span{font-size:11px}.filters{gap:8px}.filters button{padding:9px 17px}.gallery-section{margin-bottom:55px}.contact-grid{grid-template-columns:1fr;gap:30px;padding-bottom:45px}.contact-options strong{font-size:30px}.location>div{padding:25px}.location h2{font-size:29px}.prose h1{font-size:45px}dialog{padding:15px}dialog img{max-width:80vw}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.hero-photo{object-position:center 12%}.brand img{width:250px}.footer-logo{height:auto}@media(max-width:1150px){.brand img{width:205px}}@media(max-width:650px){.brand img{width:210px}.hero-photo{object-position:center 12%}}
@media(max-width:650px){.hero h1{font-size:clamp(41px,11.8vw,51px)}}
:root{--gold:#866038}.steps span{color:#718168}
