@charset "UTF-8";
/* Warm paper, deep evergreen, and fine architectural rules. */
:root{--paper:#f5f3ed;--ink:#263d34;--muted:#626b60;--line:#d5d7cb;--forest:#263d34;--sand:#e9e8df;--brass:#88764e;--serif:'Palatino Linotype','Book Antiqua',Palatino,Georgia,serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:45px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}img{display:block;max-width:100%}figure{margin:0}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #ae8d48;outline-offset:5px}::selection{background:#d2d6bd;color:var(--ink)}.skip{position:fixed;left:20px;top:-100px;z-index:100;background:white;padding:16px}.skip:focus{top:16px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.05em}h2{font-size:clamp(38px,4.1vw,62px);line-height:1.13;margin-bottom:30px}h3,em{font-weight:400}p{font-size:14px;line-height:1.85}.eyebrow{font-size:9px;font-weight:500;letter-spacing:.17em;line-height:1.8;margin:0 0 30px}.light{color:#ccd3c1}.section-pad{padding:110px 7%}
.header{display:flex;align-items:center;gap:30px;justify-content:space-between;padding:0 4.5%;min-height:106px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;flex-direction:column;flex-shrink:0}.brand-name{font-family:Georgia,serif;font-size:31px;letter-spacing:.12em;line-height:1.05}.brand-dot{color:var(--brass)}.brand-sub{font-size:8px;letter-spacing:.5em;margin-top:9px}.header-location{margin-right:auto;padding-left:29px;border-left:1px solid var(--line);font-size:8px;letter-spacing:.13em;line-height:1.8;color:var(--muted)}nav{display:flex;align-items:center;gap:28px;font-size:11px}nav a{padding:13px 0}nav a:hover{color:var(--brass)}.nav-contact{border-bottom:1px solid var(--ink);display:flex;justify-content:space-between;gap:23px;margin-left:10px}.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:46% 54%;min-height:650px}.hero-content{padding:73px 10% 60px 15.2%;display:flex;align-items:flex-start;flex-direction:column}.hero .eyebrow{font-size:8px;display:flex;align-items:center;gap:10px;margin-bottom:31px}.small-rule{display:inline-block;width:24px;height:1px;background:var(--brass);flex-shrink:0}h1{font-size:clamp(58px,6.1vw,97px);line-height:.99;margin:0 0 30px}h1 em{color:#697558}.hero-description{max-width:335px;color:var(--muted);font-size:13px;line-height:1.9;margin:0 0 27px}.button{border:1px solid transparent;padding:19px 22px;display:inline-flex;align-items:center;justify-content:space-between;gap:45px;font-size:11px;cursor:pointer;transition:background .2s;min-height:51px}.button-dark{background:var(--forest);color:var(--paper)}.button-dark:hover{background:#395344}.button-light{background:#e6e6d5;color:var(--ink)}.button-light:hover{background:white}.button span{font-size:16px}.hero-secondary{font-size:10px;margin-top:22px;padding:5px 0;display:flex;gap:20px}.hero-secondary:hover{color:var(--brass)}.hero-visual{position:relative;overflow:hidden;background:var(--forest);isolation:isolate}.hero-image{width:100%;height:100%;position:absolute;object-fit:cover;object-position:60% 50%;z-index:-3}.hero-image-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(0deg,#142f30a6,transparent 50%)}.image-note{position:absolute;top:36px;left:35px;color:#fff;display:flex;align-items:center;gap:17px;font-size:8px;letter-spacing:.15em;line-height:1.8;text-shadow:0 1px 12px #172720}.crosshair{font-size:36px;font-weight:200}.hero-visual figcaption{position:absolute;bottom:31px;left:35px;right:35px;color:#fff;display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.15em}.contour-art{position:absolute;bottom:50px;right:-35px;width:330px;color:#e3e8d7;opacity:.37;pointer-events:none}.credentials{display:grid;grid-template-columns:1fr 1fr 1fr;padding:31px 7%;border-bottom:1px solid var(--line);gap:30px}.credentials>div{display:flex;flex-direction:column;gap:8px}.credential-label{font-size:8px;letter-spacing:.18em;color:var(--muted)}.credentials>div>span:last-child{font-size:12px}
.section-intro{display:grid;grid-template-columns:1fr 2fr;gap:40px}.section-intro>.eyebrow{margin-top:10px}.section-lead{max-width:620px;color:var(--muted);font-size:15px}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:50px}.value-grid article{border-top:1px solid var(--line);padding-top:27px;display:flex;flex-direction:column}.index{color:var(--brass);font-size:10px;letter-spacing:.1em}.value-grid h3{font-family:var(--serif);font-size:27px;letter-spacing:-.035em;line-height:1.27;margin:27px 0 20px}.value-grid p{color:var(--muted);font-size:13px;margin-bottom:27px}.outcome{margin-top:auto;padding-top:17px;border-top:1px solid var(--line);font-size:10px}.value-footnote{margin-top:65px;padding:25px 0 0;display:flex;align-items:center;gap:25px}.plus-mark{font-size:28px;color:var(--brass)}.value-footnote p{font-family:var(--serif);font-size:24px;line-height:1.5;margin:0;max-width:710px;letter-spacing:-.02em}
.feature{display:grid;grid-template-columns:55% 45%;background:var(--forest);color:var(--paper)}.feature-photo{position:relative;min-height:540px}.feature-photo img{position:absolute;height:100%;width:100%;object-fit:cover;object-position:55% 50%}.photo-label{position:absolute;bottom:20px;left:25px;background:#1b302be8;color:#f4f4e7;padding:12px 15px;font-size:8px;letter-spacing:.12em;max-width:calc(100% - 50px)}.feature-copy{padding:85px 14% 85px 12%}.feature-copy h2{font-size:clamp(36px,3.6vw,55px)}.feature-copy p:not(.eyebrow){color:#d1d8cb;font-size:13px}.text-link{display:inline-flex;justify-content:space-between;align-items:center;min-height:43px;gap:25px;padding-bottom:10px;border-bottom:1px solid var(--ink);font-size:11px}.text-link span{transition:transform .2s;font-size:17px}.text-link:hover span{transform:translate(3px,-3px)}.light-link{border-color:#85947e;margin-top:15px}
.expertise{display:grid;grid-template-columns:1fr 1.3fr;gap:11%}.expertise-intro>p:not(.eyebrow){color:var(--muted);font-size:13px;max-width:300px}.expertise-aside{border-left:1px solid #9a997d;padding-left:22px;margin-top:47px}.expertise-aside .eyebrow{font-size:8px;margin-bottom:10px}.expertise-aside p{font-family:var(--serif);font-size:18px;margin:0}.services{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;gap:22px;padding:27px 0;list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.service-number{font-size:9px;color:var(--brass)}summary h3{font-family:var(--serif);font-size:24px;letter-spacing:-.025em;flex:1;margin:0}.expand:before{content:'+';font-size:25px;font-weight:300}details[open] .expand:before{content:'−'}.service-copy{padding:0 28px 27px 35px;color:var(--muted)}.service-copy p{font-size:13px;margin-bottom:18px}.service-copy p:last-child{margin-bottom:0}.service-value{display:block;font-size:8px;letter-spacing:.14em;color:var(--brass);margin:24px 0 8px}
.practice{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;background:var(--sand)}.practice-visual{position:relative}.practice-visual img{height:630px;width:100%;object-fit:cover;object-position:53%}.local-caption{position:absolute;bottom:28px;left:28px;right:28px;background:var(--paper);padding:25px 30px}.local-caption>span{font-size:8px;letter-spacing:.17em;color:var(--muted)}.local-caption p{font-family:var(--serif);font-size:29px;line-height:1.28;letter-spacing:-.03em;margin:13px 0 0}.local-caption em{color:#697558}.practice-copy h2{font-size:clamp(38px,3.9vw,59px)}.practice-copy>p:not(.eyebrow){color:var(--muted);font-size:13px}.practice-copy .practice-lead{color:var(--ink)!important;font-size:18px!important;font-family:var(--serif)}.principal{display:flex;gap:21px;align-items:center;border-top:1px solid #c5c9bb;margin-top:28px;padding-top:25px;margin-bottom:22px}.principal-monogram{font-family:var(--serif);border:1px solid #929a83;font-size:26px;width:61px;height:67px;display:grid;place-items:center}.principal h3{font-family:var(--serif);font-size:22px;margin:0 0 9px;letter-spacing:-.02em}.principal p{margin:0;color:var(--muted);font-size:8px;letter-spacing:.12em}
.approach{background:var(--forest);color:var(--paper)}.approach .section-lead{color:#c8d0c2}.process{list-style:none;padding:0;margin:55px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:44px}.process li{border-top:1px solid #6b7b69;padding-top:24px}.process .index{color:#c5c7a4;font-size:8px}.process h3{font-family:var(--serif);font-size:28px;letter-spacing:-.025em;margin:27px 0 18px}.process p{font-size:13px;color:#c8d0c2;max-width:310px;margin-bottom:0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:280px;color:var(--muted);font-size:13px;margin-bottom:0}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.photo-card{padding:0;border:0;background:none;cursor:pointer;width:100%;text-align:left}.photo-wrap{position:relative;display:block;overflow:hidden;aspect-ratio:1.45}.photo-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.photo-card:hover img{transform:scale(1.035)}.photo-open{position:absolute;bottom:17px;right:17px;width:40px;height:40px;display:grid;place-items:center;background:var(--paper);font-size:19px}.context-copy{padding:25px 0 0}.context-copy .eyebrow{display:block;margin-bottom:12px;font-size:8px;color:var(--brass)}.context-copy h3{font-family:var(--serif);font-size:28px;letter-spacing:-.03em;margin-bottom:15px}.context-copy p{color:var(--muted);font-size:13px;max-width:450px;margin-bottom:0}.questions{display:grid;grid-template-columns:1fr 1.5fr;gap:11%;padding-top:20px}.faq-list{border-top:1px solid var(--line)}.faq-list summary h3{font-family:var(--sans);font-size:14px;letter-spacing:0;line-height:1.7}.faq-list .service-copy{padding-left:0}
.contact{display:grid;grid-template-columns:1fr 1.1fr;gap:12%;background:#1e342c;color:var(--paper)}.contact h2{font-size:clamp(52px,5.4vw,79px)}.contact-intro>p:not(.eyebrow){font-size:13px;color:#d0d7c9}.contact-links{margin-top:40px}.contact-links>a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 0;border-bottom:1px solid #5a6a55;font-size:19px;letter-spacing:-.02em}.contact-links>a:hover{color:#d4d6b4}.inquiry{border-top:1px solid #6b7b63;padding-top:22px}.inquiry .eyebrow{font-size:8px;margin-bottom:20px}.inquiry>h3{font-family:var(--serif);font-size:30px;letter-spacing:-.02em;margin-bottom:5px}.inquiry-intro{font-size:12px;color:#cbd3c1;margin-bottom:28px}label{display:block;font-size:10px;margin-bottom:10px}label span{color:#bcc9b4}input,select,textarea{display:block;width:100%;color:var(--paper);background:#294135;border:1px solid #6f7e65;border-radius:0;padding:13px 12px;font-size:12px;min-height:45px}input::placeholder,textarea::placeholder{color:#bfcab6;opacity:1}textarea{resize:vertical}select{color-scheme:dark}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}.form-row>div{min-width:0}.inquiry .button{width:100%;margin-top:22px}.form-note{font-size:10px;line-height:1.65;margin-top:15px;color:#c5ceba}#inquiry-status{font-size:12px;line-height:1.7;padding:15px;border:1px solid #97a080}#inquiry-status a,noscript a{text-decoration:underline}
footer{padding:50px 7% 24px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-bottom:45px}.footer-top>p{font-family:var(--serif);font-size:23px;letter-spacing:-.035em;line-height:1.35;margin:0}.back-top{font-size:8px;letter-spacing:.12em;display:flex;align-items:center;gap:22px;min-height:44px}.back-top span{font-size:21px}.footer-bottom{display:flex;justify-content:space-between;gap:25px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:8px;letter-spacing:.07em;line-height:1.7}.lightbox{padding:60px 30px 24px;border:0;background:var(--paper);color:var(--ink);width:min(1100px,94vw);max-height:94svh}.lightbox::backdrop{background:#0a1611e0}.lightbox>img{max-height:65svh;width:100%;object-fit:contain}.close-dialog{position:absolute;right:25px;top:17px;background:none;border:0;cursor:pointer;font-size:12px;display:flex;align-items:center;gap:18px}.close-dialog span{font-size:25px}.lightbox-caption h2{font-size:28px;margin:22px 0 6px}.lightbox-caption p{font-size:12px;margin:0;color:var(--muted)}body.modal-open{overflow:hidden}
@media(min-width:1700px){.section-pad,.credentials,footer{padding-left:max(7%,calc((100vw - 1460px)/2));padding-right:max(7%,calc((100vw - 1460px)/2))}.hero{min-height:800px}.hero-content{padding-top:110px}}
@media(max-width:1100px){.header-location{display:none}.hero-content{padding:60px 10% 50px 13%}h1{font-size:67px}.hero{min-height:630px}.hero .eyebrow{font-size:7px;letter-spacing:.1em}.hero .small-rule{width:15px}.section-pad{padding:85px 6%}.section-intro{grid-template-columns:1fr 2.2fr;gap:25px}.value-grid,.process{gap:28px}.value-grid h3{font-size:24px}.feature-copy{padding:65px 11%}.practice{gap:7%}.practice-visual img{height:630px}.practice-copy h2{font-size:42px}.expertise,.questions{gap:7%}.contact{gap:7%}.questions{padding-top:10px}}
@media(max-width:760px){html{scroll-padding-top:25px}.header{min-height:86px;padding:0 6%;position:relative;z-index:5}.brand-name{font-size:27px}.brand-sub{font-size:7px}.menu-toggle{display:flex;align-items:center;gap:18px;border:0;background:none;padding:13px 0;font-size:11px}.menu-toggle span{font-size:21px}nav{display:none;position:absolute;top:86px;left:0;right:0;padding:22px 6% 30px;background:var(--paper);box-shadow:0 15px 20px #16291c20;flex-direction:column;align-items:stretch;gap:5px;font-size:15px}nav.is-open{display:flex}.nav-contact{margin-left:0;max-width:205px}.hero{grid-template-columns:1fr}.hero-content{padding:45px 7% 38px}.hero .eyebrow{font-size:7px;letter-spacing:.12em;margin-bottom:24px}h1{font-size:clamp(58px,13vw,85px);line-height:1.03;margin-bottom:22px}.hero-description{max-width:410px;font-size:13px;margin-bottom:23px}.hero-secondary{margin-top:17px}.hero-visual{min-height:360px}.hero-image{object-position:60% 50%}.image-note{left:24px;top:20px;font-size:7px}.hero-visual figcaption{left:24px;right:24px;bottom:24px;font-size:7px}.contour-art{width:230px;bottom:40px}.credentials{grid-template-columns:1fr;gap:18px;padding:25px 7%}.credentials>div{flex-direction:row;align-items:baseline;gap:12px}.credential-label{min-width:85px;font-size:7px}.credentials>div>span:last-child{font-size:11px}.section-pad{padding:65px 7%}.section-intro{grid-template-columns:1fr;gap:0}.section-intro>.eyebrow{margin-top:0}h2{font-size:40px;margin-bottom:25px}.section-lead{font-size:14px}.value-grid{grid-template-columns:1fr;gap:30px;margin-top:27px}.value-grid article{padding-top:22px}.value-grid h3{font-size:28px;margin:18px 0 15px}.value-grid p{max-width:500px;margin-bottom:20px}.value-footnote{margin-top:38px;gap:20px;align-items:flex-start}.value-footnote p{font-size:22px}.feature{grid-template-columns:1fr}.feature-photo{min-height:360px}.feature-copy{padding:55px 7%}.feature-copy h2{font-size:42px}.photo-label{font-size:7px}.expertise{grid-template-columns:1fr;gap:32px}.expertise-intro>p:not(.eyebrow){max-width:420px}.expertise-aside{display:none}summary{padding:23px 0;gap:15px}summary h3{font-size:23px}.service-copy{padding-left:28px;padding-right:12px}.practice{grid-template-columns:1fr;gap:45px}.practice-visual img{height:470px}.local-caption{bottom:20px;left:20px;right:20px;padding:22px}.local-caption p{font-size:28px}.practice-copy h2{font-size:42px}.process{grid-template-columns:1fr;gap:30px;margin-top:25px}.process h3{font-size:29px;margin:20px 0 13px}.process p{max-width:500px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{max-width:430px;margin-top:23px}.gallery-grid{grid-template-columns:1fr;gap:38px}.photo-wrap{aspect-ratio:1.2}.context-copy h3{font-size:27px}.questions{grid-template-columns:1fr;gap:20px;padding-top:15px}.contact{grid-template-columns:1fr;gap:50px}.contact h2{font-size:59px}.contact-links{margin-top:28px}.contact-links>a{font-size:23px}.form-row{grid-template-columns:1fr;gap:22px}input,select,textarea{font-size:16px}.footer-top{flex-wrap:wrap;gap:30px;padding-bottom:30px}.footer-top>p{font-size:20px}.back-top{width:100%;justify-content:space-between}.footer-bottom{flex-direction:column;gap:12px;font-size:7px}.lightbox{padding:55px 15px 20px}.lightbox-caption h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
