:root{--navy:#102532;--ink:#17242b;--cream:#f7f4ee;--sand:#e9e2d6;--clay:#ad634b;--line:rgba(16,37,50,.16);--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--sans);line-height:1.65}.container{width:min(1140px,calc(100% - 48px));margin:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:9;padding:.7rem;background:white}.site-header{position:absolute;z-index:3;width:100%;color:#fff}.header-inner{height:94px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-mark{border:1px solid rgba(255,255,255,.75);width:42px;height:42px;display:grid;place-items:center;font:600 16px var(--serif)}.brand-name{font:600 16px var(--serif);line-height:1.15}.brand-name small{display:block;font:500 9px var(--sans);letter-spacing:.14em;text-transform:uppercase;margin-top:4px}.main-nav{display:flex;align-items:center;gap:30px}.main-nav a{color:white;text-decoration:none;font-size:14px}.main-nav .nav-contact{padding:10px 17px;border:1px solid rgba(255,255,255,.7)}.menu-button{display:none}.hero{position:relative;isolation:isolate;overflow:hidden;background:var(--navy);color:#fff;min-height:760px;padding:180px 0 58px}.hero-pattern{position:absolute;z-index:-1;width:650px;height:650px;border:1px solid rgba(255,255,255,.09);border-radius:50%;right:-200px;top:50px;box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 160px rgba(255,255,255,.018)}.hero-grid{display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:80px}.eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--clay);margin:0 0 18px}.hero .eyebrow{color:#e6a78d}.hero h1,.section h2,.contact h2{font:500 clamp(46px,6vw,80px)/1.06 var(--serif);letter-spacing:-.045em;margin:0}.hero h1 em{color:#e6a78d;font-style:italic}.hero-text{font-size:18px;max-width:500px;color:#d1d9db;margin:28px 0 34px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.button{padding:13px 20px;text-decoration:none;font-weight:600;font-size:14px;transition:.2s}.button-primary{background:#e6a78d;color:var(--navy)}.button-primary:hover{background:#fff}.button-primary span{margin-left:14px}.button-quiet{border:1px solid rgba(255,255,255,.55);color:#fff}.consultation-card{background:#f6f0e7;color:var(--navy);padding:38px;align-self:center;position:relative}.card-icon{color:var(--clay);font-size:22px}.card-label{color:var(--clay);text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:700;margin:18px 0 7px}.consultation-card h2{font:500 30px/1.15 var(--serif);margin:0}.consultation-card p:not(.card-label){font-size:14px}.consultation-card a{color:var(--navy);font-weight:700;text-decoration:none;border-bottom:1px solid var(--navy);padding-bottom:3px}.hero-footer{display:flex;gap:42px;margin-top:100px;color:#b6c1c3;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.hero-footer span:before{content:"•";color:#e6a78d;margin-right:9px}.section{padding:130px 0}.section-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;align-items:start}.section h2,.contact h2{font-size:clamp(36px,4.1vw,55px)}.about-content{font-size:16px;color:#435057}.about-content p{margin:0 0 20px}.about-content .lead{font:500 22px/1.5 var(--serif);color:var(--ink)}.practice{background:var(--sand)}.section-intro{max-width:680px}.section-intro>p:last-child{color:#526066;max-width:540px}.practice-list{list-style:none;padding:0;margin:55px 0 0;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.practice-list li{border-bottom:1px solid var(--line);padding:16px 24px 16px 0;font-size:16px}.practice-list li:nth-child(odd){margin-right:28px}.practice-list li:before{content:"↗";color:var(--clay);margin-right:11px}.districts{background:#fff}.districts-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.districts-layout>div>p:last-child{color:#526066;max-width:440px}.district-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.district-list li{border-top:1px solid var(--line);padding:13px 0;font-weight:600}.contact{background:var(--navy);padding:110px 0;color:#fff}.contact-card{display:grid;grid-template-columns:1.15fr .85fr;gap:100px}.contact h2{max-width:640px}.contact>div>div>p:not(.eyebrow){color:#c2cdd0;max-width:550px;font-size:17px}.contact-details{display:flex;flex-direction:column;align-items:flex-start;gap:13px;justify-content:center}.contact-details a{color:#fff;text-decoration:none}.contact-phone{font:500 32px var(--serif);color:#e6a78d!important;border-bottom:1px solid #e6a78d}.contact-phone span{font-family:var(--sans);margin-left:8px}.contact-details address{font-style:normal;color:#c2cdd0;font-size:14px;margin-top:10px}.site-footer{background:#0a1821;color:#91a1a7;font-size:12px}.site-footer>div{height:70px;display:flex;justify-content:space-between;align-items:center}@media(max-width:760px){.container{width:min(100% - 36px,1140px)}.header-inner{height:78px}.menu-button{display:flex;width:40px;height:40px;flex-direction:column;justify-content:center;gap:5px;background:none;border:0;padding:8px}.menu-button span:not(.sr-only){height:1px;background:#fff;width:100%}.main-nav{display:none;position:absolute;top:70px;left:18px;right:18px;background:#f6f0e7;padding:20px;flex-direction:column;align-items:stretch;gap:3px;box-shadow:0 12px 30px #07131a44}.main-nav.open{display:flex}.main-nav a{color:var(--navy);padding:9px}.main-nav .nav-contact{border-color:var(--navy);text-align:center;margin-top:5px}.hero{min-height:auto;padding:155px 0 42px}.hero-grid,.section-grid,.districts-layout,.contact-card{grid-template-columns:1fr;gap:45px}.hero h1{font-size:52px}.consultation-card{padding:28px}.hero-footer{margin-top:60px;gap:12px;flex-direction:column}.section{padding:82px 0}.practice-list{grid-template-columns:1fr;margin-top:35px}.practice-list li:nth-child(odd){margin-right:0}.district-list{gap:0 18px}.contact{padding:75px 0}.contact-card{gap:35px}.site-footer>div{height:auto;padding:22px 0;gap:5px;align-items:flex-start;flex-direction:column}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
