/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/
.fusion-button.devis-btn {
  display: none;
}
/* ombrage sous menu */
.post-content {
  position: relative;
  padding-top: 50px; /* espace pour laisser passer l’ombre + marge */
}

.post-content::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 40px;  /* hauteur de l’ombre */
  pointer-events: none;
  background: linear-gradient(
    to bottom,
    #f2f2f2 0%,
    rgba(242,242,242,0.8) 35%,
    rgba(242,242,242,0) 100%
  );
  z-index: 1;
}

.fusion-button.underline-anim-btn {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

.fusion-button.underline-anim-btn .fusion-button-text {
  position: relative;
  display: inline-block;
  padding: 0 !important;
  line-height: 1.2;
}

.fusion-button.underline-anim-btn .fusion-button-text::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;            /* ajustez à -2px si vous voulez l’abaisser */
  width: 0;
  height: 2px;
  background: #FE279D;  /* couleur du soulignement */
  transition: width 0.35s ease;
}

.fusion-button.underline-anim-btn:hover .fusion-button-text::after {
  width: 100%;
}

.underline-anim {
  position: relative;
  display: inline-block;
  text-decoration: none;
  color: inherit;
}

.underline-anim::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;             /* si trop collé, remplacez par -2px */
  width: 0;
  height: 4px;
  background: #FE279D;   /* couleur du soulignement */
  transition: width 0.35s ease;
}

.underline-anim:hover::after {
  width: 100%;
}
/* 4) Au survol, la ligne s’étend sur la largeur du mot */
.fusion-button.underline-anim-btn:hover .fusion-button-text::after {
  width: 100%;
}
  /* fond gris sur texte */
.fond-gris {
  background-color: #f2f2f2;   /* gris clair */
  font-weight: bold;
  text-align: center;
  padding: 8px 10px;           /* même espace haut/bas */
  margin-top: 25px !important; /* espace avant le bandeau */
  margin-bottom: 40px;         /* espace après le bandeau */
  font-size: 18px;
  display: flex;               /* active flexbox */
  align-items: center;         /* centre verticalement */
  justify-content: center;     /* centre horizontalement */
  height: 40px;                /* hauteur fixe du bandeau */
}

.fond-gris p {
  margin: 0 !important;
  line-height: 1 !important;   /* supprime les décalages verticaux */
}

  /* encadre fushia duo */
.partenaire {
  border: 2px solid #FE279D; /* encadré fuchsia */
  color: #000;               /* texte noir (modifie si besoin) */
  font-weight: bold;         /* texte en gras */
  padding: 8px 15px;         /* espace intérieur autour du texte */
  display: inline-block;     /* pour que le cadre s’ajuste au texte */
  border-radius: 6px;        /* coins arrondis (facultatif) */
}
  /* espace entre img et vignettes fiche produit*/
.single-product .avada-product-gallery-thumbs-wrapper {
  margin-top: 60px !important; /* espace entre la grande image et les miniatures */
}
  /* enlever fleches image produit*/
.single-product .flex-direction-nav {
  display: none !important;
}
/* Forcer les prix WooCommerce en noir */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce-Price-amount,
.woocommerce-Price-currencySymbol {
  color: #000 !important; /* noir */
}
/* Enlever l’italique sur les titres produits WooCommerce */
.woocommerce ul.products li.product h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-style: normal !important;
}
#ppom-total-display {
    font-size: 16px;
    font-weight: 600;
    margin-top: 5px;
    color: #333; /* sobre, lisible */
}
#ppom-total-display .ppom-total-label {
    font-weight: 400;
    color: #555;
}

/*marge du dessus */
/* Supprime l’espace en haut du main sur catégories, pages, articles et recherche */
.tax-product_cat #main,
.page #main,
.single-post #main,
.search #main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* Encadrement gris complet du menu */
#menu-menu-principal {
  position: relative;
}

/* Ligne du haut */
#menu-menu-principal::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  right: 0;
  height: 1px;
  background-color: #ccc;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
}

/* Ligne du bas */
#menu-menu-principal::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 1px;
  background-color: #ccc;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
}
/* Bloc global des upsells */
.breard-upsells {
  margin: 10px 0;          /* marge externe réduite */
  padding: 10px 12px;      /* padding interne réduit */
  border: 1px solid #eee;
  background: #fafafa;
  border-radius: 6px;
}

/* Label du bloc (titre en italique) */
.breard-upsells-label {
  display: block;
  font-size: 15px;
  font-style: italic;
  font-weight: 400;
  margin: 30px 0 10px;   /* ↑ espace avant, ↓ espace après */
  color: #333;
}
/* Image principale WooCommerce et images de galerie swappées */
.single-product .woocommerce-product-gallery__image img {
  width: 100% !important;
  height: 500px !important;        /* fixe la hauteur */
  object-fit: contain !important;  /* conserve le ratio, sans rognage */
  background: #fff;                /* fond neutre si bandes */
  padding: 0px !important;                    /* petit espace autour */
  box-sizing: border-box;
}
/* Grille des options */
.breard-upsells-grid {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  justify-content: flex-start;
}

/* Chaque option upsell produit dans la fiche produit */
.breard-upsell-item {
  text-align: center;
  flex: 1 1 110px;
  max-width: 140px;
  border: 1px solid #ddd;
  background: #fff;
  padding: 8px;
  border-radius: 4px;
  transition: all .2s ease;
}
.breard-upsell-item:hover {
  box-shadow: 0 2px 6px rgba(0,0,0,0.08);
}

/* Miniature */
.breard-upsell-item img {
  max-width: 65px;
  margin: 0 auto 6px;
  display: block;
}

/* Titre du produit */
.breard-upsell-title {
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 3px;
	margin-top:30px;
}

/* Prix */
.breard-upsell-price {
  font-size: 12px;
  color: #444;
  margin-bottom: 5px;
}

/* Bouton "Ajouter au panier" */
.breard-upsell-item .button {
  font-size: 11px;
  padding: 5px 9px;
  line-height: 1.2;
  background: #00b285; 
  color: #fff;
  border-radius: 3px;
  border: none;
  transition: background .2s ease;
}
.breard-upsell-item .button:hover {
  background: #008060;   /* vert foncé hover */
}
/* Modal Avada : vidéo centrée avec cadre blanc et croix intégrée */
.fusion-modal .modal-dialog {
  max-width: unset;
  margin: 10px auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
/*enlever deposez votre fichier*/
.ppom-dragdrop-text {
  display: none !important;
}
/* Boutons & selects PPOM avec léger arrondi et padding */
.ppom-input.select,
.ppom-input.form-select,
select.ppom-input,
.ppom-file-input-wrapper input[type="file"]::file-selector-button {
  border-radius: 4px !important;   /* coins légèrement arrondis */
  padding: 8px 14px !important;    /* espace interne haut/bas + gauche/droite */
}
/* Même largeur pour les boutons Avada gabarit & vidéo */
a.fusion-button.btn-gabarit,
a.fusion-button.btn-video {
  display: inline-flex !important;
  justify-content: center;
  align-items: center;
  min-width: 240px;   /* ajuste la largeur identique */
  text-align: center;
  box-sizing: border-box;
}
/* Encadrer toutes les miniatures avec bordure collée */
.single-product .flex-control-thumbs img {
  border: 1px solid #ddd;         /* fine bordure grise collée */
  box-sizing: border-box;
  display: block;
  margin: 0;
  padding: 0;                     /* pas d’espace interne */
}

/* Bordure verte au hover */
.single-product .flex-control-thumbs img:hover {
  border-color: #008060;
}

/* Bordure verte sur la miniature active (celle affichée en grand) */
.single-product .flex-control-thumbs .slick-current img,
.single-product .flex-control-thumbs li.flex-active img {
  border-color: #008060 !important;
}


.woocommerce-variation-price {
  display: none !important;
}

/*.ppom-slider-container {
    display: none !important;
}
*/
/* Forcer l'icône (caret) du select Avada en noir */
.avada-select-parent:after,
.avada-select-parent:hover:after,
.avada-select-parent:focus:after {
  color: #000 !important;
}
/* Texte affiché dans le bouton select Avada */
.avada-select-parent select {
  font-family: "Messina Regular", Arial, sans-serif;
  font-size: 15px;
  font-weight: 400;
  color: #000;
}

/* Texte dans la liste déroulante (les <option>) */
.avada-select-parent select option {
  font-family: "Messina Regular", Arial, sans-serif;
  font-size: 15px;
  font-weight: 400;
  color: #000;
}
/* ============================
   Bouton & message devis
   ============================ */
/* Bouton devis */
.devis-btn {
  display: none; /* caché par défaut */
  margin-top: 12px;
  background: #FE279D !important; /* fuchsia Bréard */
  color: #fff !important;
  border: none !important;
  font-weight: bold;
  padding: 10px 18px;
  border-radius: 6px;
  transition: all 0.3s ease;
  text-align: center;
}

/* Effet hover bouton */
.devis-btn:hover {
  background: #e0218a !important; /* fuchsia légèrement plus foncé au survol */
  color: #fff !important;
}

/* Message devis */
.devis-msg {
  display: none; /* caché par défaut */
  margin-top: 10px;
  color: #FE279D;
  font-weight: bold;
  font-size: 14px;
}
/*ne pas afficher nom image carroussel*/
.awb-imageframe-caption-text {
  display: none !important;
}

/* Style hover pour les boutons fushia Bréard */
.btn-fushia {
  --button_accent_hover_color: #00B285 !important;
  --button_border_hover_color: #00B285 !important;
}
/*ne pas afficher filtres sur les pages de sous catégories*/
.catalog-ordering{
  display: none !important;
}
#main.clearfix {
  margin-top: 0px !important;
}
/*css prix à partir de*/
.prix-apartir {
  font-size: 25px !important;
  font-weight: bold !important;
  color: #000;
  margin: 10px 0;
}
/*css dispo location*/
.encart-location {
  border: 1px solid #ddd;
  padding: 20px;
  margin: 20px auto;
  background: #f2f2f2;   /* gris clair */
  border-radius: 6px;
  max-width: 400px;
  text-align: center !important;  /* force le centrage */
}

.encart-location * {
  text-align: center !important;  /* force sur tous les éléments enfants */
  margin-left: auto;
  margin-right: auto;
}
 
.encart-location .titre {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 8px;
  color: #000;
}

.encart-location .prix {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 12px;
  color: #333;
}

.encart-location .lien-contact {
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
  display: inline-block;
  transition: color 0.3s ease;
}

.encart-location .lien-contact:hover {
  color: #00B285; /* vert uniquement au hover */
}

/* Masquer complètement le bloc si jamais il est vide */
.encart-location:empty {
  display: none !important;
}
/* ===== TABLEAU PRIX DÉGRESSIFS PPOM ===== */
/* Style du conteneur global de la matrice de prix */
.form-group.ppom-input-quantite {
  padding-bottom: 30px;  /* espace en dessous */
}
/* Ajoute un padding en bas à tous les blocs de champ PPOM */
.form-group[class*="ppom-input-"] {
  padding-bottom: 20px;  /* ajustez la valeur selon le rendu désiré */
}
/* Style global du tableau récapitulatif */
.table.table-striped {
  width: 100%;
  border: 1px solid #ddd;        /* bordure autour du tableau */
  border-collapse: separate;     /* garde chaque cellule encadrée */
  border-spacing: 0;             /* évite les espaces parasites */
  border-radius: 6px;            /* coins arrondis */
  overflow: hidden;              /* masque débordements des coins arrondis */
  font-size: 15px;
  background: #fff;
}

/* Cellules */
.table.table-striped td,
.table.table-striped th {
  padding: 14px 16px;            /* plus d’espace haut/bas */
  border: 1px solid #ddd;        /* chaque cellule encadrée */
  vertical-align: middle;        /* contenu centré verticalement */
}

/* En-têtes */
.table.table-striped th {
  background: #f4f4f4;           /* fond gris clair */
  font-weight: 600;
  color: #333;
  text-transform: uppercase;
  font-size: 14px;
}

/* Dernière ligne (totaux) mise en valeur */
.table.table-striped tr:last-child td {
  font-weight: 700;
  background: #f9f9f9;
}
.fee {
  display: none;
}
/* Met en gras uniquement le prix total dans le tableau récapitulatif */
/* Forcer le prix du TOTAL en noir */
.fusion-woo-cart-totals-wrapper .order-total .woocommerce-Price-amount.amount {
  color: #000 !important;   /* noir pur */
  font-weight: 700;         /* gras (garde la mise en avant) */
  font-size: 20px;          /* optionnel : cohérent avec votre base */
}
.order-total th {
  font-weight: bold !important;
  text-transform: uppercase !important;
  font-size: 20px !important;   
}
.order-total td strong span bdi {
  font-weight: bold;
  color: #000;      /* optionnel : noir pur */
  font-size: 18px;  /* optionnel : le rendre plus visible */
}
/* Masquer sous-total uniquement sur la page panier */
.woocommerce-cart .cart-subtotal {
  display: none !important;
}

/* Style des placeholders */
/* Placeholders gris italique */
.form-devis input::placeholder,
.form-devis textarea::placeholder {
  color: #999 !important;
  font-style: italic !important;
  opacity: 1 !important;
}

/* Compatibilité navigateurs */
.form-devis input::-webkit-input-placeholder,
.form-devis textarea::-webkit-input-placeholder {
  color: #999 !important;
  font-style: italic !important;
}
.form-devis input::-moz-placeholder,
.form-devis textarea::-moz-placeholder {
  color: #999 !important;
  font-style: italic !important;
}
.form-devis input:-ms-input-placeholder,
.form-devis textarea:-ms-input-placeholder {
  color: #999 !important;
  font-style: italic !important;
}
.form-devis input::-ms-input-placeholder,
.form-devis textarea::-ms-input-placeholder {
  color: #999 !important;
  font-style: italic !important;
}

/* Variante premium : placeholder disparaît au focus */
.form-devis input:focus::placeholder,
.form-devis textarea:focus::placeholder {
  color: transparent !important;
}
/* Disposition en 2 colonnes pour certains champs */
.form-devis .form-row {
  display: flex;
  gap: 20px;
  flex-wrap: wrap; /* repasse en colonne sur mobile */
  margin-bottom: 12px;
}

.form-devis .form-col {
  flex: 1;
  min-width: 220px; /* largeur mini pour ne pas casser en mobile */
}

.form-devis .form-col label {
  display: block;
  margin-bottom: 4px;
  color: #333;
}
/* Lignes en 2 colonnes */
.form-devis .form-row {
  display: flex;
  gap: 20px;
  flex-wrap: wrap; /* repasse en 1 colonne sur mobile */
  margin-bottom: 12px;
}

.form-devis .form-col {
  flex: 1;
  min-width: 220px;
}

/* Style du champ fichier */
.form-devis input[type="file"] {
  font-size: 14px;
  color: #333;
}

/* Bouton natif "Choisir un fichier" */
.form-devis input[type="file"]::file-selector-button {
  background: #f2f2f2;   /* gris clair */
  color: #333;
  font-size: 14px;
  font-weight: 500;
  padding: 6px 14px;
  border: 1px solid #ccc;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s ease;
}

/* Hover */
.form-devis input[type="file"]::file-selector-button:hover {
  background: #e6e6e6;   /* gris plus foncé au survol */
}
/* Quand le formulaire est envoyé, cacher uniquement les champs */
.wpcf7-form.sent .form-row,
.wpcf7-form.sent .form-group,
.wpcf7-form.sent .form-info,
.wpcf7-form.sent .form-submit {
  display: none !important;
}

/* Garder visible le message de confirmation */
.wpcf7-response-output {
  margin-top: 20px;
  border: 2px solid #FE279D !important;  /* bordure rose Bréard */
  background: #fff !important;           /* fond blanc */
  color: #333 !important;                /* texte sobre */
  border-radius: 6px;
  padding: 20px;
  font-size: 16px;
  text-align: center;
  font-weight: 500;
}

/* Supprimer icône et bouton Avada */
.wpcf7-response-output .alert-icon,
.wpcf7-response-output .close {
  display: none !important;
}
/* Bouton "Prendre RDV" */
/* Harmoniser le bouton Prendre RDV avec Prix sur devis */
.breard-rdv-btn {
  margin-top: 15px; /* espace entre Prix sur devis et Prendre RDV */
}

.breard-rdv-btn a {
  display: inline-block;
  background-color: #FE279D;
  color: #fff !important;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 18px;
  padding: 10px 20px;
  text-align: center;
  border-radius: 0;
  border: none;
  text-decoration: none;
  line-height: 1.2;
  transition: background-color 0.3s ease;
  box-shadow: none;
  min-width: 200px;
}

.breard-rdv-btn a:hover {
  background-color: #d81f85;
}
/* Formulaire RDV en 2 colonnes */
/* Organisation en deux colonnes pour le formulaire RDV */
.rdv-form-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px; /* espace entre colonnes */
  margin-bottom: 15px;
}

.rdv-form-col {
  flex: 1;
  min-width: 200px; /* évite de trop écraser sur mobile */
}

.rdv-form-col label {
  display: block;
  margin-bottom: 5px;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 select,
.wpcf7 textarea {
  width: 100%;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 4px;
  box-sizing: border-box;
}
/* Style des placeholders pour le formulaire RDV */
/* Style des placeholders RDV */
/* Placeholders gris italique */
.placeholder-rdv input::placeholder,
.placeholder-rdv textarea::placeholder {
  color: #999 !important;
  font-style: italic !important;
  opacity: 1 !important;
}

/* Compatibilité navigateurs */
.placeholder-rdv input::-webkit-input-placeholder,
.placeholder-rdv textarea::-webkit-input-placeholder {
  color: #999 !important;
  font-style: italic !important;
}
.placeholder-rdv input::-moz-placeholder,
.placeholder-rdv textarea::-moz-placeholder {
  color: #999 !important;
  font-style: italic !important;
}
.placeholder-rdv input:-ms-input-placeholder,
.placeholder-rdv textarea:-ms-input-placeholder {
  color: #999 !important;
  font-style: italic !important;
}
.placeholder-rdv input::-ms-input-placeholder,
.placeholder-rdv textarea::-ms-input-placeholder {
  color: #999 !important;
  font-style: italic !important;
}

/* Variante premium : placeholder disparaît au focus */
.placeholder-rdv input:focus::placeholder,
.placeholder-rdv textarea:focus::placeholder {
  color: transparent !important;
}
/* Quand le formulaire RDV est envoyé, cacher uniquement les champs */
/* Quand le formulaire RDV est envoyé, cacher uniquement les champs */
.wpcf7-form.placeholder-rdv.sent .form-row,
.wpcf7-form.placeholder-rdv.sent .rdv-form-row,
.wpcf7-form.placeholder-rdv.sent .form-group,
.wpcf7-form.placeholder-rdv.sent .form-info,
.wpcf7-form.placeholder-rdv.sent .form-submit,
.wpcf7-form.placeholder-rdv.sent p:not(.wpcf7-response-output) {
  display: none !important;
}

/* Garde visible le message de confirmation (fusion-alert d’Avada) */
.wpcf7-form.placeholder-rdv .fusion-alert.wpcf7-response-output {
  margin-top: 20px;
  border: 2px solid #FE279D !important;  /* bordure rose Bréard */
  background: #fff !important;           /* fond blanc */
  color: #333 !important;                /* texte sobre */
  border-radius: 6px;
  padding: 20px;
  font-size: 16px;
  text-align: center;
  font-weight: 500;
  box-shadow: none !important;
}

/* Supprimer icône et bouton Avada */
.wpcf7-form.placeholder-rdv .fusion-alert.wpcf7-response-output .alert-icon,
.wpcf7-form.placeholder-rdv .fusion-alert.wpcf7-response-output .close {
  display: none !important;
}
/* ===== STYLE PERSONNALISÉ DES CASES À COCHER ===== */
/* ===== BLOC GLOBAL ===== */
.bloc-rdv {
  text-align: center;
  margin-bottom: 25px;
}

.bloc-rdv h3 {
  font-size: 30px !important;
  margin-bottom: 40px !important;
}

/* ===== CONTENEUR FLEX ===== */
.choix-type-rdv {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

/* Cache les radios natifs */
.choix-type-rdv input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* Style visuel des boutons */
.choix-type-rdv label {
  display: inline-block;
  background: #f5f5f5;
  border: 2px solid #00B285;
  color: #111;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 14px 32px;
  border-radius: 8px;
  cursor: pointer;
  min-width: 180px;
  text-align: center;
  transition: all 0.25s ease;
  user-select: none;
}

/* ===== VERSION MODERNE (navigateurs récents) ===== */
/* Colorie le label contenant un input coché */
.choix-type-rdv label:has(input[type="radio"]:checked) {
  background: #00B285;
  color: #fff;
  border-color: #00B285;
  box-shadow: 0 0 6px rgba(0,178,133,0.4);
  transform: scale(1.05);
}

/* ===== FALLBACK (navigateurs sans :has) ===== */
/* Contact Form 7 entoure les inputs dans des spans */
.choix-type-rdv span.wpcf7-list-item {
  display: inline-block;
}

.choix-type-rdv span.wpcf7-list-item input[type="radio"]:checked + span.wpcf7-list-item-label {
  background: #00B285;
  color: #fff;
  border-color: #00B285;
  box-shadow: 0 0 6px rgba(0,178,133,0.4);
  transform: scale(1.05);
}

/* ===== HOVER ===== */
.choix-type-rdv label:hover,
.choix-type-rdv span.wpcf7-list-item-label:hover {
  background: #00d49c;
  color: #fff;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 600px) {
  .choix-type-rdv {
    flex-direction: column;
    align-items: center;
  }
  .choix-type-rdv label,
  .choix-type-rdv span.wpcf7-list-item-label {
    width: 80%;
  }
}
/* ===== STYLE DU BOUTON ENVOYER (classe .btn-rdv) ===== */
.btn-rdv {
  display: inline-block !important;
  background: #00B285 !important;       /* Vert Bréard par défaut */
  border: 2px solid #00B285 !important; /* Bordure assortie */
  color: #fff !important;               /* Texte blanc */
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  padding: 14px 32px !important;
  border-radius: 8px !important;        /* Même radius que tes radios */
  cursor: pointer !important;
  text-align: center !important;
  min-width: 180px !important;
  transition: all 0.25s ease-in-out !important;
  user-select: none !important;
  margin-top: 10px !important;
}

/* ===== HOVER : vert plus foncé ===== */
.btn-rdv:hover {
  background: #00976d !important;       /* Vert plus foncé au survol */
  border-color: #00976d !important;
  transform: scale(1.03) !important;    /* Effet de survol fluide */
}

/* ===== FOCUS / ACTIF : effet de pression ===== */
.btn-rdv:active,
.btn-rdv:focus {
  background: #00855f !important;       /* Encore plus foncé au clic */
  border-color: #00855f !important;
  transform: scale(0.98) !important;    /* Effet d’enfoncement */
  outline: none !important;
}

/* ===== CENTRAGE DANS LE FORMULAIRE ===== */
.wpcf7 form p:last-of-type {
  text-align: center !important;
}
/* ===== antibot pour les formulaires ===== */

.cf7-anti-bot {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* === Zone quantité + bouton panier === */
/* ==========================================================================
   ZONE : Quantité + Bouton Ajouter au Panier
   Objectif : bloc propre, lisible, quantity modifiable, aucun flash blanc
   ========================================================================== */

/* Conteneur global du bloc quantité + bouton panier */
.fusion-woo-cart-1 .fusion-button-wrapper {
  display: flex;
  flex-direction: row;         /* quantité et bouton côte à côte */
  align-items: center;
  justify-content: center;
  gap: 15px;                   /* espace entre quantité et bouton panier */
  flex-wrap: wrap;             /* passe en colonne si écran étroit */
}

/* === ENCART GLOBAL QUANTITÉ (un seul bloc autour de "- 1 +") === */
.fusion-woo-cart-1 .quantity {
  display: flex;
  align-items: center;
  justify-content: center;

  /* Fond + encadrement global */
  background: #f2f2f2 !important;
  border: 2px solid #d4d4d4 !important;   /* <<< ton encadrement global */
  border-radius: 6px !important;

  /* Hauteur fixe et suppression des espaces internes */
  height: 48px;
  padding: 0 !important;
  gap: 0 !important;
  box-sizing: border-box;
  overflow: hidden;              /* arrondis propres, rien qui dépasse */
}

/* === Champ QUANTITÉ (modifiable, indispensable pour recalcul PPOM) === */
.fusion-woo-cart-1 .quantity input.qty {
  width: 56px !important;        /* lisible mais compact */
  height: 100% !important;
  background: #fff !important;   /* contraste au centre */
  border: 1px solid #bfbfbf;         /* <<< BORDURE FINE UNIQUE */
  outline: none !important;
  text-align: center !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #000 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  pointer-events: auto !important; /* <<< permet la saisie → calc dynamique OK */
}

/* === Boutons "-" et "+" === */
.fusion-woo-cart-1 .quantity .minus,
.fusion-woo-cart-1 .quantity .plus {
  width: 44px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;

  background: #e6e6e6 !important; /* gris neutre */
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;

  cursor: pointer;
  font-size: 19px !important;
  font-weight: 600 !important;
  color: #000 !important;

  box-shadow: none !important;
  transition: background 0.15s ease, color 0.15s ease;
}

/* Hover maîtrisé (pas de flash blanc) */
.fusion-woo-cart-1 .quantity .minus:hover,
.fusion-woo-cart-1 .quantity .plus:hover {
  background: #d0d0d0 !important;
  color: #000 !important;
}

/* === Bouton AJOUTER AU PANIER === */
.fusion-woo-cart-1 .single_add_to_cart_button {
  flex: 1;                       /* prend l'espace restant */
  min-width: 180px;
  max-width: 260px;
  height: 48px;                  /* même hauteur que le bloc quantité */
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  white-space: nowrap;
}

/* === Responsive Mobile === */
@media (max-width: 768px) {
  .fusion-woo-cart-1 .fusion-button-wrapper {
    flex-direction: column;
    align-items: center;
  }

  .fusion-woo-cart-1 .single_add_to_cart_button,
  .fusion-woo-cart-1 .quantity {
    width: 100%;
    max-width: 260px;
  }
}
/* Bouton devis PDF — sous la ligne, aligné à droite, sans arrondi */
.btn-devis-pdf {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  height: 44px !important;
  padding: 0 22px !important;

  background: #FE279D !important;
  color: #fff !important;
  font-weight: 600 !important;

  border-radius: 0 !important;           /* plus aucun arrondi */
  text-decoration: none !important;

  /* Placement */
  margin-top: 15px !important;
  margin-right: 5px !important;          /* ←décale à droite manuellement */
  margin-left: auto !important;
  float: none !important;
}

/* Icône PDF */
.btn-devis-pdf:before {
  content: "\f1c1";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 14px;
  margin-right: 6px;
}

/* Survol */
.btn-devis-pdf:hover {
  background: #d6006d !important;
  color: #fff !important;
}
.fusion-header-wrapper .fusion-column-wrapper {
  background: transparent !important;
  box-shadow: none !important;
  min-height: auto !important;
  height: auto !important;
  overflow: visible !important;
}
/* === Forcer "À partir de X € HT" sur UNE SEULE LIGNE === */

.prix-apartir,
.prix-apartir p,
.prix-apartir span,
.prix-apartir .woocommerce-Price-amount,
.prix-apartir .woocommerce-Price-currencySymbol,
.prix-apartir small,
.prix-apartir bdi {
    display: inline !important;
    white-space: nowrap !important;
    line-height: 1.2 !important;
    vertical-align: middle !important;
}

/* Supprime les marges parasites */
.prix-apartir,
.prix-apartir p {
    margin: 0 !important;
    padding: 0 !important;
}

/*txt nous avons aime travailler*/
/* Le titre peut flotter en dehors de son bloc */
.texte-encadre .fusion-title {
  position: relative !important;
  overflow: visible !important;
  z-index: 10 !important; /* Base de superposition */
}

/* Positionnement du titre encadré */
.texte-encadre .fusion-title-heading {
  display: inline-block !important;
  background-color: #000 !important;
  color: #fff !important;
  border: 2px solid #FE279D !important;
  padding: 5px 25px 8px 25px !important;
  line-height: 1.4 !important;
  text-align: center !important;

  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;

  top: 35px !important; /* Chevauchement vers le BAS */
  z-index: 999 !important; /* Passe devant */
}

/* On remet le carrousel en dessous du titre */
.fusion-carousel {
  position: relative !important;
  z-index: 1 !important;
  overflow: visible !important;
}
/* Pas de chevauchement sur mobile : titre au-dessus, espacement contrôlé */
@media (max-width: 768px) {

  /* Conteneur du titre */
  .texte-encadre .fusion-title {
    position: static !important;
    overflow: visible !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
	}}
/* legende carou Contexte : on autorise le chevauchement */
/* On autorise le chevauchement sur les images du carrousel ciblé */
.carrousel-legende .fusion-image-wrapper,
.carrousel-legende .fusion-imageframe,
.carrousel-legende .awb-imageframe-caption {
  position: relative !important;
  overflow: visible !important;
  z-index: 5 !important;
}

/* On chevauche TOUTES les légendes présentes dans ce carrousel */
.carrousel-legende .awb-imageframe-caption-title {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  transform: none !important;

  bottom: 45px !important; /* Ajustez ici la hauteur de chevauchement */

  width: 100% !important;          /* prend toute la largeur */
  text-align: center !important;   /* centre le texte */
  padding: 10px 15px !important;   /* espace interne propre */

background: rgba(255, 255, 255, 0.9) !important;
  color: #000 !important;           /* texte noir */
  border: none !important;
  border-radius: 0 !important;      /* fond en bande propre */
  display: block !important;

  z-index: 99 !important;
}
/* Pas de chevauchement sur mobile */
@media (max-width: 768px) {

  /* Le conteneur redevient dans le flux normal */
  .carrousel-legende .fusion-image-wrapper,
  .carrousel-legende .fusion-imageframe,
  .carrousel-legende .awb-imageframe-caption {
    position: static !important;
    overflow: visible !important;
    z-index: auto !important;
  }

  /* La légende redevient un bloc standard */
  .carrousel-legende .awb-imageframe-caption-title {
    position: static !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;

    width: 100% !important;
    text-align: center !important;
    padding: 10px 15px !important;

    background: rgba(255,255,255,0.85) !important; /* lisible, sobre */
    color: #000 !important;
    border: none !important;
    border-radius: 0 !important;

    display: block !important;
    z-index: auto !important;
    margin-top: 8px !important; /* légère respiration avec le visuel */
  }
}
/*bullets carou*/
/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/
.fusion-button.devis-btn {
  display: none;
}
/* ombrage sous menu */
.post-content {
  position: relative;
  padding-top: 50px; /* espace pour laisser passer l’ombre + marge */
}

.post-content::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 40px;  /* hauteur de l’ombre */
  pointer-events: none;
  background: linear-gradient(
    to bottom,
    #f2f2f2 0%,
    rgba(242,242,242,0.8) 35%,
    rgba(242,242,242,0) 100%
  );
  z-index: 1;
}

.fusion-button.underline-anim-btn {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

.fusion-button.underline-anim-btn .fusion-button-text {
  position: relative;
  display: inline-block;
  padding: 0 !important;
  line-height: 1.2;
}

.fusion-button.underline-anim-btn .fusion-button-text::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;            /* ajustez à -2px si vous voulez l’abaisser */
  width: 0;
  height: 2px;
  background: #FE279D;  /* couleur du soulignement */
  transition: width 0.35s ease;
}

.fusion-button.underline-anim-btn:hover .fusion-button-text::after {
  width: 100%;
}

.underline-anim {
  position: relative;
  display: inline-block;
  text-decoration: none;
  color: inherit;
}

.underline-anim::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;             /* si trop collé, remplacez par -2px */
  width: 0;
  height: 4px;
  background: #FE279D;   /* couleur du soulignement */
  transition: width 0.35s ease;
}

.underline-anim:hover::after {
  width: 100%;
}
/* 4) Au survol, la ligne s’étend sur la largeur du mot */
.fusion-button.underline-anim-btn:hover .fusion-button-text::after {
  width: 100%;
}
  /* fond gris sur texte */
.fond-gris {
  background-color: #f2f2f2;   /* gris clair */
  font-weight: bold;
  text-align: center;
  padding: 8px 10px;           /* même espace haut/bas */
  margin-top: 25px !important; /* espace avant le bandeau */
  margin-bottom: 40px;         /* espace après le bandeau */
  font-size: 18px;
  display: flex;               /* active flexbox */
  align-items: center;         /* centre verticalement */
  justify-content: center;     /* centre horizontalement */
  height: 40px;                /* hauteur fixe du bandeau */
}

.fond-gris p {
  margin: 0 !important;
  line-height: 1 !important;   /* supprime les décalages verticaux */
}

  /* encadre fushia duo */
.partenaire {
  border: 2px solid #FE279D; /* encadré fuchsia */
  color: #000;               /* texte noir (modifie si besoin) */
  font-weight: bold;         /* texte en gras */
  padding: 8px 15px;         /* espace intérieur autour du texte */
  display: inline-block;     /* pour que le cadre s’ajuste au texte */
  border-radius: 6px;        /* coins arrondis (facultatif) */
}
  /* espace entre img et vignettes fiche produit*/
.single-product .avada-product-gallery-thumbs-wrapper {
  margin-top: 60px !important; /* espace entre la grande image et les miniatures */
}
  /* enlever fleches image produit*/
.single-product .flex-direction-nav {
  display: none !important;
}
/* Forcer les prix WooCommerce en noir */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce-Price-amount,
.woocommerce-Price-currencySymbol {
  color: #000 !important; /* noir */
}
/* Enlever l’italique sur les titres produits WooCommerce */
.woocommerce ul.products li.product h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-style: normal !important;
}
#ppom-total-display {
    font-size: 16px;
    font-weight: 600;
    margin-top: 5px;
    color: #333; /* sobre, lisible */
}
#ppom-total-display .ppom-total-label {
    font-weight: 400;
    color: #555;
}

/*marge du dessus */
/* Supprime l’espace en haut du main sur catégories, pages, articles et recherche */
.tax-product_cat #main,
.page #main,
.single-post #main,
.search #main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* Encadrement gris complet du menu */
#menu-menu-principal {
  position: relative;
}

/* Ligne du haut */
#menu-menu-principal::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  right: 0;
  height: 1px;
  background-color: #ccc;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
}

/* Ligne du bas */
#menu-menu-principal::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 1px;
  background-color: #ccc;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
}
/* Bloc global des upsells */
.breard-upsells {
  margin: 10px 0;          /* marge externe réduite */
  padding: 10px 12px;      /* padding interne réduit */
  border: 1px solid #eee;
  background: #fafafa;
  border-radius: 6px;
}

/* Label du bloc (titre en italique) */
.breard-upsells-label {
  display: block;
  font-size: 15px;
  font-style: italic;
  font-weight: 400;
  margin: 30px 0 10px;   /* ↑ espace avant, ↓ espace après */
  color: #333;
}
/* Image principale WooCommerce et images de galerie swappées */
.single-product .woocommerce-product-gallery__image img {
  width: 100% !important;
  height: 500px !important;        /* fixe la hauteur */
  object-fit: contain !important;  /* conserve le ratio, sans rognage */
  background: #fff;                /* fond neutre si bandes */
  padding: 0px !important;                    /* petit espace autour */
  box-sizing: border-box;
}
/* Grille des options */
.breard-upsells-grid {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  justify-content: flex-start;
}

/* Chaque option upsell produit dans la fiche produit */
.breard-upsell-item {
  text-align: center;
  flex: 1 1 110px;
  max-width: 140px;
  border: 1px solid #ddd;
  background: #fff;
  padding: 8px;
  border-radius: 4px;
  transition: all .2s ease;
}
.breard-upsell-item:hover {
  box-shadow: 0 2px 6px rgba(0,0,0,0.08);
}

/* Miniature */
.breard-upsell-item img {
  max-width: 65px;
  margin: 0 auto 6px;
  display: block;
}

/* Titre du produit */
.breard-upsell-title {
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 3px;
	margin-top:30px;
}

/* Prix */
.breard-upsell-price {
  font-size: 12px;
  color: #444;
  margin-bottom: 5px;
}

/* Bouton "Ajouter au panier" */
.breard-upsell-item .button {
  font-size: 11px;
  padding: 5px 9px;
  line-height: 1.2;
  background: #00b285; 
  color: #fff;
  border-radius: 3px;
  border: none;
  transition: background .2s ease;
}
.breard-upsell-item .button:hover {
  background: #008060;   /* vert foncé hover */
}
/* Modal Avada : vidéo centrée avec cadre blanc et croix intégrée */
.fusion-modal .modal-dialog {
  max-width: unset;
  margin: 10px auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
/*enlever deposez votre fichier*/
.ppom-dragdrop-text {
  display: none !important;
}
/* Boutons & selects PPOM avec léger arrondi et padding */
.ppom-input.select,
.ppom-input.form-select,
select.ppom-input,
.ppom-file-input-wrapper input[type="file"]::file-selector-button {
  border-radius: 4px !important;   /* coins légèrement arrondis */
  padding: 8px 14px !important;    /* espace interne haut/bas + gauche/droite */
}
/* Même largeur pour les boutons Avada gabarit & vidéo */
a.fusion-button.btn-gabarit,
a.fusion-button.btn-video {
  display: inline-flex !important;
  justify-content: center;
  align-items: center;
  min-width: 240px;   /* ajuste la largeur identique */
  text-align: center;
  box-sizing: border-box;
}
/* Encadrer toutes les miniatures avec bordure collée */
.single-product .flex-control-thumbs img {
  border: 1px solid #ddd;         /* fine bordure grise collée */
  box-sizing: border-box;
  display: block;
  margin: 0;
  padding: 0;                     /* pas d’espace interne */
}

/* Bordure verte au hover */
.single-product .flex-control-thumbs img:hover {
  border-color: #008060;
}

/* Bordure verte sur la miniature active (celle affichée en grand) */
.single-product .flex-control-thumbs .slick-current img,
.single-product .flex-control-thumbs li.flex-active img {
  border-color: #008060 !important;
}


.woocommerce-variation-price {
  display: none !important;
}

/*.ppom-slider-container {
    display: none !important;
}
*/
/* Forcer l'icône (caret) du select Avada en noir */
.avada-select-parent:after,
.avada-select-parent:hover:after,
.avada-select-parent:focus:after {
  color: #000 !important;
}
/* Texte affiché dans le bouton select Avada */
.avada-select-parent select {
  font-family: "Messina Regular", Arial, sans-serif;
  font-size: 15px;
  font-weight: 400;
  color: #000;
}

/* Texte dans la liste déroulante (les <option>) */
.avada-select-parent select option {
  font-family: "Messina Regular", Arial, sans-serif;
  font-size: 15px;
  font-weight: 400;
  color: #000;
}
/* ============================
   Bouton & message devis
   ============================ */
/* Bouton devis */
.devis-btn {
  display: none; /* caché par défaut */
  margin-top: 12px;
  background: #FE279D !important; /* fuchsia Bréard */
  color: #fff !important;
  border: none !important;
  font-weight: bold;
  padding: 10px 18px;
  border-radius: 6px;
  transition: all 0.3s ease;
  text-align: center;
}

/* Effet hover bouton */
.devis-btn:hover {
  background: #e0218a !important; /* fuchsia légèrement plus foncé au survol */
  color: #fff !important;
}

/* Message devis */
.devis-msg {
  display: none; /* caché par défaut */
  margin-top: 10px;
  color: #FE279D;
  font-weight: bold;
  font-size: 14px;
}
/*ne pas afficher nom image carroussel*/
.awb-imageframe-caption-text {
  display: none !important;
}

/* Style hover pour les boutons fushia Bréard */
.btn-fushia {
  --button_accent_hover_color: #00B285 !important;
  --button_border_hover_color: #00B285 !important;
}
/*ne pas afficher filtres sur les pages de sous catégories*/
.catalog-ordering{
  display: none !important;
}
#main.clearfix {
  margin-top: 0px !important;
}
/*css prix à partir de*/
.prix-apartir {
  font-size: 25px !important;
  font-weight: bold !important;
  color: #000;
  margin: 10px 0;
}
/*css dispo location*/
.encart-location {
  border: 1px solid #ddd;
  padding: 20px;
  margin: 20px auto;
  background: #f2f2f2;   /* gris clair */
  border-radius: 6px;
  max-width: 400px;
  text-align: center !important;  /* force le centrage */
}

.encart-location * {
  text-align: center !important;  /* force sur tous les éléments enfants */
  margin-left: auto;
  margin-right: auto;
}
 
.encart-location .titre {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 8px;
  color: #000;
}

.encart-location .prix {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 12px;
  color: #333;
}

.encart-location .lien-contact {
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
  display: inline-block;
  transition: color 0.3s ease;
}

.encart-location .lien-contact:hover {
  color: #00B285; /* vert uniquement au hover */
}

/* Masquer complètement le bloc si jamais il est vide */
.encart-location:empty {
  display: none !important;
}
/* ===== TABLEAU PRIX DÉGRESSIFS PPOM ===== */
/* Style du conteneur global de la matrice de prix */
.form-group.ppom-input-quantite {
  padding-bottom: 30px;  /* espace en dessous */
}
/* Ajoute un padding en bas à tous les blocs de champ PPOM */
.form-group[class*="ppom-input-"] {
  padding-bottom: 20px;  /* ajustez la valeur selon le rendu désiré */
}
/* Style global du tableau récapitulatif */
.table.table-striped {
  width: 100%;
  border: 1px solid #ddd;        /* bordure autour du tableau */
  border-collapse: separate;     /* garde chaque cellule encadrée */
  border-spacing: 0;             /* évite les espaces parasites */
  border-radius: 6px;            /* coins arrondis */
  overflow: hidden;              /* masque débordements des coins arrondis */
  font-size: 15px;
  background: #fff;
}

/* Cellules */
.table.table-striped td,
.table.table-striped th {
  padding: 14px 16px;            /* plus d’espace haut/bas */
  border: 1px solid #ddd;        /* chaque cellule encadrée */
  vertical-align: middle;        /* contenu centré verticalement */
}

/* En-têtes */
.table.table-striped th {
  background: #f4f4f4;           /* fond gris clair */
  font-weight: 600;
  color: #333;
  text-transform: uppercase;
  font-size: 14px;
}

/* Dernière ligne (totaux) mise en valeur */
.table.table-striped tr:last-child td {
  font-weight: 700;
  background: #f9f9f9;
}
.fee {
  display: none;
}
/* Met en gras uniquement le prix total dans le tableau récapitulatif */
/* Forcer le prix du TOTAL en noir */
.fusion-woo-cart-totals-wrapper .order-total .woocommerce-Price-amount.amount {
  color: #000 !important;   /* noir pur */
  font-weight: 700;         /* gras (garde la mise en avant) */
  font-size: 20px;          /* optionnel : cohérent avec votre base */
}
.order-total th {
  font-weight: bold !important;
  text-transform: uppercase !important;
  font-size: 20px !important;   
}
.order-total td strong span bdi {
  font-weight: bold;
  color: #000;      /* optionnel : noir pur */
  font-size: 18px;  /* optionnel : le rendre plus visible */
}
/* Masquer sous-total uniquement sur la page panier */
.woocommerce-cart .cart-subtotal {
  display: none !important;
}

/* Style des placeholders */
/* Placeholders gris italique */
.form-devis input::placeholder,
.form-devis textarea::placeholder {
  color: #999 !important;
  font-style: italic !important;
  opacity: 1 !important;
}

/* Compatibilité navigateurs */
.form-devis input::-webkit-input-placeholder,
.form-devis textarea::-webkit-input-placeholder {
  color: #999 !important;
  font-style: italic !important;
}
.form-devis input::-moz-placeholder,
.form-devis textarea::-moz-placeholder {
  color: #999 !important;
  font-style: italic !important;
}
.form-devis input:-ms-input-placeholder,
.form-devis textarea:-ms-input-placeholder {
  color: #999 !important;
  font-style: italic !important;
}
.form-devis input::-ms-input-placeholder,
.form-devis textarea::-ms-input-placeholder {
  color: #999 !important;
  font-style: italic !important;
}

/* Variante premium : placeholder disparaît au focus */
.form-devis input:focus::placeholder,
.form-devis textarea:focus::placeholder {
  color: transparent !important;
}
/* Disposition en 2 colonnes pour certains champs */
.form-devis .form-row {
  display: flex;
  gap: 20px;
  flex-wrap: wrap; /* repasse en colonne sur mobile */
  margin-bottom: 12px;
}

.form-devis .form-col {
  flex: 1;
  min-width: 220px; /* largeur mini pour ne pas casser en mobile */
}

.form-devis .form-col label {
  display: block;
  margin-bottom: 4px;
  color: #333;
}
/* Lignes en 2 colonnes */
.form-devis .form-row {
  display: flex;
  gap: 20px;
  flex-wrap: wrap; /* repasse en 1 colonne sur mobile */
  margin-bottom: 12px;
}

.form-devis .form-col {
  flex: 1;
  min-width: 220px;
}

/* Style du champ fichier */
.form-devis input[type="file"] {
  font-size: 14px;
  color: #333;
}

/* Bouton natif "Choisir un fichier" */
.form-devis input[type="file"]::file-selector-button {
  background: #f2f2f2;   /* gris clair */
  color: #333;
  font-size: 14px;
  font-weight: 500;
  padding: 6px 14px;
  border: 1px solid #ccc;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s ease;
}

/* Hover */
.form-devis input[type="file"]::file-selector-button:hover {
  background: #e6e6e6;   /* gris plus foncé au survol */
}
/* Quand le formulaire est envoyé, cacher uniquement les champs */
.wpcf7-form.sent .form-row,
.wpcf7-form.sent .form-group,
.wpcf7-form.sent .form-info,
.wpcf7-form.sent .form-submit {
  display: none !important;
}

/* Garder visible le message de confirmation */
.wpcf7-response-output {
  margin-top: 20px;
  border: 2px solid #FE279D !important;  /* bordure rose Bréard */
  background: #fff !important;           /* fond blanc */
  color: #333 !important;                /* texte sobre */
  border-radius: 6px;
  padding: 20px;
  font-size: 16px;
  text-align: center;
  font-weight: 500;
}

/* Supprimer icône et bouton Avada */
.wpcf7-response-output .alert-icon,
.wpcf7-response-output .close {
  display: none !important;
}
/* Bouton "Prendre RDV" */
/* Harmoniser le bouton Prendre RDV avec Prix sur devis */
.breard-rdv-btn {
  margin-top: 15px; /* espace entre Prix sur devis et Prendre RDV */
}

.breard-rdv-btn a {
  display: inline-block;
  background-color: #FE279D;
  color: #fff !important;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 18px;
  padding: 10px 20px;
  text-align: center;
  border-radius: 0;
  border: none;
  text-decoration: none;
  line-height: 1.2;
  transition: background-color 0.3s ease;
  box-shadow: none;
  min-width: 200px;
}

.breard-rdv-btn a:hover {
  background-color: #d81f85;
}
/* Formulaire RDV en 2 colonnes */
/* Organisation en deux colonnes pour le formulaire RDV */
.rdv-form-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px; /* espace entre colonnes */
  margin-bottom: 15px;
}

.rdv-form-col {
  flex: 1;
  min-width: 200px; /* évite de trop écraser sur mobile */
}

.rdv-form-col label {
  display: block;
  margin-bottom: 5px;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 select,
.wpcf7 textarea {
  width: 100%;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 4px;
  box-sizing: border-box;
}
/* Style des placeholders pour le formulaire RDV */
/* Style des placeholders RDV */
/* Placeholders gris italique */
.placeholder-rdv input::placeholder,
.placeholder-rdv textarea::placeholder {
  color: #999 !important;
  font-style: italic !important;
  opacity: 1 !important;
}

/* Compatibilité navigateurs */
.placeholder-rdv input::-webkit-input-placeholder,
.placeholder-rdv textarea::-webkit-input-placeholder {
  color: #999 !important;
  font-style: italic !important;
}
.placeholder-rdv input::-moz-placeholder,
.placeholder-rdv textarea::-moz-placeholder {
  color: #999 !important;
  font-style: italic !important;
}
.placeholder-rdv input:-ms-input-placeholder,
.placeholder-rdv textarea:-ms-input-placeholder {
  color: #999 !important;
  font-style: italic !important;
}
.placeholder-rdv input::-ms-input-placeholder,
.placeholder-rdv textarea::-ms-input-placeholder {
  color: #999 !important;
  font-style: italic !important;
}

/* Variante premium : placeholder disparaît au focus */
.placeholder-rdv input:focus::placeholder,
.placeholder-rdv textarea:focus::placeholder {
  color: transparent !important;
}
/* Quand le formulaire RDV est envoyé, cacher uniquement les champs */
/* Quand le formulaire RDV est envoyé, cacher uniquement les champs */
.wpcf7-form.placeholder-rdv.sent .form-row,
.wpcf7-form.placeholder-rdv.sent .rdv-form-row,
.wpcf7-form.placeholder-rdv.sent .form-group,
.wpcf7-form.placeholder-rdv.sent .form-info,
.wpcf7-form.placeholder-rdv.sent .form-submit,
.wpcf7-form.placeholder-rdv.sent p:not(.wpcf7-response-output) {
  display: none !important;
}

/* Garde visible le message de confirmation (fusion-alert d’Avada) */
.wpcf7-form.placeholder-rdv .fusion-alert.wpcf7-response-output {
  margin-top: 20px;
  border: 2px solid #FE279D !important;  /* bordure rose Bréard */
  background: #fff !important;           /* fond blanc */
  color: #333 !important;                /* texte sobre */
  border-radius: 6px;
  padding: 20px;
  font-size: 16px;
  text-align: center;
  font-weight: 500;
  box-shadow: none !important;
}

/* Supprimer icône et bouton Avada */
.wpcf7-form.placeholder-rdv .fusion-alert.wpcf7-response-output .alert-icon,
.wpcf7-form.placeholder-rdv .fusion-alert.wpcf7-response-output .close {
  display: none !important;
}
/* ===== STYLE PERSONNALISÉ DES CASES À COCHER ===== */
/* ===== BLOC GLOBAL ===== */
.bloc-rdv {
  text-align: center;
  margin-bottom: 25px;
}

.bloc-rdv h3 {
  font-size: 30px !important;
  margin-bottom: 40px !important;
}

/* ===== CONTENEUR FLEX ===== */
.choix-type-rdv {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

/* Cache les radios natifs */
.choix-type-rdv input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* Style visuel des boutons */
.choix-type-rdv label {
  display: inline-block;
  background: #f5f5f5;
  border: 2px solid #00B285;
  color: #111;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 14px 32px;
  border-radius: 8px;
  cursor: pointer;
  min-width: 180px;
  text-align: center;
  transition: all 0.25s ease;
  user-select: none;
}

/* ===== VERSION MODERNE (navigateurs récents) ===== */
/* Colorie le label contenant un input coché */
.choix-type-rdv label:has(input[type="radio"]:checked) {
  background: #00B285;
  color: #fff;
  border-color: #00B285;
  box-shadow: 0 0 6px rgba(0,178,133,0.4);
  transform: scale(1.05);
}

/* ===== FALLBACK (navigateurs sans :has) ===== */
/* Contact Form 7 entoure les inputs dans des spans */
.choix-type-rdv span.wpcf7-list-item {
  display: inline-block;
}

.choix-type-rdv span.wpcf7-list-item input[type="radio"]:checked + span.wpcf7-list-item-label {
  background: #00B285;
  color: #fff;
  border-color: #00B285;
  box-shadow: 0 0 6px rgba(0,178,133,0.4);
  transform: scale(1.05);
}

/* ===== HOVER ===== */
.choix-type-rdv label:hover,
.choix-type-rdv span.wpcf7-list-item-label:hover {
  background: #00d49c;
  color: #fff;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 600px) {
  .choix-type-rdv {
    flex-direction: column;
    align-items: center;
  }
  .choix-type-rdv label,
  .choix-type-rdv span.wpcf7-list-item-label {
    width: 80%;
  }
}
/* ===== STYLE DU BOUTON ENVOYER (classe .btn-rdv) ===== */
.btn-rdv {
  display: inline-block !important;
  background: #00B285 !important;       /* Vert Bréard par défaut */
  border: 2px solid #00B285 !important; /* Bordure assortie */
  color: #fff !important;               /* Texte blanc */
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  padding: 14px 32px !important;
  border-radius: 8px !important;        /* Même radius que tes radios */
  cursor: pointer !important;
  text-align: center !important;
  min-width: 180px !important;
  transition: all 0.25s ease-in-out !important;
  user-select: none !important;
  margin-top: 10px !important;
}

/* ===== HOVER : vert plus foncé ===== */
.btn-rdv:hover {
  background: #00976d !important;       /* Vert plus foncé au survol */
  border-color: #00976d !important;
  transform: scale(1.03) !important;    /* Effet de survol fluide */
}

/* ===== FOCUS / ACTIF : effet de pression ===== */
.btn-rdv:active,
.btn-rdv:focus {
  background: #00855f !important;       /* Encore plus foncé au clic */
  border-color: #00855f !important;
  transform: scale(0.98) !important;    /* Effet d’enfoncement */
  outline: none !important;
}

/* ===== CENTRAGE DANS LE FORMULAIRE ===== */
.wpcf7 form p:last-of-type {
  text-align: center !important;
}
/* ===== antibot pour les formulaires ===== */

.cf7-anti-bot {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* === Zone quantité + bouton panier === */
/* ==========================================================================
   ZONE : Quantité + Bouton Ajouter au Panier
   Objectif : bloc propre, lisible, quantity modifiable, aucun flash blanc
   ========================================================================== */

/* Conteneur global du bloc quantité + bouton panier */
.fusion-woo-cart-1 .fusion-button-wrapper {
  display: flex;
  flex-direction: row;         /* quantité et bouton côte à côte */
  align-items: center;
  justify-content: center;
  gap: 15px;                   /* espace entre quantité et bouton panier */
  flex-wrap: wrap;             /* passe en colonne si écran étroit */
}

/* === ENCART GLOBAL QUANTITÉ (un seul bloc autour de "- 1 +") === */
.fusion-woo-cart-1 .quantity {
  display: flex;
  align-items: center;
  justify-content: center;

  /* Fond + encadrement global */
  background: #f2f2f2 !important;
  border: 2px solid #d4d4d4 !important;   /* <<< ton encadrement global */
  border-radius: 6px !important;

  /* Hauteur fixe et suppression des espaces internes */
  height: 48px;
  padding: 0 !important;
  gap: 0 !important;
  box-sizing: border-box;
  overflow: hidden;              /* arrondis propres, rien qui dépasse */
}

/* === Champ QUANTITÉ (modifiable, indispensable pour recalcul PPOM) === */
.fusion-woo-cart-1 .quantity input.qty {
  width: 56px !important;        /* lisible mais compact */
  height: 100% !important;
  background: #fff !important;   /* contraste au centre */
  border: 1px solid #bfbfbf;         /* <<< BORDURE FINE UNIQUE */
  outline: none !important;
  text-align: center !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #000 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  pointer-events: auto !important; /* <<< permet la saisie → calc dynamique OK */
}

/* === Boutons "-" et "+" === */
.fusion-woo-cart-1 .quantity .minus,
.fusion-woo-cart-1 .quantity .plus {
  width: 44px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;

  background: #e6e6e6 !important; /* gris neutre */
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;

  cursor: pointer;
  font-size: 19px !important;
  font-weight: 600 !important;
  color: #000 !important;

  box-shadow: none !important;
  transition: background 0.15s ease, color 0.15s ease;
}

/* Hover maîtrisé (pas de flash blanc) */
.fusion-woo-cart-1 .quantity .minus:hover,
.fusion-woo-cart-1 .quantity .plus:hover {
  background: #d0d0d0 !important;
  color: #000 !important;
}

/* === Bouton AJOUTER AU PANIER === */
.fusion-woo-cart-1 .single_add_to_cart_button {
  flex: 1;                       /* prend l'espace restant */
  min-width: 180px;
  max-width: 260px;
  height: 48px;                  /* même hauteur que le bloc quantité */
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  white-space: nowrap;
}

/* === Responsive Mobile === */
@media (max-width: 768px) {
  .fusion-woo-cart-1 .fusion-button-wrapper {
    flex-direction: column;
    align-items: center;
  }

  .fusion-woo-cart-1 .single_add_to_cart_button,
  .fusion-woo-cart-1 .quantity {
    width: 100%;
    max-width: 260px;
  }
}
/* Bouton devis PDF — sous la ligne, aligné à droite, sans arrondi */
.btn-devis-pdf {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  height: 44px !important;
  padding: 0 22px !important;

  background: #FE279D !important;
  color: #fff !important;
  font-weight: 600 !important;

  border-radius: 0 !important;           /* plus aucun arrondi */
  text-decoration: none !important;

  /* Placement */
  margin-top: 15px !important;
  margin-right: 5px !important;          /* ←décale à droite manuellement */
  margin-left: auto !important;
  float: none !important;
}

/* Icône PDF */
.btn-devis-pdf:before {
  content: "\f1c1";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 14px;
  margin-right: 6px;
}

/* Survol */
.btn-devis-pdf:hover {
  background: #d6006d !important;
  color: #fff !important;
}
.fusion-header-wrapper .fusion-column-wrapper {
  background: transparent !important;
  box-shadow: none !important;
  min-height: auto !important;
  height: auto !important;
  overflow: visible !important;
}
/* === Forcer "À partir de X € HT" sur UNE SEULE LIGNE === */

.prix-apartir,
.prix-apartir p,
.prix-apartir span,
.prix-apartir .woocommerce-Price-amount,
.prix-apartir .woocommerce-Price-currencySymbol,
.prix-apartir small,
.prix-apartir bdi {
    display: inline !important;
    white-space: nowrap !important;
    line-height: 1.2 !important;
    vertical-align: middle !important;
}

/* Supprime les marges parasites */
.prix-apartir,
.prix-apartir p {
    margin: 0 !important;
    padding: 0 !important;
}

/*txt nous avons aime travailler*/
/* Le titre peut flotter en dehors de son bloc */
.texte-encadre .fusion-title {
  position: relative !important;
  overflow: visible !important;
  z-index: 10 !important; /* Base de superposition */
}

/* Positionnement du titre encadré */
.texte-encadre .fusion-title-heading {
  display: inline-block !important;
  background-color: #000 !important;
  color: #fff !important;
  border: 2px solid #FE279D !important;
  padding: 5px 25px 8px 25px !important;
  line-height: 1.4 !important;
  text-align: center !important;

  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;

  top: 35px !important; /* Chevauchement vers le BAS */
  z-index: 999 !important; /* Passe devant */
}

/* On remet le carrousel en dessous du titre */
.fusion-carousel {
  position: relative !important;
  z-index: 1 !important;
  overflow: visible !important;
}
/* Pas de chevauchement sur mobile : titre au-dessus, espacement contrôlé */
@media (max-width: 768px) {

  /* Conteneur du titre */
  .texte-encadre .fusion-title {
    position: static !important;
    overflow: visible !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
	}}
/* legende carou Contexte : on autorise le chevauchement */
/* On autorise le chevauchement sur les images du carrousel ciblé */
.carrousel-legende .fusion-image-wrapper,
.carrousel-legende .fusion-imageframe,
.carrousel-legende .awb-imageframe-caption {
  position: relative !important;
  overflow: visible !important;
  z-index: 5 !important;
}

/* On chevauche TOUTES les légendes présentes dans ce carrousel */
.carrousel-legende .awb-imageframe-caption-title {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  transform: none !important;

  bottom: 45px !important; /* Ajustez ici la hauteur de chevauchement */

  width: 100% !important;          /* prend toute la largeur */
  text-align: center !important;   /* centre le texte */
  padding: 10px 15px !important;   /* espace interne propre */

background: rgba(255, 255, 255, 0.9) !important;
  color: #000 !important;           /* texte noir */
  border: none !important;
  border-radius: 0 !important;      /* fond en bande propre */
  display: block !important;

  z-index: 99 !important;
}
/* Pas de chevauchement sur mobile */
@media (max-width: 768px) {

  /* Le conteneur redevient dans le flux normal */
  .carrousel-legende .fusion-image-wrapper,
  .carrousel-legende .fusion-imageframe,
  .carrousel-legende .awb-imageframe-caption {
    position: static !important;
    overflow: visible !important;
    z-index: auto !important;
  }

  /* La légende redevient un bloc standard */
  .carrousel-legende .awb-imageframe-caption-title {
    position: static !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;

    width: 100% !important;
    text-align: center !important;
    padding: 10px 15px !important;

    background: rgba(255,255,255,0.85) !important; /* lisible, sobre */
    color: #000 !important;
    border: none !important;
    border-radius: 0 !important;

    display: block !important;
    z-index: auto !important;
    margin-top: 8px !important; /* légère respiration avec le visuel */
  }
}
/*bullets carou*/
.carrousel-legende .swiper-pagination {
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;

  /* Ajustez la hauteur : ce sera sous votre bande légende */
  bottom: 10px !important;

  z-index: 100 !important;
  width: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}
/* Style des bullets */
.carrousel-legende .swiper-pagination-bullet {
  width: 8px !important;
  height: 8px !important;
  background: rgba(255,255,255,0.7) !important; /* neutre par défaut */
  border: 1px solid #FE279D !important;         /* cercle fuchsia fin */
  opacity: 1 !important;                        /* pas de transparence Swiper */
  margin: 0 5px !important;                     /* espace régulier */
  transition: background 0.25s ease, transform 0.25s ease;
}

/* Hover */
.carrousel-legende .swiper-pagination-bullet:hover {
  background: #FE279D !important;               /* fuchsia plein au survol */
  transform: scale(1.25);
}

/* Bullet actif (slide en cours) */
.carrousel-legende .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #FE279D !important;
  transform: scale(1.3);
}
/* Positionnement des bullets sur l'image, centré */
.carrousel-legende .swiper-pagination {
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  bottom: 10px !important; /* ajustez l'espace sous la légende */
  z-index: 100 !important;
}

/* Bullet par défaut */
.carrousel-legende .swiper-pagination-bullet {
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: rgba(0,0,0,0.3) !important; /* gris discret */
  opacity: 1 !important; /* on supprime le fade de Swiper */
  margin: 0 6px !important;
  border: none !important;
  transition: background 0.25s ease, transform 0.25s ease;
}

/* Bullet actif (slide en cours) */
.carrousel-legende .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #FE279D !important; /* fuchsia Bréard */
  transform: scale(1.35);
}

/* Hover / intention de sélection */
.carrousel-legende .swiper-pagination-bullet:hover {
  background: #ffffff !important; /* blanc net */
  transform: scale(1.25);
}
/*groupe*/
/* Le container du haut doit laisser passer ce qui dépasse */
.bande-rose {
  position: relative;
  z-index: 1;
  overflow: visible !important;
}

/* Le container de l'image remonte et passe au-dessus */
.bloc-image-chevauche {
  position: relative;
  z-index: 2;                /* au-dessus de la bande */
  margin-top: -60px;         /* chevauchement principal : ajustez -40/-80 */
  overflow: visible !important;
}

/* Sécurité: certaines versions d’Avada fixent l’overflow sur la row */
.bloc-image-chevauche .fusion-builder-row {
  overflow: visible !important;
}

/* L’image: taille réduite et centrée */
.img-chevauche img,
.img-chevauche .fusion-imageframe img {
  display: block;
  width: 220px;              /* ajustez 180/260 selon rendu */
  max-width: none !important;
  margin: 0 auto;
  transform: translateY(-20px); /* petit lift fin au-dessus de la ligne */
}

/* Option: décaler à droite au lieu d’être centrée */
/*
.img-chevauche img,
.img-chevauche .fusion-imageframe img {
  margin: 0;
  position: relative;
  left: auto;
  right: -40px;             // pousse vers la droite
}
*/

/* Mobile: on annule le chevauchement pour éviter les collisions */
@media (max-width: 900px) {
  .bloc-image-chevauche {
    margin-top: 0;
  }
  .img-chevauche img,
  .img-chevauche .fusion-imageframe img {
    width: 100%;
    transform: none;
    margin-top: 16px;
  }
}
/* Masque le nom du fichier dans le tableau PPOM */
/* Masque le dernier TD si la ligne contient une miniature PPOM */
.table.table-bordered tr:has(td a[href*="/ppom_files/"]) td:last-child {
    display: none !important;
}
/* Masquer la ligne Sous-total dans le panier et le checkout */
.woocommerce .cart-subtotal {
    display: none !important;
}
/* Masque la case radio du mode de paiement */
/* Masquer la radio, même si PPOM met un inline style */
.woocommerce-checkout .wc_payment_methods .wc_payment_method input.input-radio {
    display: none !important;
    pointer-events: none !important;
}

/* Désactiver le "hover" + suppression du fond + bordure */
.woocommerce-checkout .wc_payment_methods .wc_payment_method {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Empêcher le label de se comporter comme un bouton */
.woocommerce-checkout .wc_payment_methods .wc_payment_method label {
    cursor: default !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Supprimer le gros highlight WooCommerce quand sélectionné */
.woocommerce-checkout .wc_payment_methods .wc_payment_method input.input-radio:checked + label::before,
.woocommerce-checkout .wc_payment_methods .wc_payment_method label::before,
.woocommerce-checkout .wc_payment_methods .wc_payment_method label::after {
    display: none !important;
    content: none !important;
}
/* Fond neutre propre, sans arrondi, centré */
.woocommerce-checkout .wc_payment_methods .wc_payment_method {
    background: #F8F5F2 !important;
    border: 2px solid #e2e2e2 !important;
    border-radius: 6px !important; /* pas de radius */
    padding: 12px 14px !important;
    margin-bottom: 12px !important;
    box-shadow: none !important;
    text-align: center !important; /* centrage du contenu */
}

/* Texte + logo centrés correctement */
.woocommerce-checkout .wc_payment_methods .wc_payment_method label {
    font-weight: 600 !important;
	    opacity: 0.94; /* adoucit le gras sans perdre la présence */

    display: inline-flex !important;
    align-items: center;
    justify-content: center; /* centrage horizontal */
    gap: 8px;
    margin: 0 !important;
    padding: 0 !important;
    width: 100%;
}

/* Logo : taille cohérente */
.woocommerce-checkout .wc_payment_methods .wc_payment_method img {
    height: 26px;
    width: auto;
}
.woocommerce-terms-and-conditions {
    display: none !important;
}
/* Couleur de la case cochée (natif navigateur) */
.woocommerce-form__input-checkbox:checked {
    accent-color: #FE279D;
}
/* Liens en noir + hover fuchsia Bréard dans les blocs 9, 10, 11 */
.fusion-text-9 a,
.fusion-text-10 a,
.fusion-text-11 a {
    color: #000 !important;
    text-decoration: none;
}
/*Liens en noir footer*/
.fusion-text-9 a:hover,
.fusion-text-10 a:hover,
.fusion-text-11 a:hover {
    color: #FE279D !important;
}
/* Empêche le clic sur desktop, autorise sur mobile */
.tel-only-mobile {
    pointer-events: none;
}

@media (max-width: 1024px) {
    .tel-only-mobile {
        pointer-events: auto;
    }
}
/* Masque le prix + rating uniquement dans le layout produit
   contenant la classe no-related-price */
.no-related-price .fusion-price-rating,
.no-related-price .price,
.no-related-price .fusion-woo-carousel-price {
    display: none !important;    /* cache le prix */
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* Masquer prix + rating dans le container avec la classe no-related-price */
.no-related-price .fusion-related-products .fusion-price-rating,
.no-related-price .fusion-related-products .price,
.no-related-price .fusion-related-products .fusion-woo-carousel-price {
    display: none !important;
}
/* ============================
   LISTING PRODUITS CATÉGORIE / ARCHIVE
   ============================ */

/* Carte produit (bordure native grise clean) */
.archive.post-type-archive-product .products li.product,
.tax-product_cat .products li.product {
    border: 1px solid #DDD !important;      /* bordure grise au repos */
    border-radius: 1px !important;
    background: #fff !important;
    box-shadow: none !important;
    overflow: hidden !important;
    transition: border-color .25s ease !important;
    display: flex !important;
    flex-direction: column !important;
    width: calc(33.333% - 20px) !important;
    margin: 20px 10px !important;
}

/* Hover vert Bréard sur bordure native */
.archive.post-type-archive-product .products li.product:hover,
.tax-product_cat .products li.product:hover {
    border-color: #00A651 !important;         /* vert Bréard */
}

/* Suppression des bordures internes Avada */
.archive.post-type-archive-product .fusion-product-wrapper,
.tax-product_cat .fusion-product-wrapper {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}
/* Ombre portée premium au hover */
.archive.post-type-archive-product .products li.product:hover,
.tax-product_cat .products li.product:hover {
    box-shadow: 0 8px 18px rgba(0,0,0,0.18) !important;   /* ombre portée clean */
    transform: translateY(-3px) !important;               /* léger lift */
}

/* Zone image */
.archive.post-type-archive-product .fusion-clean-product-image-wrapper,
.tax-product_cat .fusion-clean-product-image-wrapper {
    border-bottom: none !important;
    height: 220px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Image uniformisée */
.archive.post-type-archive-product .products li.product img,
.tax-product_cat .products li.product img {
    width: 100% !important;
    height: 220px !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 12px !important;
    border: none !important;
    background: #fff !important;
}

/* Zone contenu */
.archive.post-type-archive-product .products li.product .fusion-product-content,
.tax-product_cat .products li.product .fusion-product-content {
    padding: 10px 14px 12px !important;      /* compact */
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
}

/* Titre produit */
.archive.post-type-archive-product .products li.product .product-title,
.tax-product_cat .products li.product .product-title {
    text-align: center !important;
    margin: 0 0 2px !important;              /* espace réduit */
    line-height: 1.35 !important;
    font-weight: 600 !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    min-height: 3.2em !important;            /* compact mais stable */
}

/* Prix */
.archive.post-type-archive-product .fusion-price-rating,
.tax-product_cat .fusion-price-rating {
    margin-top: auto !important;
    padding-top: 0 !important;
    text-align: center !important;
}

/* Responsive */
@media (max-width: 992px) {
    .archive.post-type-archive-product .products li.product,
    .tax-product_cat .products li.product {
        width: calc(50% - 20px) !important;
    }
}

@media (max-width: 576px) {
    .archive.post-type-archive-product .products li.product,
    .tax-product_cat .products li.product {
        width: 100% !important;
    }
}
/* =========================================================
   RELATED PRODUCTS (container .no-related-price)
   ========================================================= */

/* Hauteur et affichage images */
.no-related-price .fusion-product-wrapper .fusion-image-wrapper img {
    width: 100% !important;
    height: 260px !important;
    object-fit: contain !important;       /* PAS DE COUPE */
    object-position: center !important;
    display: block !important;
    background: #fff !important;
}

/* Bloc wrapper avec bordure grise et hover vert */
.no-related-price .fusion-product-wrapper {
    border: 2px solid #DDD !important;  /* bordure au repos */
    border-radius: 3px !important;
    background: #fff !important;
    transition: all .25s ease !important;
    overflow: hidden !important;
}

.no-related-price .fusion-product-wrapper:hover {
    border-color: #00A651 !important;      /* vert au survol */
    box-shadow: 0 8px 18px rgba(0,0,0,0.18) !important;  /* ombre portée */
    transform: translateY(-3px) !important;
}

/* Zone contenu : espace ajusté pour remonter le titre */
.no-related-price .fusion-product-content {
    padding: 4px 8px 8px !important;     /* réduit l’espace haut */
    text-align: center !important;
}

/* Titres uniformisés */
.no-related-price .fusion-product-wrapper .product-title {
    margin-top: 4px !important;            /* espace image → titre */
	    margin-bottom: 12px !important;      /* + marge sous le titre */
    min-height: 48px !important;
    line-height: 1.3 !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    text-align: center !important;
}

/* Prix en bas */
.no-related-price .fusion-price-rating {
    margin-top: auto !important;
}

/* Effet zoom léger image au hover */
.no-related-price .fusion-product-wrapper .fusion-image-wrapper img {
    transition: transform .35s ease !important;
}
.no-related-price .fusion-product-wrapper:hover .fusion-image-wrapper img {
    transform: scale(1.04);}
/* =========================================================
   BOUTONS DEVIS + RDV ALIGNÉS À DROITE PROPREMENT
   ========================================================= */

/* Colonne contenant les boutons : suppression padding Avada */
.bloc-boutons-col {
  padding-right: 5px !important;
  padding-left: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Conteneur horizontal aligné à droite */
.bloc-boutons-devis-rdv {
  display: flex;
  justify-content: flex-end;     /* alignement à droite */
  align-items: center;
  gap: 10px;                     /* espace entre boutons */
  width: 100%;
  margin-top: 15px;
  box-sizing: border-box;
}

/* Style commun boutons */
.bloc-boutons-devis-rdv .fusion-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  height: 44px !important;
  line-height: 44px !important;
  padding: 0 22px !important;
  margin: 0 !important;

  font-weight: 600 !important;
  font-size: 14px !important;

  border-radius: 0 !important;
  border: none !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  color: #fff !important;
}

/* Bouton DEVIS */
.btn-devis-pdf {
  background: #FE279D !important;
  float: none !important;
  margin-left: 0 !important;
  margin-right: 10px !important;
}
.btn-devis-pdf:hover {
  background: #d6006d !important;
}

/* Bouton RDV identique, sans icône */
.btn-rdv-pdfsame {
  background: #FE279D !important;
}
.btn-rdv-pdfsame:hover {
  background: #d6006d !important;
}

/* Responsive mobile */
@media (max-width: 768px) {
  .bloc-boutons-devis-rdv {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 12px;
  }
}
/* Conteneur aligné à droite */
.bloc-boutons-col {
  padding-right: 0 !important;
  padding-left: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.bloc-boutons-devis-rdv {
  display: flex;
  justify-content: flex-end;     /* droit */
  align-items: center;
  gap: 8px;                      /* espace boutons */
  width: 100%;
  margin-top: 0px;
}

/* Style commun boutons version compacte */
.bloc-boutons-devis-rdv .fusion-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  height: 32px !important;       /* hauteur compacte */
  line-height: 32px !important;
  padding: 0 14px !important;    /* largeur réduite */
  font-size: 13px !important;    /* typographie plus fine */
  font-weight: 600 !important;

  background: #FE279D !important;
  color: #fff !important;
  border: none !important;
  border-radius: 0 !important;
  text-decoration: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* Hover */
.bloc-boutons-devis-rdv .fusion-button:hover {
  background: #d6006d !important;
}

/* Ajout espace 5px côté droit du bouton DEVIS */
.bloc-boutons-devis-rdv .btn-devis-pdf {
  margin-right: 5px !important;
}
@media (max-width: 768px) {
  .bloc-boutons-devis-rdv {
    flex-direction: row !important;   /* côte à côte */
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;              /* espace entre */
	      margin-top: 10px !important;           /* demandé : 10px spécifique mobile */
  }
  }

  .bloc-boutons-devis-rdv .fusion-button {
    height: 36px !important;          /* légèrement plus compact */
    padding: 0 14px !important;
    font-size: 13px !important;
  }
}

/* Réduction margin-top séparateur conditionnel */
.sep-conditional {
  margin-top: 15px !important;   /* ajuste la valeur selon besoin */
}
/*phrase form contact RDV */
.contact-delai {
  margin-top: 30px !important; /* ajuste la valeur selon le rendu souhaité */
  display: block;
}
/* Ne plus afficher le curseur "main" sur la ligne expédition */
.woocommerce-shipping-methods label,
.woocommerce-shipping-destination {
    cursor: default !important;
}

/* Enlever le gras sur l'adresse */
.woocommerce-shipping-destination strong {
    font-weight: 400 !important; /* normal */
}

/* Rendre le prix du transport en gras */
.woocommerce-shipping-methods .woocommerce-Price-amount bdi {
    font-weight: 700 !important; /* bold */
}
/* Suppression complète du bouton Ajouter au panier en hover */
/* Force removal everywhere Avada prints it */
.fusion-product-wrapper .cart-loading,
.fusion-rollover .cart-loading,
.fusion-woo-product-buttons .cart-loading {
    display: none !important;
}
/* Liens du footer en noir + hover fuchsia partout */
.fusion-footer a,
.fusion-footer-widget-area a,
.fusion-footer .fusion-text a {
  color: #000 !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

.fusion-footer a:hover,
.fusion-footer-widget-area a:hover,
.fusion-footer .fusion-text a:hover {
  color: #FE279D !important;
}
