/* Westmont staging additions: preserve the original brand system. */
:root{--w:1240px;--serif:'Cormorant Garamond',Georgia,serif}
body{overflow-wrap:break-word}
main{min-height:50vh}
.preview-bar{background:#050F1C;color:#e7e4db;font-size:11px;letter-spacing:.08em;padding:8px 24px;display:flex;justify-content:center;gap:24px;line-height:1.5}
.preview-bar a{color:inherit;text-underline-offset:3px}
.hdr-in{gap:24px}
.nav{gap:22px}
.nav a{font-size:13px}
.nav a.btn{font-size:11px;padding-inline:21px}
.brand{flex-shrink:0}
.brand-word{font-size:22px}
.hero-frame{margin-block:42px;padding:60px 62px}
.hero .h1{max-width:15ch;font-size:clamp(48px,6.5vw,84px)}
.hero-lede{max-width:54ch}
.hero-ghost.em{right:25px;width:310px;opacity:.09}
.docket{margin-top:54px}
.docket .q{font-size:23px}
.sect{padding-block:82px}
.page-intro{padding-block:72px 66px}
.page-intro .micro{margin-bottom:22px}
.page-intro h1{max-width:20ch;font-size:clamp(44px,6vw,74px)}
.page-intro .lede{margin-top:25px;max-width:58ch}
.index-num{display:block;font:400 40px var(--serif);color:var(--ink-soft);margin-bottom:16px}
.three-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px}
.three-cols article{border-top:1px solid var(--gold);padding-top:22px}
.three-cols h3{margin-bottom:14px}
.three-cols p{font-size:15.5px}
.split-copy{display:grid;grid-template-columns:1fr 1fr;gap:60px}
.split-copy .tel-lg{display:inline-block}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.team-grid:has(> :nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));max-width:810px}
.team-card{border:1px solid var(--hair);background:#fff;min-width:0}
.portrait-link{display:block;text-decoration:none;overflow:hidden}
.portrait{aspect-ratio:5/6;overflow:hidden;background:var(--navy);position:relative}
.portrait img{width:100%;height:100%;object-fit:cover;object-position:center 25%}
.portrait.monogram{background:linear-gradient(145deg,#0d2a48,#081e35 60%,#050f1c);display:flex;align-items:center;justify-content:center;flex-direction:column;border-bottom:2px solid var(--gold)}
.monogram::after{content:'';position:absolute;inset:17px;border:1px solid rgba(191,164,106,.4)}
.monogram svg{position:absolute;width:80%;height:80%;opacity:.09}
.monogram span{font:400 clamp(72px,8vw,110px)/1 var(--serif);letter-spacing:.04em;color:var(--paper);z-index:1}
.monogram i{font:600 9px var(--sans);letter-spacing:.3em;color:#d6cbb1;margin-top:24px;font-style:normal;z-index:1}
.team-card-body{padding:26px 26px 24px}
.team-card-body .micro{font-size:9px;letter-spacing:.12em;line-height:1.65;min-height:30px}
.team-card h3{margin-block:12px 14px;font-size:30px}
.team-card h3 a{text-decoration:none}
.team-card h3 a:hover{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:6px}
.team-card-body>p:not(.micro){font-size:14.5px;min-height:75px}
.team-card-foot{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--hair);margin-top:23px;padding-top:20px}
.team-card-foot .arrow-link{font-size:12px}
.phone-small{font-size:12px;font-weight:600;text-decoration:none}
.phone-small:hover{text-decoration:underline}
.breadcrumb{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--ink-soft);margin-bottom:38px}
.breadcrumb a{text-underline-offset:4px}
.profile-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr);gap:80px;align-items:center}
.profile-hero .portrait{width:100%;max-width:360px;justify-self:end}
.profile-hero h1{font-size:clamp(44px,5.5vw,70px)}
.profile-contact{display:grid;grid-template-columns:110px 1fr;gap:12px 20px;margin-top:30px;font-size:15px}
.profile-contact dt{font:600 10px var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--ink-soft);padding-top:5px}
.profile-contact a{text-decoration:none}
.profile-contact a:hover{text-decoration:underline;text-underline-offset:4px}
.profile-body{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:80px;align-items:start}
.prose{max-width:70ch}
.prose p+p{margin-top:22px}
.prose h3{margin-top:30px;margin-bottom:16px}
.profile-facts{border:1px solid var(--hair);padding:28px;background:rgba(8,30,53,.025)}
.profile-facts h3{margin-bottom:18px}
.profile-facts dt{font:700 10px var(--sans);text-transform:uppercase;letter-spacing:.14em;margin-top:22px;color:var(--ink-soft)}
.profile-facts dd{margin-top:7px;font-size:14px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.service-grid article{border:1px solid var(--hair);padding:32px}
.service-grid h2{margin-block:22px 18px}
.service-grid p:not(.micro){font-size:15px}
.service-grid .arrow-link{margin-top:26px}
.check-list{padding:0;list-style:none;border-top:1px solid var(--gold-soft)}
.check-list li{padding:20px 0 20px 26px;border-bottom:1px solid var(--gold-faint);position:relative}
.check-list li::before{content:'—';position:absolute;left:0;color:var(--gold)}
.field-wide{grid-column:1/-1}
.field select:focus{outline:2px solid var(--navy);outline-offset:1px}
.field input,.field select,.field textarea{font-size:16px}
.inquiry-result{margin-top:34px;border:1px solid var(--gold-soft);padding:28px}
.inquiry-result[hidden]{display:none}
.inquiry-result p{margin-top:14px}
.inquiry-result dl{display:grid;grid-template-columns:95px 1fr;gap:12px 18px;padding-block:24px}
.inquiry-result dt{font-weight:600}
.inquiry-result dd{white-space:pre-wrap;overflow-wrap:anywhere}
.ftr a:focus-visible{outline-color:var(--gold)}
.faq summary:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.faq summary{align-items:center}
.burger{z-index:110}
.burger[aria-expanded=true] span{background:var(--paper)}
.nav a{min-height:44px;display:flex;align-items:center}
.nav .btn{white-space:normal;text-align:center}
@media(min-width:1120px) and (max-width:1240px){.nav{gap:16px}.brand-word{font-size:19px}.brand svg{width:32px}.brand{gap:10px}.nav a.btn{padding-inline:15px}.container{padding-inline:30px}}
@media(max-width:1119px){.nav a{font-size:29px;color:var(--paper)}.nav a.btn{font-size:12px}.nav a.btn::after{border-color:var(--gold)}.nav{overflow:auto;max-height:100dvh}.hdr-in{min-height:72px}.burger{display:block}}
@media(max-width:900px){.hero-frame{padding:40px 32px}.three-cols{gap:24px}.team-grid{gap:18px}.team-card-body{padding:20px}.team-card-body>p:not(.micro){min-height:100px}.split-copy,.profile-body{gap:36px}.profile-hero{gap:36px}.service-grid{grid-template-columns:1fr}.service-grid article{padding:28px}.profile-contact{grid-template-columns:90px 1fr;font-size:14px}}
@media(max-width:680px){.sect{padding-block:55px}.page-intro{padding-block:45px}.hero-frame{margin-block:22px;padding:34px 25px}.hero .h1{font-size:54px}.hero-ghost.em{width:230px;right:-40px}.hero-cta{gap:22px}.hero-cta .gold-display{font-size:25px}.docket{margin-top:38px}.docket .q{max-width:100%}.docket a{padding-block:20px}.hero-lede{font-size:17px}.three-cols,.team-grid,.team-grid:has(> :nth-child(2):last-child),.split-copy,.profile-hero,.profile-body{grid-template-columns:1fr}.three-cols{gap:28px}.team-grid{gap:28px;max-width:460px;margin-inline:auto}.portrait{aspect-ratio:6/5}.profile-hero .portrait{max-width:none;width:100%;aspect-ratio:6/5;grid-row:2}.profile-hero h1{font-size:50px}.team-card-body>p:not(.micro){min-height:0}.team-card-body .micro{min-height:0}.brand-word{font-size:20px}.brand svg{width:32px;height:38px}.brand-sub{font-size:7px}.brand{gap:11px}.preview-bar{justify-content:space-between;padding:7px 18px;font-size:10px;gap:10px}.cside{padding:26px}.contact-grid{gap:32px}.plate{padding:36px 24px}.profile-contact{grid-template-columns:90px 1fr}.inquiry-result dl{grid-template-columns:1fr;gap:5px}.inquiry-result dd{margin-bottom:15px}}

/* Four practice areas, balanced across two rows. */
@media(min-width:901px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:821px){.docket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.docket a:nth-child(3){border-left:0}.docket a:nth-child(n+3){border-top:1px solid var(--gold-faint)}}

.service-people{display:block;font:500 12px/1.7 var(--sans);margin-top:18px;color:var(--ink-soft)}
.docket .service-people{color:var(--pp-soft);max-width:42ch}
