/*
Slider natif (défilement CSS scroll-snap) — remplace swiper.min.css pour les blocs
Cultures et Actualités. Mêmes classes que Swiper : les styles du thème
(#hp-cultures, #hp-actualites) s'appliquent sans changement.
Retour arrière : voir les lignes enqueue des blocs (render.php).
*/

/* Règles reprises de swiper.min.css (même spécificité) */
.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  position: relative;
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.swiper-button-prev { left: 10px; right: auto; }
.swiper-button-next { right: 10px; left: auto; }

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none;
}

/* Rien à faire défiler → flèches et pagination masquées
   (!important : le thème impose display:flex aux flèches avec des sélecteurs #id) */
.swiper-button-lock,
.swiper-pagination-lock { display: none !important; }

/* … et l'espace réservé aux flèches sous les cartes (padding-bottom du thème) */
[data-slider].swiper-locked { padding-bottom: 0 !important; }

.swiper-pagination {
  position: absolute;
  bottom: 10px;
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 10;
}
.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  margin: 0 4px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  background: #000;
  opacity: .2;
  cursor: pointer;
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background: #007aff;
}

/* Défilement natif : glisser au doigt / trackpad, aimanté sur chaque carte */
[data-slider] .swiper-wrapper {
  position: relative;
  width: 100%;
  z-index: 1;
  display: flex;
  gap: 15px;
  box-sizing: content-box;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
}
[data-slider] .swiper-wrapper::-webkit-scrollbar { display: none; }
[data-slider] .swiper-slide { scroll-snap-align: start; }

/* Nombre de cartes visibles — reprend les breakpoints Swiper de chaque bloc */
@media (min-width: 768px) {
  [data-slider="cultures"] .swiper-wrapper { gap: 20px; }
  [data-slider="cultures"] .swiper-slide { width: calc((100% - 20px) / 2); }
}
@media (min-width: 1024px) {
  [data-slider="actualites"] .swiper-wrapper { gap: 20px; }
  [data-slider="actualites"] .swiper-slide { width: calc((100% - 20px) / 2); }
}
