:root{--navy:#102b3c;--ink:#183446;--muted:#51616c;--silver:#bed3d8;--line:#d3dce0;--soft:#f2f5f5;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:17px;line-height:1.7;background:white}a{color:inherit;text-underline-offset:5px}a:hover{color:#34647b}a:focus-visible,summary:focus-visible{outline:3px solid #b56a13;outline-offset:6px}p{margin:0 0 1.2rem}h1,h2,h3{font-weight:500;line-height:1.12;margin:0 0 1.3rem;letter-spacing:-.035em}h1{font-size:clamp(2.65rem,5.3vw,4.9rem)}h2{font-size:clamp(2rem,3.2vw,2.9rem)}h3{font-size:1.45rem;letter-spacing:-.02em}img{display:block;max-width:100%;height:auto}figure{margin:0}figcaption{font-size:.78rem;color:var(--muted);margin-top:1rem}.wrap{max-width:1256px;padding-left:48px;padding-right:48px;margin:auto}.site-header{border-bottom:1px solid var(--line);background:var(--white)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:104px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;font-size:24px;letter-spacing:-.035em;white-space:nowrap}.brand strong{font-weight:400}.brand-mark{display:flex;align-items:flex-end;gap:4px;height:27px}.brand-mark i{width:5px;background:var(--ink);height:13px}.brand-mark i:nth-child(2){height:20px}.brand-mark i:nth-child(3){height:27px}nav{display:flex;gap:29px;align-items:center}nav a{font-size:14px;text-decoration:none;padding:14px 0;border-bottom:2px solid transparent}nav a[aria-current=page]{border-color:var(--ink);font-weight:700}.header-contact{font-size:14px;text-decoration:none;border:1px solid var(--line);padding:10px 18px}.header-contact span{margin-left:16px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.17em;font-weight:700;margin-bottom:25px;line-height:1.5}.home-hero{background:var(--navy);color:white;padding-top:78px}.home-hero .eyebrow{color:var(--silver)}.home-hero h1{max-width:1000px;margin-bottom:35px;line-height:1.1}.home-hero h1 span{color:var(--silver)}.hero-bottom{display:flex;gap:55px;justify-content:space-between;align-items:center}.lead{font-size:20px;line-height:1.65;max-width:760px;color:var(--muted)}.hero-bottom .lead{max-width:680px;color:#d9e2e6;margin:0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:15px 24px;background:var(--navy);color:white;text-decoration:none;font-size:14px;white-space:nowrap;border:1px solid var(--navy);line-height:1.6}.button:hover{background:#294e63;color:white}.button.light{background:transparent;border-color:#6e8796;color:white}.button.light:hover{background:#284759}.hero-rule{display:flex;justify-content:space-between;border-top:1px solid #3d5565;margin-top:58px;padding:19px 0;color:#bed0d9;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px}.intro,.section-space{padding-top:88px;padding-bottom:88px}.large-copy{font-size:22px;line-height:1.55;color:var(--ink)}.split p:not(.eyebrow):not(.large-copy){color:var(--muted)}.soft{background:var(--soft)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:45px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:365px;color:var(--muted);margin:0}.capabilities{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #b8c8d0;border-bottom:1px solid #b8c8d0}.capabilities>a{padding:32px 28px 25px;text-decoration:none;position:relative;display:flex;flex-direction:column}.capabilities>a:first-child{padding-left:0}.capabilities>a:last-child{padding-right:0}.capabilities>a+a{border-left:1px solid #b8c8d0}.index{font-size:11px;letter-spacing:.13em;color:#526b7a;display:block;margin-bottom:28px}.capabilities h3{font-size:25px}.capabilities p{font-size:16px;color:var(--muted)}.arrow{margin-top:auto;font-size:26px}.capabilities>a:hover h3{text-decoration:underline;text-underline-offset:6px}.text-link{font-size:15px;display:inline-block;margin-top:10px}.text-link span{margin-left:10px}.steps{list-style:none;counter-reset:steps;padding:0;margin:0}.steps li{position:relative;padding:0 0 23px 60px;border-bottom:1px solid var(--line);margin-bottom:25px;counter-increment:steps}.steps li:before{content:'0' counter(steps);position:absolute;left:0;top:0;font-size:12px;color:var(--muted)}.steps h3{font-size:21px;margin-bottom:10px}.steps p{margin-bottom:0}.contact-band{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:50px;padding-top:58px;padding-bottom:65px}.contact-band h2{font-size:32px;max-width:650px}.contact-band p:last-child{color:var(--muted);max-width:660px;margin-bottom:0}.contact-band .eyebrow{margin-bottom:18px}.site-footer{background:var(--navy);color:#d6e1e6;padding:44px 0 20px}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-brand{color:white;font-size:24px;text-decoration:none;letter-spacing:-.035em}.footer-top p{font-size:12px;color:#b8cbd4;margin-top:7px}.footer-links{display:flex;gap:26px;font-size:13px}.site-footer a:hover{color:white}.footer-bottom{font-size:11px;border-top:1px solid #3d5565;padding-top:22px;margin-top:30px;color:#b8cbd4}.page-hero{padding-top:76px;padding-bottom:62px}.page-hero h1{font-size:clamp(2.6rem,4.8vw,4.35rem)}.page-hero .lead{max-width:790px;margin-bottom:0}.services{padding-bottom:75px}.service-row{display:grid;grid-template-columns:60px 1.4fr 1fr;gap:34px;border-top:1px solid var(--line);padding:40px 0}.service-row h2{font-size:29px;max-width:500px}.service-row p{color:var(--muted);margin:0}.service-row .index{margin-top:8px}.plain-list{padding:0;margin:0 0 0 25px;list-style:none;font-size:14px}.plain-list li{padding:9px 0;border-bottom:1px solid var(--line)}.plain-list li:before{content:'—';margin-right:10px;color:#657e8e}.image-feature{align-items:center;gap:65px}.image-feature img{width:100%;border:1px solid #dde4e8}.dark-panel{background:var(--navy);color:white}.dark-panel .split p:not(.eyebrow):not(.large-copy),.dark-panel .large-copy{color:#d6e1e6}.dark-panel .eyebrow{color:var(--silver)}.process{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:35px;padding:0;margin:0}.process li{border-top:1px solid #b8c8d0;padding-top:20px}.process span{font-size:12px;display:block;margin-bottom:22px;color:var(--muted)}.process h3{font-size:24px}.process p{font-size:15px;color:var(--muted);margin:0}.biography{border-top:1px solid var(--line);padding-top:55px}.nameplate{border-left:2px solid var(--ink);padding-left:32px}.monogram{font-family:Georgia,serif;font-size:80px;letter-spacing:-.09em;display:block;line-height:1;margin-bottom:35px;color:#8fa6b1}.nameplate h2{font-size:32px}.nameplate p{font-size:15px}.biography h3{margin-top:35px}.small{font-size:13px;margin-top:22px}.privacy{padding-bottom:65px}details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:15px}details>div{max-width:850px;padding-top:25px;font-size:14px;color:var(--muted)}.skip-link{position:fixed;z-index:10;left:12px;top:-100px;background:white;padding:12px 20px;color:var(--navy)}.skip-link:focus{top:12px}@media(max-width:1000px){.wrap{padding-left:32px;padding-right:32px}.header-inner{gap:20px}.header-contact{display:none}nav{gap:22px}.split{gap:45px}.hero-bottom{align-items:flex-start;gap:30px}.hero-bottom .lead{max-width:60%}.service-row{grid-template-columns:30px 1.4fr 1fr;gap:25px}.plain-list{margin-left:0}.section-heading{gap:35px}.process{gap:25px}}@media(max-width:680px){body{font-size:16px}.wrap{padding-left:24px;padding-right:24px}.header-inner{flex-direction:column;align-items:flex-start;padding-top:20px;gap:5px;min-height:115px}.brand{font-size:23px}nav{width:100%;justify-content:space-between;gap:10px}nav a{font-size:13px;padding:11px 0 12px}.home-hero{padding-top:48px}.home-hero h1{font-size:clamp(1.7rem,6.8vw,2.85rem);letter-spacing:-.04em}.eyebrow{font-size:10px;letter-spacing:.13em}.hero-bottom{display:block}.hero-bottom .lead{max-width:none;font-size:18px;margin-bottom:28px}.hero-rule{margin-top:40px;gap:20px;font-size:8px}.hero-rule span:last-child{text-align:right;max-width:155px}.intro,.section-space{padding-top:54px;padding-bottom:54px}.split{grid-template-columns:1fr;gap:26px}h2{font-size:30px}.large-copy{font-size:20px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px;max-width:none}.capabilities{grid-template-columns:1fr}.capabilities>a,.capabilities>a:first-child,.capabilities>a:last-child{padding:26px 0}.capabilities>a+a{border-left:0;border-top:1px solid #b8c8d0}.capabilities .index{margin-bottom:15px}.capabilities .arrow{position:absolute;right:0;top:20px}.capabilities p{max-width:90%;margin-bottom:0}.steps li{padding-left:40px}.contact-band{display:block;padding-top:40px;padding-bottom:45px}.contact-band h2{font-size:28px}.contact-band .button{margin-top:26px}.footer-top,.footer-bottom{display:block}.footer-links{margin-top:25px;flex-wrap:wrap}.footer-bottom span{display:block;margin-bottom:7px}.page-hero{padding-top:45px;padding-bottom:40px}.page-hero h1{font-size:38px}.page-hero .lead{font-size:18px}.service-row{grid-template-columns:28px 1fr;gap:15px;padding:30px 0}.service-row h2{font-size:26px}.service-row .plain-list{grid-column:2;margin-top:5px}.services{padding-bottom:35px}.process{grid-template-columns:1fr 1fr;gap:30px 24px}.nameplate{padding-left:22px}.monogram{font-size:65px}.privacy{padding-bottom:45px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{body{font-size:11pt}.site-header,.site-footer,.contact-band,.skip-link{display:none}.wrap{max-width:none;padding:0}.home-hero,.dark-panel{background:white;color:black;padding:20px 0}.home-hero h1 span,.hero-bottom .lead,.dark-panel .split p{color:black!important}.section-space,.intro,.page-hero{padding:25px 0}.split{gap:30px}.button{color:black;background:white;border-color:black}a{color:black}h1,h2,h3{break-after:avoid}img{max-width:350px}.service-row{break-inside:avoid}}

/* A keyboard-accessible return link in every page footer. */
.footer-links {
  align-items: center;
  flex-wrap: wrap;
}
.back-to-top {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 10px;
  border: 1px solid #6e8796;
  text-decoration: none;
}
.back-to-top:hover {
  background: #294e63;
}
.back-to-top span {
  font-size: 20px;
}
