*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}button{color:inherit}svg{flex-shrink:0}h1,h2,h3,p{margin:0}a,button,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid currentColor;outline-offset:6px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;z-index:20;top:-6rem;left:1rem;padding:1rem;background:var(--ink);color:var(--paper)}.skip-link:focus{top:1rem}.wrap{width:min(100% - var(--gutter)*2,var(--max-width));margin-inline:auto}.stack>*+*{margin-top:var(--stack-gap,1.5rem)}.flow{display:grid;gap:var(--flow-gap,2rem)}.cluster{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.text-link{display:inline-flex;align-items:center;gap:1rem;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.6rem}.text-link:hover svg{transform:translateX(4px)}.text-link svg{transition:transform .2s ease}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:600}.rule{border-top:1px solid var(--line)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

@font-face{font-family:Instrument Sans;src:url(../fonts/instrument-sans-400-normal.woff2) format('woff2');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Instrument Sans;src:url(../fonts/instrument-sans-600-normal.woff2) format('woff2');font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Instrument Serif;src:url(../fonts/instrument-serif-400-italic.woff2) format('woff2');font-style:italic;font-weight:400;font-display:swap}
:root{--paper:#f5f3ed;--ink:#23382d;--muted:#526056;--line:#c8ccc0;--soft:#e9eae1;--gutter:clamp(1.25rem,4.7vw,5.5rem);--max-width:1440px}body{background:var(--paper);color:var(--ink);font-family:Instrument Sans,Arial,sans-serif;font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased}::selection{background:#d7ddaf;color:var(--ink)}h1,h2,h3{font-weight:400;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(3.6rem,7.8vw,8.5rem)}h2{font-size:clamp(2.7rem,4.2vw,4.7rem)}h3{font-size:1.6rem;letter-spacing:-.035em}em{font-family:Instrument Serif,Georgia,serif;font-weight:400;letter-spacing:-.035em}p{max-width:65ch}main:focus{outline:none}.site-header{height:112px;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:4.5rem;position:relative;z-index:5}.brand{display:inline-flex;align-items:center;gap:.7rem;text-decoration:none}.brand>span{font-size:2.75rem;line-height:1;font-weight:600;letter-spacing:-.075em}.brand-dot{color:#758052}.header-caption{font-size:.73rem;line-height:1.4;color:var(--muted)}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:2.6rem;font-size:.9rem}.desktop-nav a{text-decoration:none}.desktop-nav a:not(.nav-contact):hover,.desktop-nav [aria-current=page]{text-decoration:underline;text-underline-offset:6px}.nav-contact{display:flex;align-items:center;gap:1.4rem;border-bottom:1px solid var(--ink);padding-block:.6rem}.mobile-menu{display:none}.hero{padding-top:2.7rem;padding-bottom:4.4rem}.hero-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.7rem}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#72834d;margin-right:.65rem}.hero-index{font-size:.7rem;color:var(--muted)}.hero-grid{display:grid;grid-template-columns:1fr 290px;gap:2rem;align-items:end}.hero h1{font-size:clamp(4rem,7.4vw,8rem);max-width:13ch;line-height:.99}.hero h1 em{white-space:nowrap}.hero-copy{padding-bottom:.3rem;font-size:.98rem}.hero-copy .text-link{margin-top:2rem;font-size:.88rem}.hero-image{position:relative;margin-top:0;margin-bottom:0;overflow:hidden}.hero-image img{width:100%;height:clamp(330px,40vw,620px);object-fit:cover;object-position:50% 46%}.hero-image:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(10,22,17,.48));pointer-events:none}.hero-image figcaption{position:absolute;bottom:1.5rem;left:2rem;right:2rem;z-index:1;display:flex;justify-content:space-between;color:#fff;font-size:.72rem}.image-mark{position:absolute;right:2.5rem;bottom:3rem;color:#fff;font-size:7rem;font-family:Instrument Serif,Georgia,serif;font-style:italic;line-height:1;z-index:1}.section-space{padding-block:7.5rem}.intro{display:grid;grid-template-columns:1fr 2.3fr;gap:3rem}.section-label{padding-top:.6rem}.intro-copy h2{font-size:clamp(2.5rem,3.5vw,4rem);margin-bottom:2rem}.intro-copy>p{max-width:49ch;margin-bottom:1.2rem;color:var(--muted)}.intro-copy>.text-link{margin-top:1rem;font-size:.9rem}.services-overview{background:var(--soft)}.section-heading{display:grid;grid-template-columns:1fr 2.3fr;gap:3rem;align-items:start;margin-bottom:3.5rem}.section-heading>.eyebrow{padding-top:.7rem}.service-row{display:grid;grid-template-columns:.35fr 1.15fr 1.3fr 48px;align-items:start;gap:2rem;border-top:1px solid var(--line);padding-block:2.25rem;text-decoration:none;transition:padding .2s ease}.service-row:last-child{border-bottom:1px solid var(--line)}.service-number{font-size:.8rem;padding-top:.25rem}.service-row h3{font-size:clamp(1.5rem,2vw,2rem);line-height:1.2}.service-row p{font-size:.95rem;max-width:34ch;color:var(--muted)}.service-arrow{border:1px solid #a8b09f;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;transition:background .2s}.service-row:hover .service-arrow{background:var(--ink);color:var(--paper)}.approach{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.approach-image{position:relative}.approach-image img{width:100%;aspect-ratio:4/5;object-fit:cover}.photo-note{position:absolute;left:1.5rem;bottom:1.2rem;color:#fff;font-size:.75rem;background:#23382de8;padding:.4rem .7rem}.approach-copy>.eyebrow{margin-bottom:1.8rem}.approach-copy>h2{margin-bottom:1.5rem;font-size:clamp(2.5rem,3.6vw,4rem)}.approach-copy>p:not(.eyebrow){max-width:37ch;color:var(--muted)}.steps{list-style:none;padding:0;margin:2rem 0}.steps li{display:flex;gap:1.5rem;border-top:1px solid var(--line);padding:1.3rem 0}.steps li>span{font-size:.72rem;padding-top:.2rem}.steps h3{font-size:1.1rem;letter-spacing:-.02em;margin-bottom:.4rem}.steps p{font-size:.88rem;color:var(--muted);max-width:39ch}.approach-copy>.text-link{font-size:.9rem}.closing{background:var(--ink);color:var(--paper);padding-block:6rem}.closing-inner{display:grid;grid-template-columns:1.25fr 1fr;gap:3rem;align-items:end}.closing h2{font-size:clamp(4rem,6.5vw,7rem);line-height:1;margin-top:2rem}.closing-copy{max-width:400px;width:100%;justify-self:end}.closing-copy>p{color:#d6dcce;font-size:1rem}.round-link{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #7f8b7b;padding-block:1.5rem;text-decoration:none;margin-top:1rem;font-size:.95rem}.round-arrow{display:grid;place-items:center;width:52px;height:52px;border:1px solid #a0aa94;border-radius:50%;transition:background .2s}.round-link:hover .round-arrow{background:var(--paper);color:var(--ink)}.site-footer{padding-block:3.5rem 1.5rem}.footer-top{display:flex;align-items:center;gap:3rem;padding-bottom:3rem}.footer-top>p{font-size:.9rem;color:var(--muted)}.footer-email{margin-left:auto;display:flex;align-items:center;gap:1rem;font-size:.9rem;text-decoration:none}.footer-bottom{border-top:1px solid var(--line);padding-top:1.5rem;display:flex;justify-content:space-between;gap:2rem;font-size:.68rem;color:var(--muted)}.footer-bottom nav{display:flex;gap:1.4rem}.footer-bottom a{text-decoration:none}.footer-bottom a:hover{text-decoration:underline}.page-hero{padding-block:4.3rem 5rem}.page-hero>.eyebrow{margin-bottom:2.5rem}.page-hero h1{line-height:1.03}.page-intro{margin:2rem 0 0 auto;width:48%;font-size:1.15rem;color:var(--muted)}.about-story{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.about-story img{width:100%;aspect-ratio:5/6;object-fit:cover}.about-story .stack>p:not(.eyebrow){color:var(--muted);font-size:.95rem}.about-story h2{font-size:clamp(2.6rem,3.7vw,4rem)}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}.principle-grid article{padding-top:1.5rem;border-top:1px solid var(--line)}.principle-grid h3{font-size:1.6rem;margin-block:2rem 1rem;max-width:17ch}.principle-grid p{font-size:.95rem;color:var(--muted)}.note-band{background:var(--soft);padding-block:3rem}.note-inner{display:grid;grid-template-columns:1fr 2.3fr;gap:3rem}.note-inner p:last-child{font-size:.9rem;color:var(--muted);max-width:65ch}.service-jump{display:flex;gap:2rem;margin-top:3.5rem;padding-top:1.5rem;border-top:1px solid var(--line)}.service-jump a{display:flex;align-items:center;gap:1rem;flex:1;text-decoration:none;font-size:.85rem}.service-jump a span:first-child{font-size:.7rem;color:var(--muted)}.service-jump a span:last-child{margin-left:auto}.service-details{padding-bottom:3rem}.service-detail{border-top:1px solid var(--line);padding-block:4.5rem;display:grid;grid-template-columns:1fr 1fr;gap:10%;scroll-margin-top:2rem}.service-detail-title h2{font-size:clamp(2.8rem,4vw,4.5rem);margin-block:1.7rem;max-width:10ch}.service-detail-title>p{color:var(--muted);max-width:32ch}.service-detail-title .text-link{margin-top:2rem;font-size:.9rem}.service-detail-copy>div+div{margin-top:2rem}.service-detail-copy h3{font-size:1.1rem;letter-spacing:-.02em;margin-bottom:.7rem}.service-detail-copy p,.service-detail-copy li{font-size:.95rem;color:var(--muted)}.service-detail-copy ul{padding:0;list-style:none;margin-top:1rem}.service-detail-copy li{padding:.5rem 0;border-bottom:1px solid var(--line)}.service-detail-copy li:before{content:'↗';margin-right:.7rem}.faq-section{background:var(--soft)}.faq-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:8%}.faq-grid h2{margin-top:2rem}.faq details{border-top:1px solid #b8c0af}.faq details:last-child{border-bottom:1px solid #b8c0af}.faq summary{list-style:none;padding:1.5rem 0;display:flex;justify-content:space-between;gap:1rem;align-items:center;font-size:1rem}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:1.4rem;font-weight:400;transition:transform .2s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:.95rem;color:var(--muted);padding-bottom:1.5rem;max-width:50ch}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;padding-bottom:7rem}.contact-lead{font-size:1.6rem;line-height:1.4;letter-spacing:-.03em;margin-bottom:1.7rem}.contact-aside>.text-link{font-size:.95rem}.contact-note{margin-top:4rem;max-width:34ch;color:var(--muted);font-size:.85rem}.contact-note p+p{margin-top:1rem}.contact-note code{font-size:.8rem}.contact-form{display:grid;gap:1.6rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.field{display:grid;gap:.55rem}.field label{font-size:.85rem}.field label span{font-size:.72rem;color:var(--muted)}.field input,.field select,.field textarea{width:100%;min-width:0;background:transparent;color:var(--ink);border:1px solid #9aa694;border-radius:0;padding:.9rem;font-size:1rem}.field textarea{resize:vertical;min-height:150px}.field-hint,.form-explanation{font-size:.75rem;color:var(--muted)}.solid-button{background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:1rem 1.5rem;display:inline-flex;justify-content:space-between;align-items:center;gap:2rem;text-decoration:none;font-size:.9rem;width:fit-content;min-height:52px}.solid-button:hover{background:#3e5140}.form-result{background:var(--soft);border:1px solid var(--line);padding:1.5rem}.form-result h2{font-size:1.7rem;margin-bottom:.7rem}.form-result p{font-size:.85rem;margin-bottom:1rem}.form-result .text-link{font-size:.85rem}.not-found{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;min-height:620px;padding-block:4rem}.error-number{font-family:Instrument Serif,Georgia,serif;font-style:italic;font-size:clamp(9rem,30vw,30rem);line-height:1;color:#778366;letter-spacing:-.1em}.error-copy h1{font-size:clamp(3.5rem,5vw,5.5rem);margin-block:1.5rem}.error-copy>p:not(.eyebrow){color:var(--muted);max-width:38ch;margin-bottom:2rem}.error-copy .text-link{display:flex;width:fit-content;font-size:.85rem;margin-top:1.5rem}
@media(min-width:1600px){.hero-grid{grid-template-columns:1fr 360px}}@media(max-width:1000px){.site-header{gap:2rem;height:96px}.hero-grid{grid-template-columns:1fr 240px}.hero h1{font-size:7.2vw}.hero-copy{font-size:.85rem}.hero-copy br{display:none}.section-space{padding-block:5rem}.intro,.section-heading{grid-template-columns:1fr 2fr;gap:2rem}.service-row{grid-template-columns:30px 1fr 1fr 44px;gap:1rem}.approach{gap:5%}.footer-top{gap:1.5rem}.footer-bottom{flex-wrap:wrap}.page-hero h1{font-size:7.5vw}}
@media(max-width:700px){:root{--gutter:1.25rem}.site-header{height:88px;justify-content:space-between}.brand>span{font-size:2.4rem}.brand svg{width:24px}.header-caption,.desktop-nav{display:none}.mobile-menu{display:block}.mobile-menu>summary{display:flex;gap:1rem;align-items:center;list-style:none;padding:.6rem 0 .6rem 1rem;font-size:.85rem;min-height:44px}.mobile-menu>summary::-webkit-details-marker{display:none}.menu-symbol{font-size:1.5rem;line-height:1;transition:transform .2s}.mobile-menu[open] .menu-symbol{transform:rotate(45deg)}.mobile-menu nav{position:absolute;top:calc(100% - 1px);right:0;left:0;background:var(--paper);padding:1rem 0 1.5rem;border-bottom:1px solid var(--line);box-shadow:0 20px 25px -25px #23382d80}.mobile-menu nav a{display:flex;justify-content:space-between;padding:.9rem .25rem;text-decoration:none;border-top:1px solid var(--line);font-size:1.2rem}.mobile-menu [aria-current=page]{font-style:italic}.hero{padding-top:1.8rem;padding-bottom:2.5rem}.hero-top{margin-bottom:2rem}.hero-top .eyebrow{font-size:.62rem;letter-spacing:.09em}.hero-index{display:none}.hero-grid{grid-template-columns:1fr;gap:1.8rem}.hero h1{font-size:clamp(3.3rem,11.4vw,5rem);line-height:1.04;letter-spacing:-.055em}.hero-copy{font-size:.95rem;max-width:32ch}.hero-copy .text-link{margin-top:1.3rem;font-size:.85rem}.hero-image img{height:380px;object-position:45% 50%}.hero-image figcaption{left:1.1rem;right:1.1rem;bottom:1rem;font-size:.63rem}.hero-image figcaption span:last-child{display:none}.image-mark{font-size:6rem;right:1.3rem;bottom:2.4rem}.section-space{padding-block:4rem}.intro,.section-heading{grid-template-columns:1fr;gap:1.6rem}.intro-copy h2{font-size:2.5rem;margin-bottom:1.5rem}.intro-copy>p{font-size:.95rem}.section-heading{margin-bottom:2rem}.section-heading h2{font-size:2.9rem}.service-row{grid-template-columns:25px 1fr 40px;gap:.8rem;padding-block:1.8rem}.service-row h3{font-size:1.5rem;align-self:center}.service-row p{grid-column:2;grid-row:2;font-size:.88rem}.service-number{padding-top:.25rem;font-size:.7rem}.service-arrow{grid-column:3;grid-row:1;width:38px;height:38px}.approach{grid-template-columns:1fr;gap:2.5rem}.approach-image img{aspect-ratio:5/4;object-position:center 48%}.approach-copy>h2{font-size:2.8rem}.approach-copy>.eyebrow{margin-bottom:1.2rem}.closing{padding-block:3.5rem}.closing-inner{grid-template-columns:1fr;gap:2.2rem}.closing h2{font-size:4.5rem;margin-top:1.5rem}.closing-copy{justify-self:start;max-width:none}.closing-copy>p{font-size:.95rem}.round-link{margin-top:.3rem;padding-block:1rem}.site-footer{padding-top:2.5rem}.footer-top{flex-wrap:wrap;padding-bottom:2rem;gap:1.3rem}.footer-top>p{margin-left:auto;font-size:.72rem;max-width:15ch}.footer-email{margin-left:0;font-size:.85rem}.footer-bottom{display:grid;gap:1.1rem;padding-top:1.2rem;font-size:.66rem}.footer-bottom nav{gap:2rem}.footer-bottom nav a{padding-block:.3rem}.page-hero{padding-block:2.5rem 3rem}.page-hero>.eyebrow{margin-bottom:2rem}.page-hero h1{font-size:clamp(3rem,10.4vw,4.6rem)}.page-intro{width:100%;font-size:1rem;margin-top:1.5rem}.about-story{grid-template-columns:1fr;gap:2.5rem}.about-story img{aspect-ratio:5/4}.about-story h2{font-size:2.8rem}.principle-grid{grid-template-columns:1fr;gap:2rem}.principle-grid h3{margin-block:1.2rem .8rem;max-width:none}.note-inner{grid-template-columns:1fr;gap:1.3rem}.note-band{padding-block:2.5rem}.service-jump{display:grid;gap:0;margin-top:2rem}.service-jump a{padding-block:1rem;border-bottom:1px solid var(--line)}.service-detail{grid-template-columns:1fr;gap:2.5rem;padding-block:3rem}.service-detail-title h2{max-width:none;font-size:3rem;margin-block:1.2rem}.service-detail-title .text-link{margin-top:1.3rem}.service-detail-copy p,.service-detail-copy li{font-size:.9rem}.faq-grid{grid-template-columns:1fr;gap:2rem}.faq-grid h2{font-size:3rem;margin-top:1.2rem}.faq summary{font-size:.92rem;gap:1.2rem}.faq details p{font-size:.88rem}.contact-layout{grid-template-columns:1fr;gap:3rem;padding-bottom:4rem}.contact-lead{font-size:1.4rem}.contact-note{margin-top:2rem;max-width:55ch}.form-row{grid-template-columns:1fr;gap:1.6rem}.contact-form .solid-button{width:100%}.not-found{min-height:0;grid-template-columns:1fr;gap:2rem;padding-block:3rem 4rem}.error-number{font-size:55vw;line-height:.8}.error-copy h1{font-size:3.5rem}.error-copy>p:not(.eyebrow){font-size:.95rem}}
