/* =========================================================
   ALLO NATUREL — FICHE PRODUIT LARGE DESKTOP
   Chargé APRÈS product.css / product-tabs-v2.css /
   product-accessories.css
   ========================================================= */

/* =========================================================
   PRODUIT — VARIABLES TYPOGRAPHIQUES FLUIDES
   <= 1920px : valeurs d'origine
   > 1920px  : croissance proportionnelle
   plafond   : +45 %
   ========================================================= */

:root {
  --an-product-fs-12: 12px;
  --an-product-fs-13: 13px;
  --an-product-fs-14: 14px;
  --an-product-fs-15: 15px;
  --an-product-fs-16: 16px;
  --an-product-fs-17: 17px;
  --an-product-fs-18: 18px;
  --an-product-fs-19: 19px;
  --an-product-fs-20: 20px;
  --an-product-fs-21: 21px;
  --an-product-fs-22: 22px;
  --an-product-fs-23: 23px;
  --an-product-fs-24: 24px;
  --an-product-fs-26: 26px;
  --an-product-fs-27: 27px;
  --an-product-fs-34: 34px;
  --an-product-fs-38: 38px;
  --an-product-fs-42: 42px;
  --an-product-fs-58: 58px;
  --an-product-fs-fluid-1: clamp(76px, 3.8vw, 100px);
  --an-product-fs-fluid-2: clamp(48px, 2.8vw, 72px);
  --an-product-fs-fluid-3: clamp(68px, 3.8vw, 96px);
  --an-product-fs-fluid-4: clamp(42px, 2.35vw, 62px);
  --an-product-fs-fluid-5: clamp(58px, 3vw, 78px);
  --an-product-fs-fluid-6: clamp(38px, 2.15vw, 56px);
  --an-product-fs-fluid-7: clamp(48px, 2.55vw, 66px);
}

@media screen and (min-width: 1921px) {
  :root {
    --an-product-fs-12: clamp(12px, 0.62500vw, 17.40px);
    --an-product-fs-13: clamp(13px, 0.67708vw, 18.85px);
    --an-product-fs-14: clamp(14px, 0.72917vw, 20.30px);
    --an-product-fs-15: clamp(15px, 0.78125vw, 21.75px);
    --an-product-fs-16: clamp(16px, 0.83333vw, 23.20px);
    --an-product-fs-17: clamp(17px, 0.88542vw, 24.65px);
    --an-product-fs-18: clamp(18px, 0.93750vw, 26.10px);
    --an-product-fs-19: clamp(19px, 0.98958vw, 27.55px);
    --an-product-fs-20: clamp(20px, 1.04167vw, 29.00px);
    --an-product-fs-21: clamp(21px, 1.09375vw, 30.45px);
    --an-product-fs-22: clamp(22px, 1.14583vw, 31.90px);
    --an-product-fs-23: clamp(23px, 1.19792vw, 33.35px);
    --an-product-fs-24: clamp(24px, 1.25000vw, 34.80px);
    --an-product-fs-26: clamp(26px, 1.35417vw, 37.70px);
    --an-product-fs-27: clamp(27px, 1.40625vw, 39.15px);
    --an-product-fs-34: clamp(34px, 1.77083vw, 49.30px);
    --an-product-fs-38: clamp(38px, 1.97917vw, 55.10px);
    --an-product-fs-42: clamp(42px, 2.18750vw, 60.90px);
    --an-product-fs-58: clamp(58px, 3.02083vw, 84.10px);
  }
}

/* FIN VARIABLES TYPOGRAPHIQUES PRODUIT */



@media screen and (min-width: 1921px) {

  /* Largeur générale identique à la home */
  body#product .an-product-hero,
  body#product .an-product-content,
  body#product .an-product-accessories,
  body#product .an-product-sticky.is-parked {
    width: 82.3vw !important;
    max-width: 2200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* =========================
     HERO PRODUIT
     ========================= */

  body#product .an-product-hero {
    grid-template-columns:
      minmax(0, 1.05fr)
      minmax(680px, .95fr) !important;
    gap: clamp(90px, 5vw, 130px) !important;
    min-height: 900px !important;
    margin-top: 38px !important;
    padding-top: 24px !important;
  }

  body#product .an-product-hero__info {
    width: 100% !important;
    max-width: 900px !important;
    padding-top: 32px !important;
  }

  /* =========================
     GALERIE
     ========================= */

  body#product .an-product-gallery {
    grid-template-columns: 90px minmax(0, 1fr) !important;
    gap: 28px !important;
  }

  body#product .an-product-gallery__main,
  body#product .an-product-gallery__main .carousel-inner,
  body#product .an-product-gallery__main .carousel-item,
  body#product .an-product-gallery__main .carousel-item picture,
  body#product .an-product-gallery__main .product__image {
    min-height: 820px !important;
    height: 820px !important;
  }

  body#product .an-product-gallery__main img,
  body#product .an-product-gallery__image {
    width: auto !important;
    height: 720px !important;
    max-width: 92% !important;
    max-height: 720px !important;
    object-fit: contain !important;
  }

  body#product .an-product-gallery__thumbs {
    width: 90px !important;
  }

  body#product .an-product-gallery__thumb {
    width: 82px !important;
    height: 82px !important;
    border-radius: 10px !important;
  }

  body#product .an-product-gallery .product__zoom {
    right: 20px !important;
    bottom: 20px !important;
    transform: scale(1.25);
    transform-origin: center;
  }

  body#product .an-product-gallery .product-flags,
  body#product .an-product-hero__media .product-flags {
    left: 118px !important;
    top: 12px !important;
    gap: 8px !important;
  }

  body#product .an-product-gallery .product-flag,
  body#product .an-product-hero__media .product-flag {
    min-height: 36px !important;
    padding: 9px 15px !important;
    font-size: var(--an-product-fs-13) !important;
  }

  /* =========================
     TYPO HAUT DE FICHE
     ========================= */

  body#product .an-product-brand {
    margin-bottom: 13px !important;
    font-size: var(--an-product-fs-13) !important;
  }

  body#product .an-product-title {
    max-width: 860px !important;
    font-size: var(--an-product-fs-fluid-1) !important;
    line-height: .9 !important;
  }

  body#product .an-product-origin {
    margin-top: 23px !important;
    font-size: var(--an-product-fs-14) !important;
  }

  body#product .an-product-meta {
    min-height: 30px !important;
    margin-top: 20px !important;
    gap: 9px !important;
    font-size: var(--an-product-fs-14) !important;
  }

  body#product .an-product-intro {
    max-width: 800px !important;
    margin-top: 26px !important;
    font-size: var(--an-product-fs-18) !important;
    line-height: 1.6 !important;
  }

  /* =========================
     PRIX
     ========================= */

  body#product .an-product-prices {
    margin-top: 30px !important;
  }

  body#product .an-product-prices__main .product__price {
    font-size: var(--an-product-fs-58) !important;
  }

  body#product .an-product-prices__discount .product__regular-price {
    font-size: var(--an-product-fs-18) !important;
  }

  body#product .an-product-prices__badge {
    min-height: 34px !important;
    padding: 0 14px !important;
    font-size: var(--an-product-fs-13) !important;
  }

  body#product .an-product-prices__main .product__unit-price {
    margin-top: 14px !important;
    font-size: var(--an-product-fs-13) !important;
  }

  body#product .an-product-prices .product__tax-infos,
  body#product .an-product-prices .product__ecotax-price,
  body#product .an-product-prices .product__taxless-price {
    font-size: var(--an-product-fs-12) !important;
  }

  /* =========================
     DÉCLINAISONS
     ========================= */

  body#product .an-product-variants {
    margin-top: 34px !important;
  }

  body#product .an-product-variant {
    margin-bottom: 25px !important;
  }

  body#product .an-product-variant .product-variant__label {
    margin-bottom: 13px !important;
  }

  body#product .an-product-variant .product-variant__legend {
    font-size: var(--an-product-fs-12) !important;
  }

  body#product .an-product-variant__cards {
    gap: 11px !important;
  }

  body#product .an-product-variant__card label {
    min-width: 135px !important;
    min-height: 62px !important;
    padding: 12px 18px !important;
  }

  body#product .an-product-variant__card .form-check-label,
  body#product .an-product-variant__card label {
    font-size: var(--an-product-fs-15) !important;
  }

  body#product .an-product-variant select,
  body#product .an-product-variant .form-select {
    min-height: 58px !important;
    padding: 0 18px !important;
    font-size: var(--an-product-fs-16) !important;
  }

  /* Couleurs / goûts natifs */
  body#product .product-variant__colors {
    gap: 10px 14px !important;
  }

  body#product .product-variant__color .input-color__label {
    gap: 8px !important;
  }

  body#product .product-variant__color .color,
  body#product .product-variant__color .texture {
    width: 30px !important;
    height: 30px !important;
  }

  body#product .an-color-name {
    font-size: var(--an-product-fs-14) !important;
  }

  /* Module goûts multiples */
  body#product [data-an-gouts-multiple] {
    margin-top: 26px !important;
    margin-bottom: 26px !important;
  }

  body#product [data-an-gouts-multiple] .an-gouts-multiple__title,
  body#product [data-an-gouts-multiple] .an-gouts-multiple__legend,
  body#product [data-an-gouts-multiple] legend {
    font-size: var(--an-product-fs-12) !important;
  }

  body#product [data-an-gouts-multiple] .an-gouts-multiple__choices,
  body#product [data-an-gouts-multiple] .an-gouts-multiple__grid,
  body#product [data-an-gouts-multiple] .an-gouts-multiple__items {
    gap: 11px 14px !important;
  }

  body#product [data-an-gouts-multiple] .an-gouts-multiple__label {
    min-height: 38px !important;
    padding: 6px 11px !important;
    font-size: var(--an-product-fs-14) !important;
  }

  body#product [data-an-gouts-multiple] .color,
  body#product [data-an-gouts-multiple] .texture,
  body#product [data-an-gouts-multiple] .an-gouts-multiple__swatch {
    width: 26px !important;
    height: 26px !important;
  }

  /* =========================
     QUANTITÉ + PANIER
     ========================= */

  body#product .an-product-buy {
    margin-top: 22px !important;
  }

  body#product .an-product-buy__row {
    gap: 16px !important;
  }

  body#product .an-product-buy__qty {
    flex: 0 0 146px !important;
    width: 146px !important;
    min-width: 146px !important;
    height: 46px !important;
  }

  body#product .an-product-buy__qty > .quantity-button__group {
    width: 146px !important;
    min-width: 146px !important;
    max-width: 146px !important;
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
    grid-template-columns: 46px 54px 46px !important;
  }

  body#product .an-product-buy__qty .js-decrement-button,
  body#product .an-product-buy__qty .js-increment-button {
    width: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
  }

  body#product .an-product-buy__qty .js-decrement-button::before,
  body#product .an-product-buy__qty .js-increment-button::before {
    font-size: var(--an-product-fs-20) !important;
  }

  body#product .an-product-buy__qty #quantity_wanted {
    width: 54px !important;
    min-width: 54px !important;
    max-width: 54px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    font-size: var(--an-product-fs-15) !important;
    line-height: 44px !important;
  }

  body#product .an-product-buy__button {
    min-height: 64px !important;
    padding: 0 28px !important;
    font-size: var(--an-product-fs-16) !important;
  }

  body#product .an-product-buy .product__availability {
    margin-bottom: 14px !important;
    font-size: var(--an-product-fs-14) !important;
  }

  /* =========================
     POINTS FORTS / SERVICES
     ========================= */

  body#product .an-product-highlights {
    margin-top: 28px !important;
    gap: 13px !important;
  }

  body#product .an-product-highlights__item {
    gap: 12px !important;
    font-size: var(--an-product-fs-14) !important;
    line-height: 1.55 !important;
  }

  body#product .an-product-highlights__dot {
    width: 6px !important;
    height: 6px !important;
    flex-basis: 6px !important;
    margin-top: 8px !important;
  }

  body#product .an-product-service {
    margin-top: 34px !important;
    padding-top: 25px !important;
    gap: 19px !important;
  }

  body#product .an-product-service__item {
    grid-template-columns: 32px 1fr !important;
    gap: 13px !important;
  }

  body#product .an-product-service__icon {
    font-size: var(--an-product-fs-20) !important;
  }

  body#product .an-product-service__item strong {
    margin-bottom: 4px !important;
    font-size: var(--an-product-fs-14) !important;
  }

  body#product .an-product-service__item small {
    font-size: var(--an-product-fs-12) !important;
  }

  /* =========================
     CONTENU BAS / ONGLETS
     ========================= */

  body#product .an-product-content {
    margin-top: 115px !important;
  }

  body#product .an-product-content__main,
  body#product .an-product-tabs,
  body#product .an-product-tabs__panels,
  body#product .an-product-tabs__panel,
  body#product .an-product-editorial {
    width: 100% !important;
    max-width: none !important;
  }

  /* Décale légèrement le contenu du bord droit */
  body#product .an-product-tabs__panels {
    padding-right: clamp(28px, 1.5vw, 44px) !important;
    box-sizing: border-box !important;
  }

  body#product .an-product-tabs__nav {
    gap: 38px !important;
    margin-bottom: 42px !important;
  }

  body#product .an-product-tabs__tab {
    min-height: 48px !important;
    padding: 12px 0 !important;
    font-size: var(--an-product-fs-15) !important;
  }

  body#product .an-product-editorial__kicker {
    margin-bottom: 14px !important;
    font-size: var(--an-product-fs-12) !important;
  }

  body#product .an-product-editorial__title {
    max-width: 900px !important;
    margin-bottom: 30px !important;
    font-size: var(--an-product-fs-fluid-2) !important;
    line-height: .95 !important;
  }

  body#product .an-product-editorial__content,
  body#product .an-product-editorial__benefits,
  body#product .an-product-editorial__precautions,
  body#product .an-product-editorial .rich-text {
    width: 100% !important;
    max-width: none !important;
    font-size: var(--an-product-fs-18) !important;
    line-height: 1.72 !important;
  }

  body#product .an-product-editorial__content p,
  body#product .an-product-editorial__content li,
  body#product .an-product-editorial .rich-text p,
  body#product .an-product-editorial .rich-text li {
    font-size: var(--an-product-fs-18) !important;
    line-height: 1.72 !important;
  }

  body#product .an-product-editorial__content p,
  body#product .an-product-editorial .rich-text p {
    margin-bottom: 20px !important;
  }

  body#product .an-product-editorial__content h2,
  body#product .an-product-editorial .rich-text h2 {
    margin-top: 44px !important;
    margin-bottom: 20px !important;
    font-size: var(--an-product-fs-34) !important;
    line-height: 1.08 !important;
  }

  body#product .an-product-editorial__content h3,
  body#product .an-product-editorial .rich-text h3 {
    margin-top: 36px !important;
    margin-bottom: 16px !important;
    font-size: var(--an-product-fs-27) !important;
    line-height: 1.12 !important;
  }

  body#product .an-product-editorial__twocol {
    gap: 30px !important;
    margin-top: 38px !important;
  }

  body#product .an-product-editorial__card {
    padding: 28px !important;
  }

  body#product .an-product-editorial__card > span {
    font-size: var(--an-product-fs-14) !important;
  }

  /* =========================
     ACCESSOIRES
     ========================= */

  body#product .an-product-accessories {
    margin-top: 100px !important;
  }

  body#product .an-product-section-heading {
    margin: 100px 0 42px !important;
  }

  body#product .an-product-section-heading > span {
    margin-bottom: 15px !important;
    font-size: var(--an-product-fs-12) !important;
  }

  body#product .an-product-section-heading h2 {
    max-width: 820px !important;
    font-size: var(--an-product-fs-fluid-3) !important;
  }

  /* =========================
     STICKY PRODUIT
     ========================= */

  body#product .an-product-sticky {
    padding: 0 48px !important;
  }

  body#product .an-product-sticky__inner {
    width: min(2000px, 100%) !important;
    min-height: 90px !important;
    padding: 12px 24px !important;
    gap: 28px !important;
  }

  body#product .an-product-sticky__identity {
    gap: 16px !important;
  }

  body#product .an-product-sticky__identity img {
    width: 58px !important;
    height: 58px !important;
    flex-basis: 58px !important;
  }

  body#product .an-product-sticky__identity strong {
    font-size: var(--an-product-fs-15) !important;
  }

  body#product .an-product-sticky__identity small {
    font-size: var(--an-product-fs-12) !important;
  }

  body#product .an-product-sticky__price {
    font-size: var(--an-product-fs-34) !important;
  }

  body#product .an-product-sticky__add {
    min-width: 270px !important;
    min-height: 60px !important;
    padding: 0 30px !important;
    font-size: var(--an-product-fs-15) !important;
  }
}

/* =========================================================
   PRODUITS DE LA MÊME CATÉGORIE — LARGE DESKTOP
   Le module est injecté dans displayFooterProduct, donc en
   dehors de .an-product-accessories.
   ========================================================= */

@media screen and (min-width: 1921px) {

  /* Conteneur du module : même axe que toute la fiche */
  body#product .an-product-page > .featured-products,
  body#product .an-product-page > section.featured-products,
  body#product .an-product-page > .products,
  body#product .an-product-page .productscategory,
  body#product .an-product-page .products-category,
  body#product .an-product-page .product-category-products {
    width: 82.3vw !important;
    max-width: 2200px !important;
    margin: 105px auto 90px !important;
    padding: 0 !important;
  }

  /* Si le module est enveloppé par le hook FooterProduct */
  body#product .an-product-page .featured-products {
    box-sizing: border-box !important;
  }

  body#product .an-product-page .featured-products .products-section-title,
  body#product .an-product-page .productscategory .products-section-title,
  body#product .an-product-page .products-category .products-section-title,
  body#product .an-product-page .product-category-products .products-section-title {
    margin: 0 0 38px !important;
    padding: 0 !important;
    text-align: left !important;
    text-transform: none !important;

    font-family:
      "Bagrile",
      "Instrument Serif",
      Georgia,
      serif !important;

    font-size: var(--an-product-fs-fluid-4) !important;
    font-weight: 400 !important;
    line-height: .98 !important;
    letter-spacing: -.02em !important;

    color: #07574f !important;
  }

  /* Grille 4 produits propre et régulière */
  body#product .an-product-page .featured-products .products,
  body#product .an-product-page .productscategory .products,
  body#product .an-product-page .products-category .products,
  body#product .an-product-page .product-category-products .products {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;

    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(32px, 2vw, 52px) !important;
  }

  /* Neutralise les colonnes Bootstrap éventuelles */
  body#product .an-product-page .featured-products .products > *,
  body#product .an-product-page .productscategory .products > *,
  body#product .an-product-page .products-category .products > *,
  body#product .an-product-page .product-category-products .products > * {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body#product .an-product-page .featured-products .product-miniature,
  body#product .an-product-page .productscategory .product-miniature,
  body#product .an-product-page .products-category .product-miniature,
  body#product .an-product-page .product-category-products .product-miniature {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body#product .an-product-page .featured-products .thumbnail-container,
  body#product .an-product-page .productscategory .thumbnail-container,
  body#product .an-product-page .products-category .thumbnail-container,
  body#product .an-product-page .product-category-products .thumbnail-container {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    flex-direction: column !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  /* Image */
  body#product .an-product-page .featured-products .product-thumbnail,
  body#product .an-product-page .productscategory .product-thumbnail,
  body#product .an-product-page .products-category .product-thumbnail,
  body#product .an-product-page .product-category-products .product-thumbnail {
    width: 100% !important;
    min-height: 430px !important;
    margin: 0 0 18px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: #fff !important;
  }

  body#product .an-product-page .featured-products .product-thumbnail img,
  body#product .an-product-page .productscategory .product-thumbnail img,
  body#product .an-product-page .products-category .product-thumbnail img,
  body#product .an-product-page .product-category-products .product-thumbnail img {
    width: auto !important;
    height: 390px !important;
    max-width: 92% !important;
    max-height: 390px !important;

    object-fit: contain !important;
    background: transparent !important;
    border-radius: 0 !important;
  }

  /* Infos sous image */
  body#product .an-product-page .featured-products .product-description,
  body#product .an-product-page .productscategory .product-description,
  body#product .an-product-page .products-category .product-description,
  body#product .an-product-page .product-category-products .product-description {
    width: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    position: static !important;
    background: transparent !important;
  }

  body#product .an-product-page .featured-products .product-title,
  body#product .an-product-page .featured-products .product-title a,
  body#product .an-product-page .productscategory .product-title,
  body#product .an-product-page .productscategory .product-title a,
  body#product .an-product-page .products-category .product-title,
  body#product .an-product-page .products-category .product-title a,
  body#product .an-product-page .product-category-products .product-title,
  body#product .an-product-page .product-category-products .product-title a {
    font-family:
      "Bagrile",
      "Instrument Serif",
      Georgia,
      serif !important;

    font-size: var(--an-product-fs-24) !important;
    font-weight: 400 !important;
    line-height: 1.05 !important;
    color: #07574f !important;
    text-decoration: none !important;
  }

  body#product .an-product-page .featured-products .product-price-and-shipping,
  body#product .an-product-page .productscategory .product-price-and-shipping,
  body#product .an-product-page .products-category .product-price-and-shipping,
  body#product .an-product-page .product-category-products .product-price-and-shipping {
    margin-top: 10px !important;
    font-size: var(--an-product-fs-16) !important;
    color: #07574f !important;
  }

  body#product .an-product-page .featured-products .price,
  body#product .an-product-page .productscategory .price,
  body#product .an-product-page .products-category .price,
  body#product .an-product-page .product-category-products .price {
    font-size: var(--an-product-fs-18) !important;
    font-weight: 600 !important;
    color: #07574f !important;
  }

  /* Bouton Ajouter au panier : cohérent avec la fiche */
  body#product .an-product-page .featured-products .add-to-cart,
  body#product .an-product-page .featured-products button[data-button-action="add-to-cart"],
  body#product .an-product-page .productscategory .add-to-cart,
  body#product .an-product-page .productscategory button[data-button-action="add-to-cart"],
  body#product .an-product-page .products-category .add-to-cart,
  body#product .an-product-page .products-category button[data-button-action="add-to-cart"],
  body#product .an-product-page .product-category-products .add-to-cart,
  body#product .an-product-page .product-category-products button[data-button-action="add-to-cart"] {
    width: auto !important;
    min-width: 175px !important;
    min-height: 44px !important;

    margin: 14px 0 12px !important;
    padding: 0 22px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    border: 1px solid #07574f !important;
    border-radius: 999px !important;

    background: #07574f !important;

    font-family: "Geist", Arial, sans-serif !important;
    font-size: var(--an-product-fs-13) !important;
    font-weight: 600 !important;
    line-height: 1 !important;

    color: #fff !important;
    text-decoration: none !important;

    box-shadow: none !important;
    cursor: pointer !important;

    transition:
      background .18s ease,
      border-color .18s ease,
      transform .18s ease !important;
  }

  body#product .an-product-page .featured-products .add-to-cart:hover,
  body#product .an-product-page .featured-products button[data-button-action="add-to-cart"]:hover,
  body#product .an-product-page .productscategory .add-to-cart:hover,
  body#product .an-product-page .productscategory button[data-button-action="add-to-cart"]:hover,
  body#product .an-product-page .products-category .add-to-cart:hover,
  body#product .an-product-page .products-category button[data-button-action="add-to-cart"]:hover,
  body#product .an-product-page .product-category-products .add-to-cart:hover,
  body#product .an-product-page .product-category-products button[data-button-action="add-to-cart"]:hover {
    background: #04483f !important;
    border-color: #04483f !important;
    color: #fff !important;
    transform: translateY(-1px);
  }

  /* Le bouton natif ne doit pas prendre le style rectangle Bootstrap */
  body#product .an-product-page .featured-products .btn-primary,
  body#product .an-product-page .productscategory .btn-primary,
  body#product .an-product-page .products-category .btn-primary,
  body#product .an-product-page .product-category-products .btn-primary {
    border-radius: 999px !important;
  }
}

/* =========================================================
   V1.3 — COMPOSEZ VOTRE CURE + MÊME CATÉGORIE
   Correction large desktop
   ========================================================= */

@media screen and (min-width: 1921px) {

  /* =======================================================
     1. COMPOSEZ VOTRE CURE
     ======================================================= */

  body#product .an-product-accessories {
    width: 82.3vw !important;
    max-width: 2200px !important;
    margin: 100px auto 90px !important;
    padding: 0 !important;
  }

  body#product .an-product-accessories .an-product-section-heading {
    margin: 0 0 42px !important;
  }

  body#product .an-product-accessories .an-product-section-heading > span {
    margin-bottom: 14px !important;
    font-size: var(--an-product-fs-12) !important;
  }

  body#product .an-product-accessories .an-product-section-heading h2 {
    max-width: 760px !important;
    font-size: var(--an-product-fs-fluid-5) !important;
    line-height: .94 !important;
  }

  /*
   * Les accessoires PrestaShop sont rendus avec des miniatures
   * natives. On impose une vraie grille au lieu de la pile verticale.
   */
  body#product .an-product-accessories > .products,
  body#product .an-product-accessories > .product-list,
  body#product .an-product-accessories > .row,
  body#product .an-product-accessories .products {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;

    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(30px, 1.8vw, 46px) !important;
    align-items: start !important;
  }

  body#product .an-product-accessories .product-miniature,
  body#product .an-product-accessories .js-product-miniature,
  body#product .an-product-accessories .product {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body#product .an-product-accessories .thumbnail-container {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    flex-direction: column !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body#product .an-product-accessories .product-thumbnail {
    width: 100% !important;
    min-height: 350px !important;
    margin: 0 0 18px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: #fff !important;
    border: 1px solid #eee9e1 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
  }

  body#product .an-product-accessories .product-thumbnail img {
    width: auto !important;
    height: 310px !important;
    max-width: 88% !important;
    max-height: 310px !important;
    margin: auto !important;
    object-fit: contain !important;
    background: transparent !important;
    border-radius: 0 !important;
  }

  body#product .an-product-accessories .product-description {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  body#product .an-product-accessories .product-title,
  body#product .an-product-accessories .product-title a,
  body#product .an-product-accessories .product-name,
  body#product .an-product-accessories .product-name a {
    margin: 0 !important;

    font-family:
      "Bagrile",
      "Instrument Serif",
      Georgia,
      serif !important;

    font-size: var(--an-product-fs-23) !important;
    font-weight: 400 !important;
    line-height: 1.05 !important;

    color: #07574f !important;
    text-decoration: none !important;
  }

  body#product .an-product-accessories .product-price-and-shipping,
  body#product .an-product-accessories .price {
    margin-top: 10px !important;
    font-size: var(--an-product-fs-17) !important;
    color: #07574f !important;
  }


  /* =======================================================
     2. "AUTRES PRODUITS DANS LA MÊME CATÉGORIE"
     ======================================================= */

  /*
   * Le module ps_categoryproducts n'est pas toujours placé
   * sous .an-product-accessories. On le cible directement.
   */
  body#product section.featured-products,
  body#product .featured-products,
  body#product .productscategory,
  body#product .products-category,
  body#product .product-category-products {
    box-sizing: border-box !important;

    width: 82.3vw !important;
    max-width: 2200px !important;

    margin: 100px auto 90px !important;
    padding: 0 !important;
  }

  body#product .featured-products .products-section-title,
  body#product .productscategory .products-section-title,
  body#product .products-category .products-section-title,
  body#product .product-category-products .products-section-title {
    margin: 0 0 42px !important;
    padding: 0 !important;

    text-align: left !important;
    text-transform: none !important;

    font-family:
      "Bagrile",
      "Instrument Serif",
      Georgia,
      serif !important;

    font-size: var(--an-product-fs-fluid-6) !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: -.02em !important;

    color: #07574f !important;
  }

  body#product .featured-products .products,
  body#product .productscategory .products,
  body#product .products-category .products,
  body#product .product-category-products .products,
  body#product .featured-products .product-list,
  body#product .productscategory .product-list {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;

    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(30px, 1.8vw, 46px) !important;

    align-items: start !important;
  }

  body#product .featured-products .products > *,
  body#product .productscategory .products > *,
  body#product .products-category .products > *,
  body#product .product-category-products .products > *,
  body#product .featured-products .product-list > *,
  body#product .productscategory .product-list > * {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body#product .featured-products .product-miniature,
  body#product .productscategory .product-miniature,
  body#product .products-category .product-miniature,
  body#product .product-category-products .product-miniature,
  body#product .featured-products .js-product-miniature,
  body#product .productscategory .js-product-miniature {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body#product .featured-products .thumbnail-container,
  body#product .productscategory .thumbnail-container,
  body#product .products-category .thumbnail-container,
  body#product .product-category-products .thumbnail-container {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    flex-direction: column !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body#product .featured-products .product-thumbnail,
  body#product .productscategory .product-thumbnail,
  body#product .products-category .product-thumbnail,
  body#product .product-category-products .product-thumbnail {
    width: 100% !important;
    min-height: 350px !important;
    margin: 0 0 18px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: #f7f7f4 !important;
    border: 1px solid #eee9e1 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
  }

  body#product .featured-products .product-thumbnail img,
  body#product .productscategory .product-thumbnail img,
  body#product .products-category .product-thumbnail img,
  body#product .product-category-products .product-thumbnail img {
    width: auto !important;
    height: 310px !important;
    max-width: 88% !important;
    max-height: 310px !important;
    margin: auto !important;

    object-fit: contain !important;
    background: transparent !important;
    border-radius: 0 !important;
  }

  body#product .featured-products .product-description,
  body#product .productscategory .product-description,
  body#product .products-category .product-description,
  body#product .product-category-products .product-description {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  body#product .featured-products .product-title,
  body#product .featured-products .product-title a,
  body#product .productscategory .product-title,
  body#product .productscategory .product-title a,
  body#product .products-category .product-title,
  body#product .products-category .product-title a,
  body#product .product-category-products .product-title,
  body#product .product-category-products .product-title a,
  body#product .featured-products .product-name,
  body#product .featured-products .product-name a {
    margin: 0 !important;

    font-family:
      "Bagrile",
      "Instrument Serif",
      Georgia,
      serif !important;

    font-size: var(--an-product-fs-23) !important;
    font-weight: 400 !important;
    line-height: 1.05 !important;

    color: #07574f !important;
    text-decoration: none !important;
  }

  body#product .featured-products .product-price-and-shipping,
  body#product .productscategory .product-price-and-shipping,
  body#product .products-category .product-price-and-shipping,
  body#product .product-category-products .product-price-and-shipping {
    margin-top: 10px !important;
    font-size: var(--an-product-fs-16) !important;
    color: #07574f !important;
  }

  body#product .featured-products .price,
  body#product .productscategory .price,
  body#product .products-category .price,
  body#product .product-category-products .price {
    font-size: var(--an-product-fs-17) !important;
    font-weight: 600 !important;
    color: #07574f !important;
  }


  /* =======================================================
     3. BOUTONS DES DEUX BLOCS
     ======================================================= */

  body#product .an-product-accessories .add-to-cart,
  body#product .an-product-accessories [data-button-action="add-to-cart"],
  body#product .an-product-accessories .btn-primary,
  body#product .featured-products .add-to-cart,
  body#product .featured-products [data-button-action="add-to-cart"],
  body#product .featured-products .btn-primary,
  body#product .productscategory .add-to-cart,
  body#product .productscategory [data-button-action="add-to-cart"],
  body#product .productscategory .btn-primary,
  body#product .products-category .add-to-cart,
  body#product .products-category [data-button-action="add-to-cart"],
  body#product .products-category .btn-primary,
  body#product .product-category-products .add-to-cart,
  body#product .product-category-products [data-button-action="add-to-cart"],
  body#product .product-category-products .btn-primary {
    width: auto !important;
    min-width: 175px !important;
    min-height: 44px !important;

    margin: 14px 0 12px !important;
    padding: 0 22px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    border: 1px solid #07574f !important;
    border-radius: 999px !important;

    background: #07574f !important;

    font-family: "Geist", Arial, sans-serif !important;
    font-size: var(--an-product-fs-13) !important;
    font-weight: 600 !important;
    line-height: 1 !important;

    color: #fff !important;
    text-decoration: none !important;

    box-shadow: none !important;
    cursor: pointer !important;
  }

  body#product .an-product-accessories .add-to-cart:hover,
  body#product .an-product-accessories [data-button-action="add-to-cart"]:hover,
  body#product .featured-products .add-to-cart:hover,
  body#product .featured-products [data-button-action="add-to-cart"]:hover,
  body#product .productscategory .add-to-cart:hover,
  body#product .productscategory [data-button-action="add-to-cart"]:hover {
    background: #04483f !important;
    border-color: #04483f !important;
    color: #fff !important;
  }


  /* Catégorie / marque : plus discrètes */
  body#product .an-product-accessories .product-category-name,
  body#product .an-product-accessories .product-brand,
  body#product .featured-products .product-category-name,
  body#product .featured-products .product-brand,
  body#product .productscategory .product-category-name,
  body#product .productscategory .product-brand {
    margin-bottom: 6px !important;
    font-size: var(--an-product-fs-12) !important;
    line-height: 1.35 !important;
    color: #78918d !important;
  }
}


/* ===== EXTRAITS DE L'ANCIEN custom.css : produit ===== */

/* =====================================================
   CORRECTION HEADER SUR LES FICHES PRODUIT
   Empêche le CSS produit de recolorer les éléments du header
   ===================================================== */

/* Bouton de recherche + loupe */
body#product .an-header .an-live-search__submit,
body#product .an-header .an-live-search__submit .material-icons,
body#product .an-header .an-live-search__submit .icon,
body#product .an-header .an-live-search__submit i {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* SVG éventuel de la recherche */
body#product .an-header .an-live-search__submit svg {
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
}

/* Bandeau "Une question ?" */
body#product .an-announce__help,
body#product .an-announce__help *,
body#product .an-announce__help:link,
body#product .an-announce__help:visited,
body#product .an-announce__help:hover,
body#product .an-announce__help:focus,
body#product .an-announce__help:active {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* SVG éventuel dans "Une question ?" */
body#product .an-announce__help svg {
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
}


/* =========================================================
   ALLO NATUREL — PAGE PRODUIT / LARGE DESKTOP
   Uniformisation visuelle au-delà de 1920px
   ========================================================= */
@media screen and (min-width: 1921px) {

  /* ---------- Zone générale ---------- */

  body#product .wrapper,
  body.page-product .wrapper {
    font-size: var(--an-product-fs-17);
  }

  body#product main .container,
  body.page-product main .container,
  body#product #main .container,
  body.page-product #main .container {
    width: 82.3vw !important;
    max-width: 2200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Breadcrumb */
  body#product .breadcrumb,
  body.page-product .breadcrumb {
    font-size: var(--an-product-fs-14) !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }


  /* =======================================================
     BLOC PRODUIT HAUT
     ======================================================= */

  body#product .product__container,
  body.page-product .product__container {
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: minmax(0, 1.03fr) minmax(0, .97fr) !important;
    gap: clamp(56px, 3.5vw, 92px) !important;
    align-items: start !important;
    padding-top: 34px !important;
  }


  /* ---------- Galerie ---------- */

  body#product .product__images,
  body.page-product .product__images {
    min-width: 0 !important;
  }

  body#product .product__carousel,
  body.page-product .product__carousel,
  body#product .product-cover,
  body.page-product .product-cover {
    min-height: 650px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body#product .product__carousel img,
  body.page-product .product__carousel img,
  body#product .product-cover img,
  body.page-product .product-cover img {
    width: auto !important;
    max-width: 90% !important;
    max-height: 650px !important;
    object-fit: contain !important;
  }

  body#product .product__zoom,
  body.page-product .product__zoom {
    width: 52px !important;
    height: 52px !important;
    font-size: var(--an-product-fs-22) !important;
  }

  body#product .product__thumbnails,
  body.page-product .product__thumbnails {
    margin-top: 24px !important;
  }

  body#product .product__thumbnails-list,
  body.page-product .product__thumbnails-list {
    gap: 20px !important;
  }

  body#product .product__thumbnail-image,
  body.page-product .product__thumbnail-image {
    min-height: 100px !important;
    object-fit: contain !important;
  }


  /* ---------- Informations principales ---------- */

  body#product .product__name,
  body.page-product .product__name {
    margin-bottom: 26px !important;
  }

  body#product .product__name h1,
  body.page-product .product__name h1,
  body#product h1.product__name,
  body.page-product h1.product__name,
  body#product .product__info h1,
  body.page-product .product__info h1 {
    font-size: var(--an-product-fs-fluid-7) !important;
    line-height: .96 !important;
  }

  body#product .product__manufacturer,
  body.page-product .product__manufacturer,
  body#product .product-reference,
  body.page-product .product-reference,
  body#product .product__reference,
  body.page-product .product__reference {
    font-size: var(--an-product-fs-14) !important;
    line-height: 1.4 !important;
  }

  body#product .product__description-short,
  body.page-product .product__description-short {
    max-width: 920px !important;
    margin-bottom: 26px !important;
    font-size: var(--an-product-fs-17) !important;
    line-height: 1.65 !important;
  }


  /* ---------- Prix ---------- */

  body#product .product__prices,
  body.page-product .product__prices {
    margin-bottom: 30px !important;
    font-size: var(--an-product-fs-21) !important;
  }

  body#product .product__price,
  body.page-product .product__price,
  body#product .current-price,
  body.page-product .current-price {
    font-size: var(--an-product-fs-38) !important;
    line-height: 1 !important;
    font-weight: 600 !important;
  }

  body#product .product__regular-price,
  body.page-product .product__regular-price,
  body#product .product__discount-price,
  body.page-product .product__discount-price,
  body#product .product__unit-price,
  body.page-product .product__unit-price,
  body#product .product__tax-infos,
  body.page-product .product__tax-infos {
    font-size: var(--an-product-fs-16) !important;
  }


  /* ---------- Variantes / déclinaisons ---------- */

  body#product .product__variants,
  body.page-product .product__variants {
    gap: 22px !important;
    margin-bottom: 30px !important;
  }

  body#product .product__variants label,
  body.page-product .product__variants label,
  body#product .product__variants .control-label,
  body.page-product .product__variants .control-label,
  body#product .product-variants-item .control-label,
  body.page-product .product-variants-item .control-label {
    font-size: var(--an-product-fs-16) !important;
    line-height: 1.35 !important;
  }

  body#product .product__variants select,
  body.page-product .product__variants select,
  body#product .product-variants-item select,
  body.page-product .product-variants-item select {
    min-height: 52px !important;
    padding: 0 18px !important;
    font-size: var(--an-product-fs-16) !important;
  }

  /* Pastilles couleurs / goûts */
  body#product .product__variants .color,
  body.page-product .product__variants .color,
  body#product .product-variants-item .color,
  body.page-product .product-variants-item .color,
  body#product .input-color,
  body.page-product .input-color {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
  }

  body#product .product__variants .radio-label,
  body.page-product .product__variants .radio-label,
  body#product .product-variants-item .radio-label,
  body.page-product .product-variants-item .radio-label {
    min-height: 38px !important;
    padding: 7px 12px !important;
    font-size: var(--an-product-fs-14) !important;
  }


  /* ---------- Achat ---------- */

  body#product .product__actions,
  body.page-product .product__actions,
  body#product .product__add-to-cart-container,
  body.page-product .product__add-to-cart-container {
    margin-bottom: 30px !important;
  }

  body#product .product__actions-qty-add,
  body.page-product .product__actions-qty-add {
    gap: 18px !important;
  }

  body#product .product__quantity input,
  body.page-product .product__quantity input,
  body#product .qty input,
  body.page-product .qty input {
    min-height: 58px !important;
    font-size: var(--an-product-fs-17) !important;
  }

  body#product .product__quantity button,
  body.page-product .product__quantity button,
  body#product .bootstrap-touchspin .btn,
  body.page-product .bootstrap-touchspin .btn {
    min-width: 48px !important;
    min-height: 29px !important;
  }

  body#product .product__add-to-cart-button,
  body.page-product .product__add-to-cart-button,
  body#product .add-to-cart,
  body.page-product .add-to-cart {
    min-height: 60px !important;
    padding: 0 30px !important;
    font-size: var(--an-product-fs-17) !important;
    border-radius: 999px !important;
  }

  body#product .product__minimal-quantity,
  body.page-product .product__minimal-quantity,
  body#product .product__availability,
  body.page-product .product__availability,
  body#product .product__delivery-infos,
  body.page-product .product__delivery-infos {
    font-size: var(--an-product-fs-15) !important;
    line-height: 1.45 !important;
  }


  /* ---------- Partage + avantages ---------- */

  body#product .social-sharing,
  body.page-product .social-sharing,
  body#product .product-sharing,
  body.page-product .product-sharing {
    font-size: var(--an-product-fs-15) !important;
  }

  body#product .social-sharing a,
  body.page-product .social-sharing a {
    width: 36px !important;
    height: 36px !important;
  }

  body#product .product__additional-info,
  body.page-product .product__additional-info {
    gap: 24px !important;
    font-size: var(--an-product-fs-16) !important;
    line-height: 1.5 !important;
  }


  /* =======================================================
     PARTIE BASSE : DESCRIPTION / AVIS / INFORMATIONS
     ======================================================= */

  body#product .product__bottom,
  body.page-product .product__bottom {
    width: 100% !important;
    max-width: none !important;
    gap: 56px !important;
    margin-top: 70px !important;
  }

  body#product .product__bottom-left,
  body.page-product .product__bottom-left {
    min-width: 0 !important;
  }

  body#product .tabs,
  body.page-product .tabs,
  body#product .product-tabs,
  body.page-product .product-tabs {
    width: 100% !important;
    max-width: none !important;
  }

  body#product .nav-tabs,
  body.page-product .nav-tabs {
    gap: 34px !important;
    margin-bottom: 34px !important;
  }

  body#product .nav-tabs .nav-link,
  body.page-product .nav-tabs .nav-link {
    padding: 14px 0 !important;
    font-size: var(--an-product-fs-15) !important;
  }

  body#product .tab-content,
  body.page-product .tab-content,
  body#product .product-description,
  body.page-product .product-description,
  body#product #description,
  body.page-product #description {
    max-width: none !important;
    font-size: var(--an-product-fs-17) !important;
    line-height: 1.72 !important;
  }

  body#product .tab-content h2,
  body.page-product .tab-content h2,
  body#product .product-description h2,
  body.page-product .product-description h2,
  body#product #description h2,
  body.page-product #description h2 {
    margin-top: 42px !important;
    margin-bottom: 22px !important;
    font-size: var(--an-product-fs-34) !important;
    line-height: 1.05 !important;
  }

  body#product .tab-content h3,
  body.page-product .tab-content h3,
  body#product .product-description h3,
  body.page-product .product-description h3,
  body#product #description h3,
  body.page-product #description h3 {
    margin-top: 34px !important;
    margin-bottom: 16px !important;
    font-size: var(--an-product-fs-26) !important;
    line-height: 1.15 !important;
  }

  body#product .tab-content p,
  body.page-product .tab-content p,
  body#product .product-description p,
  body.page-product .product-description p,
  body#product #description p,
  body.page-product #description p {
    margin-bottom: 18px !important;
  }

  body#product .tab-content li,
  body.page-product .tab-content li,
  body#product .product-description li,
  body.page-product .product-description li,
  body#product #description li,
  body.page-product #description li {
    margin-bottom: 9px !important;
  }


  /* ---------- Accessoires / produits liés ---------- */

  body#product .product__accessories,
  body.page-product .product__accessories {
    margin-top: 70px !important;
    margin-bottom: 70px !important;
  }

  body#product .product__accessories h2,
  body.page-product .product__accessories h2,
  body#product .product-accessories h2,
  body.page-product .product-accessories h2 {
    font-size: var(--an-product-fs-42) !important;
    line-height: 1 !important;
    margin-bottom: 34px !important;
  }


  /* ---------- Avis ---------- */

  body#product #product-comments-list-header .section-title,
  body.page-product #product-comments-list-header .section-title {
    font-size: var(--an-product-fs-34) !important;
  }

  body#product #product-comments-list .comment,
  body.page-product #product-comments-list .comment {
    padding: 24px !important;
    font-size: var(--an-product-fs-16) !important;
  }

  body#product #product-comments-list .comment__title,
  body.page-product #product-comments-list .comment__title {
    font-size: var(--an-product-fs-19) !important;
  }

  body#product #product-comments-list .comment__text,
  body.page-product #product-comments-list .comment__text {
    font-size: var(--an-product-fs-16) !important;
    line-height: 1.55 !important;
  }
}

