
:root{--navy:#0b1d3a;--navy2:#142d4e;--slate:#586579;--line:#dfe5ec;--paper:#f6f8fa;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--navy);background:#fff;font-family:Arial,Helvetica,sans-serif;line-height:1.65}
a{color:inherit}a:focus-visible{outline:3px solid #7193c2;outline-offset:4px}
.container{max-width:1110px;margin:auto;padding:0 28px}
.site-header{border-bottom:1px solid var(--line);background:#fff}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:106px}
.brand{display:block;width:min(370px,48vw)}.brand img{width:100%;height:auto;display:block}
nav{display:flex;gap:27px;align-items:center}nav a{text-decoration:none;font-size:13px;font-weight:700;letter-spacing:.04em}
nav a:hover,.contact-link:hover{color:#55759d}
.hero{padding:102px 0 112px;background:var(--navy);color:white}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.21em;text-transform:uppercase;color:#9fb2ca;margin:0 0 25px}
.hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(40px,5.3vw,72px);line-height:1.12;letter-spacing:-.025em;max-width:840px;margin:0 0 30px}
.hero p.lead{font-size:19px;color:#d9e2ed;max-width:685px;margin:0 0 35px;line-height:1.8}
.button{display:inline-block;background:white;color:var(--navy);text-decoration:none;padding:14px 23px;font-size:13px;font-weight:700;letter-spacing:.03em;border:1px solid white}
.button:hover{background:#e9eef4}
.section{padding:92px 0}.section.soft{background:var(--paper)}
.section-heading{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(31px,3.5vw,45px);line-height:1.23;margin:0 0 24px}
.section p{color:#4b586b;font-size:16px;max-width:760px}
.grid-two{display:grid;grid-template-columns:1fr 1fr;gap:72px}
.kicker{color:#6a7e99;font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:11px;margin:0 0 15px}
.rule{height:1px;background:var(--line);margin:29px 0}
.practice{border-top:1px solid var(--line);padding:22px 0}
.practice strong{display:block;font-family:Georgia,serif;font-size:23px;font-weight:400}
.practice span{font-size:14px;color:var(--slate)}
.about-layout{display:grid;grid-template-columns:225px 1fr;gap:58px;align-items:center}
.portrait{width:225px;height:225px;object-fit:cover;object-position:center 36%;border-radius:2px}
.about-name{font-size:18px;font-weight:700;margin:0}.about-role{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);margin:2px 0 20px}
.text-link{font-weight:700;text-underline-offset:4px}
.contact{background:var(--navy);color:white;padding:76px 0}
.contact .section-heading{margin-bottom:16px}.contact p{color:#d9e2ed}
.contact-links{display:flex;gap:18px 38px;flex-wrap:wrap;margin-top:28px}
.contact-link{color:white;text-decoration:underline;text-underline-offset:5px}
.footer{padding:25px 0;background:#07172e;color:#b8c6d7;font-size:12px}
.footer-inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.footer a{color:#dce5f0}.legal{max-width:800px;margin:70px auto 100px;padding:0 28px}.legal h1{font-family:Georgia,serif;font-size:44px;font-weight:400}
.legal h2{font-size:20px;margin-top:35px}.legal p{color:#4b586b}
@media(max-width:760px){.header-inner{min-height:95px;align-items:flex-start;flex-direction:column;justify-content:center;padding-top:14px;padding-bottom:17px;gap:14px}.brand{width:270px;max-width:90%}nav{gap:18px;flex-wrap:wrap}nav a{font-size:12px}.hero{padding:76px 0 84px}.hero p.lead{font-size:17px}.section{padding:65px 0}.grid-two{grid-template-columns:1fr;gap:34px}.about-layout{grid-template-columns:1fr;gap:28px}.portrait{width:180px;height:180px}.contact{padding:65px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
