.page-hero--leadership { padding-block: clamp(6.5rem, 10vw, 9rem); }
.leadership-hero { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(22rem, 0.88fr); align-items: center; gap: clamp(3rem, 6vw, 6rem); }
.leadership-hero h1 { max-width: 18ch; }
.leadership-hero .lede { max-width: 54ch; }
.page-hero--leadership { background: #0c1624; }
.page-hero--leadership::after { content: none; }
.leadership-hero__mark { width: min(100%, 36rem); aspect-ratio: 1; justify-self: center; }
.leadership-hero__mark svg { display: block; width: 100%; height: auto; overflow: visible; }
.council-flow { fill: none; stroke: #8b9cab; stroke-width: 1; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.council-flow--outer { stroke-opacity: 0.3; }
.council-flow--warm { stroke: #d4a45f; stroke-opacity: 0.43; }
.council-flow--inner { stroke-opacity: 0.4; }
.council-space { fill: #0c1624; stroke: none; }
.council-point, .council-arc { fill: none; stroke: #a1adb9; stroke-opacity: 0.66; stroke-width: 1; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.council-arc { stroke-opacity: 0.36; }
.council-guide path { fill: none; stroke: #d4a45f; stroke-opacity: 0.8; stroke-width: 1; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.council-guide circle:last-child { fill: #d4a45f; }
.leadership-group { overflow: hidden; background-image: radial-gradient(circle at 88% 12%, rgba(79, 125, 166, 0.12), transparent 24%), linear-gradient(112deg, transparent 0 68%, rgba(228, 164, 92, 0.055) 68% 68.1%, transparent 68.1%); }
.leadership-group:nth-child(even) { background-color: #f3eee6; background-image: radial-gradient(circle at 10% 84%, rgba(228, 164, 92, 0.13), transparent 25%), linear-gradient(70deg, transparent 0 36%, rgba(14, 46, 78, 0.05) 36% 36.1%, transparent 36.1%); }
.leadership-group { position: relative; isolation: isolate; background-color: #f7f2ea; background-image: linear-gradient(110deg, rgba(255, 255, 255, 0.72), rgba(223, 235, 243, 0.6)), repeating-linear-gradient(90deg, transparent 0 calc(25% - 1px), rgba(14, 46, 78, 0.055) calc(25% - 1px) 25%); }
.leadership-group:nth-child(even) { background-color: #eaf1f5; background-image: linear-gradient(125deg, rgba(213, 229, 239, 0.82), rgba(249, 241, 231, 0.9)), repeating-linear-gradient(90deg, transparent 0 calc(20% - 1px), rgba(14, 46, 78, 0.05) calc(20% - 1px) 20%); }
.leadership-group::before { position: absolute; z-index: -1; width: min(46vw, 42rem); aspect-ratio: 1.7; right: -9rem; top: 50%; border: 1px solid rgba(199, 116, 43, 0.28); border-radius: 50%; box-shadow: 0 0 0 4rem rgba(14, 46, 78, 0.035), 0 0 0 8rem rgba(199, 116, 43, 0.025); content: ""; transform: translateY(-50%) rotate(-13deg); }
.leadership-group:nth-child(even)::before { right: auto; left: -11rem; transform: translateY(-50%) rotate(12deg); }
.leadership-group::after { position: absolute; z-index: -1; width: 0.55rem; aspect-ratio: 1; right: 11%; top: 24%; border-radius: 50%; background: var(--warm-500); box-shadow: 8rem 9rem 0 -0.08rem rgba(14, 46, 78, 0.45), -5rem 18rem 0 -0.12rem rgba(199, 116, 43, 0.58); content: ""; }
.leadership-group:nth-child(even)::after { right: auto; left: 12%; }
.leadership-group > .container { position: relative; z-index: 1; }
.leadership-group .group-heading { border-bottom-color: rgba(14, 46, 78, 0.24); }
.group-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 2.4rem; padding-bottom: 1rem; border-bottom: 1px solid var(--line-dark); }
.group-heading h2 { margin: 0; font-size: var(--step-3); }
.group-heading .eyebrow { margin-bottom: 0.65rem; }
.board-grid { display: grid; gap: clamp(1rem, 2vw, 1.5rem); }
.board-grid--executive { max-width: 64rem; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-inline: auto; }
.board-grid--five { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.board-card { position: relative; min-width: 0; overflow: hidden; display: grid; grid-template-rows: auto 1fr; padding: 0; border: 1px solid var(--line-dark); border-radius: 8rem 8rem 0.35rem 0.35rem / 4rem 4rem 0.35rem 0.35rem; background: var(--white); box-shadow: 0 1rem 2.2rem rgba(7, 22, 37, 0.1); }
.board-card__image { position: relative; overflow: hidden; width: 100%; aspect-ratio: 4 / 5; border: 0; border-radius: 0; background: var(--paper-warm); box-shadow: none; }
.board-card__image::before { position: absolute; z-index: 3; width: 4.5rem; height: 1px; top: 1rem; right: 1rem; background: var(--warm-500); content: ""; transform: rotate(-32deg); transform-origin: right; }
.board-card__image::after { position: absolute; z-index: 2; inset: 0; background: linear-gradient(180deg, rgba(14, 46, 78, 0.02) 50%, rgba(7, 22, 37, 0.28)); backdrop-filter: blur(0.7px); content: ""; }
.board-card__image img { width: 100%; height: 100%; object-fit: cover; object-position: center top; color: transparent; font-size: 0; background: radial-gradient(circle at 50% 30%, #173f67, #071625 72%); transition: transform 450ms var(--ease); }
.board-card:hover .board-card__image img { transform: scale(1.025); }
.board-card__content { position: relative; z-index: 4; width: 100%; min-height: 8.4rem; margin: 0; padding: 1.15rem 1.2rem; border: 0; border-top: 3px solid var(--warm-500); background: linear-gradient(150deg, var(--white), #f8f4ed); box-shadow: none; }
.board-card__role { display: block; min-height: 2.4em; margin-bottom: 0.45rem; color: var(--navy-700); font-size: 0.66rem; font-weight: 900; letter-spacing: 0.11em; line-height: 1.35; text-transform: uppercase; }
.board-card h3 { max-width: 9ch; margin: 0; color: var(--navy-950); font-family: var(--font-display); font-size: clamp(1.25rem, 1.8vw, 1.7rem); font-weight: 650; line-height: 0.98; }
.board-card__contacts { position: absolute; right: 0.8rem; bottom: 0.8rem; display: flex; gap: 0.45rem; }
.board-card__contacts a { width: 1.8rem; height: 1.8rem; display: grid; place-items: center; border: 1px solid var(--line-dark); border-radius: 50%; color: var(--navy-700); font-family: Arial, sans-serif; font-size: 0.72rem; font-weight: 800; text-decoration: none; }
.board-card__contacts a:hover { border-color: var(--warm-500); background: var(--paper-warm); }
