/*
Theme Name: Divi Child
Template: Divi
Description: Thème enfant pour Divi
Author: Any Communication
Author URI: https://any-communication.com
Version: 1.6.4
*/
@import url("../Divi/style.css");

/******* 

Global 

*******/

#et-top-navigation .et-cart-info {
  display: none !important;
}

.header-content-container .et_pb_module_header {
  margin-bottom: 30px; /* Ajustez cette valeur selon vos préférences */
}

/*PERSONNALISER LE BOUTON DE RETOUR EN HAUT DE PAGE*/

/*Opacité du bouton et effets d'animation (pour tous les navigateurs)*/
.et_pb_scroll_top.et-visible {
  opacity: 1;
  -webkit-animation: fadeInBottom 1s;
  -moz-animation: fadeInBottom 1s;
  -o-animation: fadeInBottom 1s;
  animation: fadeInBottom 1s;
}

/*Positionnement et couleur du bouton*/
.et_pb_scroll_top.et-pb-icon {
  right: calc(
    50% - 25px
  ); /*distance du bouton par rapport à la droite de la fenêtre*/
  bottom: 50px; /*distance du bouton par rapport au bas de la fenêtre*/
  border-radius: 25px; /*Propriété permettant d'arrondir le bouton, supprimez la si vous voulez un bouton carré*/
  background: #432918; /*couleur de fond du bouton. Mettez celle que vous voulez*/
  border: 2px solid #fff;
}

/*couleur de fond du bouton au survol*/
.et_pb_scroll_top.et-pb-icon:hover {
  background: #fff;
  border: 2px solid #432918;
}

/*Choix de l'icone et couleur de celui-ci*/
.et_pb_scroll_top:before {
  content: "\36"; /* icone provenant des icones de bases de Divi*/
  color: #f9b233; /*couleur de l'icône*/
}

/* ===== FERMETURE MENU SUR MOBILE ===== */

/* Niveau 1 */
.et_mobile_menu .first-level > a {
  background-color: transparent;
  position: relative;
}

.et_mobile_menu .first-level > a:after {
  font-family: "ETmodules";
  content: "\35"; /* flèche fermée */
  font-weight: bold;
  position: absolute;
  font-size: 18px;
  top: 10px;
  right: 0;
}

/* Flèche ouverte niveau 1 */
.et_mobile_menu .first-level > a.icon-switch:after {
  content: "\4d";
}

/* ===== NIVEAU 2 ===== */

.et_mobile_menu .second-level > a {
  background-color: transparent;
  position: relative;
  padding-right: 25px; /* espace pour la flèche */
}

/* Flèche affichée uniquement si le lien a une sous-catégorie (niveau 3) */
.et_mobile_menu .second-level > a.has-third:after {
  font-family: "ETmodules";
  content: "\35"; /* flèche fermée */
  font-weight: bold;
  position: absolute;
  font-size: 16px;
  top: 8px;
  right: 0;
}

/* Flèche ouverte niveau 2 */
.et_mobile_menu .second-level > a.has-third.icon-switch:after {
  content: "\4d";
}

/* Cacher les sous-menus par défaut */
.second-level,
.third-level {
  display: none;
}

/* Si besoin de forcer l'affichage */
.reveal-items {
  display: block;
}

/* Structure générale */
.et_mobile_menu {
  width: 100%;
  margin-left: 0;
}

.ligne-header {
  display: flex;
}

.et_pb_column_1_tb_header {
  margin: auto;
}

@media (min-width: 981px) {
  .et_pb_column_1_tb_header {
    display: flex;
    justify-content: flex-end;
  }
}

/* Réinitialisation de la hauteur pour textarea à "auto" */
.wpcf7-form-control.wpcf7-textarea,
.woocommerce textarea {
  height: auto !important;
}

/******* 

Fiche Produit 

*******/

.crea-hautes-alpes {
  width: 150px;
}

.quantity .input-text.qty.text {
  width: 50px;
  height: 45px;
  padding: 0;
}

/* CSS des tiroirs (caractéristiques, ingériant)  */
.toggle-title {
  position: relative;
  padding: 20px;
  margin-bottom: 10px;
  background-color: rgba(128, 128, 128, 0.05);
  border-radius: 5px;
}

.toggle-title:after {
  content: "▼";
  font-family: "dashicons";
  speak: none;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 20px;
  transition: transform 0.3s ease;
  padding-right: 20px;
}

.toggle-title.opened:after {
  content: "▲"; /* Icône de croix Dashicons */
}

.toggle-content {
  overflow: hidden;
  transition: height 0.4s ease;
  height: 0;
}

/******* 

Boutique 

*******/
/* limitée l'affichage du titre produit à deux ligne */
.woocommerce-loop-product__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3em;
  max-height: 3.2em;
}

/* Badge "Promo" */
.woocommerce span.onsale {
  background-color: #f9b233 !important;
  color: #ffffff;
  border-radius: 5px;
  line-height: 1.2em !important;
  border: 1px solid #fff;
  padding: 6px 18px;
  font-size: 14px;
  box-shadow: rgba(0, 0, 0, 0.3) 2px 2px !important;
}

/*btn arrondi Side Cart*/
.xoo-wsc-ft-btn,
.xoo-wsc-btn {
  border-radius: 5px;
}

@media only screen and (max-width: 768px) {
  .et_pb_shop .woocommerce-LoopProduct-link {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: auto; /* Vous pouvez spécifier une hauteur minimale si nécessaire */
  }

  .et_pb_shop .woocommerce-loop-product__title {
    min-height: 3em; /* Assure une hauteur minimale pour le titre, ajustez selon besoin */
  }

  .et_pb_shop .star-rating {
    margin-bottom: 10px; /* Espacement pour les étoiles */
  }

  .et_pb_shop .price {
    min-height: 1.5em; /* Assure une hauteur minimale pour le prix, ajustez selon besoin */
  }

  /* Assure que les boutons sont poussés vers le bas */
  .et_pb_shop .et_pb_button_module_wrapper {
    margin-top: auto;
  }
}

/******* 

Mon Compte 

*******/
.woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-tabs {
  display: none;
}

.woocommerce-account .woocommerce-MyAccount-content {
  width: 100%;
}

/*Masquer Téléchargement dans mon compte*/
.woocommerce-MyAccount-navigation-link--downloads {
  display: none;
}

/*fixer auteur contenu blog*/
.et_pb_ajax_pagination_container .et_pb_post {
  height: 430px; /* ou la hauteur souhaitée */
  overflow: hidden;
}

/******* 

Contact 

*******/
/* champ de text + formulaire */
.wpcf7-form-control:not(.wpcf7-submit),
.woocommerce input[type="text"],
.woocommerce input[type="number"],
.woocommerce input[type="email"],
.woocommerce input[type="password"],
.woocommerce textarea {
  border: 1px solid #432918 !important;
  padding-left: 10px !important;
  border-radius: 5px !important;
  background-color: #ffffff !important;
}

.wpcf7-form-control:not(.wpcf7-submit):focus,
.woocommerce input[type="text"]:focus,
.woocommerce input[type="number"]:focus,
.woocommerce input[type="email"]:focus,
.woocommerce input[type="password"]:focus,
.woocommerce textarea:focus {
  border-color: #f9b233 !important;
}

/* Formulaire en deux colones-1 sur mobile */
.cf7-flex-container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.cf7-flex-item {
  flex: 1;
  margin-right: 20px;
}

.cf7-full-width {
  width: 100%;
  display: block;
  clear: both;
  margin: 15px 0;
}
/* à partir de la tabelette */
@media (max-width: 1024px) {
  /* Alignement vertical Hamburger menu */
  .et_pb_column_1_tb_header {
    margin: 0 !important;
  }
  .et_pb_row_0_tb_header {
    align-items: center !important;
  }
}

/* Pour les appareils mobiles */
@media (max-width: 768px) {
  /* modification formulaire */
  .cf7-flex-item {
    margin-right: 0;
    width: 100%;
    flex: none;
  }
  .cf7-flex-item:first-child {
    margin-bottom: 15px;
  }
  /* Forcer l'affiche d'image dans le panier */
  .woocommerce-cart .cart .product-thumbnail {
    display: block !important;
  }
  .product-thumbnail::before {
    content: none !important;
  }
  .woocommerce-cart .cart .product-thumbnail img {
    width: auto;
    max-width: 500px;
    height: auto;
    display: block;
    margin: auto;
  }
  .header-content-container .et_pb_module_header {
    margin-bottom: 10px; /* Ajustez cette valeur selon vos préférences */
  }
}

.cf7-flex-item:last-child {
  margin-right: 0;
}

/*******  

Footer 

*******/
.et_pb_row.et_pb_row_1_tb_footer .et_pb_blurb_description a {
  color: #432918;
}
.et_pb_row.et_pb_row_1_tb_footer .et_pb_blurb_description a:hover,
.et_pb_row.et_pb_row_1_tb_footer .et_pb_blurb_description a:focus {
  color: #f9b233;
}

/*******  

Menu et paiement

*******/
.toggle-title.opened:after {
  content: "▲"; /* Icône de croix Dashicons */
}

.toggle-title:after {
  content: "▼";
  font-family: "dashicons";
  speak: none;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 20px;
  transition: transform 0.3s ease;
  padding-right: 20px;
}

.woocommerce-error li a {
  color: #fff !important;
}

/* Liste stylée sans puces */
/* Place CE CSS dans Options du thème > CSS personnalisé */
:root {
  --check-color: #f9b233; /* jaune doré, remplace par #8B4513 pour marron */
}

/* Portée précise: description produit WooCommerce sous Divi */
.et_pb_wc_description ul.checklist {
  margin: 0 0 0 20px;
  padding: 0;
}
.et_pb_wc_description ul.checklist > li {
  position: relative;
  margin: 0.35rem 0;
  padding-left: 1.8rem; /* place pour la coche */
}

/* la coche – affichage garanti */
.et_pb_wc_description ul.checklist > li::before {
  content: "\2714"; /* ✔ en unicode, plus fiable que le caractère direct */
  position: absolute;
  left: 0;
  top: 0.1rem;
  display: inline-block; /* évite certains resets de thèmes */
  width: 1.2rem; /* réserve une colonne pour la coche */
  line-height: 1;
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--check-color);
  pointer-events: none; /* aucune interaction parasite */
  transform: translateZ(0); /* contourne certains bugs de rendu */
}

/* Fix affichage mobile : forcer la coche */
@media (max-width: 768px) {
  .et_pb_wc_description ul.checklist > li::before {
    content: "\2714" !important;
    font-size: 1.2rem !important; /* un peu plus grand pour visibilité */
    line-height: 1.2 !important;
    color: var(--check-color) !important;
    display: inline-block !important;
  }
}

/* Ceinture et bretelles au cas où un style remettrait les puces */
.et_pb_wc_description ul.checklist > li::marker {
  content: "" !important;
}

.added_to_cart {
  padding-left: 20px;
}

.dsm-star-rating.et_pb_gutters2 .et_pb_column_1_2 .et_pb_module.dsm_star_rating,
.et_pb_gutters2.et_pb_row .et_pb_column_1_2 .et_pb_module.dsm_star_rating {
  margin: 10px 0;
}

/* Mini menu, 2 colonnes par ligne sur mobile */
@media (max-width: 767px) {
  .mini-menu-row .et_pb_column {
    width: 50% !important;
    float: left;
    padding: 10px;
    margin-right: 0 !important;
  }

  /* Pour forcer le retour à la ligne après chaque paire */
  .mini-menu-row .et_pb_column:nth-child(odd) {
    clear: both;
  }
}
