.stakeholder-section { background: #f7f9fb; padding: 42px 32px 38px; color: #0b1726; }
.stakeholder-inner { max-width: 1180px; margin: 0 auto; }
.stakeholder-heading { display: flex; align-items: end; justify-content: space-between; gap: 28px; margin-bottom: 22px; }
.stakeholder-eyebrow { color: #d71920; font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 6px; }
.stakeholder-heading h2 { font-family: 'Playfair Display', serif; font-size: clamp(26px, 3.4vw, 38px); line-height: 1.1; }
.stakeholder-intro { max-width: 510px; color: #667085; font-size: 14px; line-height: 1.65; }
.stakeholder-viewport { position: relative; left: 50%; width: 100vw; margin-left: -50vw; overflow: hidden; padding: 5px clamp(38px, 3vw, 52px); box-sizing: border-box; }
.stakeholder-track { display: flex; transition: none; will-change: transform; }
.stakeholder-slide { flex: 0 0 14.2857%; padding: 0 2px; }
.stakeholder-card { height: 132px; display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 4px; padding: 10px 5px 8px; border: 1px solid #e3e9ef; border-radius: 10px; background: #fff; box-shadow: 0 6px 16px rgba(11,23,38,.045); }
.stakeholder-card img { width: 100%; height: 78px; object-fit: contain; }
.stakeholder-card span { color: #344054; font-size: 11px; font-weight: 700; line-height: 1.15; text-align: center; }
.stakeholder-nav { position: absolute; top: 50%; z-index: 2; width: 32px; height: 32px; border: 1px solid #d8e0e8; border-radius: 50%; background: #fff; color: #0f4c81; cursor: pointer; transform: translateY(-50%); box-shadow: 0 5px 15px rgba(11,23,38,.1); }
.stakeholder-nav:hover { background: #0f4c81; color: #fff; }
.stakeholder-prev { left: 2px; } .stakeholder-next { right: 2px; }
.stakeholder-dots { display: flex; justify-content: center; gap: 7px; margin-top: 20px; }
.stakeholder-dot { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%; background: #cbd5e1; cursor: pointer; }
.stakeholder-dot.is-active { width: 24px; border-radius: 99px; background: #d71920; }
@media (max-width: 900px) { .stakeholder-slide { flex-basis: 20%; } }
@media (max-width: 640px) { .stakeholder-section { padding: 32px 14px; } .stakeholder-heading { display: block; } .stakeholder-intro { margin-top: 10px; } .stakeholder-viewport { padding-inline: 32px; } .stakeholder-slide { flex-basis: 50%; } .stakeholder-card { height: 124px; } .stakeholder-card img { height: 72px; } }
@media (prefers-reduced-motion: reduce) { .stakeholder-track { transition: none; } }