:root{--ink:#222842;--purple:#3f488b;--deep:#252b5c;--muted:#586174;--line:#dce0eb;--pale:#f4f5fa;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:white;font:1rem/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #98600e;outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(2.7rem,4.6vw,4.8rem);letter-spacing:-.045em;margin-bottom:28px}h2{font-size:clamp(2rem,3.3vw,3.4rem);letter-spacing:-.025em}h3{font-size:1.6rem;font-weight:550}.wrap{max-width:1220px;margin:auto;padding-left:36px;padding-right:36px}.topbar{background:var(--deep);color:white;font-size:.875rem;padding:9px 0}.topbar .wrap{display:flex;justify-content:space-between}.topbar a{font-weight:600}header{background:#ffffffed;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.header{min-height:99px;display:flex;justify-content:space-between;align-items:center;gap:35px}.brand{display:inline-block;font-family:Georgia,serif;font-size:2.1rem;line-height:1;letter-spacing:-.03em}.brand span{display:block;font-family:system-ui,sans-serif;font-size:.7rem;letter-spacing:.25em;margin-top:10px;font-weight:600}.header nav{display:flex;gap:25px;font-size:.91rem}.header nav a{padding:34px 0 28px;border-bottom:3px solid transparent}.header nav a[aria-current],.header nav a:hover{color:var(--purple);border-bottom-color:var(--purple)}.menu{display:none}.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:70px;padding-top:65px;padding-bottom:65px;align-items:center}.hero-copy{padding:20px 0}.eyebrow{font-size:.78rem;font-weight:650;letter-spacing:.17em;color:var(--purple);margin-bottom:22px}.hero em{color:var(--purple);font-weight:400}.intro{font-size:1.15rem;line-height:1.8;color:var(--muted);max-width:580px}.hero-photo{position:relative;max-width:430px;justify-self:end}.hero-photo img{width:100%;height:520px;object-fit:cover;object-position:50% 30%;border-radius:3px 3px 90px 3px}.photo-note{position:absolute;bottom:25px;left:-25px;padding:17px 25px;background:var(--deep);color:white;font-family:Georgia,serif;font-size:1.2rem;line-height:1.4;border-left:3px solid #a5addd}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 22px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--purple);border:1px solid var(--purple);color:#fff;padding:13px 21px;font-weight:600;border-radius:4px;font-size:.94rem;min-height:50px;transition:background .15s}.button:hover{background:var(--deep)}.button.secondary{background:white;color:var(--purple)}.button.secondary:hover{background:var(--pale)}.text-link{font-size:.94rem;font-weight:600;color:var(--purple)}.text-link:hover{text-decoration:underline}.services{background:var(--pale);padding:75px 0}.section-heading{margin-bottom:35px}.two-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.service{display:block;background:white;border:1px solid var(--line);padding:35px;border-radius:6px}.service:hover{border-color:#919ac7}.service p{color:var(--muted)}.icon{width:65px;height:65px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--pale);color:var(--purple);margin-bottom:25px;font:2.5rem Georgia,serif}.icon img{opacity:.8}.region{padding-top:70px;padding-bottom:80px}.region p:not(.eyebrow){color:var(--muted);font-size:1.1rem}footer{background:var(--deep);color:#fff;padding:55px 0 25px}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr .6fr;gap:60px}footer .brand{margin-bottom:23px}footer p,footer address{color:#d3d7e8;font-size:.94rem}footer h2{font:600 .95rem system-ui;margin-bottom:15px}footer address{font-style:normal;margin-bottom:12px}footer nav{display:grid;gap:7px;font-size:.9rem}footer a:hover{text-decoration:underline}.legal{border-top:1px solid #50567e;margin-top:35px;padding-top:22px;color:#c3c9df;font-size:.8rem;line-height:1.7}.page-top{background:var(--pale);padding:65px 0 55px}.page-top h1{max-width:950px;margin-bottom:16px}.page-top p:not(.eyebrow){max-width:750px;color:var(--muted);font-size:1.12rem}.content{padding-top:65px;padding-bottom:75px}.prose{max-width:800px;font-size:1.12rem;color:var(--muted)}.split{display:grid;grid-template-columns:1.25fr .8fr;gap:70px;align-items:start}.portrait{width:100%;height:auto;max-width:360px;border-radius:5px 5px 60px 5px}.details{border-top:1px solid var(--line);padding:22px 0}.details h2{font:600 1rem system-ui;color:var(--purple);margin-bottom:10px}.details p,.details address{margin:0;font-style:normal}.practice-row{display:grid;grid-template-columns:.65fr 1.4fr;gap:65px;padding:40px 0;border-bottom:1px solid var(--line)}.practice-row:first-child{padding-top:0}.practice-row h2{font-size:2.5rem}.practice-row p{color:var(--muted)}.tags{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.tags span{padding:6px 13px;border:1px solid var(--line);border-radius:3px;font-size:.9rem}.availability{padding:35px;background:var(--pale);border-left:4px solid var(--purple);max-width:850px}.availability h2{font-size:2.3rem}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;padding:10px;background:white;z-index:100}@media(max-width:950px){.header nav{gap:15px;font-size:.85rem}.hero{gap:35px}.hero-photo img{height:450px}.wrap{padding-left:25px;padding-right:25px}.split{gap:35px}}@media(max-width:760px){.topbar .wrap{font-size:.78rem}.header{min-height:82px;flex-wrap:wrap;gap:0}.brand{font-size:1.8rem}.menu{display:block;border:1px solid var(--line);background:white;color:var(--ink);padding:9px 13px;border-radius:4px;font-size:1rem}.menu span{margin-left:7px}.header nav{display:none;width:100%;padding:15px 0 20px;flex-direction:column;gap:0}.header nav.open{display:flex}.header nav a{padding:10px 0;font-size:1rem;border-bottom-width:1px}.hero{grid-template-columns:1fr;padding-top:35px;gap:30px}.hero-copy{padding:0}.hero-photo{justify-self:center;max-width:420px;width:100%}.hero-photo img{height:440px}.photo-note{left:-8px}.two-grid,.split,.footer-grid{grid-template-columns:1fr;gap:30px}.practice-row{grid-template-columns:1fr;gap:12px}.practice-row h2{margin-bottom:10px}.services,.region,.content{padding-top:45px;padding-bottom:45px}.page-top{padding-top:40px;padding-bottom:35px}.service{padding:26px}.footer-grid{gap:35px}.split .portrait{max-width:340px}.eyebrow{letter-spacing:.12em}.availability{padding:24px}.topbar .wrap{gap:12px}.legal{margin-left:25px;margin-right:25px;padding-left:0;padding-right:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
:root{color-scheme:light}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.notice{font-size:.9rem;line-height:1.7;color:var(--muted);margin-top:20px}
.brand-logo{width:104px;height:auto;aspect-ratio:1;object-fit:contain}.header{min-height:124px}footer .brand-logo{width:140px;background:#fff;border-radius:50%;padding:5px}@media(max-width:760px){.header{min-height:100px}.brand-logo{width:82px}footer .brand-logo{width:120px}}
