@import url('https://fonts.googleapis.com/css2?family=Anton&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap');
@import url('https://fonts.googleapis.com/icon?family=Material+Icons');

body {
  background: url('../img/usine_11zon.webp') top center/cover no-repeat fixed !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important;
  position: relative;
}

/* S'assurer que le header est aligné à gauche (pas le contenu) */
#header,
.kany-header,
.kany3d-header {
  margin-left: 0 !important;
  padding-left: 20px !important;
}

/* Vidéo de fond */
#register-background-image {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-width: 100%;
  min-height: 100%;
  max-width: 100%;
  background-size: cover;
  background-position: center 70%;
  background-repeat: no-repeat;
  z-index: -2;
  display: block !important;
}

/* Compatibilité avec l'ancien sélecteur vidéo */
#register-background-video {
  display: none !important;
}

/* ============================================
   PANIER / CHECKOUT (sans vidéo) - Style "Identity"
   ============================================ */
/* sécurité: si un template réintroduit la vidéo, on la cache */
.kany-background-video{
  display: none !important;
  visibility: hidden !important;
}

/* page wrapper */
section#kany-checkout-summary.kany-checkout-summary-page{
  position: relative;
  min-height: 100vh;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding: 20px 16px 40px;
  background: transparent !important;
  background-image: none !important;
}

.kany-cart-widget-container{
  width: 100%;
  display: flex;
  justify-content: center;
}

.kany-cart-widget{
  width: min(980px, 100%);
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 20px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.30);
  padding: 28px 26px;
  color: #1e1e1e;
}

/* Cart natif PrestaShop (dans notre widget) : on garde le style propre */
.kany-cart-widget .cart-overview.js-cart{
  padding: 0;
  margin: 0;
  background: transparent !important;
}
.kany-cart-widget .cart-items{
  list-style: none;
  padding: 0;
  margin: 12px 0 0;
}
.kany-cart-widget .cart-item{
  padding: 14px 14px;
  margin: 10px 0;
  border: 1px solid rgba(0,0,0,0.08);
  background: rgba(255,255,255,0.62);
  border-radius: 18px;
  box-shadow: 0 10px 26px rgba(0,0,0,0.06);
}
.kany-cart-widget .cart-item:last-child{
  margin-bottom: 0;
}

/* Re-layout product line en "carte" */
.kany-cart-widget .product-line-grid{
  display: grid;
  grid-template-columns: 88px 1fr auto;
  gap: 14px;
  align-items: start;
  margin: 0;
}
.kany-cart-widget .product-line-grid-left{
  width: 88px;
  max-width: 88px;
  padding: 0 !important;
}
.kany-cart-widget .product-line-grid-left img{
  width: 88px;
  height: 88px;
  object-fit: cover;
  border-radius: 14px;
  display: block;
}
.kany-cart-widget .product-line-grid-body{
  padding: 0 !important;
  max-width: calc(100% - 200px) !important;
  flex: 0 0 auto !important;
}
.kany-cart-widget .product-line-grid-body .label{
  font-weight: 900;
  color: rgba(0,0,0,0.92);
  text-decoration: none;
}
.kany-cart-widget .product-line-grid-body .label:hover{
  color: #ff9240;
}
.kany-cart-widget .product-line-grid-body .product-price{
  margin-top: 6px;
}
.kany-cart-widget .product-line-grid-right{
  padding: 0 !important;
}
.kany-cart-widget .product-line-grid-right .qty,
.kany-cart-widget .product-line-grid-right .price{
  padding: 0 !important;
}
.kany-cart-widget .product-line-grid-right .product-price strong{
  color: rgba(0,0,0,0.92);
}

/* Input quantité natif (fonctionnel) mais stylé */
.kany-cart-widget .js-cart-line-product-quantity{
  width: 72px;
  height: 36px;
  border-radius: 8px;
  border: 1px solid rgba(0,0,0,0.12);
  background: rgba(255,255,255,0.85);
  text-align: center;
  font-weight: 900;
  color: rgba(0,0,0,0.88);
  outline: none;
  appearance: textfield;
  -moz-appearance: textfield;
  user-select: none !important;
  -webkit-user-select: none !important;
  -moz-user-select: none !important;
  -ms-user-select: none !important;
}
.kany-cart-widget .js-cart-line-product-quantity::-webkit-outer-spin-button,
.kany-cart-widget .js-cart-line-product-quantity::-webkit-inner-spin-button{
  -webkit-appearance: none;
  margin: 0;
}
.kany-cart-widget .js-cart-line-product-quantity:focus{
  border-color: rgba(255, 106, 46, 0.55);
  box-shadow: 0 0 0 4px rgba(255, 146, 64, 0.18);
}

/* Supprimer (natif) : style propre + sous le prix */
.kany-cart-widget .cart-line-product-actions{
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
}
.kany-cart-widget a.remove-from-cart{
  width: 32px;
  height: 32px;
  border-radius: 50%;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  text-decoration: none !important;
  background: rgba(255, 182, 193, 0.3);
  border: 1px solid rgba(255, 182, 193, 0.5);
  color: rgba(0,0,0,0.70) !important;
  transition: transform .15s ease, border-color .15s ease, color .15s ease, background-color .15s ease;
  user-select: none !important;
  -webkit-user-select: none !important;
  -moz-user-select: none !important;
  -ms-user-select: none !important;
  cursor: pointer;
}
.kany-cart-widget a.remove-from-cart .material-icons,
.kany-cart-widget a.remove-from-cart .float-xs-left{
  float: none !important;
  margin: 0 !important;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.kany-cart-widget a.remove-from-cart:hover{
  transform: translateY(-1px);
  border-color: rgba(225, 29, 72, 0.45);
  background-color: rgba(225, 29, 72, 0.08) !important;
  color: #e11d48 !important;
}
.kany-cart-widget a.remove-from-cart .material-icons{
  font-size: 18px;
}

/* Aligner correctement quantité / prix / supprimer à droite */
.kany-cart-widget .product-line-grid-right {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 12px !important;
  justify-content: flex-start !important;
  padding-right: 0 !important;
  margin-right: 0 !important;
  margin-left: auto !important;
  min-width: 200px !important;
}

.kany-cart-widget .product-line-grid-right .row {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 16px !important;
  margin: 0 !important;
  flex-wrap: wrap !important;
}

.kany-cart-widget .product-line-grid-right .row > [class*="col-"] {
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
  padding: 0 !important;
}

.kany-cart-widget .product-line-grid-right .row .hidden-md-up {
  display: none !important;
}

/* Conteneur quantité + prix sur la même ligne */
.kany-cart-widget .product-line-grid-right .row .col-md-10 {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 16px !important;
  justify-content: flex-end !important;
  margin-right: 0 !important;
  padding-right: 0 !important;
}

.kany-cart-widget .product-line-grid-right .row .col-md-10 .row {
  display: flex !important;
  flex-direction: row !important;
  gap: 16px !important;
  align-items: center !important;
}

.kany-cart-widget .product-line-grid-right .row .qty {
  order: 1;
}

.kany-cart-widget .product-line-grid-right .row .price {
  order: 2;
  text-align: right;
}

/* Bouton supprimer sous la quantité (sur mobile: en dessous) */
.kany-cart-widget .product-line-grid-right .row .text-xs-right {
  order: 3;
  width: 100% !important;
  margin-top: 8px !important;
  display: flex !important;
  justify-content: flex-end !important;
  padding-right: 0 !important;
  margin-right: 0 !important;
}

/* Sur desktop, le bouton supprimer doit être sous la ligne quantité/prix */
.kany-cart-widget .product-line-grid-right .row > .col-md-2 {
  order: 3;
  width: 100% !important;
  margin-top: 8px !important;
  padding-right: 0 !important;
  margin-right: 0 !important;
}

/* Responsive: mobile - empiler les éléments */
@media (max-width: 768px) {
  .kany-cart-widget .product-line-grid-right {
    align-items: flex-start !important;
  }
  
  .kany-cart-widget .product-line-grid-right .row {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
  }
  
  .kany-cart-widget .product-line-grid-right .row .col-md-10 {
    width: 100% !important;
  }
  
  .kany-cart-widget .product-line-grid-right .row .col-md-10 .row {
    width: 100% !important;
    justify-content: space-between !important;
  }
  
  .kany-cart-widget .product-line-grid-right .row .text-xs-right {
    width: auto !important;
    margin-top: 0 !important;
  }
}

/* Totaux/actions natifs: enlever style "card" */
.kany-cart-widget .cart-detailed-totals,
.kany-cart-widget .cart-detailed-actions{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin-top: 16px;
}

/* ===== Totaux (2 articles, livraison, total...) ===== */
.kany-cart-widget .cart-detailed-totals .card-block,
.kany-cart-widget .cart-summary-subtotals-container,
.kany-cart-widget .cart-summary-totals{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.kany-cart-widget .cart-summary-line{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  padding: 12px 14px;
  margin: 10px 0;
  border-radius: 16px;
  background: rgba(0,0,0,0.035);
  border: 1px solid rgba(0,0,0,0.06);
}

/* “2 articles” (items-subtotal) a souvent un rendu pill à cause de .label */
.kany-cart-widget .cart-summary-items-subtotal{
  background: rgba(0,0,0,0.035) !important;
  border: 1px solid rgba(0,0,0,0.06) !important;
  border-radius: 16px !important;
  padding: 12px 14px !important;
  margin: 10px 0 12px !important;
}

.kany-cart-widget .cart-summary-line .label,
.kany-cart-widget .cart-summary-items-subtotal .label{
  color: rgba(0,0,0,0.72) !important;
  font-weight: 800 !important;
  float: none !important;
  min-width: 0;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 12px;
}

.kany-cart-widget .cart-summary-line .value,
.kany-cart-widget .cart-summary-items-subtotal .value{
  color: rgba(0,0,0,0.90) !important;
  font-weight: 900 !important;
  float: none !important;
  margin-left: auto;
  white-space: nowrap;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Cas spécial "Livraison" : PrestaShop ajoute un <div><small class="value">...</small></div> */
.kany-cart-widget .cart-summary-line > div{
  flex: 1 1 100%;
  margin-top: 6px;
}
.kany-cart-widget .cart-summary-line > div > small.value{
  display: block;
  float: none !important;
  margin: 0 !important;
  white-space: normal;
  color: rgba(0,0,0,0.62) !important;
  font-weight: 700 !important;
}

.kany-cart-widget .cart-summary-line.cart-total{
  background: rgba(255, 146, 64, 0.10);
  border-color: rgba(255, 146, 64, 0.22);
}
.kany-cart-widget .cart-summary-line.cart-total .label{
  color: rgba(0,0,0,0.78) !important;
  padding-left: 10px !important;
}
.kany-cart-widget .cart-summary-line.cart-total .value{
  color: rgba(0,0,0,0.96) !important;
  font-size: 16px;
}

/* Bouton checkout natif => style KANY */
.kany-cart-widget .cart-detailed-actions .btn.btn-primary{
  color: #ffffff !important;
  background: linear-gradient(135deg, #ff9240, #ff5f2e) !important;
  border: 2px solid transparent !important;
  border-radius: 999px !important;
  padding: 12px 14px !important;
  font-weight: 900 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  box-shadow: 0 12px 30px rgba(255, 146, 64, 0.35) !important;
  min-height: 48px !important;
  height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}
.kany-cart-widget .cart-detailed-actions .btn.btn-primary:hover{
  transform: translateY(-2px);
  filter: brightness(1.03);
  box-shadow: 0 18px 40px rgba(255, 146, 64, 0.45) !important;
}

/* ===== Sélecteur quantité (encore plus clean) ===== */
.kany-cart-widget .js-cart-line-product-quantity{
  width: 84px;
  height: 40px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,0.10);
  background: rgba(255,255,255,0.92);
  font-size: 14px;
}
.kany-cart-widget .js-cart-line-product-quantity:focus{
  border-color: rgba(255, 146, 64, 0.70);
  box-shadow: 0 0 0 5px rgba(255, 146, 64, 0.18);
}

/* Touchspin (quantité) : rester sur la même ligne + style clean */
.kany-cart-widget .input-group.bootstrap-touchspin{
  display: inline-flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  width: auto !important;
  max-width: 100% !important;
}
.kany-cart-widget .input-group.bootstrap-touchspin > .form-control,
.kany-cart-widget .input-group.bootstrap-touchspin > input.form-control{
  flex: 0 0 auto !important;
  width: 84px !important;
}
.kany-cart-widget .input-group.bootstrap-touchspin .input-group-btn-vertical{
  flex: 0 0 auto !important;
  display: inline-flex !important;
  flex-direction: column !important;
  margin-left: 6px !important;
}
.kany-cart-widget .input-group.bootstrap-touchspin .btn.btn-touchspin{
  width: 28px !important;
  height: 20px !important;
  padding: 0 !important;
  border-radius: 8px !important;
  border: 1px solid rgba(0,0,0,0.10) !important;
  background: rgba(255,255,255,0.85) !important;
  box-shadow: none !important;
}
.kany-cart-widget .input-group.bootstrap-touchspin .btn.btn-touchspin:hover{
  border-color: rgba(255, 146, 64, 0.45) !important;
}
.kany-cart-widget .input-group.bootstrap-touchspin .touchspin-up,
.kany-cart-widget .input-group.bootstrap-touchspin .touchspin-down{
  color: rgba(0,0,0,0.70) !important;
}

/* ===== Supprimer (plus joli + lisible) ===== */
.kany-cart-widget a.remove-from-cart{
  border-color: rgba(225, 29, 72, 0.22);
  background: rgba(225, 29, 72, 0.06);
}
.kany-cart-widget a.remove-from-cart::after{
  content: "";
}
.kany-cart-widget a.remove-from-cart:hover{
  border-color: rgba(225, 29, 72, 0.45);
  background: rgba(225, 29, 72, 0.10);
}

/* Texte "Supprimer" dans le lien natif */
.kany-cart-widget a.remove-from-cart .kany-remove-text{
  font-weight: 900;
  font-size: 12px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1;
}

@media (max-width: 768px){
  .kany-cart-widget .product-line-grid{
    grid-template-columns: 72px 1fr;
  }
  .kany-cart-widget .product-line-grid-right{
    grid-column: 1 / -1;
    margin-top: 8px;
  }
  .kany-cart-widget .product-line-grid-left img{
    width: 72px;
    height: 72px;
  }
  .kany-cart-widget a.remove-from-cart::after{
    content: "";
  }
}

/* ============================================
   PAGE COMMANDE (controller=order) - style KANY
   ============================================ */
body.page-order {
  overflow-x: hidden !important;
}

body.page-order section#kany-checkout-summary.kany-checkout-summary-page{
  padding-top: 120px;
}

/* Nettoyer les liens "violets" existants sur page-order */
body.page-order a:not(.btn){
  color: #ff9240 !important;
}
body.page-order a:not(.btn):hover{
  color: #ff6a2e !important;
}

/* Masquer footer/chat sur la page commande (focus checkout) */
body.page-order #footer,
body.page-order footer#footer,
body.page-order footer.page-footer,
body.page-order .page-footer,
body.page-order #chat-bubble,
body.page-order #chat-window{
  display: none !important;
}

/* Checkout steps */
body.page-order .kany-cart-widget .checkout-step{
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-order .kany-cart-widget .checkout-step.-current{
  border: none !important;
  background: transparent !important;
}

body.page-order .kany-cart-widget .checkout-step .step-title{
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.page-order .kany-cart-widget .checkout-step .step-number{
  display: none !important;
  visibility: hidden !important;
}

body.page-order .kany-cart-widget .checkout-step .content{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Labels au-dessus des champs - alignés à gauche */
body.page-order .kany-cart-widget .form-group.row {
  display: flex !important;
  flex-direction: column !important;
  margin-bottom: 20px !important;
  align-items: flex-start !important;
}

body.page-order .kany-cart-widget .form-group.row {
  align-items: center !important;
}

body.page-order .kany-cart-widget .form-group.row > .col-md-3,
body.page-order .kany-cart-widget .form-group.row > label.col-md-3,
body.page-order .kany-cart-widget label:not(.custom-checkbox label):not(.js-terms):not(.condition-label label),
body.page-order .kany-cart-widget .form-control-label {
  width: 100% !important;
  max-width: 95% !important;
  flex: 0 0 auto !important;
  margin-bottom: 8px !important;
  padding: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: left !important;
  display: block !important;
  font-weight: 500 !important;
  color: #000000 !important;
  font-size: 14px !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  opacity: 0.9 !important;
}

body.page-order .kany-cart-widget .form-group.row > .col-md-6,
body.page-order .kany-cart-widget .form-group.row > .js-input-column {
  width: 100% !important;
  max-width: 95% !important;
  flex: 0 0 auto !important;
  padding: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Assurer que tous les champs ont exactement la même largeur */
body.page-order .kany-cart-widget .form-group.row > .col-md-6 .form-control,
body.page-order .kany-cart-widget .form-group.row > .js-input-column .form-control,
body.page-order .kany-cart-widget input.form-control,
body.page-order .kany-cart-widget select.form-control,
body.page-order .kany-cart-widget textarea.form-control {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.page-order .kany-cart-widget input.form-control,
body.page-order .kany-cart-widget select.form-control,
body.page-order .kany-cart-widget textarea.form-control {
  max-width: 100% !important;
}

/* Masquer les messages d'aide et commentaires */
body.page-order .kany-cart-widget .form-group.row > .col-md-3.form-control-comment {
  display: none !important;
}

body.page-order .kany-cart-widget .form-control-comment,
body.page-order .kany-cart-widget .form-text,
body.page-order .kany-cart-widget small.form-text,
body.page-order .kany-cart-widget .help-block,
body.page-order .kany-cart-widget .form-control-feedback {
  display: none !important;
}

/* Champs - Style formulaire de connexion */
body.page-order .kany-cart-widget input.form-control,
body.page-order .kany-cart-widget input[type="text"],
body.page-order .kany-cart-widget input[type="email"],
body.page-order .kany-cart-widget input[type="tel"],
body.page-order .kany-cart-widget select.form-control,
body.page-order .kany-cart-widget select,
body.page-order .kany-cart-widget textarea.form-control {
  width: 100% !important;
  max-width: 100% !important;
  background: #ffffff !important;
  border-radius: 8px !important;
  border: 1px solid #e0e0e0 !important;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06) !important;
  padding: 12px 16px !important;
  transition: all 0.3s ease !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  font-size: 15px !important;
  line-height: 24px !important;
  outline: none !important;
  font-family: 'Inter', sans-serif !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  color: #333 !important;
}

body.page-order .kany-cart-widget textarea.form-control {
  height: auto !important;
  min-height: 48px !important;
  max-height: none !important;
}

body.page-order .kany-cart-widget input.form-control:focus,
body.page-order .kany-cart-widget select.form-control:focus,
body.page-order .kany-cart-widget textarea.form-control:focus,
body.page-order .kany-cart-widget input[type="email"]:focus,
body.page-order .kany-cart-widget input[type="text"]:focus {
  outline: none !important;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06) !important;
  border-color: #e0e0e0 !important;
  background: #ffffff !important;
}

body.page-order .kany-cart-widget input.form-control::placeholder,
body.page-order .kany-cart-widget select.form-control::placeholder,
body.page-order .kany-cart-widget textarea.form-control::placeholder {
  color: #999 !important;
}

/* Style amélioré pour la section adresse */
body.page-order .kany-cart-widget .address-item {
  background: #f8f9fa !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 12px !important;
  padding: 20px !important;
  margin-bottom: 20px !important;
  transition: all 0.3s ease !important;
}

body.page-order .kany-cart-widget .address-item.selected {
  background: #e3f2fd !important;
  border-color: #ff9240 !important;
  box-shadow: 0 4px 12px rgba(255, 146, 64, 0.15) !important;
}

body.page-order .kany-cart-widget .address-item:hover {
  border-color: #ff9240 !important;
  box-shadow: 0 4px 12px rgba(255, 146, 64, 0.1) !important;
}

body.page-order .kany-cart-widget .address-item .radio-block {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
}

body.page-order .kany-cart-widget .address-item .custom-radio {
  margin-top: 4px !important;
  flex-shrink: 0 !important;
}

body.page-order .kany-cart-widget .address-item .address-alias {
  font-weight: 600 !important;
  font-size: 18px !important;
  color: #333 !important;
  margin-bottom: 8px !important;
  display: block !important;
  margin-left: 0 !important;
}

body.page-order .kany-cart-widget .address-item .address {
  color: #666 !important;
  line-height: 1.6 !important;
  font-size: 14px !important;
}

body.page-order .kany-cart-widget .address-item .custom-radio input[type="radio"]:checked + span {
  border-color: #ff9240 !important;
  background-color: #ff9240 !important;
}

body.page-order .kany-cart-widget .address-item .custom-radio input[type="radio"]:checked + span::before {
  background-color: #fff !important;
}

/* Liens "ajouter une nouvelle adresse" et "adresse de facturation différente" en orange */
body.page-order .kany-cart-widget .add-address a,
body.page-order .kany-cart-widget a[data-link-action="different-invoice-address"],
body.page-order .kany-cart-widget p.add-address a,
body.page-order .kany-cart-widget p a[data-link-action="different-invoice-address"] {
  color: #ff9240 !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  transition: color 0.3s ease !important;
}

body.page-order .kany-cart-widget .add-address a:hover,
body.page-order .kany-cart-widget a[data-link-action="different-invoice-address"]:hover,
body.page-order .kany-cart-widget p.add-address a:hover,
body.page-order .kany-cart-widget p a[data-link-action="different-invoice-address"]:hover {
  color: #ff5f2e !important;
  text-decoration: underline !important;
}

/* Liens "Connecté en tant que" et "Se déconnecter" en orange */
body.page-order .kany-cart-widget .identity a,
body.page-order .kany-cart-widget p.identity a,
body.page-order .kany-cart-widget p a[href*="identity"],
body.page-order .kany-cart-widget p a[href*="logout"],
body.page-order .kany-cart-widget p a[href*="action=logout"] {
  color: #ff9240 !important;
  text-decoration: none !important;
}

body.page-order .kany-cart-widget .identity a:hover,
body.page-order .kany-cart-widget p.identity a:hover,
body.page-order .kany-cart-widget p a[href*="identity"]:hover,
body.page-order .kany-cart-widget p a[href*="logout"]:hover,
body.page-order .kany-cart-widget p a[href*="action=logout"]:hover {
  color: #ff5f2e !important;
  text-decoration: underline !important;
}

/* Style amélioré pour la section MODE DE LIVRAISON */
body.page-order .kany-cart-widget .delivery-option {
  background: #ffffff !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 12px !important;
  padding: 16px 20px !important;
  margin-bottom: 16px !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
}

body.page-order .kany-cart-widget .delivery-option:hover {
  border-color: #ff9240 !important;
  box-shadow: 0 4px 12px rgba(255, 146, 64, 0.1) !important;
}

body.page-order .kany-cart-widget .delivery-option input[type="radio"]:checked ~ .delivery-option-2 {
  background: #fff5e6 !important;
}

body.page-order .kany-cart-widget .delivery-option:has(input[type="radio"]:checked),
body.page-order .kany-cart-widget .row.delivery-option:has(input[type="radio"]:checked) {
  background: #fff5e6 !important;
  border-color: #ff9240 !important;
  box-shadow: 0 4px 12px rgba(255, 146, 64, 0.15) !important;
}

body.page-order .kany-cart-widget .delivery-option-2 {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  cursor: pointer !important;
}

body.page-order .kany-cart-widget .carrier-name {
  font-weight: 600 !important;
  font-size: 16px !important;
  color: #333 !important;
  margin-bottom: 4px !important;
}

body.page-order .kany-cart-widget .carrier-delay {
  color: #666 !important;
  font-size: 14px !important;
}

body.page-order .kany-cart-widget .carrier-price {
  font-weight: 600 !important;
  font-size: 16px !important;
  color: #333 !important;
  text-align: right !important;
}

body.page-order .kany-cart-widget .custom-radio input[type="radio"]:checked + span {
  border-color: #ff9240 !important;
  background-color: #ff9240 !important;
}

body.page-order .kany-cart-widget .custom-radio input[type="radio"]:checked + span::before {
  background-color: #fff !important;
}

/* Textarea pour le message */
body.page-order .kany-cart-widget #delivery_message,
body.page-order .kany-cart-widget textarea#delivery_message {
  width: 100% !important;
  background: #ffffff !important;
  border-radius: 8px !important;
  border: 1px solid #e0e0e0 !important;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06) !important;
  padding: 12px 16px !important;
  font-size: 14px !important;
  font-family: 'Inter', sans-serif !important;
  resize: vertical !important;
  min-height: 80px !important;
}

body.page-order .kany-cart-widget #delivery_message:focus,
body.page-order .kany-cart-widget textarea#delivery_message:focus {
  outline: none !important;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06) !important;
  border-color: #e0e0e0 !important;
}

body.page-order .kany-cart-widget #delivery label,
body.page-order .kany-cart-widget label[for="delivery_message"] {
  color: #333 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  margin-bottom: 8px !important;
  display: block !important;
}

/* Style pour le lien des conditions générales de vente */
body.page-order .kany-cart-widget .js-terms a,
body.page-order .kany-cart-widget .condition-label a,
body.page-order .kany-cart-widget .kany-cgv-label a {
  color: #ff9240 !important;
  text-decoration: none !important;
}

body.page-order .kany-cart-widget .js-terms a:hover,
body.page-order .kany-cart-widget .condition-label a:hover,
body.page-order .kany-cart-widget .kany-cgv-label a:hover {
  color: #ff5f2e !important;
  text-decoration: underline !important;
}

/* Boutons */
body.page-order .kany-cart-widget .btn-primary,
body.page-order .kany-cart-widget button.btn-primary,
body.page-order .kany-cart-widget .continue.btn,
body.page-order .kany-cart-widget .btn.btn-primary{
  color: #ffffff !important;
  background: linear-gradient(135deg, #ff9240, #ff5f2e) !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 12px 14px !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  box-shadow: 0 12px 30px rgba(255, 146, 64, 0.35) !important;
}
body.page-order .kany-cart-widget .btn-primary:hover,
body.page-order .kany-cart-widget .btn.btn-primary:hover{
  transform: translateY(-2px);
  filter: brightness(1.03);
  box-shadow: 0 18px 40px rgba(255, 146, 64, 0.45) !important;
}

body.page-order .kany-cart-widget .btn-secondary,
body.page-order .kany-cart-widget .btn-outline,
body.page-order .kany-cart-widget .btn.btn-secondary{
  color: #ff6a2e !important;
  background: rgba(255,255,255,0.65) !important;
  border: 2px solid rgba(255, 106, 46, 0.35) !important;
  border-radius: 999px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

/* Masquer les champs optionnels (password et date de naissance) */
body.page-order .kany-cart-widget .form-informations,
body.page-order .kany-cart-widget .form-informations-title,
body.page-order .kany-cart-widget .form-informations-subtitle,
body.page-order .kany-cart-widget .form-informations-option {
  display: none !important;
}

body.page-order .kany-cart-widget .form-group:has(input[name="password"]),
body.page-order .kany-cart-widget .form-group:has(input[name="birthday"]),
body.page-order .kany-cart-widget .field-password-policy {
  display: none !important;
}

/* Radio/checkbox: plus clean, sans bord gris agressif */
body.page-order .kany-cart-widget .custom-radio label,
body.page-order .kany-cart-widget .custom-checkbox label{
  background: rgba(255,255,255,0.85) !important;
  border: 1px solid rgba(0,0,0,0.10) !important;
  border-radius: 14px !important;
  padding: 10px 12px 10px 50px !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  position: relative !important;
  color: #000000 !important;
}

body.page-order .kany-cart-widget .custom-checkbox label span,
body.page-order .kany-cart-widget .custom-radio label span,
body.page-order .kany-cart-widget .custom-checkbox label em,
body.page-order .kany-cart-widget .custom-radio label em {
  color: #000000 !important;
}

/* Aligner les radio buttons à gauche */
body.page-order .kany-cart-widget .form-group:has(.custom-radio),
body.page-order .kany-cart-widget .form-group:has(input[type="radio"]) {
  align-items: flex-start !important;
}

body.page-order .kany-cart-widget .form-group:has(.custom-radio) > .col-md-6,
body.page-order .kany-cart-widget .form-group:has(input[type="radio"]) > .col-md-6,
body.page-order .kany-cart-widget .form-group:has(.custom-radio) > .js-input-column,
body.page-order .kany-cart-widget .form-group:has(input[type="radio"]) > .js-input-column {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 95% !important;
  width: 95% !important;
  display: flex !important;
  flex-direction: row !important;
  gap: 0 !important;
  justify-content: flex-start !important;
}

body.page-order .kany-cart-widget .radio-inline {
  display: inline-flex !important;
  align-items: center !important;
  margin-right: 8px !important;
  margin-left: 0 !important;
  margin-bottom: 0 !important;
  white-space: nowrap !important;
  padding: 0 !important;
}

body.page-order .kany-cart-widget .custom-radio,
body.page-order .kany-cart-widget .custom-radio-wrapper {
  text-align: left !important;
  display: inline-flex !important;
  align-items: center !important;
}

/* Liens "Commander en tant qu'invité" et "Connexion" en orange */
body.page-order .kany-cart-widget .nav-link,
body.page-order .kany-cart-widget .nav-inline .nav-link {
  color: #ff9240 !important;
  text-decoration: none !important;
}

body.page-order .kany-cart-widget .nav-link:hover,
body.page-order .kany-cart-widget .nav-inline .nav-link:hover {
  color: #ff5f2e !important;
}

/* Lien "Mot de passe oublié ?" sur la page order en orange */
body.page-order .kany-cart-widget .forgot-password a,
body.page-order .kany-cart-widget a[href*="password"],
body.page-order .kany-cart-widget .kany-forgot-password,
body.page-order .kany-cart-widget .login-form .forgot-password a,
body.page-order .kany-cart-widget #checkout-login-form .forgot-password a {
  color: #ff9240 !important;
  text-decoration: none !important;
}

body.page-order .kany-cart-widget .forgot-password a:hover,
body.page-order .kany-cart-widget a[href*="password"]:hover,
body.page-order .kany-cart-widget .kany-forgot-password:hover,
body.page-order .kany-cart-widget .login-form .forgot-password a:hover,
body.page-order .kany-cart-widget #checkout-login-form .forgot-password a:hover {
  color: #ff5f2e !important;
  text-decoration: underline !important;
}

/* Centrer les liens "Commander en tant qu'invité" et "Connexion" au milieu du conteneur */
body.page-order .kany-cart-widget .nav-inline,
body.page-order .kany-cart-widget .nav.nav-inline {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

/* Footer du formulaire visible */
body.page-order .kany-cart-widget .form-footer,
body.page-order .kany-cart-widget footer.form-footer {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin-top: 30px !important;
  clear: both !important;
}

/* Bouton "Suivant" avec le même dégradé que le formulaire de connexion */
body.page-order .kany-cart-widget .kany-btn-next,
body.page-order .kany-cart-widget button.kany-btn-next,
body.page-order .kany-cart-widget .form-footer .kany-btn-next,
body.page-order .kany-cart-widget .form-footer button.kany-btn-next,
body.page-order .kany-cart-widget .continue.btn {
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  border: none !important;
  width: auto !important;
  max-width: 280px !important;
  padding: 14px 40px !important;
  border-radius: 10px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #fff !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  font-family: 'Inter', sans-serif !important;
  box-shadow: 0 4px 12px rgba(244, 162, 97, 0.3) !important;
  margin-top: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.page-order .kany-cart-widget .kany-btn-next:hover,
body.page-order .kany-cart-widget button.kany-btn-next:hover,
body.page-order .kany-cart-widget .continue.btn:hover {
  background: linear-gradient(135deg, #E6914E, #F4CE50) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(244, 162, 97, 0.4) !important;
}

body.page-order .kany-cart-widget .kany-btn-next:active,
body.page-order .kany-cart-widget button.kany-btn-next:active,
body.page-order .kany-cart-widget .continue.btn:active {
  transform: translateY(0) !important;
}

/* Textes des checkboxes en noir */
body.page-order .kany-cart-widget .custom-checkbox label,
body.page-order .kany-cart-widget .condition-label label,
body.page-order .kany-cart-widget .js-terms,
body.page-order .kany-cart-widget .custom-checkbox label:not(span),
body.page-order .kany-cart-widget .custom-checkbox,
body.page-order .kany-cart-widget .condition-label {
  color: #000000 !important;
}

/* Mentions légales en noir */
body.page-order .kany-cart-widget .form-text,
body.page-order .kany-cart-widget small,
body.page-order .kany-cart-widget .help-block {
  color: #000000 !important;
}

body.page-order .kany-cart-widget .custom-checkbox input[type="checkbox"],
body.page-order .kany-cart-widget .custom-radio input[type="radio"] {
  position: absolute !important;
  left: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
}

body.page-order .kany-cart-widget .custom-checkbox label > span:first-of-type,
body.page-order .kany-cart-widget .custom-radio label > span:first-of-type {
  position: absolute !important;
  left: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
}

/* ============================================
   ORDER CONFIRMATION (controller=order-confirmation)
   ============================================ */
body.page-order-confirmation #footer,
body.page-order-confirmation footer#footer,
body.page-order-confirmation footer.page-footer,
body.page-order-confirmation .page-footer,
body.page-order-confirmation #chat-bubble,
body.page-order-confirmation #chat-window,
body.page-order-confirmation nav.breadcrumb,
body.page-order-confirmation .breadcrumb{
  display: none !important;
}

/* Masquer le header par défaut de PrestaShop sur la page de confirmation */
body.page-order-confirmation #header > header:not(.kany3d-header),
body.page-order-confirmation #header > .header-container,
body.page-order-confirmation #header > nav,
body.page-order-confirmation #header > .header-top,
body.page-order-confirmation #header > .header-nav,
body.page-order-confirmation #header > .header-top,
body.page-order-confirmation #header > .header-bottom {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* Masquer le header inclus par défaut */
body.page-order-confirmation #header > *:not(.kany-header):not(.kany3d-header) {
  display: none !important;
}

/* Afficher le header personnalisé sur la page de confirmation */
body.page-order-confirmation #header,
body.page-order-confirmation header.kany-header {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.page-order-confirmation #header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  z-index: 1000 !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-order-confirmation .kany3d-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  z-index: 1000 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 20px 60px 20px 20px !important;
  min-height: 100px !important;
  background: transparent !important;
  background-color: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border: none !important;
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  visibility: visible !important;
}

body.page-order-confirmation .kany3d-header .kany-cart:hover,
body.page-order-confirmation .kany3d-header .kany-account:hover {
  color: #ff9240 !important;
}

body.page-order-confirmation .kany-order-confirmation-page{
  padding-top: 180px;
}

/* Masquer "Produits populaires" (featured products) sur la confirmation */
body.page-order-confirmation section.featured-products,
body.page-order-confirmation .featured-products,
body.page-order-confirmation a.all-product-link{
  display: none !important;
  visibility: hidden !important;
}

.kany-order-confirmation-top{
  margin-bottom: 14px;
}

.kany-order-confirmation-email{
  margin: 0;
  color: rgba(0,0,0,0.72);
  font-weight: 700;
}

.kany-order-confirmation-actions{
  margin-top: 16px;
  display: flex;
  justify-content: center;
}

.kany-order-confirmation-invoice{
  color: #ff6a2e !important;
  font-weight: 900;
  text-decoration: none;
}
.kany-order-confirmation-invoice:hover{
  color: #ff9240 !important;
  text-decoration: underline;
}

.kany-order-confirmation-grid{
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 16px;
  align-items: start;
  margin-top: 14px;
}

/* Centrage global des éléments (suite au masquage du panneau droit) */
body.page-order-confirmation .kany-order-confirmation-widget,
body.page-order-confirmation .kany-order-confirmation-widget .kany-cart-widget-header,
body.page-order-confirmation .kany-order-confirmation-widget .kany-cart-widget-content,
body.page-order-confirmation .kany-order-confirmation-top{
  text-align: center;
}

/* Centrer le titre "Commande confirmée" (car .kany-cart-widget-title est en flex) */
body.page-order-confirmation .kany-order-confirmation-widget .kany-cart-widget-title{
  justify-content: center !important;
  width: 100%;
}

body.page-order-confirmation .kany-order-confirmation-grid{
  grid-template-columns: 1fr !important;
  justify-items: center;
}

body.page-order-confirmation .kany-order-confirmation-left{
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
}

.kany-order-confirmation-left{
  min-width: 0;
}

.kany-order-confirmation-right{
  border: 1px solid rgba(0,0,0,0.08);
  background: rgba(255,255,255,0.62);
  border-radius: 18px;
  box-shadow: 0 10px 26px rgba(0,0,0,0.06);
  padding: 14px 14px;
}

/* Masquer le panneau "Détails de la commande" à droite si demandé */
body.page-order-confirmation .kany-order-confirmation-right{
  display: none !important;
}

.kany-order-confirmation-section-title{
  margin: 0 0 10px;
  font-family: 'Anton', sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 18px;
  color: rgba(0,0,0,0.92);
}

.kany-order-confirmation-details{
  margin: 0;
  padding-left: 18px;
  color: rgba(0,0,0,0.78);
  font-weight: 700;
}
.kany-order-confirmation-details em{
  color: rgba(0,0,0,0.60);
  font-weight: 700;
}

/* Nettoyer le tableau de confirmation (parent classic) dans notre widget */
.kany-order-confirmation-widget .order-confirmation-table{
  background: rgba(255,255,255,0.62);
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 18px;
  box-shadow: 0 10px 26px rgba(0,0,0,0.06);
  padding: 14px 14px;
}

/* Centrer le contenu interne du tableau/sections */
body.page-order-confirmation .kany-order-confirmation-widget #order-items,
body.page-order-confirmation .kany-order-confirmation-widget .order-confirmation-table,
body.page-order-confirmation .kany-order-confirmation-widget .order-confirmation-table table{
  margin-left: auto;
  margin-right: auto;
}

/* Enlever l'en-tête "Articles de la commande / Prix unitaire / Quantité / Total produits" */
body.page-order-confirmation .kany-order-confirmation-widget #order-items > .row{
  display: none !important;
}

body.page-order-confirmation .kany-order-confirmation-widget .order-confirmation-table td{
  text-align: left; /* garde lisible les lignes label/valeur */
}

body.page-order-confirmation .kany-order-confirmation-widget .order-confirmation-table tr td:last-child{
  text-align: right;
}

/* Titre "Order items" + colonnes desktop alignés au centre */
body.page-order-confirmation .kany-order-confirmation-widget #order-items .card-title{
  text-align: center !important;
}
.kany-order-confirmation-widget .order-confirmation-table hr{
  border-color: rgba(0,0,0,0.08);
}
.kany-order-confirmation-widget .order-confirmation-table table{
  width: 100%;
  border-collapse: collapse;
}
.kany-order-confirmation-widget .order-confirmation-table td{
  padding: 10px 0;
  border-bottom: 1px solid rgba(0,0,0,0.06);
  color: rgba(0,0,0,0.78);
  font-weight: 700;
}
.kany-order-confirmation-widget .order-confirmation-table tr.total-value td{
  font-weight: 900;
  color: rgba(0,0,0,0.92);
}
.kany-order-confirmation-widget .order-confirmation-table tr:last-child td{
  border-bottom: none;
}

@media (max-width: 900px){
  .kany-order-confirmation-grid{
    grid-template-columns: 1fr;
  }
}

/* ===== Wizard (frise + 1 étape visible) ===== */
/* IMPORTANT: on ne supprime pas les steps du DOM (sinon checkout peut bug),
   on masque seulement le contenu des steps non courants. */
body.page-order.kany-checkout-wizard .checkout-step .content{
  display: none !important;
}
body.page-order.kany-checkout-wizard .checkout-step.-current .content{
  display: block !important;
}
body.page-order.kany-checkout-wizard .checkout-step.kany-step-active .content{
  display: block !important;
}

.kany-checkout-steps-bar{
  width: 100%;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin: 6px 0 16px;
}


.kany-step{
  appearance: none;
  border: 1px solid rgba(0,0,0,0.10);
  background: rgba(255,255,255,0.75);
  border-radius: 16px;
  padding: 10px 10px;
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
  text-align: left;
}

.kany-step:hover{
  transform: translateY(-1px);
  border-color: rgba(255,146,64,0.30);
}

.kany-step:disabled{
  cursor: not-allowed;
  opacity: 0.55;
  transform: none;
}

.kany-step-num{
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  color: rgba(0,0,0,0.85);
  background: rgba(0,0,0,0.06);
  flex: 0 0 auto;
}

.kany-step-label{
  font-weight: 900;
  letter-spacing: 0.02em;
  color: rgba(0,0,0,0.82);
  font-size: 12px;
  text-transform: uppercase;
  line-height: 1.2;
}

.kany-step.is-current{
  background: rgba(255,146,64,0.12);
  border-color: rgba(255,146,64,0.35);
}

.kany-step.is-current .kany-step-num{
  background: linear-gradient(135deg, #ff9240, #ff5f2e);
  color: #fff;
}

.kany-step.is-complete{
  border-color: rgba(34,197,94,0.25);
  background: rgba(34,197,94,0.05);
}

.kany-step.is-complete .kany-step-num{
  background: rgba(34,197,94,0.14);
  color: rgba(0,0,0,0.85);
}

.kany-step-check{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #22c55e;
  color: #ffffff;
  font-size: 14px;
  font-weight: 900;
  margin-left: auto;
  flex-shrink: 0;
  line-height: 1;
}

@media (max-width: 768px){
  .kany-checkout-steps-bar{
    grid-template-columns: 1fr 1fr;
  }
}

.kany-cart-widget-title{
  font-family: 'Anton', sans-serif !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: clamp(28px, 3.2vw, 42px);
}

.kany-cart-widget-subtitle{
  margin: 8px 0 0;
  color: rgba(0,0,0,0.65);
  font-weight: 600;
}

.kany-cart-product-item{
  display: grid;
  grid-template-columns: 88px 1fr;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(0,0,0,0.08);
  position: relative;
}

.kany-cart-product-item:last-child{
  border-bottom: none;
}

.kany-cart-product-item .cart-product-image img{
  width: 88px;
  height: 88px;
  object-fit: cover;
  border-radius: 14px;
}

.kany-cart-product-item .cart-product-name a{
  color: #1e1e1e;
  font-weight: 800;
  text-decoration: none;
}

.kany-cart-product-item .cart-product-name a:hover{
  color: #ff9240;
}

.kany-cart-product-item .cart-product-meta{
  margin-top: 6px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: rgba(0,0,0,0.75);
  align-items: flex-start;
}

/* Quantité (+ / -) + suppression */
.kany-qty-controls{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-left: 8px;
}

.kany-qty-btn{
  width: 32px;
  height: 32px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none !important;
  background: rgba(255, 255, 255, 0.8);
  border: 1px solid rgba(0,0,0,0.10);
  color: rgba(0,0,0,0.78) !important;
  transition: transform .15s ease, border-color .15s ease, color .15s ease;
}

.kany-qty-btn:hover{
  transform: translateY(-1px);
  border-color: rgba(255, 106, 46, 0.45);
  color: #ff6a2e !important;
}

.kany-qty-input{
  width: 56px;
  height: 32px;
  border-radius: 10px;
  border: 1px solid rgba(0,0,0,0.12);
  background: rgba(255,255,255,0.85);
  text-align: center;
  font-weight: 900;
  color: rgba(0,0,0,0.88);
  outline: none;
}
.kany-qty-input:focus{
  border-color: rgba(255, 106, 46, 0.55);
  box-shadow: 0 0 0 4px rgba(255, 146, 64, 0.18);
}

.cart-product-actions{
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
}

.kany-remove-from-cart{
  position: static;
  width: auto;
  height: 32px;
  border-radius: 999px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  text-decoration: none !important;
  background: rgba(255, 255, 255, 0.8);
  border: 1px solid rgba(0,0,0,0.10);
  color: rgba(0,0,0,0.70) !important;
  transition: transform .15s ease, border-color .15s ease, color .15s ease;
}

.kany-remove-text{
  font-weight: 900;
  font-size: 12px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.kany-remove-from-cart:hover{
  transform: translateY(-1px);
  border-color: rgba(225, 29, 72, 0.45);
  color: #e11d48 !important;
}

.kany-cart-totals{
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid rgba(0,0,0,0.10);
}

.kany-cart-totals .cart-totals-line{
  display: flex;
  justify-content: space-between;
  padding: 6px 0;
  color: rgba(0,0,0,0.78);
}

.kany-cart-totals .cart-totals-final{
  margin-top: 6px;
  padding-top: 10px;
  border-top: 1px dashed rgba(0,0,0,0.18);
  font-weight: 900;
  color: rgba(0,0,0,0.92);
}

.kany-cart-actions{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 18px;
  align-items: center;
}

.kany-cart-actions .cart-detailed-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 !important;
}

.kany-cart-actions .cart-detailed-actions .text-sm-center {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.kany-cart-btn-primary,
.kany-cart-btn-secondary{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 14px;
  border-radius: 999px;
  text-decoration: none !important;
  font-weight: 900;
  font-size: 14px !important;
  line-height: 1.5 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
  min-height: 48px !important;
  height: 48px !important;
  box-sizing: border-box !important;
}

.kany-cart-btn-primary{
  color: #ffffff !important;
  background: linear-gradient(135deg, #ff9240, #ff5f2e) !important;
  box-shadow: 0 12px 30px rgba(255, 146, 64, 0.35);
}

.kany-cart-btn-primary:hover{
  transform: translateY(-2px);
  filter: brightness(1.03);
  box-shadow: 0 18px 40px rgba(255, 146, 64, 0.45);
}

.kany-cart-btn-secondary{
  color: #ff6a2e !important;
  background: rgba(255, 255, 255, 0.65) !important;
  border: 2px solid rgba(255, 106, 46, 0.35);
}

.kany-cart-btn-secondary:hover{
  transform: translateY(-2px);
  border-color: rgba(255, 106, 46, 0.55);
}

@media (max-width: 768px){
  section#kany-checkout-summary.kany-checkout-summary-page{
    padding: 100px 12px 28px;
    background-attachment: scroll !important;
  }
  .kany-cart-actions{
    grid-template-columns: 1fr;
  }
}

#register-video-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(14, 42, 46, 0.25);
  z-index: -1;
  display: block !important;
  visibility: visible !important;
}

/* Désactiver l'image de fond sur la page À propos (cms-id-4)
   pour laisser apparaître le dégradé vert-orange */
.cms-id-4 #register-background-image,
.cms-id-4 #register-video-overlay {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* S'assurer que le contenu est au-dessus de la vidéo */
#wrapper,
#content-wrapper,
main {
  position: relative;
  z-index: 1;
}

/* Fond du footer (site) */
#footer, footer {
  background: transparent !important;
  background-color: transparent !important;
}

/* Connexion / Inscription : pas de fond footer (on veut uniquement img_fondv4.png) */
body.page-authentication #footer,
body.page-authentication footer#footer,
body.page-registration #footer,
body.page-registration footer#footer,
body.registration-page #footer,
body.registration-page footer#footer {
  background: transparent !important;
  background-color: transparent !important;
}

/* Connexion / Inscription : supprimer les fonds du wrapper/container du thème */
body.page-authentication #wrapper,
body.page-authentication #main,
body.page-authentication #content-wrapper,
body.page-authentication .container,
body.page-registration #wrapper,
body.page-registration #main,
body.page-registration #content-wrapper,
body.page-registration .container,
body.registration-page #wrapper,
body.registration-page #main,
body.registration-page #content-wrapper,
body.registration-page .container {
  background: transparent !important;
  background-color: transparent !important;
}

/* Connexion / Inscription : supprimer la "colonne" claire du layout (container/row/paddings) */
body.page-authentication #wrapper .container,
body.page-registration #wrapper .container,
body.registration-page #wrapper .container,
body.page-authentication #wrapper .container-fluid,
body.page-registration #wrapper .container-fluid,
body.registration-page #wrapper .container-fluid {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
}

body.page-authentication #wrapper .row,
body.page-registration #wrapper .row,
body.registration-page #wrapper .row {
  margin: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
}

body.page-authentication #content-wrapper,
body.page-registration #content-wrapper,
body.registration-page #content-wrapper {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  background: transparent !important;
  background-color: transparent !important;
}

/* Connexion / Inscription / Mot de passe : supprimer les fonds des blocs internes PrestaShop (main/header/content) */
body.page-authentication section#main,
body.page-authentication #main,
body.page-authentication .page-header,
body.page-authentication .page-footer,
body.page-authentication .page-content,
body.page-authentication #content.page-content,
body.page-authentication #content.page-content.card,
body.page-authentication #content.page-content.card.card-block,
body.page-authentication .page-content.card,
body.page-authentication .page-content.card.card-block,
body.page-authentication .page-content.card .card-block,
body.page-registration section#main,
body.page-registration #main,
body.page-registration .page-header,
body.page-registration .page-footer,
body.page-registration .page-content,
body.page-registration #content.page-content,
body.page-registration #content.page-content.card,
body.page-registration #content.page-content.card.card-block,
body.page-registration .page-content.card,
body.page-registration .page-content.card.card-block,
body.page-registration .page-content.card .card-block,
body.registration-page section#main,
body.registration-page #main,
body.registration-page .page-header,
body.registration-page .page-footer,
body.registration-page .page-content,
body.registration-page #content.page-content,
body.registration-page #content.page-content.card,
body.registration-page #content.page-content.card.card-block,
body.registration-page .page-content.card,
body.registration-page .page-content.card.card-block,
body.registration-page .page-content.card .card-block,
body.page-password section#main,
body.page-password #main,
body.page-password .page-header,
body.page-password .page-footer,
body.page-password .page-content,
body.page-password #content.page-content,
body.page-password #content.page-content.card,
body.page-password #content.page-content.card.card-block,
body.page-password .page-content.card,
body.page-password .page-content.card.card-block,
body.page-password .page-content.card .card-block,
body.password-page section#main,
body.password-page #main,
body.password-page .page-header,
body.password-page .page-footer,
body.password-page .page-content,
body.password-page #content.page-content,
body.password-page #content.page-content.card,
body.password-page #content.page-content.card.card-block,
body.password-page .page-content.card,
body.password-page .page-content.card.card-block,
body.password-page .page-content.card .card-block {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Page d'inscription : forcer la transparence de TOUS les éléments qui pourraient avoir un fond blanc */
body.page-registration .page-content.card.card-block,
body.registration-page .page-content.card.card-block,
body.page-registration #content.page-content,
body.registration-page #content.page-content {
  position: relative !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-registration #content,
body.page-registration #content-wrapper,
body.page-registration #main,
body.registration-page #content,
body.registration-page #content-wrapper,
body.registration-page #main {
  background: transparent !important;
  background-color: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  min-height: 100vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Supprimer tous les fonds blancs des cards PrestaShop sur la page d'inscription */
body.page-registration .card,
body.registration-page .card,
body.page-registration .card-block,
body.registration-page .card-block,
body.page-registration .page-content.card,
body.registration-page .page-content.card {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Page d'inscription : supprimer TOUS les fonds roses/violets/blancs de TOUS les conteneurs */
body.page-registration #content-wrapper.js-content-wrapper,
body.registration-page #content-wrapper.js-content-wrapper,
body.page-registration #content-wrapper,
body.registration-page #content-wrapper,
body.page-registration section#main,
body.registration-page section#main,
body.page-registration header.page-header,
body.registration-page header.page-header,
body.page-registration .page-header,
body.registration-page .page-header,
body.page-registration .page-header h1,
body.registration-page .page-header h1,
body.page-registration #content.page-content.card.card-block,
body.registration-page #content.page-content.card.card-block,
body.page-registration footer.page-footer,
body.registration-page footer.page-footer,
body.page-registration .page-footer,
body.registration-page .page-footer {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Forcer la transparence complète de tous les wrappers et containers */
body.page-registration .js-content-wrapper,
body.registration-page .js-content-wrapper,
body.page-registration .col-xs-12,
body.registration-page .col-xs-12 {
  background: transparent !important;
  background-color: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-authentication .page-header,
body.page-registration .page-header,
body.registration-page .page-header {
  margin: 0 !important;
  padding: 0 !important;
}

/* Inscription : enlever le fil d’ariane + le titre PrestaShop "Créez votre compte" */
body.page-registration .breadcrumb,
body.registration-page .breadcrumb,
body.page-registration .page-header,
body.registration-page .page-header {
  display: none !important;
}

/* Footer du formulaire d'inscription (ne doit pas être caché) */
body.page-registration footer.form-footer.clearfix,
body.registration-page footer.form-footer.clearfix,
body.page-registration .js-customer-form .form-footer,
body.registration-page .js-customer-form .form-footer {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: transparent !important;
  background-color: transparent !important;
}

body.page-registration .js-customer-form .form-footer button.kany-btn-login,
body.registration-page .js-customer-form .form-footer button.kany-btn-login {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* ========== PAGE DE CONNEXION KANY ========== */

.kany-login-container {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background: transparent !important;
  background-image: none !important;
  background-color: transparent !important;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  font-family: 'Poppins', sans-serif;
  margin: 0 auto;
}

/* Page d'inscription : supprimer le padding du container pour éviter l'espace blanc */
body.page-registration .kany-login-container,
body.registration-page .kany-login-container {
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-image: none !important;
  background-color: transparent !important;
}

.kany-login-overlay {
  display: none;
}

.kany-login-wrapper {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 380px;
  margin: 0 auto;
}

.kany-login-form-container {
  position: relative;
  background: rgba(255, 255, 255, 0.25) !important;
  background-color: rgba(255, 255, 255, 0.25) !important;
  backdrop-filter: blur(15px) !important;
  -webkit-backdrop-filter: blur(15px) !important;
  border-radius: 20px !important;
  padding: 40px 35px;
  width: 100%;
  color: #fff;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1) !important;
  margin: 0 auto;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
}

/* Connexion/Inscription/Mot de passe : éviter de "perdre" le bouton en bas quand la page est en overflow hidden */
body.page-authentication .kany-login-form-container,
body.page-registration .kany-login-form-container,
body.registration-page .kany-login-form-container {
  max-height: calc(100vh - 220px) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
}

/* Page mot de passe : pas de limite de hauteur pour voir tout le contenu */
body.page-password .kany-login-form-container,
body.password-page .kany-login-form-container {
  max-height: none !important;
  overflow-y: visible !important;
  height: auto !important;
}

/* Inscription: formulaire plus large que la connexion (plus de champs) */
body.page-registration .kany-login-wrapper,
body.registration-page .kany-login-wrapper {
  max-width: 520px !important;
}

body.page-authentication .kany-login-form-container .captcha-group,
body.page-authentication .kany-login-form-container .form-footer,
body.page-authentication .kany-login-form-container #submit-login {
  margin-top: 12px !important;
}

.kany-login-title {
  text-align: center;
  margin-bottom: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  font-size: 2rem;
  color: #fff;
}

.kany-login-subtitle {
  text-align: center;
  font-size: 0.9rem;
  opacity: 0.8;
  margin-bottom: 30px;
  color: #fff;
}

.kany-form-group {
  margin-bottom: 20px;
}

.kany-form-group .form-group.row {
  margin-bottom: 0;
  display: block;
}

.kany-form-group .form-group.row > label,
.kany-form-group .form-group.row > .col-md-3,
.kany-form-group .form-group.row > .col-md-6,
.kany-form-group .form-group.row > .col-md-9 {
  display: block;
  width: 100%;
  float: none;
  padding: 0;
}

.kany-input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

.kany-input-wrapper .kany-form-input {
  flex: 1;
  padding-right: 80px;
}

.kany-password-toggle {
  position: absolute;
  right: 8px;
  background: rgba(255, 255, 255, 0.3);
  border: none;
  border-radius: 6px;
  padding: 6px 12px;
  font-size: 0.8rem;
  color: #333;
  cursor: pointer;
  font-family: 'Poppins', sans-serif;
  transition: background 0.3s ease;
}

.kany-password-toggle:hover {
  background: rgba(255, 255, 255, 0.5);
}

/* Styles pour le bouton Show/Hide du mot de passe PrestaShop */
.kany-login-form-container .input-group-btn button[data-action="show-password"],
.kany-login-form-container .input-group-btn .btn[data-action="show-password"] {
  background: rgba(255, 255, 255, 0.3);
  border: none;
  border-radius: 6px;
  padding: 6px 12px;
  font-size: 0.8rem;
  color: #333;
  cursor: pointer;
  font-family: 'Poppins', sans-serif;
  transition: background 0.3s ease;
  margin-left: 8px;
}

.kany-login-form-container .input-group-btn button[data-action="show-password"]:hover,
.kany-login-form-container .input-group-btn .btn[data-action="show-password"]:hover {
  background: rgba(255, 255, 255, 0.5);
}

.kany-login-form-container .input-group {
  display: flex;
  align-items: center;
}

.kany-login-form-container .input-group .form-control {
  flex: 1;
}

.kany-field-error {
  margin-top: 8px;
}

.kany-field-error .alert-danger {
  background: rgba(255, 0, 0, 0.2);
  color: #fff;
  padding: 8px 12px;
  border-radius: 8px;
  font-size: 0.8rem;
  border: none;
  margin: 0;
}

.kany-form-group label,
.kany-form-group .form-group-label,
.kany-form-group .form-label {
  display: block;
  font-size: 0.85rem;
  margin-bottom: 6px;
  opacity: 0.9;
  color: #fff;
  font-weight: 400;
}

.kany-form-group input[type="email"],
.kany-form-group input[type="password"],
.kany-form-group input[type="text"],
.kany-form-group .form-control,
.kany-form-group input.form-control {
  width: 100%;
  padding: 12px 14px;
  border-radius: 10px;
  border: none;
  outline: none;
  background: rgba(255,255,255,0.85);
  color: #333;
  font-size: 0.95rem;
  font-family: 'Poppins', sans-serif;
  box-sizing: border-box;
}

.kany-form-group input::placeholder {
  color: #999;
}

/* ========== FORMULAIRE D'INSCRIPTION : Appliquer le même style que la connexion ========== */

/* Styles pour les champs du formulaire d'inscription (même style que connexion) */
body.page-registration .register-form .form-group.row,
body.registration-page .register-form .form-group.row,
body.page-identity .js-customer-form .form-group.row,
body.identity-page .js-customer-form .form-group.row,
body.page-registration .js-customer-form .form-group.row,
body.registration-page .js-customer-form .form-group.row {
  margin-bottom: 28px;
  display: block;
}

body.page-registration .register-form .form-group.row > label,
body.registration-page .register-form .form-group.row > label,
body.page-registration .js-customer-form .form-group.row > label,
body.registration-page .js-customer-form .form-group.row > label,
body.page-registration .register-form .form-group.row > .col-md-3,
body.registration-page .register-form .form-group.row > .col-md-3,
body.page-identity .js-customer-form .form-group.row > label,
body.identity-page .js-customer-form .form-group.row > label,
body.page-identity .js-customer-form .form-group.row > .col-md-3,
body.identity-page .js-customer-form .form-group.row > .col-md-3,
body.page-registration .js-customer-form .form-group.row > .col-md-3,
body.registration-page .js-customer-form .form-group.row > .col-md-3 {
  display: block;
  width: 100%;
  float: none;
  padding: 0;
  font-size: 0.85rem;
  margin-bottom: 6px;
  opacity: 0.9;
  color: #fff;
  font-weight: 400;
  font-family: 'Poppins', sans-serif;
  text-align: left !important;
}

/* Aligner tous les labels à gauche */
body.page-registration .register-form .form-control-label,
body.registration-page .register-form .form-control-label,
body.page-registration .js-customer-form .form-control-label,
body.registration-page .js-customer-form .form-control-label,
body.page-registration .register-form label.form-control-label,
body.registration-page .register-form label.form-control-label,
body.page-registration .js-customer-form label.form-control-label,
body.registration-page .js-customer-form label.form-control-label {
  text-align: left !important;
}

body.page-registration .register-form .form-group.row > .col-md-6,
body.registration-page .register-form .form-group.row > .col-md-6,
body.page-registration .js-customer-form .form-group.row > .col-md-6,
body.registration-page .js-customer-form .form-group.row > .col-md-6,
body.page-registration .register-form .form-group.row > .col-md-9,
body.registration-page .register-form .form-group.row > .col-md-9,
body.page-identity .js-customer-form .form-group.row > .col-md-6,
body.identity-page .js-customer-form .form-group.row > .col-md-6,
body.page-identity .js-customer-form .form-group.row > .col-md-9,
body.identity-page .js-customer-form .form-group.row > .col-md-9,
body.page-registration .js-customer-form .form-group.row > .col-md-9,
body.registration-page .js-customer-form .form-group.row > .col-md-9 {
  display: block;
  width: 100%;
  float: none;
  padding: 0;
}

/* Styles pour les inputs du formulaire d'inscription */
body.page-registration .register-form input[type="text"],
body.page-registration .register-form input[type="email"],
body.page-registration .register-form input[type="password"],
body.page-registration .register-form input[type="date"],
body.page-registration .register-form .form-control,
body.registration-page .register-form input[type="text"],
body.registration-page .register-form input[type="email"],
body.registration-page .register-form input[type="password"],
body.registration-page .register-form input[type="date"],
body.registration-page .register-form .form-control,
body.page-registration .js-customer-form input[type="text"],
body.page-registration .js-customer-form input[type="email"],
body.page-registration .js-customer-form input[type="password"],
body.page-registration .js-customer-form input[type="date"],
body.page-registration .js-customer-form .form-control,
body.registration-page .js-customer-form input[type="text"],
body.registration-page .js-customer-form input[type="email"],
body.registration-page .js-customer-form input[type="password"],
body.registration-page .js-customer-form input[type="date"],
body.registration-page .js-customer-form .form-control {
  width: 100%;
  padding: 12px 14px;
  border-radius: 10px;
  border: none;
  outline: none;
  background: rgba(255, 255, 255, 0.85);
  color: #333;
  font-size: 0.95rem;
  font-family: 'Poppins', sans-serif;
  box-sizing: border-box;
}

/* Inscription : enlever tout contour violet au focus */
body.page-registration .js-customer-form input:focus,
body.page-registration .js-customer-form input:focus-visible,
body.page-registration .js-customer-form select:focus,
body.page-registration .js-customer-form select:focus-visible,
body.page-registration .js-customer-form textarea:focus,
body.page-registration .js-customer-form textarea:focus-visible,
body.page-registration .js-customer-form .form-control:focus,
body.page-registration .js-customer-form .form-control:focus-visible,
body.registration-page .js-customer-form input:focus,
body.registration-page .js-customer-form input:focus-visible,
body.registration-page .js-customer-form select:focus,
body.registration-page .js-customer-form select:focus-visible,
body.registration-page .js-customer-form textarea:focus,
body.registration-page .js-customer-form textarea:focus-visible,
body.registration-page .js-customer-form .form-control:focus,
body.registration-page .js-customer-form .form-control:focus-visible {
  border-color: #ffffff !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Identity : mêmes inputs que inscription */
body.page-identity .js-customer-form input[type="text"],
body.page-identity .js-customer-form input[type="email"],
body.page-identity .js-customer-form input[type="password"],
body.page-identity .js-customer-form input[type="date"],
body.page-identity .js-customer-form .form-control,
body.identity-page .js-customer-form input[type="text"],
body.identity-page .js-customer-form input[type="email"],
body.identity-page .js-customer-form input[type="password"],
body.identity-page .js-customer-form input[type="date"],
body.identity-page .js-customer-form .form-control {
  width: 100%;
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid #ffffff !important;
  outline: none;
  background: rgba(255, 255, 255, 0.85);
  color: #333;
  font-size: 0.95rem;
  font-family: 'Poppins', sans-serif;
  box-sizing: border-box;
}

body.page-registration .register-form input::placeholder,
body.registration-page .register-form input::placeholder,
body.page-registration .js-customer-form input::placeholder,
body.registration-page .js-customer-form input::placeholder {
  color: #999;
}

/* Styles pour le wrapper du mot de passe avec le bouton "Afficher" à l'intérieur - Même style que la page de connexion */
body.page-registration .register-form .input-group,
body.registration-page .register-form .input-group,
body.page-registration .js-customer-form .input-group,
body.registration-page .js-customer-form .input-group {
  position: relative;
  display: flex;
  align-items: center;
}

body.page-identity .js-customer-form .input-group,
body.identity-page .js-customer-form .input-group {
  position: relative;
  display: flex;
  align-items: center;
}

body.page-registration .register-form .input-group .form-control,
body.registration-page .register-form .input-group .form-control,
body.page-registration .js-customer-form .input-group .form-control,
body.registration-page .js-customer-form .input-group .form-control {
  flex: 1;
  padding-right: 80px;
}

body.page-identity .js-customer-form .input-group .form-control,
body.identity-page .js-customer-form .input-group .form-control {
  flex: 1;
  padding-right: 80px;
}

/* Styles pour le bouton "Afficher" du mot de passe dans le formulaire d'inscription - EXACTEMENT comme sur la page de connexion */
body.page-registration .register-form .input-group-btn,
body.registration-page .register-form .input-group-btn,
body.page-registration .js-customer-form .input-group-btn,
body.registration-page .js-customer-form .input-group-btn {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}

body.page-identity .js-customer-form .input-group-btn,
body.identity-page .js-customer-form .input-group-btn {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}

/* Identity : styles pour les boutons "Afficher" - enlever le violet */
body.page-identity .js-customer-form .input-group-btn button[data-action="show-password"],
body.page-identity .js-customer-form .input-group-btn .btn[data-action="show-password"],
body.identity-page .js-customer-form .input-group-btn button[data-action="show-password"],
body.identity-page .js-customer-form .input-group-btn .btn[data-action="show-password"] {
  background: rgba(255, 255, 255, 0.3) !important;
  background-color: rgba(255, 255, 255, 0.3) !important;
  border: none !important;
  border-color: transparent !important;
  outline: none !important;
  border-radius: 6px !important;
  padding: 6px 12px !important;
  font-size: 0.8rem !important;
  color: #333 !important;
  cursor: pointer;
  font-family: 'Poppins', sans-serif;
  transition: background 0.3s ease;
  margin: 0;
  box-shadow: none !important;
  white-space: nowrap;
}

body.page-identity .js-customer-form .input-group-btn button[data-action="show-password"]:hover,
body.page-identity .js-customer-form .input-group-btn .btn[data-action="show-password"]:hover,
body.page-identity .js-customer-form .input-group-btn button[data-action="show-password"]:focus,
body.page-identity .js-customer-form .input-group-btn .btn[data-action="show-password"]:focus,
body.identity-page .js-customer-form .input-group-btn button[data-action="show-password"]:hover,
body.identity-page .js-customer-form .input-group-btn .btn[data-action="show-password"]:hover,
body.identity-page .js-customer-form .input-group-btn button[data-action="show-password"]:focus,
body.identity-page .js-customer-form .input-group-btn .btn[data-action="show-password"]:focus {
  background: rgba(255, 255, 255, 0.5) !important;
  background-color: rgba(255, 255, 255, 0.5) !important;
  border: none !important;
  border-color: transparent !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Identity : enlever le violet des inputs password au focus */
body.page-identity .js-customer-form input[type="password"]:focus,
body.identity-page .js-customer-form input[type="password"]:focus {
  border-color: #ffffff !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Identity : bordures blanches pour tous les inputs au focus */
body.page-identity .js-customer-form input:focus,
body.identity-page .js-customer-form input:focus,
body.page-identity .js-customer-form .form-control:focus,
body.identity-page .js-customer-form .form-control:focus {
  border-color: #ffffff !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Identity : styles pour les checkboxes (conditions générales) - VISIBLES */
body.page-identity .js-customer-form .custom-checkbox,
body.identity-page .js-customer-form .custom-checkbox,
body#identity .js-customer-form .custom-checkbox {
  color: #fff;
  opacity: 0.9;
  font-size: 0.85rem;
  font-family: 'Poppins', sans-serif;
  margin-top: 12px;
}

body.page-identity .js-customer-form .custom-checkbox em,
body.identity-page .js-customer-form .custom-checkbox em,
body#identity .js-customer-form .custom-checkbox em {
  font-size: 0.8rem;
  opacity: 0.8;
  display: block;
  margin-top: 4px;
}

/* Identity : bordures blanches pour les checkboxes */
body.page-identity .js-customer-form .custom-checkbox input[type="checkbox"],
body.identity-page .js-customer-form .custom-checkbox input[type="checkbox"],
body#identity .js-customer-form .custom-checkbox input[type="checkbox"] {
  border: 1px solid #ffffff !important;
  outline: none !important;
  box-shadow: none !important;
}

body.page-identity .js-customer-form .custom-checkbox input[type="checkbox"]:focus,
body.identity-page .js-customer-form .custom-checkbox input[type="checkbox"]:focus,
body#identity .js-customer-form .custom-checkbox input[type="checkbox"]:focus {
  border-color: #ffffff !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Identity : bordures blanches pour les radio buttons */
body.page-identity .js-customer-form .radio-inline input[type="radio"],
body.identity-page .js-customer-form .radio-inline input[type="radio"],
body#identity .js-customer-form .radio-inline input[type="radio"] {
  border: 1px solid #ffffff !important;
  outline: none !important;
  box-shadow: none !important;
}

body.page-identity .js-customer-form .radio-inline input[type="radio"]:focus,
body.identity-page .js-customer-form .radio-inline input[type="radio"]:focus,
body#identity .js-customer-form .radio-inline input[type="radio"]:focus {
  border-color: #ffffff !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Identity : Style amélioré pour le bandeau de succès */
body.page-identity #notifications,
body.identity-page #notifications,
body#identity #notifications {
  position: fixed !important;
  top: 140px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 9999 !important;
  width: 90% !important;
  max-width: 520px !important;
  animation: slideDown 0.3s ease-out !important;
}

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateX(-50%) translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
  }
}

body.page-identity #notifications .alert-success,
body.identity-page #notifications .alert-success,
body#identity #notifications .alert-success {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 16px 20px !important;
  box-shadow: 0 4px 20px rgba(16, 185, 129, 0.4) !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 500 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

body.page-identity #notifications .alert-success::before,
body.identity-page #notifications .alert-success::before,
body#identity #notifications .alert-success::before {
  content: '✓' !important;
  display: inline-block !important;
  width: 24px !important;
  height: 24px !important;
  background: rgba(255, 255, 255, 0.3) !important;
  border-radius: 50% !important;
  text-align: center !important;
  line-height: 24px !important;
  font-size: 16px !important;
  font-weight: bold !important;
  flex-shrink: 0 !important;
}

body.page-identity #notifications .alert-success ul,
body.identity-page #notifications .alert-success ul,
body#identity #notifications .alert-success ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.page-identity #notifications .alert-success li,
body.identity-page #notifications .alert-success li,
body#identity #notifications .alert-success li {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.5 !important;
}

/* Identity : Bouton "Revenir à mon compte" - Même couleur que "Enregistrer" mais taille d'avant */
body.page-identity .kany-back-to-account,
body.identity-page .kany-back-to-account,
body#identity .kany-back-to-account {
  display: inline-block;
  margin-bottom: 20px;
  padding: 10px 16px;
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  color: #ffffff;
  text-decoration: none;
  border-radius: 8px;
  font-family: 'Poppins', sans-serif;
  font-size: 0.9rem;
  font-weight: 500;
  transition: all 0.3s ease;
  border: none;
}

body.page-identity .kany-back-to-account:hover,
body.identity-page .kany-back-to-account:hover,
body#identity .kany-back-to-account:hover {
  color: #ffffff;
  text-decoration: none;
  transform: translateX(-3px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

body.page-registration .register-form .input-group-btn button[data-action="show-password"],
body.page-registration .register-form .input-group-btn .btn[data-action="show-password"],
body.registration-page .register-form .input-group-btn button[data-action="show-password"],
body.registration-page .register-form .input-group-btn .btn[data-action="show-password"],
body.page-registration .js-customer-form .input-group-btn button[data-action="show-password"],
body.page-registration .js-customer-form .input-group-btn .btn[data-action="show-password"],
body.registration-page .js-customer-form .input-group-btn button[data-action="show-password"],
body.registration-page .js-customer-form .input-group-btn .btn[data-action="show-password"] {
  background: rgba(255, 255, 255, 0.3) !important;
  background-color: rgba(255, 255, 255, 0.3) !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 6px 12px !important;
  font-size: 0.8rem !important;
  color: #333 !important;
  cursor: pointer;
  font-family: 'Poppins', sans-serif;
  transition: background 0.3s ease;
  margin: 0;
  box-shadow: none !important;
  white-space: nowrap;
  text-transform: none !important;
  letter-spacing: normal !important;
}

body.page-registration .register-form .input-group-btn button[data-action="show-password"]:hover,
body.page-registration .register-form .input-group-btn .btn[data-action="show-password"]:hover,
body.registration-page .register-form .input-group-btn button[data-action="show-password"]:hover,
body.registration-page .register-form .input-group-btn .btn[data-action="show-password"]:hover,
body.page-registration .js-customer-form .input-group-btn button[data-action="show-password"]:hover,
body.page-registration .js-customer-form .input-group-btn .btn[data-action="show-password"]:hover,
body.registration-page .js-customer-form .input-group-btn button[data-action="show-password"]:hover,
body.registration-page .js-customer-form .input-group-btn .btn[data-action="show-password"]:hover {
  background: rgba(255, 255, 255, 0.5) !important;
  background-color: rgba(255, 255, 255, 0.5) !important;
}

/* Styles pour les textes d'aide sous les champs - Masquer les messages "Seules les lettres..." */
body.page-registration .register-form .form-control-comment,
body.registration-page .register-form .form-control-comment,
body.page-registration .js-customer-form .form-control-comment,
body.registration-page .js-customer-form .form-control-comment,
body.page-identity .js-customer-form .form-control-comment,
body.identity-page .js-customer-form .form-control-comment,
body#identity .js-customer-form .form-control-comment {
  display: none !important;
}

/* Masquer l'indicateur de force du mot de passe */
body.page-registration .register-form .password-strength-feedback,
body.registration-page .register-form .password-strength-feedback,
body.page-registration .js-customer-form .password-strength-feedback,
body.registration-page .js-customer-form .password-strength-feedback,
body.page-registration .register-form .password-requirements,
body.registration-page .register-form .password-requirements,
body.page-registration .js-customer-form .password-requirements,
body.registration-page .js-customer-form .password-requirements,
body.page-registration .register-form .progress-container,
body.registration-page .register-form .progress-container,
body.page-registration .js-customer-form .progress-container,
body.registration-page .js-customer-form .progress-container,
body.page-identity .js-customer-form .password-strength-feedback,
body.identity-page .js-customer-form .password-strength-feedback,
body#identity .js-customer-form .password-strength-feedback,
body.page-identity .js-customer-form .password-requirements,
body.identity-page .js-customer-form .password-requirements,
body#identity .js-customer-form .password-requirements,
body.page-identity .js-customer-form .progress-container,
body.identity-page .js-customer-form .progress-container,
body#identity .js-customer-form .progress-container,
body.page-identity .js-customer-form .password-strength-text,
body.identity-page .js-customer-form .password-strength-text,
body#identity .js-customer-form .password-strength-text {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Styles pour les radio buttons (Titre M./Mme) */
body.page-registration .register-form .radio-inline,
body.registration-page .register-form .radio-inline,
body.page-registration .js-customer-form .radio-inline,
body.registration-page .js-customer-form .radio-inline {
  color: #fff;
  opacity: 0.9;
  font-size: 0.9rem;
  font-family: 'Poppins', sans-serif;
  margin-right: 15px;
}

body.page-registration .register-form .radio-inline input[type="radio"],
body.registration-page .register-form .radio-inline input[type="radio"],
body.page-registration .js-customer-form .radio-inline input[type="radio"],
body.registration-page .js-customer-form .radio-inline input[type="radio"] {
  margin-right: 5px;
}

/* Styles pour les checkboxes (Conditions générales) */
body.page-registration .register-form .custom-checkbox,
body.registration-page .register-form .custom-checkbox,
body.page-registration .js-customer-form .custom-checkbox,
body.registration-page .js-customer-form .custom-checkbox {
  color: #fff;
  opacity: 0.9;
  font-size: 0.85rem;
  font-family: 'Poppins', sans-serif;
  margin-top: 12px;
}

body.page-registration .register-form .custom-checkbox label,
body.registration-page .register-form .custom-checkbox label,
body.page-registration .js-customer-form .custom-checkbox label,
body.registration-page .js-customer-form .custom-checkbox label {
  color: #fff !important;
}

body.page-registration .register-form .custom-checkbox input[type="checkbox"],
body.registration-page .register-form .custom-checkbox input[type="checkbox"],
body.page-registration .js-customer-form .custom-checkbox input[type="checkbox"],
body.registration-page .js-customer-form .custom-checkbox input[type="checkbox"] {
  border: 1px solid #ffffff !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Espacement supplémentaire pour le form-group contenant la checkbox Conditions générales */
body.page-registration .register-form .form-group.row:has(.custom-checkbox),
body.registration-page .register-form .form-group.row:has(.custom-checkbox),
body.page-registration .js-customer-form .form-group.row:has(.custom-checkbox),
body.registration-page .js-customer-form .form-group.row:has(.custom-checkbox) {
  margin-top: 20px;
}

body.page-registration .register-form .custom-checkbox em,
body.registration-page .register-form .custom-checkbox em,
body.page-registration .js-customer-form .custom-checkbox em,
body.registration-page .js-customer-form .custom-checkbox em {
  font-size: 0.8rem;
  opacity: 0.8;
  display: block;
  margin-top: 4px;
}

/* Styles pour les labels "required" - Astérisques supprimés */
body.page-registration .register-form .form-control-label.required::after,
body.registration-page .register-form .form-control-label.required::after,
body.page-registration .js-customer-form .form-control-label.required::after,
body.registration-page .js-customer-form .form-control-label.required::after {
  content: "" !important;
  display: none !important;
}


/* Masquer les colonnes Bootstrap inutiles */
body.page-registration .register-form .form-group.row > .col-md-3.form-control-comment,
body.registration-page .register-form .form-group.row > .col-md-3.form-control-comment,
body.page-registration .js-customer-form .form-group.row > .col-md-3.form-control-comment,
body.registration-page .js-customer-form .form-group.row > .col-md-3.form-control-comment,
body.page-identity .js-customer-form .form-group.row > .col-md-3.form-control-comment,
body.identity-page .js-customer-form .form-group.row > .col-md-3.form-control-comment,
body#identity .js-customer-form .form-group.row > .col-md-3.form-control-comment {
  display: none !important;
}

.kany-form-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.8rem;
  margin-bottom: 25px;
  flex-wrap: wrap;
  gap: 10px;
}

.kany-remember-me {
  color: #fff;
  opacity: 0.85;
  font-size: 0.8rem;
  display: flex;
  align-items: center;
  gap: 5px;
  cursor: pointer;
}

.kany-remember-me input[type="checkbox"] {
  width: auto;
  margin: 0;
  cursor: pointer;
}

.kany-forgot-password,
a.kany-forgot-password,
.kany-login-form-container .kany-forgot-password,
.login-form .kany-forgot-password,
.forgot-password a,
.forgot-password a.kany-forgot-password {
  color: #ff9240 !important;
  text-decoration: none !important;
  opacity: 1 !important;
  font-size: 0.8rem !important;
  transition: color 0.3s ease !important;
}

.kany-forgot-password:hover,
a.kany-forgot-password:hover,
.kany-login-form-container .kany-forgot-password:hover,
.login-form .kany-forgot-password:hover,
.forgot-password a:hover,
.forgot-password a.kany-forgot-password:hover {
  color: #ff5f2e !important;
  text-decoration: underline !important;
  opacity: 1 !important;
}

.kany-btn-login,
.kany-register-button-wrapper .kany-btn-login,
.kany-register-button-wrapper button[type="submit"] {
  width: 100% !important;
  padding: 12px !important;
  border: none !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  color: #fff !important;
  font-weight: 600 !important;
  font-size: 0.95rem !important;
  cursor: pointer !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
  font-family: 'Poppins', sans-serif !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin-top: 20px !important;
}

/* (Registration) le bouton est maintenant rendu dans `customer/_partials/customer-form.tpl` avec la classe `kany-btn-login` */

.kany-btn-login:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.25);
}

.kany-login-button-wrapper {
  margin-top: 25px !important;
  margin-bottom: 20px !important;
  width: 100% !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.kany-login-button-wrapper .kany-btn-login {
  width: 100% !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.kany-register-link {
  text-align: center;
  margin-top: 20px;
  font-size: 0.85rem;
  opacity: 0.9;
  color: #fff;
}

.kany-register-link a {
  color: #f9c74f;
  text-decoration: none;
  font-weight: 600;
}

.kany-register-link a:hover {
  text-decoration: underline;
}

/* Styles pour le captcha dans le formulaire de connexion */
.kany-login-form-container .captcha-group {
  margin-top: 20px;
  margin-bottom: 20px;
}

.kany-login-form-container .captcha-group label {
  display: block;
  margin-bottom: 0.75rem;
  font-weight: 600;
  color: #fff;
  font-size: 0.85rem;
  text-align: left;
  opacity: 0.9;
}

.kany-login-form-container .captcha-container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 100%;
  width: 100%;
}

.kany-login-form-container .captcha-image-wrapper {
  position: relative;
  display: inline-block;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-radius: 8px;
  padding: 10px;
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease;
  max-width: 100%;
}

.kany-login-form-container .captcha-image-wrapper:hover {
  border-color: rgba(249, 199, 79, 0.6);
  box-shadow: 0 4px 12px rgba(249, 199, 79, 0.2);
}

.kany-login-form-container .captcha-image {
  display: block;
  max-width: 100%;
  height: auto;
  cursor: pointer;
  border-radius: 4px;
  transition: opacity 0.3s ease;
}

.kany-login-form-container .captcha-input {
  width: 100%;
  padding: 12px 16px;
  font-size: 0.95rem;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-radius: 10px;
  transition: all 0.3s ease;
  background: rgba(255,255,255,0.85);
  color: #333;
  font-family: 'Poppins', sans-serif;
}

.kany-login-form-container .captcha-input:focus {
  outline: none;
  border-color: #f9c74f;
  box-shadow: 0 0 0 3px rgba(249, 199, 79, 0.2);
}

/* Masquer les éléments par défaut de PrestaShop */
.kany-login-container #header,
.kany-login-container #footer,
.kany-login-container .breadcrumb {
  display: none !important;
}

.kany-login-container #wrapper,
body.page-authentication #wrapper,
body.page-password #wrapper,
body.password-page #wrapper {
  background: transparent !important;
  background-color: transparent !important;
  min-height: 100vh !important;
  height: 100vh !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 0 !important;
  margin: 0 !important;
}

.kany-login-container #content-wrapper,
body.page-authentication #content-wrapper,
body.page-password #content-wrapper,
body.password-page #content-wrapper {
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  background-color: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  min-height: 100vh !important;
  height: 100vh !important;
}

.kany-login-container #main,
body.page-authentication #main,
body.page-password #main,
body.password-page #main {
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  min-height: 100vh !important;
  height: 100vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
}

.kany-login-container .page-content,
body.page-password .page-content,
body.password-page .page-content {
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  width: 100% !important;
  height: 100vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Centrer le contenu de la page - Page d'authentification et Mot de passe */
body.page-authentication .page-content.card,
body.page-authentication #content.page-content,
body.page-authentication .page-content.card.card-block,
body.page-authentication #content,
body.page-password .page-content.card,
body.page-password #content.page-content,
body.page-password .page-content.card.card-block,
body.page-password #content,
body.password-page .page-content.card,
body.password-page #content.page-content,
body.password-page .page-content.card.card-block,
body.password-page #content {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 100vh !important;
  height: 100vh !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  position: relative !important;
}

body.page-authentication .page-content.card .card-block,
body.page-authentication .card-block,
body.page-password .page-content.card .card-block,
body.page-password .card-block,
body.password-page .page-content.card .card-block,
body.password-page .card-block {
  padding: 0 !important;
  width: 100% !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* Supprimer tous les fonds blancs autour du formulaire - Page d'authentification et Mot de passe */
body.page-authentication #content,
body.page-authentication #content-wrapper,
body.page-authentication #main,
body.page-authentication .container,
body.page-password #content,
body.page-password #content-wrapper,
body.page-password #main,
body.page-password .container,
body.password-page #content,
body.password-page #content-wrapper,
body.password-page #main,
body.password-page .container {
  background: transparent !important;
  background-color: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  min-height: 100vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Supprimer le fond rose sur la page de connexion */
body.page-authentication,
body.page-authentication #wrapper,
body.page-authentication #main,
body.page-authentication .kany-login-container {
  background: transparent !important;
  background-color: transparent !important;
}

body.page-authentication .kany-login-container,
body.page-registration .kany-login-container,
body.registration-page .kany-login-container,
body.page-password .kany-login-container,
body.password-page .kany-login-container {
  background: transparent !important;
  background-image: none !important;
  background-color: transparent !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100vh !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Page inscription : réafficher le formulaire complet */
body.page-registration .kany-login-container,
body.registration-page .kany-login-container {
  position: relative !important;
  height: auto !important;
  min-height: 100vh !important;
  padding: 40px 20px !important;
}

body.page-registration .kany-login-wrapper,
body.registration-page .kany-login-wrapper {
  width: 100% !important;
  max-width: 900px !important;
  margin: 0 auto !important;
}

body.page-registration .kany-login-form-container,
body.registration-page .kany-login-form-container {
  max-height: none !important;
  overflow: visible !important;
}

body.page-registration .register-form,
body.registration-page .register-form,
body.page-registration .js-customer-form,
body.registration-page .js-customer-form {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Page mot de passe : centrer parfaitement le formulaire */
body.page-password .kany-login-container,
body.password-page .kany-login-container {
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translate(-50%, -50%) !important;
  width: min(900px, 90vw) !important;
  height: auto !important;
  padding: 0 !important;
}

body.page-password .kany-login-wrapper,
body.password-page .kany-login-wrapper {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.page-password .kany-login-form-container,
body.password-page .kany-login-form-container {
  width: 100% !important;
  max-width: 100% !important;
  padding: 60px 55px !important;
  min-width: 0 !important;
}

body.page-password .kany-login-form-container,
body.password-page .kany-login-form-container {
  margin: 0 auto !important;
  width: 100% !important;
}

/* Connexion / Inscription / Mot de passe : mettre le fond sur le body pour couvrir toute la page (pas seulement le bloc) */
body.page-authentication,
body.page-registration,
body.registration-page,
body.page-password,
body.password-page {
  background-image: url('../img/img_fondv4.png') !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important;
}

/* ===================== PAGE IDENTITÉ (identity) ===================== */
body.page-identity,
body.identity-page,
body#identity {
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-color: transparent !important;
  background-image: url('../img/img_fondv4.png') !important;
  overflow: hidden !important; /* pas de scroll de page, scroll interne au bloc */
  height: 100vh !important;
  position: relative;
}

/* Identity : fond garanti (au-dessus de tout background violet/rose du thème) */
body.page-identity::before,
body.identity-page::before,
body#identity::before {
  content: '';
  position: fixed;
  inset: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-size: cover !important;
  background-position: center !important;
  z-index: -999 !important;
  pointer-events: none;
}

/* Identity : s'assurer qu'aucun fond rose/violet ne reste sur le layout (sans casser l'image de fond) */
body.page-identity #wrapper,
body.page-identity #main,
body.page-identity #content-wrapper,
body.page-identity #content,
body.page-identity .js-content-wrapper,
body.identity-page #wrapper,
body.identity-page #main,
body.identity-page #content-wrapper,
body.identity-page #content,
body.identity-page .js-content-wrapper,
body#identity #wrapper,
body#identity #main,
body#identity #content-wrapper,
body#identity #content,
body#identity .js-content-wrapper {
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Identity : enlever la "colonne" de layout (container/row/paddings) */
body.page-identity #wrapper .container,
body.page-identity #wrapper .container-fluid,
body.identity-page #wrapper .container,
body.identity-page #wrapper .container-fluid,
body#identity #wrapper .container,
body#identity #wrapper .container-fluid {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background-color: transparent !important;
}

body.page-identity #wrapper .row,
body.identity-page #wrapper .row,
body#identity #wrapper .row {
  margin: 0 !important;
  background-color: transparent !important;
}

body.page-identity #content.page-content.card.card-block,
body.identity-page #content.page-content.card.card-block,
body#identity #content.page-content.card.card-block,
body.page-identity .page-content.card,
body.identity-page .page-content.card,
body#identity .page-content.card,
body.page-identity .card-block,
body.identity-page .card-block,
body#identity .card-block {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-identity #wrapper,
body.page-identity #main,
body.page-identity #content-wrapper,
body.page-identity #content,
body.page-identity section#main,
body.page-identity .container,
body.page-identity .container-fluid,
body.page-identity .row,
body.page-identity .page-content,
body.page-identity .card,
body.page-identity .card-block,
body.page-identity .page-footer,
body.page-identity .page-header,
body.page-identity .breadcrumb,
body.page-identity nav.breadcrumb,
body.identity-page #wrapper,
body.identity-page #main,
body.identity-page #content-wrapper,
body.identity-page #content,
body.identity-page section#main,
body.identity-page .container,
body.identity-page .container-fluid,
body.identity-page .row,
body.identity-page .page-content,
body.identity-page .card,
body.identity-page .card-block,
body.identity-page .page-footer,
body.identity-page .page-header,
body.identity-page .breadcrumb,
body.identity-page nav.breadcrumb,
body#identity #wrapper,
body#identity #main,
body#identity #content-wrapper,
body#identity #content,
body#identity section#main,
body#identity .container,
body#identity .container-fluid,
body#identity .row,
body#identity .page-content,
body#identity .card,
body#identity .card-block,
body#identity .page-footer,
body#identity .page-header,
body#identity .breadcrumb,
body#identity nav.breadcrumb {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* Identity : même header que Connexion/Inscription */
body.page-identity #header,
body.page-identity .kany-header,
body.identity-page #header,
body.identity-page .kany-header {
  display: block !important;
  visibility: visible !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-bottom: none !important;
  padding: 1rem 2rem !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  z-index: 50 !important;
}

/* Identity : header-container en pleine largeur */
body.page-identity .header-container,
body.identity-page .header-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 2rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
}

/* Identity : masquer le fil d'Ariane */
body.page-identity .breadcrumb,
body.page-identity nav.breadcrumb,
body.identity-page .breadcrumb,
body.identity-page nav.breadcrumb {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Identity : container */
.kany-identity-container {
  min-height: 100vh;
  padding-top: 80px;
  padding-bottom: 40px;
  overflow: hidden;
}

.kany-identity-wrapper {
  max-width: 520px;
}

body.page-identity .kany-identity-card.kany-login-form-container {
  max-height: calc(100vh - 200px) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
}

/* Identity : cacher footer global + chat (comme Connexion/Inscription) */
body.page-identity #footer,
body.page-identity footer#footer,
body.page-identity footer.js-footer,
body.page-identity .js-footer,
body.page-identity .footer-container,
body.page-identity #chat-bubble,
body.page-identity #chat-window,
body.page-identity footer.page-footer,
body.page-identity .page-footer {
  display: none !important;
}

/* ===================== PAGE ADRESSES (addresses) ===================== */
body.page-addresses,
body.addresses-page,
body#addresses {
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-color: transparent !important;
  background-image: url('../img/img_fondv4.png') !important;
  overflow: hidden !important;
  height: 100vh !important;
  position: relative;
}

/* Addresses : fond garanti (au-dessus de tout background violet/rose du thème) */
body.page-addresses::before,
body.addresses-page::before,
body#addresses::before {
  content: '';
  position: fixed;
  inset: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-size: cover !important;
  background-position: center !important;
  z-index: -999 !important;
  pointer-events: none;
}

/* Addresses : s'assurer qu'aucun fond rose/violet ne reste sur le layout */
body.page-addresses #wrapper,
body.page-addresses #main,
body.page-addresses #content-wrapper,
body.page-addresses #content,
body.page-addresses .js-content-wrapper,
body.addresses-page #wrapper,
body.addresses-page #main,
body.addresses-page #content-wrapper,
body.addresses-page #content,
body.addresses-page .js-content-wrapper,
body#addresses #wrapper,
body#addresses #main,
body#addresses #content-wrapper,
body#addresses #content,
body#addresses .js-content-wrapper {
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Addresses : enlever la "colonne" de layout (container/row/paddings) */
body.page-addresses #wrapper .container,
body.page-addresses #wrapper .container-fluid,
body.addresses-page #wrapper .container,
body.addresses-page #wrapper .container-fluid,
body#addresses #wrapper .container,
body#addresses #wrapper .container-fluid {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background-color: transparent !important;
}

body.page-addresses #wrapper .row,
body.addresses-page #wrapper .row,
body#addresses #wrapper .row {
  margin: 0 !important;
  background-color: transparent !important;
}

body.page-addresses #content.page-content.card.card-block,
body.addresses-page #content.page-content.card.card-block,
body#addresses #content.page-content.card.card-block,
body.page-addresses .page-content.card,
body.addresses-page .page-content.card,
body#addresses .page-content.card,
body.page-addresses .card-block,
body.addresses-page .card-block,
body#addresses .card-block {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-addresses #wrapper,
body.page-addresses #main,
body.page-addresses #content-wrapper,
body.page-addresses #content,
body.page-addresses section#main,
body.page-addresses .container,
body.page-addresses .container-fluid,
body.page-addresses .row,
body.page-addresses .page-content,
body.page-addresses .card,
body.page-addresses .card-block,
body.page-addresses .page-footer,
body.page-addresses .page-header,
body.page-addresses .breadcrumb,
body.page-addresses nav.breadcrumb,
body.addresses-page #wrapper,
body.addresses-page #main,
body.addresses-page #content-wrapper,
body.addresses-page #content,
body.addresses-page section#main,
body.addresses-page .container,
body.addresses-page .container-fluid,
body.addresses-page .row,
body.addresses-page .page-content,
body.addresses-page .card,
body.addresses-page .card-block,
body.addresses-page .page-footer,
body.addresses-page .page-header,
body.addresses-page .breadcrumb,
body.addresses-page nav.breadcrumb,
body#addresses #wrapper,
body#addresses #main,
body#addresses #content-wrapper,
body#addresses #content,
body#addresses section#main,
body#addresses .container,
body#addresses .container-fluid,
body#addresses .row,
body#addresses .page-content,
body#addresses .card,
body#addresses .card-block,
body#addresses .page-footer,
body#addresses .page-header,
body#addresses .breadcrumb,
body#addresses nav.breadcrumb {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* Addresses : même header que Identity */
body.page-addresses #header,
body.page-addresses .kany-header,
body.addresses-page #header,
body.addresses-page .kany-header {
  display: block !important;
  visibility: visible !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-bottom: none !important;
  padding: 1rem 2rem !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  z-index: 50 !important;
}

/* Addresses : header-container en pleine largeur */
body.page-addresses .header-container,
body.addresses-page .header-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 2rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
}

/* Addresses : masquer le fil d'Ariane */
body.page-addresses .breadcrumb,
body.page-addresses nav.breadcrumb,
body.addresses-page .breadcrumb,
body.addresses-page nav.breadcrumb {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Addresses : container */
.kany-addresses-container {
  min-height: 100vh;
  padding-top: 80px;
  padding-bottom: 40px;
  overflow: hidden;
}

.kany-addresses-wrapper {
  max-width: 1100px;
  width: 100%;
}

body.page-addresses .kany-addresses-card.kany-login-form-container,
body.addresses-page .kany-addresses-card.kany-login-form-container {
  max-height: calc(100vh - 200px) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
  padding: 40px 36px !important;
}

/* Addresses : styles pour le contenu */
body.page-addresses .addresses-content-inner,
body.addresses-page .addresses-content-inner {
  width: 100%;
}

body.page-addresses .addresses-grid,
body.addresses-page .addresses-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
  margin-bottom: 30px;
}

body.page-addresses .addresses-footer,
body.addresses-page .addresses-footer {
  margin-top: 30px;
  display: flex;
  justify-content: center;
}

body.page-addresses .addresses-footer .kany-btn-login,
body.addresses-page .addresses-footer .kany-btn-login {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  justify-content: center !important;
  width: auto !important;
  max-width: 320px !important;
}

body.page-addresses .addresses-footer .kany-btn-login i,
body.addresses-page .addresses-footer .kany-btn-login i {
  font-size: 1.2rem;
}

/* Addresses : cacher footer global + chat */
body.page-addresses #footer,
body.page-addresses footer#footer,
body.page-addresses footer.js-footer,
body.page-addresses .js-footer,
body.page-addresses .footer-container,
body.page-addresses #chat-bubble,
body.page-addresses #chat-window,
body.page-addresses footer.page-footer,
body.page-addresses .page-footer {
  display: none !important;
}

/* Addresses : bouton Revenir à mon compte */
body.page-addresses .kany-back-to-account,
body.addresses-page .kany-back-to-account,
body#addresses .kany-back-to-account {
  display: inline-block;
  margin-bottom: 20px;
  padding: 10px 16px;
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  color: #ffffff;
  text-decoration: none;
  border-radius: 8px;
  font-family: 'Poppins', sans-serif;
  font-size: 0.9rem;
  font-weight: 500;
  transition: all 0.3s ease;
  border: none;
}

body.page-addresses .kany-back-to-account:hover,
body.addresses-page .kany-back-to-account:hover,
body#addresses .kany-back-to-account:hover {
  color: #ffffff;
  text-decoration: none;
  transform: translateX(-3px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

/* ===================== PAGE ADRESSE (address - édition/création) ===================== */
body.page-address,
body.address-page,
body#address {
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-color: transparent !important;
  background-image: url('../img/img_fondv4.png') !important;
  overflow: hidden !important;
  height: 100vh !important;
  position: relative;
}

/* Address : fond garanti */
body.page-address::before,
body.address-page::before,
body#address::before {
  content: '';
  position: fixed;
  inset: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-size: cover !important;
  background-position: center !important;
  z-index: -999 !important;
  pointer-events: none;
}

/* Address : s'assurer qu'aucun fond rose/violet ne reste */
body.page-address #wrapper,
body.page-address #main,
body.page-address #content-wrapper,
body.page-address #content,
body.page-address .js-content-wrapper,
body.address-page #wrapper,
body.address-page #main,
body.address-page #content-wrapper,
body.address-page #content,
body.address-page .js-content-wrapper,
body#address #wrapper,
body#address #main,
body#address #content-wrapper,
body#address #content,
body#address .js-content-wrapper {
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Address : enlever la "colonne" de layout */
body.page-address #wrapper .container,
body.page-address #wrapper .container-fluid,
body.address-page #wrapper .container,
body.address-page #wrapper .container-fluid,
body#address #wrapper .container,
body#address #wrapper .container-fluid {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background-color: transparent !important;
}

body.page-address #wrapper .row,
body.address-page #wrapper .row,
body#address #wrapper .row {
  margin: 0 !important;
  background-color: transparent !important;
}

body.page-address #content.page-content.card.card-block,
body.address-page #content.page-content.card.card-block,
body#address #content.page-content.card.card-block,
body.page-address .page-content.card,
body.address-page .page-content.card,
body#address .page-content.card,
body.page-address .card-block,
body.address-page .card-block,
body#address .card-block {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-address #wrapper,
body.page-address #main,
body.page-address #content-wrapper,
body.page-address #content,
body.page-address section#main,
body.page-address .container,
body.page-address .container-fluid,
body.page-address .row,
body.page-address .page-content,
body.page-address .card,
body.page-address .card-block,
body.page-address .page-footer,
body.page-address .page-header,
body.page-address .breadcrumb,
body.page-address nav.breadcrumb,
body.address-page #wrapper,
body.address-page #main,
body.address-page #content-wrapper,
body.address-page #content,
body.address-page section#main,
body.address-page .container,
body.address-page .container-fluid,
body.address-page .row,
body.address-page .page-content,
body.address-page .card,
body.address-page .card-block,
body.address-page .page-footer,
body.address-page .page-header,
body.address-page .breadcrumb,
body.address-page nav.breadcrumb,
body#address #wrapper,
body#address #main,
body#address #content-wrapper,
body#address #content,
body#address section#main,
body#address .container,
body#address .container-fluid,
body#address .row,
body#address .page-content,
body#address .card,
body#address .card-block,
body#address .page-footer,
body#address .page-header,
body#address .breadcrumb,
body#address nav.breadcrumb {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* Address : même header que Identity */
body.page-address #header,
body.page-address .kany-header,
body.address-page #header,
body.address-page .kany-header {
  display: block !important;
  visibility: visible !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-bottom: none !important;
  padding: 1rem 2rem !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  z-index: 50 !important;
}

/* Address : header-container en pleine largeur */
body.page-address .header-container,
body.address-page .header-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 2rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
}

/* Address : masquer le fil d'Ariane */
body.page-address .breadcrumb,
body.page-address nav.breadcrumb,
body.address-page .breadcrumb,
body.address-page nav.breadcrumb {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Address : container */
.kany-address-container {
  min-height: 100vh;
  padding-top: 80px;
  padding-bottom: 40px;
  overflow: hidden;
}

.kany-address-wrapper {
  max-width: 520px;
  width: 100%;
}

body.page-address .kany-address-card.kany-login-form-container,
body.address-page .kany-address-card.kany-login-form-container {
  max-height: calc(100vh - 200px) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
}

/* Address : styles pour le formulaire */
body.page-address .address-content-inner,
body.address-page .address-content-inner {
  width: 100%;
}

/* Address : styles des champs du formulaire (comme Identity) */
body.page-address .form-group.row,
body.address-page .form-group.row {
  margin-bottom: 35px !important;
}

body.page-address .form-group.row > label,
body.address-page .form-group.row > label {
  text-align: left !important;
  color: #fff !important;
  font-weight: 500 !important;
  margin-bottom: 8px !important;
}

body.page-address .form-control,
body.address-page .form-control,
body.page-address .form-control-select,
body.address-page .form-control-select {
  border: 1px solid #ffffff !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  background: rgba(255, 255, 255, 0.9) !important;
  color: #333 !important;
  transition: all 0.3s ease !important;
}

body.page-address .form-control:focus,
body.address-page .form-control:focus,
body.page-address .form-control-select:focus,
body.address-page .form-control-select:focus {
  border-color: #ffa366 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(255, 163, 102, 0.2) !important;
}

/* Address : bouton Enregistrer (comme Identity) */
body.page-address .form-footer,
body.address-page .form-footer {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin-top: 30px !important;
}

body.page-address .form-footer button[type="submit"],
body.page-address .form-footer .btn-primary,
body.address-page .form-footer button[type="submit"],
body.address-page .form-footer .btn-primary {
  width: 100% !important;
  padding: 12px 16px !important;
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 999px !important;
  font-weight: 600 !important;
  font-size: 0.95rem !important;
  cursor: pointer !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
}

body.page-address .form-footer button[type="submit"]:hover,
body.page-address .form-footer .btn-primary:hover,
body.address-page .form-footer button[type="submit"]:hover,
body.address-page .form-footer .btn-primary:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25) !important;
}

/* Address : bouton Retour aux adresses */
body.page-address .kany-back-to-account,
body.address-page .kany-back-to-account,
body#address .kany-back-to-account {
  display: inline-block;
  margin-bottom: 20px;
  padding: 10px 16px;
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  color: #ffffff;
  text-decoration: none;
  border-radius: 8px;
  font-family: 'Poppins', sans-serif;
  font-size: 0.9rem;
  font-weight: 500;
  transition: all 0.3s ease;
  border: none;
}

body.page-address .kany-back-to-account:hover,
body.address-page .kany-back-to-account:hover,
body#address .kany-back-to-account:hover {
  color: #ffffff;
  text-decoration: none;
  transform: translateX(-3px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

/* Address : cacher footer global + chat */
body.page-address #footer,
body.page-address footer#footer,
body.page-address footer.js-footer,
body.page-address .js-footer,
body.page-address .footer-container,
body.page-address #chat-bubble,
body.page-address #chat-window,
body.page-address footer.page-footer,
body.page-address .page-footer {
  display: none !important;
}

/* ===================== PAGE HISTORIQUE (history) ===================== */
body.page-history,
body.history-page,
body#history {
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-color: transparent !important;
  background-image: url('../img/img_fondv4.png') !important;
  overflow: hidden !important;
  height: 100vh !important;
  position: relative;
}

/* History : fond garanti */
body.page-history::before,
body.history-page::before,
body#history::before {
  content: '';
  position: fixed;
  inset: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-size: cover !important;
  background-position: center !important;
  z-index: -999 !important;
  pointer-events: none;
}

/* History : s'assurer qu'aucun fond rose/violet ne reste */
body.page-history #wrapper,
body.page-history #main,
body.page-history #content-wrapper,
body.page-history #content,
body.page-history .js-content-wrapper,
body.history-page #wrapper,
body.history-page #main,
body.history-page #content-wrapper,
body.history-page #content,
body.history-page .js-content-wrapper,
body#history #wrapper,
body#history #main,
body#history #content-wrapper,
body#history #content,
body#history .js-content-wrapper {
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* History : enlever la "colonne" de layout */
body.page-history #wrapper .container,
body.page-history #wrapper .container-fluid,
body.history-page #wrapper .container,
body.history-page #wrapper .container-fluid,
body#history #wrapper .container,
body#history #wrapper .container-fluid {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background-color: transparent !important;
}

body.page-history #wrapper .row,
body.history-page #wrapper .row,
body#history #wrapper .row {
  margin: 0 !important;
  background-color: transparent !important;
}

body.page-history #content.page-content.card.card-block,
body.history-page #content.page-content.card.card-block,
body#history #content.page-content.card.card-block,
body.page-history .page-content.card,
body.history-page .page-content.card,
body#history .page-content.card,
body.page-history .card-block,
body.history-page .card-block,
body#history .card-block {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-history #wrapper,
body.page-history #main,
body.page-history #content-wrapper,
body.page-history #content,
body.page-history section#main,
body.page-history .container,
body.page-history .container-fluid,
body.page-history .row,
body.page-history .page-content,
body.page-history .card,
body.page-history .card-block,
body.page-history .page-footer,
body.page-history .page-header,
body.page-history .breadcrumb,
body.page-history nav.breadcrumb,
body.history-page #wrapper,
body.history-page #main,
body.history-page #content-wrapper,
body.history-page #content,
body.history-page section#main,
body.history-page .container,
body.history-page .container-fluid,
body.history-page .row,
body.history-page .page-content,
body.history-page .card,
body.history-page .card-block,
body.history-page .page-footer,
body.history-page .page-header,
body.history-page .breadcrumb,
body.history-page nav.breadcrumb,
body#history #wrapper,
body#history #main,
body#history #content-wrapper,
body#history #content,
body#history section#main,
body#history .container,
body#history .container-fluid,
body#history .row,
body#history .page-content,
body#history .card,
body#history .card-block,
body#history .page-footer,
body#history .page-header,
body#history .breadcrumb,
body#history nav.breadcrumb {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* History : même header que Identity */
body.page-history #header,
body.page-history .kany-header,
body.history-page #header,
body.history-page .kany-header {
  display: block !important;
  visibility: visible !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-bottom: none !important;
  padding: 1rem 2rem !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  z-index: 50 !important;
}

/* History : header-container en pleine largeur */
body.page-history .header-container,
body.history-page .header-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 2rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
}

/* History : masquer le fil d'Ariane */
body.page-history .breadcrumb,
body.page-history nav.breadcrumb,
body.history-page .breadcrumb,
body.history-page nav.breadcrumb {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* History : container */
.kany-history-container {
  min-height: 100vh;
  padding-top: 160px;
  padding-bottom: 40px;
  overflow-x: hidden !important;
  overflow-y: visible !important;
}

.kany-history-wrapper {
  max-width: 1100px;
  width: 100%;
}

body.page-history .kany-history-card.kany-login-form-container,
body.history-page .kany-history-card.kany-login-form-container {
  max-height: none !important;
  overflow-y: visible !important;
  overflow-x: hidden !important;
  padding: 40px 36px !important;
}

/* History : scroll sur la page entière */
body.page-history,
body.history-page {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  height: auto !important;
  min-height: 100vh !important;
}

body.page-history html,
body.history-page html,
html.page-history,
html.history-page {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  height: auto !important;
}

/* History : s'assurer que body et html ont le scroll */
body.page-history,
body.history-page,
body#history {
  overflow-y: scroll !important;
  overflow-x: hidden !important;
  height: 100% !important;
  min-height: 100vh !important;
}

/* History : styles pour le contenu */
body.page-history .history-content-inner,
body.history-page .history-content-inner {
  width: 100%;
}

body.page-history .history-intro,
body.history-page .history-intro {
  color: #fff !important;
  margin-bottom: 25px !important;
  font-size: 1rem !important;
  text-align: center !important;
}

/* History : styles pour le tableau */
body.page-history .kany-history-table,
body.history-page .kany-history-table {
  background: rgba(255, 255, 255, 0.95) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}

body.page-history .kany-history-table thead,
body.history-page .kany-history-table thead {
  background: rgba(255, 163, 102, 0.2) !important;
}

body.page-history .kany-history-table th,
body.history-page .kany-history-table th {
  color: #333 !important;
  font-weight: 600 !important;
  padding: 15px !important;
  border-bottom: 2px solid rgba(255, 163, 102, 0.3) !important;
}

body.page-history .kany-history-table td,
body.history-page .kany-history-table td {
  color: #333 !important;
  padding: 15px !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
}

body.page-history .kany-history-table tbody tr:hover,
body.history-page .kany-history-table tbody tr:hover {
  background: rgba(255, 163, 102, 0.1) !important;
}

body.page-history .kany-history-table a,
body.history-page .kany-history-table a {
  color: #ffa366 !important;
  text-decoration: none !important;
  transition: color 0.3s ease !important;
}

body.page-history .kany-history-table a:hover,
body.history-page .kany-history-table a:hover {
  color: #f3722c !important;
  text-decoration: underline !important;
}

/* History : réduire la taille du statut de commande */
body.page-history .kany-history-table .label.label-pill,
body.history-page .kany-history-table .label.label-pill {
  font-size: 11px !important;
  padding: 6px 12px !important;
  white-space: nowrap !important;
  display: inline-block !important;
  max-width: 240px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.2 !important;
  letter-spacing: 0.5px !important;
  margin-right: 10px !important;
  vertical-align: middle !important;
}

/* History : décaler la colonne du statut */
body.page-history .kany-history-table td:nth-child(5),
body.history-page .kany-history-table td:nth-child(5) {
  max-width: 250px !important;
  width: 250px !important;
  padding-right: 10px !important;
}

/* History : réduire la taille du statut de commande en mobile */
body.page-history .orders .order .label.label-pill,
body.history-page .orders .order .label.label-pill {
  font-size: 10px !important;
  padding: 5px 10px !important;
  white-space: nowrap !important;
  display: inline-block !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.2 !important;
  letter-spacing: 0.5px !important;
}

/* History : aligner le texte "Commander à nouveau" */
body.page-history .kany-history-table .order-actions,
body.history-page .kany-history-table .order-actions {
  text-align: left !important;
  vertical-align: middle !important;
  white-space: nowrap !important;
}

body.page-history .kany-history-table .order-actions a,
body.history-page .kany-history-table .order-actions a {
  display: inline-block !important;
  margin-right: 10px !important;
  vertical-align: middle !important;
}

body.page-history .kany-history-table .order-actions .reorder-link,
body.history-page .kany-history-table .order-actions .reorder-link {
  margin-left: 8px !important;
  margin-right: 0 !important;
}

/* History : styles pour la version mobile */
body.page-history .orders .order,
body.history-page .orders .order {
  background: rgba(255, 255, 255, 0.95) !important;
  border-radius: 12px !important;
  padding: 20px !important;
  margin-bottom: 15px !important;
}

body.page-history .orders .order h3,
body.history-page .orders .order h3 {
  color: #333 !important;
  margin-bottom: 10px !important;
}

body.page-history .orders .order a,
body.history-page .orders .order a {
  color: #ffa366 !important;
}

/* History : bouton Revenir à mon compte */
body.page-history .kany-back-to-account,
body.history-page .kany-back-to-account,
body#history .kany-back-to-account {
  display: inline-block;
  margin-bottom: 20px;
  padding: 12px 24px;
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  color: #ffffff;
  text-decoration: none;
  border-radius: 8px;
  font-family: 'Poppins', sans-serif;
  font-size: 0.9rem;
  font-weight: 500;
  transition: all 0.3s ease;
  border: none;
  cursor: pointer;
  box-sizing: border-box;
  line-height: 1.5;
  min-height: 44px;
  width: auto;
  -webkit-tap-highlight-color: transparent;
}

body.page-history .kany-back-to-account:hover,
body.history-page .kany-back-to-account:hover,
body#history .kany-back-to-account:hover {
  color: #ffffff;
  text-decoration: none;
  transform: translateX(-3px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

/* History : cacher footer global + chat */
body.page-history #footer,
body.page-history footer#footer,
body.page-history footer.js-footer,
body.page-history .js-footer,
body.page-history .footer-container,
body.page-history #chat-bubble,
body.page-history #chat-window,
body.page-history footer.page-footer,
body.page-history .page-footer {
  display: none !important;
}

/* ===================== PAGE DÉTAILS DE COMMANDE (order-detail) ===================== */
body.page-order-detail,
body.order-detail-page,
body#order-detail {
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-color: transparent !important;
  background-image: url('../img/img_fondv4.png') !important;
  overflow: hidden !important;
  height: 100vh !important;
  position: relative;
}

/* Order-detail : fond garanti */
body.page-order-detail::before,
body.order-detail-page::before,
body#order-detail::before {
  content: '';
  position: fixed;
  inset: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-size: cover !important;
  background-position: center !important;
  z-index: -999 !important;
  pointer-events: none;
}

/* Order-detail : s'assurer qu'aucun fond rose/violet ne reste */
body.page-order-detail #wrapper,
body.page-order-detail #main,
body.page-order-detail #content-wrapper,
body.page-order-detail #content,
body.page-order-detail .js-content-wrapper,
body.order-detail-page #wrapper,
body.order-detail-page #main,
body.order-detail-page #content-wrapper,
body.order-detail-page #content,
body.order-detail-page .js-content-wrapper,
body#order-detail #wrapper,
body#order-detail #main,
body#order-detail #content-wrapper,
body#order-detail #content,
body#order-detail .js-content-wrapper {
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Order-detail : enlever la "colonne" de layout */
body.page-order-detail #wrapper .container,
body.page-order-detail #wrapper .container-fluid,
body.order-detail-page #wrapper .container,
body.order-detail-page #wrapper .container-fluid,
body#order-detail #wrapper .container,
body#order-detail #wrapper .container-fluid {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background-color: transparent !important;
}

body.page-order-detail #wrapper .row,
body.order-detail-page #wrapper .row,
body#order-detail #wrapper .row {
  margin: 0 !important;
  background-color: transparent !important;
}

body.page-order-detail #content.page-content.card.card-block,
body.order-detail-page #content.page-content.card.card-block,
body#order-detail #content.page-content.card.card-block,
body.page-order-detail .page-content.card,
body.order-detail-page .page-content.card,
body#order-detail .page-content.card,
body.page-order-detail .card-block,
body.order-detail-page .card-block,
body#order-detail .card-block {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-order-detail #wrapper,
body.page-order-detail #main,
body.page-order-detail #content-wrapper,
body.page-order-detail #content,
body.page-order-detail section#main,
body.page-order-detail .container,
body.page-order-detail .container-fluid,
body.page-order-detail .row,
body.page-order-detail .page-content,
body.page-order-detail .card,
body.page-order-detail .card-block,
body.page-order-detail .page-footer,
body.page-order-detail .page-header,
body.page-order-detail .breadcrumb,
body.page-order-detail nav.breadcrumb,
body.order-detail-page #wrapper,
body.order-detail-page #main,
body.order-detail-page #content-wrapper,
body.order-detail-page #content,
body.order-detail-page section#main,
body.order-detail-page .container,
body.order-detail-page .container-fluid,
body.order-detail-page .row,
body.order-detail-page .page-content,
body.order-detail-page .card,
body.order-detail-page .card-block,
body.order-detail-page .page-footer,
body.order-detail-page .page-header,
body.order-detail-page .breadcrumb,
body.order-detail-page nav.breadcrumb,
body#order-detail #wrapper,
body#order-detail #main,
body#order-detail #content-wrapper,
body#order-detail #content,
body#order-detail section#main,
body#order-detail .container,
body#order-detail .container-fluid,
body#order-detail .row,
body#order-detail .page-content,
body#order-detail .card,
body#order-detail .card-block,
body#order-detail .page-footer,
body#order-detail .page-header,
body#order-detail .breadcrumb,
body#order-detail nav.breadcrumb {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* Order-detail : même header que Identity */
body.page-order-detail #header,
body.page-order-detail .kany-header,
body.order-detail-page #header,
body.order-detail-page .kany-header {
  display: block !important;
  visibility: visible !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-bottom: none !important;
  padding: 1rem 2rem !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  z-index: 50 !important;
}

/* Order-detail : header-container en pleine largeur */
body.page-order-detail .header-container,
body.order-detail-page .header-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 2rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
}

/* Order-detail : masquer le fil d'Ariane */
body.page-order-detail .breadcrumb,
body.page-order-detail nav.breadcrumb,
body.order-detail-page .breadcrumb,
body.order-detail-page nav.breadcrumb {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Order-detail : container */
.kany-order-detail-container {
  min-height: 100vh;
  padding-top: 120px;
  padding-bottom: 40px;
  overflow: hidden;
}

.kany-order-detail-wrapper {
  max-width: 1100px;
  width: 100%;
}

body.page-order-detail .kany-order-detail-card.kany-login-form-container,
body.order-detail-page .kany-order-detail-card.kany-login-form-container {
  max-height: calc(100vh - 200px) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
  padding: 40px 36px !important;
}

/* Order-detail : styles pour le contenu */
body.page-order-detail .order-detail-content-inner,
body.order-detail-page .order-detail-content-inner {
  width: 100%;
}

/* Order-detail : styles pour les tableaux */
body.page-order-detail .kany-order-detail-table,
body.order-detail-page .kany-order-detail-table {
  background: rgba(255, 255, 255, 0.95) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  margin-bottom: 20px !important;
}

body.page-order-detail .kany-order-detail-table thead,
body.order-detail-page .kany-order-detail-table thead {
  background: rgba(255, 163, 102, 0.2) !important;
}

body.page-order-detail .kany-order-detail-table th,
body.order-detail-page .kany-order-detail-table th {
  color: #333 !important;
  font-weight: 600 !important;
  padding: 15px !important;
  border-bottom: 2px solid rgba(255, 163, 102, 0.3) !important;
}

body.page-order-detail .kany-order-detail-table td,
body.order-detail-page .kany-order-detail-table td {
  color: #333 !important;
  padding: 15px !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
}

body.page-order-detail .kany-order-detail-table tbody tr:hover,
body.order-detail-page .kany-order-detail-table tbody tr:hover {
  background: rgba(255, 163, 102, 0.1) !important;
}

body.page-order-detail .kany-order-detail-table a,
body.order-detail-page .kany-order-detail-table a {
  color: #ffa366 !important;
  text-decoration: none !important;
  transition: color 0.3s ease !important;
}

body.page-order-detail .kany-order-detail-table a:hover,
body.order-detail-page .kany-order-detail-table a:hover {
  color: #f3722c !important;
  text-decoration: underline !important;
}

/* Order-detail : styles pour les boxes */
body.page-order-detail .box,
body.order-detail-page .box {
  background: rgba(255, 255, 255, 0.95) !important;
  border-radius: 12px !important;
  padding: 20px !important;
  margin-bottom: 20px !important;
  color: #333 !important;
}

body.page-order-detail .box h3,
body.page-order-detail .box h4,
body.order-detail-page .box h3,
body.order-detail-page .box h4 {
  color: #333 !important;
  margin-bottom: 15px !important;
}

body.page-order-detail .box a,
body.order-detail-page .box a {
  color: #ffa366 !important;
  text-decoration: none !important;
}

body.page-order-detail .box a:hover,
body.order-detail-page .box a:hover {
  color: #f3722c !important;
  text-decoration: underline !important;
}

body.page-order-detail .box .button-primary,
body.order-detail-page .box .button-primary,
body.page-order-detail .box .btn-primary,
body.order-detail-page .box .btn-primary,
body.page-order-detail .box button[type="submit"],
body.order-detail-page .box button[type="submit"],
body.page-order-detail .box .form-control-submit,
body.order-detail-page .box .form-control-submit,
body.page-order-detail .order-message-form button[type="submit"],
body.order-detail-page .order-message-form button[type="submit"] {
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  color: #fff !important;
  padding: 10px 20px !important;
  border-radius: 8px !important;
  border: none !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
}

body.page-order-detail .box .button-primary:hover,
body.order-detail-page .box .button-primary:hover,
body.page-order-detail .box .btn-primary:hover,
body.order-detail-page .box .btn-primary:hover,
body.page-order-detail .box button[type="submit"]:hover,
body.order-detail-page .box button[type="submit"]:hover,
body.page-order-detail .box .form-control-submit:hover,
body.order-detail-page .box .form-control-submit:hover,
body.page-order-detail .order-message-form button[type="submit"]:hover,
body.order-detail-page .order-message-form button[type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
  color: #fff !important;
}

/* Order-detail : bouton Retour à l'historique */
body.page-order-detail .kany-back-to-account,
body.order-detail-page .kany-back-to-account,
body#order-detail .kany-back-to-account {
  display: inline-block;
  margin-bottom: 20px;
  padding: 10px 16px;
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  color: #ffffff;
  text-decoration: none;
  border-radius: 8px;
  font-family: 'Poppins', sans-serif;
  font-size: 0.9rem;
  font-weight: 500;
  transition: all 0.3s ease;
  border: none;
}

body.page-order-detail .kany-back-to-account:hover,
body.order-detail-page .kany-back-to-account:hover,
body#order-detail .kany-back-to-account:hover {
  color: #ffffff;
  text-decoration: none;
  transform: translateX(-3px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

/* Order-detail : cacher footer global + chat */
body.page-order-detail #footer,
body.page-order-detail footer#footer,
body.page-order-detail footer.js-footer,
body.page-order-detail .js-footer,
body.page-order-detail .footer-container,
body.page-order-detail #chat-bubble,
body.page-order-detail #chat-window,
body.page-order-detail footer.page-footer,
body.page-order-detail .page-footer {
  display: none !important;
}

/* ===================== PAGE AVOIRS (order-slip) ===================== */
body.page-order-slip,
body.order-slip-page,
body#order-slip {
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-color: transparent !important;
  background-image: url('../img/img_fondv4.png') !important;
  overflow: hidden !important;
  height: 100vh !important;
  position: relative;
}

/* Order-slip : fond garanti */
body.page-order-slip::before,
body.order-slip-page::before,
body#order-slip::before {
  content: '';
  position: fixed;
  inset: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-size: cover !important;
  background-position: center !important;
  z-index: -999 !important;
  pointer-events: none;
}

/* Order-slip : s'assurer qu'aucun fond rose/violet ne reste */
body.page-order-slip #wrapper,
body.page-order-slip #main,
body.page-order-slip #content-wrapper,
body.page-order-slip #content,
body.page-order-slip .js-content-wrapper,
body.order-slip-page #wrapper,
body.order-slip-page #main,
body.order-slip-page #content-wrapper,
body.order-slip-page #content,
body.order-slip-page .js-content-wrapper,
body#order-slip #wrapper,
body#order-slip #main,
body#order-slip #content-wrapper,
body#order-slip #content,
body#order-slip .js-content-wrapper {
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Order-slip : enlever la "colonne" de layout */
body.page-order-slip #wrapper .container,
body.page-order-slip #wrapper .container-fluid,
body.order-slip-page #wrapper .container,
body.order-slip-page #wrapper .container-fluid,
body#order-slip #wrapper .container,
body#order-slip #wrapper .container-fluid {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background-color: transparent !important;
}

body.page-order-slip #wrapper .row,
body.order-slip-page #wrapper .row,
body#order-slip #wrapper .row {
  margin: 0 !important;
  background-color: transparent !important;
}

body.page-order-slip #content.page-content.card.card-block,
body.order-slip-page #content.page-content.card.card-block,
body#order-slip #content.page-content.card.card-block,
body.page-order-slip .page-content.card,
body.order-slip-page .page-content.card,
body#order-slip .page-content.card,
body.page-order-slip .card-block,
body.order-slip-page .card-block,
body#order-slip .card-block {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-order-slip #wrapper,
body.page-order-slip #main,
body.page-order-slip #content-wrapper,
body.page-order-slip #content,
body.page-order-slip section#main,
body.page-order-slip .container,
body.page-order-slip .container-fluid,
body.page-order-slip .row,
body.page-order-slip .page-content,
body.page-order-slip .card,
body.page-order-slip .card-block,
body.page-order-slip .page-footer,
body.page-order-slip .page-header,
body.page-order-slip .breadcrumb,
body.page-order-slip nav.breadcrumb,
body.order-slip-page #wrapper,
body.order-slip-page #main,
body.order-slip-page #content-wrapper,
body.order-slip-page #content,
body.order-slip-page section#main,
body.order-slip-page .container,
body.order-slip-page .container-fluid,
body.order-slip-page .row,
body.order-slip-page .page-content,
body.order-slip-page .card,
body.order-slip-page .card-block,
body.order-slip-page .page-footer,
body.order-slip-page .page-header,
body.order-slip-page .breadcrumb,
body.order-slip-page nav.breadcrumb,
body#order-slip #wrapper,
body#order-slip #main,
body#order-slip #content-wrapper,
body#order-slip #content,
body#order-slip section#main,
body#order-slip .container,
body#order-slip .container-fluid,
body#order-slip .row,
body#order-slip .page-content,
body#order-slip .card,
body#order-slip .card-block,
body#order-slip .page-footer,
body#order-slip .page-header,
body#order-slip .breadcrumb,
body#order-slip nav.breadcrumb {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* Order-slip : même header que Identity */
body.page-order-slip #header,
body.page-order-slip .kany-header,
body.order-slip-page #header,
body.order-slip-page .kany-header,
body#order-slip #header,
body#order-slip .kany-header {
  display: block !important;
  visibility: visible !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-bottom: none !important;
  padding: 0 !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  z-index: 50 !important;
}

/* Order-slip : header-container en pleine largeur */
body.page-order-slip .header-container,
body.order-slip-page .header-container,
body#order-slip .header-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 1rem 2rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
  box-sizing: border-box !important;
}

/* Order-slip : header-center équidistant du logo et des liens */
body.page-order-slip .header-center,
body.order-slip-page .header-center,
body#order-slip .header-center {
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
}

/* Order-slip : header-left et header-right pour équilibrage */
body.page-order-slip .header-left,
body.order-slip-page .header-left,
body#order-slip .header-left {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

body.page-order-slip .header-right,
body.order-slip-page .header-right,
body#order-slip .header-right {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  justify-content: flex-end !important;
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  flex-direction: row !important;
  gap: 1.5rem !important;
  white-space: nowrap !important;
}

/* Order-slip : masquer le fil d'Ariane */
body.page-order-slip .breadcrumb,
body.page-order-slip nav.breadcrumb,
body.order-slip-page .breadcrumb,
body.order-slip-page nav.breadcrumb,
body#order-slip .breadcrumb,
body#order-slip nav.breadcrumb {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Order-slip : container */
.kany-order-slip-container {
  min-height: 100vh;
  padding-top: 30px;
  padding-bottom: 40px;
  overflow: hidden;
}

.kany-order-slip-wrapper {
  max-width: 1100px;
  width: 100%;
}

body.page-order-slip .kany-order-slip-card.kany-login-form-container,
body.order-slip-page .kany-order-slip-card.kany-login-form-container,
body#order-slip .kany-order-slip-card.kany-login-form-container {
  max-height: calc(100vh - 200px) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
  padding: 40px 36px !important;
}

/* Order-slip : styles pour le contenu */
body.page-order-slip .order-slip-content-inner,
body.order-slip-page .order-slip-content-inner,
body#order-slip .order-slip-content-inner {
  width: 100%;
}

/* Order-slip : bouton Revenir à mon compte */
body.page-order-slip .kany-back-to-account,
body.order-slip-page .kany-back-to-account,
body#order-slip .kany-back-to-account {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
  padding: 10px 16px;
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  color: #ffffff !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  transition: all 0.3s ease !important;
  border: none !important;
}

body.page-order-slip .kany-back-to-account:hover,
body.order-slip-page .kany-back-to-account:hover,
body#order-slip .kany-back-to-account:hover {
  color: #ffffff !important;
  text-decoration: none !important;
  transform: translateX(-3px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
}

/* Order-slip : styles pour le tableau */
body.page-order-slip .table,
body.order-slip-page .table,
body#order-slip .table {
  width: 100%;
  margin-bottom: 1rem;
  color: #fff;
  background-color: transparent;
}

body.page-order-slip .table thead th,
body.order-slip-page .table thead th,
body#order-slip .table thead th {
  border-bottom: 2px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  font-weight: 600;
  padding: 12px;
}

body.page-order-slip .table tbody td,
body.order-slip-page .table tbody td,
body#order-slip .table tbody td {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  padding: 12px;
  color: #fff;
}

body.page-order-slip .table tbody td a,
body.order-slip-page .table tbody td a,
body#order-slip .table tbody td a {
  color: #ffa366;
  text-decoration: none;
}

body.page-order-slip .table tbody td a:hover,
body.order-slip-page .table tbody td a:hover,
body#order-slip .table tbody td a:hover {
  color: #ffa366;
  text-decoration: underline;
}

/* Order-slip : alert info */
body.page-order-slip .alert-info,
body.order-slip-page .alert-info,
body#order-slip .alert-info {
  background-color: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  padding: 15px;
  border-radius: 8px;
}

/* Order-slip : credit-slips mobile */
body.page-order-slip .credit-slips,
body.order-slip-page .credit-slips,
body#order-slip .credit-slips {
  margin-top: 20px;
}

body.page-order-slip .credit-slip,
body.order-slip-page .credit-slip,
body#order-slip .credit-slip {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  padding: 15px;
  margin-bottom: 15px;
}

body.page-order-slip .credit-slip ul,
body.order-slip-page .credit-slip ul,
body#order-slip .credit-slip ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

body.page-order-slip .credit-slip li,
body.order-slip-page .credit-slip li,
body#order-slip .credit-slip li {
  padding: 8px 0;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

body.page-order-slip .credit-slip li:last-child,
body.order-slip-page .credit-slip li:last-child,
body#order-slip .credit-slip li:last-child {
  border-bottom: none;
}

body.page-order-slip .credit-slip a,
body.order-slip-page .credit-slip a,
body#order-slip .credit-slip a {
  color: #ffa366;
  text-decoration: none;
}

body.page-order-slip .credit-slip a:hover,
body.order-slip-page .credit-slip a:hover,
body#order-slip .credit-slip a:hover {
  color: #ffa366;
  text-decoration: underline;
}

/* Order-slip : cacher footer global + chat */
body.page-order-slip #footer,
body.page-order-slip footer#footer,
body.page-order-slip footer.js-footer,
body.page-order-slip .js-footer,
body.page-order-slip .footer-container,
body.page-order-slip #chat-bubble,
body.page-order-slip #chat-window,
body.page-order-slip footer.page-footer,
body.page-order-slip .page-footer,
body.order-slip-page #footer,
body.order-slip-page footer#footer,
body.order-slip-page footer.js-footer,
body.order-slip-page .js-footer,
body.order-slip-page .footer-container,
body.order-slip-page #chat-bubble,
body.order-slip-page #chat-window,
body.order-slip-page footer.page-footer,
body.order-slip-page .page-footer,
body#order-slip #footer,
body#order-slip footer#footer,
body#order-slip footer.js-footer,
body#order-slip .js-footer,
body#order-slip .footer-container,
body#order-slip #chat-bubble,
body#order-slip #chat-window,
body#order-slip footer.page-footer,
body#order-slip .page-footer {
  display: none !important;
}

/* ===================== PAGE GDPR (Données personnelles) ===================== */
body.module-psgdpr-gdpr,
body.psgdpr-gdpr-page,
body#module-psgdpr-gdpr,
body.page-module-psgdpr-gdpr,
body[id*="psgdpr"][id*="gdpr"],
body[class*="psgdpr"][class*="gdpr"] {
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-color: transparent !important;
  background-image: url('../img/img_fondv4.png') !important;
  overflow: hidden !important;
  height: 100vh !important;
  position: relative;
}

/* GDPR : fond garanti */
body.module-psgdpr-gdpr::before,
body.psgdpr-gdpr-page::before,
body#module-psgdpr-gdpr::before,
body.page-module-psgdpr-gdpr::before,
body[id*="psgdpr"][id*="gdpr"]::before,
body[class*="psgdpr"][class*="gdpr"]::before {
  content: '';
  position: fixed;
  inset: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-size: cover !important;
  background-position: center !important;
  z-index: -999 !important;
  pointer-events: none;
}

/* GDPR : s'assurer qu'aucun fond rose/violet ne reste */
body.module-psgdpr-gdpr #wrapper,
body.module-psgdpr-gdpr #main,
body.module-psgdpr-gdpr #content-wrapper,
body.module-psgdpr-gdpr #content,
body.module-psgdpr-gdpr .js-content-wrapper,
body.psgdpr-gdpr-page #wrapper,
body.psgdpr-gdpr-page #main,
body.psgdpr-gdpr-page #content-wrapper,
body.psgdpr-gdpr-page #content,
body.psgdpr-gdpr-page .js-content-wrapper,
body#module-psgdpr-gdpr #wrapper,
body#module-psgdpr-gdpr #main,
body#module-psgdpr-gdpr #content-wrapper,
body#module-psgdpr-gdpr #content,
body#module-psgdpr-gdpr .js-content-wrapper,
body.page-module-psgdpr-gdpr #wrapper,
body.page-module-psgdpr-gdpr #main,
body.page-module-psgdpr-gdpr #content-wrapper,
body.page-module-psgdpr-gdpr #content,
body.page-module-psgdpr-gdpr .js-content-wrapper {
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* GDPR : enlever la "colonne" de layout */
body.module-psgdpr-gdpr #wrapper .container,
body.module-psgdpr-gdpr #wrapper .container-fluid,
body.psgdpr-gdpr-page #wrapper .container,
body.psgdpr-gdpr-page #wrapper .container-fluid,
body#module-psgdpr-gdpr #wrapper .container,
body#module-psgdpr-gdpr #wrapper .container-fluid,
body.page-module-psgdpr-gdpr #wrapper .container,
body.page-module-psgdpr-gdpr #wrapper .container-fluid {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background-color: transparent !important;
}

body.module-psgdpr-gdpr #wrapper .row,
body.psgdpr-gdpr-page #wrapper .row,
body#module-psgdpr-gdpr #wrapper .row,
body.page-module-psgdpr-gdpr #wrapper .row {
  margin: 0 !important;
  background-color: transparent !important;
}

body.module-psgdpr-gdpr #content.page-content.card.card-block,
body.psgdpr-gdpr-page #content.page-content.card.card-block,
body#module-psgdpr-gdpr #content.page-content.card.card-block,
body.page-module-psgdpr-gdpr #content.page-content.card.card-block,
body.module-psgdpr-gdpr .page-content.card,
body.psgdpr-gdpr-page .page-content.card,
body#module-psgdpr-gdpr .page-content.card,
body.page-module-psgdpr-gdpr .page-content.card,
body.module-psgdpr-gdpr .card-block,
body.psgdpr-gdpr-page .card-block,
body#module-psgdpr-gdpr .card-block,
body.page-module-psgdpr-gdpr .card-block {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.module-psgdpr-gdpr #wrapper,
body.module-psgdpr-gdpr #main,
body.module-psgdpr-gdpr #content-wrapper,
body.module-psgdpr-gdpr #content,
body.module-psgdpr-gdpr section#main,
body.module-psgdpr-gdpr .container,
body.module-psgdpr-gdpr .container-fluid,
body.module-psgdpr-gdpr .row,
body.module-psgdpr-gdpr .page-content,
body.module-psgdpr-gdpr .card,
body.module-psgdpr-gdpr .card-block,
body.module-psgdpr-gdpr .page-footer,
body.module-psgdpr-gdpr .page-header,
body.module-psgdpr-gdpr .breadcrumb,
body.module-psgdpr-gdpr nav.breadcrumb,
body.psgdpr-gdpr-page #wrapper,
body.psgdpr-gdpr-page #main,
body.psgdpr-gdpr-page #content-wrapper,
body.psgdpr-gdpr-page #content,
body.psgdpr-gdpr-page section#main,
body.psgdpr-gdpr-page .container,
body.psgdpr-gdpr-page .container-fluid,
body.psgdpr-gdpr-page .row,
body.psgdpr-gdpr-page .page-content,
body.psgdpr-gdpr-page .card,
body.psgdpr-gdpr-page .card-block,
body.psgdpr-gdpr-page .page-footer,
body.psgdpr-gdpr-page .page-header,
body.psgdpr-gdpr-page .breadcrumb,
body.psgdpr-gdpr-page nav.breadcrumb,
body#module-psgdpr-gdpr #wrapper,
body#module-psgdpr-gdpr #main,
body#module-psgdpr-gdpr #content-wrapper,
body#module-psgdpr-gdpr #content,
body#module-psgdpr-gdpr section#main,
body#module-psgdpr-gdpr .container,
body#module-psgdpr-gdpr .container-fluid,
body#module-psgdpr-gdpr .row,
body#module-psgdpr-gdpr .page-content,
body#module-psgdpr-gdpr .card,
body#module-psgdpr-gdpr .card-block,
body#module-psgdpr-gdpr .page-footer,
body#module-psgdpr-gdpr .page-header,
body#module-psgdpr-gdpr .breadcrumb,
body#module-psgdpr-gdpr nav.breadcrumb,
body.page-module-psgdpr-gdpr #wrapper,
body.page-module-psgdpr-gdpr #main,
body.page-module-psgdpr-gdpr #content-wrapper,
body.page-module-psgdpr-gdpr #content,
body.page-module-psgdpr-gdpr section#main,
body.page-module-psgdpr-gdpr .container,
body.page-module-psgdpr-gdpr .container-fluid,
body.page-module-psgdpr-gdpr .row,
body.page-module-psgdpr-gdpr .page-content,
body.page-module-psgdpr-gdpr .card,
body.page-module-psgdpr-gdpr .card-block,
body.page-module-psgdpr-gdpr .page-footer,
body.page-module-psgdpr-gdpr .page-header,
body.page-module-psgdpr-gdpr .breadcrumb,
body.page-module-psgdpr-gdpr nav.breadcrumb {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* GDPR : même header que Identity */
body.module-psgdpr-gdpr #header,
body.module-psgdpr-gdpr .kany-header,
body.psgdpr-gdpr-page #header,
body.psgdpr-gdpr-page .kany-header,
body#module-psgdpr-gdpr #header,
body#module-psgdpr-gdpr .kany-header,
body.page-module-psgdpr-gdpr #header,
body.page-module-psgdpr-gdpr .kany-header {
  display: block !important;
  visibility: visible !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-bottom: none !important;
  padding: 0 !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  z-index: 50 !important;
}

/* GDPR : header-container en pleine largeur */
body.module-psgdpr-gdpr .header-container,
body.psgdpr-gdpr-page .header-container,
body#module-psgdpr-gdpr .header-container,
body.page-module-psgdpr-gdpr .header-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 1rem 2rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
  box-sizing: border-box !important;
}

/* GDPR : header-center équidistant du logo et des liens */
body.module-psgdpr-gdpr .header-center,
body.psgdpr-gdpr-page .header-center,
body#module-psgdpr-gdpr .header-center,
body.page-module-psgdpr-gdpr .header-center {
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
}

/* GDPR : header-left et header-right pour équilibrage */
body.module-psgdpr-gdpr .header-left,
body.psgdpr-gdpr-page .header-left,
body#module-psgdpr-gdpr .header-left,
body.page-module-psgdpr-gdpr .header-left {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

body.module-psgdpr-gdpr .header-right,
body.psgdpr-gdpr-page .header-right,
body#module-psgdpr-gdpr .header-right,
body.page-module-psgdpr-gdpr .header-right {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  justify-content: flex-end !important;
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  flex-direction: row !important;
  gap: 1.5rem !important;
  white-space: nowrap !important;
}

/* GDPR : masquer le fil d'Ariane */
body.module-psgdpr-gdpr .breadcrumb,
body.module-psgdpr-gdpr nav.breadcrumb,
body.psgdpr-gdpr-page .breadcrumb,
body.psgdpr-gdpr-page nav.breadcrumb,
body#module-psgdpr-gdpr .breadcrumb,
body#module-psgdpr-gdpr nav.breadcrumb,
body.page-module-psgdpr-gdpr .breadcrumb,
body.page-module-psgdpr-gdpr nav.breadcrumb {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* GDPR : container */
.kany-gdpr-container {
  min-height: 100vh;
  padding-top: 30px;
  padding-bottom: 40px;
  overflow: hidden;
}

.kany-gdpr-wrapper {
  max-width: 1100px;
  width: 100%;
}

body.module-psgdpr-gdpr .kany-gdpr-card.kany-login-form-container,
body.psgdpr-gdpr-page .kany-gdpr-card.kany-login-form-container,
body#module-psgdpr-gdpr .kany-gdpr-card.kany-login-form-container,
body.page-module-psgdpr-gdpr .kany-gdpr-card.kany-login-form-container {
  max-height: calc(100vh - 200px) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
  padding: 40px 36px !important;
}

/* GDPR : styles pour le contenu */
body.module-psgdpr-gdpr .gdpr-content-inner,
body.psgdpr-gdpr-page .gdpr-content-inner,
body#module-psgdpr-gdpr .gdpr-content-inner,
body.page-module-psgdpr-gdpr .gdpr-content-inner {
  width: 100%;
}

/* GDPR : bouton Revenir à mon compte */
body.module-psgdpr-gdpr .kany-back-to-account,
body.psgdpr-gdpr-page .kany-back-to-account,
body#module-psgdpr-gdpr .kany-back-to-account,
body.page-module-psgdpr-gdpr .kany-back-to-account {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
  padding: 10px 16px;
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  color: #ffffff !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  transition: all 0.3s ease !important;
  border: none !important;
}

body.module-psgdpr-gdpr .kany-back-to-account:hover,
body.psgdpr-gdpr-page .kany-back-to-account:hover,
body#module-psgdpr-gdpr .kany-back-to-account:hover,
body.page-module-psgdpr-gdpr .kany-back-to-account:hover {
  color: #ffffff !important;
  text-decoration: none !important;
  transform: translateX(-3px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
}

/* GDPR : styles pour les sections */
body.module-psgdpr-gdpr .psgdprinfo17,
body.psgdpr-gdpr-page .psgdprinfo17,
body#module-psgdpr-gdpr .psgdprinfo17,
body.page-module-psgdpr-gdpr .psgdprinfo17 {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 12px;
  padding: 20px;
  margin-bottom: 20px;
}

body.module-psgdpr-gdpr .psgdprinfo17 h2,
body.psgdpr-gdpr-page .psgdprinfo17 h2,
body#module-psgdpr-gdpr .psgdprinfo17 h2,
body.page-module-psgdpr-gdpr .psgdprinfo17 h2 {
  color: #fff;
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 12px;
}

body.module-psgdpr-gdpr .psgdprinfo17 p,
body.psgdpr-gdpr-page .psgdprinfo17 p,
body#module-psgdpr-gdpr .psgdprinfo17 p,
body.page-module-psgdpr-gdpr .psgdprinfo17 p {
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.6;
  margin-bottom: 16px;
}

body.module-psgdpr-gdpr .psgdprinfo17 a,
body.psgdpr-gdpr-page .psgdprinfo17 a,
body#module-psgdpr-gdpr .psgdprinfo17 a,
body.page-module-psgdpr-gdpr .psgdprinfo17 a {
  color: #ffa366;
  text-decoration: none;
}

body.module-psgdpr-gdpr .psgdprinfo17 a:hover,
body.psgdpr-gdpr-page .psgdprinfo17 a:hover,
body#module-psgdpr-gdpr .psgdprinfo17 a:hover,
body.page-module-psgdpr-gdpr .psgdprinfo17 a:hover {
  color: #ffa366;
  text-decoration: underline;
}

/* GDPR : actions buttons */
body.module-psgdpr-gdpr .psgdpr-actions,
body.psgdpr-gdpr-page .psgdpr-actions,
body#module-psgdpr-gdpr .psgdpr-actions,
body.page-module-psgdpr-gdpr .psgdpr-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 16px;
}

body.module-psgdpr-gdpr .psgdpr-actions a.btn,
body.psgdpr-gdpr-page .psgdpr-actions a.btn,
body#module-psgdpr-gdpr .psgdpr-actions a.btn,
body.page-module-psgdpr-gdpr .psgdpr-actions a.btn,
body.module-psgdpr-gdpr .psgdprgetdatabtn17,
body.psgdpr-gdpr-page .psgdprgetdatabtn17,
body#module-psgdpr-gdpr .psgdprgetdatabtn17,
body.page-module-psgdpr-gdpr .psgdprgetdatabtn17 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  border-radius: 8px;
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  border: none !important;
  color: #fff !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  flex: 1 1 auto;
  min-width: 200px;
}

body.module-psgdpr-gdpr .psgdpr-actions a.btn:hover,
body.psgdpr-gdpr-page .psgdpr-actions a.btn:hover,
body#module-psgdpr-gdpr .psgdpr-actions a.btn:hover,
body.page-module-psgdpr-gdpr .psgdpr-actions a.btn:hover,
body.module-psgdpr-gdpr .psgdprgetdatabtn17:hover,
body.psgdpr-gdpr-page .psgdprgetdatabtn17:hover,
body#module-psgdpr-gdpr .psgdprgetdatabtn17:hover,
body.page-module-psgdpr-gdpr .psgdprgetdatabtn17:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25) !important;
  text-decoration: none !important;
  color: #fff !important;
}

/* GDPR : cacher footer global + chat */
body.module-psgdpr-gdpr #footer,
body.module-psgdpr-gdpr footer#footer,
body.module-psgdpr-gdpr footer.js-footer,
body.module-psgdpr-gdpr .js-footer,
body.module-psgdpr-gdpr .footer-container,
body.module-psgdpr-gdpr #chat-bubble,
body.module-psgdpr-gdpr #chat-window,
body.module-psgdpr-gdpr footer.page-footer,
body.module-psgdpr-gdpr .page-footer,
body.psgdpr-gdpr-page #footer,
body.psgdpr-gdpr-page footer#footer,
body.psgdpr-gdpr-page footer.js-footer,
body.psgdpr-gdpr-page .js-footer,
body.psgdpr-gdpr-page .footer-container,
body.psgdpr-gdpr-page #chat-bubble,
body.psgdpr-gdpr-page #chat-window,
body.psgdpr-gdpr-page footer.page-footer,
body.psgdpr-gdpr-page .page-footer,
body#module-psgdpr-gdpr #footer,
body#module-psgdpr-gdpr footer#footer,
body#module-psgdpr-gdpr footer.js-footer,
body#module-psgdpr-gdpr .js-footer,
body#module-psgdpr-gdpr .footer-container,
body#module-psgdpr-gdpr #chat-bubble,
body#module-psgdpr-gdpr #chat-window,
body#module-psgdpr-gdpr footer.page-footer,
body#module-psgdpr-gdpr .page-footer,
body.page-module-psgdpr-gdpr #footer,
body.page-module-psgdpr-gdpr footer#footer,
body.page-module-psgdpr-gdpr footer.js-footer,
body.page-module-psgdpr-gdpr .js-footer,
body.page-module-psgdpr-gdpr .footer-container,
body.page-module-psgdpr-gdpr #chat-bubble,
body.page-module-psgdpr-gdpr #chat-window,
body.page-module-psgdpr-gdpr footer.page-footer,
body.page-module-psgdpr-gdpr .page-footer {
  display: none !important;
}

/* ===================== PAGE LISTES D'ENVIES (wishlist) ===================== */
body.module-blockwishlist-lists,
body.wishlist-page,
body#wishlist,
body[id*="blockwishlist"][id*="lists"],
body[class*="blockwishlist"][class*="lists"],
body.page-module-blockwishlist-lists,
body#module-blockwishlist-lists {
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-color: transparent !important;
  background-image: url('../img/img_fondv4.png') !important;
  overflow: hidden !important;
  height: 100vh !important;
  position: relative;
}

/* Wishlist : fond garanti */
body.module-blockwishlist-lists::before,
body.wishlist-page::before,
body#wishlist::before,
body[id*="blockwishlist"][id*="lists"]::before,
body[class*="blockwishlist"][class*="lists"]::before,
body.page-module-blockwishlist-lists::before,
body#module-blockwishlist-lists::before {
  content: '';
  position: fixed;
  inset: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: url('../img/img_fondv4.png') no-repeat center/cover !important;
  background-attachment: fixed !important;
  background-size: cover !important;
  background-position: center !important;
  z-index: -999 !important;
  pointer-events: none;
}

/* Wishlist : s'assurer qu'aucun fond rose/violet ne reste */
body.module-blockwishlist-lists #wrapper,
body.module-blockwishlist-lists #main,
body.module-blockwishlist-lists #content-wrapper,
body.module-blockwishlist-lists #content,
body.module-blockwishlist-lists .js-content-wrapper,
body.wishlist-page #wrapper,
body.wishlist-page #main,
body.wishlist-page #content-wrapper,
body.wishlist-page #content,
body.wishlist-page .js-content-wrapper,
body#wishlist #wrapper,
body#wishlist #main,
body#wishlist #content-wrapper,
body#wishlist #content,
body#wishlist .js-content-wrapper {
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Wishlist : enlever la "colonne" de layout */
body.module-blockwishlist-lists #wrapper .container,
body.module-blockwishlist-lists #wrapper .container-fluid,
body.wishlist-page #wrapper .container,
body.wishlist-page #wrapper .container-fluid,
body#wishlist #wrapper .container,
body#wishlist #wrapper .container-fluid {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background-color: transparent !important;
}

body.module-blockwishlist-lists #wrapper .row,
body.wishlist-page #wrapper .row,
body#wishlist #wrapper .row {
  margin: 0 !important;
  background-color: transparent !important;
}

body.module-blockwishlist-lists #content.page-content.card.card-block,
body.wishlist-page #content.page-content.card.card-block,
body#wishlist #content.page-content.card.card-block,
body.module-blockwishlist-lists .page-content.card,
body.wishlist-page .page-content.card,
body#wishlist .page-content.card,
body.module-blockwishlist-lists .card-block,
body.wishlist-page .card-block,
body#wishlist .card-block {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.module-blockwishlist-lists #wrapper,
body.module-blockwishlist-lists #main,
body.module-blockwishlist-lists #content-wrapper,
body.module-blockwishlist-lists #content,
body.module-blockwishlist-lists section#main,
body.module-blockwishlist-lists .container,
body.module-blockwishlist-lists .container-fluid,
body.module-blockwishlist-lists .row,
body.module-blockwishlist-lists .page-content,
body.module-blockwishlist-lists .card,
body.module-blockwishlist-lists .card-block,
body.module-blockwishlist-lists .page-footer,
body.module-blockwishlist-lists .page-header,
body.module-blockwishlist-lists .breadcrumb,
body.module-blockwishlist-lists nav.breadcrumb,
body.wishlist-page #wrapper,
body.wishlist-page #main,
body.wishlist-page #content-wrapper,
body.wishlist-page #content,
body.wishlist-page section#main,
body.wishlist-page .container,
body.wishlist-page .container-fluid,
body.wishlist-page .row,
body.wishlist-page .page-content,
body.wishlist-page .card,
body.wishlist-page .card-block,
body.wishlist-page .page-footer,
body.wishlist-page .page-header,
body.wishlist-page .breadcrumb,
body.wishlist-page nav.breadcrumb,
body#wishlist #wrapper,
body#wishlist #main,
body#wishlist #content-wrapper,
body#wishlist #content,
body#wishlist section#main,
body#wishlist .container,
body#wishlist .container-fluid,
body#wishlist .row,
body#wishlist .page-content,
body#wishlist .card,
body#wishlist .card-block,
body#wishlist .page-footer,
body#wishlist .page-header,
body#wishlist .breadcrumb,
body#wishlist nav.breadcrumb {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* Wishlist : même header que Identity */
body.module-blockwishlist-lists #header,
body.module-blockwishlist-lists .kany-header,
body.wishlist-page #header,
body.wishlist-page .kany-header,
body[id*="blockwishlist"][id*="lists"] #header,
body[id*="blockwishlist"][id*="lists"] .kany-header,
body[class*="blockwishlist"][class*="lists"] #header,
body[class*="blockwishlist"][class*="lists"] .kany-header,
body.page-module-blockwishlist-lists #header,
body.page-module-blockwishlist-lists .kany-header,
body#module-blockwishlist-lists #header,
body#module-blockwishlist-lists .kany-header {
  display: block !important;
  visibility: visible !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-bottom: none !important;
  padding: 0 !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  z-index: 50 !important;
}

/* Wishlist : header-container en pleine largeur */
body.module-blockwishlist-lists .header-container,
body.wishlist-page .header-container,
body[id*="blockwishlist"][id*="lists"] .header-container,
body[class*="blockwishlist"][class*="lists"] .header-container,
body.page-module-blockwishlist-lists .header-container,
body#module-blockwishlist-lists .header-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 1rem 2rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
  box-sizing: border-box !important;
}

/* Wishlist : header-center équidistant du logo et des liens */
body.module-blockwishlist-lists .header-center,
body.wishlist-page .header-center,
body[id*="blockwishlist"][id*="lists"] .header-center,
body[class*="blockwishlist"][class*="lists"] .header-center,
body.page-module-blockwishlist-lists .header-center,
body#module-blockwishlist-lists .header-center {
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
}

/* Wishlist : header-left et header-right pour équilibrage */
body.module-blockwishlist-lists .header-left,
body.wishlist-page .header-left,
body[id*="blockwishlist"][id*="lists"] .header-left,
body[class*="blockwishlist"][class*="lists"] .header-left,
body.page-module-blockwishlist-lists .header-left,
body#module-blockwishlist-lists .header-left {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

body.module-blockwishlist-lists .header-right,
body.wishlist-page .header-right,
body[id*="blockwishlist"][id*="lists"] .header-right,
body[class*="blockwishlist"][class*="lists"] .header-right,
body.page-module-blockwishlist-lists .header-right,
body#module-blockwishlist-lists .header-right {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  justify-content: flex-end !important;
}

/* Wishlist : masquer le fil d'Ariane */
body.module-blockwishlist-lists .breadcrumb,
body.module-blockwishlist-lists nav.breadcrumb,
body.wishlist-page .breadcrumb,
body.wishlist-page nav.breadcrumb {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Wishlist : container */
.kany-wishlist-container {
  min-height: 100vh;
  padding-top: 30px;
  padding-bottom: 40px;
  overflow: hidden;
}

.kany-wishlist-wrapper {
  max-width: 1100px;
  width: 100%;
}

body.module-blockwishlist-lists .kany-wishlist-card.kany-login-form-container,
body.wishlist-page .kany-wishlist-card.kany-login-form-container {
  max-height: calc(100vh - 200px) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
  padding: 40px 36px !important;
}

/* Wishlist : styles pour le contenu */
body.module-blockwishlist-lists .wishlist-content-inner,
body.wishlist-page .wishlist-content-inner {
  width: 100%;
}

/* Wishlist : hover orange sur le titre de liste */
body.module-blockwishlist-lists .wishlist-list-item-title,
body.wishlist-page .wishlist-list-item-title,
body[id*="blockwishlist"][id*="lists"] .wishlist-list-item-title,
body[class*="blockwishlist"][class*="lists"] .wishlist-list-item-title,
body.page-module-blockwishlist-lists .wishlist-list-item-title,
body#module-blockwishlist-lists .wishlist-list-item-title {
  transition: color 0.3s ease !important;
}

body.module-blockwishlist-lists .wishlist-list-item-link:hover .wishlist-list-item-title,
body.wishlist-page .wishlist-list-item-link:hover .wishlist-list-item-title,
body[id*="blockwishlist"][id*="lists"] .wishlist-list-item-link:hover .wishlist-list-item-title,
body[class*="blockwishlist"][class*="lists"] .wishlist-list-item-link:hover .wishlist-list-item-title,
body.page-module-blockwishlist-lists .wishlist-list-item-link:hover .wishlist-list-item-title,
body#module-blockwishlist-lists .wishlist-list-item-link:hover .wishlist-list-item-title,
body.module-blockwishlist-lists .wishlist-list-item:hover .wishlist-list-item-title,
body.wishlist-page .wishlist-list-item:hover .wishlist-list-item-title,
body[id*="blockwishlist"][id*="lists"] .wishlist-list-item:hover .wishlist-list-item-title,
body[class*="blockwishlist"][class*="lists"] .wishlist-list-item:hover .wishlist-list-item-title,
body.page-module-blockwishlist-lists .wishlist-list-item:hover .wishlist-list-item-title,
body#module-blockwishlist-lists .wishlist-list-item:hover .wishlist-list-item-title {
  color: #ffa366 !important;
}

body.module-blockwishlist-lists .wishlist-list-item-link:hover .wishlist-list-item-title span,
body.wishlist-page .wishlist-list-item-link:hover .wishlist-list-item-title span,
body[id*="blockwishlist"][id*="lists"] .wishlist-list-item-link:hover .wishlist-list-item-title span,
body[class*="blockwishlist"][class*="lists"] .wishlist-list-item-link:hover .wishlist-list-item-title span,
body.page-module-blockwishlist-lists .wishlist-list-item-link:hover .wishlist-list-item-title span,
body#module-blockwishlist-lists .wishlist-list-item-link:hover .wishlist-list-item-title span,
body.module-blockwishlist-lists .wishlist-list-item:hover .wishlist-list-item-title span,
body.wishlist-page .wishlist-list-item:hover .wishlist-list-item-title span,
body[id*="blockwishlist"][id*="lists"] .wishlist-list-item:hover .wishlist-list-item-title span,
body[class*="blockwishlist"][class*="lists"] .wishlist-list-item:hover .wishlist-list-item-title span,
body.page-module-blockwishlist-lists .wishlist-list-item:hover .wishlist-list-item-title span,
body#module-blockwishlist-lists .wishlist-list-item:hover .wishlist-list-item-title span {
  color: #ffa366 !important;
}

/* Wishlist : bouton Revenir à mon compte - même style que page Address */
body.module-blockwishlist-lists .kany-back-to-account,
body.wishlist-page .kany-back-to-account,
body#wishlist .kany-back-to-account,
body[id*="blockwishlist"][id*="lists"] .kany-back-to-account,
body[class*="blockwishlist"][class*="lists"] .kany-back-to-account,
body.page-module-blockwishlist-lists .kany-back-to-account,
body#module-blockwishlist-lists .kany-back-to-account {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
  padding: 10px 16px;
  background: linear-gradient(135deg, #f9c74f, #f9844a, #f3722c) !important;
  color: #ffffff !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  transition: all 0.3s ease !important;
  border: none !important;
}

body.module-blockwishlist-lists .kany-back-to-account:hover,
body.wishlist-page .kany-back-to-account:hover,
body#wishlist .kany-back-to-account:hover,
body[id*="blockwishlist"][id*="lists"] .kany-back-to-account:hover,
body[class*="blockwishlist"][class*="lists"] .kany-back-to-account:hover,
body.page-module-blockwishlist-lists .kany-back-to-account:hover,
body#module-blockwishlist-lists .kany-back-to-account:hover {
  color: #ffffff !important;
  text-decoration: none !important;
  transform: translateX(-3px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
}

/* Wishlist : cacher footer global + chat */
body.module-blockwishlist-lists #footer,
body.module-blockwishlist-lists footer#footer,
body.module-blockwishlist-lists footer.js-footer,
body.module-blockwishlist-lists .js-footer,
body.module-blockwishlist-lists .footer-container,
body.module-blockwishlist-lists #chat-bubble,
body.module-blockwishlist-lists #chat-window,
body.module-blockwishlist-lists footer.page-footer,
body.module-blockwishlist-lists .page-footer {
  display: none !important;
}

/* FORCER la police Anton sur wishlist - règles ultra-spécifiques */
body[id*="blockwishlist"] h1.kany-auth-title,
body[class*="blockwishlist"] h1.kany-auth-title,
body[id*="blockwishlist"] .kany-auth-title,
body[class*="blockwishlist"] .kany-auth-title,
body[id*="blockwishlist"] .kany3d-nav-link,
body[class*="blockwishlist"] .kany3d-nav-link,
body[id*="blockwishlist"] a.kany3d-nav-link,
body[class*="blockwishlist"] a.kany3d-nav-link {
  font-family: 'Anton', sans-serif !important;
  font-weight: 400 !important;
}

/* Header wishlist en pleine largeur - règles ultra-spécifiques */
body[id*="blockwishlist"] #header,
body[class*="blockwishlist"] #header,
body[id*="blockwishlist"] .kany-header,
body[class*="blockwishlist"] .kany-header {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
}

body[id*="blockwishlist"] .header-container,
body[class*="blockwishlist"] .header-container {
  width: 100% !important;
  max-width: 100% !important;
  padding: 1rem 2rem !important;
}

/* Container wishlist rapproché du header */
body[id*="blockwishlist"] .kany-wishlist-container,
body[class*="blockwishlist"] .kany-wishlist-container {
  padding-top: 30px !important;
}

/* Masquer le footer global (#footer) et le footer page-footer partout */
#footer,
footer#footer,
footer.js-footer,
.footer-container {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  left: -9999px !important;
  z-index: -9999 !important;
}

/* Masquer le footer page-footer (Retour à votre compte, Accueil, Déconnexion) */
footer.page-footer,
.page-footer {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  left: -9999px !important;
  z-index: -9999 !important;
}

/* Masquer les liens account-link dans le footer */
footer.page-footer .account-link,
.page-footer .account-link {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* S'assurer qu'il n'y a pas de fond rose sur la page d'authentification */
body.page-authentication,
body.page-authentication body,
body.page-authentication html,
body.page-registration,
body.page-registration body,
body.page-registration html,
body.registration-page,
body.registration-page body,
body.registration-page html {
  background: transparent !important;
  background-color: transparent !important;
  overflow: hidden !important;
  height: 100vh !important;
}

/* Désactiver le scroll vertical sur la page de connexion et d'inscription */
body.page-authentication,
body.page-registration,
body.registration-page {
  overflow: hidden !important;
  height: 100vh !important;
  position: fixed !important;
  width: 100% !important;
}

body.page-authentication #wrapper,
body.page-authentication #main,
body.page-authentication #content-wrapper,
body.page-registration #wrapper,
body.page-registration #main,
body.page-registration #content-wrapper,
body.registration-page #wrapper,
body.registration-page #main,
body.registration-page #content-wrapper {
  overflow: hidden !important;
  height: 100vh !important;
}

/* Header pour la page de connexion et d'inscription - même que page d'accueil */
body.page-authentication #header,
body.page-authentication .kany-header,
body.page-registration #header,
body.page-registration .kany-header,
body.registration-page #header,
body.registration-page .kany-header {
  display: block !important;
  visibility: visible !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-bottom: none !important;
  padding: 1rem 2rem !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 1000 !important;
  width: 100% !important;
  font-family: 'Anton', sans-serif !important;
}

/* Mon compte : même header que Connexion */
body.page-my-account #header,
body.page-my-account .kany-header {
  display: block !important;
  visibility: visible !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-bottom: none !important;
  padding: 1rem 2rem !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 50 !important;
}

body.page-my-account .header-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
}

body.page-my-account .header-left,
body.page-identity .header-left,
body.identity-page .header-left,
body.page-addresses .header-left,
body.addresses-page .header-left,
body.page-address .header-left,
body.address-page .header-left,
body.page-history .header-left,
body.history-page .header-left,
body.page-order-detail .header-left,
body.order-detail-page .header-left,
body.module-blockwishlist-lists .header-left,
body.wishlist-page .header-left,
body.page-order-slip .header-left,
body.order-slip-page .header-left,
body#order-slip .header-left {
  margin-right: auto !important;
}

body.page-my-account .header-center,
body.page-identity .header-center,
body.identity-page .header-center,
body.page-addresses .header-center,
body.addresses-page .header-center,
body.page-address .header-center,
body.address-page .header-center,
body.page-history .header-center,
body.history-page .header-center,
body.page-order-detail .header-center,
body.order-detail-page .header-center,
body.module-blockwishlist-lists .header-center,
body.wishlist-page .header-center,
body.page-order-slip .header-center,
body.order-slip-page .header-center,
body#order-slip .header-center {
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}

body.page-my-account .header-right,
body.page-identity .header-right,
body.identity-page .header-right,
body.page-addresses .header-right,
body.addresses-page .header-right,
body.page-address .header-right,
body.address-page .header-right,
body.page-history .header-right,
body.history-page .header-right,
body.page-order-detail .header-right,
body.order-detail-page .header-right,
body.module-blockwishlist-lists .header-right,
body.wishlist-page .header-right,
body[id*="blockwishlist"][id*="lists"] .header-right,
body[class*="blockwishlist"][class*="lists"] .header-right,
body.page-module-blockwishlist-lists .header-right,
body#module-blockwishlist-lists .header-right,
body.page-order-slip .header-right,
body.order-slip-page .header-right,
body#order-slip .header-right {
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  flex-direction: row !important;
  gap: 1.5rem !important;
  white-space: nowrap !important;
}

/* S'assurer que l'icône panier est bien alignée */
body.module-blockwishlist-lists .header-right .kany-cart,
body.wishlist-page .header-right .kany-cart,
body[id*="blockwishlist"][id*="lists"] .header-right .kany-cart,
body[class*="blockwishlist"][class*="lists"] .header-right .kany-cart,
body.page-module-blockwishlist-lists .header-right .kany-cart,
body#module-blockwishlist-lists .header-right .kany-cart,
body.page-order-slip .header-right .kany-cart,
body.order-slip-page .header-right .kany-cart,
body#order-slip .header-right .kany-cart,
body.page-authentication .header-right .kany-cart,
body.page-registration .header-right .kany-cart,
body.page-my-account .header-right .kany-cart,
body.page-identity .header-right .kany-cart,
body.page-addresses .header-right .kany-cart,
body.page-address .header-right .kany-cart,
body.page-history .header-right .kany-cart,
body.page-order-detail .header-right .kany-cart {
  font-size: 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Masquer tout texte dans kany-cart */
body.page-order-slip .header-right .kany-cart *:not(.material-icons),
body.order-slip-page .header-right .kany-cart *:not(.material-icons),
body#order-slip .header-right .kany-cart *:not(.material-icons),
body.page-authentication .header-right .kany-cart *:not(.material-icons),
body.page-registration .header-right .kany-cart *:not(.material-icons),
body.page-my-account .header-right .kany-cart *:not(.material-icons),
body.page-identity .header-right .kany-cart *:not(.material-icons),
body.page-addresses .header-right .kany-cart *:not(.material-icons),
body.page-address .header-right .kany-cart *:not(.material-icons),
body.page-history .header-right .kany-cart *:not(.material-icons),
body.page-order-detail .header-right .kany-cart *:not(.material-icons),
body.module-blockwishlist-lists .header-right .kany-cart *:not(.material-icons),
body.wishlist-page .header-right .kany-cart *:not(.material-icons) {
  display: none !important;
  visibility: hidden !important;
  font-size: 0 !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* S'assurer que l'icône Material Icons est visible */
body.page-order-slip .header-right .kany-cart .material-icons,
body.order-slip-page .header-right .kany-cart .material-icons,
body#order-slip .header-right .kany-cart .material-icons,
body.page-authentication .header-right .kany-cart .material-icons,
body.page-registration .header-right .kany-cart .material-icons,
body.page-my-account .header-right .kany-cart .material-icons,
body.page-identity .header-right .kany-cart .material-icons,
body.page-addresses .header-right .kany-cart .material-icons,
body.page-address .header-right .kany-cart .material-icons,
body.page-history .header-right .kany-cart .material-icons,
body.page-order-detail .header-right .kany-cart .material-icons,
body.module-blockwishlist-lists .header-right .kany-cart .material-icons,
body.wishlist-page .header-right .kany-cart .material-icons {
  display: inline-block !important;
  visibility: visible !important;
  font-size: 24px !important;
  width: auto !important;
  height: auto !important;
  font-family: 'Material Icons' !important;
}
  display: inline-flex !important;
  align-items: center !important;
  flex-shrink: 0 !important;
}

/* S'assurer que les liens sont inline */
body.module-blockwishlist-lists .header-right .kany3d-nav-link,
body.wishlist-page .header-right .kany3d-nav-link,
body[id*="blockwishlist"][id*="lists"] .header-right .kany3d-nav-link,
body[class*="blockwishlist"][class*="lists"] .header-right .kany3d-nav-link,
body.page-module-blockwishlist-lists .header-right .kany3d-nav-link,
body#module-blockwishlist-lists .header-right .kany3d-nav-link {
  display: inline-block !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

body.page-my-account .kany-auth-title,
body.page-my-account .header-right,
body.page-my-account .header-right *,
body.page-my-account .header-right a,
body.page-my-account .header-right .kany3d-nav-link,
body.page-identity .kany-auth-title,
body.page-identity .header-right,
body.page-identity .header-right *,
body.page-identity .header-right a,
body.page-identity .header-right .kany3d-nav-link,
body.identity-page .kany-auth-title,
body.identity-page .header-right,
body.identity-page .header-right *,
body.identity-page .header-right a,
body.identity-page .header-right .kany3d-nav-link,
body.page-addresses .kany-auth-title,
body.page-addresses .header-right,
body.page-addresses .header-right *,
body.page-addresses .header-right a,
body.page-addresses .header-right .kany3d-nav-link,
body.addresses-page .kany-auth-title,
body.addresses-page .header-right,
body.addresses-page .header-right *,
body.addresses-page .header-right a,
body.addresses-page .header-right .kany3d-nav-link,
body.page-address .kany-auth-title,
body.page-address .header-right,
body.page-address .header-right *,
body.page-address .header-right a,
body.page-address .header-right .kany3d-nav-link,
body.address-page .kany-auth-title,
body.address-page .header-right,
body.address-page .header-right *,
body.address-page .header-right a,
body.address-page .header-right .kany3d-nav-link,
body.page-history .kany-auth-title,
body.page-history .header-right,
body.page-history .header-right *,
body.page-history .header-right a,
body.page-history .header-right .kany3d-nav-link,
body.history-page .kany-auth-title,
body.history-page .header-right,
body.history-page .header-right *,
body.history-page .header-right a,
body.history-page .header-right .kany3d-nav-link,
body.page-order-detail .kany-auth-title,
body.page-order-detail .header-right,
body.page-order-detail .header-right *,
body.page-order-detail .header-right a,
body.page-order-detail .header-right .kany3d-nav-link,
body.order-detail-page .kany-auth-title,
body.order-detail-page .header-right,
body.order-detail-page .header-right *,
body.order-detail-page .header-right a,
body.order-detail-page .header-right .kany3d-nav-link,
body.module-blockwishlist-lists .kany-auth-title,
body.module-blockwishlist-lists .header-right,
body.module-blockwishlist-lists .header-right *,
body.module-blockwishlist-lists .header-right a,
body.module-blockwishlist-lists .header-right .kany3d-nav-link,
body.wishlist-page .kany-auth-title,
body.wishlist-page .header-right,
body.wishlist-page .header-right *,
body.wishlist-page .header-right a,
body.wishlist-page .header-right .kany3d-nav-link,
body.module-blockwishlist-lists .kany3d-nav-link,
body.wishlist-page .kany3d-nav-link,
body.module-blockwishlist-lists h1.kany-auth-title,
body.wishlist-page h1.kany-auth-title,
body.module-blockwishlist-lists a.kany3d-nav-link,
body.wishlist-page a.kany3d-nav-link,
body[id*="blockwishlist"][id*="lists"] .kany-auth-title,
body[id*="blockwishlist"][id*="lists"] .kany3d-nav-link,
body[class*="blockwishlist"][class*="lists"] .kany-auth-title,
body[class*="blockwishlist"][class*="lists"] .kany3d-nav-link,
body.page-module-blockwishlist-lists .kany-auth-title,
body.page-module-blockwishlist-lists .kany3d-nav-link,
body#module-blockwishlist-lists .kany-auth-title,
body#module-blockwishlist-lists .kany3d-nav-link,
body[id*="blockwishlist"] h1.kany-auth-title,
body[class*="blockwishlist"] h1.kany-auth-title,
body[id*="blockwishlist"] a.kany3d-nav-link,
body[class*="blockwishlist"] a.kany3d-nav-link,
body.page-order-slip .kany-auth-title,
body.page-order-slip .header-right,
body.page-order-slip .header-right *,
body.page-order-slip .header-right a,
body.page-order-slip .header-right .kany3d-nav-link,
body.order-slip-page .kany-auth-title,
body.order-slip-page .header-right,
body.order-slip-page .header-right *,
body.order-slip-page .header-right a,
body.order-slip-page .header-right .kany3d-nav-link,
body#order-slip .kany-auth-title,
body#order-slip .header-right,
body#order-slip .header-right *,
body#order-slip .header-right a,
body#order-slip .header-right .kany3d-nav-link,
body.page-order-slip .kany3d-nav-link,
body.order-slip-page .kany3d-nav-link,
body#order-slip .kany3d-nav-link,
body.page-order-slip h1.kany-auth-title,
body.order-slip-page h1.kany-auth-title,
body#order-slip h1.kany-auth-title,
body.page-order-slip a.kany3d-nav-link,
body.order-slip-page a.kany3d-nav-link,
body#order-slip a.kany3d-nav-link {
  font-family: 'Anton', sans-serif !important;
  font-weight: 500 !important;
}

/* IMPORTANT: ne pas écraser la police des Material Icons */
body.page-my-account .material-icons,
body.page-my-account i.material-icons,
body.page-my-account .header-right .material-icons,
body.page-my-account .header-right i.material-icons,
body.page-identity .material-icons,
body.page-identity i.material-icons,
body.page-identity .header-right .material-icons,
body.page-identity .header-right i.material-icons,
body.identity-page .material-icons,
body.identity-page i.material-icons,
body.identity-page .header-right .material-icons,
body.identity-page .header-right i.material-icons,
body.page-addresses .material-icons,
body.page-addresses i.material-icons,
body.page-addresses .header-right .material-icons,
body.page-addresses .header-right i.material-icons,
body.addresses-page .material-icons,
body.addresses-page i.material-icons,
body.addresses-page .header-right .material-icons,
body.addresses-page .header-right i.material-icons,
body.page-address .material-icons,
body.page-address i.material-icons,
body.page-address .header-right .material-icons,
body.page-address .header-right i.material-icons,
body.address-page .material-icons,
body.address-page i.material-icons,
body.address-page .header-right .material-icons,
body.address-page .header-right i.material-icons,
body.page-history .material-icons,
body.page-history i.material-icons,
body.page-history .header-right .material-icons,
body.page-history .header-right i.material-icons,
body.history-page .material-icons,
body.history-page i.material-icons,
body.history-page .header-right .material-icons,
body.history-page .header-right i.material-icons,
body.page-order-detail .material-icons,
body.page-order-detail i.material-icons,
body.page-order-detail .header-right .material-icons,
body.page-order-detail .header-right i.material-icons,
body.order-detail-page .material-icons,
body.order-detail-page i.material-icons,
body.order-detail-page .header-right .material-icons,
body.order-detail-page .header-right i.material-icons,
body.module-blockwishlist-lists .material-icons,
body.module-blockwishlist-lists i.material-icons,
body.module-blockwishlist-lists .header-right .material-icons,
body.module-blockwishlist-lists .header-right i.material-icons,
body.wishlist-page .material-icons,
body.wishlist-page i.material-icons,
body.wishlist-page .header-right .material-icons,
body.wishlist-page .header-right i.material-icons,
body.module-psgdpr-gdpr .material-icons,
body.module-psgdpr-gdpr i.material-icons,
body.module-psgdpr-gdpr .header-right .material-icons,
body.module-psgdpr-gdpr .header-right i.material-icons,
body.psgdpr-gdpr-page .material-icons,
body.psgdpr-gdpr-page i.material-icons,
body.psgdpr-gdpr-page .header-right .material-icons,
body.psgdpr-gdpr-page .header-right i.material-icons,
body#module-psgdpr-gdpr .material-icons,
body#module-psgdpr-gdpr i.material-icons,
body#module-psgdpr-gdpr .header-right .material-icons,
body#module-psgdpr-gdpr .header-right i.material-icons,
body.page-module-psgdpr-gdpr .material-icons,
body.page-module-psgdpr-gdpr i.material-icons,
body.page-module-psgdpr-gdpr .header-right .material-icons,
body.page-module-psgdpr-gdpr .header-right i.material-icons {
  font-family: 'Material Icons' !important;
  font-weight: normal !important;
  font-style: normal !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

body.page-my-account .kany-auth-title,
body.page-identity .kany-auth-title,
body.identity-page .kany-auth-title,
body.page-addresses .kany-auth-title,
body.addresses-page .kany-auth-title,
body.page-address .kany-auth-title,
body.address-page .kany-auth-title,
body.page-history .kany-auth-title,
body.history-page .kany-auth-title,
body.page-order-detail .kany-auth-title,
body.order-detail-page .kany-auth-title,
body.module-blockwishlist-lists .kany-auth-title,
body.wishlist-page .kany-auth-title,
body.module-blockwishlist-lists h1.kany-auth-title,
body.wishlist-page h1.kany-auth-title,
body[id*="blockwishlist"][id*="lists"] .kany-auth-title,
body[id*="blockwishlist"][id*="lists"] h1.kany-auth-title,
body[class*="blockwishlist"][class*="lists"] .kany-auth-title,
body[class*="blockwishlist"][class*="lists"] h1.kany-auth-title,
body.page-module-blockwishlist-lists .kany-auth-title,
body.page-module-blockwishlist-lists h1.kany-auth-title,
body#module-blockwishlist-lists .kany-auth-title,
body#module-blockwishlist-lists h1.kany-auth-title,
body.page-order-slip .kany-auth-title,
body.order-slip-page .kany-auth-title,
body#order-slip .kany-auth-title,
body.page-order-slip h1.kany-auth-title,
body.order-slip-page h1.kany-auth-title,
body#order-slip h1.kany-auth-title,
body.module-psgdpr-gdpr .kany-auth-title,
body.psgdpr-gdpr-page .kany-auth-title,
body#module-psgdpr-gdpr .kany-auth-title,
body.page-module-psgdpr-gdpr .kany-auth-title,
body.module-psgdpr-gdpr h1.kany-auth-title,
body.psgdpr-gdpr-page h1.kany-auth-title,
body#module-psgdpr-gdpr h1.kany-auth-title,
body.page-module-psgdpr-gdpr h1.kany-auth-title {
  font-family: 'Anton', sans-serif !important;
  font-size: 3.5rem !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #fff !important;
  margin: 0 !important;
  transition: font-size 0.3s ease, letter-spacing 0.3s ease !important;
  font-weight: 400 !important;
}

/* Responsive pour le titre selon la largeur de l'écran */
@media (max-width: 480px) {
  body.page-my-account .kany-auth-title,
  body.page-identity .kany-auth-title,
  body.identity-page .kany-auth-title,
  body.page-addresses .kany-auth-title,
  body.addresses-page .kany-auth-title,
  body.page-address .kany-auth-title,
  body.address-page .kany-auth-title,
  body.page-history .kany-auth-title,
  body.history-page .kany-auth-title,
  body.page-order-detail .kany-auth-title,
  body.order-detail-page .kany-auth-title,
  body.module-blockwishlist-lists .kany-auth-title,
  body.wishlist-page .kany-auth-title {
    font-size: 1.2rem !important;
    letter-spacing: 1px !important;
  }
}

@media (min-width: 481px) and (max-width: 768px) {
  body.page-my-account .kany-auth-title,
  body.page-identity .kany-auth-title,
  body.identity-page .kany-auth-title,
  body.page-addresses .kany-auth-title,
  body.addresses-page .kany-auth-title,
  body.page-address .kany-auth-title,
  body.address-page .kany-auth-title,
  body.page-history .kany-auth-title,
  body.history-page .kany-auth-title,
  body.page-order-detail .kany-auth-title,
  body.order-detail-page .kany-auth-title,
  body.module-blockwishlist-lists .kany-auth-title,
  body.wishlist-page .kany-auth-title {
    font-size: 1.8rem !important;
    letter-spacing: 1.5px !important;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  body.page-my-account .kany-auth-title,
  body.page-identity .kany-auth-title,
  body.identity-page .kany-auth-title,
  body.page-addresses .kany-auth-title,
  body.addresses-page .kany-auth-title,
  body.page-address .kany-auth-title,
  body.address-page .kany-auth-title,
  body.page-history .kany-auth-title,
  body.history-page .kany-auth-title,
  body.page-order-detail .kany-auth-title,
  body.order-detail-page .kany-auth-title,
  body.module-blockwishlist-lists .kany-auth-title,
  body.wishlist-page .kany-auth-title,
  body.page-order-slip .kany-auth-title,
  body.order-slip-page .kany-auth-title,
  body#order-slip .kany-auth-title,
  body.module-psgdpr-gdpr .kany-auth-title,
  body.psgdpr-gdpr-page .kany-auth-title,
  body#module-psgdpr-gdpr .kany-auth-title,
  body.page-module-psgdpr-gdpr .kany-auth-title {
    font-size: 2.5rem !important;
    letter-spacing: 2px !important;
  }
}

@media (min-width: 1025px) and (max-width: 1366px) {
  body.page-my-account .kany-auth-title,
  body.page-identity .kany-auth-title,
  body.identity-page .kany-auth-title,
  body.page-addresses .kany-auth-title,
  body.addresses-page .kany-auth-title,
  body.page-address .kany-auth-title,
  body.address-page .kany-auth-title,
  body.page-history .kany-auth-title,
  body.history-page .kany-auth-title,
  body.page-order-detail .kany-auth-title,
  body.order-detail-page .kany-auth-title,
  body.module-blockwishlist-lists .kany-auth-title,
  body.wishlist-page .kany-auth-title,
  body.page-order-slip .kany-auth-title,
  body.order-slip-page .kany-auth-title,
  body#order-slip .kany-auth-title,
  body.module-psgdpr-gdpr .kany-auth-title,
  body.psgdpr-gdpr-page .kany-auth-title,
  body#module-psgdpr-gdpr .kany-auth-title,
  body.page-module-psgdpr-gdpr .kany-auth-title {
    font-size: 3rem !important;
    letter-spacing: 2.5px !important;
  }
}

/* Responsive selon la hauteur de l'écran également */
@media (max-height: 600px) {
  body.page-my-account .kany-auth-title,
  body.page-identity .kany-auth-title,
  body.identity-page .kany-auth-title,
  body.page-addresses .kany-auth-title,
  body.addresses-page .kany-auth-title,
  body.page-address .kany-auth-title,
  body.address-page .kany-auth-title,
  body.page-history .kany-auth-title,
  body.history-page .kany-auth-title,
  body.page-order-detail .kany-auth-title,
  body.order-detail-page .kany-auth-title,
  body.module-blockwishlist-lists .kany-auth-title,
  body.wishlist-page .kany-auth-title,
  body.page-order-slip .kany-auth-title,
  body.order-slip-page .kany-auth-title,
  body#order-slip .kany-auth-title {
    font-size: 1.5rem !important;
    letter-spacing: 1px !important;
  }
}

@media (min-height: 601px) and (max-height: 700px) {
  body.page-my-account .kany-auth-title,
  body.page-identity .kany-auth-title,
  body.identity-page .kany-auth-title,
  body.page-addresses .kany-auth-title,
  body.addresses-page .kany-auth-title,
  body.page-address .kany-auth-title,
  body.address-page .kany-auth-title,
  body.page-history .kany-auth-title,
  body.history-page .kany-auth-title,
  body.page-order-detail .kany-auth-title,
  body.order-detail-page .kany-auth-title,
  body.module-blockwishlist-lists .kany-auth-title,
  body.wishlist-page .kany-auth-title,
  body.page-order-slip .kany-auth-title,
  body.order-slip-page .kany-auth-title,
  body#order-slip .kany-auth-title {
    font-size: 2rem !important;
    letter-spacing: 1.5px !important;
  }
}

@media (min-height: 701px) and (max-height: 800px) {
  body.page-my-account .kany-auth-title,
  body.page-identity .kany-auth-title,
  body.identity-page .kany-auth-title,
  body.page-addresses .kany-auth-title,
  body.addresses-page .kany-auth-title,
  body.page-address .kany-auth-title,
  body.address-page .kany-auth-title,
  body.page-history .kany-auth-title,
  body.history-page .kany-auth-title,
  body.page-order-detail .kany-auth-title,
  body.order-detail-page .kany-auth-title,
  body.module-blockwishlist-lists .kany-auth-title,
  body.wishlist-page .kany-auth-title,
  body.page-order-slip .kany-auth-title,
  body.order-slip-page .kany-auth-title,
  body#order-slip .kany-auth-title {
    font-size: 2.5rem !important;
    letter-spacing: 2px !important;
  }
}

/* Responsive : Logo, liens et icône panier */
@media (max-width: 480px) {
  body.page-my-account .kany-logo img,
  body.page-identity .kany-logo img,
  body.identity-page .kany-logo img,
  body.page-addresses .kany-logo img,
  body.addresses-page .kany-logo img,
  body.page-address .kany-logo img,
  body.address-page .kany-logo img,
  body.page-history .kany-logo img,
  body.history-page .kany-logo img,
  body.page-order-detail .kany-logo img,
  body.order-detail-page .kany-logo img,
  body.module-blockwishlist-lists .kany-logo img,
  body.wishlist-page .kany-logo img {
    max-width: 80px !important;
    height: auto !important;
  }
  
  body.page-my-account .header-right .kany3d-nav-link,
  body.page-identity .header-right .kany3d-nav-link,
  body.identity-page .header-right .kany3d-nav-link,
  body.page-addresses .header-right .kany3d-nav-link,
  body.addresses-page .header-right .kany3d-nav-link,
  body.page-address .header-right .kany3d-nav-link,
  body.address-page .header-right .kany3d-nav-link,
  body.page-history .header-right .kany3d-nav-link,
  body.history-page .header-right .kany3d-nav-link,
  body.page-order-detail .header-right .kany3d-nav-link,
  body.order-detail-page .header-right .kany3d-nav-link,
  body.module-blockwishlist-lists .header-right .kany3d-nav-link,
  body.wishlist-page .header-right .kany3d-nav-link {
    font-size: 0.7rem !important;
  }
  
  body.page-my-account .header-right .kany-cart,
  body.page-identity .header-right .kany-cart,
  body.identity-page .header-right .kany-cart,
  body.page-addresses .header-right .kany-cart,
  body.addresses-page .header-right .kany-cart,
  body.page-address .header-right .kany-cart,
  body.address-page .header-right .kany-cart,
  body.page-history .header-right .kany-cart,
  body.history-page .header-right .kany-cart,
  body.page-order-detail .header-right .kany-cart,
  body.order-detail-page .header-right .kany-cart,
  body.module-blockwishlist-lists .header-right .kany-cart,
  body.wishlist-page .header-right .kany-cart {
    font-size: 1.2rem !important;
  }
  
  body.page-my-account .header-right .kany-cart .material-icons,
  body.page-identity .header-right .kany-cart .material-icons,
  body.identity-page .header-right .kany-cart .material-icons,
  body.page-addresses .header-right .kany-cart .material-icons,
  body.addresses-page .header-right .kany-cart .material-icons,
  body.page-address .header-right .kany-cart .material-icons,
  body.address-page .header-right .kany-cart .material-icons,
  body.page-history .header-right .kany-cart .material-icons,
  body.history-page .header-right .kany-cart .material-icons,
  body.page-order-detail .header-right .kany-cart .material-icons,
  body.order-detail-page .header-right .kany-cart .material-icons,
  body.module-blockwishlist-lists .header-right .kany-cart .material-icons,
  body.wishlist-page .header-right .kany-cart .material-icons {
    font-size: 1.2rem !important;
  }
}

@media (min-width: 481px) and (max-width: 768px) {
  body.page-my-account .kany-logo img,
  body.page-identity .kany-logo img,
  body.identity-page .kany-logo img,
  body.page-addresses .kany-logo img,
  body.addresses-page .kany-logo img,
  body.page-address .kany-logo img,
  body.address-page .kany-logo img,
  body.page-history .kany-logo img,
  body.history-page .kany-logo img,
  body.page-order-detail .kany-logo img,
  body.order-detail-page .kany-logo img,
  body.module-blockwishlist-lists .kany-logo img,
  body.wishlist-page .kany-logo img,
  body.page-order-slip .kany-logo img,
  body.order-slip-page .kany-logo img,
  body#order-slip .kany-logo img {
    max-width: 100px !important;
    height: auto !important;
  }
  
  body.page-my-account .header-right .kany3d-nav-link,
  body.page-identity .header-right .kany3d-nav-link,
  body.identity-page .header-right .kany3d-nav-link,
  body.page-addresses .header-right .kany3d-nav-link,
  body.addresses-page .header-right .kany3d-nav-link,
  body.page-address .header-right .kany3d-nav-link,
  body.address-page .header-right .kany3d-nav-link,
  body.page-history .header-right .kany3d-nav-link,
  body.history-page .header-right .kany3d-nav-link,
  body.page-order-detail .header-right .kany3d-nav-link,
  body.order-detail-page .header-right .kany3d-nav-link,
  body.module-blockwishlist-lists .header-right .kany3d-nav-link,
  body.wishlist-page .header-right .kany3d-nav-link,
  body.page-order-slip .header-right .kany3d-nav-link,
  body.order-slip-page .header-right .kany3d-nav-link,
  body#order-slip .header-right .kany3d-nav-link {
    font-size: 0.85rem !important;
  }
  
  body.page-my-account .header-right .kany-cart,
  body.page-identity .header-right .kany-cart,
  body.identity-page .header-right .kany-cart,
  body.page-addresses .header-right .kany-cart,
  body.addresses-page .header-right .kany-cart,
  body.page-address .header-right .kany-cart,
  body.address-page .header-right .kany-cart,
  body.page-history .header-right .kany-cart,
  body.history-page .header-right .kany-cart,
  body.page-order-detail .header-right .kany-cart,
  body.order-detail-page .header-right .kany-cart,
  body.module-blockwishlist-lists .header-right .kany-cart,
  body.wishlist-page .header-right .kany-cart,
  body.page-order-slip .header-right .kany-cart,
  body.order-slip-page .header-right .kany-cart,
  body#order-slip .header-right .kany-cart {
    font-size: 1.4rem !important;
  }
  
  body.page-my-account .header-right .kany-cart .material-icons,
  body.page-identity .header-right .kany-cart .material-icons,
  body.identity-page .header-right .kany-cart .material-icons,
  body.page-addresses .header-right .kany-cart .material-icons,
  body.addresses-page .header-right .kany-cart .material-icons,
  body.page-address .header-right .kany-cart .material-icons,
  body.address-page .header-right .kany-cart .material-icons,
  body.page-history .header-right .kany-cart .material-icons,
  body.history-page .header-right .kany-cart .material-icons,
  body.page-order-detail .header-right .kany-cart .material-icons,
  body.order-detail-page .header-right .kany-cart .material-icons,
  body.module-blockwishlist-lists .header-right .kany-cart .material-icons,
  body.wishlist-page .header-right .kany-cart .material-icons,
  body.page-order-slip .header-right .kany-cart .material-icons,
  body.order-slip-page .header-right .kany-cart .material-icons,
  body#order-slip .header-right .kany-cart .material-icons {
    font-size: 1.4rem !important;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  body.page-my-account .kany-logo img,
  body.page-identity .kany-logo img,
  body.identity-page .kany-logo img,
  body.page-addresses .kany-logo img,
  body.addresses-page .kany-logo img,
  body.page-address .kany-logo img,
  body.address-page .kany-logo img,
  body.page-history .kany-logo img,
  body.history-page .kany-logo img,
  body.page-order-detail .kany-logo img,
  body.order-detail-page .kany-logo img,
  body.module-blockwishlist-lists .kany-logo img,
  body.wishlist-page .kany-logo img {
    max-width: 120px !important;
    height: auto !important;
  }
  
  body.page-my-account .header-right .kany3d-nav-link,
  body.page-identity .header-right .kany3d-nav-link,
  body.identity-page .header-right .kany3d-nav-link,
  body.page-addresses .header-right .kany3d-nav-link,
  body.addresses-page .header-right .kany3d-nav-link,
  body.page-address .header-right .kany3d-nav-link,
  body.address-page .header-right .kany3d-nav-link,
  body.page-history .header-right .kany3d-nav-link,
  body.history-page .header-right .kany3d-nav-link,
  body.page-order-detail .header-right .kany3d-nav-link,
  body.order-detail-page .header-right .kany3d-nav-link,
  body.module-blockwishlist-lists .header-right .kany3d-nav-link,
  body.wishlist-page .header-right .kany3d-nav-link {
    font-size: 0.9rem !important;
  }
  
  body.page-my-account .header-right .kany-cart,
  body.page-identity .header-right .kany-cart,
  body.identity-page .header-right .kany-cart,
  body.page-addresses .header-right .kany-cart,
  body.addresses-page .header-right .kany-cart,
  body.page-address .header-right .kany-cart,
  body.address-page .header-right .kany-cart,
  body.page-history .header-right .kany-cart,
  body.history-page .header-right .kany-cart,
  body.page-order-detail .header-right .kany-cart,
  body.order-detail-page .header-right .kany-cart,
  body.module-blockwishlist-lists .header-right .kany-cart,
  body.wishlist-page .header-right .kany-cart {
    font-size: 1.6rem !important;
  }
  
  body.page-my-account .header-right .kany-cart .material-icons,
  body.page-identity .header-right .kany-cart .material-icons,
  body.identity-page .header-right .kany-cart .material-icons,
  body.page-addresses .header-right .kany-cart .material-icons,
  body.addresses-page .header-right .kany-cart .material-icons,
  body.page-address .header-right .kany-cart .material-icons,
  body.address-page .header-right .kany-cart .material-icons,
  body.page-history .header-right .kany-cart .material-icons,
  body.history-page .header-right .kany-cart .material-icons,
  body.page-order-detail .header-right .kany-cart .material-icons,
  body.order-detail-page .header-right .kany-cart .material-icons,
  body.module-blockwishlist-lists .header-right .kany-cart .material-icons,
  body.wishlist-page .header-right .kany-cart .material-icons {
    font-size: 1.6rem !important;
  }
}

/* Responsive selon la hauteur également */
@media (max-height: 600px) {
  body.page-my-account .kany-logo img,
  body.page-identity .kany-logo img,
  body.identity-page .kany-logo img,
  body.page-addresses .kany-logo img,
  body.addresses-page .kany-logo img,
  body.page-address .kany-logo img,
  body.address-page .kany-logo img,
  body.page-history .kany-logo img,
  body.history-page .kany-logo img,
  body.page-order-detail .kany-logo img,
  body.order-detail-page .kany-logo img,
  body.module-blockwishlist-lists .kany-logo img,
  body.wishlist-page .kany-logo img,
  body.page-order-slip .kany-logo img,
  body.order-slip-page .kany-logo img,
  body#order-slip .kany-logo img {
    max-width: 90px !important;
    height: auto !important;
  }
  
  body.page-my-account .header-right .kany3d-nav-link,
  body.page-identity .header-right .kany3d-nav-link,
  body.identity-page .header-right .kany3d-nav-link,
  body.page-addresses .header-right .kany3d-nav-link,
  body.addresses-page .header-right .kany3d-nav-link,
  body.page-address .header-right .kany3d-nav-link,
  body.address-page .header-right .kany3d-nav-link,
  body.page-history .header-right .kany3d-nav-link,
  body.history-page .header-right .kany3d-nav-link,
  body.page-order-detail .header-right .kany3d-nav-link,
  body.order-detail-page .header-right .kany3d-nav-link,
  body.module-blockwishlist-lists .header-right .kany3d-nav-link,
  body.wishlist-page .header-right .kany3d-nav-link,
  body.page-order-slip .header-right .kany3d-nav-link,
  body.order-slip-page .header-right .kany3d-nav-link,
  body#order-slip .header-right .kany3d-nav-link {
    font-size: 0.75rem !important;
  }
  
  body.page-my-account .header-right .kany-cart .material-icons,
  body.page-identity .header-right .kany-cart .material-icons,
  body.identity-page .header-right .kany-cart .material-icons,
  body.page-addresses .header-right .kany-cart .material-icons,
  body.addresses-page .header-right .kany-cart .material-icons,
  body.page-address .header-right .kany-cart .material-icons,
  body.address-page .header-right .kany-cart .material-icons,
  body.page-history .header-right .kany-cart .material-icons,
  body.history-page .header-right .kany-cart .material-icons,
  body.page-order-detail .header-right .kany-cart .material-icons,
  body.order-detail-page .header-right .kany-cart .material-icons,
  body.module-blockwishlist-lists .header-right .kany-cart .material-icons,
  body.wishlist-page .header-right .kany-cart .material-icons,
  body.page-order-slip .header-right .kany-cart .material-icons,
  body.order-slip-page .header-right .kany-cart .material-icons,
  body#order-slip .header-right .kany-cart .material-icons {
    font-size: 1.3rem !important;
  }
}

@media (min-height: 601px) and (max-height: 700px) {
  body.page-my-account .kany-logo img,
  body.page-identity .kany-logo img,
  body.identity-page .kany-logo img,
  body.page-addresses .kany-logo img,
  body.addresses-page .kany-logo img,
  body.page-address .kany-logo img,
  body.address-page .kany-logo img,
  body.page-history .kany-logo img,
  body.history-page .kany-logo img,
  body.page-order-detail .kany-logo img,
  body.order-detail-page .kany-logo img,
  body.module-blockwishlist-lists .kany-logo img,
  body.wishlist-page .kany-logo img {
    max-width: 110px !important;
    height: auto !important;
  }
  
  body.page-my-account .header-right .kany3d-nav-link,
  body.page-identity .header-right .kany3d-nav-link,
  body.identity-page .header-right .kany3d-nav-link,
  body.page-addresses .header-right .kany3d-nav-link,
  body.addresses-page .header-right .kany3d-nav-link,
  body.page-address .header-right .kany3d-nav-link,
  body.address-page .header-right .kany3d-nav-link,
  body.page-history .header-right .kany3d-nav-link,
  body.history-page .header-right .kany3d-nav-link,
  body.page-order-detail .header-right .kany3d-nav-link,
  body.order-detail-page .header-right .kany3d-nav-link,
  body.module-blockwishlist-lists .header-right .kany3d-nav-link,
  body.wishlist-page .header-right .kany3d-nav-link {
    font-size: 0.85rem !important;
  }
}

body.page-my-account .header-right .kany3d-nav-link {
  position: relative;
  color: #fff !important;
  text-decoration: none !important;
  padding-bottom: 0 !important;
  font-weight: 700 !important;
  transition: all 0.3s ease !important;
}

body.page-my-account .header-right .kany3d-nav-link::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 0;
  height: 3px;
  background-color: #F4A261;
  transition: width 0.4s ease;
}

body.page-my-account .header-right .kany3d-nav-link:hover {
  text-decoration: none !important;
  color: #F4A261 !important;
}

body.page-my-account .header-right .kany3d-nav-link:hover::after {
  width: 100%;
}

/* Connexion/Inscription/Mon compte/Identity/Addresses/Address/GDPR : liens Boutique/À propos comme sur la page À propos (cms) */
body.page-authentication .header-right .kany3d-nav-link,
body.page-registration .header-right .kany3d-nav-link,
body.registration-page .header-right .kany3d-nav-link,
body.page-my-account .header-right .kany3d-nav-link,
body.page-identity .header-right .kany3d-nav-link,
body.identity-page .header-right .kany3d-nav-link,
body.page-addresses .header-right .kany3d-nav-link,
body.addresses-page .header-right .kany3d-nav-link,
body.page-address .header-right .kany3d-nav-link,
body.address-page .header-right .kany3d-nav-link,
body.module-psgdpr-gdpr .header-right .kany3d-nav-link,
body.psgdpr-gdpr-page .header-right .kany3d-nav-link,
body#module-psgdpr-gdpr .header-right .kany3d-nav-link,
body.page-module-psgdpr-gdpr .header-right .kany3d-nav-link {
  position: relative !important;
  font-family: 'Anton', sans-serif !important;
  font-size: 1.15rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  text-decoration: none !important;
  padding: 10px 0 !important;
  transition: color 0.4s cubic-bezier(0.16, 1, 0.3, 1), transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
  outline: none !important;
}

body.page-authentication .header-right .kany3d-nav-link::after,
body.page-registration .header-right .kany3d-nav-link::after,
body.registration-page .header-right .kany3d-nav-link::after,
body.page-my-account .header-right .kany3d-nav-link::after,
body.page-identity .header-right .kany3d-nav-link::after,
body.identity-page .header-right .kany3d-nav-link::after,
body.page-addresses .header-right .kany3d-nav-link::after,
body.addresses-page .header-right .kany3d-nav-link::after,
body.page-address .header-right .kany3d-nav-link::after,
body.address-page .header-right .kany3d-nav-link::after,
body.module-psgdpr-gdpr .header-right .kany3d-nav-link::after,
body.psgdpr-gdpr-page .header-right .kany3d-nav-link::after,
body#module-psgdpr-gdpr .header-right .kany3d-nav-link::after,
body.page-module-psgdpr-gdpr .header-right .kany3d-nav-link::after {
  content: '' !important;
  position: absolute !important;
  bottom: -4px !important;
  left: 0 !important;
  width: 0 !important;
  height: 3px !important;
  background-color: #F4A261 !important;
  transition: width 0.4s ease !important;
}

body.page-authentication .header-right .kany3d-nav-link:hover,
body.page-registration .header-right .kany3d-nav-link:hover,
body.registration-page .header-right .kany3d-nav-link:hover,
body.page-my-account .header-right .kany3d-nav-link:hover,
body.page-identity .header-right .kany3d-nav-link:hover,
body.identity-page .header-right .kany3d-nav-link:hover,
body.page-addresses .header-right .kany3d-nav-link:hover,
body.addresses-page .header-right .kany3d-nav-link:hover,
body.page-address .header-right .kany3d-nav-link:hover,
body.address-page .header-right .kany3d-nav-link:hover,
body.page-history .header-right .kany3d-nav-link:hover,
body.history-page .header-right .kany3d-nav-link:hover,
body.page-order-detail .header-right .kany3d-nav-link:hover,
body.order-detail-page .header-right .kany3d-nav-link:hover,
body.module-blockwishlist-lists .header-right .kany3d-nav-link:hover,
body.wishlist-page .header-right .kany3d-nav-link:hover,
body.module-psgdpr-gdpr .header-right .kany3d-nav-link:hover,
body.psgdpr-gdpr-page .header-right .kany3d-nav-link:hover,
body#module-psgdpr-gdpr .header-right .kany3d-nav-link:hover,
body.page-module-psgdpr-gdpr .header-right .kany3d-nav-link:hover {
  color: #F4A261 !important;
}

body.page-authentication .header-right .kany3d-nav-link:hover::after,
body.page-registration .header-right .kany3d-nav-link:hover::after,
body.registration-page .header-right .kany3d-nav-link:hover::after,
body.page-my-account .header-right .kany3d-nav-link:hover::after,
body.page-identity .header-right .kany3d-nav-link:hover::after,
body.identity-page .header-right .kany3d-nav-link:hover::after,
body.page-addresses .header-right .kany3d-nav-link:hover::after,
body.addresses-page .header-right .kany3d-nav-link:hover::after,
body.page-address .header-right .kany3d-nav-link:hover::after,
body.address-page .header-right .kany3d-nav-link:hover::after,
body.page-history .header-right .kany3d-nav-link:hover::after,
body.history-page .header-right .kany3d-nav-link:hover::after,
body.page-order-detail .header-right .kany3d-nav-link:hover::after,
body.order-detail-page .header-right .kany3d-nav-link:hover::after,
body.module-blockwishlist-lists .header-right .kany3d-nav-link:hover::after,
body.wishlist-page .header-right .kany3d-nav-link:hover::after,
body.module-psgdpr-gdpr .header-right .kany3d-nav-link:hover::after,
body.psgdpr-gdpr-page .header-right .kany3d-nav-link:hover::after,
body#module-psgdpr-gdpr .header-right .kany3d-nav-link:hover::after,
body.page-module-psgdpr-gdpr .header-right .kany3d-nav-link:hover::after {
  width: 100% !important;
}

body.page-my-account .header-right .kany-cart {
  color: #fff !important;
  text-decoration: none !important;
  display: flex;
  align-items: center;
}

body.page-my-account .header-right .kany-cart:hover {
  color: #ffa366 !important;
}

body.page-authentication .header-container,
body.page-registration .header-container,
body.registration-page .header-container {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 1rem 2rem !important;
  background: transparent !important;
  gap: 2rem !important;
  font-family: 'Anton', sans-serif !important;
}

body.page-authentication #header,
body.page-authentication .kany-header {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
}

body.page-authentication .header-left,
body.page-registration .header-left,
body.registration-page .header-left {
  flex: 0 0 auto !important;
  width: auto !important;
}

body.page-authentication .header-nav,
body.page-registration .header-nav,
body.registration-page .header-nav {
  display: none !important;
}

body.page-authentication .header-center,
body.page-registration .header-center,
body.registration-page .header-center {
  flex: 1 1 auto !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: auto !important;
}

body.page-authentication .header-right,
body.page-registration .header-right,
body.registration-page .header-right {
  flex: 0 0 auto !important;
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 1.5rem !important;
  width: auto !important;
}

body.page-authentication .kany-auth-title,
body.page-registration .kany-auth-title,
body.registration-page .kany-auth-title {
  font-family: 'Anton', sans-serif !important;
  font-size: 3.5rem !important;
  font-weight: 400 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  letter-spacing: 3px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.page-authentication .header-right {
  flex: 0 0 auto !important;
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 1.5rem !important;
}

body.page-authentication .header-right,
body.page-authentication .header-right *,
body.page-authentication .header-right a,
body.page-authentication .header-right .kany3d-nav-link,
body.page-registration .header-right,
body.page-registration .header-right *,
body.page-registration .header-right a,
body.page-registration .header-right .kany3d-nav-link,
body.registration-page .header-right,
body.registration-page .header-right *,
body.registration-page .header-right a,
body.registration-page .header-right .kany3d-nav-link {
  font-family: 'Anton', sans-serif !important;
}

body.page-authentication .header-right .kany3d-nav-link,
body.page-registration .header-right .kany3d-nav-link,
body.registration-page .header-right .kany3d-nav-link {
  font-size: 1.2rem !important;
  font-weight: 400 !important;
  color: #fff !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  white-space: nowrap !important;
  position: relative !important;
  transition: color 0.3s ease !important;
  padding-bottom: 2px !important;
}

body.page-authentication .header-right .kany3d-nav-link::after,
body.page-registration .header-right .kany3d-nav-link::after,
body.registration-page .header-right .kany3d-nav-link::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 0 !important;
  height: 2px !important;
  background-color: #ffa366 !important;
  transition: width 0.3s ease !important;
}

body.page-authentication .header-right .kany3d-nav-link:hover,
body.page-registration .header-right .kany3d-nav-link:hover,
body.registration-page .header-right .kany3d-nav-link:hover {
  color: #ffa366 !important;
  text-decoration: none !important;
}

body.page-authentication .header-right .kany3d-nav-link:hover::after,
body.page-registration .header-right .kany3d-nav-link:hover::after,
body.registration-page .header-right .kany3d-nav-link:hover::after {
  width: 100% !important;
}

body.page-authentication .header-right .kany-cart,
body.page-registration .header-right .kany-cart,
body.registration-page .header-right .kany-cart {
  color: #fff !important;
  font-size: 28px !important;
  text-decoration: none !important;
  transition: color 0.3s ease !important;
  display: flex !important;
  align-items: center !important;
}

body.page-authentication .header-right .kany-cart:hover {
  color: #ffd4a3 !important;
}

body.page-authentication .header-right .kany-cart i {
  font-size: 28px !important;
}

/* Masquer le module panier par défaut qui affiche "Cart" ou "Shop" */
body.page-authentication #_desktop_cart,
body.page-authentication .blockcart,
body.page-authentication .cart-preview,
body.page-authentication .shopping-cart,
body.page-authentication span[class*="cart"],
body.page-authentication span[class*="shop"],
body.page-authentication a[class*="cart"] span:not(.material-icons),
body.page-authentication a[class*="shop"] span:not(.material-icons) {
  display: none !important;
}

/* Masquer tout texte "Shop", "Cart", "Panier" dans le header */
body.page-authentication .header-right span:not(.material-icons),
body.page-authentication .header-right .hidden-sm-down,
body.page-authentication .header-right [class*="cart"]:not(.material-icons):not(i),
body.page-authentication .header-right [class*="shop"]:not(.material-icons):not(i),
body.page-authentication .header-right text,
body.page-authentication .header-right::after,
body.page-authentication .header-right::before {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* S'assurer que seule l'icône du panier est visible */
body.page-authentication .header-right .kany-cart {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.page-authentication .header-right .kany-cart *:not(.material-icons):not(i) {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

/* S'assurer que tous les textes du header utilisent Anton */
body.page-authentication #header,
body.page-authentication #header *,
body.page-authentication .kany-header,
body.page-authentication .kany-header *,
body.page-authentication .header-container,
body.page-authentication .header-container *,
body.page-authentication .header-left,
body.page-authentication .header-left *,
body.page-authentication .header-center,
body.page-authentication .header-center *,
body.page-authentication .header-right,
body.page-authentication .header-right *,
body.page-authentication .kany-auth-title,
body.page-authentication .kany3d-nav-link,
body.page-authentication a.kany3d-nav-link {
  font-family: 'Anton', sans-serif !important;
}

body.page-authentication .kany-logo img {
  height: 120px !important;
  transition: transform 0.2s ease;
}

body.page-authentication .kany-logo img:hover {
  transform: scale(1.05);
}

/* FORCER la suppression de tous les fonds blancs et centrer le formulaire */
body.page-authentication .container,
body.page-authentication .container-fluid,
body.page-authentication .row {
  background: transparent !important;
  background-color: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-authentication .page-content.card.card-block {
  position: fixed !important;
  top: 45% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  -webkit-transform: translate(-50%, -50%) !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: auto !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.page-authentication #content.page-content {
  position: fixed !important;
  top: 45% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  -webkit-transform: translate(-50%, -50%) !important;
  width: 100% !important;
  max-width: 100% !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Styles pour les messages d'erreur */
.kany-login-form-container .alert-danger,
.kany-login-form-container .form-group .help-block {
  background: rgba(255, 0, 0, 0.2);
  color: #fff;
  padding: 10px;
  border-radius: 8px;
  margin-bottom: 15px;
  font-size: 0.85rem;
}

/* Styles pour le footer du formulaire */
.kany-login-form-container .form-footer,
.login-form .form-footer,
.login-form footer.form-footer {
  margin-top: 25px !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  text-align: center !important;
  width: 100% !important;
}

.kany-login-form-container #submit-login,
.login-form #submit-login,
.kany-login-form-container .kany-btn-login,
.login-form .kany-btn-login {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  margin: 0 auto !important;
}

.kany-login-form-container footer.form-footer,
.login-form .form-footer,
.login-form footer.form-footer {
  background: transparent !important;
  background-color: transparent !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin-top: 25px !important;
  width: 100% !important;
}

.kany-login-form-container #submit-login,
.login-form #submit-login,
.kany-login-form-container .kany-btn-login,
.login-form .kany-btn-login {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  margin-top: 20px !important;
}

/* Responsive */
@media (max-width: 480px) {
  .kany-login-form-container {
    padding: 30px 25px;
  }
  
  .kany-form-actions {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* ========== PAGE D'INSCRIPTION - MASQUER LE FOOTER ========== */
body.page-registration footer:not(.form-footer),
body.page-registration #footer,
body.page-registration footer#footer,
body.page-registration .js-footer,
body.page-registration .footer-container,
body.page-registration .page-footer,
body.registration-page footer:not(.form-footer),
body.registration-page #footer,
body.registration-page footer#footer,
body.registration-page .js-footer,
body.registration-page .footer-container,
body.registration-page .page-footer {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
}

/* ========== PAGE D'ACCUEIL - SECTION 3D KANY ========== */
/* S'assurer que la section 3D est visible sur la page d'accueil */
body.index {
  background: #000 !important;
  overflow: hidden !important;
  height: 100vh !important; /* Ajout pour s'assurer que le body prend toute la hauteur de la vue */
}

/* ========== STYLES HEADER - ICÔNES PANIER ET COMPTE ========== */
.header-right .kany-cart,
.header-right .kany-account,
.kany3d-nav-menu .kany-cart,
.kany3d-nav-menu .kany-account {
  color: #f6edd9;
  text-decoration: none;
  display: flex;
  align-items: center;
  transition: color 0.4s cubic-bezier(0.16, 1, 0.3, 1),
              transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: color, transform;
}

.header-right .kany-cart:hover,
.header-right .kany-account:hover,
.kany3d-nav-menu .kany-cart:hover,
.kany3d-nav-menu .kany-account:hover {
  color: #ff9240;
  text-decoration: none;
  transform: translateY(-2px);
}

.header-right .kany-cart i,
.header-right .kany-account i,
.kany3d-nav-menu .kany-cart i,
.kany3d-nav-menu .kany-account i {
  font-size: 24px;
}

body.index #kany-3d-section {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 9999 !important;
}

/* Header visible sur toutes les pages */
body.index .ps_newproducts,
body.index .ps_bestsellers {
  display: none !important;
  visibility: hidden !important;
}
#header {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-bottom: none !important;
  position: relative;
  z-index: 10;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.cms-id-4 #header,
.cms-id-4 header.kany-header,
.cms-id-4 .header-container {
  display: none !important;
  visibility: hidden !important;
}

.cms-id-4 #header {
  background: transparent !important;
  border-bottom: none !important;
}
#header .header-top {
  background: transparent !important;
  background-color: transparent !important;
  border-bottom: none !important;
}

.cms-id-4 #header .header-top {
  background: transparent !important;
  border-bottom: none !important;
}
.kany-header {
  background: transparent !important;
  background-color: transparent !important;
  border-bottom: none !important;
  padding: 0 !important;
  position: sticky;
  top: 0;
  z-index: 100;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

.cms-id-4 .kany-header {
  background: transparent !important;
  border-bottom: none !important;
}

.header-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 1rem 2rem !important;
  background: transparent !important;
  background-color: transparent !important;
  border-bottom: none !important;
  box-sizing: border-box !important;
}

.cms-id-4 .header-container {
  background: transparent !important;
  border-bottom: none !important;
}

/* Logo */
.kany-logo img {
  height: 200px;
  transition: transform 0.2s ease;
}
.kany-logo img:hover {
  transform: scale(1.05);
}

/* Logo réduit sur la page À propos */
.cms-id-4 .kany-logo img {
  height: 150px;
}

/* Ajuster le logo en dessous de 427px pour aligner avec les autres éléments */
@media (max-width: 427px) {
  .kany-logo {
    margin-top: 15px;
  }
}

/* Réduire la taille du logo en dessous de 370px */
@media (max-width: 370px) {
  .kany-logo img {
    height: 140px !important;
  }
}

/* Nav desktop */
.header-nav ul {
  display: flex;
  gap: 2rem;
  list-style: none;
  margin: 0;
  border: none !important;
}
.header-nav li {
  border: none !important;
  border-bottom: none !important;
}
.header-nav a {
  text-decoration: none !important;
  color: #fff !important;
  font-weight: 700 !important;
  transition: all 0.3s ease;
  border: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  position: relative;
  outline: none !important;
}

.header-nav a::before {
  display: none !important;
  content: none !important;
}

.header-nav a::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 0;
  height: 3px;
  background-color: #F4A261;
  transition: width 0.4s ease;
}

.header-nav a:hover {
  text-decoration: none !important;
  color: #F4A261 !important;
  border-bottom: none !important;
}

.header-nav a:hover::after {
  width: 100%;
}

/* Right icons */
.header-right .kany3d-nav-link,
.header-right .kany-cart,
.header-right .kany-account,
.header-right .kany-cart i.material-icons,
.header-right .kany-account i.material-icons {
  color: #fff !important;
  text-decoration: none;
  margin-left: 1rem;
  font-size: 1.4rem;
  transition: color 0.3s ease;
}

.header-right a:hover,
.header-right .kany-cart:hover,
.header-right .kany-account:hover,
.header-right .kany-cart:hover i.material-icons,
.header-right .kany-account:hover i.material-icons {
  color: #F4A261 !important;
}
#header .header-nav a:hover {
  color: #F4A261 !important;
  text-decoration: none !important;
}

/* Menu toggle bouton */
.menu-toggle {
  display: none;
  background: none;
  border: none;
  font-size: 2rem;
  cursor: pointer;
  color: #fff !important;
  transition: color 0.3s ease;
}

.menu-toggle:hover,
.menu-toggle:hover i.material-icons {
  color: #F4A261 !important;
}

.menu-toggle i.material-icons {
  color: inherit;
}

.menu-toggle i {
  pointer-events: none;
}

/* Cacher le bouton hamburger quand le menu est ouvert */
body.menu-open .menu-toggle {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

/* Empêcher le scroll quand le menu est ouvert */
body.menu-open {
  overflow: hidden;
}

/* Responsive */
@media (max-width: 992px) {
   .header-container {
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    position: relative;
  }

  /* Overlay pour le menu mobile */
  .menu-overlay {
    display: none;
    position: fixed;
    top: 140px;
    left: 0;
    width: 100%;
    height: calc(100% - 140px);
    background: rgba(0, 0, 0, 0.5);
    z-index: 998;
    opacity: 0;
    transition: opacity 0.3s ease;
  }

  .menu-overlay.active {
    display: block;
    opacity: 1;
  }

  /* Menu caché par défaut avec animation */
  .header-nav {
    position: fixed;
    top: 140px;
    right: -100%;
    width: 280px;
    max-width: 75%;
    height: calc(100vh - 140px);
    max-height: none !important;
    margin: 0;
    background: #fff !important;
    box-shadow: -4px 0 20px rgba(0, 0, 0, 0.25), -2px 0 10px rgba(0, 0, 0, 0.15);
    border-radius: 0 0 0 12px;
    z-index: 999999;
    transition: right 0.3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s ease;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 0;
    border-left: none;
  }

  /* Bouton de fermeture dans le menu - COMPLÈTEMENT CACHÉ */
  .header-nav .menu-close {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  /* Menu ouvert */
  .header-nav.active {
    right: 0;
    box-shadow: -6px 0 30px rgba(0, 0, 0, 0.3), -3px 0 15px rgba(0, 0, 0, 0.2);
    background: #fff !important;
  }

  .header-nav ul {
    flex-direction: column;
    gap: 0;
    list-style: none;
    margin: 0;
    padding: 0;
    background-color: transparent;
    width: 100%;
    height: 100%;
    display: flex !important;
    flex: 1;
    justify-content: space-evenly;
    align-items: stretch;
  }

  .header-nav li {
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    width: 100%;
    margin: 0;
    padding: 0;
    display: flex !important;
    flex: 1;
    align-items: center;
    transition: transform 0.2s ease;
  }

  .header-nav li:last-child {
    border-bottom: none;
  }

  .header-nav li:hover {
    transform: translateX(-3px);
  }

  .header-nav a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 12px 20px !important;
    color: #1a1a1a !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border-bottom: none !important;
    text-decoration: none !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 60px !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
    line-height: 1.3 !important;
    text-align: center !important;
    position: relative;
    letter-spacing: 0.3px;
  }

  .header-nav a::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(180deg, #6a00ff 0%, #8b5cf6 100%);
    transform: scaleY(0);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 0 4px 4px 0;
  }

  .header-nav a::after {
    display: none !important;
  }

  .header-nav a:hover,
  .header-nav a:active,
  .header-nav a:focus {
    background: linear-gradient(90deg, rgba(106, 0, 255, 0.08) 0%, rgba(106, 0, 255, 0.03) 100%) !important;
    color: #6a00ff !important;
    text-decoration: none !important;
    padding-left: 25px !important;
  }

  .header-nav a:hover::before,
  .header-nav a:active::before,
  .header-nav a:focus::before {
    transform: scaleY(1);
  }

  /* Les icnes restent sur la mme ligne que le logo */
  .header-right {
    display: flex;
    align-items: center;
    gap: 1rem;
  }

  /* Bouton hamburger visible sur mobile */
  .menu-toggle {
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: none !important;
    border: none !important;
    font-size: 2rem;
    cursor: pointer;
    color: #fff !important;
    padding: 0.5rem;
    transition: transform 0.3s ease, opacity 0.3s ease, visibility 0.3s ease, color 0.3s ease;
    z-index: 1001 !important;
    position: relative;
  }

  .menu-toggle:hover,
  .menu-toggle:hover i.material-icons {
    color: #F4A261 !important;
    transform: scale(1.1);
  }

  .menu-toggle i.material-icons {
    color: inherit;
  }

  .menu-toggle i {
    pointer-events: none;
  }

  /* Cacher le bouton hamburger quand le menu est ouvert */
  body.menu-open .menu-toggle {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  /* Empêcher le scroll quand le menu est ouvert */
  body.menu-open {
    overflow: hidden;
  }
}

/* Tablettes */
@media (max-width: 768px) {
  .header-nav {
    width: 300px;
    max-width: 80%;
  }

  .header-nav a {
    padding: 1rem 1.5rem;
    font-size: 1rem;
  }

  .container-login button[data-action="show-password"],
  .container-login .input-group-btn button,
  .container-login .input-group-btn .btn {
    padding: 12px 8px !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    max-width: 70px !important;
    height: 48px !important;
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  
  .container-login .input-group {
    align-items: stretch !important;
  }
  
  .container-login .input-group .form-control,
  .container-login .input-group input[type="password"] {
    height: 48px !important;
  }
  
  .container-login input,
  .container-login input[type="email"],
  .container-login input[type="password"],
  .container-login input[type="text"],
  .container-login .form-control {
    height: 48px;
  }
}

/* Téléphones */
@media (max-width: 480px) {
  .header-nav {
    width: 280px;
    max-width: 85%;
  }

  .header-nav a {
    padding: 0.9rem 1.2rem;
    font-size: 0.95rem;
  }

  .menu-toggle {
    font-size: 1.8rem;
  }

  .container-login button[data-action="show-password"],
  .container-login .input-group-btn button,
  .container-login .input-group-btn .btn {
    padding: 0 !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    max-width: 70px !important;
    height: 100%;
  }
}

/* ===== PAGE À PROPOS ===== */

.cms-id-4 #footer {
  display: none !important;
}

.cms-id-4 .breadcrumb {
  display: none !important;
}

.cms-id-4 #content-wrapper {
  background: transparent !important;
  min-height: 100vh !important;
}

.cms-id-4 .page-content.card {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Header transparent pour laisser voir la vidéo */
.cms-id-4 #header,
.cms-id-4 .kany-header,
.cms-id-4 #header .header-top,
.cms-id-4 .header-container,
.cms-id-4 #header .kany-header,
.cms-id-4 #header .header-container {
  background: transparent !important;
}

/* Fond dégradé vert-orange pour toute la page - dégradé smooth sur tout le body */
html.cms-id-4,
html.cms-id-4 body,
.cms-id-4 body,
body.cms-id-4 {
  background: linear-gradient(180deg, 
    #a8d8a8 0%, 
    #b5d9b0 15%, 
    #c2dab8 30%, 
    #d0dbc0 45%, 
    #dddcc8 60%, 
    #eaddd0 75%, 
    #f6ded8 85%, 
    #ffd4a3 100%) !important;
  background-attachment: fixed !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center top !important;
  min-height: 100vh !important;
  height: 100% !important;
  position: relative;
  overflow-x: hidden;
}

.cms-id-4 #wrapper,
.cms-id-4 #main,
.cms-id-4 #content-wrapper,
.cms-id-4 #content,
.cms-id-4 .page-content {
  background: transparent !important;
  min-height: 100vh !important;
}

.about-page {
  background: transparent !important;
}
.about-page {
  padding: 3rem 0;
  background: transparent;
}

.about-page .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem;
}

/* Section Équipe */
.team-section {
  position: relative;
  margin-bottom: 4rem;
  text-align: center;
}

.team-img {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
}

.team-labels {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.label {
  position: absolute;
  background: rgba(255, 255, 255, 0.95);
  padding: 10px 18px;
  border-radius: 25px;
  font-family: 'Anton', sans-serif;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.2;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.label span {
  font-family: 'Anton', sans-serif;
  font-weight: 400;
  font-size: 0.85em;
  display: block;
  margin-top: 4px;
}

.label.khalid {
  color: #7dd86f;
  top: 50%; 
  left: 15%; 
}

.label.alexis {
  color: #B44B9A;
  top: 98%; 
  left: 38%; 
}

.label.noam {
  color: #ff9240;
  bottom: 98%; 
  left: 50%; 
}

.label.yassine {
  color: #E7A92D;
  bottom: 15%;
  right: 20%;
}

.yassine { 
  bottom: 15%; 
  right: 20%; 
}

/* Section Logo */
.logo-section {
  text-align: center;
  margin: 4rem 0;
}

.logo-section img {
  max-width: 200px;
  margin-bottom: 1.5rem;
}

.logo-section h2 {
  font-size: 2rem;
  font-weight: bold;
  color: #ffffff;
  margin-bottom: 1rem;
}

.logo-section p {
  font-size: 1.1rem;
  color: #ffffff;
  max-width: 600px;
  margin: 0 auto;
}

/* Grille des saveurs - 4 colonnes côte à côte */
.flavors-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
  margin: 4rem auto;
  padding: 0 1rem;
  width: 100%;
  max-width: 1200px;
  justify-content: center;
}

/* Wrapper pour l'effet de retournement */
.flavor-card-wrapper {
  perspective: 1000px;
  height: 100%;
}

.flavor-card {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 350px;
  aspect-ratio: 1 / 1.2;
  transform-style: preserve-3d;
  transition: transform 0.6s cubic-bezier(0.4, 0.0, 0.2, 1);
  border-radius: 16px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.flavor-card-wrapper:hover .flavor-card {
  transform: rotateY(180deg);
}

/* Face avant et arrière */
.flavor-card-front,
.flavor-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  border-radius: 16px;
  padding: 2rem;
  text-align: center;
  color: white;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.flavor-card-front {
  background: inherit;
}

.flavor-card-back {
  background: inherit;
  transform: rotateY(180deg);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
  position: relative;
}

.flavor-card-back img {
  width: 100%;
  height: calc(100% - 3rem);
  max-width: 100%;
  max-height: calc(100% - 3rem);
  object-fit: contain;
  border-radius: 12px;
  flex: 1;
}

.flavor-card-back .character-name {
  display: block;
  font-family: 'Anton', sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: white;
  text-shadow: 0 2px 8px rgba(0,0,0,0.5);
  margin: 0;
  margin-top: 1rem;
  text-align: center;
  width: 100%;
}

.flavor-card-back .character-name span {
  display: none;
}

.flavor-card h3 {
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
  color: #ffffff;
}

.flavor-name {
  font-family: 'Anton', sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin: 0.5rem 0;
  color: #ffffff;
}

.flavor-card-front span {
  font-family: 'Anton', sans-serif;
  display: block;
  font-size: 1rem;
  color: #ffffff;
  font-weight: 400;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  opacity: 0.9;
  margin-bottom: 1rem;
}

.flavor-card-front img {
  max-width: 80px;
  height: auto;
  margin: 0.5rem;
}

/* Section Univers */
/* Section Univers */
.universe-section {
  margin: 4rem 0;
}

.universe-content {
  display: flex;
  align-items: center;
  gap: 3rem;
  margin-top: 0;
}

.universe-text {
  flex: 1;
  text-align: left;
}

.universe-section h2 {
  font-size: 2rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 1.5rem;
  text-align: center; 
}

.universe-section p {
  font-size: 1.1rem;
  color: black;
  margin: 1rem 0;
  line-height: 1.6;
}

.universe-image {
  flex: 1;
}

.fruits-img {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
}

/* Responsive */
@media (max-width: 1200px) {
  .flavors-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .flavors-grid {
    grid-template-columns: 1fr;
  }
  
  .flavor-card {
    min-height: 300px;
  }
  
  .logo-section h2 {
    font-size: 1.5rem;
  }
  
  .team-labels {
    display: none;
  }
  
  .universe-content {
    flex-direction: column;
  }
}

/* ========== STYLES CAPTCHA ========== */
.captcha-group {
    margin-top: 2rem;
    margin-bottom: 1.5rem;
}

.captcha-group label {
    display: block;
    margin-bottom: 0.75rem;
    font-weight: 600;
    color: #333;
    font-size: 0.95rem;
    text-align: left;
}

.captcha-container {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 300px;
    width: 100%;
}

.captcha-image-wrapper {
    position: relative;
    display: inline-block;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    padding: 10px;
    background: linear-gradient(135deg, #fafafa 0%, #ffffff 100%);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    max-width: 100%;
}

.captcha-image-wrapper:hover {
    border-color: #4285F4;
    box-shadow: 0 4px 12px rgba(66, 133, 244, 0.15);
}

.captcha-image {
    display: block;
    max-width: 100%;
    height: auto;
    cursor: pointer;
    border-radius: 4px;
    transition: opacity 0.3s ease;
}

.captcha-image:hover {
    opacity: 0.9;
}

.captcha-input {
    width: 100%;
    padding: 12px 16px;
    font-size: 1rem;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    transition: all 0.3s ease;
    background: #fff;
}

.captcha-input:focus {
    outline: none;
    border-color: #4285F4;
    box-shadow: 0 0 0 3px rgba(66, 133, 244, 0.1);
}

/* Styles pour la page Mon Compte */
body.page-customer-account #footer,
body.page-customer-account footer {
  display: none !important;
}

body.page-customer-account #content-wrapper {
  background: linear-gradient(to bottom, #f0e6f2 0%, #e0d0e3 100%) !important;
}

body.page-customer-account #main {
  background: transparent !important;
}

body.page-customer-account .page-header {
  margin-bottom: 2rem;
  text-align: center;
}

body.page-customer-account .page-header h1 {
  font-size: 2.5rem;
  font-weight: 700;
  color: #333;
  margin: 0;
}

body.page-customer-account .links {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.5rem;
  margin-top: 2rem;
}

body.page-customer-account .account-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2.5rem 1.5rem;
  background: rgba(255, 255, 255, 0.3);
  border-radius: 15px;
  text-decoration: none;
  color: #ffffff;
  box-shadow: 0 8px 20px rgba(0,0,0,0.08);
  transition: all 0.3s ease;
  text-align: center;
  height: 100%; /* S'assurer que les cartes ont la même hauteur */
  box-sizing: border-box;
}

body.page-customer-account .account-link:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 28px rgba(0,0,0,0.12);
  color: #ffffff; /* Couleur au survol */
}

body.page-customer-account .account-link .link-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

body.page-customer-account .account-link i.material-icons {
  font-size: 3rem;
  color: #6a00ff; /* Couleur des icônes */
  transition: color 0.3s ease;
}

body.page-customer-account .account-link:hover i.material-icons {
  color: #7d00ff; /* Couleur de l'icône au survol */
}

body.page-customer-account .account-link span {
  font-size: 1.1rem;
  font-weight: 600;
  margin-top: 0.5rem;
  line-height: 1.4;
  color: #ffffff !important;
}

/* Style pour le lien de déconnexion */
body.page-customer-account .page-footer a {
  display: inline-block;
  margin-top: 3rem;
  padding: 12px 25px;
  background: #f44336; /* Rouge pour la déconnexion */
  color: #fff;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(244, 67, 54, 0.3);
}

body.page-customer-account .page-footer a:hover {
  background: #e53935;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(244, 67, 54, 0.4);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  body.page-customer-account .page-header h1 {
    font-size: 2rem;
  }

  body.page-customer-account .links {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  body.page-customer-account .account-link {
    padding: 2rem 1rem;
  }

  body.page-customer-account .account-link i.material-icons {
    font-size: 2.5rem;
  }

  body.page-customer-account .account-link span {
    font-size: 1rem;
  }

  body.page-customer-account .page-footer a {
    width: 100%;
    padding: 15px;
  }
}

/* ===== PAGE PANIER ===== */
body.page-order #footer,
body.page-order footer {
  display: none !important;
}

body.page-order {
  background: linear-gradient(to bottom, #f0e6f2 0%, #e0d0e3 100%) !important;
}

body.page-order #content-wrapper {
  background: transparent !important;
  padding-top: 40px !important;
}

body.page-order #main {
  background: transparent !important;
}

body.page-order h1 {
  font-size: 2.5rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 2rem;
  text-align: center;
}

body.page-order .cart-grid {
  margin-top: 2rem;
  align-items: flex-start; /* Aligner les colonnes en haut */
}

body.page-order .card.cart-container,
body.page-order .card.cart-summary {
  background: #ffffff;
  border-radius: 15px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.08);
  padding: .5rem 1rem; /* Modifié */
  margin-bottom: 2rem;
  border: 1px solid rgba(0, 0, 0, .25); /* Modifié */
  color: #7a6969; /* Ajouté */
}

body.page-order .cart-container .card-block {
  padding: 0 !important;
}

body.page-order .cart-summary .card-block {
  padding: 0 !important;
}

body.page-order .cart-detailed-product-line .product-line-info,
body.page-order .cart-summary-product-line .product-line-info {
  display: flex;
  align-items: center;
  gap: 15px;
}

body.page-order .cart-detailed-product-line .product-image,
body.page-order .cart-summary-product-line .product-image {
  border-radius: 8px;
  overflow: hidden;
  width: 80px;
  height: 80px;
  flex-shrink: 0;
}

body.page-order .cart-detailed-product-line .product-image img,
body.page-order .cart-summary-product-line .product-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.page-order .product-info a {
  font-weight: 600;
  color: #6a00ff;
  text-decoration: none;
  transition: color 0.3s ease;
}

body.page-order .product-info a:hover {
  color: #8b5cf6;
}

body.page-order .product-quantity .input-group {
  display: flex;
  align-items: center;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  overflow: hidden;
}

body.page-order .product-quantity .qty-btn {
  background: #f0f0f0;
  border: none;
  padding: 8px 12px;
  cursor: pointer;
  transition: background 0.3s ease;
}

body.page-order .product-quantity .qty-btn:hover {
  background: #e0e0e0;
}

body.page-order .product-quantity input[type="number"] {
  border: none;
  text-align: center;
  width: 50px;
  padding: 8px 0;
}

body.page-order .product-price {
  font-weight: 700;
  color: #333;
}

body.page-order .remove-from-cart {
  color: #f44336;
  font-size: 1.5rem;
  transition: color 0.3s ease;
}

body.page-order .remove-from-cart:hover {
  color: #e53935;
}

body.page-order .label.btn-primary,
body.page-order .btn.btn-primary {
  background: linear-gradient(45deg, #6a00ff 0%, #8b5cf6 100%);
  border: none;
  border-radius: 8px;
  color: #ffffff;
  padding: 12px 25px;
  font-size: 1rem;
  font-weight: 600;
  box-shadow: 0 4px 15px rgba(106, 0, 255, 0.3);
  transition: all 0.3s ease;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

body.page-order .label.btn-primary:hover,
body.page-order .btn.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(106, 0, 255, 0.4);
  opacity: 0.9;
}

body.page-order .label.btn-link {
  color: #6a00ff;
  transition: color 0.3s ease;
}

body.page-order .label.btn-link:hover {
  color: #8b5cf6;
  text-decoration: underline;
}

/* Réassurance */
body.page-order .hook-reassurance {
  background: #ffffff;
  border-radius: 15px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.08);
  padding: 2rem;
}

body.page-order .hook-reassurance .block-reassurance-item {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 1.5rem;
}

body.page-order .hook-reassurance .block-reassurance-item:last-child {
  margin-bottom: 0;
}

body.page-order .hook-reassurance .material-icons {
  font-size: 2rem;
  color: #8b5cf6;
}

body.page-order .hook-reassurance .reassurance-text {
  font-size: 0.95rem;
  color: #555;
}

/* Responsive adjustments for cart page */
@media (max-width: 991px) {
  body.page-order .cart-grid-body,
  body.page-order .cart-grid-right {
    width: 100%;
    flex: none;
    max-width: none;
  }
}

@media (max-width: 767px) {
  body.page-order h1 {
    font-size: 2rem;
    margin-bottom: 1.5rem;
  }

  body.page-order .card.cart-container,
  body.page-order .card.cart-summary {
    padding: 1.5rem;
  }

  body.page-order .cart-detailed-product-line .product-line-info {
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }

  body.page-order .product-image {
    margin-bottom: 1rem;
  }

  body.page-order .product-quantity .input-group {
    width: 100%;
    justify-content: center;
  }

  body.page-order .label.btn-primary,
  body.page-order .btn.btn-primary {
    width: 100%;
    padding: 15px 20px;
  }
}

/* Styles pour les champs de formulaire et labels sur la page commande */
body.page-order .form-control,
body.page-order input[type="text"],
body.page-order input[type="email"],
body.page-order input[type="password"],
body.page-order select,
body.page-order textarea {
  background: #ffffff !important; /* Ajouté */
  border-radius: 8px !important;
  border: 1px solid #e0e0e0 !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.06);
  padding: 10px 15px !important;
  transition: all 0.3s ease;
  min-height: 44px; /* Uniformiser la hauteur */
}

body.page-order .form-control:focus,
body.page-order input[type="text"]:focus,
body.page-order input[type="email"]:focus,
body.page-order input[type="password"]:focus,
body.page-order select:focus,
body.page-order textarea:focus {
  border-color: #6a00ff !important;
  box-shadow: 0 0 0 3px rgba(106, 0, 255, 0.15) !important;
  outline: none;
}

body.page-order label {
  cursor: pointer;
  border-radius: 6px;
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
  padding: 4px 8px; /* Ajouter un peu de padding pour le hover */
}

body.page-order label:hover {
  background-color: rgba(106, 0, 255, 0.05);
}

/* Ajustements spécifiques pour les radio/checkbox pour que le label soit cliquable et stylisé */
body.page-order .form-control-comment label,
body.page-order .custom-radio label,
body.page-order .custom-checkbox label {
  display: inline-flex; /* Permet un alignement avec l'input si besoin */
  align-items: center;
  padding: 8px 12px;
  border-radius: 8px;
  transition: all 0.3s ease;
  background-color: #f9f9f9;
  border: 1px solid #eee;
}

body.page-order .form-control-comment label:hover,
body.page-order .custom-radio label:hover,
body.page-order .custom-checkbox label:hover {
  background-color: #f0f0f0;
  /* box-shadow: 0 2px 8px rgba(0,0,0,0.1); */
}

body.page-order .custom-radio input[type="radio"],
body.page-order .custom-checkbox input[type="checkbox"] {
  margin-right: 10px; /* Espace entre le radio/checkbox et le label */
}

/* Améliorations spécifiques pour les totaux du panier */
body.page-order .cart-summary-line {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
  margin-bottom: 8px;
  background-color: transparent;
  border-radius: 0;
  transition: none;
}

body.page-order .cart-summary-line:hover {
  background-color: transparent;
}

body.page-order .cart-summary-line .label {
  font-weight: 600;
  color: #555;
  flex-grow: 1;
  text-align: left;
}

body.page-order .cart-summary-line .value {
  font-weight: 700;
  color: #333;
  text-align: right;
  flex-shrink: 0;
}

body.page-order .cart-summary-line.cart-total {
  background: transparent;
  color: #333; /* Rétablir une couleur de texte visible */
  padding: 0;
  border-radius: 0;
  box-shadow: none;
  margin-top: 20px;
  font-size: 1.2rem;
}

body.page-order .cart-summary-line.cart-total:hover {
  transform: none;
  box-shadow: none;
}

body.page-order .cart-summary-line.cart-total .label,
body.page-order .cart-summary-line.cart-total .value {
  color: #333; /* Rétablir une couleur de texte visible pour le total */
}

body.page-order .cart-summary-line small.value {
    color: #777;
    font-weight: 400;
}

body.page-order a:not(.btn) { /* Cible tous les liens qui ne sont pas des boutons */
  color: #6a00ff !important;
  transition: color 0.3s ease;
}

body.page-order a:not(.btn):hover {
  color: #8b5cf6 !important;
}

body.page-category .kany-logo img {
  height: 120px !important; /* Taille réduite pour la page de catégorie */
}

@media (max-width: 370px) {
  body.page-category .kany-logo img {
    height: 80px !important; /* Taille réduite pour mobile sur la page de catégorie */
  }
}

#kanyLogoBtn {
  height: 150px !important; /* Taille ajustée */
  width: auto !important; /* Assure que la largeur s'ajuste automatiquement */
}

@media (max-width: 370px) {
  #kanyLogoBtn {
    height: 100px !important; /* Taille ajustée pour mobile */
  }
}

/* ========== CHECKOUT - BOUTON CONTINUER EN BAS ========== */
/* Positionner le bouton Continuer en bas de la section adresses */
body.page-order .js-address-form {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

body.page-order .js-address-form > form {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 100%;
}

body.page-order .js-address-form > form > .clearfix {
  margin-top: auto;
  padding-top: 2rem;
  width: 100%;
  clear: both;
}

body.page-order .js-address-form .continue,
body.page-order .js-address-form button.continue,
body.page-order .js-address-form button[name="confirm-addresses"] {
  float: right !important;
  display: inline-block !important;
  position: relative !important;
  z-index: 10 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Bouton Suivant pour passer au mode de livraison */
body.page-order .js-address-form > .clearfix {
  margin-top: 2rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  width: 100%;
  clear: both;
}

body.page-order .js-address-form > .clearfix button.btn-lg {
  background: linear-gradient(135deg, #F4A261, #F9D65C) !important;
  border: none !important;
  color: #fff !important;
  min-width: 150px;
  padding: 12px 24px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 15px rgba(244, 162, 97, 0.3) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  z-index: 10 !important;
}

body.page-order .js-address-form > .clearfix button.btn-lg:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(244, 162, 97, 0.4) !important;
  background: linear-gradient(135deg, #E6914E, #F4CE50) !important;
}

/* Pour le bouton dans address-form.tpl */
body.page-order #delivery-address form,
body.page-order #invoice-address form {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

body.page-order #delivery-address form .form-footer,
body.page-order #invoice-address form .form-footer {
  margin-top: auto;
  padding-top: 2rem;
}

/* Radio custom : point jaune quand sélectionné */
.custom-radio input[type=radio]:checked+span {
  position: absolute;
  top: .125rem;
  left: .125rem;
  display: block;
  width: 12px;
  height: 12px;
  background-color: #dea000;
  border-radius: 50%;
}

/* ============================================
   KANY CHAT CLIENT - CSS pour la bulle de chat
   ============================================ */

/* Variables CSS nécessaires pour le chat */
:root {
  --kany-dark: #2d2d2d;
  --kany-white: #ffffff;
  --kany-accent: #9a8fa8;
}

/* STYLE GLOBAL DU CHAT KANY (BULLE ORANGE UNIFIÉE) */
#footer.js-footer {
  display: block !important;
  visibility: visible !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  height: 0 !important;
  width: 0 !important;
  overflow: visible !important;
  position: static !important;
}

#chat-bubble,
body #chat-bubble,
html body #chat-bubble,
body.index #chat-bubble,
.cms-id-4 #chat-bubble,
body.page-cart #chat-bubble,
body#cart #chat-bubble {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: fixed !important;
  right: 30px !important;
  bottom: 30px !important;
  z-index: 2147483647 !important;
  width: 65px !important;
  height: 65px !important;
  background: #ff9240 !important;
  color: #ffffff !important;
  border-radius: 50% !important;
  cursor: pointer !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.4) !important;
  font-size: 30px !important;
  pointer-events: auto !important;
  border: 3px solid #ffffff !important;
  transition: transform 0.3s ease, background 0.3s ease !important;
  margin: 0 !important;
  padding: 0 !important;
}

#chat-bubble:hover {
  transform: scale(1.1) !important;
  background: #ff7b1a !important;
}

#chat-bubble span {
  display: inline-block !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

#chat-window,
body.index #chat-window,
.cms-id-4 #chat-window,
body.page-cart #chat-window,
body#cart #chat-window {
  display: none;
  position: fixed !important;
  right: 20px !important;
  bottom: 110px !important;
  width: 320px !important;
  height: 450px !important;
  background: #ffffff !important;
  border-radius: 15px !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3) !important;
  z-index: 2147483647 !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border: 1px solid #ddd !important;
}

#chat-header {
  background: #2d2d2d !important;
  color: #ffffff !important;
  padding: 15px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  font-family: 'Anton', sans-serif !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}

#chat-close {
  cursor: pointer !important;
  font-size: 32px !important;
}

#chat-messages {
  flex: 1 !important;
  padding: 15px !important;
  overflow-y: auto !important;
  display: flex !important;
  flex-direction: column !important;
  background: #f9f9f9 !important;
}

#chat-input-area {
  display: flex !important;
  padding: 10px !important;
  border-top: 1px solid #eee !important;
  background: #fff !important;
  align-items: center !important;
}

#chat-input {
  flex: 1 !important;
  border: 1px solid #ddd !important;
  border-radius: 20px !important;
  padding: 8px 15px !important;
  outline: none !important;
  font-size: 14px !important;
}

#chat-send {
  background: #ff9240 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 50% !important;
  width: 35px !important;
  height: 35px !important;
  margin-left: 10px !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.chat-message .bubble {
  padding: 10px 15px !important;
  border-radius: 15px !important;
  margin-bottom: 10px !important;
  max-width: 85% !important;
  font-size: 14px !important;
  position: relative !important;
}

.chat-message.admin-msg .bubble {
  background: #eee !important;
  color: #333 !important;
  align-self: flex-start !important;
  border-bottom-left-radius: 2px !important;
}

.chat-message.client-msg .bubble {
  background: #ff9240 !important;
  color: #fff !important;
  align-self: flex-end !important;
  border-bottom-right-radius: 2px !important;
}

.chat-time {
  font-size: 10px !important;
  opacity: 0.7 !important;
  margin-top: 5px !important;
  text-align: right !important;
}
/* FIN STYLE CHAT UNIFIÉ */

/* Masquer le footer page-footer */

/* Masquer le footer page-footer */

/* S'assurer que le span à l'intérieur est bien centré */
#chat-bubble > span {
  display: inline-block !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  vertical-align: middle !important;
  text-align: center !important;
}


/* Supprimer le bandeau blanc derrière le header */
.kany-header,
.kany3d-header,
#header {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}


/* Panier : header même style que boutique */
body.page-cart #header,
body#cart #header,
body.page-cart header.kany-header,
body#cart header.kany-header {
  display: block !important;
  visibility: visible !important;
}

/* Panier : pas de scroll horizontal */
body.page-cart,
body#cart,
body.page-cart #wrapper,
body#cart #wrapper {
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.page-cart .kany3d-header,
body#cart .kany3d-header {
  position: relative;
  top: 0;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 0 20px 0 !important;
  padding-right: 60px !important;
  min-height: 100px;
  background: transparent !important;
  background-color: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  border: none !important;
  border-bottom: none !important;
  opacity: 1;
  box-sizing: border-box;
  margin: 0 !important;
}

body.page-cart .kany3d-header::before,
body#cart .kany3d-header::before,
body.page-cart .kany3d-header::after,
body#cart .kany3d-header::after {
  display: none !important;
  content: none !important;
}

body.page-cart .kany3d-logo,
body#cart .kany3d-logo {
  display: flex;
  align-items: center;
  margin-left: 20px !important;
}

body.page-cart .kany3d-logo img,
body#cart .kany3d-logo img {
  height: 135px !important;
  width: auto;
  display: block;
  object-fit: contain;
}

body.page-cart .kany3d-main-title,
body#cart .kany3d-main-title {
  font-family: 'Anton', sans-serif;
  font-weight: 700;
  font-size: 3rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ffffff !important;
  text-align: center;
  line-height: 1.4;
  padding: 0;
  margin: 0 auto;
  white-space: nowrap;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

body.page-cart .kany3d-nav-menu,
body#cart .kany3d-nav-menu {
  display: flex;
  align-items: center;
  gap: 35px;
}

body.page-cart .kany3d-nav-link,
body#cart .kany3d-nav-link {
  position: relative;
  font-family: 'Anton', sans-serif;
  font-size: 1.15rem;
  font-weight: 400;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #ffffff !important;
  text-decoration: none;
  padding: 10px 0;
  transition: color 0.4s cubic-bezier(0.16, 1, 0.3, 1),
              transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

body.page-cart .kany3d-nav-link::after,
body#cart .kany3d-nav-link::after {
  content: '';
  position: absolute;
  bottom: 5px;
  left: 0;
  width: 0;
  height: 2px;
  background: linear-gradient(90deg, #ffffff, #ff9240);
  transition: width 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

body.page-cart .kany3d-nav-link:hover,
body#cart .kany3d-nav-link:hover {
  color: #ff9240 !important;
  text-decoration: none;
  transform: translate3d(0, -3px, 0);
}

body.page-cart .kany3d-nav-link:hover::after,
body#cart .kany3d-nav-link:hover::after {
  width: 100%;
}

body.page-cart .kany3d-header .kany-cart,
body#cart .kany3d-header .kany-cart,
body.page-cart .kany3d-header .kany-account,
body#cart .kany3d-header .kany-account {
  color: #ffffff !important;
  text-decoration: none;
  display: flex;
  align-items: center;
  transition: color 0.4s cubic-bezier(0.16, 1, 0.3, 1),
              transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

body.page-cart .kany3d-header .kany-cart:hover,
body#cart .kany3d-header .kany-cart:hover,
body.page-cart .kany3d-header .kany-account:hover,
body#cart .kany3d-header .kany-account:hover {
  color: #ff9240 !important;
  transform: translateY(-2px);
}

.kany-header::before,
.kany-header::after,
.kany3d-header::before,
.kany3d-header::after {
  display: none !important;
  content: none !important;
}

/* ===================== HEADER KANY3D ===================== */
/* Header caché par défaut - chaque page gère son propre header */
#header.kany-header,
.kany-header {
  display: none !important;
  visibility: hidden !important;
}

/* Les styles spécifiques pour chaque page sont définis dans leurs templates respectifs */
/* (page-4.tpl pour À propos, page-3.tpl pour CGV, etc.) */

.kany3d-nav-link:hover {
  color: #ff9240;
  text-decoration: none;
  transform: translate3d(0, -3px, 0);
}

.kany3d-nav-link:hover::after {
  width: 100%;
}

.kany3d-header .kany-cart,
.kany3d-header .kany-account {
  color: #f6edd9;
  text-decoration: none;
  display: flex;
  align-items: center;
  transition: color 0.4s cubic-bezier(0.16, 1, 0.3, 1),
              transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: color, transform;
}

.kany3d-header .kany-cart:hover,
.kany3d-header .kany-account:hover {
  color: #ff9240;
  text-decoration: none;
  transform: translateY(-2px);
}

.kany3d-header .kany-cart i,
.kany3d-header .kany-account i {
  font-size: 24px;
}

/* Responsive header */
@media (max-width: 768px) {
  .kany3d-header {
    padding: 15px 20px;
    flex-wrap: wrap;
    margin-bottom: 20px;
    background: transparent !important;
    background-color: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .kany3d-logo img {
    height: 80px !important;
  }

  .kany3d-main-title {
    font-size: 22px;
    padding: 5px 10px;
    position: relative;
    left: auto;
    transform: none;
    width: 100%;
    text-align: center;
    margin-top: 10px;
    order: 3;
    white-space: normal;
  }

  .kany3d-nav-menu {
    gap: 15px;
  }

  .kany3d-nav-link {
    font-size: 0.9rem;
  }
}

/* ===================== PAGE MON COMPTE (my-account) ===================== */
body.page-my-account {
  background-image: url('../img/img_fondv4.png') !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important;
  overflow: hidden !important; /* pas de scroll vertical/horizontal */
  height: 100vh !important;
}

/* Mon compte : supprimer les fonds du layout PrestaShop */
body.page-my-account #wrapper,
body.page-my-account #main,
body.page-my-account #content-wrapper,
body.page-my-account #content,
body.page-my-account section#main,
body.page-my-account .container,
body.page-my-account .container-fluid,
body.page-my-account .row,
body.page-my-account .page-content,
body.page-my-account .card,
body.page-my-account .card-block,
body.page-my-account .page-footer,
body.page-my-account .page-header {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Header : même comportement que Connexion/Inscription */
body.page-my-account #header,
body.page-my-account .kany-header {
  display: block !important;
  visibility: visible !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-bottom: none !important;
  padding: 1rem 2rem !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 50 !important;
}

/* My-account : retirer les paddings Bootstrap qui décalent le contenu (gauche/droite) */
body.page-my-account #wrapper .container,
body.page-my-account #wrapper .container-fluid {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.page-my-account #wrapper .row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.page-my-account #content-wrapper,
body.page-my-account #main,
body.page-my-account #content {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  overflow: hidden !important;
}

/* Container : laisser le scroll (contrairement à Connexion/Inscription) */
.kany-myaccount-container {
  min-height: 100vh;
  padding-top: 80px;
  padding-bottom: 40px;
  overflow: hidden;
}

.kany-myaccount-wrapper {
  max-width: 1200px;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 20px;
  padding-right: 20px;
}

/* Grand bloc "glass" comme Connexion/Inscription (mais plus large) */
body.page-my-account .kany-myaccount-card.kany-login-form-container {
  width: 100% !important;
  max-width: 970px;
  padding: 44px 38px 38px 38px !important;
  background: rgba(255, 255, 255, 0.18) !important;
  background-color: rgba(255, 255, 255, 0.18) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  box-shadow: 0 10px 40px rgba(0,0,0,0.25) !important;
  box-sizing: border-box;
}

/* Liens mon compte : style "carte" clean dans le bloc glass */
body.page-my-account .kany-account-links {
  display: grid;
  grid-template-columns: repeat(3, 273.17px);
  justify-content: center;
  gap: 36px;
  margin-top: 10px;
}

/* Supporter aussi les liens injectés par modules (blockwishlist, psgdpr, ...) */
body.page-my-account .kany-account-links > a {
  text-decoration: none;
  color: #111 !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 10px;
  padding: 34px 34px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  width: 273.17px;
  height: 165px;
  min-height: 165px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-shadow: 0 10px 24px rgba(0,0,0,0.18);
  box-sizing: border-box;
  overflow: hidden;
}

body.page-my-account .kany-account-links > a .link-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.1;
}

/* Empêcher un libellé long d'agrandir la card */
body.page-my-account .kany-account-links > a .link-item {
  display: flex;
  min-width: 0;
}

body.page-my-account .kany-account-links > a .link-item {
  overflow: hidden;
}

body.page-my-account .kany-account-links > a .link-item {
  text-overflow: ellipsis;
}

body.page-my-account .kany-account-links > a i.material-icons {
  display: inline-flex !important;
  font-size: 40px;
  opacity: 0.95;
  width: 42px;
  min-width: 42px;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 15px; /* descendre l’icône pour la rapprocher du titre */
}

body.page-my-account .kany-account-links > a:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 30px rgba(0,0,0,0.22);
  color: #ffa366 !important;
}

body.page-my-account .kany-account-links > a:hover .link-item,
body.page-my-account .kany-account-links > a:hover i.material-icons {
  color: #ffa366 !important;
}

/* Responsive */
@media (max-width: 820px) {
  body.page-my-account .kany-account-links {
    grid-template-columns: repeat(2, 273.17px);
    justify-content: center;
    gap: 24px;
  }
}

@media (max-width: 520px) {
  body.page-my-account .kany-account-links {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  body.page-my-account .kany-account-links > a {
    width: 100%;
    max-width: 273.17px;
  }
}

body.page-my-account .kany-account-actions {
  margin-top: 18px;
}

body.page-my-account .kany-logout-btn {
  text-align: center;
  text-decoration: none;
  width: auto !important;
  max-width: 300px;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Mon compte : titre de bienvenue */
body.page-my-account .kany-login-subtitle {
  font-family: 'Anton', sans-serif !important;
  font-size: 2.4rem !important;
  letter-spacing: 1px;
  text-transform: uppercase;
  opacity: 1 !important;
  margin-top: 0 !important;
  margin-bottom: 30px !important;
}

/* Mon compte : enlever footer global + chat + footer de page + fil d’ariane */
body.page-my-account #footer,
body.page-my-account footer#footer,
body.page-my-account footer.js-footer,
body.page-my-account .js-footer,
body.page-my-account .footer-container,
body.page-my-account #chat-bubble,
body.page-my-account #chat-window,
body.page-my-account footer.page-footer,
body.page-my-account .page-footer,
body.page-my-account nav.breadcrumb,
body.page-my-account .breadcrumb,
body.page-my-account .breadcrumb ol,
body.page-my-account .breadcrumb li {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
}

/* ===================== KANY Configurateur : layout côte à côte + thème marron ===================== */
/* Activer le scroll vertical - FORCER avec spécificité maximale pour surcharger personnalisation.html */
html body.module-kanyconfigurator-configurator,
body.module-kanyconfigurator-configurator html,
html body.module-kanyconfigurator-configurator html,
body.module-kanyconfigurator-configurator body {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  height: auto !important;
  min-height: 100vh !important;
  max-height: none !important;
}

/* Forcer le scroll sur tous les conteneurs principaux */
body.module-kanyconfigurator-configurator #wrapper,
body.module-kanyconfigurator-configurator #main,
body.module-kanyconfigurator-configurator #content-wrapper,
body.module-kanyconfigurator-configurator .wrap {
  overflow-y: visible !important;
  overflow-x: hidden !important;
  height: auto !important;
  min-height: auto !important;
  max-height: none !important;
}

/* Transparence et largeur des conteneurs */
body.module-kanyconfigurator-configurator #wrapper,
body.module-kanyconfigurator-configurator #main,
body.module-kanyconfigurator-configurator #content-wrapper,
body.module-kanyconfigurator-configurator .page-content-container,
body.module-kanyconfigurator-configurator .row,
body.module-kanyconfigurator-configurator .container,
body.module-kanyconfigurator-configurator .container-fluid,
body.module-kanyconfigurator-configurator .js-content-wrapper {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.module-kanyconfigurator-configurator #content,
body.module-kanyconfigurator-configurator #content.page-content,
body.module-kanyconfigurator-configurator #content.card,
body.module-kanyconfigurator-configurator #content.card-block,
body.module-kanyconfigurator-configurator #content.page-content.card.card-block,
body.module-kanyconfigurator-configurator .page-content,
body.module-kanyconfigurator-configurator .page-content.card,
body.module-kanyconfigurator-configurator .page-content.card-block {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  margin-left: -50vw !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.module-kanyconfigurator-configurator main {
  min-height: calc(100vh - 80px) !important;
  padding: 0 !important;
  margin: 0 !important;
  align-items: flex-start !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.module-kanyconfigurator-configurator .wrap {
  width: min(1320px, 100%) !important;
  max-width: 1320px !important;
  min-height: calc(100vh - 64px) !important;
  height: auto !important;
  display: grid !important;
  grid-template-columns: 480px 1fr 360px !important;
  gap: 18px !important;
  align-items: stretch !important;
  margin: 0 auto !important;
  padding: 98px 12px 44px !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

/* Forcer les colonnes côte à côte */
body.module-kanyconfigurator-configurator .leftCard {
  grid-column: 1 !important;
  order: 1 !important;
  display: block !important;
}
body.module-kanyconfigurator-configurator .stage {
  grid-column: 2 !important;
  order: 2 !important;
  display: flex !important;
}
body.module-kanyconfigurator-configurator .rightCard {
  grid-column: 3 !important;
  order: 3 !important;
  display: flex !important;
}

body.module-kanyconfigurator-configurator .leftCard { grid-column: 1 !important; order: 1 !important; }
body.module-kanyconfigurator-configurator .stage   { grid-column: 2 !important; order: 2 !important; }
body.module-kanyconfigurator-configurator .rightCard{ grid-column: 3 !important; order: 3 !important; }

@media (max-width: 1100px) {
  body.module-kanyconfigurator-configurator .wrap {
    grid-template-columns: 1fr !important;
  }
}

/* Thème marron (style bois) */
body.module-kanyconfigurator-configurator .card {
  background:
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(0,0,0,.08)),
    linear-gradient(90deg, #b3743b, #c58a4a 40%, #d3a064),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,.06) 0 2px,
      rgba(0,0,0,.04) 2px 4px
    ) !important;
  border: 1px solid rgba(80,52,24,.45) !important;
  color: rgba(255,255,255,.92) !important;
}

body.module-kanyconfigurator-configurator .card label,
body.module-kanyconfigurator-configurator .card .help,
body.module-kanyconfigurator-configurator .card .sub,
body.module-kanyconfigurator-configurator .card .recapLabel {
  color: rgba(255,255,255,.70) !important;
}

body.module-kanyconfigurator-configurator input[type="text"] {
  border: 1px solid rgba(80,52,24,.55) !important;
  background: rgba(250, 220, 180, .16) !important;
  color: rgba(255,255,255,.92) !important;
}

body.module-kanyconfigurator-configurator .flavor {
  border: 1px solid rgba(80,52,24,.55) !important;
  background: rgba(47, 28, 10, .18) !important;
}

body.module-kanyconfigurator-configurator .flavor.primary {
  background: linear-gradient(180deg, rgba(255,255,255,.65), rgba(255,255,255,.15)), #22c55e !important;
}

body.module-kanyconfigurator-configurator .flavor.secondary {
  background: linear-gradient(180deg, rgba(0,0,0,.20), rgba(0,0,0,.42)), #bbf7d0 !important;
}

body.module-kanyconfigurator-configurator .cta {
  background: linear-gradient(180deg, #ffcc66, #f59e0b) !important;
  color: rgba(255,255,255,.95) !important;
}
