/* === Mediapaou Commanditaires Carousel === */
.commanditaires-section { margin:0!important; padding:0!important; background:transparent!important; }
.mp-cat { display:none!important; }

.mp-sponsor-carousel {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 10px 0 18px;
  box-sizing: border-box;
}
.mp-sponsor-track { will-change: transform; }

/* Cards */
.mp-card {
  box-sizing: border-box !important;
  background: #fff !important;
  border: 1.5px solid #e2e8f0 !important;
  border-top: 3px solid #e2e8f0 !important;
  border-radius: 16px !important;
  padding: 24px 16px 20px !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow: 0 2px 12px rgba(10,38,71,.07) !important;
  transition: transform .3s ease, box-shadow .3s ease !important;
  cursor: default;
}
.mp-card::before {
  content:''; position:absolute; inset:0; z-index:2; pointer-events:none; border-radius:inherit;
  background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.7) 50%,transparent 70%);
  transform:translateX(-120%); transition:transform .6s ease;
}
.mp-card:hover::before { transform:translateX(120%); }
.mp-card:hover { transform:translateY(-5px)!important; }

.mp-card.or      { border-top-color: #d4a017 !important; }
.mp-card.argent  { border-top-color: #94a3b8 !important; }
.mp-card.platine { border-top-color: #06b6d4 !important; }
.mp-card.or:hover      { box-shadow:0 16px 36px rgba(212,160,23,.2)!important; }
.mp-card.argent:hover  { box-shadow:0 16px 36px rgba(148,163,184,.2)!important; }
.mp-card.platine:hover { box-shadow:0 16px 36px rgba(6,182,212,.2)!important; }

/* Ring */
.mp-circle-outer {
  width:80px!important; height:80px!important; border-radius:50%!important;
  padding:0!important; margin-bottom:14px!important; border:none!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  position:relative!important; background:transparent!important;
}
.mp-circle-outer::before {
  content:''; position:absolute; inset:0; border-radius:50%;
  animation:mpRing 5s linear infinite;
}
.mp-card.or      .mp-circle-outer::before { background:conic-gradient(#d4a017 0deg,rgba(212,160,23,.1) 90deg,#d4a017 180deg,rgba(212,160,23,.1) 270deg,#d4a017 360deg); }
.mp-card.argent  .mp-circle-outer::before { background:conic-gradient(#94a3b8 0deg,rgba(148,163,184,.1) 90deg,#94a3b8 180deg,rgba(148,163,184,.1) 270deg,#94a3b8 360deg); }
.mp-card.platine .mp-circle-outer::before { background:conic-gradient(#06b6d4 0deg,rgba(6,182,212,.1) 90deg,#06b6d4 180deg,rgba(6,182,212,.1) 270deg,#06b6d4 360deg); }
@keyframes mpRing { to { transform:rotate(360deg); } }
.mp-card:hover .mp-circle-outer::before { animation-play-state:paused; }

.mp-inner-circle {
  width:calc(100% - 6px)!important; height:calc(100% - 6px)!important;
  background:#f8fafc!important; border-radius:50%!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  position:relative; z-index:1;
}
.mp-icon { width:62%!important; height:auto!important; object-fit:contain!important; display:block!important; transition:transform .3s ease!important; }
.mp-card:hover .mp-icon { transform:scale(1.1)!important; }

.mp-name {
  font-size:.82rem!important; font-weight:700!important; color:#0a2647!important;
  margin:0 0 12px!important; white-space:nowrap!important;
  overflow:hidden!important; text-overflow:ellipsis!important; width:100%!important;
  font-family:'Plus Jakarta Sans','Inter',sans-serif!important;
}
.mp-divider { width:60%!important; border:none!important; border-top:1px solid #e2e8f0!important; margin:0 auto 12px!important; }
.mp-link { font-size:.68rem!important; font-weight:700!important; color:#3b82f6!important; text-decoration:none!important; display:inline-flex!important; align-items:center!important; gap:5px!important; }
.mp-link:hover { color:#1e3a8a!important; }

/* Arrows */
.mp-nav {
  position:absolute; top:50%; transform:translateY(-55%);
  background:rgba(10,38,71,.55); color:#fff; border:0;
  width:36px; height:36px; border-radius:50%;
  cursor:pointer; font-size:14px;
  display:flex; align-items:center; justify-content:center;
  transition:background .2s; z-index:20;
}
.mp-nav:hover { background:#0a2647; }
.mp-prev { left:4px; }
.mp-next { right:4px; }

/* Dots */
.mp-dots { display:flex; justify-content:center; gap:6px; margin-top:14px; }
.mp-dot { width:8px; height:8px; border-radius:50%; border:0; background:#cbd5e1; cursor:pointer; transition:background .2s,transform .2s; padding:0; }
.mp-dot.is-active { background:#0a2647; transform:scale(1.3); }

@media (prefers-reduced-motion:reduce) {
  .mp-sponsor-track { transition:none!important; }
  .mp-circle-outer::before { animation:none!important; }
}
