@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/dm-sans-400.woff2) format("woff2");
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/dm-sans-500.woff2) format("woff2");
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/dm-sans-600.woff2) format("woff2");
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/dm-sans-700.woff2) format("woff2");
}
@font-face {
  font-family: 'Libre Caslon Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/libre-caslon-display-400.woff2) format("woff2");
}
:root{--paper:#f6f4ee;--ink:#182c32;--muted:#626c6b;--gold:#b6a071;--line:#d9dbd2;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #182c32;outline-offset:5px}::selection{background:#d4bc8a;color:var(--ink)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2,h3,.phone{font-family:var(--serif)}em{font-weight:400;color:inherit}header{padding:23px 5.2%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:10}.brand{display:flex;gap:16px;align-items:center;font-size:12px;letter-spacing:1.5px;line-height:1.45}.brand strong{font-weight:600;font-size:17px;letter-spacing:1.7px}.brand small{display:block;font-size:12px;letter-spacing:2.4px;margin-top:5px}.monogram{font-family:var(--serif);font-size:35px;line-height:1.1;border-right:1px solid #bec4bf;padding-right:17px;letter-spacing:-2px}.monogram span{display:block;color:var(--gold);font-size:17px;text-align:center}nav{display:flex;gap:32px;align-items:center;font-size:12px}nav a:hover{color:#836c3a}.nav-contact{border:1px solid #aeb6b0;padding:12px 20px;display:flex;gap:32px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);min-height:620px}.hero-copy{padding:62px 8% 24px 9%;display:flex;flex-direction:column}.eyebrow{font-size:12px;letter-spacing:2.3px;font-weight:600;line-height:1.7}.hero .eyebrow{display:flex;align-items:center;gap:9px}.eyebrow>span{width:6px;height:6px;background:var(--gold);border-radius:50%}h1{font-size:clamp(48px,4.8vw,76px);line-height:1.03;letter-spacing:-1.8px;margin:30px 0 27px}h1 em{color:#735e36}.hero-description{font-size:14px;line-height:1.8;color:var(--muted)}.hero-actions{display:flex;gap:24px;align-items:center;margin:32px 0 50px}.button{display:inline-flex;align-items:center;gap:25px;padding:15px 21px;font-size:12px;font-weight:500}.gold{background:var(--ink);color:var(--paper)}.gold:hover{background:#31484c}.button span{color:#d8c297;font-size:18px}.text-link{font-size:12px;display:inline-flex;gap:22px;align-items:center}.text-link:hover{color:#735e36;text-decoration:underline}.hero-bottom{margin-top:auto;display:flex;justify-content:space-between;gap:16px;font-size:12px;letter-spacing:1.3px;border-top:1px solid var(--line);padding-top:18px;color:var(--muted)}.hero-image{position:relative;overflow:hidden;background:var(--ink);margin:20px 20px 20px 0;min-height:570px}.hero-image img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:52%;filter:saturate(.4)}.photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,#182c3210 10%,#132d3260 45%,#132b32ef 100%)}.hero-image figcaption{position:absolute;bottom:43px;left:39px;color:var(--paper)}.hero-image figcaption>span{display:block;font-size:12px;letter-spacing:2px}.hero-image figcaption strong{display:block;font-family:var(--serif);font-size:39px;line-height:1.15;font-weight:400;margin:18px 0 21px}.photo-corner{position:absolute;top:25px;right:24px;color:white;font-size:12px;letter-spacing:2px;border:1px solid #ffffff60;padding:6px 11px}.credentials{display:grid;grid-template-columns:1fr 1fr 1fr;margin:0 5.2%;padding:27px 0 31px;border-bottom:1px solid var(--line)}.credentials>div{display:flex;gap:8px;flex-direction:column;padding:0 30px;border-right:1px solid var(--line)}.credentials>div:first-child{padding-left:0}.credentials>div:last-child{border:0}.credentials strong{font-size:25px;font-family:var(--serif);font-weight:400;line-height:1.1}.credentials span{font-size:12px;color:var(--muted)}.section{padding:92px 5.2%}h2{font-size:55px;line-height:1.06;letter-spacing:-.8px}h2 em{color:#735e36}.section-intro h2{margin:20px 0 25px}.section-intro>p:last-child{color:var(--muted);max-width:295px;font-size:14px}.practice{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:9%}.practice-row{display:flex;gap:23px;align-items:flex-start;padding:26px 0;border-top:1px solid var(--line)}.practice-row:last-of-type{border-bottom:1px solid var(--line)}.row-number{font-size:12px;color:#735e36;margin-top:8px}.practice-row h3{font-size:29px;line-height:1.2;margin-bottom:8px}.practice-row p{font-size:12px;max-width:370px;color:var(--muted)}.row-arrow{margin-left:auto;font-size:23px;color:#735e36}.practice-row:hover h3{color:#735e36}.source-note{font-size:12px;color:var(--muted);margin-top:14px}.source-note a{text-decoration:underline}.about{background:#eaece5;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.1fr);gap:12%;align-items:center}.about-mark{background:var(--ink);min-height:410px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#c7b487;position:relative}.about-mark:before,.about-mark:after{content:'';position:absolute;inset:17px;border:1px solid #b6a07140}.about-mark:after{inset:24px}.seal{width:195px;height:195px;border:1px solid #b6a07180;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;font-family:var(--serif);font-size:59px}.seal span{font:12px var(--sans);letter-spacing:2.5px;color:#c9cec6;margin-top:12px}.about-mark>p{font-size:12px;letter-spacing:2.8px;text-align:center;margin-top:28px;line-height:2}.about-copy h2{margin:18px 0 23px}.about-copy>p:not(.eyebrow){color:var(--muted);font-size:13px;margin-top:16px;max-width:490px}.about-copy>.lead{font-size:18px!important;color:var(--ink)!important}.about-facts{display:flex;justify-content:space-between;gap:20px;margin:25px 0;border-top:1px solid #cbd1c5;padding-top:20px}.about-facts dt{font-size:12px;letter-spacing:1.2px;color:var(--muted)}.about-facts dd{margin:6px 0 0;font-size:12px}.dark-link{border-bottom:1px solid #9da796;padding-bottom:5px}.case-heading{display:flex;gap:50px;justify-content:space-between;align-items:flex-end}.case-heading h2{margin-top:19px}.case-heading>p{font-size:13px;color:var(--muted);max-width:310px;margin-bottom:5px}.case-filters{display:flex;gap:10px;margin:35px 0 24px;flex-wrap:wrap}.case-filters button{background:transparent;border:1px solid #d0d4c9;padding:9px 17px;font-size:12px;color:var(--muted)}.case-filters button.active{background:var(--ink);border-color:var(--ink);color:white}.case-filters span{color:#d7c6a4;margin-left:8px}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.case-card{border:1px solid var(--line);padding:26px 24px;display:flex;flex-direction:column;background:#faf9f5}.case-card[hidden]{display:none}.case-meta{font-size:12px;letter-spacing:1.5px;display:flex;justify-content:space-between;gap:10px;color:#7b6740}.case-card h3{font-size:31px;line-height:1.12;margin:26px 0 20px;min-height:104px}.case-card h3 em{color:#7b6740}.case-card>p{font-size:12px;color:var(--muted);flex:1}.case-outcome{border-top:1px solid var(--line);padding-top:19px;margin-top:24px}.case-outcome span{display:block;font-size:12px;letter-spacing:1.2px;color:var(--muted)}.case-outcome strong{display:block;font-size:12px;font-weight:500;margin:5px 0 19px}summary{cursor:pointer;list-style:none;font-size:12px}summary::-webkit-details-marker{display:none}.case-card summary{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:12px 0}.case-card details[open] summary span{transform:rotate(45deg)}details p{font-size:12px;line-height:1.7;color:var(--muted);padding-bottom:14px}.opinion-link{border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px;padding-top:17px;gap:10px}.opinion-link span{color:#7b6740}.opinion-link:hover{text-decoration:underline}.case-disclaimer{font-size:12px;color:var(--muted);margin-top:21px;max-width:850px}.contact{background:var(--ink);color:var(--paper);padding:78px 5.2%;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:12%}.contact .eyebrow{color:#c1b18c}.contact h2{margin:20px 0 24px;font-size:58px}.contact h2 em{color:#c4af7e}.contact-copy>p:not(.eyebrow){font-size:13px;color:#bcc7c5}.phone{display:block;font-size:44px;line-height:1.2;margin:29px 0 15px;max-width:355px}.phone span{font:25px var(--sans);color:#c4af7e;margin-left:28px}.email{font-size:14px;color:#d4dcd7;border-bottom:1px solid #687774;padding-bottom:6px}.email span{margin-left:20px;color:#c4af7e}.contact-info{border-left:1px solid #52625f;padding:10px 0 0 42px}.office-label{font-size:12px;letter-spacing:2px;color:#c1b18c}.contact-info h3{font-size:31px;line-height:1.15;margin:23px 0}.contact-info address{font-style:normal;font-size:13px;color:#c9d2cf;margin-bottom:22px}.contact-info>p{font-size:12px;color:#b0bfb9;margin-top:38px;max-width:295px}footer{padding:35px 5.2% 24px}.footer-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:25px}.footer-name{font-family:var(--serif);font-size:23px}.footer-name small{display:block;font:12px var(--sans);letter-spacing:1.8px;margin-top:8px}.footer-top>a:last-child{font-size:12px}.footer-bottom{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;padding-top:20px;font-size:12px;color:var(--muted)}.footer-bottom>p{max-width:480px}.footer-bottom details{max-width:450px;text-align:right}.footer-bottom summary{font-size:12px}.footer-bottom details p{font-size:12px;padding-top:12px;padding-bottom:0}.footer-bottom a{text-decoration:underline}.skip{position:fixed;top:-100px;left:20px;padding:12px;background:var(--ink);color:white;z-index:20}.skip:focus{top:10px}@media(min-width:1500px){body{max-width:1600px;margin:auto}h1{font-size:80px}.hero{min-height:700px}}@media(max-width:1050px){nav{gap:20px}.hero-copy{padding:45px 7% 24px 9%}.hero-actions{gap:16px;align-items:flex-start;flex-direction:column;margin-bottom:30px}.hero-image{min-height:570px}.hero-bottom{flex-direction:column;gap:6px}h2{font-size:47px}.section{padding-top:70px;padding-bottom:70px}.practice{gap:6%}.case-card{padding:22px 18px}.case-card h3{font-size:28px}.about{gap:7%}.about-facts{flex-wrap:wrap}.contact h2{font-size:49px}.contact{gap:7%}}@media(max-width:760px){html{scroll-padding-top:20px}header{padding:18px 6%;flex-wrap:wrap}.brand{font-size:12px}.brand strong{font-size:15px}.menu-toggle{display:block;background:none;border:1px solid #bfc7bd;padding:8px 12px;font-size:12px}.menu-toggle span{margin-left:10px}nav{display:none;flex-basis:100%;align-items:stretch;gap:0;flex-direction:column;padding-top:10px}nav.open{display:flex}nav a{padding:13px 0;border-top:1px solid var(--line)}nav .nav-contact{border:0;border-top:1px solid var(--line);justify-content:space-between}.hero{display:flex;flex-direction:column}.hero-copy{padding:37px 6% 23px}.hero .eyebrow{font-size:12px;letter-spacing:1.5px}h1{font-size:57px;margin-top:25px;letter-spacing:-1.5px}.hero-actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:20px;margin:26px 0 32px}.hero-bottom{flex-direction:row;font-size:12px}.hero-image{margin:0 6% 0;min-height:335px}.hero-image img{object-position:50% 50%}.hero-image figcaption{bottom:26px;left:25px}.hero-image figcaption strong{font-size:33px;margin:12px 0}.hero-image figcaption>span{font-size:12px}.credentials{margin:0 6%;padding:27px 0;grid-template-columns:1fr 1fr;gap:22px}.credentials>div{padding:0;border:0}.credentials>div:last-child{grid-column:1/-1}.credentials strong{font-size:23px}.credentials span{font-size:12px}.section{padding:55px 6%}.practice{grid-template-columns:1fr;gap:30px}h2{font-size:46px}.section-intro>p:last-child{max-width:420px}.practice-row{padding:22px 0;gap:17px}.practice-row h3{font-size:27px}.practice-row p{max-width:300px}.about{grid-template-columns:1fr;gap:35px}.about-mark{min-height:290px}.seal{width:155px;height:155px;font-size:48px}.about-mark>p{margin-top:20px}.about-facts{justify-content:flex-start;gap:30px}.case-heading{display:block}.case-heading>p{max-width:440px;margin-top:24px}.case-filters{margin-top:27px}.case-grid{grid-template-columns:1fr}.case-card{padding:25px}.case-card h3{font-size:35px;min-height:0;margin:23px 0}.case-card>p{font-size:13px}.case-meta{font-size:12px}.opinion-link{font-size:12px}.contact{padding:55px 6%;grid-template-columns:1fr;gap:40px}.contact h2{font-size:46px}.contact-info{border-left:0;border-top:1px solid #52625f;padding:30px 0 0}.contact-info>p{max-width:420px;margin-top:25px}.phone{font-size:43px}.footer-top{align-items:flex-start;gap:15px}.footer-name{font-size:21px}.footer-bottom{flex-direction:column;gap:14px}.footer-bottom details{text-align:left}}@media(max-width:370px){h1{font-size:48px}h2,.contact h2{font-size:40px}.hero-bottom{font-size:12px}.phone{font-size:38px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Readability, keyboard access, and resilient layouts. */
body{font-size:16px}p,address,dd{overflow-wrap:anywhere}h1,h2,h3{overflow-wrap:break-word}
.hero-description,.section-intro>p:last-child,.practice-row p,.about-copy>p:not(.eyebrow),.case-heading>p,.contact-copy>p:not(.eyebrow),.contact-info address{font-size:16px}
nav,.button,.text-link,.email,.about-facts dd{font-size:14px}
.hero-actions{flex-wrap:wrap}.hero-bottom{flex-wrap:wrap}.hero .eyebrow{flex-wrap:wrap}
.eyebrow,.hero-bottom,.about-facts dt,.office-label,.brand small,.footer-name small{letter-spacing:1.3px}
.case-disclaimer,.contact-info>p,.source-note,.footer-bottom,.footer-bottom summary,.footer-bottom details p,.legal-footer{font-size:14px}
.credentials span{font-size:14px}.credentials strong{line-height:1.3}
.brand small{font-size:11px}.hero-image figcaption{right:24px;background:#182c32ed;padding:18px 22px;left:24px;bottom:24px}
.hero-image figcaption strong{font-size:36px}.photo-corner{background:var(--ink);color:var(--paper)}
.about-mark>p{font-size:12px}.about-facts{flex-wrap:wrap}.about-facts dt{font-size:12px}
.text-link,.button,.email,nav a,summary{min-height:44px;align-items:center}.email{display:inline-flex}.menu-toggle{min-width:64px;min-height:44px}
summary{display:flex;align-items:center;gap:12px}summary::after{content:'+';font-size:20px}details[open]>summary::after{content:'−'}
:where(a,button,summary,[tabindex]):focus-visible{outline:3px solid #182c32;outline-offset:4px;box-shadow:0 0 0 7px #f6f4ee}
.contact a:focus-visible,.skip:focus-visible{outline-color:#f6f4ee;box-shadow:0 0 0 7px #182c32}
.contact .text-link:hover,.contact a:hover{color:#f6f4ee;text-decoration:underline}
.experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:38px}
.experience-grid article{border-top:1px solid #b6a071;padding-top:25px}.experience-grid h3{font-size:32px;line-height:1.15;margin:18px 0}.experience-grid p{font-size:16px;color:var(--muted)}.experience-grid .text-link{margin-top:18px}
.footer-links{display:flex;flex-wrap:wrap;gap:16px 28px;margin-top:20px}.footer-links a{display:inline-flex;text-decoration:underline}.footer-bottom details{text-align:left}
.information-page{max-width:850px;padding:60px 6%;margin:auto}.information-page h1{font-size:64px}.information-page h2{font-size:38px;margin-bottom:24px}.information-page section{padding:36px 0;border-top:1px solid var(--line)}.information-page section p{margin:16px 0}.information-page p a{text-decoration:underline;text-underline-offset:3px}.information-nav{display:flex;flex-wrap:wrap;gap:12px 25px;margin:28px 0}.information-nav a{display:inline-flex;text-decoration:underline}.updated,.legal-footer{color:var(--muted);margin-top:20px}
@media(max-width:960px){header{flex-wrap:wrap}#navigation{display:flex;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;padding-top:10px}#navigation a{display:flex;padding:12px 0;border-top:1px solid var(--line)}#navigation .nav-contact{border:0;border-top:1px solid var(--line);justify-content:space-between}.menu-toggle{display:none}.js .menu-toggle{display:block;background:none;border:1px solid #626c6b;color:var(--ink);padding:8px 12px;font-size:14px}.js #navigation{display:none}.js #navigation.open{display:flex}.hero-bottom{flex-direction:column}.experience-grid{grid-template-columns:1fr}.case-heading{display:block}.case-heading>p{max-width:600px;margin-top:24px}.footer-links,.information-nav{display:flex;flex-direction:row;align-items:center}.footer-links a,.information-nav a{border:0;padding:8px 0}}
@media(max-width:760px){.hero .eyebrow{font-size:12px}.hero-bottom{font-size:12px}.hero-image{min-height:375px}.hero-image figcaption strong{font-size:30px}.hero-image figcaption>span{font-size:12px}.about-copy>p:not(.eyebrow){font-size:16px}.credentials{grid-template-columns:1fr}.credentials>div:last-child{grid-column:auto}.contact-info>p{max-width:none}.footer-top{flex-wrap:wrap}.footer-top>a:last-child{font-size:14px;min-height:44px;display:flex;align-items:center}.phone{font-size:39px}.phone span{margin-left:12px}.information-page h1{font-size:49px}.information-page{padding:40px 6%}.information-page h2{font-size:34px}}
@media(forced-colors:active){:where(a,button,summary,[tabindex]):focus-visible{outline:3px solid Highlight;box-shadow:none}.button,.menu-toggle{border:1px solid ButtonText}.photo-shade{display:none}.hero-image figcaption{background:Canvas;color:CanvasText}}
