/* Real content in the existing Suling visual language. */
.inner-page main,.director-section { overflow-x: clip; }
.scope-list { padding-left: 21px; color: var(--muted); font-size: 15px; line-height: 2.2; margin: 25px 0 35px; }
.scope-list li + li { margin-top: 15px; }
.material-eyebrow { display: block; color: #806943; font-size: 11px; letter-spacing: .15em; margin-bottom: 22px; }
.practice-group + .practice-group { margin-top: 60px; }
.practice-group > h2 { font-family: var(--serif); font-size: 34px; font-weight: 400; margin-bottom: 30px; }
.service-entry small { color: #806943; font-size: 10px; letter-spacing: .14em; display: block; margin-bottom: 15px; }
.reference-collection:has(.cms-record):not([data-references-ready]) [data-reference-record] { display: none; }
.case-row { position: relative; display: grid; grid-template-columns: 70px minmax(0,1fr); gap: 28px; border-top: 1px solid var(--line); padding: 38px 0; }
.case-row:last-child { border-bottom: 1px solid var(--line); }
.case-row > a { display: block; position: relative; padding-right: 50px; }
.case-row h2 { font-family: var(--serif); font-size: clamp(22px,2vw,29px); font-weight: 400; line-height: 1.7; letter-spacing: .025em; }
.case-row p { font-size: 14px; line-height: 2; color: var(--muted); margin-top: 16px; max-width: 900px; }
.case-meta { display: flex; flex-wrap: wrap; gap: 15px 35px; font-size: 11px; color: #806943; margin-bottom: 17px; line-height: 1.8; }
.case-meta > * + * { color: var(--muted); }
.case-arrow { position: absolute; top: 40%; right: 3px; color: #806943; font-size: 30px; transition: transform .65s cubic-bezier(.2,.65,.25,1); }
.case-row > a::after { content: ''; position: absolute; bottom: -39px; left: -98px; right: 0; height: 1px; background: var(--gold); transform: scaleX(0); transform-origin: left; transition: transform .7s cubic-bezier(.2,.65,.25,1); }
.case-row > a:is(:hover,:focus-visible)::after { transform: scaleX(1); }
.case-row > a:is(:hover,:focus-visible) .case-arrow { transform: translate(4px,-4px); }
.case-note { color: var(--muted); font-size: 12px; line-height: 2; padding-bottom: 65px; }
.case-outcome { border-left: 2px solid var(--gold); padding: 5px 0 3px 28px; margin-block: 40px; }
.case-outcome h2 { font-size: 26px; margin-bottom: 14px; }
.case-outcome p { color: var(--ink); }
.case-outcome p:last-child { margin-bottom: 0; }
.profile-cases { margin-top: 40px; }
.profile-cases h3 { font-family: var(--serif); font-size: 23px; font-weight: 400; margin-bottom: 15px; }
.news-row { padding-block: 35px; border-bottom: 1px solid var(--line); }
.news-row:first-child { border-top: 1px solid var(--line); }
.news-row > a { display: grid; grid-template-columns: minmax(0,4fr) minmax(0,7fr); gap: 55px; align-items: center; }
.news-photo { overflow: hidden; aspect-ratio: 4 / 3; background: var(--soft); }
.news-photo img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 1.1s cubic-bezier(.2,.65,.25,1); }
.news-row a:is(:hover,:focus-visible) img { transform: scale(1.035); }
.news-copy h2 { font-family: var(--serif); font-size: clamp(22px,2vw,29px); font-weight: 400; line-height: 1.75; letter-spacing: .03em; }
.news-copy p { color: var(--muted); font-size: 14px; line-height: 2; margin-block: 18px 25px; }
.news-action { display: flex; gap: 25px; align-items: center; font-size: 12px; }
.news-action > span:last-child { font-size: 22px; color: #806943; transition: transform .65s ease; }
.news-row a:is(:hover,:focus-visible) .news-action > span:last-child { transform: translate(3px,-3px); }
.news-article-photo { margin: 10px 0 40px; max-width: 950px; }
.news-article-photo img { display: block; width: 100%; height: auto; }
.section-end-link { display: flex; flex-wrap: wrap; gap: 35px; margin-top: 35px; }
.director-section { border-bottom: 1px solid var(--line); }
.director-grid { display: grid; grid-template-columns: minmax(0,4fr) minmax(0,7fr); gap: 12%; align-items: center; }
.director-visual { max-width: 390px; width: 100%; }
.director-copy > h2 { font-family: var(--serif); font-size: clamp(28px,3vw,42px); line-height: 1.75; max-width: 580px; margin: 30px 0; }
.director-name { font-family: var(--serif); font-size: 32px; letter-spacing: .06em; margin-bottom: 20px; }
.director-name small { display: inline-block; font-family: var(--sans); font-size: 12px; color: #806943; letter-spacing: .03em; margin-left: 25px; }
.director-copy > p { color: var(--muted); font-size: 14px; line-height: 2.1; margin-top: 15px; }
.director-copy > .inline-link { margin-top: 28px; }
.cases-section { background: var(--soft); }
.home-contact-links { display: flex; flex-wrap: wrap; gap: 16px 35px; margin: 25px 0 10px; font-size: 17px; line-height: 1.9; }
.home-contact-links > span { flex-basis: 100%; font-size: 13px; color: var(--muted); }
.contact-data dd { overflow-wrap: anywhere; }
.prose > .inline-link + .inline-link { margin-left: 30px; }
.footer-main nav { gap: 12px 25px; flex-wrap: wrap; max-width: 720px; }
.has-motion [data-section-motion="material-left"],
.has-motion [data-section-motion="material-right"],
.has-motion [data-section-motion="material-row"] { opacity: 0; transition: opacity .8s ease,transform 1s cubic-bezier(.2,.65,.25,1); }
.has-motion [data-section-motion="material-left"] { transform: translateX(-30px); }
.has-motion [data-section-motion="material-right"] { transform: translateX(30px); transition-delay: .13s; }
.has-motion [data-section-motion="material-row"] { transform: translateY(24px); }
.has-motion [data-section-motion="material-row"]:nth-child(3n+2) { transition-delay: .1s; }
.has-motion [data-section-motion="material-row"]:nth-child(3n) { transition-delay: .18s; }
.has-motion [data-section-motion^="material-"].is-visible,
.has-motion [data-section-motion^="material-"]:focus-within { opacity: 1; transform: none; }
.has-motion [data-section-motion^="material-"]:focus-within { transition-delay: 0s; }
@media(max-width:1040px) {
  .news-row > a { gap: 30px; }
  .director-grid { gap: 7%; }
}
@media(max-width:680px) {
  .scope-list { font-size: 14px; }
  .practice-group > h2 { font-size: 28px; }
  .case-row { grid-template-columns: 28px minmax(0,1fr); gap: 15px; padding-block: 28px; }
  .case-row .record-number { font-size: 23px; }
  .case-row > a { padding-right: 20px; }
  .case-arrow { top: 0; right: 0; font-size: 22px; }
  .case-row > a::after { bottom: -29px; left: -43px; }
  .case-row h2 { font-size: 22px; }
  .case-meta { gap: 10px 20px; }
  .case-row p,.news-copy p { font-size: 13px; }
  .case-outcome { padding-left: 20px; }
  .case-note { padding-bottom: 40px; }
  .news-row > a,.director-grid { grid-template-columns: 1fr; gap: 25px; }
  .news-row { padding-block: 28px; }
  .director-visual { max-width: 350px; margin-inline: auto; }
  .director-copy > h2 { margin-block: 22px; }
  .director-copy { margin-top: 12px; }
  .director-name { font-size: 29px; }
  .director-name small { margin-left: 20px; }
  .home-contact-links { font-size: 16px; gap: 10px 20px; }
  .home-contact-links > span { font-size: 12px; }
  .prose > .inline-link + .inline-link { margin-left: 20px; }
}
@media(prefers-reduced-motion:reduce) {
  .has-motion [data-section-motion^="material-"] { transition: opacity .65s ease,transform .8s ease !important; }
  .news-photo img,.case-arrow,.news-action > span:last-child { transition: transform .7s ease !important; }
  .case-row > a::after { transition: transform .65s ease !important; }
}
