:root{--navy:#14213d;--parch:#f5efe0;--brass:#b08d3e;--ink:#1a1a18;--line:#d8cfae;--muted:#5c5746}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--parch);color:var(--ink);font-family:'Libre Franklin',sans-serif;font-weight:300;line-height:1.7}
.eyebrow{font-size:.68rem;letter-spacing:.34em;text-transform:uppercase;font-weight:600}
header{background:var(--navy);color:var(--parch);text-align:center;padding:0 5vw}
.topbar{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid rgba(245,239,224,.22);font-size:.68rem;letter-spacing:.26em;text-transform:uppercase}
.topbar a{color:var(--parch);text-decoration:none}
.firm{padding:38px 0 10px;position:relative}
.firm:before,.firm:after{content:"";position:absolute;top:14px;bottom:14px;width:1px;background:var(--brass);opacity:.7}
.firm:before{left:12%}.firm:after{right:12%}
.monogram{font-family:'EB Garamond',serif;font-size:.9rem;letter-spacing:.4em;color:var(--brass)}
.firm h1{font-family:'EB Garamond',serif;font-weight:500;font-size:2.9rem;letter-spacing:.06em;line-height:1.1;margin:10px 0 6px}
.firm p{font-size:.7rem;letter-spacing:.42em;text-transform:uppercase;color:#cfc7a8}
nav{padding:20px 0 26px}
nav a{color:var(--parch);text-decoration:none;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;margin:0 18px;font-weight:500}
nav a:hover{color:var(--brass)}
.hero{text-align:center;padding:64px 6vw 52px;border-bottom:3px double var(--brass);background-image:linear-gradient(90deg,transparent 49.85%,rgba(176,141,62,.18) 49.85%,rgba(176,141,62,.18) 50.15%,transparent 50.15%)}
.hero .eyebrow{color:var(--brass)}
.hero h2{font-family:'EB Garamond',serif;font-weight:500;font-size:3.4rem;line-height:1.08;max-width:760px;margin:18px auto}
.hero h2 em{font-style:italic}
.hero p{max-width:560px;margin:0 auto;color:var(--muted)}
.cta{display:inline-block;margin-top:30px;background:var(--navy);color:var(--parch);text-decoration:none;padding:15px 36px;font-size:.74rem;letter-spacing:.26em;text-transform:uppercase;font-weight:600;border:1px solid var(--navy)}
.cta.light{background:transparent;color:var(--navy);border-color:var(--brass);margin-left:10px}
.practice{padding:64px 6vw;max-width:1020px;margin:0 auto}
.sec-head{text-align:center;margin-bottom:36px}
.sec-head h2{font-family:'EB Garamond',serif;font-weight:500;font-size:2.3rem;margin-top:8px}
.rule{width:54px;height:1px;background:var(--brass);margin:16px auto 0}
.areas{border-top:1px solid var(--ink)}
.area{display:grid;grid-template-columns:76px 240px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid var(--line);align-items:baseline}
.rn{font-family:'EB Garamond',serif;font-size:1.5rem;color:var(--brass);text-align:center}
.area h3{font-family:'EB Garamond',serif;font-weight:600;font-size:1.35rem}
.area p{color:#3d3a2f;font-size:.95rem}
.consult{background:var(--navy);color:var(--parch);padding:56px 6vw;text-align:center}
.consult h2{font-family:'EB Garamond',serif;font-weight:500;font-size:2.4rem}
.consult p{color:#d9d0b2;max-width:520px;margin:14px auto 0}
.consult .cta{background:var(--brass);border-color:var(--brass);color:#fff}
.attorneys{padding:64px 6vw;max-width:1020px;margin:0 auto}
.atty-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--line);border:1px solid var(--line)}
.atty{background:var(--parch);padding:38px 34px}
.atty .init{font-family:'EB Garamond',serif;font-size:2rem;color:var(--brass);border-bottom:1px solid var(--brass);display:inline-block;padding-bottom:6px}
.atty h3{font-family:'EB Garamond',serif;font-size:1.6rem;font-weight:600;margin:14px 0 4px}
.atty .cred{font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);font-weight:600}
.atty p{margin-top:14px;font-size:.95rem;color:#3d3a2f}
.story{padding:0 6vw 64px;max-width:820px;margin:0 auto;text-align:center}
.story h2{font-family:'EB Garamond',serif;font-weight:500;font-size:2rem;line-height:1.3}
.story p{color:var(--muted);margin-top:16px}
.reviews{background:#efe8d2;padding:60px 6vw;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:1020px;margin:30px auto 0}
.rev{background:var(--parch);border-top:3px solid var(--brass);padding:26px 22px}
.stars{color:var(--brass);letter-spacing:.2em}
.rev p{font-family:'EB Garamond',serif;font-style:italic;font-size:1.08rem;line-height:1.5;margin:12px 0}
.rev cite{font-style:normal;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}
.visit{padding:56px 6vw;display:grid;grid-template-columns:repeat(3,1fr);gap:36px;max-width:1020px;margin:0 auto;text-align:center}
.visit h4{font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--brass);margin-bottom:10px;font-weight:600}
footer{background:var(--ink);color:#bdb49a;padding:30px 6vw;text-align:center;font-size:.78rem}
footer .disc{font-size:.68rem;color:#8a846e;max-width:680px;margin:10px auto 0;line-height:1.6}
@media(max-width:820px){.firm h1{font-size:2rem}.hero h2{font-size:2.3rem}.area{grid-template-columns:48px 1fr}.area p{grid-column:2}.atty-grid,.rev-grid,.visit{grid-template-columns:1fr}.topbar{justify-content:center}.topbar span:last-child{display:none}nav a{margin:0 8px}.cta.light{margin-left:0;margin-top:10px}}
