/* R68 — whole-site hierarchy and geometry correction.
   One project means one page-title axis, one content rail, one typographic
   role map and one edge rhythm. Page-specific art direction is allowed only
   through an explicit component job; legacy route CSS may not invent its own
   title alignment, hero height, heading scale or line endpoint. */

:root {
  --r68-header-shell: 1280px;
  --r68-content: 1160px;
  --r68-reading: 740px;
  --r68-edge: clamp(22px, 4vw, 60px);
  --r68-section: clamp(62px, 7vw, 92px);
  --r68-section-tight: clamp(42px, 5vw, 64px);
  --r68-hero: clamp(350px, 31vw, 400px);
  --r68-rule: #d9d4d0;
  --r68-rule-soft: #e8e4e1;
}

.r53-site.r60-surface {
  --r67-shell: var(--r68-header-shell);
  --r67-content: var(--r68-content);
  --r67-reading: var(--r68-reading);
  --r67-edge: var(--r68-edge);
  --r67-section: var(--r68-section);
  --r67-section-tight: var(--r68-section-tight);
}

/* Shared page and reading rails. */
.r60-surface .r53-header-grid {
  width: min(calc(100% - 2 * var(--r68-edge)), var(--r68-header-shell));
}

.r60-surface .r53-desktop-nav a {
  font-size: 15px !important;
}

.r60-surface main :where(
  .r54-editorial-narrative-grid,
  .r54-service-authority-grid,
  .r54-article-reading-grid,
  .r54-counsel-biography-grid,
  .r53-office-record-grid,
  .r53-contact-grid,
  .r53-faq-grid,
  .r53-article-layout
) {
  width: min(calc(100% - 2 * var(--r68-edge)), var(--r68-content)) !important;
  max-width: var(--r68-content) !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

.r60-surface main :where(.r54-narrative-chapter-body,.r53-prose,.r65-biography-copy) {
  max-width: var(--r68-reading);
}

/* Typography roles. Route identity is always left-aligned; Home's opening
   counsel and editorial quotations remain declared component exceptions. */
.r60-surface main :where(.r53-section-heading,.r54-faq-lead) {
  align-items: start !important;
  justify-items: start !important;
  text-align: left !important;
}

.r60-surface main :where(.r53-section-heading,.r54-faq-lead) .r53-eyebrow,
.r60-surface main .r54-route-hero .r53-eyebrow,
.r60-george main .r67-profile-authority-hero .r53-eyebrow {
  justify-content: flex-start !important;
  margin-inline: 0 !important;
  text-align: left !important;
}

.r60-surface main .r53-section-heading h2 {
  width: auto !important;
  max-width: 14ch !important;
  margin: 12px 0 0 !important;
  font-size: clamp(42px, 4vw, 56px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.035em !important;
  text-align: left !important;
}

.r60-surface main :where(.r54-narrative-chapter,.r54-counsel-chapter,.r65-full-biography) > :where(h2,h3),
.r60-surface main .r65-biography-heading {
  max-width: 14ch !important;
  margin-inline: 0 !important;
  font-size: clamp(34px, 3.2vw, 46px) !important;
  line-height: 1.06 !important;
  letter-spacing: -.025em !important;
  text-align: left !important;
}

.r60-surface main :where(p,li,dd) {
  overflow-wrap: anywhere;
}

/* One interior-page hero system. Media routes use the same split masthead;
   text routes use the same title rail. No page-local centered or overlay
   title survives this layer. */
.r60-surface main .r54-route-hero .r54-route-hero-grid,
.r60-surface main .r54-route-hero.r53-page-hero-has-media .r54-route-hero-grid,
.r60-about main .r54-route-hero.r54-route-hero-firm-story .r54-route-hero-grid,
.r60-firm main .r54-route-hero.r54-route-hero-firm-people .r54-route-hero-grid,
.r60-practice-detail main .r54-route-hero.r54-route-hero-practice-family .r54-route-hero-grid,
.r60-contact main [data-r53-component="contact.intro"] .r54-route-hero-grid {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(330px, .42fr) minmax(0, .58fr) !important;
  grid-template-rows: var(--r68-hero) !important;
  width: min(calc(100% - 2 * var(--r68-edge)), var(--r68-content)) !important;
  max-width: var(--r68-content) !important;
  height: var(--r68-hero) !important;
  min-height: var(--r68-hero) !important;
  margin-inline: auto !important;
  overflow: hidden !important;
}

.r60-surface main .r54-route-hero:not(.r53-page-hero-has-media) .r54-route-hero-grid {
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: minmax(250px, auto) !important;
  height: auto !important;
  min-height: 250px !important;
}

.r60-surface main .r54-route-hero .r54-route-hero-title,
.r60-surface main .r54-route-hero.r53-page-hero-has-media .r54-route-hero-title,
.r60-about main .r54-route-hero.r54-route-hero-firm-story .r54-route-hero-title,
.r60-firm main .r54-route-hero.r54-route-hero-firm-people .r54-route-hero-title,
.r60-practice-detail main .r54-route-hero.r54-route-hero-practice-family .r54-route-hero-title,
.r60-contact main [data-r53-component="contact.intro"] .r54-route-hero-title {
  position: relative !important;
  inset: auto !important;
  z-index: 2 !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: grid !important;
  width: auto !important;
  height: 100% !important;
  min-height: 0 !important;
  place-content: center start !important;
  justify-items: start !important;
  padding: clamp(42px, 4.7vw, 60px) clamp(34px, 4.2vw, 52px) !important;
  border: 0 !important;
  background: linear-gradient(140deg, var(--r67-night), var(--r67-red-deep)) !important;
  color: #fff !important;
  text-align: left !important;
  transform: none !important;
  backdrop-filter: none !important;
}

.r60-surface main .r54-route-hero .r54-route-hero-title h1,
.r60-surface main .r54-route-hero.r53-page-hero-has-media .r54-route-hero-title h1,
.r60-about main .r54-route-hero.r54-route-hero-firm-story .r54-route-hero-title h1,
.r60-firm main .r54-route-hero.r54-route-hero-firm-people .r54-route-hero-title h1,
.r60-practice-detail main .r54-route-hero.r54-route-hero-practice-family .r54-route-hero-title h1,
.r60-contact main [data-r53-component="contact.intro"] h1 {
  width: auto !important;
  max-width: 12ch !important;
  margin: 13px 0 0 !important;
  color: #fff !important;
  font: 500 clamp(48px, 4.6vw, 62px)/.99 var(--r53-serif) !important;
  letter-spacing: -.04em !important;
  text-align: left !important;
}

.r60-surface main .r54-route-hero .r53-page-hero-media,
.r60-surface main .r54-route-hero.r53-page-hero-has-media .r53-page-hero-media,
.r60-about main .r54-route-hero.r54-route-hero-firm-story .r53-page-hero-media,
.r60-firm main .r54-route-hero.r54-route-hero-firm-people .r53-page-hero-media,
.r60-practice-detail main .r54-route-hero.r54-route-hero-practice-family .r53-page-hero-media,
.r60-contact main [data-r53-component="contact.intro"] .r53-page-hero-media {
  position: relative !important;
  inset: auto !important;
  z-index: 1 !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
}

.r60-surface main .r54-route-hero .r53-page-hero-media::after,
.r60-contact main [data-r53-component="contact.intro"] .r53-page-hero-media::after {
  display: block !important;
  background: linear-gradient(90deg, rgba(77,11,15,.16), transparent 24%) !important;
}

/* George is a person profile, but its title still belongs to the shared
   page-identity axis. The right column is supporting evidence, not a second
   centered hero. */
.r60-george main .r67-profile-authority-hero .r54-identity-profile-grid {
  width: min(calc(100% - 2 * var(--r68-edge)), var(--r68-content)) !important;
  max-width: var(--r68-content) !important;
}

.r60-george main .r67-profile-authority-hero .r54-identity-profile-copy {
  grid-template-columns: minmax(0, .57fr) minmax(300px, .43fr) !important;
  gap: 12px clamp(42px, 6vw, 82px) !important;
  min-height: 300px !important;
  padding: clamp(42px, 4.8vw, 60px) 0 !important;
  text-align: left !important;
}

.r60-george main .r67-profile-authority-hero h1 {
  width: auto !important;
  max-width: 12ch !important;
  margin: 2px 0 0 !important;
  font-size: clamp(50px, 4.8vw, 64px) !important;
  line-height: .99 !important;
  text-align: left !important;
}

.r60-george main .r67-profile-authority-hero .r53-profile-role {
  margin-inline: 0 !important;
  text-align: left !important;
}

.r60-george main .r67-profile-authority-hero .r67-profile-hero-statement {
  justify-self: stretch;
  max-width: none !important;
  padding-left: clamp(24px, 3vw, 34px) !important;
  text-align: left !important;
}

/* Structural lines terminate on the declared content rail and retain a clear
   inner gap before text or controls. */
.r60-surface main :where(
  .r53-section-heading,
  .r54-counsel-fact-strip,
  .r65-profile-contact-line,
  .r53-fact-grid,
  .r53-faq-list,
  .r54-counsel-chapter,
  .r65-full-biography
) {
  box-sizing: border-box;
  border-color: var(--r68-rule) !important;
}

.r60-contact main [data-r53-component="contact.coordinates"] .r53-office-record-copy {
  grid-template-columns: minmax(210px, .29fr) minmax(0, .71fr) !important;
  gap: clamp(42px, 6vw, 78px) !important;
  padding: 0 !important;
}

.r60-contact main [data-r53-component="contact.coordinates"] .r53-fact-grid > div {
  padding-inline: 22px !important;
}

.r60-contact main [data-r53-component="contact.coordinates"] .r53-fact-grid > div:nth-child(odd) {
  padding-left: 0 !important;
}

.r60-george main [data-r53-component="counsel.credentials"] .r53-counsel-record-content > .r53-section-heading,
.r60-contact main [data-r53-component="contact.coordinates"] .r53-section-heading {
  width: 100%;
  padding-bottom: 22px !important;
}

/* Home remains the sole display-hero exception, but all following headings and
   cards return to the same rail, typography scale and internal padding. */
.r60-home main [data-r53-component="home.opening-counsel"] .r54-home-authority-inner,
.r60-home main [data-r53-component="home.relationship-cards"] .r54-original-home-link-grid {
  width: min(calc(100% - 2 * var(--r68-edge)), var(--r68-content)) !important;
  max-width: var(--r68-content) !important;
  margin-inline: auto !important;
}

.r60-home main [data-r53-component="home.relationship-cards"] .r63-relationship-body {
  padding: clamp(24px, 2.5vw, 32px) !important;
}

.r60-home main [data-r53-component="home.relationship-cards"] .r54-original-home-link-card h2 {
  max-width: 14ch !important;
  font-size: clamp(30px, 2.5vw, 38px) !important;
  line-height: 1.03 !important;
  text-align: left !important;
}

/* The About flow already sits on the 1160px project rail. R67 applied the
   viewport edge inset a second time to every story group, shrinking three
   peer cards to 212px of usable text and creating avoidable long columns.
   Keep the complete source, but let each group use the rail once. */
html body.gl-r53 .r53-site.r60-surface.r60-about main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-group,
html body.gl-r53 .r53-site.r60-surface.r60-about main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-group:nth-child(odd),
html body.gl-r53 .r53-site.r60-surface.r60-about main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-group:nth-child(even) {
  padding: var(--r68-section) 0 !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-about main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-entry {
  padding-inline: clamp(28px, 2.8vw, 38px) !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-about main .r54-content-firm-story.r54-standard-firm-story :where(.r54-firm-story-group-heading h2,.r54-firm-story-entry > h3) {
  overflow: visible !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-about main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-group-authority {
  grid-template-columns: minmax(280px, .34fr) minmax(0, .66fr) !important;
  gap: clamp(46px, 6vw, 82px) !important;
  padding: var(--r68-section) clamp(36px, 5vw, 72px) !important;
  background: var(--r67-red-deep) !important;
  box-shadow: none !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-about main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-group-authority :where(.r54-firm-story-group-grid,.r54-firm-story-entry) {
  border-color: rgba(255,255,255,.28) !important;
  background: transparent !important;
}

/* Cascade lock after all legacy route experiments: every main-content shell
   terminates on the same 1160px rail. Header chrome remains on its independent
   1280px shell; Home's display media can stay full-bleed around this inner rail. */
body.gl-r53 .r53-site.r60-surface main .r53-shell {
  width: min(calc(100% - 2 * var(--r68-edge)), var(--r68-content)) !important;
  max-width: var(--r68-content) !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

html body.gl-r53 .r53-site.r60-surface main .r54-route-hero.r53-page-hero-has-media .r54-route-hero-grid {
  grid-template-columns: minmax(330px, .42fr) minmax(0, .58fr) !important;
  grid-template-rows: var(--r68-hero) !important;
  width: min(calc(100% - 2 * var(--r68-edge)), var(--r68-content)) !important;
  max-width: var(--r68-content) !important;
  height: var(--r68-hero) !important;
  min-height: var(--r68-hero) !important;
  overflow: hidden !important;
}

html body.gl-r53 .r53-site.r60-surface main .r54-route-hero.r53-page-hero-has-media .r54-route-hero-title {
  position: relative !important;
  inset: auto !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: auto !important;
  height: 100% !important;
  min-height: 0 !important;
  place-content: center start !important;
  justify-items: start !important;
  padding: clamp(42px, 4.7vw, 60px) clamp(34px, 4.2vw, 52px) !important;
  background: linear-gradient(140deg, var(--r67-night), var(--r67-red-deep)) !important;
  text-align: left !important;
}

html body.gl-r53 .r53-site.r60-surface main .r54-route-hero.r53-page-hero-has-media .r53-page-hero-media {
  position: relative !important;
  inset: auto !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
}

html body.gl-r53 .r53-site.r60-surface main .r54-route-hero.r53-page-hero-has-media .r54-route-hero-title h1,
html body.gl-r53 .r53-site.r60-surface main .r53-section-heading h2 {
  margin-inline: 0 !important;
  text-align: left !important;
}

html body.gl-r53 .r53-site.r60-surface main .r53-section-heading h2 {
  max-width: 14ch !important;
  font-size: clamp(40px, 3.6vw, 50px) !important;
  line-height: 1.02 !important;
}

@media (max-width: 820px) {
  :root {
    --r68-edge: 20px;
    --r68-section: clamp(50px, 11vw, 66px);
    --r68-section-tight: clamp(38px, 8vw, 50px);
  }

  .r60-surface main .r54-route-hero .r54-route-hero-grid,
  .r60-surface main .r54-route-hero.r53-page-hero-has-media .r54-route-hero-grid,
  .r60-about main .r54-route-hero.r54-route-hero-firm-story .r54-route-hero-grid,
  .r60-firm main .r54-route-hero.r54-route-hero-firm-people .r54-route-hero-grid,
  .r60-practice-detail main .r54-route-hero.r54-route-hero-practice-family .r54-route-hero-grid,
  .r60-contact main [data-r53-component="contact.intro"] .r54-route-hero-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto clamp(210px, 55vw, 280px) !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
  }

  .r60-surface main .r54-route-hero:not(.r53-page-hero-has-media) .r54-route-hero-grid {
    grid-template-rows: auto !important;
  }

  .r60-surface main .r54-route-hero .r54-route-hero-title,
  .r60-surface main .r54-route-hero.r53-page-hero-has-media .r54-route-hero-title,
  .r60-about main .r54-route-hero.r54-route-hero-firm-story .r54-route-hero-title,
  .r60-firm main .r54-route-hero.r54-route-hero-firm-people .r54-route-hero-title,
  .r60-practice-detail main .r54-route-hero.r54-route-hero-practice-family .r54-route-hero-title,
  .r60-contact main [data-r53-component="contact.intro"] .r54-route-hero-title {
    position: relative !important;
    inset: auto !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: auto !important;
    min-height: 156px !important;
    padding: 36px var(--r68-edge) 34px !important;
    background: linear-gradient(135deg, var(--r67-night), var(--r67-red-deep)) !important;
  }

  .r60-surface main .r54-route-hero .r54-route-hero-title h1,
  .r60-surface main .r54-route-hero.r53-page-hero-has-media .r54-route-hero-title h1,
  .r60-about main .r54-route-hero.r54-route-hero-firm-story .r54-route-hero-title h1,
  .r60-firm main .r54-route-hero.r54-route-hero-firm-people .r54-route-hero-title h1,
  .r60-practice-detail main .r54-route-hero.r54-route-hero-practice-family .r54-route-hero-title h1,
  .r60-contact main [data-r53-component="contact.intro"] h1 {
    max-width: 13ch !important;
    margin: 11px 0 0 !important;
    font-size: clamp(40px, 11vw, 48px) !important;
    line-height: 1 !important;
    text-align: left !important;
  }

  .r60-surface main .r54-route-hero .r53-page-hero-media,
  .r60-surface main .r54-route-hero.r53-page-hero-has-media .r53-page-hero-media,
  .r60-about main .r54-route-hero.r54-route-hero-firm-story .r53-page-hero-media,
  .r60-firm main .r54-route-hero.r54-route-hero-firm-people .r53-page-hero-media,
  .r60-practice-detail main .r54-route-hero.r54-route-hero-practice-family .r53-page-hero-media,
  .r60-contact main [data-r53-component="contact.intro"] .r53-page-hero-media {
    position: relative !important;
    inset: auto !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
    height: clamp(210px, 55vw, 280px) !important;
  }

  .r60-surface main .r53-section-heading h2 {
    max-width: 15ch !important;
    font-size: clamp(34px, 9.6vw, 42px) !important;
    line-height: 1.04 !important;
  }

  .r60-surface main :where(.r54-narrative-chapter,.r54-counsel-chapter,.r65-full-biography) > :where(h2,h3),
  .r60-surface main .r65-biography-heading {
    max-width: 16ch !important;
    font-size: clamp(30px, 8.4vw, 38px) !important;
    line-height: 1.08 !important;
  }

  .r60-george main .r67-profile-authority-hero .r54-identity-profile-copy {
    display: block !important;
    min-height: 0 !important;
    padding: 38px 0 36px !important;
    text-align: left !important;
  }

  .r60-george main .r67-profile-authority-hero h1 {
    width: auto !important;
    max-width: 13ch !important;
    margin: 4px 0 0 !important;
    font-size: clamp(42px, 12vw, 52px) !important;
    line-height: 1 !important;
    text-align: left !important;
  }

  .r60-george main .r67-profile-authority-hero .r67-profile-hero-statement {
    grid-template-columns: 34px minmax(0, 1fr) !important;
    gap: 14px !important;
    margin-top: 24px !important;
    padding: 22px 0 0 !important;
    border-top: 1px solid rgba(255,255,255,.24) !important;
    border-left: 0 !important;
    font-size: 16.5px !important;
    line-height: 1.5 !important;
  }

  .r60-contact main [data-r53-component="contact.coordinates"] .r53-office-record-copy {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 24px !important;
    padding-block: var(--r68-section-tight) !important;
  }

  .r60-contact main [data-r53-component="contact.coordinates"] .r53-fact-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .r60-contact main [data-r53-component="contact.coordinates"] .r53-fact-grid > div,
  .r60-contact main [data-r53-component="contact.coordinates"] .r53-fact-grid > div:nth-child(odd) {
    min-height: 0 !important;
    padding: 20px 0 !important;
  }

.r60-george main [data-r53-component="counsel.credentials"] .r54-counsel-biography-grid {
    width: min(calc(100% - 2 * var(--r68-edge)), var(--r68-content)) !important;
  }

  .r60-home main [data-r53-component="home.relationship-cards"] .r54-original-home-link-grid {
    width: 100% !important;
    max-width: none !important;
    padding-inline: var(--r68-edge) !important;
    scroll-padding-inline: var(--r68-edge) !important;
  }

  html body.gl-r53 .r53-site.r60-surface.r60-home main [data-r53-component="home.relationship-cards"] .r54-original-home-link-grid {
    width: 100% !important;
    max-width: none !important;
    padding-inline: var(--r68-edge) !important;
  }

  .r60-home main [data-r53-component="home.relationship-cards"] .r54-original-home-link-card h2 {
    max-width: 15ch !important;
    font-size: clamp(29px, 8vw, 35px) !important;
    line-height: 1.04 !important;
  }

  /* Final mobile cascade lock. Earlier route experiments used 100%-height
     overlay titles; their used value could keep the first grid track at the
     old 350px even after the grid itself switched to two rows. Bind the outer
     grid, title and media together so no hidden second hero or clipped image
     can survive. */
  html body.gl-r53 .r53-site.r60-surface main .r54-route-hero.r53-page-hero-has-media .r54-route-hero-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: minmax(156px, auto) clamp(210px, 55vw, 280px) !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  html body.gl-r53 .r53-site.r60-surface main .r54-route-hero.r53-page-hero-has-media .r54-route-hero-title {
    position: relative !important;
    inset: auto !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: auto !important;
    min-height: 156px !important;
    padding: 36px var(--r68-edge) 34px !important;
    place-content: center start !important;
    justify-items: start !important;
    background: linear-gradient(135deg, var(--r67-night), var(--r67-red-deep)) !important;
    text-align: left !important;
  }

  html body.gl-r53 .r53-site.r60-surface main .r54-route-hero.r53-page-hero-has-media .r53-page-hero-media {
    position: relative !important;
    inset: auto !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    height: clamp(210px, 55vw, 280px) !important;
    min-height: 0 !important;
  }

  .r60-about main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-entry > h3 {
    width: 100% !important;
    max-width: 100% !important;
    font-size: clamp(28px, 7.7vw, 32px) !important;
    line-height: 1.08 !important;
    text-wrap: balance;
  }

  html body.gl-r53 .r53-site.r60-surface.r60-about main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-group,
  html body.gl-r53 .r53-site.r60-surface.r60-about main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-group:nth-child(odd),
  html body.gl-r53 .r53-site.r60-surface.r60-about main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-group:nth-child(even) {
    padding: var(--r68-section-tight) 0 !important;
  }

  html body.gl-r53 .r53-site.r60-surface.r60-about main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-entry {
    padding-inline: 0 !important;
  }

  html body.gl-r53 .r53-site.r60-surface.r60-about main .r54-content-firm-story.r54-standard-firm-story .r54-firm-story-group-authority {
    display: block !important;
    padding: var(--r68-section-tight) var(--r68-edge) !important;
  }

  html body.gl-r53 .r53-site.r60-surface.r60-contact main [data-r53-component="contact.coordinates"] .r53-section-heading h2 {
    max-width: 15ch !important;
    font-size: clamp(36px, 9.5vw, 40px) !important;
    line-height: 1.04 !important;
  }

  html body.gl-r53 .r53-site.r60-surface.r60-contact main [data-r53-component="contact.coordinates"] .r53-fact-grid > div {
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) !important;
    gap: 14px !important;
    align-items: start !important;
    min-height: 0 !important;
    padding: 18px 0 !important;
  }

  html body.gl-r53 .r53-site.r60-surface.r60-george main .r67-profile-authority-hero .r54-identity-profile-copy {
    justify-items: start !important;
    align-items: start !important;
    text-align: left !important;
  }

  html body.gl-r53 .r53-site.r60-surface.r60-george main .r67-profile-authority-hero h1 {
    justify-self: start !important;
    margin-inline: 0 !important;
    text-align: left !important;
  }

  html body.gl-r53 .r53-site.r60-surface.r60-george main .r67-profile-authority-hero :where(.r53-eyebrow,.r53-profile-role) {
    justify-self: start !important;
    margin-inline: 0 !important;
    text-align: left !important;
  }

  html body.gl-r53 .r53-site.r60-surface.r60-george main .r67-profile-education > h3 {
    width: 100% !important;
    max-width: 100% !important;
    font-size: clamp(31px, 8.5vw, 36px) !important;
    line-height: 1.06 !important;
  }
}

/* George's current approved 4:5 derivative already matches the frame. State
   full-frame preservation explicitly so a later aspect-ratio change cannot
   silently crop the face, shoulders or microphone edge. */
.r60-george main .r65-profile-portrait-image {
  object-fit: contain !important;
  object-position: 50% 50% !important;
}

/* R68 control and media refinement. Decorative pictograms no longer compete
   with the profile facts; actionable controls keep one project-owned arrow,
   and native video titles sit above the player instead of in a second footer
   bar that changes the perceived frame. */
html body.gl-r53 .r53-site.r60-surface.r60-george main .r67-profile-authority-hero .r67-profile-hero-statement {
  display: block !important;
  padding-left: clamp(24px, 3vw, 34px) !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-george main .r67-profile-authority-hero .r67-profile-hero-statement > p {
  margin: 0 !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-george main [data-r53-component="counsel.credentials"] .r54-counsel-fact-strip > div {
  display: block !important;
  min-height: 112px !important;
  padding: 24px clamp(22px, 2.3vw, 30px) 24px 0 !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-george main [data-r53-component="counsel.credentials"] .r54-counsel-fact-strip > div:last-child {
  padding-left: clamp(22px, 2.3vw, 30px) !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-george main .r65-profile-disciplines {
  display: block !important;
  margin-top: 18px !important;
  padding: 0 0 20px !important;
  color: #514a4d !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-george main .r65-profile-contact-line > span {
  grid-template-columns: 24px minmax(0, 1fr) !important;
  gap: 10px !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-george main .r67-profile-contact-icon {
  display: grid;
  width: 20px;
  height: 20px;
  place-items: center;
}

html body.gl-r53 .r53-site.r60-surface.r60-george main .r67-profile-contact-icon .r67-icon {
  width: 18px !important;
  height: 18px !important;
}

html body.gl-r53 .r53-site.r60-surface main .r54-source-video-grid {
  gap: clamp(24px, 3vw, 34px) !important;
  background: transparent !important;
}

html body.gl-r53 .r53-site.r60-surface main .r67-self-hosted-video {
  display: flex !important;
  flex-direction: column !important;
  overflow: visible !important;
  background: transparent !important;
  color: var(--r67-ink) !important;
}

html body.gl-r53 .r53-site.r60-surface main .r67-self-hosted-video figcaption {
  order: 0;
  display: block !important;
  min-height: 0 !important;
  padding: 0 0 16px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--r67-ink) !important;
}

html body.gl-r53 .r53-site.r60-surface main .r67-self-hosted-video figcaption b {
  display: block;
  max-width: 36ch !important;
  color: inherit !important;
  font-family: var(--r53-serif) !important;
  font-size: clamp(22px, 2vw, 28px) !important;
  font-weight: 500 !important;
  line-height: 1.18 !important;
  letter-spacing: -.025em !important;
  text-wrap: balance;
}

html body.gl-r53 .r53-site.r60-surface main .r67-self-hosted-video video {
  order: 1;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  background: #080608 !important;
  object-fit: contain !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-george main [data-r53-component="counsel.credentials"].r54-counsel-biography {
  padding-bottom: clamp(58px, 6vw, 78px) !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-george main .r65-profile-video-section {
  display: block !important;
  margin-top: clamp(52px, 5.5vw, 72px) !important;
  padding-top: clamp(42px, 4.5vw, 58px) !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-george main .r65-profile-video-section > .r53-eyebrow {
  margin: 0 0 20px !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-george main .r65-profile-video-section .r54-source-video-grid {
  width: 100% !important;
}

/* A relationship card already has a number and a destination action. The
   action arrow is the sole icon and uses the same non-circular geometry as
   the rest of the destination controls. */
html body.gl-r53 .r53-site.r60-surface.r60-home main .r63-relationship-meta {
  justify-content: flex-start !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-home main .r63-relationship-arrow {
  width: 28px !important;
  height: 28px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--r67-red) !important;
}

html body.gl-r53 .r53-site.r60-surface.r60-home main .r54-original-home-link-card:is(:hover,:focus-visible) .r63-relationship-arrow {
  background: transparent !important;
  color: var(--r67-red-deep) !important;
}

/* The renderer supplies one SVG arrow. Retired pseudo-element arrows are
   suppressed so wide and narrow CTAs cannot show a second glyph. */
html body.gl-r53 .r53-site.r60-surface :where(.r54-integrated-inquiry-link,.r54-practice-inquiry-link)::after {
  display: none !important;
  content: none !important;
}

html body.gl-r53 .r53-site.r60-surface :where(.r54-integrated-inquiry-link,.r54-practice-inquiry-link) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 22px !important;
  gap: 16px !important;
  align-items: center !important;
  min-height: 56px !important;
  padding: 13px 18px !important;
}

html body.gl-r53 .r53-site.r60-surface :where(.r54-integrated-inquiry-link,.r54-practice-inquiry-link) .r67-action-icon {
  display: grid !important;
  width: 22px !important;
  height: 22px !important;
  place-items: center !important;
}

html body.gl-r53 .r53-site.r60-surface :where(.r54-integrated-inquiry-link,.r54-practice-inquiry-link) .r67-action-icon .r67-icon {
  width: 18px !important;
  height: 18px !important;
}

@media (max-width: 360px) {
  :root { --r68-edge: 18px; }

  .r60-surface main .r54-route-hero .r54-route-hero-title,
  .r60-contact main [data-r53-component="contact.intro"] .r54-route-hero-title {
    padding-inline: var(--r68-edge) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .r60-surface * { scroll-behavior: auto !important; }
}
