/* =====================================================================
   sliders.css — Styles des deux sliders ajoutés à la version PHP
     • Section 3 (pétition)      : SLIDER VERTICAL des signatures
     • Section 4 (solidarité)    : SLIDER HORIZONTAL des témoignages
   Réutilise les variables de thème définies dans index.php (:root).
   ===================================================================== */

/* ---------- Ossature commune ---------------------------------------- */
.slider{position:relative}
.slider-controls{display:flex;align-items:center;gap:12px;margin-top:14px}
.slider-btn{
  width:42px;height:42px;flex:none;border-radius:50%;cursor:pointer;
  display:grid;place-items:center;
  background:linear-gradient(135deg,var(--ember),var(--magenta));
  color:#fff;border:none;box-shadow:0 6px 18px rgba(168,50,110,.30);
  transition:transform .15s,box-shadow .2s;
}
.slider-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(168,50,110,.40)}
.slider-btn:active{transform:translateY(0)}
.slider-btn svg{width:20px;height:20px}
.slider-status{
  font-family:var(--display);font-size:15px;color:var(--ink-soft);
  letter-spacing:.04em;min-width:74px;text-align:center;
}
.slider .empty{color:var(--ink-soft);font-style:italic;padding:26px;text-align:center}

/* ====================================================================
   SLIDER VERTICAL — signatures (section 3)
   Une fenêtre fixe ; une signature glisse vers le haut à la fois.
   ==================================================================== */
.vslider{
  position:relative;height:300px;overflow:hidden;border-radius:10px;
  border:1px solid var(--line);
  background:linear-gradient(180deg,#fff,var(--cream-2));
}
.vslider-track{
  display:flex;flex-direction:column;
  transition:transform .6s cubic-bezier(.22,.61,.36,1);
  will-change:transform;
}
.vslide{
  height:300px;flex:none;
  display:flex;flex-direction:column;justify-content:center;
  padding:30px 34px;box-sizing:border-box;
}
.vslide .who{font-family:var(--display);font-size:26px;font-weight:600;color:var(--plum);line-height:1.1}
.vslide .where{
  display:block;margin-top:4px;font-size:13px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--magenta);
}
.vslide .txt{
  margin-top:16px;font-family:var(--display);font-style:italic;
  font-size:21px;line-height:1.5;color:var(--ink);
}
.vslide .when{margin-top:14px;font-size:12.5px;color:var(--ink-soft);font-style:italic}
/* dégradés de fondu haut/bas pour l'effet « braise qui monte » */
.vslider::before,.vslider::after{
  content:"";position:absolute;left:0;right:0;height:46px;z-index:2;pointer-events:none;
}
.vslider::before{top:0;background:linear-gradient(180deg,var(--cream-2),transparent)}
.vslider::after{bottom:0;background:linear-gradient(0deg,var(--cream-2),transparent)}

/* ====================================================================
   SLIDER HORIZONTAL — témoignages (section 4)
   Les cartes défilent latéralement, une (ou deux) visibles à la fois.
   ==================================================================== */
.hslider{position:relative;overflow:hidden;border-radius:10px}
.hslider-track{
  display:flex;flex-direction:row;
  transition:transform .6s cubic-bezier(.22,.61,.36,1);
  will-change:transform;
}
.hslide{
  flex:0 0 100%;box-sizing:border-box;padding:6px;
}
@media(min-width:820px){ .hslide{flex:0 0 50%} }   /* 2 cartes sur grand écran */
.hslide .card{
  height:100%;border:1px solid var(--line);border-radius:12px;
  padding:30px 30px 26px;box-sizing:border-box;
  background:linear-gradient(180deg,#fff,var(--cream-2));
  display:flex;flex-direction:column;
}
.hslide .who{font-family:var(--display);font-size:23px;font-weight:600;color:var(--plum)}
.hslide .where{
  display:block;margin-top:2px;font-size:12.5px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--magenta);
}
.hslide .txt{
  margin-top:16px;font-family:var(--display);font-style:italic;
  font-size:20px;line-height:1.55;color:var(--ink);flex:1;
}
.hslide .when{margin-top:16px;font-size:12.5px;color:var(--ink-soft);font-style:italic}

/* Points de navigation (dots) */
.slider-dots{display:flex;flex-wrap:wrap;gap:7px;margin-left:auto}
.slider-dots .dot{
  width:9px;height:9px;border-radius:50%;border:none;cursor:pointer;padding:0;
  background:var(--line);transition:background .2s,transform .2s;
}
.slider-dots .dot.on{background:linear-gradient(var(--ember),var(--magenta));transform:scale(1.25)}

/* Réduction des animations si l'utilisateur le demande */
@media (prefers-reduced-motion: reduce){
  .vslider-track,.hslider-track{transition:none}
}
