@font-face{font-family:Capital Serif;src:url('assets/serif.otf') format('opentype');font-display:swap}@font-face{font-family:Capital Sans;src:url('assets/sans.otf') format('opentype');font-display:swap}
:root{--dark:#181a18;--charcoal:#252824;--gold:#d4b27d;--gold-dark:#8b6532;--ivory:#f7f4ed;--sand:#ede8de;--ink:#242723;--muted:#6d6b64;--line:#c9b28f;--serif:'Capital Serif',Georgia,serif;--sans:'Capital Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--ivory);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--gold-dark);outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.04;letter-spacing:-.035em}h2{font-size:clamp(38px,4.6vw,62px)}h3{font-size:clamp(28px,3vw,38px)}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.section{padding-block:90px}.eyebrow{font-size:12px;line-height:1.4;text-transform:uppercase;letter-spacing:.18em;color:var(--gold-dark);margin-bottom:20px}.skip-link{position:fixed;left:12px;top:10px;transform:translateY(-180%);z-index:100;background:var(--ivory);padding:10px 20px}.skip-link:focus{transform:none}
.site-header{position:sticky;top:0;z-index:20;background:#171917;border-bottom:1px solid #8f7953}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;height:108px}.brand{display:block;flex-shrink:0}.logo-crop{display:block;position:relative;width:254px;height:105px;overflow:hidden;mix-blend-mode:screen}.logo-crop img{position:absolute;width:508px;height:auto;max-width:none;left:-10px;top:-15px}.site-header nav{display:flex;align-items:center;gap:30px;font-size:13px;color:#f4f1e9}.site-header nav>a:not(.button){position:relative;padding-block:12px;white-space:nowrap}.site-header nav>a:not(.button):after{content:'';position:absolute;left:0;bottom:4px;width:0;height:1px;background:var(--gold);transition:width .2s}.site-header nav>a:hover:after{width:100%}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;min-height:54px;padding:14px 24px;font-size:14px;line-height:1.35;font-family:var(--sans);letter-spacing:.015em;transition:background .2s,color .2s,border-color .2s;border:1px solid transparent}.button span{font-size:19px;line-height:1}.button-outline{color:var(--gold);border-color:var(--gold);min-height:44px;padding:10px 20px}.button-outline:hover{background:var(--gold);color:var(--dark)}.button-gold{background:var(--gold);color:#181a18}.button-gold:hover{background:#e6c795}.button-dark{background:var(--dark);color:var(--ivory)}.button-dark:hover{background:#3d413b}.menu-toggle{display:none}
.hero{position:relative;isolation:isolate;background:#171917;color:var(--ivory);overflow:hidden}.hero-art{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,rgba(20,23,21,.25),transparent 60%),url('assets/hero.png');background-size:cover;background-position:center 46%}.hero-inner{padding-top:74px}.hero-copy{position:relative;padding-bottom:78px}.hero .eyebrow{color:var(--gold);margin-bottom:28px}.hero h1{font-size:clamp(60px,6.5vw,96px);line-height:.99;max-width:900px;letter-spacing:-.035em}.desktop-break{display:none}.hero-description{font-size:20px;line-height:1.5;color:#e3e2da;margin-top:30px}.mobile-break{display:none}.hero-actions{display:flex;align-items:center;gap:38px;margin-top:36px}.text-link{display:inline-flex;align-items:center;gap:24px;padding:6px 0;border:none;border-bottom:1px solid var(--gold-dark);background:none;font-size:14px;line-height:1.6;color:var(--ink);transition:color .2s,gap .2s}.text-link:hover{color:var(--gold-dark);gap:30px}.text-link span{font-size:20px;line-height:1}.text-link.light{border-color:var(--gold);color:var(--ivory)}.text-link.light:hover{color:var(--gold)}.hero-baseline{border-top:1px solid var(--gold);padding-block:19px 22px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--gold);letter-spacing:.03em}.hero-baseline>a{color:#cecec4;display:flex;gap:15px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}.section-heading>p{font-size:15px;line-height:1.5;color:var(--muted)}.services{display:grid;grid-template-columns:repeat(3,1fr);margin-top:55px}.service{padding-inline:40px;border-left:1px solid #ccb99a;display:flex;align-items:flex-start;flex-direction:column}.service:first-child{padding-left:0;border-left:0}.service:last-child{padding-right:0}.service-number{font-size:17px;color:var(--gold-dark);line-height:1.2;margin-bottom:17px}.service h3{margin-bottom:19px;white-space:nowrap}.service>p{font-size:18px;line-height:1.5;color:#56584f;margin-bottom:28px}.service .text-link{margin-top:auto}
.firm-section{padding-block:75px;border-top:1px solid #d9d2c6;border-bottom:1px solid #d9d2c6;background:#f0ece3}.firm-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.firm-copy{max-width:510px;padding-top:7px}.firm-copy .lead{font-size:24px;font-family:var(--serif);line-height:1.3;margin-bottom:21px}.firm-copy>p:not(.lead){font-size:16px;color:#5e6057}.placeholder-note{font-size:13px!important;color:#747168!important;margin-top:20px}.firm-copy .text-link{margin-top:26px}.people-section{background:var(--ivory)}.people-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-top:43px}.person{display:flex;gap:29px;align-items:center}.portrait{border:1px solid #baa17d;background:linear-gradient(135deg,#e0ddd4,#eae6dc);width:190px;min-width:155px;aspect-ratio:4/5;display:flex;flex-direction:column;justify-content:center;align-items:center;flex-shrink:0;color:#706554}.initials{font-family:var(--serif);font-size:63px;line-height:1}.portrait-rule{height:1px;width:37px;background:#b79f77;margin-block:20px 16px}.portrait-label{font-size:11px;letter-spacing:.06em;color:#756e61}.person-copy h3{font-size:29px;letter-spacing:-.025em;line-height:1.15}.person-role{font-size:16px;margin-top:8px}.bio-placeholder{font-size:14px;color:#78776d;margin-top:23px}.person .text-link{margin-top:20px;font-size:13px}.contact-section{background:var(--charcoal);color:var(--ivory);padding-top:82px;padding-bottom:74px}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px}.contact-section .eyebrow{color:var(--gold);margin-bottom:18px}.contact-section h2{font-size:clamp(48px,5.3vw,72px)}.contact-intro{color:#cecec3;font-size:17px;margin-top:22px}.contact-actions{display:flex;align-items:center;gap:28px;margin-top:28px}.contact-details{padding-left:64px;border-left:1px solid #998464;display:grid;gap:32px}.contact-details .eyebrow{font-size:11px;margin-bottom:10px}address{font-style:normal;font-size:17px;line-height:1.65;color:#e0e0d6}.contact-details .text-link{font-size:12px;margin-top:12px}.contact-phone{display:block;font-size:24px;line-height:1.6}.contact-email{font-size:16px;overflow-wrap:anywhere;border-bottom:1px solid transparent}.contact-email:hover{border-color:var(--gold)}.postal{font-size:13px;color:#aaa99d}.site-footer{background:var(--charcoal);color:#e9e7dd}.footer-main{border-top:1px solid #998464;display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:18px}.footer-main>.brand{transform:scale(.85);transform-origin:left center;width:224px}.footer-main>span{font-size:13px;color:#bcbdaf}.back-top{font-size:12px;display:flex;gap:20px}.footer-bottom{padding-block:19px 24px;border-top:1px solid #44483e;display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.04em;color:#b2b4a8}.review-note{color:#b5aa91}
dialog{width:min(630px,calc(100% - 40px));max-height:calc(100dvh - 48px);padding:0;border:1px solid var(--line);background:var(--ivory);color:var(--ink);box-shadow:0 30px 120px #0006}dialog::backdrop{background:#101510b3;backdrop-filter:blur(6px)}.dialog-inner{position:relative;padding:55px 48px 48px}.dialog-close{position:absolute;right:15px;top:9px;font-size:32px;line-height:1;background:none;border:none;width:40px;height:40px;color:#666a5e}.dialog-inner h2{font-size:46px;margin-bottom:25px}.dialog-inner>p:not(.eyebrow){margin-bottom:18px;color:#5a5f53}.dialog-lead{font-size:21px;color:var(--ink)!important}.dialog-inner>.button{margin-top:14px}
@media(min-width:1450px){.hero-inner{padding-top:95px}.hero-copy{padding-bottom:110px}.hero-art{background-position:center 49%}}
@media(max-width:1180px){.wrap{width:calc(100% - 80px)}.site-header nav{gap:22px}.logo-crop{width:225px;height:93px}.logo-crop img{width:450px;left:-9px;top:-13.5px}.header-inner{height:96px}.site-header nav{font-size:12px}.site-header .button-outline{gap:16px}.hero h1{font-size:clamp(64px,7vw,87px)}.hero-art{background-position:62% center}.services .service{padding-inline:26px}.services .service:first-child{padding-left:0}.service h3{font-size:32px}.people-grid{gap:35px}.person{gap:22px}.portrait{width:156px;min-width:156px}.person-copy h3{font-size:26px}.contact-grid{gap:58px}.contact-details{padding-left:45px}.firm-grid{gap:65px}}
@media(max-width:920px){.wrap{width:calc(100% - 56px)}.section{padding-block:65px}.header-inner{height:88px}.logo-crop{width:210px;height:87px}.logo-crop img{width:420px;left:-8.4px;top:-12.6px}.menu-toggle{display:flex;align-items:center;gap:15px;background:none;border:1px solid #867552;padding:11px 14px;color:var(--gold);font-size:13px}.menu-icon{display:block;width:19px;height:10px;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold)}.site-header nav{display:none;position:absolute;top:88px;left:0;right:0;flex-direction:column;align-items:stretch;gap:8px;padding:22px 28px 28px;background:var(--dark);border-bottom:1px solid var(--gold)}.site-header nav.open{display:flex}.site-header nav>a{padding:14px 0!important;font-size:16px}.site-header nav>a.button{padding:16px!important;align-self:flex-start;margin-top:10px}.hero-inner{padding-top:67px}.hero h1{font-size:73px;max-width:700px}.hero-art{opacity:.75;background-position:60% center}.hero-copy{padding-bottom:70px}.hero-description{font-size:19px}.hero-actions{gap:25px}.service h3{font-size:28px}.service>p{font-size:16px}.service{padding-inline:22px!important}.service:first-child{padding-left:0!important}.service:last-child{padding-right:0!important}.firm-grid{gap:45px;grid-template-columns:.9fr 1fr}.people-grid{gap:45px}.person{flex-direction:column;align-items:flex-start;gap:24px}.portrait{width:100%;max-width:100%;aspect-ratio:5/4}.person-copy h3{font-size:31px}.initials{font-size:76px}.contact-grid{gap:45px;grid-template-columns:1fr 1fr}.contact-details{padding-left:32px}.contact-actions{align-items:flex-start;flex-direction:column;gap:18px}.footer-main>span{max-width:210px}.footer-main{gap:20px}.footer-bottom{font-size:9px}}
@media(max-width:600px){html{scroll-padding-top:80px}.wrap{width:calc(100% - 40px)}.section{padding-block:52px}.header-inner{height:80px}.logo-crop{width:192px;height:79px}.logo-crop img{width:384px;left:-7.7px;top:-11.5px}.site-header nav{top:80px;padding-inline:20px}.menu-toggle{padding:10px 11px;gap:10px}.hero-inner{padding-top:51px}.hero-art{background-position:67% center;opacity:.45}.hero:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#171917aa,#17191720)}.hero-copy{padding-bottom:50px}.hero .eyebrow{font-size:10px;letter-spacing:.15em;margin-bottom:28px}.hero h1{font-size:clamp(46px,10.8vw,65px);line-height:1.03;letter-spacing:-.035em;max-width:100%}.desktop-break{display:block}.hero-description{font-size:17px;line-height:1.5;margin-top:24px}.mobile-break{display:block}.hero-actions{flex-direction:column;align-items:flex-start;gap:21px;margin-top:29px}.button{min-height:51px;font-size:13px;padding:14px 22px;gap:30px}.hero-actions .text-link{font-size:13px}.hero-baseline{font-size:10px;padding-block:16px 20px}.hero-baseline>a{display:none}.eyebrow{font-size:10px;margin-bottom:15px}h2{font-size:43px}.section-heading{display:block}.section-heading>p{margin-top:18px;font-size:14px}.section-heading>p br{display:none}.services{grid-template-columns:1fr;margin-top:32px}.service,.service:first-child,.service:last-child{position:relative;padding:28px 0 30px 47px!important;border-left:0;border-top:1px solid #cfbfaa}.service-number{position:absolute;left:0;top:32px;font-size:14px}.service h3{font-size:33px;margin-bottom:15px;white-space:normal}.service>p{font-size:17px;margin-bottom:18px}.service>p br{display:none}.service:last-child{padding-bottom:0!important}.firm-grid{grid-template-columns:1fr;gap:28px}.firm-copy{padding-top:0}.firm-copy .lead{font-size:25px}.firm-copy>p:not(.lead){font-size:16px}.firm-copy .text-link{margin-top:21px}.people-grid{grid-template-columns:1fr;gap:35px;margin-top:32px}.person{flex-direction:row;gap:23px;align-items:center}.portrait{width:128px;min-width:128px;aspect-ratio:4/5}.initials{font-size:53px}.portrait-rule{margin-block:14px 12px;width:30px}.portrait-label{font-size:9px;letter-spacing:.01em}.person-copy h3{font-size:27px}.person-role{font-size:14px;margin-top:7px}.bio-placeholder{font-size:12px;margin-top:14px}.person .text-link{font-size:11px;margin-top:14px;gap:12px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-section h2{font-size:52px}.contact-intro{font-size:16px}.contact-actions{flex-direction:row;align-items:center;gap:24px;flex-wrap:wrap}.contact-actions .text-link{font-size:12px}.contact-details{border-left:0;border-top:1px solid #837355;padding:30px 0 0;grid-template-columns:1fr;gap:24px}.contact-details address{font-size:16px}.contact-phone{font-size:25px}.contact-email{font-size:16px}.footer-main{padding-block:16px 22px;flex-wrap:wrap;gap:0 20px}.footer-main>.brand{width:192px;transform:scale(.9)}.footer-main>span{order:3;flex-basis:100%;max-width:none;font-size:11px;margin-top:7px}.back-top{margin-left:auto;gap:12px;font-size:10px}.footer-bottom{flex-wrap:wrap;gap:12px;justify-content:space-between;font-size:9px}.review-note{order:3;flex-basis:100%}.dialog-inner{padding:46px 27px 31px}.dialog-inner h2{font-size:38px}.dialog-lead{font-size:19px}.dialog-inner>p:not(.eyebrow){font-size:15px}}
.logo-crop{clip-path:inset(2px)}.bio-placeholder,.portrait-label{color:#625f56}.placeholder-note{color:#625f56!important}
@media(max-width:600px){.header-inner{gap:12px}}
@media(max-width:360px){.logo-crop{width:166px;height:69px}.logo-crop img{width:332px;left:-6.6px;top:-10px}.menu-toggle{gap:8px;padding:10px}.header-inner{gap:8px}.person{gap:17px}.portrait{width:113px;min-width:113px}.person-copy h3{font-size:24px}.hero h1{font-size:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
