/* Speaker Highlight Block */
.ic-sh { background: var(--ic-sh-bg, #141a20); color: var(--ic-sh-text, #d0ccc6); padding-top: var(--ic-sh-pt-mobile, 80px); padding-bottom: var(--ic-sh-pb-mobile, 80px); }
.ic-sh__container { width: min(var(--ic-sh-container-max, 1280px), calc(100% - (var(--ic-sh-side-mobile, 24px) * 2))); margin: 0 auto; }
.ic-sh__header { max-width: var(--ic-sh-content-max, 1160px); margin: 0 auto 34px; text-align: center; }
.ic-sh__eyebrow { margin: 0 0 1rem; color: var(--ic-sh-accent, #c5a95e); font-size: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ic-sh__heading { margin: 0 0 1rem; color: var(--ic-sh-heading, #faf8f5); font-size: var(--ic-sh-heading-size-mobile, 40px); line-height: 1.08; letter-spacing: -.02em; }
.ic-sh__intro { margin: 0; color: var(--ic-sh-text, #d0ccc6); line-height: 1.75; }
.ic-sh__grid { display: grid; grid-template-columns: 1fr; gap: var(--ic-sh-gap, 28px); }
.ic-sh__item, .ic-sh__card { height: 100%; }
.ic-sh__card { display: flex; flex-direction: column; background: var(--ic-sh-card-bg, #1a1d23); border: 1px solid var(--ic-sh-card-border, rgba(255,255,255,0.10)); border-radius: var(--ic-sh-card-radius, 18px); overflow: hidden; box-shadow: 0 18px 36px rgba(0,0,0,.18); }
.ic-sh__image-wrap { padding: var(--ic-sh-card-padding, 22px) var(--ic-sh-card-padding, 22px) 0; }
.ic-sh__image { width: 100%; aspect-ratio: var(--ic-sh-image-ratio, 1 / 1); object-fit: cover; display: block; border-radius: var(--ic-sh-image-radius, 16px); }
.ic-sh__content { padding: var(--ic-sh-card-padding, 22px); display: flex; flex-direction: column; flex: 1 1 auto; }
.ic-sh__name { margin: 0 0 .4rem; color: var(--ic-sh-heading, #faf8f5); font-size: var(--ic-sh-name-size-mobile, 22px); line-height: 1.18; }
.ic-sh__role { margin: 0 0 .9rem; color: var(--ic-sh-accent, #c5a95e); font-size: var(--ic-sh-role-size-mobile, 15px); line-height: 1.45; font-weight: 600; }
.ic-sh__bio { margin: 0; color: var(--ic-sh-text, #d0ccc6); font-size: var(--ic-sh-bio-size-mobile, 16px); line-height: 1.75; }
.ic-sh__button-row { margin-top: auto; padding-top: 1rem; display: flex; justify-content: center; }
.ic-sh__button { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: .75rem 1rem; border-radius: 4px; border: 1px solid var(--ic-sh-button-border, #c5a95e); color: var(--ic-sh-button-text, #c5a95e); background: transparent; text-decoration: none; font-weight: 600; transition: transform .22s ease, background-color .22s ease; }
.ic-sh__button:hover { transform: translateY(-1px); background: rgba(197,169,94,.08); }
.ic-sh--animate .ic-sh__header, .ic-sh--animate .ic-sh__item { opacity: 0; animation: icShFadeUp var(--ic-sh-animation-duration, 0.8s) ease-out both; }
.ic-sh--animate .ic-sh__header { animation-delay: calc(var(--ic-sh-animation-delay, 0s) + 0.04s); }
.ic-sh--animate .ic-sh__item:nth-child(1) { animation-delay: calc(var(--ic-sh-animation-delay, 0s) + 0.10s); }
.ic-sh--animate .ic-sh__item:nth-child(2) { animation-delay: calc(var(--ic-sh-animation-delay, 0s) + 0.18s); }
.ic-sh--animate .ic-sh__item:nth-child(3) { animation-delay: calc(var(--ic-sh-animation-delay, 0s) + 0.26s); }
.ic-sh--animate .ic-sh__item:nth-child(4) { animation-delay: calc(var(--ic-sh-animation-delay, 0s) + 0.34s); }
.ic-sh.ic-animate-on-scroll .ic-sh__header, .ic-sh.ic-animate-on-scroll .ic-sh__item { animation-play-state: paused; }
.ic-sh.ic-animate-on-scroll.is-visible .ic-sh__header, .ic-sh.ic-animate-on-scroll.is-visible .ic-sh__item { animation-play-state: running; }
@keyframes icShFadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
@media (min-width: 900px) {
  .ic-sh__grid { grid-template-columns: repeat(var(--ic-sh-columns, 2), minmax(0, 1fr)); }
  .ic-sh__heading { font-size: var(--ic-sh-heading-size-desktop, 56px); }
  .ic-sh__name { font-size: var(--ic-sh-name-size-desktop, 26px); }
  .ic-sh__role { font-size: var(--ic-sh-role-size-desktop, 16px); }
  .ic-sh__bio { font-size: var(--ic-sh-bio-size-desktop, 17px); }
}
@media (min-width: 1024px) {
  .ic-sh { padding-top: var(--ic-sh-pt-desktop, 120px); padding-bottom: var(--ic-sh-pb-desktop, 120px); }
  .ic-sh__container { width: min(var(--ic-sh-container-max, 1280px), calc(100% - (var(--ic-sh-side-desktop, 48px) * 2))); }
}