/* Paniez – Product Page Design v0.3.2 */

/* ---- Image principale : radius visible + pas de zoom ---- */
body.single-product .woocommerce-product-gallery,
body.single-product .woocommerce-product-gallery__wrapper,
body.single-product .ct-media-container,
body.single-product .woocommerce-product-gallery__wrapper figure,
body.single-product .ct-media-container figure {
  border-radius: 18px !important;
  overflow: hidden !important;
  margin: 0 !important;
}

body.single-product .woocommerce-product-gallery__wrapper img,
body.single-product .ct-media-container img,
body.single-product .ct-media-container picture,
body.single-product .ct-media-container picture img {
  border-radius: 18px !important;
  transform: none !important;
}

/* ---- Section compléments : légère mise en page, mais markup = boutique ---- */
.paniez-complements {
  margin-top: 28px;
  padding-top: 18px;
  border-top: 1px solid rgba(0,0,0,.06);
}

.paniez-complements-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap: 12px;
  margin: 0 0 14px 0;
}

.paniez-complements-title{
  margin: 0 !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}

.paniez-complements-subtitle{
  font-size: 13px;
  opacity: .75;
}

/* Grid : garde le même rendu carte, mais on contrôle le layout */
.paniez-complements-grid ul.products{
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
  display:grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

@media (max-width: 768px){
  .paniez-complements-grid ul.products{
    grid-template-columns: 1fr 1fr !important; /* toujours 2 colonnes */
    gap: 12px !important;
  }
}

/* Sécurité anti-slider si le thème tente d'injecter des contrôles */
.paniez-complements .ct-slider-nav,
.paniez-complements .ct-arrow,
.paniez-complements .ct-carousel-nav,
.paniez-complements .ct-slider-controls,
.paniez-complements [class*="swiper-"]{
  display:none !important;
}


/* ---- Mobile: image produit 220px, entière (pas de crop) ---- */
@media (max-width: 768px){
  body.single-product .ct-media-container,
  body.single-product .woocommerce-product-gallery,
  body.single-product .woocommerce-product-gallery__wrapper{
    max-height: 220px !important;
  }

  body.single-product .ct-media-container{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background: #fff !important;
  }

  body.single-product .ct-media-container img,
  body.single-product .woocommerce-product-gallery__wrapper img.wp-post-image{
    width: 100% !important;
    height: 220px !important;
    object-fit: contain !important; /* affiche l'image entière */
  }
}


.paniez-complements-grid ul.products{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.paniez-complements-grid ul.products li.product{
  background:#fff !important;
  border-radius:14px !important;
  padding:16px 16px 18px !important;
  box-shadow:0 8px 24px rgba(0,0,0,.06) !important;
  border:none !important;
  overflow:hidden !important;
  margin:0 !important;
  width:auto !important;
  float:none !important;
  display:flex !important;
  flex-direction:column !important;
}

.paniez-complements-grid ul.products li.product > a.woocommerce-LoopProduct-link{
  display:block !important;
  text-decoration:none !important;
}

.paniez-complements-grid ul.products li.product img{
  width:100% !important;
  height:auto !important;
  border-radius:10px !important;
  filter:saturate(.9) contrast(.95) brightness(.98) !important;
}

.paniez-complements-grid ul.products li.product .woocommerce-loop-product__title{
  font-size:14px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  margin:10px 0 6px 0 !important;
  color:#1f2d3d !important;
}

.paniez-complements-grid ul.products li.product .price{
  font-size:14px !important;
  font-weight:800 !important;
  margin:0 0 10px 0 !important;
  color:#1f2d3d !important;
}

.paniez-complements-grid ul.products li.product .ct-woo-card-actions{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  margin-top:auto !important;
}

.paniez-complements-grid ul.products li.product a.button{
  background: var(--paniez-green, #7FBC5A) !important;
  color:#fff !important;
  border-radius:10px !important;
  padding:10px 14px !important;
  font-weight:900 !important;
  border:none !important;
  box-shadow:0 8px 18px rgba(124,186,90,.18) !important;
  transition: transform .12s ease, filter .12s ease, background-color .12s ease !important;
}

.paniez-complements-grid ul.products li.product a.button:hover{
  background: var(--paniez-orange, #F59E0B) !important;
  transform: translateY(-1px) !important;
  filter:brightness(.98) !important;
}

@media (max-width: 768px){
  .paniez-complements-grid ul.products{
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
  }

  .paniez-complements-grid ul.products li.product{
    padding:12px 12px 14px !important;
  }

  .paniez-complements-grid ul.products li.product .woocommerce-loop-product__title{
    font-size:13px !important;
    margin:4px 0 6px 0 !important;
  }

  .paniez-complements-grid ul.products li.product .price{
    font-size:13px !important;
    margin:0 0 8px 0 !important;
  }

  .paniez-complements-grid ul.products li.product .ct-woo-card-actions{
    justify-content:stretch !important;
  }

  .paniez-complements-grid ul.products li.product a.button{
    width:100% !important;
    font-size:12.5px !important;
    padding:10px 8px !important;
  }
}


/* ---- Compléments: styles identiques à la boutique (carousel) ---- */
/* Paniez – Shop Layout v0.1.3 (Carousel) */
.paniez-complements{margin-top:26px;padding-top:18px;border-top:1px solid rgba(0,0,0,.08)}
.paniez-complements__head{display:flex;gap:12px;flex-wrap:wrap;align-items:baseline;justify-content:space-between}
.paniez-complements__title{margin:0;font-size:16px;font-weight:700}
.paniez-complements__hint{margin:0;font-size:13px;opacity:.75}

.paniez-carousel{position:relative;margin-top:12px}
.paniez-carousel__nav{
  position:absolute;top:50%;transform:translateY(-50%);
  width:36px;height:36px;border-radius:50%;
  border:1px solid rgba(0,0,0,.15);
  background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.12);
  cursor:pointer;z-index:2;font-size:22px;line-height:1
}
.paniez-carousel__prev{left:-18px}
.paniez-carousel__next{right:-18px}

.paniez-rail{
  display:grid;grid-auto-flow:column;grid-auto-columns:260px;
  gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding-bottom:8px
}
.paniez-rail__item{
  scroll-snap-align:start;background:#fff;border:1px solid rgba(0,0,0,.06);
  border-radius:12px;padding:10px;box-shadow:0 6px 18px rgba(0,0,0,.04);
  display:grid;grid-template-columns:56px 1fr;grid-template-rows:auto auto;
  column-gap:10px;row-gap:6px;align-items:center
}
.paniez-rail__media{grid-row:1/span 2;width:56px;height:56px;border-radius:10px;overflow:hidden}
.paniez-rail__media img{width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important}
.paniez-rail__name{font-size:13px;font-weight:700;line-height:1.15;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.paniez-rail__price{font-size:12px;opacity:.85}
.paniez-rail__btn{grid-column:1/-1;width:100%;text-align:center;padding:8px 10px;border-radius:10px;font-weight:700;font-size:12.5px;background:#F59E0B;color:#fff;text-decoration:none;transition:transform .12s ease,filter .12s ease}
.paniez-rail__btn:hover{filter:brightness(.95);transform:translateY(-1px)}

@media (max-width:900px){.paniez-rail{grid-auto-columns:240px}}
@media (max-width:768px){
  .paniez-carousel__nav{display:none}
  .paniez-rail{grid-auto-columns:78%}
}

