/* Lawyer profile only; shared header, footer, and homepage keep their existing rules. */
.ld-profile { --ld-profile-gold: #c69642; --ld-profile-surface: #f5f4fa; }
.ld-profile-hero { position: relative; overflow: hidden; color: #fff; background: var(--ld-navy); background-image: url('../images/profile-contours.svg'), radial-gradient(ellipse at 57% 40%, #ffffff0c, transparent 65%), linear-gradient(115deg, #00000024, transparent 60%); background-size: cover; }
.ld-profile-hero__inner { min-height: 430px; display: grid; grid-template-columns: minmax(0, 1fr) 310px; align-items: center; gap: 70px; padding-block: 44px; }
@media (prefers-reduced-motion: no-preference) {
  .ld-profile-hero__copy { animation: ld-profile-hero-arrive 900ms cubic-bezier(.22, 1, .36, 1) 80ms backwards; }
  .ld-profile-hero__portrait { animation: ld-profile-hero-fade 1100ms ease 180ms backwards; }
  .ld-profile-contact > *, .ld-profile-mobile-contact > * { animation: ld-profile-hero-fade 1100ms ease 180ms backwards; }
  .ld-profile-hero__recognized, .ld-profile-hero__summary, .ld-profile-hero .ld-mobile-perspective { animation: ld-profile-hero-fade 1000ms ease 1200ms backwards; }
}
@keyframes ld-profile-hero-arrive {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes ld-profile-hero-fade {
  from { opacity: 0; }
  to { opacity: 1; }
}
.ld-profile-hero h1 { font: 400 clamp(36px, 3.7vw, 49px)/1.15 var(--ld-serif); letter-spacing: -.015em; }
.ld-profile-hero__firm { margin-top: 6px; font: italic 20px/1.4 var(--ld-serif); color: #eef0f5; }
.ld-profile-hero__firm::after { content: ''; display: block; height: 2px; width: 40px; background: var(--ld-profile-gold); margin-top: 14px; }
.ld-profile-hero__details { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 27px; font: 21px/1.35 var(--ld-serif); }
.ld-profile-hero__details span { display: inline-flex; align-items: center; gap: 10px; }
.ld-profile-hero__details span + span { border-left: 1px solid #ffffff80; padding-left: 18px; }
.ld-profile-hero__details svg { width: 28px; height: 28px; flex: 0 0 28px; color: #d4a04a; }
.ld-profile-office-separator { padding-inline: .35em; color: #d4a04a; }
.ld-profile-hero__detail-text { font: inherit; }
.ld-profile-hero__summary { margin-top: 35px; max-width: 650px; font: 18px/1.55 var(--ld-serif); color: #f2f3f6; }
.ld-profile-hero__summary p + p { margin-top: 12px; }
.ld-profile-hero__summary p { font-style: italic; }
/* Keep the existing image box/crop while replacing only the visible ring. */
.ld-profile-hero__portrait { position: relative; aspect-ratio: 1; border: 5px solid transparent; border-radius: 50%; background: transparent; }
.ld-profile-hero__portrait::after { content: ''; position: absolute; inset: -3px; border: 4px solid var(--ld-profile-gold); border-radius: 50%; pointer-events: none; }
.ld-profile-hero__portrait img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; border-radius: 50%; }
.ld-profile-contact { display: flex; justify-content: center; align-items: center; gap: 31px; margin-top: 20px; color: #e9edf4; }
.ld-profile-contact span { display: block; width: 29px; height: 29px; }
.ld-profile-contact > a { display: block; width: 29px; height: 29px; color: inherit; }
.ld-profile-contact > a:hover, .ld-profile-contact > a:focus-visible { color: var(--ld-profile-gold); }
.ld-profile-contact > a:focus-visible { outline: 2px solid var(--ld-profile-gold); outline-offset: 5px; }
.ld-profile-contact svg { width: 100%; height: 100%; }
.ld-profile-contact { position: relative; min-height: 29px; }
.ld-profile-contact > *, .ld-profile-mobile-contact > * { transition: opacity .3s ease, color .3s ease; }
.ld-profile-contact > button:hover, .ld-profile-contact > button:focus-visible,
.ld-profile-contact > span:hover, .ld-profile-contact > span:focus-visible,
.ld-profile-mobile-contact > button:hover, .ld-profile-mobile-contact > button:focus-visible,
.ld-profile-mobile-contact > a:focus-visible { color: var(--ld-profile-gold); }
.ld-profile-phone { display: flex; align-items: center; justify-content: center; }
.ld-profile-phone button { display: flex; align-items: center; justify-content: center; padding: 0; width: 29px; height: 29px; border: 0; background: none; color: inherit; cursor: pointer; transition: transform .35s ease, color .3s ease; }
.ld-profile-phone a { position: absolute; top: 50%; left: calc(50% + 20px); color: inherit; white-space: nowrap; font: 400 16px/1.4 var(--ld-sans); opacity: 0; visibility: hidden; pointer-events: none; transform: translate(0, -50%); transition: opacity .3s ease, transform .35s ease, visibility .3s; }
.ld-profile-phone a[hidden] { display: none; }
.ld-profile-phone button:focus-visible, .ld-profile-phone a:focus-visible { outline: 2px solid var(--ld-profile-gold); outline-offset: 4px; }
.ld-profile-contact--phone-open > :not(.ld-profile-phone) { opacity: 0; pointer-events: none; }
.ld-profile-contact--phone-open [data-phone-toggle] { color: var(--ld-profile-gold); transform: translateX(calc(-1 * var(--ld-phone-shift))); }
.ld-profile-contact--phone-open [data-phone-number] { opacity: 1; visibility: visible; pointer-events: auto; transform: translate(calc(-1 * var(--ld-phone-shift)), -50%); }
.ld-profile-mobile-contact { position: relative; }
.ld-profile-mobile-contact .ld-profile-phone button { width: auto; height: auto; flex-direction: column; gap: 5px; font: 14px/1.3 var(--ld-serif); }
.ld-profile-mobile-contact [data-phone-toggle] span { transition: opacity .3s ease; }
.ld-profile-mobile-contact.ld-profile-contact--phone-open .ld-profile-phone { border-color: transparent; }
.ld-profile-mobile-contact.ld-profile-contact--phone-open [data-phone-toggle] span { opacity: 0; }
.ld-profile-mobile-contact.ld-profile-contact--phone-open [data-phone-toggle] { transform: translate(calc(-1 * var(--ld-phone-shift)), 12px); }
@media (prefers-reduced-motion: reduce) {
  .ld-profile-contact > *, .ld-profile-mobile-contact > *, .ld-profile-phone button, .ld-profile-phone a { transition: none; }
}
/* Optional admin-managed highlights: exactly three, desktop only. */
.ld-info-bar { display:none; }
@media (min-width:1001px) {
  .ld-info-bar { display:block; background:var(--ld-profile-surface); border-bottom:1px solid #e5e7ec; }
  .ld-info-bar__sections { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; padding:32px 0; margin-block:0; }
  .ld-info-bar__section { position:relative; display:flex; gap:20px; align-items:center; justify-content:center; padding-inline:24px; min-width:0; }
  .ld-info-bar__section:first-child { padding-left:0; justify-content:flex-start; }
  .ld-info-bar__section:last-child { padding-right:0; justify-content:flex-end; }
  .ld-info-bar__section + .ld-info-bar__section::before { content:''; position:absolute; left:0; top:50%; height:52px; max-height:100%; border-left:1px solid #d7dce3; transform:translateY(-50%); }
  .ld-info-bar__section > svg { width:40px; height:40px; flex:0 0 40px; color:var(--ld-navy); }
  .ld-info-bar__section > .ld-info-icon--ec-recognition { width:64px; height:48px; flex-basis:64px; }
  .ld-info-bar__section > div { min-width:0; }
  .ld-info-bar h2 { color:var(--ld-navy); font:600 18px/1.35 var(--ld-serif); overflow-wrap:anywhere; }
  .ld-info-bar p { margin-top:6px; color:#536477; font:400 14px/1.45 var(--ld-sans); overflow-wrap:anywhere; }
}
.ld-profile__body { display: grid; grid-template-columns: 225px minmax(0, 1fr); align-items: start; gap: 75px; padding-block: 44px 68px; }
.ld-profile-sidebar { padding: 0 10px 14px; background: #fdfcfb; box-shadow: 0 3px 15px #12213c06; border: 1px solid #e5e3df; border-radius: 2px; }
.ld-profile-sidebar__portrait { aspect-ratio: 1; background: #e3e9ee; overflow: hidden; border: 2px solid #fff; border-radius: 3px; box-shadow: 0 2px 8px #0b24421a; }
.ld-profile-sidebar__portrait img { width: 100%; height: 100%; object-fit: cover; display: block; }
/* Collapse the entire identity block above the navigation on sidebar layouts. */
.ld-profile-sidebar__identity, .ld-profile-sidebar__identity-inner { display: contents; }
.ld-profile-sidebar__name { text-align: center; font: 500 22px/28.16px var(--ld-serif); color: var(--ld-navy); margin-top: 18px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ld-profile-sidebar__firm { text-align: center; font: 500 12px/1.6 var(--ld-sans); letter-spacing: .1em; margin-top: 10px; color: #536477; overflow-wrap: anywhere; }
.ld-profile-sidebar nav { margin-top: 0; padding-top: 6px; }
.ld-profile-sidebar nav a { position: relative; display: block; text-align: left; font-size: 13.5px; font-weight: 400; line-height: 1.55; padding: 15.5px 9px; color: var(--ld-navy); border-radius: 0; }
.ld-profile-sidebar nav a + a::before { content: ''; position: absolute; top: 0; left: 10px; right: 10px; height: 1px; background: #e8e6e2; }
.ld-profile-sidebar nav a:hover { background: #f6f4f0; color: var(--ld-navy); }
.ld-profile-sidebar nav a:focus-visible { outline: 2px solid var(--ld-navy); outline-offset: -2px; }
.ld-profile-sidebar nav a[aria-current="location"] { background: #f1eee8; color: var(--ld-navy); font-weight: 600; box-shadow: inset 2px 0 var(--ld-profile-gold); }
.ld-profile-sidebar nav a:is([aria-current="location"], :hover)::before,
.ld-profile-sidebar nav a:is([aria-current="location"], :hover) + a::before { background: transparent; }

.ld-profile-nav-label { min-width: 0; overflow-wrap: anywhere; }
/* A single biography needs an identity card rather than a one-item navigation menu. */
@media (min-width: 761px) {
  .ld-profile.ld-profile--overview-only .ld-profile-sidebar { position: static; top: auto; max-height: none; overflow: visible; padding-bottom: 0; }
  .ld-profile--overview-only .ld-profile-sidebar__identity { display: block; visibility: visible; transition: none; }
  .ld-profile--overview-only .ld-profile-sidebar__identity-inner { opacity: 1; transform: none; transition: none; padding-bottom: 24px; }
  .ld-profile--overview-only .ld-profile-sidebar__identity-inner::after { display: none; }
}
.ld-profile-sample { font-size: 11px; color: #747b85; margin-bottom: 19px; }
.ld-profile-section { scroll-margin-top: 24px; }
.ld-profile-section + .ld-profile-section { margin-top: 40px; padding-top: 30px; border-top: 1px solid #e9ebee; }
.ld-profile-section h2 { font: 400 22px/1.3 var(--ld-sans); color: var(--ld-navy); margin-bottom: 21px; }
.ld-profile-section > h2::after { content: ""; display: block; width: 40px; height: 2px; margin-top: 10px; background: var(--ld-profile-gold); }
.ld-profile-section p { font-size: 14.5px; line-height: 1.7; color: #555b62; }
.ld-profile-section p + p { margin-top: 20px; }
/* Semantic lawyer content inherits the brand typography; pasted CSS is removed in Core. */
.ld-profile-section :is(ul,ol,blockquote) { font: 14.5px/1.7 var(--ld-sans); color: #555b62; }
.ld-profile-section ul, .ld-profile-section ol { margin: 20px 0; padding-left: 1.6em; list-style-position: outside; }
.ld-profile-section ul { list-style-type: disc; }
.ld-profile-section ol { list-style-type: decimal; }
.ld-profile-section li { font: inherit; color: inherit; margin: .45em 0; padding: 0; }
.ld-profile-section li > p { font: inherit; color: inherit; }
.ld-profile-section li > p + p { margin-top: .65em; }
.ld-profile-section li > ul, .ld-profile-section li > ol { margin-block: .45em; }
/* A leading list starts at the same distance from its heading as a paragraph. */
.ld-profile-section > :is([data-profile-section-collapse],.ld-client-section-value) > :is(ul,ol):first-child { margin-top: 0; }
.ld-profile-section > :is([data-profile-section-collapse],.ld-client-section-value) > :is(ul,ol):first-child > li:first-child { margin-top: 0; }
/* A trailing list leaves the same section-to-divider gap as a final paragraph. */
.ld-profile-section > :is([data-profile-section-collapse],.ld-client-section-value) > :is(ul,ol):last-child { margin-bottom: 0; }
.ld-profile-section > :is([data-profile-section-collapse],.ld-client-section-value) > :is(ul,ol):last-child > li:last-child { margin-bottom: 0; }
.ld-profile-section h3 { font: 400 19.5px/1.4 var(--ld-sans); }
.ld-profile-section h4 { font: 400 17px/1.4 var(--ld-sans); }
.ld-profile-section h5, .ld-profile-section h6 { font: 600 16px/1.4 var(--ld-sans); }
.ld-profile-section :is(h3,h4,h5,h6) { margin: 20px 0 8px; color: var(--ld-navy); }
.ld-profile-section > :is([data-profile-section-collapse],.ld-client-section-value) > :is(h3,h4):first-child { margin-top: 0; }
.ld-profile-section :is(h3,h4) + :is(ul,ol) { margin-top: 8px; }
.ld-profile-section :is(h3,h4) + :is(ul,ol) > li:first-child { margin-top: 0; }
.ld-profile-section a { color: var(--ld-ink); text-decoration: underline; text-underline-offset: .15em; }
.ld-profile-section a:hover { color: var(--ld-accent); }
.ld-profile-section blockquote { margin: 20px 0; padding-left: 1em; border-left: 2px solid var(--ld-profile-gold); }
.ld-profile-section li > :is(ul,ol) { margin-block: .45em; }
.ld-profile-section li > ul { list-style-type: circle; }
.ld-profile-section li > ul li > ul { list-style-type: square; }
.ld-profile-section li > ol { list-style-type: lower-alpha; }
.ld-profile-section li > ol li > ol { list-style-type: lower-roman; }
.ld-profile-hero__summary ul, .ld-profile-hero__summary ol { font: inherit; color: inherit; margin: 12px 0; padding-left: 1.6em; }
.ld-profile-hero__summary ul { list-style-type: disc; }
.ld-profile-hero__summary ol { list-style-type: decimal; }
.ld-profile-hero__summary li { font: inherit; margin: .45em 0; }
.ld-profile-hero__summary a { color: inherit; text-decoration: underline; }
.ld-profile-hero__summary :is(h2,h3,h4,h5,h6):not(.ld-profile-perspective) { font-family: inherit; color: inherit; line-height: 1.4; margin: 18px 0 12px; }
.ld-profile-hero__summary h2:not(.ld-profile-perspective) { font-size: 1.4em; }
.ld-profile-hero__summary h3 { font-size: 1.25em; }
.ld-profile-hero__summary :is(h4,h5,h6) { font-size: 1.1em; }
@media (max-width: 1000px) {
  .ld-profile-hero__inner { gap: 35px; grid-template-columns: minmax(0, 1fr) 260px; }
  .ld-profile__body { gap: 40px; grid-template-columns: 200px minmax(0, 1fr); }
}
/* Phone presentation hides the sidebar. */
.ld-profile-perspective, .ld-profile-mobile-contact, .ld-profile-hero__desktop-details, .ld-profile-hero__recognized { display: none; }
@media (max-width: 540px) {
  .ld-profile-hero__summary { display: none; }
}
@media (max-width: 760px) {
  .ld-profile-hero { background-image: radial-gradient(ellipse at 57% 40%, #ffffff0c, transparent 65%), linear-gradient(115deg, #00000024, transparent 60%); }
  .ld-profile-hero::before { content: ''; position: absolute; inset: 0; background: url('../images/profile-contours.svg') 0 0 / cover; opacity: .7; pointer-events: none; -webkit-mask-image: linear-gradient(to bottom, #000 0, #000 160px, #0008 330px, #0001 480px, transparent 580px); mask-image: linear-gradient(to bottom, #000 0, #000 160px, #0008 330px, #0001 480px, transparent 580px); }
  .ld-profile-hero__inner { position: relative; display: flex; flex-direction: column; gap: 20px; padding-block: 24px 46px; }
  .ld-profile-hero__identity { order: -1; width: min(240px, 58vw); }
  .ld-profile-hero__copy { width: 100%; text-align: center; }
  .ld-profile-hero h1 { font-size: clamp(30px, 7vw, 42px); }
  .ld-profile-hero__firm { font-size: clamp(18px, 4.3vw, 23px); margin-top: 10px; }
  .ld-profile-hero__firm::after { width: 58px; margin: 19px auto 0; background: transparent; }
  .ld-profile-hero__details { justify-content: center; flex-direction: row; gap: 15px; margin-top: 17px; font-size: 17px; }
  .ld-profile-hero__details span + span { border-left: 1px solid var(--ld-profile-gold); padding-left: 15px; }
  .ld-profile-hero__details svg, .ld-profile-contact, .ld-profile-sidebar { display: none; }
  .ld-profile-hero--multiple-practices .ld-profile-hero__firm { color: #d5b282; }
  .ld-profile-hero--multiple-practices .ld-profile-hero__firm::after { display: none; }
  .ld-profile-hero--multiple-practices .ld-profile-hero__details { flex-direction: column-reverse; align-items: stretch; gap: 18px; margin-top: 16px; }
  .ld-profile-hero--multiple-practices .ld-profile-hero__details > span { justify-content: center; }
  .ld-profile-hero--multiple-practices .ld-profile-hero__details > span + span { border-left: 0; padding-left: 0; }
  .ld-profile-hero--multiple-practices .ld-profile-hero__details > span:first-child { border-top: 1px solid color-mix(in srgb, var(--ld-profile-gold) 40%, transparent); padding-top: 18px; }
  .ld-profile-hero__summary { margin: 35px auto 0; max-width: 560px; font: italic 18px/1.75 var(--ld-serif); }
  .ld-profile-perspective { display: block; font: 600 13px/1.5 var(--ld-sans); letter-spacing: .14em; text-transform: uppercase; color: #e6a13d; margin-bottom: 13px; }
  .ld-profile-perspective::before { content: ''; display: block; width: 40px; height: 1px; background: transparent; margin: 0 auto 12px; }
  .ld-profile-mobile-contact { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 12px 10px; background: var(--ld-profile-surface); border-block: 1px solid var(--ld-accent); color: var(--ld-ink); }
  .ld-profile-mobile-contact > a, .ld-profile-mobile-contact > span { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; text-align: center; padding-inline: 7px; font: 14px/1.3 var(--ld-serif); overflow-wrap: anywhere; }
  .ld-profile-mobile-contact > * + * { border-left: 1px solid #09245780; }
  .ld-profile-mobile-contact svg { width: 25px; height: 25px; }
  .ld-profile-mobile-contact a:hover { color: var(--ld-profile-gold); }
  .ld-profile-mobile-contact a:focus-visible { outline: 2px solid var(--ld-accent); outline-offset: 3px; }
  .ld-profile__body { display: block; padding-top: 25px; }
  .ld-profile-section h2 { font: 600 22px/1.3 var(--ld-serif); color: var(--ld-navy); margin-bottom: 12px; }
  .ld-profile-section p { font: 15.4px/1.6 var(--ld-serif); color: #30343a; }
  .ld-profile-section :is(ul,ol,blockquote) { font: 15.4px/1.6 var(--ld-serif); color: #30343a; }
  .ld-profile-section :is(h3,h4,h5,h6) { font-family: var(--ld-serif); }
}
@media (min-width: 761px) {
  /* Broad studio-like illumination adds depth without competing with the portrait. */
  .ld-profile-hero {
    background-image:
      radial-gradient(ellipse at 49% 48%, #60799b38 0%, #60799b14 33%, transparent 66%),
      radial-gradient(ellipse at 80% 12%, #7188a326 0%, transparent 51%),
      radial-gradient(ellipse at 18% 90%, #35587a26 0%, transparent 55%),
      linear-gradient(120deg, #061a30 0%, #102b47 48%, #091e36 100%);
  }
  .ld-profile-sidebar { overflow-anchor: none; position: sticky; top: 24px; max-height: calc(100vh - 48px); overflow-y: auto; }
  .ld-profile-sidebar__identity { display: grid; grid-template-rows: 0fr; visibility: hidden; margin-inline: -10px; transition: grid-template-rows 760ms ease, visibility 0s linear 760ms; }
  .ld-profile-sidebar__identity-inner { display: block; min-height: 0; overflow: hidden; opacity: 0; transform: translateY(7px); border-radius: 2px 2px 0 0; background: linear-gradient(125deg, var(--ld-navy), #24415b); background-size: 100% 170px; background-repeat: no-repeat; transition: opacity 760ms ease, transform 760ms ease; }
  .ld-profile-sidebar__identity-inner .ld-profile-sidebar__portrait { margin: 28px 16px 0; }
  .ld-profile-sidebar__identity-inner :is(.ld-profile-sidebar__name, .ld-profile-sidebar__firm) { margin-inline: 14px; }
  .ld-profile--sidebar-portrait-visible .ld-profile-sidebar__identity { grid-template-rows: 1fr; visibility: visible; transition-delay: 0s; }
  .ld-profile--sidebar-portrait-visible .ld-profile-sidebar__identity-inner { opacity: 1; transform: translateY(0); }
  .ld-profile-sidebar__identity-inner::after { content: ''; display: block; width: 40px; height: 1px; background: var(--ld-profile-gold); margin: 20px auto 22px; }
  .ld-profile-sidebar nav { margin-top: 0; }
  .ld-profile-hero__inner { min-height: 530px; grid-template-columns: minmax(0, 1fr) 360px; padding-block: 50px; }
  .ld-profile-hero h1 { font-size: clamp(30.6px, 3.145vw, 41.65px); }
  .ld-profile-hero__firm { font-size: 17.6px; }
  .ld-profile-hero__details { font-size: 18.9px; }
  /* Retain the original layout slots while rendering the approved 80% variant. */
  .ld-profile-hero__detail-text { transform: scale(.8); transform-origin: left center; }
  .ld-profile-hero__details svg { transform: scale(.8); transform-origin: right center; }
  .ld-profile-hero__copy { align-self: start; padding-top: 30px; }
  .ld-profile-hero__summary { max-width: 620px; margin-top: 40px; padding-top: 41px; border-top: 1px solid #c6964240; font-size: 16px; }
  .ld-profile-hero__identity { width: 336px; justify-self: end; transform: translateY(4px); }
  .ld-profile-perspective { display: block; font: 600 14.4px/1.5 var(--ld-sans); letter-spacing: .12em; text-transform: uppercase; color: #e6a13d; margin-bottom: 14px; }
}
@media (min-width: 761px) and (prefers-reduced-motion: reduce) {
  .ld-profile-sidebar__identity, .ld-profile-sidebar__identity-inner { transition: none; transform: none; }
}
/* Desktop identity and recognition layout; smaller screens retain their existing presentation. */
@media (min-width: 1001px) {
  .ld-profile-hero h1 { font-size: clamp(35.64px, 3.159vw, 45.36px); line-height: 1.12; }
  .ld-profile-hero__firm { margin-top: 10px; font: 400 21.87px/1.3 var(--ld-serif); color: #d5b282; }
  .ld-profile-hero__firm::after, .ld-profile-hero__details, .ld-profile-perspective { display: none; }
  .ld-profile-hero__desktop-details { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 18px; font: 400 16.038px/1.4 var(--ld-serif); color: #dde3e9; }
  .ld-profile-hero__desktop-details span + span { border-left: 1px solid #ffffff80; padding-left: 18px; }
  .ld-profile-hero__recognized { display: block; max-width: 620px; margin-top: 20px; padding-top: 42px; border-top: 1px solid color-mix(in srgb, var(--ld-profile-gold) 40%, transparent); }
  .ld-profile-hero__recognized-label { margin: 0 0 5px; color: #e6a13d; font: 600 10.53px/1.5 var(--ld-sans); letter-spacing: .18em; text-transform: uppercase; }
  .ld-profile-hero__recognized h2 { margin: 0; color: #f2f3f6; font: 400 29.16px/1.2 var(--ld-serif); }
  .ld-profile-hero__practices { display: flex; flex-wrap: wrap; gap: 10px 0; margin: 10px 0 0; padding: 0; list-style: none; color: #dde3e9; font: 400 16px/1.5 var(--ld-serif); }
  .ld-profile-hero__practices li { padding-right: 10px; margin-right: 10px; border-right: 1px solid var(--ld-profile-gold); overflow-wrap: anywhere; max-width: 100%; }
  .ld-profile-hero__practices li:last-child { padding-right: 0; margin-right: 0; border-right: 0; }
  .ld-profile-hero__summary { position: relative; margin-top: 32px; padding: 0; border-top: 0; font: italic 400 17px/1.55 var(--ld-serif); color: #f0ede6; }
  .ld-profile-hero__summary p { font-style: italic; font-weight: 400; }
  .ld-profile-hero__summary > p:first-of-type::before,
  .ld-profile-hero__summary .ld-client-perspective-value > p:first-of-type::before { content: '“'; font: inherit; color: inherit; }
  .ld-profile-hero__summary > p:last-of-type::after,
  .ld-profile-hero__summary .ld-client-perspective-value > p:last-of-type::after { content: '”'; font: inherit; color: inherit; }
  .ld-profile-hero__summary::after { content: attr(data-perspective-credit); display: block; margin-top: 6px; color: #d4b078; font: 400 13px/1.5 var(--ld-sans); letter-spacing: .08em; text-align: right; }
}
@media (min-width: 761px) and (max-width: 1000px) {
  .ld-profile-hero__inner { grid-template-columns: minmax(0, 1fr) 300px; }
  .ld-profile-hero__identity { width: 282px; }
}
@media (min-width: 783px) {
  .admin-bar .ld-profile-sidebar { top: 56px; max-height: calc(100vh - 80px); }
}
@media (min-width: 761px) and (max-width: 782px) {
  .admin-bar .ld-profile-sidebar { top: 70px; max-height: calc(100vh - 94px); }
}
.ld-profile-hero :is(.ld-profile-hero__recognized a, .ld-profile-hero__detail-text a) { color: inherit; text-decoration: none; text-decoration-thickness: 1px; text-underline-offset: .18em; }
.ld-profile-hero :is(.ld-profile-hero__recognized a, .ld-profile-hero__detail-text a):is(:hover, :focus-visible) { color: var(--ld-profile-gold); text-decoration-line: underline; }
.ld-biography-toggle { margin-top: 16px; padding: 0; border: 0; background: none; color: var(--ld-profile-gold, #c69642); font: inherit; text-decoration: underline; cursor: pointer; }
.ld-biography-toggle[aria-expanded="false"]::after { content: ''; display: inline-block; width: 6px; height: 6px; margin-left: 9px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: translateY(-2px) rotate(45deg); vertical-align: middle; }

/* Public Overview and dynamic sections share responsive height limits. */
[data-profile-section-collapse], .ld-profile-section-preview { display: flow-root; --ld-section-limit: 550; }
[data-profile-section-collapse][hidden], .ld-profile-section-preview[hidden] { display: none; }
.ld-profile-section-preview { position: relative; }
.ld-profile-section-preview::after { content: ''; position: absolute; inset: auto 0 0; height: 6em; background: linear-gradient(to bottom, #ffffff00 0%, #ffffff40 25%, #ffffffa6 60%, #ffffffed 85%, #fff 100%); pointer-events: none; }
.ld-profile-section-preview.is-clipped { max-height: var(--ld-preview-height); overflow: hidden; }
.ld-profile-section-toggle { min-height: 44px; text-underline-offset: .2em; }
.ld-profile-section-toggle:focus-visible { outline: 2px solid var(--ld-navy); outline-offset: 4px; }
@media (max-width: 1000px) { [data-profile-section-collapse] { --ld-section-limit: 475; } }
@media (max-width: 760px) {
  [data-profile-section-collapse] { --ld-section-limit: 600; }
  #ld-biography-full[data-profile-section-collapse] { --ld-section-limit: 650; }
}

/* Public mobile Perspective: static editorial quotation. */
.ld-mobile-perspective { display: none; }
@media (max-width: 760px) {
 .ld-profile:not(:has(#ld-client-editor-root)) .ld-profile-hero__summary { display: none; }
 .ld-profile:not(:has(#ld-client-editor-root)) .ld-profile-hero__inner { padding-bottom: 30px; }
 .ld-mobile-perspective { display: block; position: relative; margin: 26px auto 0; padding: 26px 0 0; border-top: 1px solid #c6964273; text-align: left; max-width: 560px; }
 .ld-mobile-perspective blockquote { position: relative; margin: 0; padding: 0 0 0 17px; border: 0; color: #f0ede6; font: italic 400 17px/1.65 var(--ld-serif); }
 .ld-mobile-perspective blockquote::before { content: '“'; position: absolute; left: -3px; top: -13px; color: var(--ld-profile-gold); font: 42px/1 Georgia, serif; opacity: .65; }
 .ld-mobile-perspective blockquote p { margin: 0; font: inherit; color: inherit; }
 .ld-mobile-perspective blockquote p + p { margin-top: 14px; }
 .ld-mobile-perspective blockquote a { color: inherit; text-decoration: underline; }
 .ld-mobile-perspective figcaption { margin: 19px 0 0 17px; color: #d4b078; font: 500 11px/1.5 var(--ld-sans); letter-spacing: .11em; text-transform: uppercase; text-align: right; }
}
