/*
 * R77 structural design system correction.
 *
 * This terminal layer replaces the R76 count-only layout with semantic page
 * composition: long narrative is editorial content, short destinations are
 * cards, people share one portrait contract, and mobile navigation/footer are
 * visibly grouped. The same geometry is consumed by EN, KO and ZH routes.
 */

:root {
  --r77-red: #981b24;
  --r77-red-dark: #650b13;
  --r77-oxblood: #250f14;
  --r77-ink: #171315;
  --r77-copy: #4e484b;
  --r77-paper: #f6f2ec;
  --r77-panel: #fff;
  --r77-photo: #f4f2ef;
  --r77-line: #d8d1cd;
  --r77-shell: min(1440px, calc(100vw - 112px));
  --r77-reading: 68ch;
  --r77-section-y: clamp(56px, 5vw, 78px);
  --r77-compact-y: clamp(42px, 3.7vw, 58px);
  --r77-gap: clamp(24px, 2.7vw, 40px);
  --r77-h2: clamp(38px, 3.6vw, 56px);
  --r77-h3: clamp(24px, 2vw, 31px);
  --r77-body: clamp(16px, 1.05vw, 18px);
  --r77-lead: clamp(19px, 1.35vw, 22px);
  --r77-shadow: 0 18px 42px rgba(31, 18, 22, .07);
}

html body.gl-r53 .r53-site[data-site-production-root] .r53-shell {
  width: var(--r77-shell) !important;
  max-width: var(--r77-shell) !important;
  margin-inline: auto !important;
}

html body.gl-r53 .r53-site[data-site-production-root] main :where(p,li,dd,figcaption) {
  overflow-wrap: break-word !important;
  word-break: normal !important;
  hanging-punctuation: first last;
}

html body.gl-r53 .r53-site[data-site-production-root] main :where(h1,h2,h3,strong) {
  overflow-wrap: normal !important;
  word-break: keep-all !important;
}

/* ABOUT — every chapter uses one rail and one typographic hierarchy. */
html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-content-firm-story {
  padding: 0 !important;
  background: var(--r77-panel) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-flow,.r54-firm-story-narrative,.r54-firm-story-groups) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group,
html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group:nth-child(n) {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) !important;
  gap: 30px !important;
  padding: var(--r77-section-y) max(56px, calc((100vw - 1440px) / 2)) !important;
  border: 0 !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group:nth-child(odd) {
  background: var(--r77-paper) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group:nth-child(even) {
  background: var(--r77-panel) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-authority {
  color: #fff !important;
  background: var(--r77-red-dark) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-authority:nth-child(n) {
  color: #fff !important;
  background: var(--r77-red-dark) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-heading,.r54-firm-story-group-grid) {
  width: 100% !important;
  max-width: 1440px !important;
  margin-inline: auto !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-heading {
  display: flex !important;
  align-items: flex-end !important;
  gap: 22px !important;
  padding-bottom: 22px !important;
  border-bottom: 1px solid var(--r77-line) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-heading::before {
  width: 36px;
  height: 2px;
  flex: 0 0 36px;
  margin-bottom: .35em;
  content: "";
  background: var(--r77-red);
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-authority .r54-firm-story-group-heading {
  border-color: rgba(255,255,255,.28) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-authority .r54-firm-story-group-heading::before {
  background: #fff;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-heading h2 {
  max-width: 18ch !important;
  margin: 0 !important;
  color: inherit !important;
  font-size: var(--r77-h2) !important;
  line-height: 1.02 !important;
  letter-spacing: -.035em !important;
  text-wrap: balance !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-grid[data-r54-entry-count] {
  display: grid !important;
  gap: var(--r77-gap) !important;
  align-items: start !important;
}

/* Opening is an editorial introduction, not a bordered card. */
html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-opening .r54-firm-story-group-grid {
  grid-template-columns: minmax(0,1fr) !important;
  width: min(100%, 1120px) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-opening .r54-firm-story-entry {
  display: grid !important;
  grid-template-columns: minmax(260px,.72fr) minmax(0,1.28fr) !important;
  gap: clamp(36px,5vw,76px) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-opening h3 {
  margin: 0 !important;
  font-size: clamp(34px,3vw,48px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.025em !important;
}

/* Recognition and authority are editorial split sections, not floating boxes. */
html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-proof,.r54-firm-story-group-authority) {
  grid-template-columns: minmax(300px,.72fr) minmax(0,1.28fr) !important;
  column-gap: clamp(46px,7vw,108px) !important;
  align-items: start !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-proof,.r54-firm-story-group-authority) .r54-firm-story-group-heading {
  grid-column: 1 !important;
  display: block !important;
  padding: 0 0 24px !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-proof,.r54-firm-story-group-authority) .r54-firm-story-group-heading::before {
  display: block;
  margin: 0 0 22px;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-proof,.r54-firm-story-group-authority) .r54-firm-story-group-grid {
  grid-column: 2 !important;
  grid-template-columns: minmax(0,1fr) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-proof,.r54-firm-story-group-authority) .r54-firm-story-entry {
  padding: clamp(30px,3.2vw,46px) !important;
  border: 1px solid var(--r77-line) !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: none !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-authority .r54-firm-story-entry {
  border-color: rgba(255,255,255,.32) !important;
  color: #fff !important;
  background: rgba(255,255,255,.035) !important;
}

/* Three short themes are compact, equal cards. */
html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-capabilities,.r54-firm-story-group-principles,.r54-firm-story-group-process) .r54-firm-story-group-grid[data-r54-entry-count="3"] {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-capabilities,.r54-firm-story-group-principles,.r54-firm-story-group-process) .r54-firm-story-entry,
html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-capabilities,.r54-firm-story-group-principles,.r54-firm-story-group-process) .r54-firm-story-entry:nth-child(n) {
  display: block !important;
  min-height: 0 !important;
  padding: clamp(26px,2.5vw,38px) !important;
  border: 1px solid var(--r77-line) !important;
  background: var(--r77-panel) !important;
  box-shadow: var(--r77-shadow) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-entry h3 {
  max-width: 20ch !important;
  margin: 0 0 22px !important;
  font-size: var(--r77-h3) !important;
  line-height: 1.12 !important;
  letter-spacing: -.02em !important;
  text-transform: none !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-entry .r54-narrative-chapter-body,
html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-entry .r54-narrative-chapter-body p {
  width: 100% !important;
  max-width: var(--r77-reading) !important;
  margin-top: 0 !important;
  font-size: var(--r77-body) !important;
  line-height: 1.68 !important;
  color: inherit !important;
}

/* How We Work: one readable strategy statement followed by three destinations. */
html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-pathways .r54-firm-story-group-grid[data-r54-entry-count="4"] {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  align-items: start !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-pathways .r54-firm-story-entry,
html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-pathways .r54-firm-story-entry:nth-child(n) {
  min-height: 0 !important;
  padding: clamp(26px,2.5vw,36px) !important;
  border: 1px solid var(--r77-line) !important;
  background: var(--r77-panel) !important;
  box-shadow: none !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-pathways .r54-firm-story-entry:first-child {
  display: block !important;
  grid-column: 1 / -1 !important;
  grid-row: auto !important;
  padding: clamp(34px,3.5vw,52px) !important;
  border-left: 4px solid var(--r77-red) !important;
  background: var(--r77-paper) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-pathways .r54-firm-story-entry:first-child .r54-narrative-chapter-body {
  max-width: 84ch !important;
  margin-inline: auto !important;
  columns: 1 !important;
  column-rule: 0 !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-pathways .r54-firm-story-entry:first-child .r54-narrative-chapter-body p {
  margin: 0 0 20px !important;
  break-inside: avoid !important;
}

/* COUNSEL — same compact frame, same neutral ground, no forced crop or scale. */
html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-counsel-stage,.r54-firm-people-stage) {
  width: min(100%,1120px) !important;
  margin-inline: auto !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 28px !important;
  grid-auto-rows: auto !important;
  align-items: stretch !important;
}

html body.gl-r53 .r53-site.r60-firm[data-site-production-root] #r53-main .r54-firm-counsel-intro {
  width: min(100%,1120px) !important;
  margin-inline: auto !important;
}

@media (min-width:1181px) {
  html body.gl-r53 .r53-site.r60-home[data-site-production-root] #r53-main .r54-selected-counsel-intro {
    width: min(100%,1120px) !important;
    margin-inline: auto !important;
  }
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-selected-person-associate,.r54-firm-person),
html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-selected-person-associate,.r54-firm-person):nth-child(n) {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) !important;
  grid-template-rows: 350px auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  border: 1px solid var(--r77-line) !important;
  background: var(--r77-panel) !important;
  box-shadow: var(--r77-shadow) !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-selected-person-associate,.r54-firm-person) > figure,
html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-selected-person-associate,.r54-firm-person):nth-child(n) > figure {
  grid-row: 1 !important;
  width: 100% !important;
  height: 350px !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: var(--r77-photo) !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(img.r53-counsel-image,img.r54-firm-person-image),
html body.gl-r53 .r53-site[data-site-production-root] #r53-main img:is(.r53-counsel-image,.r54-firm-person-image)[src*="george.jpg"],
html body.gl-r53 .r53-site[data-site-production-root] #r53-main img:is(.r53-counsel-image,.r54-firm-person-image)[src*="george.jpg"] {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: 50% 38% !important;
  background: var(--r77-photo) !important;
  transform: none !important;
  transform-origin: center !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-selected-person-associate,.r54-firm-person) > div,
html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-selected-person-associate,.r54-firm-person):nth-child(n) > div {
  grid-row: 2 !important;
  height: auto !important;
  min-height: 218px !important;
  padding: 28px 30px 30px !important;
  border-top: 3px solid var(--r77-red) !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-firm-person) :where(h2,h3) {
  margin-block: 18px 12px !important;
  font-size: clamp(31px,2.35vw,39px) !important;
  line-height: 1.05 !important;
}

/* PRACTICE DIRECTORY — one semantic icon and one action affordance per row. */
html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-layout {
  grid-template-columns: minmax(240px,.36fr) minmax(0,1fr) !important;
  gap: clamp(42px,6vw,88px) !important;
  padding-block: var(--r77-section-y) !important;
  align-items: start !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-list {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 0 !important;
  border-top: 1px solid var(--r77-line) !important;
  border-left: 1px solid var(--r77-line) !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-list li {
  min-width: 0 !important;
  border-right: 1px solid var(--r77-line) !important;
  border-bottom: 1px solid var(--r77-line) !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-link {
  display: grid !important;
  grid-template-columns: 52px minmax(0,1fr) 38px !important;
  min-height: 112px !important;
  gap: 18px !important;
  align-items: center !important;
  padding: 20px 22px !important;
  color: var(--r77-ink) !important;
  background: var(--r77-panel) !important;
  transition: color 180ms ease, background-color 180ms ease !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r77-practice-icon {
  display: grid !important;
  width: 48px !important;
  height: 48px !important;
  place-items: center !important;
  color: var(--r77-red) !important;
  border: 1px solid var(--r77-line) !important;
  background: var(--r77-paper) !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r77-practice-icon svg {
  width: 25px !important;
  height: 25px !important;
  stroke-width: 1.65 !important;
  overflow: visible !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-link strong {
  min-width: 0 !important;
  font-size: clamp(21px,1.65vw,28px) !important;
  line-height: 1.15 !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-action,
html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-action:nth-child(n) {
  display: grid !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  place-items: center !important;
  border: 1px solid currentColor !important;
  border-radius: 50% !important;
  color: var(--r77-red) !important;
  background: transparent !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-action::before,
html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-action::after {
  display: none !important;
  content: none !important;
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-action svg {
  width: 17px !important;
  height: 17px !important;
}

@media (hover:hover) {
  html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-link:hover {
    color: #fff !important;
    background: var(--r77-red) !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-link:hover :where(.r77-practice-icon,.r54-practice-directory-action) {
    color: #fff !important;
    border-color: rgba(255,255,255,.6) !important;
    background: rgba(255,255,255,.08) !important;
  }
}

html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-link:focus-visible {
  outline: 3px solid var(--r77-red) !important;
  outline-offset: -4px !important;
}

/* FOOTER — the same column label, rule and spacing for every information group. */
html body.gl-r53 .r53-site[data-site-production-root] .r53-footer-grid {
  display: grid !important;
  grid-template-columns: minmax(0,1.15fr) minmax(0,1fr) minmax(0,.72fr) !important;
  gap: clamp(34px,5vw,76px) !important;
  align-items: start !important;
}

html body.gl-r53 .r53-site[data-site-production-root] .r53-footer-grid > :where(section,nav) {
  min-width: 0 !important;
  padding-top: 18px !important;
  border-top: 1px solid rgba(255,255,255,.26) !important;
}

html body.gl-r53 .r53-site[data-site-production-root] .r66-footer-column-heading {
  margin: 0 0 24px !important;
  color: #fff !important;
  font-family: var(--r53-sans) !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}

html body.gl-r53 .r53-site[data-site-production-root] .r53-footer-address p {
  margin: 0 0 22px !important;
}

html body.gl-r53 .r53-site[data-site-production-root] .r53-footer-legal {
  grid-column: 1 / -1 !important;
}

/* MOBILE HEADER — one panel, three visibly distinct groups. */
.r77-menu-group-label {
  display: none;
}

@media (max-width: 1180px) {
  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-proof,.r54-firm-story-group-authority) {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 28px !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-proof,.r54-firm-story-group-authority) :where(.r54-firm-story-group-heading,.r54-firm-story-group-grid) {
    grid-column: 1 !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-content-practice .r54-narrative-chapter {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 24px !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-content-practice .r54-narrative-chapter > :where(h2,h3),
  html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-content-practice .r54-narrative-chapter .r54-narrative-chapter-body {
    grid-column: 1 !important;
    width: 100% !important;
    max-width: 76ch !important;
  }
}

@media (max-width: 980px) {
  :root {
    --r77-shell: min(900px,calc(100vw - 48px));
    --r77-section-y: 54px;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group,
  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group:nth-child(n) {
    padding-inline: 24px !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-proof,.r54-firm-story-group-authority) {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 28px !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-proof,.r54-firm-story-group-authority) :where(.r54-firm-story-group-heading,.r54-firm-story-group-grid) {
    grid-column: 1 !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-capabilities,.r54-firm-story-group-principles,.r54-firm-story-group-process) .r54-firm-story-group-grid[data-r54-entry-count="3"],
  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-pathways .r54-firm-story-group-grid[data-r54-entry-count="4"] {
    grid-template-columns: minmax(0,1fr) !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-capabilities,.r54-firm-story-group-principles,.r54-firm-story-group-process) .r54-firm-story-entry:last-child {
    grid-column: 1 !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-layout {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 28px !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r53-menu-panel {
    padding: 0 !important;
    overflow: auto !important;
    color: var(--r77-ink) !important;
    background: #fff !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r53-menu-panel > :where(nav,.r77-menu-contact) {
    display: block !important;
    padding: 24px !important;
    border-bottom: 1px solid var(--r77-line) !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r53-menu-panel .r77-menu-group-label {
    display: block !important;
    margin: 0 0 14px !important;
    color: var(--r77-red) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r53-menu-panel > nav:first-child ul {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 0 !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r53-menu-panel > nav:first-child li {
    border-top: 1px solid var(--r77-line) !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r53-menu-panel > nav:first-child a {
    display: block !important;
    padding: 15px 2px !important;
    color: var(--r77-ink) !important;
    font-family: var(--r53-serif) !important;
    font-size: clamp(23px,5vw,30px) !important;
    line-height: 1.1 !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r77-menu-language-links {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r77-menu-language-links :where(a,span) {
    display: inline-flex !important;
    min-height: 42px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 16px !important;
    border: 1px solid var(--r77-line) !important;
    color: var(--r77-ink) !important;
    background: var(--r77-paper) !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r77-menu-language-links [aria-current="page"] {
    color: #fff !important;
    border-color: var(--r77-red) !important;
    background: var(--r77-red) !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r77-menu-contact {
    color: #fff !important;
    background: var(--r77-red-dark) !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r77-menu-contact .r77-menu-group-label {
    color: rgba(255,255,255,.7) !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r77-menu-contact .r53-menu-phone {
    color: #fff !important;
    font-family: var(--r53-serif) !important;
    font-size: 26px !important;
  }
}

@media (max-width: 640px) {
  :root {
    --r77-shell: calc(100vw - 40px);
    --r77-section-y: 46px;
    --r77-h2: clamp(34px,9.5vw,44px);
    --r77-h3: clamp(24px,6.8vw,30px);
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group,
  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group:nth-child(n) {
    gap: 24px !important;
    padding: var(--r77-section-y) 20px !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-heading {
    gap: 14px !important;
    padding-bottom: 18px !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-heading::before {
    width: 28px !important;
    flex-basis: 28px !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-opening .r54-firm-story-entry,
  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-capabilities,.r54-firm-story-group-principles,.r54-firm-story-group-process) .r54-firm-story-group-grid[data-r54-entry-count="3"],
  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-pathways .r54-firm-story-group-grid[data-r54-entry-count="4"] {
    grid-template-columns: minmax(0,1fr) !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main :where(.r54-firm-story-group-capabilities,.r54-firm-story-group-principles,.r54-firm-story-group-process) .r54-firm-story-entry:last-child {
    grid-column: 1 !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-opening h3 {
    font-size: clamp(31px,9vw,40px) !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-entry,
  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-entry:nth-child(n) {
    padding: 24px 20px !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-opening .r54-firm-story-entry {
    padding: 0 !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-firm-story-group-pathways .r54-firm-story-entry:first-child .r54-narrative-chapter-body {
    columns: 1 !important;
    column-rule: 0 !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-counsel-stage,.r54-firm-people-stage) {
    grid-template-columns: minmax(0,1fr) !important;
    grid-auto-rows: 1fr !important;
    gap: 24px !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-selected-person-associate,.r54-firm-person),
  html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-selected-person-associate,.r54-firm-person):nth-child(n) {
    grid-template-rows: min(290px,78vw) auto !important;
    height: 100% !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-selected-person-associate,.r54-firm-person) > figure,
  html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-selected-person-associate,.r54-firm-person):nth-child(n) > figure {
    height: min(290px,78vw) !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-selected-person-associate,.r54-firm-person) > div,
  html body.gl-r53 .r53-site[data-site-production-root] #r53-main :where(.r54-selected-person,.r54-selected-person-associate,.r54-firm-person):nth-child(n) > div {
    min-height: 0 !important;
    padding: 24px 22px 26px !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-list {
    grid-template-columns: minmax(0,1fr) !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-link {
    grid-template-columns: 48px minmax(0,1fr) 34px !important;
    min-height: 92px !important;
    gap: 14px !important;
    padding: 16px !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r77-practice-icon {
    width: 44px !important;
    height: 44px !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-link strong {
    font-size: clamp(20px,6vw,25px) !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r53-footer-grid {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 0 !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r53-footer-grid > :where(section,nav) {
    padding-block: 26px !important;
  }

  html body.gl-r53 .r53-site[data-site-production-root] .r66-footer-column-heading {
    margin-bottom: 18px !important;
  }
}

/* Terminal specificity repairs for legacy R76 selectors. */
html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-group.r54-firm-story-group-authority:nth-child(n) {
  color: #fff !important;
  background: var(--r77-red-dark) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-content-firm-story .r54-firm-story-group.r54-firm-story-group-pathways .r54-firm-story-group-grid[data-r54-entry-count="4"] {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
}

html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-content-firm-story .r54-firm-story-group.r54-firm-story-group-pathways .r54-firm-story-group-grid[data-r54-entry-count="4"] > .r54-firm-story-entry:first-child {
  display: block !important;
  grid-column: 1 / -1 !important;
  grid-row: auto !important;
  min-height: 0 !important;
}

@media (max-width: 980px) {
  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-content-firm-story .r54-firm-story-group.r54-firm-story-group-pathways .r54-firm-story-group-grid[data-r54-entry-count="4"] {
    grid-template-columns: minmax(0,1fr) !important;
  }
}

@media (max-width: 1180px) {
  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-content-firm-story.r54-standard-firm-story :is(.r54-firm-story-group.r54-firm-story-group-proof,.r54-firm-story-group.r54-firm-story-group-authority):nth-child(n) {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 28px !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-content-firm-story.r54-standard-firm-story :is(.r54-firm-story-group.r54-firm-story-group-proof,.r54-firm-story-group.r54-firm-story-group-authority):nth-child(n) > :is(.r54-firm-story-group-heading,.r54-firm-story-group-grid) {
    grid-column: 1 !important;
    width: 100% !important;
  }
}

@media (max-width: 640px) {
  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-content-firm-story .r54-firm-story-group.r54-firm-story-group-pathways .r54-firm-story-group-grid[data-r54-entry-count="4"] {
    grid-template-columns: minmax(0,1fr) !important;
  }

  html body.gl-r53 .r53-site.r60-about[data-site-production-root] #r53-main .r54-content-firm-story .r54-firm-story-group.r54-firm-story-group-pathways .r54-firm-story-group-grid[data-r54-entry-count="4"] > .r54-firm-story-entry:first-child {
    grid-column: 1 !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body.gl-r53 .r53-site[data-site-production-root] #r53-main .r54-practice-directory-link {
    transition: none !important;
  }
}
