:root {
  --jac-ultra-dark: #250f05;
  --jac-ultra-brown: #5a2a10;
  --jac-ultra-gold: #d29a44;
  --jac-ultra-gold-light: #f4d28c;
  --jac-ultra-cream: #fff2d4;
}

/* Ancien badge fait maison */
body#product .jac-ultra-remove-old-badge,
body#product .jac-ultra-hidden {
  display: none !important;
}

/* Cache anciens blocs de modules correctifs si présents */
body#product .jac-product-clean-reassurance,
body#product .jac-final-reassurance,
body#product .jac-final-story,
body#product .jac-product-story-block,
body#product #jac-product-premium,
body#product .jac-product-premium {
  display: none !important;
}

/* Cache Pinterest */
body#product .social-sharing li.pinterest,
body#product .social-sharing .pinterest,
body#product .social-sharing a[href*="pinterest"],
body#product a[href*="pinterest.com"],
body#product [class*="pinterest"] {
  display: none !important;
}

/* Badge luxe */
body#product .jac-ultra-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 12px 0 18px;
  padding: 8px 18px;
  border-radius: 999px;
  border: 1px solid rgba(244, 210, 140, .7);
  background: linear-gradient(135deg, #8a4210, #d29a44 48%, #6a2c08);
  color: #fff8e6;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  box-shadow: 0 12px 28px rgba(82, 35, 4, .22);
}

body#product .jac-ultra-badge::before {
  content: "✦";
  color: #fff2bd;
}

/* Réassurance luxe */
body#product .jac-ultra-reassurance {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 14px 0 24px;
}

body#product .jac-ultra-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 15px 18px;
  background: radial-gradient(circle at top left, rgba(244, 210, 140, .12), transparent 35%), linear-gradient(135deg, #2b1207, #55240d);
  border: 1px solid rgba(210, 154, 68, .55);
  border-radius: 12px;
  color: var(--jac-ultra-cream);
  box-shadow: 0 10px 26px rgba(54, 22, 3, .18);
}

body#product .jac-ultra-card span {
  width: 42px;
  height: 42px;
  border: 1px solid var(--jac-ultra-gold);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 42px;
}

body#product .jac-ultra-card strong {
  display: block;
  color: #fff1c8;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

body#product .jac-ultra-card small {
  display: block;
  color: #f1d9a8;
  font-size: 12px;
}

/* Titre/prix/bouton */
body#product h1,
body#product .h1 {
  font-family: Georgia, "Times New Roman", serif !important;
  color: #2b1207 !important;
  letter-spacing: .02em;
}

body#product .current-price,
body#product .product-price,
body#product .current-price-value {
  color: #a75c14 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 900 !important;
}

body#product .product-add-to-cart .btn-primary,
body#product button.add-to-cart {
  background: linear-gradient(180deg, #d99332, #8d430d) !important;
  border: 1px solid #f3c270 !important;
  color: #fff4d7 !important;
  border-radius: 8px !important;
  box-shadow: 0 10px 24px rgba(86, 37, 4, .25) !important;
}

body#product .product-add-to-cart .btn-primary:hover,
body#product button.add-to-cart:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(86, 37, 4, .32) !important;
}

/* DESCRIPTION LUXE FULL WIDTH */
body#product .product-container,
body#product .js-product-container {
  display: flex !important;
  flex-wrap: wrap !important;
}

body#product .tabs,
body#product .product-tabs,
body#product .jac-ultra-tabs-wide {
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  clear: both !important;
  margin: 34px 0 18px !important;
  background:
    radial-gradient(circle at top left, rgba(210, 154, 68, .12), transparent 30%),
    linear-gradient(180deg, rgba(255, 250, 237, .96), rgba(248, 230, 194, .92)) !important;
  border: 1px solid rgba(180, 125, 53, .34) !important;
  border-radius: 16px !important;
  padding: 32px 38px !important;
  box-shadow: 0 18px 42px rgba(78, 36, 10, .12) !important;
}

body#product .tabs::before,
body#product .product-tabs::before {
  content: "À propos de ce produit";
  display: block;
  margin-bottom: 18px;
  color: #8b4a11;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
}

body#product .tabs .nav-tabs,
body#product .product-tabs .nav-tabs {
  border-bottom: 1px solid rgba(92, 51, 20, .18) !important;
  margin-bottom: 22px !important;
}

body#product .tabs .nav-link,
body#product .product-tabs .nav-link {
  color: #3a1b0b !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  letter-spacing: .04em;
}

body#product .tabs .nav-link.active,
body#product .product-tabs .nav-link.active {
  color: #9a5a12 !important;
  border-bottom: 2px solid #9a5a12 !important;
}

body#product .tab-content,
body#product .tab-pane,
body#product .product-description {
  width: 100% !important;
  max-width: none !important;
  color: #3a2415 !important;
  font-size: 15px !important;
  line-height: 1.85 !important;
}

/* Storytelling */
body#product .jac-ultra-story {
  margin: 28px auto 18px;
  padding: 30px 36px;
  background:
    radial-gradient(circle at 10% 20%, rgba(212, 167, 98, .16), transparent 32%),
    linear-gradient(135deg, #2a1208, #5a2a10);
  border: 1px solid rgba(212, 167, 98, .42);
  border-radius: 14px;
  color: #f8e7bf;
  box-shadow: 0 18px 42px rgba(55, 22, 4, .22);
}

body#product .jac-ultra-kicker {
  display: block;
  color: #d4a762;
  font-size: 12px;
  letter-spacing: 1.5px;
  font-weight: 900;
  text-transform: uppercase;
  margin-bottom: 6px;
}

body#product .jac-ultra-story h3 {
  color: #fff1cf;
  font-size: 22px;
  line-height: 1.25;
  margin: 0 0 12px;
}

body#product .jac-ultra-story p {
  max-width: 780px;
  color: #f3dfb8;
  line-height: 1.7;
  margin-bottom: 14px;
}

body#product .jac-ultra-points {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 24px;
  color: #ffe0a2;
  font-weight: 800;
  font-size: 13px;
}

@media (max-width: 768px) {
  body#product .jac-ultra-reassurance {
    grid-template-columns: 1fr;
  }

  body#product .tabs,
  body#product .product-tabs,
  body#product .jac-ultra-story {
    padding: 22px !important;
  }
}
