@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400;500;600&family=Open+Sans:wght@400;500;600;700&display=swap');
:root{--gold:#B8A99A;--ink:#23262a;--muted:#717171;--line:#e6e6e6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--ink);font-family:'Open Sans',Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}img{display:block;max-width:100%}.wrap{max-width:1170px;margin:auto;padding:0 28px}.topbar{background:#f4f4f4;font-size:13px;color:#777;border-bottom:1px solid #eee}.topbar .wrap{display:flex;justify-content:space-between;padding-top:9px;padding-bottom:9px}.topbar a{color:#B8A99A}.header-main{display:flex;align-items:center;justify-content:space-between;gap:35px;min-height:133px}.brand{width:218px;text-align:center;flex-shrink:0}.brand img{width:218px;height:92px;object-fit:contain}.brand>span{display:block;line-height:1;font-size:12px;letter-spacing:5px;color:#B8A99A;margin-top:-2px}.header-note{margin-left:auto;border-left:1px solid var(--line);padding-left:35px}.mini{font-size:11px;letter-spacing:1.4px;color:#8a8a8a}.header-note p{font-family:'EB Garamond',Georgia,serif;font-size:24px;margin:3px 0}.header-note em{color:var(--gold)}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 25px;font-size:12px;letter-spacing:1px;font-weight:700;border:1px solid transparent;transition:background .2s,color .2s;line-height:1.6}.gold{background:var(--gold);color:white}.gold:hover{background:#B8A99A}.menu-toggle{display:none}nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}nav .wrap{display:flex;gap:43px;justify-content:center}nav a{font-size:12px;letter-spacing:1px;font-weight:700;padding:19px 0;position:relative}nav a:hover,nav .active{color:var(--gold)}nav .active:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:3px;background:var(--gold)}.hero{height:600px;position:relative;overflow:hidden;color:white;background:#343a3d}.hero-photo{position:absolute;inset:0;background:url('assets/hero-city-glass.jpg') center/cover;transition:opacity .3s}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,16,22,.8),rgba(10,16,22,.25) 65%,rgba(10,16,22,.07))}.hero-content{position:relative;padding-top:117px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.2px;color:var(--gold)}.hero .eyebrow{color:#B8A99A}.hero h1{font-family:'EB Garamond',Georgia,serif;font-weight:400;font-size:66px;line-height:1.05;margin:24px 0 22px;max-width:680px}.hero p{color:#e4e4e4;line-height:1.9;margin:0 0 30px;font-size:16px}.hero-caption{position:absolute;right:32px;bottom:25px;font-size:10px;letter-spacing:2px;color:#ddd}.statement{background:var(--gold);color:white}.statement .wrap{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-top:27px;padding-bottom:27px}.statement p{font-family:'EB Garamond',Georgia,serif;font-size:25px;margin:0}.outline-light{border-color:#B8A99A;color:white}.outline-light:hover{background:white;color:var(--gold)}.section{padding:90px 0}.section-title{text-align:center;margin-bottom:42px}h2{font-family:'EB Garamond',Georgia,serif;font-size:39px;font-weight:400;line-height:1.2;margin:12px 0 20px}.section-title h2{text-transform:uppercase;font-size:33px;letter-spacing:1px}.rule{display:block;background:var(--gold);width:48px;height:2px;margin:20px 0 25px}.section-title .rule,.quote .rule{margin-left:auto;margin-right:auto}.section-title p{color:var(--muted);margin:0}.practices{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.practice{border:1px solid var(--line);background:#fff;transition:transform .25s,box-shadow .25s}.practice:hover{transform:translateY(-5px);box-shadow:0 10px 25px #00000012}.practice img{width:100%;height:165px;object-fit:cover}.practice>div{padding:20px 19px 24px;position:relative}.practice div>span{position:absolute;right:16px;top:16px;font-size:12px;color:#b7b7b7}.practice h3{font-family:'EB Garamond',Georgia,serif;font-size:21px;font-weight:500;margin:3px 15px 7px 0;line-height:1.2}.practice p{font-size:14px;color:var(--muted);line-height:1.7;margin:0}.firm{background:#f6f6f6}.firm-layout{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.firm-images{position:relative;padding-bottom:22px}.firm-images img{width:100%;height:360px;object-fit:cover}.image-label{position:absolute;bottom:0;left:24px;right:24px;background:var(--gold);color:white;text-align:center;letter-spacing:2px;padding:18px;font-size:12px}.firm-copy h2{font-size:46px}.firm-copy p{color:var(--muted)}.firm-copy .lead{color:#464646;font-family:'EB Garamond',Georgia,serif;font-size:23px;line-height:1.5}.text-link{display:inline-block;font-size:12px;letter-spacing:1px;font-weight:700;color:var(--gold);border-bottom:1px solid var(--gold);padding-bottom:6px;margin-top:10px}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.approach-grid article{border-top:1px solid var(--line);padding-top:27px}.step{font-size:12px;letter-spacing:1.5px;color:var(--gold)}.approach-grid h3{font-family:'EB Garamond',Georgia,serif;font-size:25px;font-weight:500;line-height:1.3}.approach-grid p{color:var(--muted);font-size:15px}.quote{padding:85px 0;background:linear-gradient(#151b23df,#151b23df),url('assets/testimonial.jpg') center/cover;color:white;text-align:center}.quote blockquote{font-family:'EB Garamond',Georgia,serif;font-size:43px;line-height:1.3;margin:26px auto}.quote p{font-size:11px;letter-spacing:2px;color:#c5c5c5}.faq-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:80px}.faq-layout>div>p{color:var(--muted)}details{border-bottom:1px solid var(--line);padding:19px 0}details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;font-size:16px;font-weight:600;list-style:none;padding-right:25px;position:relative}summary:after{content:'+';position:absolute;right:0;font-size:24px;font-weight:400;color:var(--gold);top:-5px}details[open] summary:after{content:'−'}details p{color:var(--muted);font-size:14px;line-height:1.9}.consultation{background:#f4f4f4;border-top:1px solid var(--line)}.consultation-layout{display:grid;grid-template-columns:1fr 1.35fr;gap:75px}.consultation-layout>div>p{color:var(--muted)}.contact-note{font-family:'EB Garamond',Georgia,serif;font-size:25px;line-height:1.5;color:#B8A99A;border-left:2px solid var(--gold);padding-left:24px;margin-top:30px}form{background:white;padding:35px;border:1px solid var(--line)}form h3{font-family:'EB Garamond',Georgia,serif;text-transform:uppercase;font-size:25px;font-weight:400;margin:0 0 25px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:13px;color:#555;margin-bottom:18px}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #ddd;background:#fafafa;padding:12px;color:#333;font-size:14px;border-radius:0}textarea{resize:vertical}input:focus,textarea:focus,select:focus{outline:1px solid var(--gold)}.form-note{font-size:12px;color:#777;margin:0 0 20px}#form-status{font-size:14px;margin-bottom:0;color:#B8A99A}footer{background:#23262a;color:#a9abad}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1.2fr;gap:50px;padding-top:60px;padding-bottom:55px}.footer-brand{font-family:'EB Garamond',Georgia,serif;font-size:28px;color:#B8A99A}.footer-brand span{display:block;font-family:'Open Sans',Arial,sans-serif;font-size:11px;letter-spacing:5px}.footer-main h3{color:white;font-size:12px;letter-spacing:1.5px;margin:0 0 20px}.footer-main a:not(.footer-brand){display:block;font-size:14px;margin:7px 0}.footer-main p{font-size:14px}.footer-bottom{border-top:1px solid #3a3c40;display:flex;justify-content:space-between;padding-top:20px;padding-bottom:20px;font-size:12px;gap:25px}a:hover{color:var(--gold)}.button:hover{color:white}.outline-light:hover{color:var(--gold)}@media(min-width:1500px){.hero{height:660px}.hero-content{padding-top:140px}}@media(max-width:1000px){.header-note{display:none}.practices{grid-template-columns:repeat(2,1fr)}nav .wrap{gap:25px}.firm-layout,.consultation-layout{gap:35px}.faq-layout{gap:35px}.hero h1{font-size:58px}}@media(max-width:700px){.wrap{padding-left:22px;padding-right:22px}.topbar .wrap{justify-content:center}.topbar span{display:none}.header-main{min-height:110px;gap:20px}.brand{width:170px}.brand img{width:170px;height:73px}.header-main>.button{display:none}.menu-toggle{display:block;background:none;border:1px solid #ddd;padding:6px 12px;color:var(--gold);font-size:22px}nav{display:none}nav.open{display:block}nav .wrap{display:flex;flex-direction:column;gap:0;padding-top:8px;padding-bottom:8px}nav a{padding:10px 0}nav .active:after{display:none}.hero{height:540px}.hero-content{padding-top:94px}.hero h1{font-size:49px;line-height:1.08}.hero p{font-size:15px;max-width:340px}.hero-photo{background-position:60% center}.hero-photo:after{background:#141c27a8}.hero-caption{display:none}.statement .wrap{flex-direction:column;align-items:flex-start;padding-top:26px;padding-bottom:30px;gap:20px}.statement p{font-size:24px;line-height:1.4}.section{padding:60px 0}.section-title h2{font-size:29px}.practices{gap:16px}.practice img{height:120px}.practice>div{padding:17px 13px 20px}.practice div>span{display:none}.practice h3{font-size:21px}.practice p{font-size:13px}.firm-layout,.faq-layout,.consultation-layout{grid-template-columns:1fr;gap:38px}.firm-images img{height:280px}.firm-copy h2{font-size:40px}.approach-grid{grid-template-columns:1fr;gap:20px}.approach-grid h3{margin:12px 0}.quote{padding:65px 0}.quote blockquote{font-size:34px;margin-left:0;margin-right:0}.fields{grid-template-columns:1fr;gap:0}form{padding:24px}.footer-main{grid-template-columns:1fr;gap:30px}.footer-bottom{flex-direction:column;gap:8px}.desktop{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Brand asset and gold image overlay, shared by mouse hover and keyboard focus. */
.footer-brand{display:inline-block;width:240px;max-width:100%}.footer-brand img{width:100%;height:auto}.practice-image{display:block;position:relative;overflow:hidden}.practice-image::after{content:"";position:absolute;inset:0;background:rgba(184,169,154,.62);opacity:0;transition:opacity .3s ease;pointer-events:none}.practice:hover .practice-image::after,.practice:focus-visible .practice-image::after{opacity:1}@media(prefers-reduced-motion:reduce){.practice-image::after{transition:none}}

/* Use the original logo alpha as a mask for exact brand color. */
.brand,.footer-brand{position:relative;display:inline-block}.brand img,.footer-brand img{opacity:0}.brand::after,.footer-brand::after{content:"";position:absolute;inset:0;background:#B8A99A;-webkit-mask:url("assets/logo.png") center/contain no-repeat;mask:url("assets/logo.png") center/contain no-repeat;pointer-events:none}

/* Keep the longer hero introduction readable over the cityscape. */
.hero p{max-width:650px}.hero h1{max-width:760px}@media(max-width:700px){.hero h1{font-size:clamp(2rem,7.5vw,3.0625rem)}.hero p{max-width:340px;line-height:1.65}.hero-content{padding-top:75px}}

/* Team members retain the established portrait-left, biography-right styling. */
.team-list{display:grid;gap:75px}.team-member{grid-template-columns:minmax(0,360px) minmax(0,1fr);align-items:start}.team-member .firm-images{width:100%;max-width:360px;margin:0}.team-member .firm-images img{width:100%;height:auto;object-fit:contain}.team-member .firm-copy h2{margin-top:12px}.team-member+.team-member{border-top:1px solid var(--line);padding-top:75px}@media(max-width:1000px){.team-member{grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:35px}}@media(max-width:700px){.team-member{grid-template-columns:1fr;gap:38px}.team-member .firm-images{max-width:320px}.team-list{gap:50px}.team-member+.team-member{padding-top:50px}}



/* Mission statement follows the site's existing editorial typography. */
.mission-copy{max-width:900px;margin:0 auto;color:var(--muted)}.mission-copy p{margin:0 0 24px}.mission-copy .lead{font-family:'EB Garamond',Georgia,serif;font-size:25px;line-height:1.5;color:#464646}.mission-copy h3{font-family:'EB Garamond',Georgia,serif;font-size:30px;font-weight:400;line-height:1.3;color:var(--ink);margin:40px 0 20px}.mission .mission-subtitle{font-family:'EB Garamond',Georgia,serif;font-size:24px;color:var(--gold);line-height:1.4}.mission .section-title{margin-bottom:38px}@media(max-width:700px){.mission-copy h3{font-size:26px}.mission-copy .lead{font-size:23px}.mission .mission-subtitle{font-size:22px}}

.team-email{margin-top:28px}.team-email a{color:var(--gold);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}

.footer-main p em{color:var(--gold)}

.referrals-layout{grid-template-columns:1fr}.referrals-layout>div{max-width:800px}.referral-email{color:var(--gold);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}

/* Shared interior page titles and space for forthcoming content. */
.page-heading{background:#f4f4f4;border-bottom:1px solid var(--line);padding:50px 0 35px}.page-heading h1{font-family:'EB Garamond',Georgia,serif;font-size:46px;font-weight:400;line-height:1.2;margin:0}.page-heading .rule{margin-bottom:0}.page-placeholder{min-height:350px;color:var(--muted)}.page-heading+.firm{padding-top:65px}@media(max-width:700px){.page-heading{padding:35px 0 28px}.page-heading h1{font-size:38px}.page-placeholder{min-height:250px}}

/* Two-column client logo gallery; preserve each logo's proportions and colors. */
.client-logo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1000px;margin:0 auto;padding:0;list-style:none}.client-logo-card{display:flex;align-items:center;justify-content:center;min-height:250px;padding:28px 32px;background:white;border:1px solid var(--line);border-bottom:3px solid var(--gold)}.client-logo-card img{display:block;width:100%;max-width:360px;height:180px;object-fit:contain}.client-logo-card:first-child img{max-width:200px}.client-logo-card:last-child:nth-child(odd){grid-column:1 / -1;width:calc((100% - 28px)/2);justify-self:center}@media(max-width:700px){.client-logo-grid{grid-template-columns:1fr;gap:20px}.client-logo-card{min-height:210px;padding:24px}.client-logo-card img{height:160px}.client-logo-card:last-child:nth-child(odd){grid-column:auto;width:100%}}
