@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/dm-sans-regular.ttf) format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:500 700;font-display:swap;src:url(/assets/dm-sans-medium.ttf) format("truetype")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/playfair-regular.ttf) format("truetype")}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/playfair-italic.ttf) format("truetype")}
:root{--paper:#f8f5ef;--white:#fffdf8;--ink:#343c34;--muted:#65675b;--olive:#505d4b;--clay:#98664f;--line:#d7d7ca;--sage:#e5e8dc;--sand:#eee5d8;--serif:Playfair Display,Georgia,'Times New Roman',serif;--sans:DM Sans,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}img{max-width:100%;display:block}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--clay);outline-offset:6px}::selection{background:#dedec9}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1,h2{letter-spacing:-.045em;line-height:1.09}h1 em,h2 em{font-weight:400;color:var(--clay)}p{max-width:65ch}.section-wrap{width:min(1240px,calc(100% - 112px));margin-inline:auto}.site-header{width:min(1352px,calc(100% - 80px));min-height:116px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1.1}.brand>span{font-family:var(--serif);font-size:32px;letter-spacing:-1px}.brand-dot{color:var(--clay)}.brand small{font-size:10px;letter-spacing:.23em;margin-top:9px;font-weight:500}.site-header nav{display:flex;align-items:center;gap:32px}.site-header nav>a:not(.button){text-decoration:none;font-size:14px;padding-block:14px}.site-header nav>a:not(.button):hover{color:var(--clay)}.button{display:inline-flex;align-items:center;justify-content:center;gap:27px;background:var(--olive);color:var(--white);text-decoration:none;border:1px solid var(--olive);border-radius:3px;min-height:57px;padding:14px 24px;font-size:14px;font-weight:500;line-height:1.4;transition:background .2s,transform .2s}.button:hover{background:#394535;transform:translateY(-2px)}.button span{font-size:21px;font-weight:400}.button-small{min-height:45px;padding:10px 20px;gap:24px}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:80px;padding-block:65px 73px}.eyebrow{font-size:11px;font-weight:500;line-height:1.5;letter-spacing:.15em;text-transform:uppercase;margin-bottom:26px;color:var(--muted)}h1{font-size:clamp(55px,5.5vw,80px)}.hero-intro{max-width:440px;margin-top:28px;font-size:17px;line-height:1.8;color:var(--muted)}.hero .button{margin-top:29px}.hero-note{font-size:13px;color:var(--muted);margin-top:15px}.hero-portrait{width:100%;max-width:438px;justify-self:end;position:relative;padding-bottom:22px}.portrait-image{overflow:hidden;border-radius:210px 210px 5px 5px;background:var(--sand);aspect-ratio: .94}.portrait-image img{width:100%;height:100%;object-fit:cover;object-position:50% 48%}.hero-portrait figcaption{position:relative;margin:-3px 18px 0;padding:22px 16px 0;background:var(--paper);text-align:center;display:flex;flex-direction:column;font-size:12px;line-height:1.6}.portrait-name{font-family:var(--serif);font-size:25px;margin-bottom:4px}.portrait-name small{font-family:var(--sans);font-size:11px;letter-spacing:.02em;margin-left:4px}.portrait-method{color:var(--muted)}.intro-strip{background:var(--sage);border-block:1px solid #dadfcf;min-height:74px;display:flex;align-items:center;justify-content:center;gap:110px;padding:18px 32px;color:var(--olive);font-size:14px}.intro-strip span+span{position:relative}.intro-strip span+span:before{content:'';position:absolute;left:-55px;top:8px;width:1px;height:15px;background:#b1b8a5}h2{font-size:clamp(38px,4.1vw,60px)}.preview-contact{padding-block:100px}.preview-contact>p:not(.eyebrow){margin:24px 0}.text-link{display:inline-flex;gap:25px;align-items:center;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:6px;font-size:14px;font-weight:500}.text-link:hover{color:var(--clay)}.preview-contact>.text-link{margin-right:30px}.skip-link{position:fixed;top:-100px;left:20px;padding:12px 20px;background:var(--white);z-index:100}.skip-link:focus{top:12px}.menu-toggle{display:none}.menu-lines{width:21px;height:12px;border-block:1px solid currentColor}.menu-toggle[aria-expanded=true] .menu-lines{transform:rotate(-12deg)}
.section-space{padding-block:105px}.section-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:90px;align-items:end;margin-bottom:57px}.section-heading>p{color:var(--muted);padding-bottom:4px}.concerns-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 68px}.concerns-grid article{border-top:1px solid var(--line);padding:29px 0;display:grid;grid-template-columns:28px 1fr;gap:15px}.topic-number{font-size:12px;color:var(--clay);padding-top:6px}.concerns h3{font-size:25px;line-height:1.3;letter-spacing:-.025em}.concerns article p{margin-top:11px;color:var(--muted);font-size:16px;max-width:39ch}.section-footnote{font-size:14px;color:var(--muted);margin-top:19px}.about-section{background:var(--sage);padding-block:100px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:130px}.about-heading{display:flex;flex-direction:column;align-items:flex-start}.about-signature{font-family:var(--serif);font-size:29px;margin-top:48px}.about-signature>span{display:block;font-family:var(--sans);font-size:13px;color:var(--muted);margin-top:3px}.about-copy .lead{font-family:var(--serif);font-size:28px;line-height:1.5;color:var(--ink);letter-spacing:-.02em}.about-copy>p+p{margin-top:23px;color:#515b4e}.about-detail{margin-top:27px}.about-detail summary{font-size:14px;font-weight:500}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:24px;line-height:1.6}summary::-webkit-details-marker{display:none}summary>span{font-family:var(--sans);font-size:25px;font-weight:400;line-height:1;flex-shrink:0;transition:transform .2s}details[open] summary>span{transform:rotate(45deg)}details[open] summary{padding-bottom:12px}.detail-content{padding:0 25px 24px 0;color:var(--muted)}.timeline{margin:0}.timeline>div{display:grid;grid-template-columns:100px 1fr;gap:13px;padding-block:12px;font-size:14px}.timeline dt{color:var(--ink)}dd{margin:0}.detail-content>p{font-size:16px}.timeline+p{font-size:14px;margin-top:14px}.approach-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:90px}.approach-grid>div>p{color:var(--muted)}.approach-grid p+p{margin-top:19px}.approach .text-link{margin-top:25px}.principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;padding-top:31px;border-top:1px solid var(--line);gap:65px}.principles>div>span{font-size:12px;color:var(--clay)}.principles h3{font-size:27px;letter-spacing:-.025em;line-height:1.35;margin:16px 0 13px}.principles p{color:var(--muted)}.process-section{background:var(--sand)}.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:65px;margin:0}.steps>li{display:flex;flex-direction:column;gap:21px}.step-number{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border:1px solid #b3aa9b;border-radius:50%;font-family:var(--serif);font-size:21px}.steps h3{font-size:26px;line-height:1.3;letter-spacing:-.025em;margin-bottom:15px}.steps p{color:var(--muted)}.practical-info{display:grid;grid-template-columns:1fr 1fr;gap:95px;border-top:1px solid #cec5b7;margin-top:62px;padding-top:45px}.practical-info h3{font-size:29px;margin-bottom:14px;letter-spacing:-.02em}.practical-info .eyebrow{margin-bottom:19px}.practical-info p:not(.eyebrow){color:var(--muted);max-width:40ch}.practical-info .text-link{margin-top:21px}.practical-list{margin:0}.practical-list>div{display:grid;grid-template-columns:104px 1fr;gap:15px;font-size:14px;margin-bottom:17px}.practical-list dt{font-weight:500}.practical-list dd{color:var(--muted)}.faq-section{display:grid;grid-template-columns:1fr 1.25fr;gap:90px}.faq-section h2{font-size:clamp(36px,3.3vw,49px)}.faq-list summary{font-size:16px;font-weight:500;padding-block:23px}.contact-section{background:var(--sage);padding-block:97px}.contact-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:110px}.contact-copy h2{font-size:clamp(38px,3.8vw,55px)}.contact-copy>p:not(.eyebrow){max-width:42ch;color:#515b4e;margin-top:25px}.contact-phone{font-family:var(--serif);font-size:31px;letter-spacing:-.025em;text-decoration:none;display:block;margin-top:36px}.contact-email{display:inline-block;text-decoration:none;border-bottom:1px solid #a7af9a;overflow-wrap:anywhere;margin-top:6px}.contact-email:hover,.contact-phone:hover{color:var(--clay)}address{font-style:normal;margin-top:31px;font-size:15px}.contact-copy .text-link{margin-top:17px;font-size:13px}.contact-form-wrap{background:var(--paper);padding:33px 36px 36px;border-radius:4px}.contact-form-wrap h3{font-size:29px;letter-spacing:-.025em}.form-intro{font-size:14px;color:var(--muted);margin-top:7px;margin-bottom:24px}form label{font-size:14px;display:block;margin:17px 0 7px}input,textarea{display:block;width:100%;background:#fffdf9;color:var(--ink);border:1px solid #c6cabb;border-radius:2px;min-height:45px;padding:11px 12px;font-size:16px;line-height:1.5}textarea{resize:vertical;min-height:118px}.form-note{font-size:12px;color:var(--muted);line-height:1.65;margin-top:17px}.contact-form-wrap .button{margin-top:21px;width:100%;cursor:pointer;gap:20px;min-height:53px}.form-status{font-size:14px;color:var(--olive);margin-top:18px}.form-status:empty{display:none}.site-footer{padding-block:46px 23px}.footer-main{display:flex;gap:50px;align-items:center;padding-bottom:35px}.footer-main>p{color:var(--muted);font-size:13px;margin-left:auto}.back-top{border:1px solid var(--line);border-radius:50%;width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:23px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-top:20px;font-size:12px;color:var(--muted)}.footer-bottom nav{display:flex;gap:25px}.footer-bottom a{text-decoration:none}.footer-bottom a:hover{text-decoration:underline}.legal-main{max-width:820px;padding-block:75px 100px}.legal-main h1{font-size:58px;margin-bottom:36px}.legal-main h2{font-size:29px;letter-spacing:-.02em;margin:35px 0 16px}.legal-main p+p{margin-top:17px}.legal-main ul{padding-left:20px}.legal-main a{overflow-wrap:anywhere}.legal-note{border-left:2px solid var(--clay);padding:12px 20px;background:var(--sand);font-size:14px;margin-bottom:35px}.legal-back{margin-top:40px}.brand small{font-size:12px;letter-spacing:.16em}.eyebrow{font-size:12px;letter-spacing:.12em}.hero-portrait figcaption{font-size:14px}.portrait-name small{font-size:12px}.hero-note{font-size:14px}.portrait-name{line-height:1.5}.intro-strip{font-size:14px}h1,h2{letter-spacing:-.045em;line-height:1.13}h1{font-size:clamp(55px,5.25vw,76px)}.hero{gap:65px}.hero .eyebrow{font-size:12px;letter-spacing:.1em}.hero-copy,.about-copy,.contact-copy,.contact-form-wrap,.faq-list{min-width:0}.contact-copy .text-link{font-size:14px}.form-note{font-size:13px}.about-signature>span{font-size:14px}.footer-main>p{font-size:14px}.practical-list{font-size:16px}
@media(min-width:1500px){.hero{padding-block:88px}.hero-portrait{max-width:465px}}
@media(max-width:1100px){.section-wrap{width:calc(100% - 72px)}.site-header{width:calc(100% - 56px)}.site-header nav{gap:20px}.hero{gap:40px}.hero h1{font-size:clamp(47px,5.6vw,65px)}.hero-intro{font-size:16px}.intro-strip{gap:60px}.intro-strip span+span:before{left:-30px}.hero-portrait figcaption{margin-inline:0}.section-heading,.approach-grid{gap:55px}.about-grid{gap:70px}.contact-grid{gap:50px}.concerns-grid{gap:0 42px}.faq-section{gap:50px}.steps,.principles{gap:34px}.contact-form-wrap{padding:28px}.practical-info{gap:60px}.site-header .button-small{padding:10px 16px;gap:15px}}
@media(max-width:840px){.site-header nav{gap:15px}.site-header .button-small{font-size:13px;padding:10px 12px;gap:9px}.site-header nav>a:not(.button){font-size:13px}.brand>span{font-size:28px}.contact-grid{gap:35px}.contact-form-wrap{padding:24px}}
@media(max-width:760px){html{scroll-padding-top:24px}.section-wrap{width:calc(100% - 44px)}.site-header{width:calc(100% - 44px);min-height:91px;position:relative;flex-wrap:wrap;gap:0}.brand>span{font-size:28px}.brand small{font-size:12px;letter-spacing:.12em}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;background:none;font-size:14px;padding:12px 0 12px 14px}.site-header nav{display:none;flex-direction:column;align-items:stretch;width:100%;padding:18px 0 25px;gap:5px}.site-header nav.open{display:flex}.site-header nav>a:not(.button){padding:11px 0;font-size:16px}.site-header nav>.button{align-self:flex-start;margin-top:8px;font-size:14px;padding:12px 20px}.hero{grid-template-columns:1fr;gap:42px;padding-block:43px 34px}.eyebrow{font-size:12px;letter-spacing:.1em;margin-bottom:21px}.hero .eyebrow{font-size:11px;letter-spacing:.07em}.hero h1{font-size:clamp(44px,10.7vw,72px)}.hero-intro{max-width:480px;margin-top:24px;line-height:1.8}.hero .button{margin-top:23px;min-height:55px;font-size:14px;padding-inline:19px;gap:16px}.hero-note{font-size:14px}.hero-portrait{justify-self:center;max-width:370px;padding-bottom:0;width:92%}.portrait-image{aspect-ratio:1.07;border-radius:180px 180px 4px 4px}.portrait-image img{object-position:center 43%}.hero-portrait figcaption{padding-top:18px;margin-inline:6px;font-size:13px}.intro-strip{gap:4px;flex-direction:column;text-align:center;font-size:13px;min-height:82px;padding-inline:15px}.intro-strip span+span:before{display:none}h2{font-size:clamp(36px,8.8vw,50px)}.section-space{padding-block:66px}.section-heading,.approach-grid{grid-template-columns:1fr;gap:27px;margin-bottom:33px}.concerns-grid{grid-template-columns:1fr}.concerns-grid article{padding-block:25px;gap:12px;grid-template-columns:24px 1fr}.concerns h3{font-size:24px}.concerns article p{font-size:16px}.section-footnote{margin-top:9px;font-size:14px}.about-section{padding-block:66px}.about-grid{grid-template-columns:1fr;gap:32px}.about-signature{font-size:26px;margin-top:26px}.about-copy .lead{font-size:26px}.about-copy>p+p{margin-top:20px}.principles{grid-template-columns:1fr;gap:27px;margin-top:35px;padding-top:28px}.principles>div{padding-left:33px;position:relative}.principles>div>span{position:absolute;left:0;top:3px}.principles h3{font-size:25px;margin:0 0 9px}.approach-grid{margin-bottom:0}.steps{grid-template-columns:1fr;gap:30px}.steps>li{flex-direction:row;gap:20px}.step-number{flex-shrink:0;width:38px;height:38px}.steps h3{font-size:25px;margin-bottom:11px}.practical-info{grid-template-columns:1fr;gap:38px;margin-top:43px;padding-top:34px}.practical-info h3{font-size:27px}.practical-list>div{grid-template-columns:92px 1fr;font-size:15px}.faq-section{grid-template-columns:1fr;gap:32px}.faq-section h2{font-size:40px}.faq-list summary{padding-block:21px;font-size:16px;gap:20px}.contact-section{padding-block:66px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-copy h2{font-size:40px}.contact-phone{font-size:29px}.contact-email{font-size:15px}.contact-form-wrap{padding:27px 22px}.contact-form-wrap h3{font-size:27px}.contact-form-wrap .button{font-size:13px;padding-inline:13px;gap:12px}.site-footer{padding-block:36px 22px}.footer-main{flex-wrap:wrap;gap:25px;position:relative;padding-bottom:28px}.footer-main>p{margin:0;width:100%;font-size:13px}.back-top{position:absolute;right:0;top:4px}.footer-bottom{align-items:flex-start;gap:14px;font-size:12px;flex-wrap:wrap}.footer-bottom nav{gap:21px}.legal-main{padding-block:50px 70px}.legal-main h1{font-size:43px}.timeline>div{grid-template-columns:85px 1fr;gap:10px}.legal-main h2{font-size:27px}.button{max-width:100%}.detail-content{padding-right:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

button:disabled{opacity:.65;cursor:not-allowed}.legal-main li{margin-bottom:10px}

@media(max-width:760px){html:not(.js-ready) .site-header nav{display:flex}html:not(.js-ready) .menu-toggle{display:none}}
