/* Public leadership chart with scoped portfolio responsibilities. */
.hf-leadership { --hf-gold: #be8a23; --hf-gold-light: #e2b957; --hf-ink: #171717; --hf-muted: #665f55; --hf-line: #e5ddd0; }
.hf-leadership-heading { max-width: 800px; }
.hf-leadership-heading h2 { max-width: 24ch; font-size: clamp(2.2rem, 4vw, 3.5rem); }
.hf-leadership .hf-org-board { border: 1px solid #ded4c3; border-radius: 20px; background: #fff; overflow: hidden; box-shadow: 0 12px 38px rgba(33, 24, 11, .06); }
.hf-leadership .hf-org-masthead { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 28px 30px; border-bottom: 5px solid var(--hf-gold); background: #171717; color: #fff; }
.hf-leadership .hf-org-brand { display: flex; flex: 1; align-items: center; gap: 22px; min-width: 0; }
.hf-leadership .hf-org-brand > div { flex: 1; min-width: 0; }
.hf-leadership .hf-org-brand img { flex: 0 0 auto; width: 64px; height: auto; }
.hf-leadership .hf-org-brand h3 { margin: 0; color: #fff; font-size: clamp(2rem, 4vw, 3.1rem); line-height: 1.1; letter-spacing: .055em; white-space: nowrap; }
.hf-leadership .hf-org-brand h3 > span { color: var(--hf-gold-light); }
.hf-leadership .hf-org-brand p { margin: 8px 0 0; color: #dedbd5; font-size: .78rem; font-weight: 700; line-height: 1.5; letter-spacing: .16em; text-transform: uppercase; }
.hf-leadership .hf-org-motto { flex: 0 0 auto; margin: 0; padding-left: 24px; border-left: 1px solid #69522b; color: var(--hf-gold-light); font-size: .79rem; font-weight: 800; line-height: 1.5; letter-spacing: .04em; text-transform: uppercase; }
.hf-leadership .hf-hierarchy { padding: 36px 26px 32px; }
.hf-leadership .hf-chair { position: relative; width: min(100%, 580px); margin: 0 auto; border: 2px solid var(--hf-gold); border-radius: 16px; background: #fff; }
.hf-leadership .hf-chair::after { content: ''; position: absolute; left: 50%; bottom: -25px; height: 24px; border-left: 2px solid #333; }
.hf-leadership .hf-chair-head { display: flex; align-items: center; justify-content: center; gap: 17px; padding: 17px 24px; border-radius: 13px 13px 0 0; background: #171717; }
.hf-leadership .hf-chair h3 { margin: 0; color: var(--hf-gold-light); font-size: clamp(1.3rem, 2.4vw, 1.65rem); line-height: 1.25; font-weight: 800; overflow-wrap: anywhere; }
.hf-leadership .hf-icon { display: flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 48px; height: 48px; border: 2px solid var(--hf-color, var(--hf-gold)); border-radius: 50%; background: var(--hf-tone, #fbf4e4); color: var(--hf-color, var(--hf-gold)); }
.hf-leadership .hf-icon svg { display: block; width: 28px; height: 28px; }
.hf-leadership .hf-icon-crown { width: 51px; height: 51px; border-color: var(--hf-gold-light); background: #0a0a0a; color: var(--hf-gold-light); }
.hf-leadership .hf-chair-body { padding: 17px 27px 22px; text-align: center; }
.hf-leadership .hf-role { margin: 0; color: var(--hf-ink); font-size: .85rem; line-height: 1.45; font-weight: 700; }
.hf-leadership .hf-chair-body .hf-role { margin-bottom: 8px; font-size: 1rem; font-weight: 800; }
.hf-leadership .hf-responsibility { margin: 16px 0 0; color: #4f4941; font-size: .85rem; line-height: 1.6; }
.hf-leadership .hf-chair-body .hf-responsibility { max-width: 470px; margin: 0 auto; font-size: .91rem; }
.hf-leadership .hf-reporting-divider { display: none; margin: 13px 0 -27px; color: var(--hf-muted); font-size: .73rem; line-height: 1.4; text-align: center; background: #fff; position: relative; z-index: 1; }
.hf-leadership .hf-direct-reports { position: relative; margin-top: 48px; }
.hf-leadership .hf-portfolio-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.hf-leadership .hf-report-rail { position: absolute; top: -24px; left: calc((100% - 54px) / 8); right: calc((100% - 54px) / 8); border-top: 2px solid #333; }
.hf-leadership .hf-portfolio { position: relative; display: flex; flex-direction: column; min-width: 0; padding: 23px 18px 20px; border: 1px solid var(--hf-color); border-top: 6px solid var(--hf-color); border-radius: 15px; background: #fff; }
.hf-leadership .hf-portfolio::before { content: ''; position: absolute; top: -29px; left: 50%; height: 23px; border-left: 2px solid #333; }
.hf-leadership .hf-portfolio-communications { --hf-color: #07699e; --hf-tone: #eaf5fc; }
.hf-leadership .hf-portfolio-strategy { --hf-color: #087447; --hf-tone: #eaf6ef; }
.hf-leadership .hf-portfolio-women { --hf-color: #7c427c; --hf-tone: #f8eef7; }
.hf-leadership .hf-portfolio-compliance { --hf-color: #a6740e; --hf-tone: #fff7df; }
.hf-leadership .hf-portfolio-compliance::after { content: ''; position: absolute; bottom: -28px; left: 50%; height: 26px; border-left: 2px solid #333; }
.hf-leadership .hf-person-heading { display: flex; align-items: flex-start; gap: 12px; }
.hf-leadership .hf-person-heading > div { min-width: 0; }
.hf-leadership .hf-portfolio h3 { margin: 0 0 9px; color: var(--hf-ink); font-size: 1.08rem; line-height: 1.3; font-weight: 800; letter-spacing: -.018em; overflow-wrap: anywhere; }
.hf-leadership .hf-reports-to { margin: auto 0 0; padding-top: 17px; color: var(--hf-muted); font-size: .7rem; line-height: 1.5; }
.hf-leadership .hf-reports-to strong { font-weight: 700; }
.hf-leadership .hf-portfolio .hf-responsibility { margin-bottom: 17px; }
.hf-leadership .hf-reporting-group { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-top: 52px; scroll-margin-top: 105px; }
.hf-leadership .hf-group-heading { padding: 3px 0; }
.hf-leadership .hf-small-label { display: block; margin-bottom: 9px; color: #936807; font-size: .68rem; font-weight: 800; line-height: 1.4; letter-spacing: .11em; text-transform: uppercase; }
.hf-leadership .hf-group-heading h3 { margin: 0 0 12px; color: var(--hf-ink); font-size: 1.1rem; line-height: 1.35; }
.hf-leadership .hf-group-heading p { margin: 0 0 8px; color: var(--hf-muted); font-size: .78rem; line-height: 1.5; }
.hf-leadership .hf-group-heading .hf-team-note { color: #7c7265; font-size: .73rem; }
.hf-leadership .hf-team-grid, .hf-leadership .hf-vacancy-grid { display: grid; list-style: none; margin: 0; padding: 0; }
.hf-leadership .hf-team-wrap { position: relative; grid-column: 2 / 5; }
.hf-leadership .hf-team-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.hf-leadership .hf-team-rail { position: absolute; top: -26px; left: calc((100% - 36px) / 6); right: calc((100% - 36px) / 6); border-top: 2px solid #333; }
.hf-leadership .hf-team-grid > li { min-width: 0; }
.hf-leadership .hf-team-person { position: relative; display: flex; flex-direction: column; align-items: flex-start; height: 100%; padding: 20px 18px; border: 1px solid #c7a052; border-radius: 13px; background: #fffcf6; }
.hf-leadership .hf-team-person::before { content: ''; position: absolute; top: -27px; left: 50%; height: 26px; border-left: 2px solid #333; }
.hf-leadership .hf-icon-small { width: 35px; height: 35px; border-width: 1px; }
.hf-leadership .hf-icon-small svg { width: 20px; height: 20px; }
.hf-leadership .hf-team-person h4 { margin: 12px 0; color: var(--hf-ink); font-size: .98rem; line-height: 1.4; overflow-wrap: anywhere; }
.hf-leadership .hf-team-person > p { margin: auto 0 0; color: var(--hf-muted); font-size: .72rem; line-height: 1.5; }
.hf-leadership .hf-vacancies { padding: 28px 26px 30px; border-top: 1px solid #e4d8bd; background: #fdfbf7; }
.hf-leadership .hf-subsection-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 22px; }
.hf-leadership .hf-subsection-heading h3 { margin: 0; color: var(--hf-ink); font-size: 1.3rem; line-height: 1.3; }
.hf-leadership .hf-subsection-heading > p { margin: 0 0 2px; color: var(--hf-muted); font-size: .75rem; white-space: nowrap; }
.hf-leadership .hf-vacancy-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.hf-leadership .hf-vacancy-card { min-width: 0; padding: 20px 15px; border: 1px solid #c9a35a; border-top: 4px solid #c9a35a; border-radius: 13px; background: #fff; }
.hf-leadership .hf-vacancy-heading { display: flex; align-items: center; gap: 11px; margin-bottom: 17px; }
.hf-leadership .hf-icon-vacant { width: 36px; height: 36px; border: 0; background: #e8e6e2; color: #85817a; }
.hf-leadership .hf-icon-vacant svg { width: 22px; height: 22px; }
.hf-leadership .hf-vacancy-status { color: #777066; font-size: .74rem; font-weight: 800; line-height: 1; letter-spacing: .06em; text-transform: uppercase; }
.hf-leadership .hf-vacancy-card h4 { margin: 0; color: #27241f; font-size: .91rem; line-height: 1.4; }
.hf-leadership .hf-vacancy-card .hf-responsibility { margin-top: 12px; font-size: .79rem; }
.hf-leadership .hf-org-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 26px; border-top: 1px solid #e4d8bd; background: #f6f2e9; }
.hf-leadership .hf-org-footer > p { margin: 0; color: #655d4c; font-size: .8rem; line-height: 1.5; }
.hf-leadership .hf-org-footer > p strong { color: #25221b; font-size: 1rem; }
.hf-leadership .hf-org-footer > p > span { margin: 0 8px; color: #a37a29; }
.hf-leadership .hf-download { color: #865f06; font-size: .82rem; line-height: 1.5; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.hf-leadership .hf-download > span { margin-left: 4px; font-weight: 500; }
.hf-leadership .hf-structure { margin-top: 24px; border: 1px solid var(--hf-line); border-radius: 14px; background: #fff; overflow: hidden; }
.hf-leadership .hf-structure summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 21px 26px; list-style: none; cursor: pointer; }
.hf-leadership .hf-structure summary::-webkit-details-marker { display: none; }
.hf-leadership .hf-structure-summary { display: flex; flex-direction: column; gap: 5px; }
.hf-leadership .hf-structure-summary strong { color: var(--hf-ink); font-size: .95rem; line-height: 1.4; font-weight: 700; }
.hf-leadership .hf-structure-summary > span { color: var(--hf-muted); font-size: .78rem; line-height: 1.5; }
.hf-leadership .hf-structure-plus { display: flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; background: #f8f0dd; color: #865f06; font-size: 1.4rem; line-height: 1; }
.hf-leadership .hf-structure[open] .hf-structure-plus { transform: rotate(45deg); }
.hf-leadership .hf-structure[open] summary { border-bottom: 1px solid var(--hf-line); }
.hf-leadership .hf-structure-content { padding: 22px; }
.hf-leadership .hf-structure-content > p { margin: 0 0 18px; color: var(--hf-muted); font-size: .84rem; line-height: 1.6; }
.hf-leadership .hf-structure-content img { display: block; width: 100%; height: auto; border: 1px solid var(--hf-line); border-radius: 8px; }
.hf-leadership a:focus-visible, .hf-leadership .hf-structure summary:focus-visible { outline: 3px solid #be8a23; outline-offset: 5px; }
@media (max-width: 1100px) {
  .hf-leadership .hf-direct-reports { margin-top: 25px; }
  .hf-leadership .hf-portfolio-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .hf-leadership .hf-chair::after, .hf-leadership .hf-report-rail, .hf-leadership .hf-portfolio::before, .hf-leadership .hf-portfolio-compliance::after, .hf-leadership .hf-team-rail, .hf-leadership .hf-team-person::before { display: none; }
  .hf-leadership .hf-reporting-divider { display: none; margin: 22px 0 0; }
  .hf-leadership .hf-reporting-group { display: block; margin-top: 28px; padding-top: 25px; border-top: 1px solid #e4d8bd; }
  .hf-leadership .hf-group-heading { margin-bottom: 20px; }
  .hf-leadership .hf-team-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .hf-leadership .hf-vacancy-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .hf-leadership .hf-org-masthead { padding: 23px 22px; }
  .hf-leadership .hf-org-motto { display: none; }
  .hf-leadership .hf-org-brand { gap: 15px; }
  .hf-leadership .hf-org-brand img { width: 46px; }
  .hf-leadership .hf-org-brand p { font-size: .64rem; letter-spacing: .08em; }
  .hf-leadership .hf-team-grid { grid-template-columns: 1fr; gap: 14px; }
  .hf-leadership .hf-vacancy-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hf-leadership .hf-hierarchy, .hf-leadership .hf-vacancies { padding: 25px 20px; }
  .hf-leadership .hf-org-footer { display: block; padding: 20px; }
  .hf-leadership .hf-org-footer > p { margin-bottom: 12px; }
  .hf-leadership .hf-subsection-heading { display: block; }
  .hf-leadership .hf-subsection-heading > p { margin-top: 10px; }
}
@media (max-width: 640px) {
  .hf-leadership .hf-org-brand h3 { font-size: clamp(1.4rem, 6.5vw, 2rem); }
  .hf-leadership .hf-portfolio-grid, .hf-leadership .hf-vacancy-grid { grid-template-columns: 1fr; }
  .hf-leadership .hf-chair-head { padding: 17px; justify-content: flex-start; gap: 13px; }
  .hf-leadership .hf-chair-body { padding: 17px 20px; }
  .hf-leadership .hf-icon-crown { width: 43px; height: 43px; }
  .hf-leadership .hf-structure summary { padding: 20px; gap: 14px; }
  .hf-leadership .hf-structure-content { padding: 15px; }
}
@media print {
  .hf-leadership .hf-chair, .hf-leadership .hf-portfolio, .hf-leadership .hf-team-person, .hf-leadership .hf-vacancy-card { break-inside: avoid; }
}

.hf-leadership { padding-block: 68px; scroll-margin-top: 100px; }
@media (max-width: 760px) { .hf-leadership { padding-block: 50px; } }

/* Executive leadership refinement: explicit reporting labels across all screen sizes. */
.hf-leadership { --hf-gold:#d56b20; --hf-gold-light:#ffb172; --hf-line:#e4e7ec; --hf-muted:#596170; }
.hf-leadership .hf-org-board { border-color:var(--hf-line); border-radius:16px; box-shadow:0 8px 28px rgba(16,24,40,.05); }
.hf-leadership .hf-org-masthead { padding:28px 32px; border-bottom:3px solid var(--hf-gold); }
.hf-leadership .hf-org-brand h3 { font-size:clamp(1.6rem,3vw,2.3rem); letter-spacing:.025em; }
.hf-leadership .hf-org-motto { border-color:#6d4830; line-height:1.7; }
.hf-leadership .hf-hierarchy { padding:36px 32px; }
.hf-leadership .hf-chair { border:1px solid var(--hf-line); border-top:4px solid var(--hf-gold); border-radius:12px; }
.hf-leadership .hf-chair-head { background:#fafafa; border-radius:8px 8px 0 0; }
.hf-leadership .hf-chair h3 { color:var(--hf-ink); }
.hf-leadership .hf-chair::after,.hf-leadership .hf-report-rail,.hf-leadership .hf-portfolio::before,.hf-leadership .hf-portfolio-compliance::after,.hf-leadership .hf-team-rail,.hf-leadership .hf-team-person::before { display:none; }
.hf-leadership .hf-reporting-divider { display:block; position:static; margin:28px 0 18px; padding:0; background:none; font-size:.83rem; font-weight:600; }
.hf-leadership .hf-direct-reports { margin-top:0; }
.hf-leadership .hf-portfolio-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.hf-leadership .hf-portfolio { --hf-color:#d56b20; --hf-tone:#fff5ed; border:1px solid var(--hf-line); border-top:3px solid var(--hf-gold); border-radius:10px; padding:24px; }
.hf-leadership .hf-person-heading { align-items:flex-start; }
.hf-leadership .hf-person-heading h3 { font-size:1.1rem; line-height:1.4; }
.hf-leadership .hf-responsibility { color:#505968; font-size:.9rem; line-height:1.7; }
.hf-leadership .hf-reports-to { border-top:1px solid var(--hf-line); padding-top:14px; font-size:.78rem; }
.hf-leadership .hf-icon { border:0; border-radius:10px; background:#fff1e6; }
.hf-leadership .hf-icon svg { filter:grayscale(1); opacity:.85; }
.hf-leadership .hf-icon-crown { background:#fff1e6; }
.hf-leadership .hf-reporting-group { border-top:1px solid var(--hf-line); padding-top:28px; margin-top:32px; }
.hf-leadership .hf-team-person { background:#fafbfc; border:1px solid var(--hf-line); border-radius:10px; padding:22px; }
.hf-leadership .hf-vacancies { background:#fafbfc; border-color:var(--hf-line); }
.hf-leadership .hf-vacancy-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.hf-leadership .hf-vacancy-card { border:1px solid var(--hf-line); border-radius:10px; }
.hf-leadership .hf-org-footer { background:#fafbfc; border-color:var(--hf-line); }
@media(max-width:1000px) { .hf-leadership .hf-portfolio-grid,.hf-leadership .hf-vacancy-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .hf-leadership .hf-portfolio-grid,.hf-leadership .hf-vacancy-grid { grid-template-columns:1fr; } .hf-leadership .hf-hierarchy,.hf-leadership .hf-org-masthead { padding:24px 18px; } .hf-leadership .hf-org-motto { display:none; } }

/* Give each reporting team a full-width grid, including the direct football list. */
.hf-leadership .hf-reporting-group { display:block; min-width:0; padding:28px 26px 0; }
.hf-leadership .hf-hierarchy .hf-reporting-group { padding-left:0; padding-right:0; }
.hf-leadership .hf-group-heading { max-width:52rem; margin-bottom:20px; }
.hf-leadership .hf-team-wrap { width:100%; min-width:0; }
.hf-leadership .hf-team-grid { width:100%; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.hf-leadership .hf-team-grid > li { display:block; min-width:0; }
.hf-leadership .hf-team-person { box-sizing:border-box; width:100%; min-width:0; }
.hf-leadership .hf-team-person h4 { word-break:normal; overflow-wrap:normal; hyphens:none; font-size:1.05rem; line-height:1.5; }
@media(max-width:900px) { .hf-leadership .hf-team-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .hf-leadership .hf-team-grid { grid-template-columns:1fr; } .hf-leadership .hf-reporting-group { padding-left:18px; padding-right:18px; } }
