@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--ink:#132d2f;--cream:#f4f1e9;--gold:#b5a078;--line:#d5d6ca}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{color:#8c7043}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b58f47;outline-offset:6px}header{display:flex;align-items:center;justify-content:space-between;padding:25px 5%;background:var(--cream);border-bottom:1px solid var(--line);gap:30px}.brand{font-family:Georgia,serif;font-size:30px;letter-spacing:4px;line-height:1.1}.brand span{display:block;font:10px 'DM Sans',Arial,sans-serif;letter-spacing:5.3px;margin-top:9px}nav{display:flex;align-items:center;gap:27px;font-size:12px}nav a[aria-current]{text-decoration:underline;text-underline-offset:7px}.navcta{border:1px solid var(--ink);padding:13px 19px}.menu{display:none}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:600}h1,h2,h3{font-weight:400;line-height:1.05}h1,h2{font-family:'Libre Caslon Display',Georgia,serif}h1{font-size:clamp(54px,6.3vw,100px);letter-spacing:-2px;margin:25px 0}h2{font-size:clamp(40px,4.1vw,64px);margin:20px 0 28px}h3{font-size:25px;margin:15px 0}p{line-height:1.8}em{color:#c3af88;font-weight:400}.hero{position:relative;background:var(--ink);color:var(--cream);overflow:hidden;min-height:680px;padding:82px 5% 0}.herocopy{position:relative;z-index:2;width:70%}.herocopy p{font-size:16px;color:#d4dcd5;margin-bottom:32px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:34px;background:#c5b18b;color:#132d2f;padding:16px 24px;font-size:12px;font-weight:600}.button:hover{background:#dfccaa;color:#132d2f}.herobottom{position:relative;z-index:2;display:flex;justify-content:space-between;border-top:1px solid #49605b;margin-top:66px;padding:22px 0;font-size:10px;letter-spacing:1.8px}.architecture{position:absolute;right:0;top:0;width:45%;height:100%;overflow:hidden;background:linear-gradient(110deg,#132d2f,#314745 60%,#52615a)}.sun{position:absolute;width:440px;height:440px;border:1px solid #a5a18a55;border-radius:50%;top:50px;left:80px}.pillar{position:absolute;background:linear-gradient(90deg,#a6a798,#4f625d 45%,#273d3a 75%);width:78px;height:530px;top:80px;transform:skewY(-16deg);box-shadow:25px 12px 30px #081e2266}.p1{left:55px;top:180px}.p2{left:180px;top:130px}.p3{left:305px;top:80px}.p4{left:430px;top:30px}.steps{position:absolute;bottom:0;left:0;width:100%;height:100px;background:repeating-linear-gradient(0deg,#193432 0px,#61746a 2px,#253f3b 25px);transform:skewY(-13deg)}.architecture>span{position:absolute;right:25px;top:25px;writing-mode:vertical-rl;font-size:8px;letter-spacing:3px;color:#bcc1b0}.intro{padding:90px 10%;display:grid;grid-template-columns:1.2fr 1fr;column-gap:90px}.intro>.eyebrow{grid-column:1/-1}.intro p{padding-top:13px;color:#526461}.practice{padding:60px 10% 90px;background:#e9e9df}.sectionhead{display:flex;justify-content:space-between;align-items:start;margin-bottom:40px}.sectionhead h2{margin-top:0;width:55%}.practiceitem{display:grid;grid-template-columns:70px 1fr 50px;gap:20px;border-top:1px solid #b6beb3;padding:35px 0}.practiceitem h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:42px}.practiceitem p{max-width:610px;color:#536561}.number{font-size:12px;padding-top:15px}.tags{font-size:9px;letter-spacing:1.7px}.arrow{font-size:36px}.approach{padding:90px 10%;display:grid;grid-template-columns:1fr 1fr;gap:100px}.approach article{border-top:1px solid var(--line);padding:25px 0}.approach article span{font-size:10px;letter-spacing:2px}.approach article p{color:#526461;font-size:14px}.textlink{display:inline-block;font-size:13px;border-bottom:1px solid #819088;padding-bottom:7px}.closing{background:#25433f;color:var(--cream);text-align:center;padding:70px 5% 80px}.closing h2{margin:25px 0 32px}footer{padding:50px 5% 25px}.footgrid{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:40px;align-items:start}.footgrid p{font-size:12px;margin-top:0}.legal{border-top:1px solid var(--line);margin-top:35px;padding-top:25px;font-size:10px;color:#65716a}.legal a{text-decoration:underline}.pagehero{background:var(--ink);color:var(--cream);padding:70px 10%}.pagehero p{max-width:650px;color:#d2d9d1}.contentgrid{display:grid;grid-template-columns:1fr 2fr;gap:90px;padding:80px 10%}.contentgrid aside{font-size:10px;letter-spacing:1.5px;line-height:2.5}.contentgrid h2{font-size:48px}.contentgrid h3{margin-top:36px}.contentgrid p{color:#4c605a}.contentgrid .button{letter-spacing:0;white-space:nowrap}.monogram{background:#e2e4d9;border:1px solid #c5ccbd;width:170px;height:190px;display:grid;place-items:center;font-family:Georgia,serif;font-size:65px}.matterlist,.prose{max-width:1000px;margin:auto;padding:70px 8%}.matterlist article{border-top:1px solid var(--line);padding:35px 0 50px}.matterlist h2{font-size:45px}.muted{color:#65726a;font-size:12px}.contactgrid{padding:80px 10%;display:grid;grid-template-columns:1.3fr 1fr;gap:80px}.contactgrid h2{font-size:42px}.contactgrid>div>p{margin-bottom:32px}.note{background:#e6e8de;padding:35px}.note p{font-size:14px}.prose h3{margin-top:40px}details{border-top:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:500}.skip{position:absolute;top:-100px;left:20px;z-index:10;background:white;padding:10px}.skip:focus{top:10px}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:1000px){nav{gap:14px}header{gap:15px;padding:22px 4%}nav a{font-size:10px}.hero{min-height:630px}.herocopy{width:90%}.intro,.approach{gap:40px}.contentgrid{gap:40px}.contactgrid{gap:35px}}@media(max-width:740px){header{flex-wrap:wrap}.brand{font-size:25px}.menu{display:block;background:none;border:1px solid #b0bbb0;color:var(--ink);padding:10px}nav{display:none;width:100%;align-items:stretch}nav.open{display:flex;flex-direction:column;gap:0}nav a{font-size:14px;padding:12px 0}.navcta{padding:12px}.hero{padding:65px 6% 0;min-height:650px}.herocopy{width:100%}h1{font-size:60px}.architecture{width:60%;opacity:.35;right:-80px}.herobottom{margin-top:65px;font-size:8px;gap:20px}.intro,.approach,.contentgrid,.contactgrid{display:block;padding:60px 7%}.intro p{padding:0}.sectionhead{display:block}.sectionhead h2{width:100%;margin-top:20px}.practice{padding:55px 7%}.practiceitem{grid-template-columns:22px 1fr 20px;gap:12px}.practiceitem h3{font-size:34px}.tags{font-size:8px}.arrow{font-size:24px}.approach>div+div{margin-top:40px}.footgrid{grid-template-columns:1fr;gap:25px}.pagehero{padding:55px 7%}.pagehero h1{font-size:56px}.contentgrid aside{margin-bottom:35px}.contactgrid>div+div{margin-top:40px}.contactgrid h2{font-size:34px}.contactgrid a{overflow-wrap:anywhere}.closing h2{font-size:45px}.matterlist h2{font-size:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.offense-section{padding:75px 7%;background:#e9e9df}.offense-section .sectionhead{gap:60px}.offense-section .sectionhead h2{width:auto;margin-top:20px}.offense-section .sectionhead>p{max-width:360px;color:#526461}.offense-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid #bdc6b9;border-top:1px solid #bdc6b9}.offense-card{padding:30px;border-right:1px solid #bdc6b9;border-bottom:1px solid #bdc6b9;display:flex;flex-direction:column;align-items:start;transition:background .15s}.offense-card:hover{background:#f4f1e9;color:var(--ink)}.offense-card h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:34px;line-height:1.15}.offense-card p{font-size:14px;color:#526461;flex:1}.guide-source{border-top:1px solid var(--line);margin-top:45px;padding-top:30px}.guide-source a{text-decoration:underline;font-size:13px}@media(max-width:1000px){.offense-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:740px){.offense-grid{grid-template-columns:1fr}.offense-section{padding:55px 7%}.offense-card{padding:25px}.offense-section .sectionhead>p{max-width:none}}

.civil-jump{display:flex;flex-wrap:wrap;gap:25px;padding:20px 10%;border-bottom:1px solid var(--line);font-size:12px}.public-focus{background:#25433f;color:var(--cream);padding:75px 10%;display:grid;grid-template-columns:1fr 1fr;gap:90px}.public-focus p{color:#d0d9d0}.public-focus article{padding:20px 0;border-top:1px solid #60756a}.public-focus article p{font-size:14px}.public-focus>div>p{margin-bottom:30px}@media(max-width:740px){.public-focus{display:block;padding:55px 7%}.public-focus>div+div{margin-top:40px}.civil-jump{padding:20px 7%;gap:15px}}

.history-list{padding:65px 10%}.history-row{display:grid;grid-template-columns:2fr 1fr;gap:65px;border-top:1px solid var(--line);padding:40px 0}.history-row h2{font-size:44px}.history-row p{max-width:680px}.history-row>div+div{padding-top:8px}.result-label{display:inline-block;background:#e0e5d8;border-left:3px solid #a08c61;padding:10px 14px;font-size:12px;letter-spacing:0;line-height:1.7}.award-table{width:100%;border-collapse:collapse;margin:35px 0;font-size:14px}.award-table caption{text-align:left;font-size:12px;color:#526461;padding-bottom:12px}.award-table th{font-weight:400;text-align:left}.award-table td{text-align:right;white-space:nowrap}.award-table th,.award-table td{padding:12px 8px;border-bottom:1px solid var(--line)}.award-table .total{background:#e0e5d8;font-weight:600}nav{gap:20px}@media(max-width:1000px){nav{gap:11px}}@media(max-width:740px){.history-list{padding:50px 7%}.history-row{display:block;padding:30px 0}.history-row>div+div{margin-top:25px}.history-row h2{font-size:36px}}

.criminal-result{display:grid;grid-template-columns:2fr 1fr;gap:50px;padding:30px 0;border-top:1px solid var(--line)}.criminal-result h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:34px;line-height:1.15}.criminal-result p{margin-bottom:0}.criminal-result>div+div{padding-top:20px}@media(max-width:740px){.criminal-result{display:block}.criminal-result>div+div{padding-top:15px}.criminal-result h3{font-size:30px}}

.reference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:40px 0}.reference-card{margin:0;padding:30px;background:#ebe8df;border-top:2px solid #a69b7c}.reference-card blockquote{margin:0 0 24px;font-size:18px;line-height:1.7}.reference-card figcaption{font-size:13px;font-weight:600;letter-spacing:.04em}@media(max-width:700px){.reference-grid{grid-template-columns:1fr}.reference-card{padding:24px}}

.office-location{padding:0 7vw 80px}.office-location figure{margin:0}.office-location img{width:100%;height:auto;display:block;max-height:650px;object-fit:cover}.office-location figcaption{padding:18px 0;font-size:14px;color:#536361}@media(max-width:700px){.office-location{padding:0 6vw 48px}.office-location img{min-height:270px;object-fit:cover}}

/* Attorney portrait */
.hero{min-height:760px}.hero .herocopy{width:59%;padding-bottom:30px}.hero h1{font-size:clamp(48px,5.6vw,88px)}.hero-portrait{position:absolute;right:5%;top:48px;bottom:92px;width:32%;margin:0}.hero-portrait img{display:block;width:100%;height:calc(100% - 50px);object-fit:cover;object-position:center top;border:1px solid #65756b}.hero-portrait figcaption{padding-top:12px;font-size:13px;letter-spacing:.03em;line-height:1.4}.hero-portrait figcaption span{display:block;color:#c3cfc4;font-size:10px;margin-top:4px;letter-spacing:.12em}.hero .herobottom{margin-top:72px}.attorney-portrait{display:block;width:100%;max-width:300px;height:auto;margin-bottom:24px;border:1px solid var(--line)}
@media(max-width:1000px) and (min-width:741px){.hero{min-height:690px;padding-top:65px}.hero .herocopy{width:58%}.hero h1{font-size:54px}.hero-portrait{width:32%;top:65px;bottom:105px}.hero .herocopy p{max-width:360px}.hero .herobottom{margin-top:50px}}
@media(max-width:740px){.hero{min-height:0;padding-top:48px}.hero .herocopy{width:100%;padding-bottom:0}.hero h1{font-size:clamp(45px,10vw,60px)}.hero-portrait{position:relative;right:auto;top:auto;bottom:auto;width:min(100%,390px);margin:36px auto 0}.hero-portrait img{height:auto;aspect-ratio:4/5;object-fit:cover}.hero .herobottom{margin-top:30px}.attorney-portrait{max-width:300px}}
@media(min-width:741px){.hero .herobottom{position:absolute;bottom:0;left:5%;right:5%;margin-top:0}}

.hero-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.hero-actions .references-button{background:transparent;color:var(--cream);border:1px solid #c5b18b;gap:20px}.hero-actions .references-button:hover{background:#c5b18b;color:var(--ink)}@media(max-width:740px){.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .button{width:100%;max-width:390px}}
