@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600&family=Libre+Caslon+Display&display=swap');
:root{--navy:#0e2035;--ink:#14273c;--muted:#536172;--line:#cdd3db;--paper:#fff;--pale:#eff2f5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid #668ebc;outline-offset:7px}header{min-height:114px;padding:25px 6%;display:flex;justify-content:space-between;align-items:center;gap:30px}.wordmark{font-family:Georgia,serif;font-size:28px;letter-spacing:3px;line-height:1.15;display:inline-block}.wordmark span{display:block;font:11px 'DM Sans',Arial,sans-serif;letter-spacing:5px;margin-top:10px}nav{display:flex;gap:42px;font-size:14px}nav a{border-bottom:1px solid transparent;padding:8px 0}nav a:hover{border-color:currentColor}nav span{margin-left:15px}.hero{background:var(--navy);color:white;padding:38px 6% 0;position:relative;overflow:hidden}.hero-top{display:flex;justify-content:space-between;gap:24px;align-items:center}.eyebrow,.location,.section-label,.hero-foot,.facts span{font-size:12px;letter-spacing:1.9px;font-weight:500}.hero-top p{margin:0}.location{color:#aebbc9}.hero h1{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(64px,7.5vw,116px);font-weight:400;line-height:1.03;letter-spacing:-2px;margin:67px 0 38px}.hero em{font-weight:400;color:#b4c2d2}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px;padding-bottom:52px}.hero-bottom p{color:#c8d1dc;margin:0;font-size:17px}.text-link{border-bottom:1px solid #8292a4;padding:10px 0;min-width:198px;display:flex;justify-content:space-between;font-size:14px}.text-link:hover{color:#b4c2d2}.hero-foot{display:flex;justify-content:space-between;border-top:1px solid #3a495a;padding:22px 0;color:#aebbc9;font-size:11px}.section{padding:86px 6% 92px}.section-label{display:flex;align-items:center;gap:30px}.rule{height:1px;background:var(--line);flex:1}.firm-content{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:53px}h2{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(44px,4.4vw,66px);font-weight:400;letter-spacing:-1px;line-height:1.12;margin:0}.body-copy p{color:var(--muted);margin:0 0 22px;max-width:540px}.body-copy .lead{font-size:22px;line-height:1.5;color:var(--ink)}.facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:51px;border-top:1px solid var(--line);padding-top:24px;gap:24px}.facts span{font-size:11px;color:var(--muted)}.facts p{margin:9px 0 0;font-size:18px}.approach{background:var(--pale)}.approach-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-top:49px}.approach-heading p{max-width:280px;margin:0;color:var(--muted)}.principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:58px;gap:6%}.principles article{border-top:1px solid #a6b0bc;padding-top:22px}.number{font-size:13px;color:var(--muted)}h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:38px;font-weight:400;line-height:1.14;margin:28px 0 22px}.principles p{color:var(--muted);margin:0;max-width:320px}.contact-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:50px;margin-top:50px}.contact-grid p{color:var(--muted);margin-top:26px}.email{display:inline-flex;gap:38px;border-bottom:1px solid var(--ink);padding:7px 0;font-size:clamp(20px,2.3vw,32px);margin-top:12px}.address{padding-left:12%;border-left:1px solid var(--line)}address{font-style:normal;font-size:20px;line-height:1.65;margin-top:24px}.address p{font-size:14px}footer{background:var(--navy);color:#c6cfd9;padding:45px 6% 30px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:37px;border-bottom:1px solid #3a495a}.footer-top .wordmark{color:white;font-size:23px}.footer-top>span{font-family:Georgia,serif;font-size:19px;font-style:italic}.footer-bottom{display:grid;grid-template-columns:1fr 1.7fr .7fr;gap:45px;margin-top:25px;font-size:12px}.footer-bottom p{margin:0}.footer-bottom a{text-align:right}.skip{position:absolute;top:-100px;left:15px;padding:10px;background:white;z-index:10}.skip:focus{top:15px}@media(min-width:1600px){header,.hero,.section,footer{padding-left:max(6%,calc((100vw - 1400px)/2));padding-right:max(6%,calc((100vw - 1400px)/2))}}@media(max-width:700px){header{min-height:108px;align-items:flex-start;gap:20px;padding:22px 6%;flex-direction:column}.wordmark{font-size:24px}nav{width:100%;justify-content:space-between;gap:12px;font-size:14px}.hero{padding-top:29px}.location{display:none}.eyebrow{font-size:11px}.hero h1{font-size:clamp(48px,10vw,70px);letter-spacing:-1px;margin:48px 0 30px}.hero-bottom{flex-direction:column;align-items:start;padding-bottom:32px;gap:20px}.hero-bottom p{font-size:16px}.hero-foot{gap:20px;font-size:9px;letter-spacing:1px}.section{padding-top:54px;padding-bottom:58px}.firm-content,.contact-grid{grid-template-columns:1fr;gap:30px;margin-top:33px}.body-copy .lead{font-size:20px}.facts{grid-template-columns:1fr;gap:21px;margin-top:26px}.facts>div{border-bottom:1px solid var(--line);padding-bottom:16px}.approach-heading{align-items:start;flex-direction:column;gap:20px;margin-top:32px}.principles{grid-template-columns:1fr;gap:35px;margin-top:35px}.principles p{max-width:none}h3{font-size:35px;margin:17px 0}h3 br{display:none}.address{padding:28px 0 0;border-left:0;border-top:1px solid var(--line)}.footer-top{align-items:start;flex-direction:column;gap:28px}.footer-bottom{grid-template-columns:1fr;gap:22px}.footer-bottom a{text-align:left}.section-label{font-size:11px;gap:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.brand{display:flex;align-items:center;gap:18px}.brand-symbol{display:block;width:79px;height:46px;overflow:hidden;flex-shrink:0}.brand-symbol img{display:block;width:118px;height:118px;max-width:none;transform:translate(-19px,-21px)}@media(max-width:700px){.brand-symbol{width:63px;height:39px}.brand-symbol img{width:98px;height:98px;transform:translate(-15px,-17px)}.brand{gap:12px}}

.brand{width:240px;height:108px;overflow:hidden}.full-logo{display:block;width:240px;height:240px;object-fit:contain;transform:translateY(-2px)}header{min-height:142px;padding-top:12px;padding-bottom:12px}@media(max-width:700px){.brand{width:220px;height:145px}.full-logo{width:220px;height:220px;transform:none}header{gap:10px}}

.brand{width:210px;height:138px}.full-logo{width:210px;height:210px;transform:none}@media(max-width:700px){.brand{width:210px;height:138px}.full-logo{width:210px;height:210px}}
