/* ==========================================================================
   CHKEY Divi Child — skin.css
   Applique les tokens du design system CHKEY (rouge suisse, Manrope/Open Sans)
   par-dessus Divi + WooCommerce. Ne modifie jamais le thème Divi lui-même.
   ========================================================================== */

/* ---- Typographie globale ------------------------------------------------ */
body, p, li, .et_pb_text_inner {
  font-family: var(--font-body);
  color: var(--text-body);
}

h1, h2, h3, h4, h5,
.et_pb_module_header, .et_pb_toggle_title, .entry-title,
.woocommerce-loop-product__title, .product_title {
  font-family: var(--font-display) !important;
  color: var(--text-strong);
  letter-spacing: var(--ls-tight);
  font-weight: var(--fw-bold);
}

a { color: var(--text-link); }
a:hover { color: var(--color-primary-hover); }

/* Codes / clés de licence : police mono, motif de marque */
.chk-keycode, code, .woocommerce-order-overview code {
  font-family: var(--font-mono);
  letter-spacing: var(--ls-key);
}

/* ---- Boutons (Divi + WooCommerce) --------------------------------------- */
.et_pb_button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce #respond input#submit,
.woocommerce input.button,
.single_add_to_cart_button,
.wpforms-submit {
  background: var(--color-primary) !important;
  color: var(--color-on-primary) !important;
  border: 0 !important;
  border-radius: var(--radius-md) !important;
  font-family: var(--font-display) !important;
  font-weight: var(--fw-bold) !important;
  letter-spacing: var(--ls-normal);
  box-shadow: var(--shadow-cta);
  transition: var(--transition-base);
  padding: 0.8em 1.6em !important;
}
.et_pb_button:before { display: none !important; }
.et_pb_button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.single_add_to_cart_button:hover,
.wpforms-submit:hover {
  background: var(--color-primary-hover) !important;
  box-shadow: var(--shadow-cta-hover);
  transform: translateY(-2px);
}
.et_pb_button:active,
.woocommerce a.button:active {
  transform: translateY(1px);
}

/* Boutons secondaires / contour */
.et_pb_button.et_pb_button_outline,
.woocommerce a.button.et_pb_button_outline {
  background: transparent !important;
  color: var(--color-primary) !important;
  border: var(--bw-thick) solid var(--color-primary) !important;
  box-shadow: none;
}

/* ---- Cartes produit (boutique) ------------------------------------------ */
.woocommerce ul.products li.product,
.products li.product {
  background: var(--surface-card);
  border: var(--border-line);
  border-radius: var(--radius-lg);
  padding: var(--space-4);
  transition: var(--transition-base);
}
.woocommerce ul.products li.product:hover,
.products li.product:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
  border-color: transparent;
}
.woocommerce ul.products li.product img {
  border-radius: var(--radius-md);
  transition: transform var(--dur-slow) var(--ease-out);
}
.woocommerce ul.products li.product:hover img {
  transform: scale(1.05);
}
.woocommerce-loop-product__title {
  font-size: var(--fs-h5) !important;
  line-height: var(--lh-snug);
}

/* ---- Prix ---------------------------------------------------------------- */
.woocommerce .price,
.summary .price {
  font-family: var(--font-display);
  color: var(--text-strong);
  font-weight: var(--fw-extra);
}
.woocommerce .price del {
  color: var(--text-faint);
  font-weight: var(--fw-semibold);
  opacity: 1;
}
.woocommerce .price ins {
  color: var(--color-primary);
  text-decoration: none;
}
.summary .price { font-size: var(--fs-price); }

/* Badge promo (-XX%) */
.woocommerce span.onsale {
  background: var(--color-primary) !important;
  color: var(--color-on-primary) !important;
  font-family: var(--font-display);
  font-weight: var(--fw-bold);
  border-radius: var(--radius-pill);
  box-shadow: var(--shadow-cta);
}

/* Avis / notation */
.woocommerce .star-rating span::before,
.woocommerce .star-rating::before {
  color: var(--rating-star);
}

/* ---- Stock / disponibilité ------------------------------------------------ */
.woocommerce .stock.in-stock { color: var(--status-success); font-weight: var(--fw-semibold); }
.woocommerce .stock.out-of-stock { color: var(--status-danger); }

/* ---- En-tête / navigation ------------------------------------------------- */
#main-header, #et-top-navigation {
  background: var(--white);
  border-bottom: var(--border-line);
}
#et-top-navigation .nav li > a,
#main-header .et_search_outer .et-search-field {
  font-family: var(--font-body);
  color: var(--text-body);
}
#et-top-navigation .nav li > a:hover,
#et-top-navigation .nav li.current-menu-item > a {
  color: var(--color-primary);
}

/* ---- Formulaires (WPForms + WooCommerce) ---------------------------------- */
.wpforms-field input[type=text],
.wpforms-field input[type=email],
.wpforms-field input[type=tel],
.wpforms-field textarea,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select {
  border: var(--border-line) !important;
  border-radius: var(--radius-md) !important;
  font-family: var(--font-body);
  transition: var(--transition-base);
}
.wpforms-field input:focus,
.woocommerce form .form-row input.input-text:focus {
  border-color: var(--border-focus) !important;
  box-shadow: var(--focus-ring);
  outline: none;
}

/* ---- Cartes générales (Divi blurbs, etc.) ---------------------------------- */
.et_pb_blurb, .et_pb_module.et_pb_blurb {
  border-radius: var(--radius-lg);
  transition: var(--transition-base);
}

/* ---- Pied de page ---------------------------------------------------------- */
#main-footer, .et-l--footer {
  background: var(--surface-inverse);
  color: var(--text-on-dark);
}
#main-footer a { color: var(--text-on-dark); }
#main-footer a:hover { color: var(--red-300); }

/* ---- Sélection de texte ----------------------------------------------------- */
::selection { background: var(--red-500); color: var(--white); }

/* ---- Bandeau de réassurance CHKEY (aligné sur le rouge de marque) ---------- */
.chkey-trust__ic svg { stroke: var(--color-primary) !important; }

/* ---- Bouton WhatsApp flottant (aligné sur le radius/ombre de marque) ------- */
.chkey-wa-float { box-shadow: var(--shadow-lg) !important; }
