/* Shared inner-page layouts and homepage overviews. */
.office-details + .office-details { margin-top: 36px; padding-top: 32px; border-top: 1px solid var(--line); }
.office-details .section-label { margin-bottom: 20px; }
.office-details .company-address { margin: 20px 0; }
.footer-office h3 { margin-bottom: 7px; color: #e4e9e7; font-size: 13px; line-height: 1.5; font-weight: 500; }
.footer-office + .footer-office { margin-top: 14px; }
.primary-nav > a[aria-current='page']:not(.button)::after { width: 100%; color: var(--gold); }
.primary-nav > .nav-contact[aria-current='page'] { color: #fff; background: var(--navy); border-color: var(--navy); }
.page-masthead { background: var(--paper); border-bottom: 1px solid var(--line); padding-top: 30px; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 13px; align-items: center; font-size: 12px; color: var(--muted); margin-bottom: 55px; }
.breadcrumbs a { text-decoration: underline; text-underline-offset: 4px; text-decoration-color: #b5a487; }
.breadcrumbs a:hover { color: var(--ink); }
.breadcrumbs > span[aria-hidden] { color: #a0927a; }
.page-masthead .section-label { margin-bottom: 22px; }
.page-heading-grid { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(0,1fr); align-items: end; gap: clamp(40px,6vw,90px); padding-bottom: 55px; }
.page-heading-grid h1 { max-width: 780px; font: 400 clamp(45px,4.8vw,68px)/1.13 var(--display); letter-spacing: -1.9px; text-wrap: balance; }
.page-heading-grid > p { max-width: 510px; font-size: 18px; line-height: 1.85; color: var(--muted); padding-bottom: 3px; }
.page-toc { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 32px; padding-block: 22px; border-top: 1px solid #c8bdab; }
.page-toc > span { color: #80673f; font-size: 10px; line-height: 1.5; letter-spacing: 1.8px; text-transform: uppercase; padding-right: 30px; border-right: 1px solid #c8bdab; }
.page-toc > a { font: 16px/1.5 var(--display); text-decoration: underline; text-decoration-color: #b5a487; text-underline-offset: 6px; padding-block: 4px; }
.page-toc > a:hover { color: #80673f; }
body:not([data-page='index']) .about, body:not([data-page='index']) .acquisitions { background: #fff; }
body[data-page='company'] .philosophy, .transaction-notes { background: var(--paper); }
.section-next { margin-top: 30px; }
.home-stewardship { background: var(--navy); color: #fff; }
.home-stewardship .section-label { color: #d3be98; }
.home-stewardship .philosophy-intro { align-items: center; grid-template-columns: minmax(0,1.4fr) minmax(0,1fr); }
.home-stewardship .philosophy-intro > div > p:not(.section-label) { font-size: 18px; line-height: 1.85; color: #cbd4d5; }
.home-acquisition-note { border-left: 1px solid #b9a27b; padding: 8px 0 8px 46px; margin-top: 3px; }
.home-acquisition-note h3 { font: 400 34px/1.25 var(--display); letter-spacing: -.7px; }
.home-acquisition-note > p:not(.section-label) { color: var(--muted); margin-top: 23px; font-size: 17px; line-height: 1.8; }
.home-acquisition-note .text-link { margin-top: 24px; }
.correspondence { background: var(--paper); }
.correspondence .philosophy-intro { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.correspondence-copy > p { color: var(--muted); font-size: 17px; line-height: 1.8; }
.correspondence-copy > p + p { margin-top: 22px; }
.correspondence-copy .text-link { margin-top: 24px; }
.related-pages { background: #fff; padding-block: 65px 70px; }
.related-pages .section-label { margin-bottom: 22px; }
.related-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 50px; }
.related-link { display: flex; align-items: center; justify-content: space-between; gap: 30px; border-top: 1px solid #c1b498; padding-top: 27px; }
.related-link h3 { font: 400 28px/1.3 var(--display); text-transform: none; }
.related-link p { color: var(--muted); font-size: 15px; margin-top: 10px; }
.related-link .arrow { color: #846b42; width: 25px; height: 25px; }
.related-link:hover h3 { text-decoration: underline; text-decoration-color: #b9a27b; text-underline-offset: 6px; }
.contact-band { background: var(--navy); color: #fff; }
.contact-band > .container { display: flex; align-items: center; justify-content: space-between; gap: 45px; padding-block: 65px; border-bottom: 1px solid #526166; }
.contact-band .section-label { color: #d3be98; margin-bottom: 18px; }
.contact-band h2 { font: 400 clamp(31px,3vw,43px)/1.2 var(--display); letter-spacing: -.8px; }
.contact-band h2 + p { color: #c4cdd0; font-size: 16px; margin-top: 15px; }
.contact-band .button { flex-shrink: 0; font-family: var(--display); font-size: 18px; }
@media (min-width: 1001px) and (max-width: 1150px) {
  .primary-nav { gap: 15px; font-size: 12px; }
  .nav-contact { font-size: 16px; padding-inline: 17px; }
}
@media (max-width: 1000px) {
  .page-heading-grid { gap: 35px; grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); }
  .page-heading-grid h1 { font-size: 47px; }
  .page-heading-grid > p { font-size: 16px; line-height: 1.8; }
  .home-acquisition-note { padding-left: 32px; }
  .js-nav .primary-nav > a:not(.button)[aria-current='page'] { text-decoration: underline; text-decoration-color: var(--gold); text-underline-offset: 6px; }
  .js-nav .primary-nav > a:not(.button)::after { display: none; }
}
@media (max-width: 760px) {
  .page-masthead { padding-top: 24px; }
  .breadcrumbs { font-size: 11px; margin-bottom: 38px; }
  .page-heading-grid { grid-template-columns: minmax(0,1fr); gap: 24px; padding-bottom: 35px; }
  .page-heading-grid h1 { font-size: clamp(37px,7vw,50px); line-height: 1.15; letter-spacing: -1.2px; max-width: 590px; }
  .page-heading-grid > p { font-size: 16px; max-width: 600px; }
  .page-toc { gap: 14px 25px; padding-block: 22px 27px; }
  .page-toc > span { flex-basis: 100%; border: 0; padding-right: 0; font-size: 9px; }
  .page-toc > a { font-size: 15px; }
  .home-stewardship .philosophy-intro, .correspondence .philosophy-intro { grid-template-columns: minmax(0,1fr); }
  .home-stewardship .philosophy-intro > div > p:not(.section-label), .correspondence-copy > p { font-size: 16px; }
  .home-acquisition-note { padding: 28px 0 0; margin-top: 3px; border-left: 0; border-top: 1px solid #b9a27b; }
  .home-acquisition-note h3 { font-size: 30px; }
  .home-acquisition-note > p:not(.section-label) { font-size: 16px; }
  .related-pages { padding-block: 50px 55px; }
  .related-grid { grid-template-columns: minmax(0,1fr); gap: 29px; }
  .related-link { padding-top: 23px; }
  .related-link h3 { font-size: 26px; }
  .contact-band > .container { flex-direction: column; align-items: flex-start; gap: 28px; padding-block: 53px; }
  .contact-band h2 { font-size: 34px; }
  .contact-band h2 + p { font-size: 15px; }
}
@media (max-width: 380px) {
  .page-heading-grid h1 { font-size: 35px; }
  .page-toc { gap: 14px 20px; }
  .page-toc > a { font-size: 14px; }
  .contact-band h2 { font-size: 31px; }
}
