@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Italiana&display=swap');
:root{--paper:#f6f3eb;--ink:#25332d;--gold:#93621f;--muted:#666b63;--line:#d6d6c9;--serif:'Italiana',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b18549;outline-offset:5px}.skip{position:fixed;top:-100px;left:20px;z-index:99;background:white;padding:10px}.skip:focus{top:10px}.site-header{height:104px;padding:0 5.5%;display:flex;align-items:center;gap:36px;background:var(--paper);position:relative;z-index:20;border-bottom:1px solid #dedbcf}.brand{display:flex;align-items:center;gap:16px;line-height:1.3;flex-shrink:0;letter-spacing:3px;font-size:17px}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:7px}.monogram{font-family:Georgia,serif;font-size:31px;letter-spacing:-6px;color:var(--gold);padding-right:10px;border-right:1px solid #b9b29d;line-height:1.8}.site-header nav{display:flex;margin-left:auto;gap:28px;font-size:14px}.site-header nav a{position:relative;white-space:nowrap}.site-header nav a:after{content:'';height:1px;background:var(--gold);position:absolute;bottom:-8px;left:0;width:0;transition:width .25s}.site-header nav a:hover:after{width:100%}.button{border:1px solid var(--gold);background:var(--gold);color:white;display:inline-flex;align-items:center;justify-content:center;padding:15px 26px;border-radius:3px;font-size:14px;line-height:1.5;transition:background .2s,transform .2s;text-align:center}.button:hover{background:#775018;transform:translateY(-2px)}.button.small{padding:12px 20px;font-size:13px}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button.outline{background:transparent;color:var(--ink);border-color:#9a9e8f}.menu-toggle{display:none;background:none;border:0;width:40px;height:40px}.menu-toggle span{display:block;height:1px;background:var(--ink);margin:7px 0}.mobile-nav{padding:25px 7%;background:var(--paper);position:absolute;width:100%;z-index:19;box-shadow:0 12px 20px #0001}.mobile-nav a{display:block;padding:12px 0}.hero{min-height:720px;height:calc(100svh - 104px);max-height:980px;position:relative;overflow:hidden;background:#dfd7c5}.hero-image{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(248,245,237,.98) 0%,rgba(248,245,237,.9) 26%,rgba(248,245,237,.25) 55%,rgba(20,25,16,.04) 100%),url('assets/hero.webp');background-size:cover;background-position:center}.hero-content{position:relative;padding:64px 0 100px 6%;max-width:750px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:2.6px;margin:0 0 28px;line-height:1.7;color:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1{font-size:clamp(65px,6.8vw,105px);line-height:.99;letter-spacing:-3px;margin-bottom:28px;color:#1b2822}h1 em,h2 em,h3 em{font-family:Georgia,serif;font-weight:400;font-style:italic}h1 em{font-size:.94em}h2{font-size:clamp(38px,4vw,61px);line-height:1.12;letter-spacing:-1.4px;margin-bottom:26px}h2 em{font-size:.86em}.hero-copy{font-size:16px;max-width:390px;line-height:1.7;margin-bottom:28px}.hero-note{position:absolute;right:6%;bottom:145px;color:white;padding:24px 30px;border:1px solid #fff8;background:#25332d55;backdrop-filter:blur(10px);min-width:260px}.hero-note p{font-family:Georgia,serif;font-size:23px;line-height:1.45;margin:0}.note-line{display:block;width:36px;height:1px;background:#eac38a;margin-bottom:14px}.hero-bottom{position:absolute;bottom:0;left:6%;right:6%;padding:24px 0;display:flex;justify-content:space-between;border-top:1px solid #ffffff66;font-size:10px;font-weight:600;letter-spacing:1.5px;color:#fff;text-shadow:0 1px 8px #0008}.hero-bottom span:first-child{color:var(--ink);text-shadow:none}.section{padding:100px 6%}.intro{text-align:center;max-width:1180px;margin:auto}.intro>p:not(.eyebrow){max-width:690px;margin:0 auto 35px;color:var(--muted)}.intro-points{display:flex;justify-content:center;gap:35px;font-size:13px}.intro-points span:before{content:'·';color:var(--gold);font-size:20px;margin-right:12px}footer{background:#202c26;color:#f2eee2;padding:55px 6% 25px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px}footer .monogram{color:#d7b878}footer>p{font-family:Georgia,serif;font-size:21px}footer>div{display:flex;flex-direction:column;align-items:flex-start;font-size:13px;gap:6px}footer button{background:none;border:0;padding:0;color:inherit}footer>small{grid-column:1/-1;border-top:1px solid #ffffff25;padding-top:22px;color:#bec5bc;font-size:11px}dialog{border:0;background:var(--paper);color:var(--ink);padding:0;max-width:780px;width:calc(100% - 32px);max-height:90svh;border-radius:4px}dialog::backdrop{background:#13241ecc;backdrop-filter:blur(5px)}.close-dialog{position:absolute;top:12px;right:16px;border:0;background:var(--paper);width:40px;height:40px;font-size:28px;z-index:2;border-radius:50%}#dialog-content{padding:46px}#dialog-content h2{font-size:44px}.dialog-image{width:calc(100% + 92px);margin:-46px -46px 35px;height:240px;object-fit:cover}.dialog-tags{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.dialog-tags span{padding:7px 12px;border:1px solid var(--line);font-size:13px}body:has(dialog[open]){overflow:hidden}
@media(min-width:1600px){.hero-content{padding-top:85px}}@media(max-width:1100px){.site-header{gap:20px;padding:0 4%}.site-header nav{gap:18px;font-size:12px}.brand{font-size:15px;gap:12px}.hero-content{max-width:660px}.hero-note{right:4%;min-width:220px}.hero-note p{font-size:20px}}@media(max-width:850px){.site-header{height:84px}.site-header nav,.site-header>.button{display:none}.menu-toggle{display:block;margin-left:auto}.hero{height:auto;min-height:760px}.hero-content{padding:52px 7% 280px;max-width:600px}.hero-image{background-image:linear-gradient(180deg,#f6f3eb 0%,#f6f3ebf0 34%,#f6f3eb66 64%,#16271e33 100%),url('assets/hero.webp');background-position:63% center}h1{font-size:clamp(60px,10vw,85px)}.hero-note{display:none}.hero-bottom{left:7%;right:7%;display:block}.hero-bottom span:first-child{color:white}.hero-bottom span:last-child{display:none}.section{padding:70px 7%}.intro-points{gap:12px;flex-direction:column}footer{grid-template-columns:1fr 1fr}footer>div{grid-column:1/-1}}@media(max-width:480px){.hero-content{padding-top:42px}.eyebrow{font-size:10px;letter-spacing:1.8px}.hero-copy{font-size:15px}.hero .button{font-size:12px;padding:15px 18px}h1{letter-spacing:-2px}.hero{min-height:820px}footer{grid-template-columns:1fr}footer>p{font-size:20px}#dialog-content{padding:30px}.dialog-image{width:calc(100% + 60px);margin:-30px -30px 25px}.hero-bottom{font-size:9px}h2{font-size:38px}}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:44px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:340px;color:var(--muted);font-size:14px;margin-bottom:4px}.expertise{background:#eeeee4;border-top:1px solid var(--line)}.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 26px}.sector-card{padding:0;background:none;border:0;color:var(--ink);text-align:left;min-width:0}.sector-photo{position:relative;aspect-ratio:1.45;overflow:hidden;background:#b6b7a4}.sector-photo img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.sector-card:hover img{transform:scale(1.045)}.sector-photo>span{position:absolute;left:15px;top:15px;background:#f6f3ebec;padding:3px 10px;font-size:11px;color:#5b614f}.sector-caption{padding:20px 0 10px}.sector-caption h3{font-size:29px;line-height:1.12;margin-bottom:9px;min-height:33px}.sector-caption p{font-size:13px;color:#687061;margin-bottom:13px}.text-link{display:inline-block;font-size:13px;border-bottom:1px solid #a77c42;padding-bottom:4px;font-weight:500}.sector-card:hover .text-link{color:var(--gold)}.process{background:#293a31;color:#f6f3eb}.process .eyebrow{color:#d3b17c}.process .section-heading>p{color:#c4cbbf}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:64px}.steps article{border-top:1px solid #ffffff40;padding-top:20px}.steps article>span{font-family:var(--serif);font-size:45px;color:#d0b381}.steps h3{font-size:27px;margin:25px 0 15px}.steps p{font-size:14px;color:#ccd3c8;line-height:1.8}.process-bottom{border-top:1px solid #ffffff30;margin-top:40px;padding-top:30px;display:flex;align-items:center;gap:30px}.process-bottom p{font-family:Georgia,serif;font-size:20px;max-width:170px;margin:0}.process-bottom>span{color:#bcc9bc;font-size:12px;max-width:320px}.process-bottom .button{margin-left:auto;flex-shrink:0}.fees{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%;background:#f7f3ea}.fees>div>p:not(.eyebrow){color:var(--muted);max-width:470px}.fees .text-link{margin-top:18px}.fee-card{padding:40px;border:1px solid #c7c7b7;background:#efeee4}.fee-card h3{font-size:34px;line-height:1.15}.fee-card>.eyebrow{display:block;font-size:10px;margin-bottom:20px}.fee-card ul{list-style:none;padding:0}.fee-card li{display:flex;gap:20px;border-top:1px solid #cecfbf;padding-top:22px;margin-top:20px}.fee-card li>span{color:var(--gold);font-family:Georgia,serif;font-size:20px}.fee-card strong{font-size:14px;font-weight:500}.fee-card li p{font-size:13px;margin:7px 0 0;color:var(--muted)}.fee-card>small{font-size:11px;color:#707468;display:block;margin-top:25px}.team{border-top:1px solid var(--line)}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.team-grid article{display:flex;gap:28px;border-top:1px solid var(--line);padding-top:32px}.team-initial{width:95px;height:120px;background:#e8e7db;color:#7e805f;font-family:var(--serif);font-size:39px;display:flex;justify-content:center;align-items:center;flex-shrink:0}.team-grid .eyebrow{font-size:9px;letter-spacing:1.6px;display:block;margin-bottom:10px}.team-grid h3{font-size:30px;margin-bottom:10px}.team-grid p{font-size:14px;color:var(--muted);max-width:360px}.team-grid small,.team-note{font-size:11px;color:#73786b}.team-note{margin:35px 0 0}.faq{display:grid;grid-template-columns:1fr 1.6fr;gap:8%;background:#eceee5}.questions details{border-bottom:1px solid #c6cbbc}.questions details:first-child{border-top:1px solid #c6cbbc}.questions summary{cursor:pointer;padding:23px 28px 23px 0;font-size:15px;list-style:none;position:relative}.questions summary::-webkit-details-marker{display:none}.questions summary:after{content:'+';position:absolute;right:5px;font-size:22px;top:15px;font-weight:400;color:var(--gold)}.questions details[open] summary:after{content:'−'}.questions p{font-size:14px;color:#636d5f;padding:0 35px 15px 0}.contact{display:grid;grid-template-columns:1fr 1.15fr;gap:8%}.contact>div>p:not(.eyebrow){font-size:14px;color:var(--muted)}.contact-phone{font-family:Georgia,serif;font-size:30px;display:block;margin:32px 0 3px}.contact-email{font-size:15px;border-bottom:1px solid var(--gold)}.contact-location{margin:28px 0 0;font-size:12px!important;line-height:1.8}form label{display:block;font-size:12px;font-weight:500;margin-bottom:20px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #b8beb0;padding:11px 0;border-radius:0;background:transparent;color:var(--ink);font-size:14px;resize:vertical}select{padding-right:20px}.form-top{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-note{font-size:11px;color:#6c7567;margin:3px 0 20px}.contact form .button{width:100%}#form-status{font-size:13px;margin:16px 0 0;color:#4c693a}#email-fallback{margin-top:15px}.dialog-list{padding-left:20px;font-size:15px}.dialog-list li{margin:12px 0}.dialog-small{font-size:12px;color:var(--muted);margin:25px 0}.section[id]{scroll-margin-top:10px}
@media(max-width:1050px){.section-heading{gap:25px}.section-heading>p{max-width:280px}.sector-caption h3{font-size:26px}.steps{gap:20px}.steps h3{font-size:23px}.fee-card{padding:30px}.fees{gap:5%}.team-initial{width:65px;height:95px;font-size:28px}.team-grid article{gap:18px}.team-grid h3{font-size:25px}}
@media(max-width:760px){.section-heading{display:block}.section-heading>p{max-width:500px;margin:24px 0 0}.sector-grid{grid-template-columns:1fr 1fr;gap:25px 20px}.sector-caption h3{font-size:25px}.steps{grid-template-columns:1fr 1fr;gap:25px;margin-top:40px}.process-bottom{flex-wrap:wrap;gap:18px}.process-bottom .button{margin:5px 0 0}.fees,.faq,.contact{grid-template-columns:1fr;gap:38px}.team-grid{grid-template-columns:1fr;gap:32px}.team-grid p{max-width:initial}.team-initial{width:85px;height:105px;font-size:32px}.team-grid h3{font-size:29px}.team-grid .eyebrow{font-size:10px}.faq h2{margin-bottom:15px}}
@media(max-width:480px){.sector-grid{grid-template-columns:1fr;gap:28px}.sector-photo{aspect-ratio:1.45}.sector-caption{padding-top:16px}.sector-caption h3{font-size:29px}.sector-caption p{font-size:13px}.steps{grid-template-columns:1fr;gap:15px}.steps article{display:grid;grid-template-columns:40px 1fr;gap:0 20px}.steps article>span{grid-row:1/3;font-size:32px}.steps h3{margin:3px 0 12px;font-size:29px}.steps p{grid-column:2}.fee-card{padding:28px 22px}.fee-card h3{font-size:31px}.team-grid article{gap:18px}.team-initial{width:58px;height:78px;font-size:25px}.team-grid h3{font-size:27px}.form-top{grid-template-columns:1fr;gap:0}.contact-phone{font-size:28px}.questions summary{font-size:14px}.process-bottom p{max-width:none}.process-bottom>span{max-width:none}.hero .eyebrow{max-width:270px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Keep the location strip in document flow, including at short viewport heights. */
.hero{display:flex;flex-direction:column;height:auto;min-height:max(720px,calc(100svh - 104px));max-height:none}
.hero-content{flex-shrink:0}
.hero-bottom{position:relative;inset:auto;margin:auto 6% 0;gap:24px;flex-shrink:0}
.team-collective{display:grid;grid-template-columns:1fr 1.4fr;gap:8%;border-top:1px solid var(--line);padding-top:35px}
.team-collective h3{font-size:35px;line-height:1.2}.team-collective>div>p:not(.eyebrow){color:var(--muted);font-size:16px}.team-collective .eyebrow{margin-bottom:18px}
.testimonials{background:#eeeee4;border-top:1px solid var(--line)}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.testimonials-grid figure{margin:0;padding:26px 0;border-top:1px solid #b8bcae}.testimonials-grid blockquote{font-family:Georgia,serif;font-size:19px;line-height:1.7;margin:22px 0}.testimonials-grid figcaption{font-size:12px;color:#636d5f}
@media(max-width:850px){.hero{min-height:760px}.hero-bottom{margin:0 7%}.team-collective{grid-template-columns:1fr;gap:18px}.testimonials-grid{grid-template-columns:1fr}.testimonials-grid blockquote{max-width:650px}}
@media(max-width:480px){.hero{min-height:820px}.hero-bottom{margin-top:auto}.team-collective h3{font-size:30px}}
