.elementor-15408 .elementor-element.elementor-element-4f461a83{--display:flex;}.elementor-15408 .elementor-element.elementor-element-f5bcacb{--update-cart-automatically-display:none;--sections-border-type:none;--sections-title-color:var( --e-global-color-astglobalcolor0 );--links-normal-color:var( --e-global-color-astglobalcolor0 );--sections-radio-buttons-color:var( --e-global-color-astglobalcolor0 );--forms-fields-normal-color:var( --e-global-color-astglobalcolor0 );--totals-color:var( --e-global-color-astglobalcolor2 );--totals-divider-color:var( --e-global-color-astglobalcolor2 );--checkout-button-normal-text-color:#FFFFFF;--checkout-button-border-radius:33px 33px 33px 33px;}.elementor-15408 .elementor-element.elementor-element-f5bcacb .woocommerce .wc-proceed-to-checkout .checkout-button{background-color:var( --e-global-color-astglobalcolor0 );}.e-woo-select2-wrapper .select2-results__option{color:var( --e-global-color-astglobalcolor0 );}.elementor-15408 .elementor-element.elementor-element-f5bcacb .select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:var( --e-global-color-astglobalcolor0 );}/* Start custom CSS for woocommerce-cart, class: .elementor-element-f5bcacb *//*
 * ============================================================
 *  DJERBAY — Cart Page CSS
 *  Page Panier — /panier/
 *  À coller dans : Apparence > Personnaliser > CSS additionnel
 * ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&display=swap');

/* ── Variables ── */
body.woocommerce-cart,
body.woocommerce-cart * {
  --dj-sand:        #F0F4F8;
  --dj-ocean:       #0A2540;
  --dj-ocean-mid:   #1A3F66;
  --dj-ocean-light: #E6EDF6;
  --dj-coral:       #FF5B0A;
  --dj-text-dark:   #0A2540;
  --dj-text-mid:    #3A5270;
  --dj-text-light:  #6A85A8;
  --dj-white:       #FDFCFB;
  --dj-border:      rgba(10,37,64,0.12);
  --dj-radius:      4px;
  --dj-radius-lg:   12px;
  box-sizing: border-box;
}

/* ── Body ── */
body.woocommerce-cart {
  background: var(--dj-sand) !important;
  font-family: 'Poppins', sans-serif !important;
}

/* ── Colonnes layout ── */
body.woocommerce-cart .e-cart__container {
  gap: 0 !important;
}

body.woocommerce-cart .e-cart__column-start {
  background: var(--dj-white) !important;
  padding: 40px 48px !important;
  border-right: 1px solid var(--dj-border) !important;
}

body.woocommerce-cart .e-cart__column-end {
  background: var(--dj-sand) !important;
  padding: 40px 32px !important;
}

body.woocommerce-cart .e-cart__column-inner,
body.woocommerce-cart .e-sticky-right-column {
  width: 100% !important;
  max-width: 100% !important;
}

/* ── Table panier ── */
body.woocommerce-cart .shop_table.cart {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  width: 100% !important;
  font-family: 'Poppins', sans-serif !important;
}

/* Header table */
body.woocommerce-cart .shop_table.cart thead tr {
  background: var(--dj-ocean) !important;
}

body.woocommerce-cart .shop_table.cart thead th {
  background: var(--dj-ocean) !important;
  color: rgba(255,255,255,0.6) !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 9px !important;
  font-weight: 600 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  padding: 14px 16px !important;
  border: none !important;
}

body.woocommerce-cart .shop_table.cart thead th:first-child {
  border-radius: var(--dj-radius) 0 0 0 !important;
}

body.woocommerce-cart .shop_table.cart thead th:last-child {
  border-radius: 0 var(--dj-radius) 0 0 !important;
}

/* Lignes produit */
body.woocommerce-cart .shop_table.cart tbody tr.cart_item {
  border-bottom: 1px solid var(--dj-border) !important;
  transition: background 0.15s !important;
}

body.woocommerce-cart .shop_table.cart tbody tr.cart_item:hover {
  background: var(--dj-ocean-light) !important;
}

body.woocommerce-cart .shop_table.cart tbody td {
  padding: 20px 16px !important;
  vertical-align: middle !important;
  border: none !important;
  border-bottom: 1px solid var(--dj-border) !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 13px !important;
  color: var(--dj-text-dark) !important;
  background: var(--dj-white) !important;
}

/* Bouton supprimer */
body.woocommerce-cart .product-remove a.remove {
  color: var(--dj-text-light) !important;
  background: var(--dj-sand) !important;
  border: 1px solid var(--dj-border) !important;
  border-radius: 50% !important;
  width: 28px !important;
  height: 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s !important;
  font-size: 14px !important;
}

body.woocommerce-cart .product-remove a.remove:hover {
  background: #FEE2E2 !important;
  color: #DC2626 !important;
  border-color: #FCA5A5 !important;
}

/* Thumbnail */
body.woocommerce-cart .product-thumbnail img {
  border-radius: var(--dj-radius) !important;
  width: 72px !important;
  height: 72px !important;
  object-fit: cover !important;
  border: 1px solid var(--dj-border) !important;
}

/* Nom produit */
body.woocommerce-cart .product-name a {
  font-family: 'Poppins', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--dj-ocean) !important;
  text-decoration: none !important;
}

body.woocommerce-cart .product-name a:hover {
  color: var(--dj-coral) !important;
}

/* "Réservation de:" */
body.woocommerce-cart .yith-wcbk-booking-of {
  display: block !important;
  font-size: 9px !important;
  font-weight: 600 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: var(--dj-coral) !important;
  margin-bottom: 4px !important;
}

/* Variation DL dans le panier */
body.woocommerce-cart .variation {
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px dashed var(--dj-border) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

body.woocommerce-cart .variation dt {
  display: inline !important;
  font-size: 9px !important;
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: var(--dj-text-light) !important;
}

body.woocommerce-cart .variation dd {
  display: inline !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: var(--dj-text-dark) !important;
  margin: 0 0 2px 6px !important;
}

body.woocommerce-cart .variation dd p {
  display: inline !important;
  margin: 0 !important;
  font-size: 12px !important;
}

body.woocommerce-cart .variation dd::after {
  content: '' !important;
  display: block !important;
}

/* Prix */
body.woocommerce-cart .product-price .woocommerce-Price-amount,
body.woocommerce-cart .product-subtotal .woocommerce-Price-amount {
  font-family: 'Poppins', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--dj-ocean) !important;
}

/* ── Section Total Panier (droite) ── */
body.woocommerce-cart .cart_totals {
  background: var(--dj-white) !important;
  border: 1.5px solid var(--dj-border) !important;
  border-radius: var(--dj-radius-lg) !important;
  overflow: hidden !important;
  width: 100% !important;
}

body.woocommerce-cart .cart_totals h2 {
  font-family: 'Poppins', sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.85) !important;
  background: var(--dj-ocean) !important;
  padding: 14px 20px !important;
  margin: 0 !important;
}

body.woocommerce-cart .cart_totals .shop_table {
  width: 100% !important;
  border: none !important;
  margin: 0 !important;
}

body.woocommerce-cart .cart_totals .shop_table tr th,
body.woocommerce-cart .cart_totals .shop_table tr td {
  padding: 14px 20px !important;
  border-bottom: 1px solid var(--dj-border) !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 13px !important;
  border-top: none !important;
  background: transparent !important;
}

body.woocommerce-cart .cart_totals .shop_table .cart-subtotal th {
  font-weight: 400 !important;
  color: var(--dj-text-mid) !important;
}

body.woocommerce-cart .cart_totals .shop_table .cart-subtotal td {
  font-weight: 500 !important;
  color: var(--dj-text-dark) !important;
  text-align: right !important;
}

/* Ligne Total */
body.woocommerce-cart .cart_totals .shop_table .order-total th,
body.woocommerce-cart .cart_totals .shop_table .order-total td {
  background: var(--dj-coral) !important;
  border: none !important;
  padding: 18px 20px !important;
}

body.woocommerce-cart .cart_totals .shop_table .order-total th {
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.85) !important;
}

body.woocommerce-cart .cart_totals .shop_table .order-total td {
  text-align: right !important;
}

body.woocommerce-cart .cart_totals .shop_table .order-total .woocommerce-Price-amount {
  font-family: 'Poppins', sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #fff !important;
}

/* ── Bouton Valider la commande ── */
body.woocommerce-cart .checkout-button {
  display: block !important;
  width: 100% !important;
  height: 56px !important;
  background: var(--dj-coral) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--dj-radius) !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  text-decoration: none !important;
  line-height: 56px !important;
  cursor: pointer !important;
  transition: all 0.25s !important;
  box-shadow: 0 4px 14px rgba(255,91,10,0.35) !important;
  margin-bottom: 12px !important;
}

body.woocommerce-cart .checkout-button:hover {
  background: #E04D00 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 20px rgba(255,91,10,0.45) !important;
  color: #fff !important;
}

/* ── Boutons G Pay / Link ── */
body.woocommerce-cart #wc-stripe-express-checkout-element {
  margin-top: 8px !important;
}

/* ── Override Elementor padding sections panier ── */
.elementor-widget-woocommerce-cart .woocommerce .e-cart-section,
.elementor-widget-woocommerce-cart .woocommerce .e-cart-totals,
.elementor-widget-woocommerce-cart .woocommerce .cart_totals {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}

/* ── Responsive mobile ── */
@media (max-width: 768px) {
  body.woocommerce-cart .e-cart__column-start,
  body.woocommerce-cart .e-cart__column-end {
    padding: 24px 16px !important;
    border-right: none !important;
  }

  body.woocommerce-cart .product-thumbnail img {
    width: 52px !important;
    height: 52px !important;
  }

  body.woocommerce-cart .shop_table.cart thead {
    display: none !important;
  }

  body.woocommerce-cart .shop_table.cart tbody td {
    display: block !important;
    text-align: right !important;
    padding: 8px 16px !important;
  }

  body.woocommerce-cart .shop_table.cart tbody td::before {
    content: attr(data-title) !important;
    float: left !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    color: var(--dj-text-light) !important;
  }
}


/* ============================================================
   FIXES v2 — Panier
   ============================================================ */

/* Variation visible dans le panier */
body.woocommerce-cart .variation {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px dashed var(--dj-border) !important;
}

body.woocommerce-cart .variation dt {
  display: inline !important;
  font-size: 9px !important;
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: var(--dj-text-light) !important;
  float: left !important;
  clear: left !important;
  min-width: 80px !important;
  line-height: 1.8 !important;
}

body.woocommerce-cart .variation dd {
  display: inline !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: var(--dj-text-dark) !important;
  margin: 0 0 2px 90px !important;
  line-height: 1.8 !important;
}

body.woocommerce-cart .variation dd p {
  display: inline !important;
  margin: 0 !important;
  font-size: 12px !important;
}

/* Clearfix entre chaque paire */
body.woocommerce-cart .variation dd::after {
  content: '' !important;
  display: table !important;
  clear: both !important;
}

/* Thumbnail mieux aligné */
body.woocommerce-cart .product-thumbnail {
  width: 80px !important;
  padding: 16px 8px !important;
}

body.woocommerce-cart .product-thumbnail img {
  width: 64px !important;
  height: 64px !important;
  object-fit: cover !important;
  border-radius: var(--dj-radius) !important;
  display: block !important;
}

/* Colonne remove centrée */
body.woocommerce-cart .product-remove {
  width: 40px !important;
  text-align: center !important;
  padding: 16px 8px !important;
}

/* Nom produit padding */
body.woocommerce-cart .product-name {
  padding: 16px 12px !important;
}

/* Prix alignés */
body.woocommerce-cart .product-price,
body.woocommerce-cart .product-quantity,
body.woocommerce-cart .product-subtotal {
  text-align: center !important;
  vertical-align: middle !important;
  white-space: nowrap !important;
}

/* Fond blanc uniforme sur les td */
body.woocommerce-cart .shop_table.cart tbody td {
  background: var(--dj-white) !important;
}

body.woocommerce-cart .shop_table.cart tbody tr.cart_item:hover td {
  background: var(--dj-ocean-light) !important;
}

/* Padding colonne droite */
body.woocommerce-cart .e-cart__column-end {
  min-width: 300px !important;
}

body.woocommerce-cart .e-cart-totals {
  width: 100% !important;
}

body.woocommerce-cart .cart-collaterals,
body.woocommerce-cart .cart_totals {
  width: 100% !important;
  float: none !important;
}


/* ── Bouton Valider la commande — centré ── */
body.woocommerce-cart .wc-proceed-to-checkout {
  padding: 20px !important;
}

body.woocommerce-cart .checkout-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: normal !important;
}


/* ── Fix thumbnail visible ── */
body.woocommerce-cart .shop_table.cart .product-thumbnail {
  display: table-cell !important;
  width: 90px !important;
  min-width: 90px !important;
  padding: 16px 8px 16px 16px !important;
  vertical-align: middle !important;
}

body.woocommerce-cart .shop_table.cart .product-thumbnail a {
  display: block !important;
}

body.woocommerce-cart .shop_table.cart .product-thumbnail img {
  display: block !important;
  width: 64px !important;
  height: 64px !important;
  object-fit: cover !important;
  border-radius: var(--dj-radius) !important;
  border: 1px solid var(--dj-border) !important;
}


/* ── Fix débordement table ── */
body.woocommerce-cart .e-shop-table {
  overflow: hidden !important;
}

body.woocommerce-cart .shop_table.cart {
  table-layout: fixed !important;
  width: 100% !important;
}

body.woocommerce-cart .shop_table.cart .product-remove {
  width: 36px !important;
}

body.woocommerce-cart .shop_table.cart .product-thumbnail {
  width: 80px !important;
}

body.woocommerce-cart .shop_table.cart .product-name {
  width: auto !important;
}

body.woocommerce-cart .shop_table.cart .product-price {
  width: 90px !important;
  text-align: center !important;
  white-space: nowrap !important;
}

body.woocommerce-cart .shop_table.cart .product-quantity {
  width: 80px !important;
  text-align: center !important;
}

body.woocommerce-cart .shop_table.cart .product-subtotal {
  width: 90px !important;
  text-align: right !important;
  white-space: nowrap !important;
  padding-right: 16px !important;
}


/* ── Fix débordement v3 — table-layout auto + overflow ── */
body.woocommerce-cart .e-cart__column-start {
  overflow: hidden !important;
  min-width: 0 !important;
}

body.woocommerce-cart .e-shop-table {
  overflow-x: auto !important;
  width: 100% !important;
}

body.woocommerce-cart .shop_table.cart {
  table-layout: auto !important;
  min-width: 100% !important;
}

/* Colonnes compactes */
body.woocommerce-cart .shop_table.cart col,
body.woocommerce-cart .shop_table.cart thead th.product-remove {
  width: 32px !important;
  min-width: 32px !important;
}

body.woocommerce-cart .shop_table.cart thead th.product-thumbnail {
  width: 72px !important;
  min-width: 72px !important;
}

body.woocommerce-cart .shop_table.cart thead th.product-price {
  width: 80px !important;
  min-width: 80px !important;
  white-space: nowrap !important;
}

body.woocommerce-cart .shop_table.cart thead th.product-quantity {
  width: 70px !important;
  min-width: 70px !important;
  white-space: nowrap !important;
}

body.woocommerce-cart .shop_table.cart thead th.product-subtotal {
  width: 80px !important;
  min-width: 80px !important;
  white-space: nowrap !important;
}

/* Colonne produit flex */
body.woocommerce-cart .shop_table.cart thead th.product-name {
  width: auto !important;
}

/* Forcer nowrap sur toutes les cellules chiffres */
body.woocommerce-cart .shop_table.cart td.product-price,
body.woocommerce-cart .shop_table.cart td.product-quantity,
body.woocommerce-cart .shop_table.cart td.product-subtotal {
  white-space: nowrap !important;
  text-align: center !important;
}

body.woocommerce-cart .shop_table.cart td.product-subtotal {
  text-align: right !important;
  padding-right: 12px !important;
}


/* ── Réduire padding colonne gauche pour donner plus d'espace à la table ── */
body.woocommerce-cart .e-cart__column-start {
  padding: 24px 20px !important;
}


/* ── Padding colonne gauche — 24px top/bottom, 0 gauche/droite ── */
body.woocommerce-cart .e-cart__column-start {
  padding: 24px 0 !important;
}


/* ── Boutons G Pay / Link même largeur que Valider ── */
body.woocommerce-cart #wc-stripe-express-checkout-element {
  width: 100% !important;
  margin-top: 8px !important;
}

body.woocommerce-cart #wc-stripe-express-checkout-element > div,
body.woocommerce-cart #wc-stripe-express-checkout-element .StripeElement,
body.woocommerce-cart #wc-stripe-express-checkout-element iframe {
  width: 100% !important;
  min-width: 100% !important;
  border-radius: var(--dj-radius) !important;
}

body.woocommerce-cart .wc-proceed-to-checkout {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  padding: 20px !important;
}/* End custom CSS */