/* blocks/slider-adhesion/style.css */

.mc-adhesion-slider {
  --mc-gap: 24px;
  --mc-card-padding: 32px;
  --mc-card-radius: 16px;
  --mc-title-color: #0F172A;
  --mc-nav-color: #172087;
  --mc-nav-hover: #A2A6CF;

  width: 100%;
  max-width: 100% !important;
}

.mc-adhesion-slider__viewport {
  width: 100%;
  overflow: hidden;
  touch-action: pan-y; /* permet au swipe horizontal sans bloquer le scroll vertical */
}

.mc-adhesion-slider__track {
  display: flex;
  gap: var(--mc-gap);
  align-items: stretch; /* ✅ toutes les cards à la hauteur de la plus haute */
  will-change: transform;
  transition: transform 600ms ease;
  padding: 0;
}

/* Card */
.mc-adhesion-slider__card {
  flex: 0 0 auto;
  width: min(420px, 86vw);
  background: #fff;
  border-radius: var(--mc-card-radius);
  padding: var(--mc-card-padding);
  text-decoration: none;
  display: block;
  box-sizing: border-box;
  height: auto; /* ✅ pas de hauteur fixe */
  transition: background-color 250ms ease; /* ✅ fondu hover */
}

.mc-adhesion-slider__card.ancre:hover {
  background: #E7D7F3;
}

/* Layout interne : titre en haut, picto poussé en bas */
.mc-adhesion-slider__card-inner {
  height: 100%;
  min-height: 180px; /* base, mais peut grandir si titre long => toutes les cards suivent */
  display: flex;
  flex-direction: column;
}

.mc-adhesion-slider__title {
  font-size: 28px;
  font-weight: 500;
  color: var(--mc-title-color);
  line-height: 1.15;
}

.mc-adhesion-slider__texte {
  font-size: 19px;
  font-weight: 400;
  color: var(--mc-title-color);
  line-height: 1.15;
  margin-top:15px;
}

/* Picto en bas (poussé), plus d'absolute */
.mc-adhesion-slider__picto-wrap {
  margin-top: auto;     /* ✅ pousse en bas */
  align-self: flex-start; /* ✅ bas droite */
  width: auto;
  height: 40px;
  display: grid;
  place-items: start;
}

.mc-adhesion-slider__picto {
  width: auto;
  height: 40px;
  display: block;
}

/* Controls row */
.mc-adhesion-slider__controls {
  margin-top: 16px;
  display: grid;
  grid-template-columns: 40px 1fr 40px;
  align-items: center;
  gap: 12px;
  padding: 0 30px;
}

/* Nav buttons */
.mc-adhesion-slider__nav {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: 0;
  background: #fff;
  display: grid;
  place-items: center;
  cursor: pointer;
  padding: 0;
  transition: transform 250ms ease, opacity 250ms ease;
}

.mc-adhesion-slider__nav svg path {
  transition: stroke 250ms ease;
}

.mc-adhesion-slider__nav:hover svg path {
  stroke: var(--mc-nav-hover);
}

.mc-adhesion-slider__nav:active {
  transform: scale(0.98);
}

.mc-adhesion-slider__nav[disabled] {
  opacity: 0.45;
  cursor: not-allowed;
}

.mc-adhesion-slider__nav[disabled]:hover svg path {
  stroke: var(--mc-nav-color);
}

/* Progress */
.mc-adhesion-slider__progress {
  position: relative;
  width: 100%;
  height: 4px;
}

.mc-adhesion-slider__progress-track {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 100px;
}

.mc-adhesion-slider__progress-fill {
  position: absolute;
  left: 0;
  top: 0;
  height: 4px;
  width: 0%;
  background: rgba(255, 255, 255, 1);
  border-radius: 100px;
  transition: width 600ms ease;
}

/* Accessibilité focus */
.mc-adhesion-slider__card:focus-visible,
.mc-adhesion-slider__nav:focus-visible {
  outline: 2px solid rgba(23, 32, 135, 0.35);
  outline-offset: 3px;
}

/* Un peu plus haut sur desktop (base), mais extensible si titres longs */
@media (min-width: 900px) {
  .mc-adhesion-slider__card-inner {
    min-height: 200px;
  }
}
