/* /about/leadership, family FIRM "Material". Loaded after /about/assets/about.css and reuses its plates, ledger,
   regulated grid, docs list and closing. This file adds only what the page has that /about does not: a hero with no
   block stage, facts inside each plate, the disclosed-roles list, the Form CRS questions and the related links. */

/* ---------- hero: no block stage, so the copy starts the page ---------- */
.lead-hero { padding-top: clamp(72px, 8vw, 120px); }
.lead-hero .hero-copy { margin-top: 0; }
.hero-mark { display: block; width: 56px; height: 56px; margin: 0 auto 28px; }
.hero-mark svg { width: 100%; height: 100%; display: block; overflow: visible; filter: drop-shadow(0 10px 14px rgba(60, 70, 110, .2)); }

/* ---------- plates: names line up across the row, sources sit on the ledge ---------- */
.lead-plates .plate { min-height: 340px; }
.lead-plates .mono { margin-bottom: 0; }
.plate-facts {
  list-style: none; margin: 20px 0 0; padding: 16px 0 0; border-top: 1px solid var(--line);
  font-size: 15px; line-height: 1.5; color: var(--ink-2);
}
.plate-facts li + li { margin-top: 10px; }
.plate-src {
  margin: auto 0 0; padding-top: 22px;
  font: 600 11.5px/1.35 var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3);
}

/* ---------- other roles, disclosed ---------- */
.roles .regulated-body > p:first-child { margin-bottom: 32px; }
.facts { list-style: none; margin: 0; padding: 0; border-top: 1px solid rgba(29, 33, 38, .7); }
.facts li {
  position: relative; padding: 20px 0 20px 30px; border-bottom: 1px solid var(--line);
  font-size: 17px; line-height: 1.6; color: var(--ink); max-width: 46em; text-wrap: pretty;
}
.facts li::before { /* a short rule, like a filing's line marker */
  content: ""; position: absolute; left: 0; inset-block-start: 33px; width: 14px; height: 1px; background: var(--ink-2);
}
.regulated-body > p.standard {
  margin: 32px 0 0; padding: 22px 24px; border-radius: 8px; max-width: 46em;
  font: 400 17px/1.6 var(--sans); color: var(--ink);
  background: rgba(255, 255, 255, .6); box-shadow: inset 0 0 0 1px var(--line), inset 0 1px 0 #fff;
}
.regulated-body > p.src, .filings-body > p.src {
  margin: 22px 0 0; font: 400 14px/1.55 var(--sans); color: var(--ink-3); max-width: 46em;
}
.src a { display: inline-flex; align-items: center; min-height: 44px; color: var(--ink); text-underline-offset: 4px; }
.lead h2 { text-wrap: balance; }
/* the four record links keep one height when a label wraps */
.check .docs a { height: 100%; }

/* ---------- what the filings report: the /about ledger, longer labels ---------- */
.filings .ledger { --label: 14rem; }
.filings .ledger dd { font-size: clamp(22px, 2vw, 29px); }

/* ---------- questions to ask any of us ---------- */
.questions { padding: clamp(80px, 10vw, 130px) 0; border-top: 1px solid var(--line); }
.questions h2 { font: 400 clamp(40px, 4.4vw, 62px)/1.02 var(--serif); letter-spacing: -.012em; margin: 0; }
.questions-head { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 48px; align-items: end; margin-bottom: 40px; }
.questions-note { margin: 0; font-size: 16.5px; line-height: 1.6; color: var(--ink-2); max-width: 34em; }
.qs { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(18px, 2.4vw, 32px); }
.q {
  position: relative; display: flex; flex-direction: column; padding: 30px 28px 26px; border-radius: 7px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .78), rgba(255, 255, 255, .36));
  box-shadow: inset 2px 0 0 rgba(255, 255, 255, .9), inset 0 -2px 0 rgba(29, 33, 38, .06), 0 0 0 1px rgba(29, 33, 38, .12), 0 22px 28px -26px rgba(29, 33, 38, .3);
}
.q-text { margin: 0 0 22px; font: 400 clamp(22px, 1.9vw, 26px)/1.3 var(--serif); color: var(--ink); text-wrap: pretty; }
.q-src { margin: auto 0 0; font: 600 11.5px/1.3 var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3); }
.questions-after { margin: 36px 0 0; font-size: 17px; line-height: 1.6; color: var(--ink-2); max-width: 44em; }

/* ---------- check the record yourself ---------- */
.regulated-body > p.check-note { margin: 24px 0 0; font: 400 15px/1.6 var(--sans); color: var(--ink-2); max-width: 44em; }
.text-link { display: inline-flex; align-items: center; min-height: 44px; font: 500 15px/1.3 var(--sans); color: var(--ink); text-underline-offset: 5px; }

/* ---------- related links ---------- */
.related { padding: 0 0 clamp(72px, 8vw, 104px); }
.related-in { border-top: 1px solid rgba(29, 33, 38, .7); padding-top: 28px; display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 48px; align-items: start; }
.related-title { margin: 0; font: 600 12.5px/1.2 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--ink-2); padding-top: 18px; }
.related-links { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.related-links li + li a { border-left: 1px solid var(--line); }
.related-links a {
  display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 56px; padding: 14px 18px;
  text-decoration: none; color: var(--ink); font: 500 16px/1.2 var(--sans); transition: background .3s;
}
.related-links li:first-child a { padding-left: 0; }
.related-links a:hover { background: rgba(255, 255, 255, .7); text-decoration: underline; text-underline-offset: 4px; }

/* ---------- tablet ---------- */
@media (max-width: 1020px) {
  .questions-head, .related-in { grid-template-columns: 1fr; gap: 16px; }
  .qs { grid-template-columns: 1fr; }
  .related-links { grid-template-columns: 1fr 1fr; }
  .related-links li:nth-child(3) a { border-left: 0; padding-left: 0; }
  .lead-plates .plate { min-height: 300px; }
}

/* ---------- phone ---------- */
@media (max-width: 760px) {
  .lead-hero { padding-top: 48px; }
  .lead-hero .hero-copy { margin-top: 0; }
  .hero-mark { width: 48px; height: 48px; margin-bottom: 22px; }
  .lead-plates .plate { min-height: 0; }
  .plate-src { padding-top: 18px; }
  .facts li { padding-left: 24px; font-size: 16px; }
  .facts li::before { width: 10px; }
  .regulated-body > p.standard { padding: 18px 18px; font-size: 16px; }
  .filings .ledger { --label: 0px; }
  .filings .ledger dd { font-size: 23px; }
  .questions { padding: 64px 0; }
  .questions-head { margin-bottom: 28px; }
  .q { padding: 24px 22px 22px; }
  .related-links a { padding: 14px 14px; }
}
@media (max-width: 420px) {
  .related-links { grid-template-columns: 1fr; }
  .related-links li + li a { border-left: 0; }
  .related-links a { padding-left: 0; }
}
