/*
Theme Name: Kuma Editions
Theme URI: https://kuma-preprod.julie-barbouxbitauld.fr/
Author: Julie
Description: Thème enfant pour Kuma Éditions basé sur Twenty Twenty-Four.
Template: twentytwentyfour
Version: 1.0
*/




/*parametrage global temporaire/test*/
.hide-slide {
    display: none !important;
}


/*---------------------------------*/
/* Layout global */
/*---------------------------------*/
/* Sécurité globale */
html,
body {
  max-width: 100%;
  overflow-x: hidden !important;
  background: #fcfbfa !important;
}
html { scroll-behavior: smooth; }

body{
		padding-top: 0px;
		--wp--style--root--padding-right: 0 !important;
		--wp--style--root--padding-left: 0 !important;
	}
main{
	--wp--style--global--content-size: 700px;
    --wp--style--global--wide-size: 1110px;
	max-width: 1110px;
	margin: 0 auto;
	padding: 20px 40px;
}

.wp-site-blocks, .wp-block-template-part{
  overflow: visible !important;
}

.wc-block-mini-cart__button, .wp-block-navigation__responsive-container-open, .wp-block-navigation__responsive-container-close {
	border: 0 !important;
}
.wp-block-navigation__responsive-container-close{
    position: relative !important;
  z-index: 1000000 !important;
}
@media screen and (max-width: 768px) {
	.page-boutique-block{
		padding: 15px;
	}
}

.produit-unique .btn.is-style-fill   {
	border: 1px solid red;
}
:root :where(.wp-block-woocommerce-product-button) {
	background: transparent;
}
.wp-block-button.is-style-outline .wp-block-button__link:not(.has-background) {
    background-color: white;
    background-image: none;
}






/* =====================================================
   FIX SPÉCIFIQUE : UAGB Container (bandeau vacances)
   ===================================================== */

/* Conteneur racine UAGB */
.wp-block-uagb-container.uagb-is-root-container {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;

  overflow: hidden !important;
  box-sizing: border-box !important;
}

/* Cas fréquent : alignfull qui force du 100vw */
.wp-block-uagb-container.alignfull {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Inner UAGB (fond, overlay, contenu) */
.wp-block-uagb-container.uagb-is-root-container
.uagb-container-inner-blocks-wrap,
.wp-block-uagb-container.uagb-is-root-container
.uagb-container__inner {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

/* Sécurité : aucun enfant ne peut dépasser */
.wp-block-uagb-container.uagb-is-root-container * {
  box-sizing: border-box !important;
  max-width: 100%;
}
/*mobile menu fix*/
@media (max-width: 900px) {

  .wp-block-uagb-container.uagb-is-root-container,
  .wp-block-uagb-container.alignfull {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

}



/*******************************/
/* page d'accueil */
/*******************************/
.point-cle{
	margin-top: 40px !important;
	gap: 20px;
}
.bg-ulule {
  background-image: url('data:image/svg+xml;utf8,<svg width="219" height="218" viewBox="0 0 219 218" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M117.828 1.89474C125.393 -1.73414 134.443 -0.0454797 140.187 6.06955C144.181 10.3246 149.895 12.5351 155.719 12.0802C164.089 11.4272 171.914 16.2684 175.059 24.0426C177.245 29.4512 181.775 33.5751 187.369 35.2531C195.409 37.6643 200.957 45.0023 201.078 53.3867C201.161 59.2208 203.893 64.6989 208.501 68.2822C215.126 73.4312 217.644 82.2759 214.727 90.1384C212.696 95.6085 213.262 101.702 216.265 106.707C220.581 113.897 219.731 123.055 214.167 129.331C210.296 133.698 208.619 139.586 209.61 145.334C211.035 153.598 206.931 161.83 199.47 165.676C194.281 168.349 190.587 173.236 189.432 178.955C187.771 187.173 180.969 193.369 172.621 194.262C166.816 194.883 161.605 198.105 158.46 203.022C153.941 210.087 145.354 213.408 137.25 211.229C131.611 209.715 125.589 210.839 120.876 214.286C114.107 219.242 104.901 219.242 98.129 214.286C93.4193 210.836 87.3942 209.712 81.755 211.229C73.6483 213.408 65.0648 210.087 60.5453 203.022C57.4002 198.105 52.1895 194.883 46.3842 194.262C38.0391 193.369 31.2344 187.173 29.5734 178.955C28.4188 173.236 24.7245 168.352 19.5352 165.676C12.0769 161.83 7.97269 153.598 9.39524 145.334C10.3865 139.586 8.70941 133.698 4.83826 129.331C-0.726014 123.055 -1.57794 113.897 2.74061 106.707C5.74376 101.702 6.30903 95.6085 4.27835 90.1384C1.35825 82.2759 3.8765 73.4312 10.5043 68.2822C15.1149 64.7015 17.8448 59.2208 17.9278 53.3867C18.0484 45.0023 23.5966 37.6643 31.6363 35.2531C37.23 33.5751 41.7575 29.4538 43.9463 24.0426C47.0914 16.2684 54.9168 11.4272 63.286 12.0802C69.1074 12.5351 74.8217 10.3246 78.8188 6.06955C84.5572 -0.0454797 93.6042 -1.73414 101.172 1.89474C106.437 4.42103 112.563 4.42103 117.828 1.89474Z" fill="white"/></svg>');
  background-size: contain; /* Maintient les proportions */
  background-repeat: no-repeat;
  background-position: center;
  width: 230px; /* Ajustez selon besoin */
  height: 230px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 5px;
  overflow: visible;
}

.bg-ulule img {
  max-width: 100px; 
}

.bg-ulule p {
  font-weight: 700;
  max-width: 90%;
  margin-top: 10px;
  word-wrap: break-word;
  white-space: normal;
}

/* slider  */

/* .img-slider img{
    height: 300px !important;
    width: auto !important;
} */
/*fleche slider*/
/* Flèches du slider accueil */
.uagb-slider-container .swiper-button-prev,
.uagb-slider-container .swiper-button-next {
  width: 54px;
  height: 54px;
  background: #ffffff;
  border-radius: 50%;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
  color: #111111;
}

/* Taille et style de la flèche */
.uagb-slider-container .swiper-button-prev::after,
.uagb-slider-container .swiper-button-next::after {
  font-size: 18px;
  font-weight: 700;
  color: #111111;
}

/* Effet hover léger */
.uagb-slider-container .swiper-button-prev:hover,
.uagb-slider-container .swiper-button-next:hover {
  background: #ffffff;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);
}

/* Positionnement */
.uagb-slider-container .swiper-button-prev {
  left: 18px;
}

.uagb-slider-container .swiper-button-next {
  right: 18px;
}

.slider-accueil-txt {
    width: 50% !important;
}
/* .slider-accueil-img img{
    width: auto !important;
    height: 350px !important;
} */

.slider-accueil-img img{
  width: 100% !important;
  height: auto !important;
  max-height: 350px !important;
  object-fit: contain !important;
}

.content-slider{
    box-shadow:
    0 1px 2px rgba(0,0,0,0.03),
    0 6px 14px rgba(0,0,0,0.04);
    border: 1px solid rgba(0,0,0,0.05);
}
/* Empilement mobile : image AU-DESSUS, texte EN-DESSOUS */
@media (max-width: 782px){

  .slider-accueil{
    display: flex;
    flex-wrap: wrap !important;
  }

  .slider-accueil .wp-block-column{
    width: 100% !important;
    flex-basis: 100% !important;
  }

  .slider-accueil-img img{
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
  }

  .swiper-content{
    padding: 0 !important;
  }

  .swiper-content > .wp-block-group:first-child{
    padding: 20px !important;
  }

  .slider-accueil-txt{
    width: 100% !important;
    flex-basis: 100% !important;
  }

  @media (max-width: 782px){

  .uagb-slider-container .swiper-button-prev,
  .uagb-slider-container .swiper-button-next{
    display: none !important;
  }

}
}

.btn-panier-img{
    display: flex !important;
}
.btn-panier-txt{
    display: none !important;
}

@media screen and (max-width: 768px) {
	/* img produit*/
	.wc-block-components-product-image.wp-block-woocommerce-product-image a{
		overflow: hidden; /* Cache la partie agrandie qui dépasse */
        position: relative; /* Nécessaire pour gérer le débordement */
	}
    .wp-block-woocommerce-single-product.woocommerce .attachment-woocommerce_single.size-woocommerce_single {
        transform: scale(0.8); /* Zoom de 20% */
        object-fit: cover;
        object-position: center;
        width: 100%;
        height: 100%;
        display: block;
    }
	.img-produit{
		height: auto !important;
	}/*
	.img-produit.wp-block-woocommerce-product-image{
		height: 250px;
	}*/
    .btn-panier-img{
        display: none !important;
    }
    .btn-panier-txt{
        display: flex !important;
    }

}

#div-img-produit-unique{
	display: flex;
    justify-content: center;
    flex-direction: column;
}
.img-produit {
    background-color: transparent; /* Couleur par défaut */
    transition: background-color 0.3s ease, transform 0.3s ease;
    display: inline-block; /* Permet d'éviter que l'élément ne soit de hauteur 0 */
}

.img-produit:hover img {
    transform: scale(1.03); /* Zoom léger de l'image */
    transition: transform 0.3s ease; /* Animation fluide du zoom */
}

.btn button, .btn a{
	border: 1px solid #484848 !important;
    border-radius: 2px !important;
    background: #fff !important;
    transition: transform 0.3s ease;
}


.btn button:hover, .btn a:hover{
    background: #464646 !important;
    transform: scale(1.05);
    transition: transform 0.3s ease;
    color: #ffffff !important;
}

/* Badge dans la liste de produits */
.preorder-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background: #cc6600;
    color: #fff;
    padding: 5px 10px;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: bold;
    z-index: 10;
    border-radius: 5px;
}

/* Badge sur la fiche produit */
.woocommerce .preorder-badge-single {
    position: absolute;
    top: 20px;
    left: 20px;
    background: #cc6600;
    color: white;
    padding: 6px 12px;
    font-size: 14px;
    font-weight: bold;
    border-radius: 6px;
    z-index: 20;
}




/*-----------------------------------*/
/* page article */
/*-----------------------------------*/
.select-cat-article select{
	background-color: white;
    border: 1px solid black;
    padding: 10px 15px;
    font-weight: 300;
    cursor: pointer;
    transition: all 0.3sease;
    border-radius: 5px;
    width: 100%;
    max-width: 200px;
}
/* 📱 Sur mobile : 2 colonnes */
@media (max-width: 768px) {
    .liste-actualite {
        grid-template-columns: repeat(2, 1fr); /* 2 colonnes sur mobile */
    }
}

/* 📱 Sur très petits écrans (ex : 480px) : 1 colonne */
@media (max-width: 480px) {
    .liste-actualite {
        grid-template-columns: 1fr; /* 1 colonne pour les écrans très petits */
    }
}



/*-----------------------------------*/
/* page panier */
/*-----------------------------------*/
/* .validation-de-commande h2{
    font-weight: 400 !important;

} */
.sous-total, .frais, .tva{
     
}
.add-promo{
    font-weight: 600;
}
.totale-panier .wc-block-components-totals-item.wc-block-components-totals-footer-item{
    font-weight: 700;
}




/* =====================================================
   a trier
   ===================================================== */

#tab-description div::before, #tab-description p::before {
    content: "✔ ";
    font-weight: bold;
    margin-right: 5px;
}

/*-----------------------------------*/

/* L'afficher uniquement sur mobile (moins de 768px) */
@media screen and (max-width: 768px) {
    .img-produit-tel {
        display: block !important; 
        width: 100%;
        height: auto;
        object-fit: cover;
    }
}

/*---------------Tableau onglet description page produit / info complementaire--------------------*/

.other-product{
    color: red !important;
}

.woocommerce-tabs .tabs a:focus {
    outline: none !important;
    box-shadow: none !important;
}

.woocommerce-tabs .tabs a:focus-visible {
    outline: 2px solid #000 !important;
    outline-offset: 2px;
}

/*#tab-description{
    display: block !important;
}*/

.product-ulule-button-after-description {
    margin: 24px 0 32px;
}

.ulule-project-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    background: #111;
    color: #fff !important;
    text-decoration: none;
    border-radius: 6px;
    font-size: 15px;
    font-weight: 400;
    transition: background 0.2s ease, transform 0.2s ease;
}

.ulule-project-button:hover {
    background: #2b2b2b;
    transform: translateY(-1px);
}

.ulule-project-button:focus {
    outline: none;
    box-shadow: none;
}

.ulule-project-button:focus-visible {
    outline: 2px solid #111;
    outline-offset: 2px;
}
/*-----------------------------------*/

.btn-add-to-cart-with-options{

}
.btn-add-to-cart-with-options .quantity{
    max-height: 50px;
    margin: 0;
    padding: 0;
}

.btn-add-to-cart-with-options button{
    max-height: 50px;
    background: #000 !important;
    color: #fff;
}

/*-----------------------------------*/


/* Masquer le stock par défaut */
.stock {
    display: block;
}

/* Afficher uniquement pour stock faible */
.stock.low-stock {
    display: block;
    color: orange; /* Couleur pour stock faible */
    font-weight: bold;
}

/* Afficher uniquement pour rupture de stock */ /* a coriger en blanc pour le momen */
.stock.out-of-stock {
    display: block;
    color: red; /* Couleur pour rupture de stock */
    font-weight: bold;
}
table.variations .stock.out-of-stock{
	display: none;
}

.product-author{
    font-weight: 400;
    margin: 10px 0 15px 0;
}

.desc-product{
    font-weight: 400;
}


.btn-panier .input-text.qty.text{
    padding: 5px;
}

/*-----------------------------------*/

.woocommerce-tabs-content {
    margin-top: 20px;
}

.woocommerce-tab-content {
    margin-bottom: 40px;
    padding: 20px;
    border: 1px solid #ddd;
    background-color: #f9f9f9;
    border-radius: 5px;
}

.woocommerce-tab-content h2 {
    margin-bottom: 15px;
    color: #333;
}

/*-----------------------------------*/
/* Projet Ulule */

.progress-container {
    width: 100%;
    background-color: #ddd;
    border-radius: 10px;
    overflow: hidden;
    margin-top: 10px;
}

.progress-bar {
    height: 8px;
    background-color: #4caf50;
    width: 0%;
    transition: width 0.5s ease-in-out;
}

.progress-content--preorders .collect{
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 8px;
}

.progress-content--preorders .funding-status{
  display: inline-block;
  background: #e8f6ea;
  color: #2f8f46;
  padding: 6px 12px;
  border-radius: 8px;
  font-weight: 600;
  margin: 0 0 16px;
}

.funding-extra-stats{
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 18px;
  flex-wrap: wrap;
}

.funding-extra-stats p{
  margin: 0;
  font-weight: 600;
}
.collect{
  display:flex;
  align-items:baseline;
  gap:8px;
  font-weight:700;
}

.collect-number{
    font-size:38px;
    line-height: 100%;
}

.collect-text{
  font-size:14px;
  font-weight:500;
  color:#444;
}
@media (max-width:600px){

  .collect-number{
    font-size:26px;
  }

  .collect-text{
    font-size:14px;
  }

}

/* cacher slide sur tel et ordi en fonction de la hauteur */
.collect-div-responsive-mobile{
    display: none !important;
}
.collect-div-responsive-desktop{
    display: block !important;
}
@media screen and (max-width: 768px) {
    .collect-div-responsive-mobile {
        margin-top: 30px !important;
        display: flex !important;
    }
    .collect-div-responsive-desktop {
        display: none !important;
    }
    .funding-extra-stats p{
        font-size: 10px !important;
        font-weight: 400 !important;
    }
    .funding-badge p{
        font-size: 12px !important;
    }
    .progress-content--preorders .funding-status{
        font-size: 12px !important;
    }
}




.soummettre-un-projet-div{
	background: #FBF7F3;
	padding: 20px 40px;
}

.soummettre-un-projet-div input, .soummettre-un-projet-div textarea{
	width: -webkit-fill-available !important;
}
.soummettre-un-projet-div .wpcf7-submit{
	background: #000 !important;
	color: white !important;
	width: fit-content !important;
}




/*-----------------------------------*/
/* Produit téléchargeable */

a.woocommerce-MyAccount-downloads-file::before,
td.download-file a::before,
.wc-block-order-confirmation-downloads__table .download-file a::before {
    content: "📄📥";
    display: inline-block;
    margin-right: 8px;
    line-height: 1;
}





.footer-produit{
    display: flex;
}



.displayNone{
    display: none !important;
}
















/* a trier */
.kuma-valeurs-section {
  margin-top: 48px;
  margin-bottom: 64px;
  padding: 20px;
}

.kuma-valeurs-grid {
  background: #ffffff;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 25px;
  padding: 40px 32px;
  gap: 0;

  /* NOUVELLE OMBRE PLUS PRO */
  box-shadow:
    0 2px 6px rgba(0,0,0,0.04),
    0 12px 32px rgba(0,0,0,0.06),
    inset 0 1px 0 rgba(255,255,255,0.6);
}

.kuma-valeur-card {
  padding: 10px 28px;
  border-right: 1px solid rgba(0,0,0,.08);
}

.kuma-valeur-card:last-child {
  border-right: none;
}

/* .kuma-valeur-icon {
  width: 54px;
  height: 54px;
  margin-bottom: 18px;
  background: #fbf7f3;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.kuma-valeur-icon img {
  width: 30px !important;
  height: 30px !important;
  object-fit: contain;
  margin-top: 12px;
} */

.kuma-valeur-icon {
  width: 54px;
  height: 54px;

  margin-bottom: 18px;

  display: flex;
  align-items: center;
  justify-content: center;
}

/* SVG inline */
.kuma-valeur-icon svg {
  width: 54px !important;
  height: 54px !important;

  display: block;
}



.kuma-valeur-title {
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 12px;
}

.kuma-valeur-text {
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
  opacity: .78;
}
.kuma-valeur-card .valeur-txt{
    display: flex;
    align-items: center !important;
}

@media (max-width: 781px) {
    .kuma-valeurs-section{
        padding: 0;
    }
    .kuma-valeurs-grid {
        padding: 20px 15px;
    }
    .kuma-valeur-card {
        padding: 18px 12px;
        gap: 20px;
        display: flex;
        align-items: center;
        border-right: none;
        border-bottom: 1px solid rgba(0,0,0,.08);
    }
    .kuma-valeur-card .kuma-valeur-icon{
        width: 20%;
        margin: 0;
    }
    .kuma-valeur-card .valeur-txt{
        width: 80%;
        align-items: center !important;
        margin: 0;

    }
    .valeur-txt h3{
        font-size: 14px;
    }
     .valeur-txt p{
        font-size: 11px;
    }

    .kuma-valeur-card:last-child {
        border-bottom: none;
    }

    .div-parutions{
        padding: 0 !important;
    }
}

/* dernière parutions */
.produit-parutions{
    border-radius: 15px;
    
}
.produit-parutions .produit{
    /* box-shadow:
    0 2px 6px rgba(0,0,0,0.04),
    0 12px 32px rgba(0,0,0,0.06),
    inset 0 1px 0 rgba(255,255,255,0.6); */
    border: 1px solid rgba(0,0,0,0.05);

    border-radius: 28px;

    box-shadow:
        0 1px 2px rgba(0,0,0,0.03),
        0 10px 30px rgba(0,0,0,0.05);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;

    overflow: hidden;
}

.produit-parutions .produit:hover{
    transform: translateY(-1px);

    border-color: rgba(0,0,0,0.08);

    box-shadow:
        0 8px 20px rgba(0,0,0,0.06),
        0 20px 40px rgba(0,0,0,0.08);
}
.point-cle-old{
    display: none !important;
}
.point-cle{
   /* display: flex; */
}



/* flche bouton */
/* Base (ton bouton avec flèche) */
.btn-arrow a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  transition: all 0.25s ease;
}

/* Flèche */
.btn-arrow a::after {
  content: "";
  width: 16px;
  height: 16px;
  display: inline-block;

  background: no-repeat center / contain url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'><path fill='white' d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.7 224H32c-17.7 0-32 14.3-32 32s14.3 32 32 32h306.7L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'/></svg>");

  transition: transform 0.25s ease;
}

/* Hover bouton */
.btn-arrow a:hover {
  transform: translateY(-2px);
  /* box-shadow: 0 10px 25px rgba(0,0,0,0.15); */
}

/* Hover flèche */
.btn-arrow a:hover::after {
  transform: translateX(5px);
}


.btn-arrow-white a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  transition: all 0.25s ease;
}

/* Flèche */
.btn-arrow-white a::after {
  content: "";
  width: 16px;
  height: 16px;
  display: inline-block;

  background: no-repeat center / contain url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'><path fill='black' d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.7 224H32c-17.7 0-32 14.3-32 32s14.3 32 32 32h306.7L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'/></svg>");

  transition: transform 0.25s ease;
}



/* Hover bouton */
.btn-arrow-white a:hover {
  transform: translateY(-2px);
}

/* Hover flèche */
.btn-arrow-white a:hover::after {
  transform: translateX(5px);
}