/* =============================================
   POMMECAN BIJOUX — Sliders & Homepage sections
   ============================================= */

/* ══════════════════════════════════════════
   HERO
══════════════════════════════════════════ */
.pom-hero {
  width: 100%;
  overflow: hidden;
}

.pom-hero__slider {
  width: 100%;
}

.pom-hero__slide {
  height: 90vh;
  min-height: 600px;
  display: flex;
  align-items: flex-end;
  padding: 4rem;
  position: relative;
  overflow: hidden;
}

.pom-hero__slide-content {
  position: relative;
  z-index: 2;
  max-width: 500px;
}

.pom-hero__slide-subtitle {
  font-family: 'DM Sans', sans-serif;
  font-size: 10px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #7A9499;
  margin: 0 0 1rem;
}

.pom-hero__slide-title {
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(2rem, 5vw, 4rem);
  font-weight: 300;
  color: #0D1B1E;
  line-height: 1.2;
  margin: 0 0 2rem;
}

.pom-hero__slide-cta {
  display: inline-block;
  font-family: 'DM Sans', sans-serif;
  font-size: 10px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #0D1B1E;
  text-decoration: none;
  padding: 0.8rem 2rem;
  border: 1px solid #0D1B1E;
  transition: background 0.3s ease, color 0.3s ease;
}

.pom-hero__slide-cta:hover {
  background: #0D1B1E;
  color: #FFFFFF;
}

.pom-hero .swiper-pagination {
  bottom: 2rem;
}

.pom-hero .swiper-pagination-bullet {
  background: #0D1B1E;
  opacity: 0.3;
  width: 6px;
  height: 6px;
  border-radius: 50%;
}

.pom-hero .swiper-pagination-bullet-active {
  opacity: 1;
  background: #1B6B77;
}

/* ══════════════════════════════════════════
   SECTION HEADER
══════════════════════════════════════════ */
.pom-section-header {
  text-align: center;
  padding: 4rem 2rem 2rem;
}

.pom-section-header__sub {
  font-family: 'DM Sans', sans-serif;
  font-size: 10px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #7A9499;
  margin: 0;
}

/* ══════════════════════════════════════════
   SLIDER NOUVEAUTÉS
══════════════════════════════════════════ */
.pom-new-products {
  padding: 0 0 4rem;
  position: relative;
}

.pom-new-products__outer {
  position: relative;
}

.pom-new-products__slider {
  overflow: hidden;
  padding: 1rem 0 1.5rem;
}

/* Chaque carte Swiper slide */
.pom-new-products__slider .swiper-slide {
  width: 280px;
  height: auto;
}

.pom-slider-prev,
.pom-slider-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  background: #fff;
  border: 1px solid #EFF6F7;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color 0.2s ease, background 0.2s ease;
}

.pom-slider-prev:hover,
.pom-slider-next:hover {
  border-color: #1B6B77;
  background: #EFF6F7;
}

.pom-slider-prev { left: 1rem; }
.pom-slider-next { right: 1rem; }

/* ══════════════════════════════════════════
   GRILLE CATÉGORIES — 2 colonnes portrait
══════════════════════════════════════════ */
.pom-categories {
  padding: 10px;
  margin: 0;
}

.pom-categories__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3px;
}

.pom-categories__item {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 16/10;
  text-decoration: none;
}

.pom-categories__img-wrap {
  width: 100%;
  height: 100%;
}

.pom-categories__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.6s ease, filter 0.6s ease;
  display: block;
}

.pom-categories__item:hover .pom-categories__img {
  transform: scale(1.04);
  filter: brightness(0.85);
}

.pom-categories__overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 2.5rem 2rem;
  background: linear-gradient(
    to top,
    rgba(13, 27, 30, 0.75) 0%,
    rgba(13, 27, 30, 0.3) 50%,
    transparent 100%
  );
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
}

.pom-categories__name {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #FFFFFF;
}

.pom-categories__cta {
  font-family: 'DM Sans', sans-serif;
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #FFFFFF;
  border-bottom: 1px solid #1B6B77;
  padding-bottom: 2px;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.pom-categories__item:hover .pom-categories__cta {
  opacity: 1;
  transform: translateY(0);
}

/* ══════════════════════════════════════════
   BLOC MARQUE / HISTOIRE
══════════════════════════════════════════ */
.pom-brand {
  padding: 6rem 4rem;
}

.pom-brand__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
}

.pom-brand__tagline {
  font-family: 'DM Sans', sans-serif;
  font-size: 10px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #1B6B77;
  margin: 0 0 1rem;
}

.pom-brand__title {
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: 300;
  color: #0D1B1E;
  line-height: 1.2;
  margin: 0 0 1.5rem;
}

.pom-brand__text {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  color: #7A9499;
  line-height: 1.85;
  margin: 0 0 2rem;
  max-width: 400px;
}

.pom-brand__link {
  font-family: 'DM Sans', sans-serif;
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #0D1B1E;
  text-decoration: none;
  border-bottom: 1px solid #1B6B77;
  padding-bottom: 0.3rem;
  transition: color 0.2s ease;
}

.pom-brand__link:hover {
  color: #1B6B77;
}

.pom-brand__img-wrap {
  aspect-ratio: 0.85;
  overflow: hidden;
  background: #EFF6F7;
}

.pom-brand__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ══════════════════════════════════════════
   LOOKBOOK SLIDER
══════════════════════════════════════════ */
.pom-lookbook {
  padding: 4rem 0 5rem;
  overflow: hidden;
  position: relative;
}

.pom-lookbook__title {
  font-family: 'DM Sans', sans-serif;
  font-size: 11px;
  letter-spacing: 4px;
  text-transform: uppercase;
  text-align: center;
  color: #0D1B1E;
  margin: 0 0 2rem;
  font-weight: 400;
}

.pom-lookbook__wrap {
  position: relative;
}

.pom-lookbook__slider {
  overflow: visible;
  padding: 0 2rem;
}

.pom-lookbook__slide {
  aspect-ratio: 0.75;
  overflow: hidden;
  background: #EFF6F7;
}

.pom-lookbook__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
  display: block;
}

.pom-lookbook__slider .swiper-slide:hover .pom-lookbook__img {
  transform: scale(1.03);
}

.pom-lookbook-prev,
.pom-lookbook-next {
  position: absolute;
  bottom: -3.5rem;
  z-index: 10;
  background: none;
  border: 1px solid #0D1B1E;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  cursor: pointer;
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s ease, color 0.2s ease;
  color: #0D1B1E;
  line-height: 1;
}

.pom-lookbook-prev { left: calc(50% - 44px); }
.pom-lookbook-next { left: calc(50% + 8px); }

.pom-lookbook-prev:hover,
.pom-lookbook-next:hover {
  background: #0D1B1E;
  color: #fff;
}

/* ══════════════════════════════════════════
   RÉASSURANCE
══════════════════════════════════════════ */
.pom-home__reassurance {
  background: #EFF6F7;
  border-top: 1px solid #EFF6F7;
}

/* ══════════════════════════════════════════
   PRODUCT PAGE — Gallery (inchangé)
══════════════════════════════════════════ */
.pom-product-slider {
  padding-block: var(--pom-space-3xl, 4rem);
  overflow: hidden;
}

.pom-product-slider__header {
  margin-bottom: var(--pom-space-2xl, 3rem);
}

.pom-product-slider .swiper {
  overflow: visible;
  padding-bottom: var(--pom-space-lg, 1.5rem);
}

.pom-product-slider .swiper-slide { height: auto; }

.pom-product-slider__nav {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--pom-space-md, 1rem);
  margin-top: var(--pom-space-xl, 2rem);
}

.pom-slider-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 1px solid #EFF6F7;
  color: #0D1B1E;
  transition: all 0.2s ease;
}

.pom-slider-btn svg { width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 1.5; }
.pom-slider-btn:hover { background: #0D1B1E; border-color: #0D1B1E; color: #fff; }
.pom-slider-btn.swiper-button-disabled { opacity: 0.3; pointer-events: none; }

.pom-product-slider .swiper-pagination {
  position: static;
  display: flex;
  justify-content: center;
  gap: 0.5rem;
}

.pom-product-slider .swiper-pagination-bullet {
  width: 6px; height: 6px;
  background: #EFF6F7;
  opacity: 1;
  border-radius: 50%;
  transition: background 0.2s ease, transform 0.2s ease;
}

.pom-product-slider .swiper-pagination-bullet-active {
  background: #1B6B77;
  transform: scale(1.3);
}

/* ══════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════ */
@media (max-width: 767px) {
  .pom-hero__slide {
    height: 65vh;
    padding: 2rem;
    align-items: flex-end;
  }

  .pom-categories__grid {
    grid-template-columns: 1fr 1fr;
    gap: 2px;
  }

  .pom-categories__item {
    aspect-ratio: 16/10;
  }

  .pom-categories__name {
    font-size: 10px;
    letter-spacing: 2px;
  }

  .pom-brand {
    padding: 3rem 1.5rem;
  }

  .pom-brand__inner {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .pom-brand__img-wrap {
    aspect-ratio: 1.2;
    order: -1;
  }
}
